Skip to content

Tool: Retire.js for Static Vulnerability Analysis#135

Open
Mr-Weather wants to merge 66 commits into
mainfrom
tool-retirejs
Open

Tool: Retire.js for Static Vulnerability Analysis#135
Mr-Weather wants to merge 66 commits into
mainfrom
tool-retirejs

Conversation

@Mr-Weather

Copy link
Copy Markdown

Installation: Added as a devDependency via "npm install --save-dev retire"

Evidence: see retire-terminal-output.json committed in this branch.
retire-terminal-output.txt

Pros:

  • Zero configuration needed: works out of the box on any Node.js project
  • Actively maintained vulnerability database
  • Multiple output formats make it easy to integrate into CI
  • Fast even on large dependency trees like NodeBB's
  • Directly actionable results: tells you which package is vulnerable and what version fixes it

Cons:

  • Only catches known vulnerabilities: won't find novel bugs or logic errors
  • Can produce false positives for vulnerabilities in code paths never actually used
  • Results go stale quickly; needs to be re-run regularly as the database updates
  • Purely dependency-focused: doesn't analyze your own source code at all

Q2L2 and others added 30 commits February 8, 2026 19:38
…here I needed to ad everything and rerouted the inital compser file to the one that i added into vendor
Adding HTML and CSS for a make visible to  staff-only Button
Added Mark Endorsed Button to the posts' tools dropdown menu
Anonymous button front-end implemented
Mr-Weather and others added 29 commits February 26, 2026 20:16
Anonymous button fully implemented. 
Coverage error persisting, but besides that all tests are passing.
feat: complete backend question status implementation
Change the button formatting so that on click it becomes red/white so that users know which state it is in
Completed implementing the backend for the endorse post button as a new feature for the topics tools.
The staff only button was implemented such that if clicked other users except admin and poster cannot see the post
Added Endorse Topic Feature user guide to UserGuide.md, explaining how to use the feature as an admin and how to conduct user-testing on the feature.
Added documentation for the Staff Only Post feature,
Document Staff Only Post feature and user testing
Add user configuration to NodeBB service (reci 7)
@Mr-Weather

Copy link
Copy Markdown
Author
  • Retire.js is a dependency vulnerability scanner for Node.js projects that will check the installed packages against a known vulnerability database and flags any dependencies that have reported security issues. [https://retirejs.github.io/retire.js/]
  • The tool is used for static analysis.
  • It can catch known CVEs and reported vulnerabilities in third-party dependencies. It won't catch anything in your own source code and is only about what packages we've pulled in and whether those packages have documented security issues.
  • This tool almost doesn't need configuration. For customization, we can pass flags to control output format or add a .retireignore file to limit its findings.
  • It better runs as part of CI on every PR so we won't let vulnerable dependencies enter the main. It could work sufficiently if running weekly besided PR checks. And we could also add it as an npm script to run before opening PR.
  • There exists false positives as it will flag vulnerabilities if your project never actually exercises that path. False negatives are almost inevitable as novel bugs in dependencies are completely undetectable. For a large codebase like NodeBB, true positive reports about things we don't care about are also a common thing due toits deep dependency tree.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants