diff --git a/spec/fixtures/db/dynamic_finders.yml b/spec/fixtures/db/dynamic_finders.yml
index fb6f6982..15718191 100644
--- a/spec/fixtures/db/dynamic_finders.yml
+++ b/spec/fixtures/db/dynamic_finders.yml
@@ -35,6 +35,17 @@ wordpress:
xpath: //meta[@name="generator"]/@content
pattern: !ruby/regexp /wordPress (?\d+\.[\.\d]+)/i
version: true
+ StyleEtag:
+ class: HeaderPattern
+ header: Etag
+ pattern: !ruby/regexp /(?\d+\.[\.\d]+)/i
+ path: wp-admin/load-styles.php
+ version: true
+ ScriptEtag:
+ class: HeaderPattern
+ header: Etag
+ pattern: !ruby/regexp /(?\d+\.[\.\d]+)/i
+ path: wp-admin/load-scripts.php
OpmlGenerator:
class: Comment
path: wp-links-opml.php
@@ -979,6 +990,9 @@ plugins:
accessible-tag-cloud:
Readme:
path: readme.txt
+ accessiblewp-images:
+ Readme:
+ path: readme.txt
accessibleyoutube:
Readme:
path: readme.txt
@@ -1060,6 +1074,9 @@ plugins:
acclaim-cloud-platform:
Readme:
path: readme.txt
+ accommodation-system:
+ Readme:
+ path: readme.txt
accordion-and-accordion-slider:
QueryParameter:
files:
@@ -2376,6 +2393,9 @@ plugins:
admin-hide-tag-filter:
Readme:
path: readme.txt
+ admin-icons-manager:
+ Readme:
+ path: readme.txt
admin-in-english:
Readme:
path: readme.txt
@@ -4504,6 +4524,13 @@ plugins:
alter:
Readme:
path: readme.txt
+ altered-reality:
+ QueryParameter:
+ files:
+ - build/style.css
+ version: true
+ Readme:
+ path: readme.txt
alternative-theme-switcher:
Readme:
path: readme.txt
@@ -7603,6 +7630,9 @@ plugins:
awesome-weather:
Readme:
path: readme.txt
+ awesome-wp-comment-rating:
+ Readme:
+ path: readme.txt
awesome-wp-slider:
QueryParameter:
files:
@@ -11363,6 +11393,9 @@ plugins:
botblocker:
Readme:
path: readme.txt
+ botjuggler:
+ Readme:
+ path: readme.txt
botmonitoring:
QueryParameter:
files:
@@ -11420,6 +11453,9 @@ plugins:
path: Boxtal/BoxtalConnectWoocommerce/translation/boxtal-connect-fr_FR.po
pattern: !ruby/regexp '/"Project\-Id\-Version: Boxtal connect (?\d+\.[\.\d]+)/i'
version: true
+ boxy-woocommerce-custom-redirect-after-checkout:
+ Readme:
+ path: README.txt
boz-prod-woocommerce-hipay-wallet-pro:
Readme:
path: readme.txt
@@ -12033,6 +12069,9 @@ plugins:
brinkin-banner-exchange:
Readme:
path: readme.txt
+ britetechs-companion:
+ Readme:
+ path: readme.txt
british-embassy-finder:
Readme:
path: readme.txt
@@ -13009,6 +13048,14 @@ plugins:
bunnycdn:
Readme:
path: readme.txt
+ bunnycdnbunnyapi:
+ Readme:
+ path: readme.txt
+ ChangeLog:
+ class: BodyPattern
+ path: changelog.txt
+ pattern: !ruby/regexp /^=(?\d+\.[\.\d]+)=(?!.*=\d+\.[\.\d]+=)/mi
+ version: true
buntify:
Readme:
path: readme.txt
@@ -13080,6 +13127,9 @@ plugins:
business-hours-plugin:
Readme:
path: README.txt
+ business-listing-manager:
+ Readme:
+ path: README.txt
business-master:
Readme:
path: readme.txt
@@ -13326,6 +13376,9 @@ plugins:
bz9-webmaster-tools:
Readme:
path: readme.txt
+ c3-random-quotes:
+ Readme:
+ path: readme.txt
c4d-woo-boost-sales:
Readme:
path: readme.txt
@@ -13509,6 +13562,9 @@ plugins:
path: languages/calendarista-de_DE.po
pattern: !ruby/regexp '/"Project\-Id\-Version: Calendarista (?\d+\.[\.\d]+)/i'
version: true
+ calendi:
+ Readme:
+ path: readme.txt
calendrier-lunaire:
Readme:
path: README.txt
@@ -15431,6 +15487,9 @@ plugins:
checkout-shipping-message-add-on-for-woocommerce:
Readme:
path: readme.txt
+ cheerme:
+ Readme:
+ path: readme.txt
cheetahsender:
Readme:
path: readme.txt
@@ -15726,6 +15785,9 @@ plugins:
cimy-user-manager:
Readme:
path: readme.txt
+ cinema-catalog:
+ Readme:
+ path: readme.txt
cip-dtac-for-give:
ChangeLog:
class: BodyPattern
@@ -20875,6 +20937,9 @@ plugins:
- public/css/customer-chat-for-facebook-public.css
- public/js/customer-chat-for-facebook-public.js
version: true
+ customer-email-verification-for-woocommerce:
+ Readme:
+ path: readme.txt
customerlabs-actionrecorder:
Readme:
path:
@@ -21535,6 +21600,9 @@ plugins:
dawanda-shop-plugin:
Readme:
path: readme.txt
+ daycounts-up-to-date:
+ Readme:
+ path: README.txt
daylife:
Readme:
path: readme.txt
@@ -23054,6 +23122,9 @@ plugins:
discordian-date:
Readme:
path: readme.txt
+ discordian-date-function:
+ Readme:
+ path: readme.txt
discounts-for-thecartpress:
Readme:
path: readme.txt
@@ -23434,6 +23505,9 @@ plugins:
do-you-read-widget:
Readme:
path: readme.txt
+ do-you-want-cookies:
+ Readme:
+ path: readme.txt
doaj-export:
Readme:
path: readme.txt
@@ -26781,6 +26855,9 @@ plugins:
embed-article:
Readme:
path: readme.txt
+ embed-audiobakers:
+ Readme:
+ path: readme.txt
embed-block-for-tiktok:
Readme:
path: readme.txt
@@ -27373,6 +27450,9 @@ plugins:
- public/css/epic-spinners-public.css
- public/js/epic-spinners-public.js
version: true
+ epicpay-woocommerce-payment-gateway:
+ Readme:
+ path: readme.txt
epicwin-subscribers:
Readme:
path: readme.txt
@@ -28261,6 +28341,14 @@ plugins:
expandable-menus:
Readme:
path: readme.txt
+ expandable-paywall:
+ QueryParameter:
+ files:
+ - public/css/expandable-paywall-public.css
+ - public/js/expandable-paywall-public.js
+ version: true
+ Readme:
+ path: README.txt
expandcollapse-funk:
Readme:
path: readme.txt
@@ -28471,6 +28559,9 @@ plugins:
extensions-for-elementor:
Readme:
path: readme.txt
+ extensions-for-pressbooks:
+ Readme:
+ path: readme.txt
extensions-for-two-factor:
QueryParameter:
files:
@@ -28759,6 +28850,9 @@ plugins:
- js/main.js
- js/style1.js
version: true
+ face-recognition-wp:
+ Readme:
+ path: readme.txt
facebadge-master-wp:
Readme:
path: readme.txt
@@ -30909,6 +31003,24 @@ plugins:
flower:
Readme:
path: readme.txt
+ flower-delivery-by-florist-one:
+ Comment:
+ xpath: //comment()[contains(., "flower-delivery-by-florist-one")]
+ pattern: !ruby/regexp /\/florist\-one\-flower\-delivery\-public\-old\-browser\.css\?ver=(?\d+\.[\.\d]+)/i
+ version: true
+ QueryParameter:
+ files:
+ - public/css/slicknav.css
+ - public/css/florist-one-flower-delivery-public.css
+ - public/js/jquery.validate.js
+ - public/js/jquery.slicknav.min.js
+ - public/js/jquery.history.js
+ - public/js/resizeSensor.js
+ - public/js/elementQueries.js
+ - public/js/florist-one-flower-delivery-public.js
+ version: true
+ Readme:
+ path: README.txt
flowpaper-lite-pdf-flipbook:
Readme:
path: readme.txt
@@ -31608,6 +31720,9 @@ plugins:
version: true
Readme:
path: readme.txt
+ formito:
+ Readme:
+ path: readme.txt
formlift:
QueryParameter:
files:
@@ -34124,6 +34239,9 @@ plugins:
go-dark:
Readme:
path: readme.txt
+ go-dash:
+ Readme:
+ path: readme.txt
go-fetch-jobs-wp-job-manager:
TranslationFile:
class: BodyPattern
@@ -35265,6 +35383,9 @@ plugins:
grassblade-xapi-gamipress:
Readme:
path: readme.txt
+ grassblade-xapi-learnpress:
+ Readme:
+ path: readme.txt
grassblade-xapi-wp-courseware:
Readme:
path: readme.txt
@@ -37084,6 +37205,9 @@ plugins:
hide-and-catch-email:
Readme:
path: readme.txt
+ hide-archive-label:
+ Readme:
+ path: README.txt
hide-categories:
Readme:
path: readme.txt
@@ -38337,6 +38461,12 @@ plugins:
i-fulfilment-integration:
Readme:
path: readme.txt
+ i-like:
+ QueryParameter:
+ files:
+ - assets/js/i-like-ajax.js
+ - assets/js/main.js
+ version: true
i-make-plugins:
Readme:
path: readme.txt
@@ -39773,6 +39903,9 @@ plugins:
infoblast-sms-follower:
Readme:
path: readme.txt
+ infobvandevliet-nl:
+ Readme:
+ path: readme.txt
infogalore-file-folders:
QueryParameter:
files:
@@ -42650,6 +42783,9 @@ plugins:
- public/css/kelkoo-group-shopping-public.css
- public/js/kelkoo-group-shopping-public.js
version: true
+ kelkoogroup-sales-tracking:
+ Readme:
+ path: readme.txt
keltos-tarot-plugin:
Readme:
path: readme.txt
@@ -43388,6 +43524,9 @@ plugins:
kontera-official:
Comment:
pattern: !ruby/regexp /Kontera (?:ContentLink|Ads Inserted by Wordpress Plugin)/i
+ kontxt:
+ Readme:
+ path: README.txt
kontxt-semantic-engine:
Readme:
path: README.txt
@@ -47116,6 +47255,9 @@ plugins:
mailchimp-comment-optin:
Readme:
path: readme.txt
+ mailchimp-for-formcraft:
+ Readme:
+ path: readme.txt
mailchimp-for-paypal-shopping-cart:
Readme:
path: readme.txt
@@ -48440,6 +48582,9 @@ plugins:
path: i18n/languages/mg-wc-stripe.pot
pattern: !ruby/regexp /"Project\-Id\-Version:\ mg wc Stripe (?\d+\.[\.\d]+)/i
version: true
+ mh-osoitekortti:
+ Readme:
+ path: readme.txt
mh-pusher:
QueryParameter:
files:
@@ -49697,18 +49842,30 @@ plugins:
path: changelog.txt
pattern: !ruby/regexp /Version (?\d+\.[\.\d]+)/i
version: true
+ mycred-for-gd-star-rating:
+ Readme:
+ path: readme.txt
+ mycred-for-rating-form:
+ Readme:
+ path: readme.txt
mycred-for-totalpoll:
Readme:
path: readme.txt
mycred-for-wp-postviews:
Readme:
path: readme.txt
+ mycred-h5p:
+ Readme:
+ path: readme.txt
mycred-learndash:
Readme:
path: readme.txt
mycred-lifterlms-integration:
Readme:
path: readme.txt
+ mycred-retro:
+ Readme:
+ path: readme.txt
myego2go-verified-login-for-woocommerce:
QueryParameter:
files:
@@ -50407,6 +50564,9 @@ plugins:
ni-woocommerce-stock:
Readme:
path: readme.txt
+ ni-youtube-video-gallery:
+ Readme:
+ path: readme.txt
nice-infoboxes:
QueryParameter:
files:
@@ -50689,6 +50849,11 @@ plugins:
path: changelog.md
pattern: !ruby/regexp /\#\# (?\d+\.[\.\d]+)/
version: true
+ notify-comment-reply:
+ Readme:
+ path:
+ - readme.txt
+ - README.md
notify-connect-par-jm-crea:
MetaTag:
class: Xpath
@@ -51009,6 +51174,9 @@ plugins:
files:
- js/ow-frontend.js
version: true
+ odise:
+ Readme:
+ path: readme.txt
oembed-travis:
TranslationFile:
class: BodyPattern
@@ -51182,6 +51350,9 @@ plugins:
path: CHANGELOG.md
pattern: !ruby/regexp /\#\# (?\d+\.[\.\d]+)/
version: true
+ one-click-coming-soon:
+ Readme:
+ path: readme.txt
one-click-demo-import:
TranslationFile:
class: BodyPattern
@@ -52647,6 +52818,14 @@ plugins:
photo-image-gallery:
Readme:
path: readme.txt
+ photo-roll:
+ QueryParameter:
+ files:
+ - public/css/instantgram-public.css
+ - public/js/instantgram-public.js
+ version: true
+ Readme:
+ path: README.txt
photo-swipe:
QueryParameter:
files:
@@ -54260,6 +54439,9 @@ plugins:
pricetable-wp:
Readme:
path: readme.txt
+ pricex-lite:
+ Readme:
+ path: readme.txt
pricing-table:
Readme:
path: readme.txt
@@ -58118,6 +58300,9 @@ plugins:
security-site:
Readme:
path: readme.txt
+ sedox-performance-vehicle-catalogue:
+ Readme:
+ path: readme.txt
seers-cookie-consent-banner-privacy-policy:
Readme:
path: readme.txt
@@ -58813,6 +58998,9 @@ plugins:
version: true
Readme:
path: readme.txt
+ shiga-custom-login-by-corelabs:
+ Readme:
+ path: readme.txt
shika365-payment-gateway-for-woocommerce:
Readme:
path: readme.txt
@@ -60395,6 +60583,9 @@ plugins:
path: changelog.txt
pattern: !ruby/regexp /(?\d+\.[\.\d]+)/
version: true
+ sliced-invoices-formidable-forms:
+ Readme:
+ path: README.txt
slicewp:
QueryParameter:
files:
@@ -61106,6 +61297,9 @@ plugins:
version: true
Readme:
path: readme.txt
+ social-photo-blocks:
+ Readme:
+ path: readme.txt
social-pixel:
Readme:
path: readme.txt
@@ -61541,6 +61735,14 @@ plugins:
split-order-for-woocommerce:
Readme:
path: readme.txt
+ spoken-search:
+ QueryParameter:
+ files:
+ - assets/css/ss2t.min.css
+ - assets/js/ss2t-bundle.min.js
+ version: true
+ Readme:
+ path: readme.txt
spoken-word:
QueryParameter:
files:
@@ -62140,6 +62342,9 @@ plugins:
stranger-questions-faq:
Readme:
path: readme.txt
+ stratum:
+ Readme:
+ path: readme.txt
stray-quotes:
TranslationFile:
class: BodyPattern
@@ -62764,6 +62969,12 @@ plugins:
sync-ac-with-wp:
Readme:
path: readme.txt
+ sync-post-with-other-site:
+ TranslationFile:
+ class: BodyPattern
+ path: languages/sps_text_domain-en_US.po
+ pattern: !ruby/regexp '/\-Id\-Version: Sync Post With Other Site v(?\d+\.[\.\d]+)/i'
+ version: true
sync-qcloud-cos:
Readme:
path: readme.txt
@@ -63290,6 +63501,9 @@ plugins:
path: changelog.txt
pattern: !ruby/regexp /= (?\d+\.[\.\d]+) =/i
version: true
+ templately:
+ Readme:
+ path: README.txt
templates-add-on-woo-onepage:
Readme:
path: readme.txt
@@ -63836,6 +64050,9 @@ plugins:
files:
- css/style.css
version: true
+ threatpoint-api:
+ Readme:
+ path: readme.txt
three-d-cube:
QueryParameter:
files:
@@ -65234,6 +65451,9 @@ plugins:
ultimate-blog-layouts:
Readme:
path: readme.txt
+ ultimate-bootstrap-blocks:
+ Readme:
+ path: readme.md
ultimate-bulk-seo-noindex-nofollow:
QueryParameter:
files:
@@ -66588,6 +66808,11 @@ plugins:
- css/vessel.css
- js/vessel.js
version: true
+ vforce-extensions:
+ Readme:
+ path:
+ - README.txt
+ - README.md
vi-member-content:
Readme:
path: readme.txt
@@ -71380,6 +71605,9 @@ plugins:
wp-add-rel-ugc-to-comments:
Readme:
path: readme.txt
+ wp-adf-ly-dashboard-and-integration:
+ Readme:
+ path: README.txt
wp-admin-bar-hide-mh:
Readme:
path: readme.txt
@@ -71768,6 +71996,9 @@ plugins:
files:
- css/carousel.min.css
version: true
+ wp-branches-for-post:
+ Readme:
+ path: README.txt
wp-brand-identity-lite:
TranslationFile:
class: BodyPattern
@@ -71915,6 +72146,9 @@ plugins:
path: languages/wp-child-theme-generator.pot
pattern: !ruby/regexp '/ct\-Id\-Version: WP Child Theme Generator (?\d+\.[\.\d]+)/i'
version: true
+ wp-china-yes:
+ Readme:
+ path: readme.txt
wp-chords:
Readme:
path: readme.txt
@@ -72676,6 +72910,9 @@ plugins:
- assets/js/jquery-timepicker/bootstrap-datepicker.js
- assets/js/common.min.js
version: true
+ wp-event-partners:
+ Readme:
+ path: README.txt
wp-eventpress:
QueryParameter:
files:
@@ -73598,6 +73835,11 @@ plugins:
path: lang/wp-licenses.pot
pattern: !ruby/regexp '/"Project\-Id\-Version: WP\-licenses (?\d+\.[\.\d]+)/i'
version: true
+ wp-light-heatmap:
+ QueryParameter:
+ files:
+ - public/css/wp_light_heatmap-public.css
+ version: true
wp-lightbox-2:
Readme:
path: readme.txt
@@ -74181,11 +74423,22 @@ plugins:
version: true
Readme:
path: readme.md
+ wp-notepad:
+ Readme:
+ path: readme.txt
wp-notes-widget:
QueryParameter:
files:
- public/css/wp-notes-public.css
version: true
+ wp-notice-blocker:
+ Readme:
+ path: readme.txt
+ ComposerFile:
+ class: ConfigParser
+ path: package.json
+ key: version
+ version: true
wp-notification-bars:
Readme:
path: readme.txt
@@ -75124,6 +75377,9 @@ plugins:
path: languages/wp-seedbank.pot
pattern: !ruby/regexp '/"Project\-Id\-Version: WP\-SeedBank (?\d+\.[\.\d]+)/i'
version: true
+ wp-sendfox:
+ Readme:
+ path: readme.txt
wp-sendsms:
Readme:
path: Readme.txt
diff --git a/spec/fixtures/dynamic_finders/expected.yml b/spec/fixtures/dynamic_finders/expected.yml
index 8fe37d0f..39c8163b 100644
--- a/spec/fixtures/dynamic_finders/expected.yml
+++ b/spec/fixtures/dynamic_finders/expected.yml
@@ -36,6 +36,16 @@ wordpress:
found_by: Meta Generator (Passive Detection)
interesting_entries:
- 'http://wp.lab/, Match: ''WordPress 3.8.1'''
+ StyleEtag:
+ number: 3.8.1
+ found_by: Style Etag (Aggressive Detection)
+ interesting_entries:
+ - 'http://wp.lab/wp-admin/load-styles.php, Match: ''3.8.1'''
+ ScriptEtag:
+ number: 3.8.1
+ found_by: Script Etag (Aggressive Detection)
+ interesting_entries:
+ - 'http://wp.lab/wp-admin/load-scripts.php, Match: ''3.8.1'''
OpmlGenerator:
number: 4.0
found_by: Opml Generator (Aggressive Detection)
@@ -2234,6 +2244,13 @@ plugins:
interesting_entries:
- 'http://wp.lab/wp-content/plugins/altapay-for-woocommerce/changelog.txt, Match:
''= 1.7.2'''
+ altered-reality:
+ QueryParameter:
+ number: 1.0.0
+ found_by: Query Parameter (Passive Detection)
+ interesting_entries:
+ - http://wp.lab/wp-content/plugins/altered-reality/build/style.css?ver=1.0.0
+ confidence: 10
altruly-simple-diy-fundraising-for-charities-and-nonprofits:
QueryParameter:
number: 1.0.0
@@ -6391,6 +6408,12 @@ plugins:
interesting_entries:
- 'http://wp.lab/wp-content/plugins/bulletproof-security/admin/htaccess/wpadmin-secure.htaccess,
Match: ''# BULLETPROOF 2.9'''
+ bunnycdnbunnyapi:
+ ChangeLog:
+ number: 1.0.0
+ found_by: Change Log (Aggressive Detection)
+ interesting_entries:
+ - 'http://wp.lab/wp-content/plugins/bunnycdnbunnyapi/changelog.txt, Match: ''=1.0.0='''
buscape-wp-related-products:
TranslationFile:
number: '1.0'
@@ -13545,6 +13568,14 @@ plugins:
found_by: Meta Tag (Passive Detection)
interesting_entries:
- 'http://wp.lab/, Match: ''3.5.5;1'''
+ expandable-paywall:
+ QueryParameter:
+ number: 1.1.2
+ found_by: Query Parameter (Passive Detection)
+ interesting_entries:
+ - http://wp.lab/wp-content/plugins/expandable-paywall/public/css/expandable-paywall-public.css?ver=1.1.2
+ - http://wp.lab/wp-content/plugins/expandable-paywall/public/js/expandable-paywall-public.js?ver=1.1.2
+ confidence: 20
expivi:
TranslationFile:
number: '0.1'
@@ -14703,6 +14734,25 @@ plugins:
found_by: Javascript Var (Passive Detection)
interesting_entries:
- 'http://wp.lab/, Match: ''eams","plugin_ver":"3.0.10"};'''
+ flower-delivery-by-florist-one:
+ Comment:
+ number: 1.11.1
+ found_by: Comment (Passive Detection)
+ interesting_entries:
+ - 'http://wp.lab/, Match: ''/florist-one-flower-delivery-public-old-browser.css?ver=1.11.1'''
+ QueryParameter:
+ number: 1.11.1
+ found_by: Query Parameter (Passive Detection)
+ interesting_entries:
+ - http://wp.lab/wp-content/plugins/flower-delivery-by-florist-one/public/css/slicknav.css?ver=1.11.1
+ - http://wp.lab/wp-content/plugins/flower-delivery-by-florist-one/public/css/florist-one-flower-delivery-public.css?ver=1.11.1
+ - http://wp.lab/wp-content/plugins/flower-delivery-by-florist-one/public/js/jquery.validate.js?ver=1.11.1
+ - http://wp.lab/wp-content/plugins/flower-delivery-by-florist-one/public/js/jquery.slicknav.min.js?ver=1.11.1
+ - http://wp.lab/wp-content/plugins/flower-delivery-by-florist-one/public/js/jquery.history.js?ver=1.11.1
+ - http://wp.lab/wp-content/plugins/flower-delivery-by-florist-one/public/js/resizeSensor.js?ver=1.11.1
+ - http://wp.lab/wp-content/plugins/flower-delivery-by-florist-one/public/js/elementQueries.js?ver=1.11.1
+ - http://wp.lab/wp-content/plugins/flower-delivery-by-florist-one/public/js/florist-one-flower-delivery-public.js?ver=1.11.1
+ confidence: 80
fluentform:
JavascriptComment:
number: 1.3.4
@@ -18147,6 +18197,14 @@ plugins:
interesting_entries:
- http://wp.lab/wp-content/plugins/i-chat/js/jquery.cookie.js?ver=1.0.0
confidence: 10
+ i-like:
+ QueryParameter:
+ number: 1.0.0
+ found_by: Query Parameter (Passive Detection)
+ interesting_entries:
+ - http://wp.lab/wp-content/plugins/i-like/assets/js/i-like-ajax.js?ver=1.0.0
+ - http://wp.lab/wp-content/plugins/i-like/assets/js/main.js?ver=1.0.0
+ confidence: 20
i-order-terms:
TranslationFile:
number: 1.5.0
@@ -27176,6 +27234,14 @@ plugins:
- http://wp.lab/wp-content/plugins/photo-gallery-with-responsive/assets/css/pgr-custom.css?ver=1.1
- http://wp.lab/wp-content/plugins/photo-gallery-with-responsive/assets/js/catfilter.js?ver=1.1
confidence: 50
+ photo-roll:
+ QueryParameter:
+ number: 1.0.0
+ found_by: Query Parameter (Passive Detection)
+ interesting_entries:
+ - http://wp.lab/wp-content/plugins/photo-roll/public/css/instantgram-public.css?ver=1.0.0
+ - http://wp.lab/wp-content/plugins/photo-roll/public/js/instantgram-public.js?ver=1.0.0
+ confidence: 20
photo-swipe:
QueryParameter:
number: 4.1.1.1
@@ -35209,6 +35275,14 @@ plugins:
interesting_entries:
- http://wp.lab/wp-content/plugins/splash-popup-for-woocommerce/js/frontend.js?ver=1.0.9
confidence: 10
+ spoken-search:
+ QueryParameter:
+ number: '1.0'
+ found_by: Query Parameter (Passive Detection)
+ interesting_entries:
+ - http://wp.lab/wp-content/plugins/spoken-search/assets/css/ss2t.min.css?ver=1.0
+ - http://wp.lab/wp-content/plugins/spoken-search/assets/js/ss2t-bundle.min.js?ver=1.0
+ confidence: 20
spoken-word:
QueryParameter:
number: 1.0.0
@@ -36330,6 +36404,13 @@ plugins:
interesting_entries:
- 'http://wp.lab/wp-content/plugins/sympose/languages/sympose.pot, Match: ''"Project-Id-Version:
Sympose 1.0.0'''
+ sync-post-with-other-site:
+ TranslationFile:
+ number: 1.0.0
+ found_by: Translation File (Aggressive Detection)
+ interesting_entries:
+ - 'http://wp.lab/wp-content/plugins/sync-post-with-other-site/languages/sps_text_domain-en_US.po,
+ Match: ''-Id-Version: Sync Post With Other Site v1.0.0'''
synchi:
TranslationFile:
number: '5.1'
@@ -46054,6 +46135,13 @@ plugins:
interesting_entries:
- 'http://wp.lab/wp-content/plugins/wp-licenses/lang/wp-licenses.pot, Match:
''"Project-Id-Version: WP-licenses 0.0.7'''
+ wp-light-heatmap:
+ QueryParameter:
+ number: 1.0.0
+ found_by: Query Parameter (Passive Detection)
+ interesting_entries:
+ - http://wp.lab/wp-content/plugins/wp-light-heatmap/public/css/wp_light_heatmap-public.css?ver=1.0.0
+ confidence: 10
wp-like-box:
QueryParameter:
number: '1.0'
@@ -46591,6 +46679,12 @@ plugins:
interesting_entries:
- http://wp.lab/wp-content/plugins/wp-notes-widget/public/css/wp-notes-public.css?ver=1.0.3
confidence: 10
+ wp-notice-blocker:
+ ComposerFile:
+ number: '1.0'
+ found_by: Composer File (Aggressive Detection)
+ interesting_entries:
+ - 'http://wp.lab/wp-content/plugins/wp-notice-blocker/package.json, Match: ''1.0'''
wp-nutrition-facts:
Comment:
number: 1.0.2
diff --git a/spec/fixtures/dynamic_finders/plugin_version/bunnycdnbunnyapi/change_log/changelog.txt b/spec/fixtures/dynamic_finders/plugin_version/bunnycdnbunnyapi/change_log/changelog.txt
new file mode 100644
index 00000000..007a4887
--- /dev/null
+++ b/spec/fixtures/dynamic_finders/plugin_version/bunnycdnbunnyapi/change_log/changelog.txt
@@ -0,0 +1,19 @@
+== CHANGELOG ==
+
+=1.0.0=
+Initial setup
+bunnyapi ::
+WP default upload paths
+setup paths
+bunnyapi_callback_css
+bunnyapi_img_shortcode($atts)
+bunnyapi_dnsprefetch()
+load classes--
+inc:: bunnyapiFunctions
+inc-- bunnyapi_api_key(),bunnyapi_validate_apikey(),bunnyapi_clear_cache(),bunnyapi_delete_all(),bunnyapi_delete_files($files),bunnyapi_copy_all($folder),bunnyapi_force_push($folder),bunnyapi_upload_files($files),bunnyapi_is_gutenberg_active(),bunnyapi_setbunnyhost(),bunnyapi_currenturl(),bunnyapi_api_call(),bunnyhost(),bunnyapi_convert_year_month_url(),bunnyapi_check_https(),bunnyapi_is_200(),bunnyapi_full_validation_apikey()
+inc:: bunnyapiSettings
+inc-- getOptions(),getOption($option),validateSettings($data),cleanHostname($hostname),initialize(),bunnyapi_options_page(),js:{deleteall(),clearcache(),copyall(),pushall(),downloadall(),setHost()}
+inc:: bunnyapiMedia
+inc-- function($editor_id),bunnyapi_CustomMediaUI(),bunnyapi_media_urls(),bunnyapi_getLabel(),bunnyapi_getUrl(),bunnyapi_render(),__construct(),bunnyapi_submenu(),bunnyapi_adminBar(),bunnyapi_mediaButton(),bunnyapi_mediaButtonScript(),bunnyapi_indexButton(),bunnyapi_h2Button()
+BunnyAPI auto-detection hostname configuration
+BunnyAPI Settings screen: Update BunnyAPI Settings, Clear Cache, Download BunnyCDN Media, Push WP Media Library, Copy BunnyCDN Media, and Delete All BunnyCDN Media
diff --git a/spec/fixtures/dynamic_finders/plugin_version/comment_passive_all.html b/spec/fixtures/dynamic_finders/plugin_version/comment_passive_all.html
index d6ba2892..097b0278 100644
--- a/spec/fixtures/dynamic_finders/plugin_version/comment_passive_all.html
+++ b/spec/fixtures/dynamic_finders/plugin_version/comment_passive_all.html
@@ -107,7 +107,7 @@ Ahalogy wordpress plugin [version 2.1.0] is installed but Client ID not set
@@ -619,7 +619,7 @@ If above timestamp is not current time, this page is cached.
-->
@@ -819,7 +819,7 @@ If above timestamp is not current time, this page is cached. -->
@@ -850,7 +850,7 @@ If above timestamp is not current time, this page is cached. -->
@@ -1171,7 +1171,7 @@ s0.parentNode.insertBefore(s1,s0);
@@ -1179,4 +1179,9 @@ s0.parentNode.insertBefore(s1,s0);
+
+
+
diff --git a/spec/fixtures/dynamic_finders/plugin_version/query_parameter_passive_all.html b/spec/fixtures/dynamic_finders/plugin_version/query_parameter_passive_all.html
index a28e6313..52a5c94c 100644
--- a/spec/fixtures/dynamic_finders/plugin_version/query_parameter_passive_all.html
+++ b/spec/fixtures/dynamic_finders/plugin_version/query_parameter_passive_all.html
@@ -738,6 +738,10 @@
+
+
+
+
@@ -4760,6 +4764,11 @@
+
+
+
+
+
@@ -5211,6 +5220,17 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -6495,6 +6515,11 @@
+
+
+
+
+
@@ -9973,6 +9998,11 @@
+
+
+
+
+
@@ -13054,6 +13084,11 @@
+
+
+
+
+
@@ -16937,6 +16972,10 @@
+
+
+
+
diff --git a/spec/fixtures/dynamic_finders/plugin_version/sync-post-with-other-site/translation_file/languages/sps_text_domain-en_US.po b/spec/fixtures/dynamic_finders/plugin_version/sync-post-with-other-site/translation_file/languages/sps_text_domain-en_US.po
new file mode 100644
index 00000000..24fc3200
--- /dev/null
+++ b/spec/fixtures/dynamic_finders/plugin_version/sync-post-with-other-site/translation_file/languages/sps_text_domain-en_US.po
@@ -0,0 +1,373 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: Sync Post With Other Site v1.0.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: 2020-01-21 06:39:08+0000\n"
+"Last-Translator: admin \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: CSL v1.x\n"
+"X-Poedit-Language: English\n"
+"X-Poedit-Country: UNITED STATES\n"
+"X-Poedit-SourceCharset: utf-8\n"
+"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;\n"
+"X-Poedit-Basepath: ../\n"
+"X-Poedit-Bookmarks: \n"
+"X-Poedit-SearchPath-0: .\n"
+"X-Textdomain-Support: yes"
+
+#. translators: plugin header field 'Name'
+#: SyncPostWithOtherSite.php:0
+#@ sps_text_domain
+msgid "Sync Post With Other Site"
+msgstr "Sync Post With Other Site"
+
+#. translators: plugin header field 'PluginURI'
+#. translators: plugin header field 'AuthorURI'
+#: SyncPostWithOtherSite.php:0
+#@ sps_text_domain
+msgid "https://kp4coder.com/"
+msgstr "https://kp4coder.com/"
+
+#. translators: plugin header field 'Description'
+#: SyncPostWithOtherSite.php:0
+#@ sps_text_domain
+msgid "Allows user to sync post with multiple websites."
+msgstr "Allows user to sync post with multiple websites."
+
+#. translators: plugin header field 'Author'
+#: SyncPostWithOtherSite.php:0
+#@ sps_text_domain
+msgid "KP Dev"
+msgstr "KP Dev"
+
+#. translators: plugin header field 'Version'
+#: SyncPostWithOtherSite.php:0
+#@ sps_text_domain
+msgid "1.0.0"
+msgstr "1.0.0"
+
+#: SyncPostWithOtherSite.php:103
+#@ sps_text_domain
+msgid "Setting"
+msgstr "Setting"
+
+#: SyncPostWithOtherSite.php:113
+#@ sps_text_domain
+msgid "Sync Post"
+msgstr "Sync Post"
+
+#: SyncPostWithOtherSite.php:158
+#@ sps_text_domain
+msgid "No matching tax rates found."
+msgstr "No matching tax rates found."
+
+#: SyncPostWithOtherSite.php:230
+#@ sps_text_domain
+msgid "Product Listing will be here"
+msgstr "Product Listing will be here"
+
+#: includes/sps_post_meta.class.php:18
+#@ SPS_txt_domain
+msgid "Select Websites"
+msgstr ""
+
+#: includes/sps_post_meta.class.php:46
+#@ SPS_txt_domain
+msgid "Please add website in Sync Post. So you can select the website for sync post."
+msgstr ""
+
+#: includes/sps_post_meta.class.php:51
+#@ SPS_txt_domain
+msgid "select which website you want to add/edit post with this post."
+msgstr ""
+
+#: includes/sps_settings.view.php:14
+#@ sps_text_domain
+msgid "Dismiss this notice."
+msgstr "Dismiss this notice."
+
+#: includes/sps_settings.view.php:31
+#@ sps_text_domain
+msgid "General options"
+msgstr "General options"
+
+#: includes/sps_settings.view.php:48
+#: includes/sps_settings.view.php:134
+#@ sps_text_domain
+msgid "Host Name of Target"
+msgstr "Host Name of Target"
+
+#: includes/sps_settings.view.php:54
+#: includes/sps_settings.view.php:138
+#@ sps_text_domain
+msgid "https://example.com - This is the URL that your Content will be Pushed to. If WordPress is installed in a subdirectory, include the subdirectory."
+msgstr "https://example.com - This is the URL that your Content will be Pushed to. If WordPress is installed in a subdirectory, include the subdirectory."
+
+#: includes/sps_settings.view.php:58
+#: includes/sps_settings.view.php:61
+#: includes/sps_settings.view.php:142
+#: includes/sps_settings.view.php:145
+#@ sps_text_domain
+msgid "Username"
+msgstr "Username"
+
+#: includes/sps_settings.view.php:65
+#: includes/sps_settings.view.php:68
+#: includes/sps_settings.view.php:149
+#: includes/sps_settings.view.php:152
+#@ sps_text_domain
+msgid "Password"
+msgstr "Password"
+
+#: includes/sps_settings.view.php:72
+#: includes/sps_settings.view.php:156
+#@ sps_text_domain
+msgid "Strict Mode"
+msgstr "Strict Mode"
+
+#: includes/sps_settings.view.php:75
+#: includes/sps_settings.view.php:159
+#@ sps_text_domain
+msgid "On - WordPress and SyncPostWithOtherSite for Content versions must match on Source and Target in order to perform operations."
+msgstr "On - WordPress and SyncPostWithOtherSite for Content versions must match on Source and Target in order to perform operations."
+
+#: includes/sps_settings.view.php:80
+#: includes/sps_settings.view.php:163
+#@ sps_text_domain
+msgid "Off - WordPress and SyncPostWithOtherSite for Content versions do not need to match."
+msgstr "Off - WordPress and SyncPostWithOtherSite for Content versions do not need to match."
+
+#: includes/sps_settings.view.php:84
+#: includes/sps_settings.view.php:167
+#@ sps_text_domain
+msgid "Content Match Mode"
+msgstr "Content Match Mode"
+
+#: includes/sps_settings.view.php:92
+#@ sps_text_domain
+msgid "Post slug - Search for matching Content on Target by Post Slug only."
+msgstr "Post slug - Search for matching Content on Target by Post Slug only."
+
+#: includes/sps_settings.view.php:96
+#: includes/sps_settings.view.php:179
+#@ sps_text_domain
+msgid "Roles Allowed to use"
+msgstr "Roles Allowed to use"
+
+#: includes/sps_settings.view.php:99
+#: includes/sps_settings.view.php:182
+#@ sps_text_domain
+msgid "Contributor"
+msgstr "Contributor"
+
+#: includes/sps_settings.view.php:102
+#: includes/sps_settings.view.php:184
+#@ sps_text_domain
+msgid "Author"
+msgstr "Author"
+
+#: includes/sps_settings.view.php:105
+#: includes/sps_settings.view.php:186
+#@ sps_text_domain
+msgid "Editor"
+msgstr "Editor"
+
+#: includes/sps_settings.view.php:108
+#: includes/sps_settings.view.php:188
+#@ sps_text_domain
+msgid "Administrator"
+msgstr "Administrator"
+
+#: includes/sps_settings.view.php:110
+#: includes/sps_settings.view.php:190
+#@ sps_text_domain
+msgid "Select the Roles you wish to have access to the SyncPostWithOtherSite User Interface. Only these Roles will be allowed to perform Syncing operations."
+msgstr "Select the Roles you wish to have access to the SyncPostWithOtherSite User Interface. Only these Roles will be allowed to perform Syncing operations."
+
+#: includes/sps_settings.view.php:137
+#@ sps_text_domain
+msgid " Remove Site "
+msgstr " Remove Site "
+
+#: includes/sps_settings.view.php:170
+#@ sps_text_domain
+msgid "Post Slug"
+msgstr "Post Slug"
+
+#: includes/sps_settings.view.php:175
+#@ sps_text_domain
+msgid "Post slug - Search for matching Content on Target by Post slug only."
+msgstr "Post slug - Search for matching Content on Target by Post slug only."
+
+#: includes/sps_sync.class.php:255
+#@ sps_text_domain
+msgid "success"
+msgstr "success"
+
+#: includes/sps_sync.class.php:256
+#@ sps_text_domain
+msgid "data proccessed successfully"
+msgstr "data proccessed successfully"
+
+#: includes/sps_sync.class.php:261
+#: includes/sps_sync.class.php:265
+#@ sps_text_domain
+msgid "failed"
+msgstr "failed"
+
+#: includes/sps_sync.class.php:262
+#@ sps_text_domain
+msgid "Authenitcate failed."
+msgstr "Authenitcate failed."
+
+#: includes/sps_sync.class.php:266
+#@ sps_text_domain
+msgid "Username or Password is null."
+msgstr "Username or Password is null."
+
+#: includes/sps_wp_list_table.class.php:151
+#@ default
+msgid "List View"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:152
+#@ default
+msgid "Excerpt View"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:312
+#@ default
+msgid "No items found."
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:434
+#@ default
+msgid "Select bulk action"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:436
+#@ default
+msgid "Bulk Actions"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:446
+#@ default
+msgid "Apply"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:494
+#: includes/sps_wp_list_table.class.php:1272
+#@ default
+msgid "Show more details"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:556
+#@ default
+msgid "Filter by date"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:558
+#@ default
+msgid "All dates"
+msgstr ""
+
+#. translators: 1: month name, 2: 4-digit year
+#: includes/sps_wp_list_table.class.php:571
+#, php-format
+#@ default
+msgid "%1$s %2$d"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:621
+#, php-format
+#@ default
+msgid "%s comment"
+msgid_plural "%s comments"
+msgstr[0] ""
+msgstr[1] ""
+
+#: includes/sps_wp_list_table.class.php:622
+#, php-format
+#@ default
+msgid "%s approved comment"
+msgid_plural "%s approved comments"
+msgstr[0] ""
+msgstr[1] ""
+
+#: includes/sps_wp_list_table.class.php:623
+#, php-format
+#@ default
+msgid "%s pending comment"
+msgid_plural "%s pending comments"
+msgstr[0] ""
+msgstr[1] ""
+
+#: includes/sps_wp_list_table.class.php:628
+#: includes/sps_wp_list_table.class.php:640
+#: includes/sps_wp_list_table.class.php:653
+#@ default
+msgid "No comments"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:640
+#@ default
+msgid "No approved comments"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:653
+#@ default
+msgid "No pending comments"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:727
+#: includes/sps_wp_list_table.class.php:1296
+#, php-format
+#@ default
+msgid "%s item"
+msgid_plural "%s items"
+msgstr[0] ""
+msgstr[1] ""
+
+#: includes/sps_wp_list_table.class.php:763
+#@ default
+msgid "First page"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:773
+#@ default
+msgid "Previous page"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:780
+#: includes/sps_wp_list_table.class.php:783
+#@ default
+msgid "Current Page"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:789
+#, php-format
+#@ default
+msgctxt "paging"
+msgid "%1$s of %2$s"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:796
+#@ default
+msgid "Next page"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:806
+#@ default
+msgid "Last page"
+msgstr ""
+
+#: includes/sps_wp_list_table.class.php:1026
+#@ default
+msgid "Select All"
+msgstr ""
+
diff --git a/spec/fixtures/dynamic_finders/plugin_version/wp-notice-blocker/composer_file/package.json b/spec/fixtures/dynamic_finders/plugin_version/wp-notice-blocker/composer_file/package.json
new file mode 100644
index 00000000..09878562
--- /dev/null
+++ b/spec/fixtures/dynamic_finders/plugin_version/wp-notice-blocker/composer_file/package.json
@@ -0,0 +1,25 @@
+{
+ "name": "wp-notice-blocker",
+ "version": "1.0",
+ "description": "A notice blocker for WordPress",
+ "main": "index.js",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/hasinur1997/wp-notice-blocker.git"
+ },
+ "keywords": [
+ "WordPress",
+ "admin",
+ "notice",
+ "blocker"
+ ],
+ "author": "Hasinur Rahman",
+ "license": "ISC",
+ "bugs": {
+ "url": "https://github.com/hasinur1997/wp-notice-blocker/issues"
+ },
+ "homepage": "https://github.com/hasinur1997/wp-notice-blocker#readme"
+}
diff --git a/spec/fixtures/dynamic_finders/wp_version/script_etag/wp-admin/load-scripts.php b/spec/fixtures/dynamic_finders/wp_version/script_etag/wp-admin/load-scripts.php
new file mode 100644
index 00000000..8b0e5a9f
--- /dev/null
+++ b/spec/fixtures/dynamic_finders/wp_version/script_etag/wp-admin/load-scripts.php
@@ -0,0 +1,8 @@
+{
+ "Date": "Tue, 03 Mar 2020 15:51:52 GMT",
+ "Server": "Apache",
+ "Etag": "3.8.1",
+ "Expires": "Wed, 03 Mar 2021 15:51:52 GMT",
+ "Cache-Control": "public, max-age=31536000",
+ "Content-Type": "application/javascript; charset=UTF-8"
+}
diff --git a/spec/fixtures/dynamic_finders/wp_version/style_etag/wp-admin/load-styles.php b/spec/fixtures/dynamic_finders/wp_version/style_etag/wp-admin/load-styles.php
new file mode 100644
index 00000000..b9bf8294
--- /dev/null
+++ b/spec/fixtures/dynamic_finders/wp_version/style_etag/wp-admin/load-styles.php
@@ -0,0 +1,8 @@
+{
+ "Date": "Tue, 03 Mar 2020 15:51:52 GMT",
+ "Server": "Apache",
+ "Etag": "3.8.1",
+ "Expires": "Wed, 03 Mar 2021 15:51:52 GMT",
+ "Cache-Control": "public, max-age=31536000",
+ "Content-Type": "text/css; charset=UTF-8"
+}