chore(deps): Update dependency faker to v40.35.0#183
Conversation
📝 WalkthroughWalkthroughThe ChangesDevelopment dependency update
Estimated code review effort: 1 (Trivial) | ~2 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
43fc95a to
e23049b
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@requirements-dev.txt`:
- Line 84: Confirm that faker 40.32.0 is the intended development dependency
target, then regenerate uv.lock so its Faker resolution matches the
faker==40.32.0 pin in requirements-dev.txt. Ensure no stale Faker 40.23.0 entry
remains.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
| executing==2.2.1 | ||
| # via stack-data | ||
| faker==40.28.1 | ||
| faker==40.32.0 |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== files =="
git ls-files | rg '(^|/)(requirements-dev\.txt|uv\.lock|pyproject\.toml|.*\.md)$' || true
echo
echo "== requirements-dev faker around line 84 =="
if [ -f requirements-dev.txt ]; then
nl -ba requirements-dev.txt | sed -n '70,90p'
fi
echo
echo "== uv.lock faker references =="
if [ -f uv.lock ]; then
python3 - <<'PY'
from pathlib import Path
p=Path('uv.lock')
lines=p.read_text().splitlines()
for i,l in enumerate(lines,1):
if 'faker' in l.lower() or 'name = "faker"' in l:
start=max(1,i-5); end=min(len(lines),i+15)
print(f'--- around line {i} ---')
for n in range(start,end+1):
print(f'{n}: {lines[n-1]}')
PY
fi
echo
echo "== pr metadata-ish references =="
git ls-files | xargs -r grep -in "faker==40\.3[0-9]\|Faker.*40\.3[0-9]\|40\.3[0-9]" || true
echo
echo "== lockfile integrity header/psf =="
if [ -f uv.lock ]; then
sed -n '1,80p' uv.lock
fiRepository: ByronWilliamsCPA/pp-security-master
Length of output: 4007
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== git status/stat =="
git status --short
git diff --stat -- requirements-dev.txt uv.lock PR_TEMPLATE.md pyproject.toml README.md docs/planning/phase-0-issues-P0-001-to-P0-005.md 2>/dev/null || true
echo
echo "== requirements-dev faker context =="
awk 'NR>=75 && NR<=90 {printf "%6d %s\n", NR, $0}' requirements-dev.txt
echo
echo "== uv.lock faker package references =="
python3 - <<'PY'
from pathlib import Path
p=Path('uv.lock')
text=p.read_text(encoding='utf-8')
lines=text.splitlines()
for i,l in enumerate(lines,1):
if 'faker' in l.lower():
start=max(1,i-8); end=min(len(lines),i+18)
print(f'--- around line {i} ---')
for n in range(start,end+1):
print(f'{n}: {lines[n-1]}')
PY
echo
echo "== deterministic package entry summary for faker =="
python3 - <<'PY'
from pathlib import Path
text=Path('uv.lock').read_text(encoding='utf-8').splitlines()
for i,line in enumerate(text,1):
if line == '[package]':
j=i+3
pkg={}
while j<=len(text) and text[j-1] not in ('','[') and not text[j-1].startswith('['):
k=text[j-1]
if '=' in k:
key,val=k.split('=',1)
pkg[key.strip()]=val.strip().strip('"')
j+=1
if pkg.get('name','').lower()=='faker':
print(f'line {i}-{(j-1)}: version={pkg.get("version")} source={pkg.get("source")} index={pkg.get("index")}')
PY
echo
echo "== faker version occurrences in root docs and lock/requirements =="
python3 - <<'PY'
import re
from pathlib import Path
pat=re.compile(r'faker[=:][^\S\r\n]*40\.3(0|[12])\.0|Faker.*40\.3(0|[12])\.0|40\.3(0|[12])\.0')
for path in [Path('requirements-dev.txt'), Path('uv.lock'), Path('pyproject.toml'), Path('README.md'), Path('.github/PULL_REQUEST_TEMPLATE.md'), Path('docs/planning/phase-0-issues-P0-001-to-P0-005.md')]:
if not path.exists(): continue
text=path.read_text(encoding='utf-8')
hits=[(i,l.strip()) for i,l in enumerate(text.splitlines(),1) if pat.search(l)]
if hits:
print(f'--- {path} ---')
for i,l in hits:
print(f'{line}')
PYRepository: ByronWilliamsCPA/pp-security-master
Length of output: 10221
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== faker occurrence summary =="
python3 - <<'PY'
import re
from pathlib import Path
pat=re.compile(r'faker[=:][^\S\r\n]*40\.3[0-9]\.0|Faker *40\.3[0-9]\.0|40\.3[0-9]\.0')
for path in [Path('requirements-dev.txt'), Path('uv.lock'), Path('pyproject.toml'), Path('README.md'), Path('.github/PULL_REQUEST_TEMPLATE.md')]:
if not path.exists():
continue
text=path.read_text(encoding='utf-8')
hits=[]
for i,l in enumerate(text.splitlines(),1):
if pat.search(l):
hits.append(f'{i}: {l.strip()}')
print(f'--- {path} ({len(hits)} hits) ---')
for h in hits:
print(h)
PY
echo
echo "== project lockfile generator mentions =="
python3 - <<'PY'
from pathlib import Path
for path in [Path('pyproject.toml'), Path('uv.lock'), Path('requirements-dev.txt')]:
if path.exists():
print(f'--- {path} ---')
text=path.read_text(encoding='utf-8')
for needle in ('uv.lock', 'uv pip compile', 'uv lock', 'uv add', 'requirements-dev.txt'):
if needle in text:
print(f'contains: {needle}')
PYRepository: ByronWilliamsCPA/pp-security-master
Length of output: 537
Align the Faker target and regenerate the lockfile.
requirements-dev.txt pins faker==40.32.0, while uv.lock still resolves Faker to 40.23.0. Confirm whether 40.32.0 is the intended target and regenerate uv.lock so dependency installs use the same pinned version.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@requirements-dev.txt` at line 84, Confirm that faker 40.32.0 is the intended
development dependency target, then regenerate uv.lock so its Faker resolution
matches the faker==40.32.0 pin in requirements-dev.txt. Ensure no stale Faker
40.23.0 entry remains.
e23049b to
5b01238
Compare
5b01238 to
03e0f1b
Compare
Summary
Why
Scheduled patch update, bug fixes and security patches with no API changes.
Changes
This PR contains the following updates:
==40.28.1→==40.35.0Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Impact
Acceptance Criteria
Testing
Notes
Release Notes
joke2k/faker (faker)
v40.35.0Compare Source
bban_formatsoru_RUiban()generates valid Russian IBANs (#2416). Thanks @CedricConday.v40.34.0Compare Source
da_DKiban()generates valid Danish IBANs (#2409). Thanks @CedricConday.v40.33.2Compare Source
positive=Trueagainst a non-positivemax_valueinpydecimal(#2428). Thanks @Sreekant13.v40.33.1Compare Source
uuid1()anduuid7()reproducible under a fixed seed (#2427). Thanks @vidigoat.v40.33.0Compare Source
pt_BRvia flag (#2402). Thanks @moohbr.v40.32.0Compare Source
allowed_path_traversal_elementsoption tofile_path()(#2397). Thanks @Ayushmann13479.file_pathdepth=3 test regex. Thanks @fcurella.v40.31.0Compare Source
pt_BRiban()generates valid Brazilian IBANs (#2410). Thanks @CedricConday.v40.30.0Compare Source
nl_BEiban()(#2412). Thanks @CedricConday.v40.29.0Compare Source
es_ESiban()(#2404). Thanks @CedricConday.Configuration
📅 Schedule: (in timezone America/New_York)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate.