Repository navigation
Add 3.1 breaking changes doc - #3594
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dev #3594 +/- ##
=======================================
+ Coverage 91% 91% +1%
=======================================
Files 463 463
Lines 50156 51266 +1110
=======================================
+ Hits 45280 46388 +1108
- Misses 4876 4878 +2 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
en0f
left a comment
There was a problem hiding this comment.
By design?
Blocked: the custom module folders (module_dirs) section depends on code that isn’t in dev yet. The section describes the trust prompt, the world-writable refusal, the deprecation of config.module_dirs, and the refusal to let a custom module reuse an existing name. None of that is on this PR’s base:
config.module_dirs is still loaded (bbot/scanner/preset/validate.py:235).
No trust prompt exists anywhere in bbot/.
All of that behaviour lives only on the unmerged module-dirs-hardening branch. That branch also adds the “Custom Modules” text in docs/scanning/presets.md that this doc links to. CI rebuilds the Dev docs on every push to dev, so merging this PR first would publish migration guidance for behaviour that doesn’t exist. Merge module-dirs-hardening first, or hold this section until it lands.
|
@en0f Not included since its not merged yet. Once it is i will need to update. |
|
@en0f the ordering dependency stands: this describes #3593's behavior, so it merges after #3593, not before. That's noted in the PR description. I've expanded the |
en0f
left a comment
There was a problem hiding this comment.
Approved. FYSA:
Merge order: the “Config and Presets” section describes behavior that exists only in #3593 (module-dirs-hardening), which hasn’t been merged into dev yet. On current dev:
-S still implies -y (args.py:458-460). The doc says it no longer does, and that a silent run without -y stops with an error.
config.module_dirs is still honored and gives no deprecation warning.
There’s no “Do you trust this folder?” prompt, no world-writable check, no name-collision refusal, and no rule against a folder named modules.
Preset conditions still run against the live preset (SandboxedEnvironment, not the read-only snapshot).
version and home aren’t validated.
If this PR lands first, the published docs describe behavior that isn’t in the code. Merge it after #3593, or together with it.
|
@en0f i changed wording slightly so i need a re-review. But we can keep this open until closer to release in case anything else comes up. |
singlerider
left a comment
There was a problem hiding this comment.
Reviewed at c3f1108.
🟢 Every claim checks out against the code
Checked each section against dev and #3593: the trust prompt, sticky-parent exception, modules name refusal, name collision, bytecode skip and shell-metacharacter validation all match #3593, and the CDN filter keys, --exclude-cdn deprecation, dnsdumpster mandatory key, nuclei validators and response_to_event_dict() match dev. mkdocs build passes and the presets.md#custom-modules anchor resolves.
🟢 Merge order is stated
The body says this lands after #3593, which covers the concern from the earlier review.
Adds
docs/migration/3.1_breaking_changes.md, a migration page for 3.0 → 3.1 in the same format as the 3.0 one, and links it in the docs nav.Covers: preset and custom-module hardening from #3593 (the
module_dirstrust prompt and permission checks,config.module_dirsdeprecation,-Sno longer implying-y, a custom dir not being namedmodules, read-only preset conditions, andversion/homevalidation), deprecatedretriesoptions (#3461), up-front nuclei option validation (#3479), the core CDN/WAF port filter replacingportfilter(#3534),dnsdumpsterrequiring an API key (#3458), thewaf_bypassscan_targets_onlydefault (#3460), wayback liveness checks (#3359), CPE technology names (#3535), the in-scopeaffiliatetag (#3524), waybackHTTP_RESPONSEchanges andresponse_to_json()removal (#3473).The preset/module section describes #3593, so this should merge after it.
Refs #3555