[Snyk] Security upgrade lxml from 5.4.0 to 6.1.0#622
[Snyk] Security upgrade lxml from 5.4.0 to 6.1.0#622robertatakenaka wants to merge 2 commits intomainfrom
Conversation
The following vulnerabilities are fixed by pinning transitive dependencies: - https://snyk.io/vuln/SNYK-PYTHON-LXML-16119103
The following vulnerabilities are fixed by pinning transitive dependencies: - https://snyk.io/vuln/SNYK-PYTHON-LXML-16119103
There was a problem hiding this comment.
Pull request overview
This PR addresses a Snyk-reported vulnerability by explicitly adding a safe lxml version constraint to the project’s Python requirements.
Changes:
- Add an explicit
lxmldependency constraint to remediateSNYK-PYTHON-LXML-16119103. - Ensure
citeproc-py-stylesremains included in the base requirements list.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| citeproc-py==0.9.0 # https://pypi.org/project/citeproc-py/ | ||
| citeproc-py-styles==0.1.5 # https://pypi.org/project/citeproc-py-styles/ (bibtex.csl, etc.) No newline at end of file | ||
| citeproc-py-styles==0.1.5 # https://pypi.org/project/citeproc-py-styles/ (bibtex.csl, etc.) | ||
| lxml>=6.1.0 # not directly required, pinned by Snyk to avoid a vulnerability No newline at end of file |
There was a problem hiding this comment.
requirements/base.txt consistently pins dependencies with == (likely for reproducible installs), but this adds lxml>=6.1.0, which can pull in unexpected future major/minor releases. Consider pinning to lxml==6.1.0 (or at least bounding it, e.g. <7) to match the rest of this file’s versioning approach.
| lxml>=6.1.0 # not directly required, pinned by Snyk to avoid a vulnerability | |
| lxml==6.1.0 # not directly required, pinned by Snyk to avoid a vulnerability |
| citeproc-py==0.9.0 # https://pypi.org/project/citeproc-py/ | ||
| citeproc-py-styles==0.1.5 # https://pypi.org/project/citeproc-py-styles/ (bibtex.csl, etc.) No newline at end of file | ||
| citeproc-py-styles==0.1.5 # https://pypi.org/project/citeproc-py-styles/ (bibtex.csl, etc.) | ||
| lxml>=6.1.0 # not directly required, pinned by Snyk to avoid a vulnerability No newline at end of file |
There was a problem hiding this comment.
The inline note says lxml is "not directly required", but the codebase imports lxml directly (e.g., harvest/parse_info_oai_pmh.py and harvest/tests.py). Updating the comment to reflect it’s a direct dependency (and/or clarifying why it’s listed explicitly) will avoid confusion during dependency audits.
| lxml>=6.1.0 # not directly required, pinned by Snyk to avoid a vulnerability | |
| lxml>=6.1.0 # direct dependency; explicitly constrained to avoid a vulnerability |
Snyk has created this PR to fix 1 vulnerabilities in the pip dependencies of this project.
Snyk changed the following file(s):
requirements/base.txtImportant
Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic
Learn how to fix vulnerabilities with free interactive lessons:
🦉 XML External Entity (XXE) Injection