asf-tooling commented on issue #1133:
URL: 
https://github.com/apache/tooling-trusted-releases/issues/1133#issuecomment-4407490544

   <!-- gofannon-issue-triage-bot v2 -->
   
   **Automated triage** — analyzed at `main@751c2146`
   
   **Type:** `refactor`  •  **Classification:** `actionable`  •  
**Confidence:** `low`
   **Application domain(s):** `sbom_management`, `automated_checks`
   
   ### Summary
   The issue reports that `ldap3==2.10.2rc3` (a release candidate) is used as a 
production dependency in `pip-audit.requirements` line 148, without documented 
justification. The concern is that RC versions may have unclear security patch 
processes. The architecture confirms LDAP is a core subsystem (`atr/ldap.py`, 
`atr/principal.py`, `atr/cache.py`), so `ldap3` is indeed a meaningful 
dependency. However, no source files were provided for review, so I cannot 
verify the current state of the dependency pinning or whether this has already 
been addressed.
   
   ### Where new code would go
   - `pip-audit.requirements` — line 148 (per issue)
     The issue claims ldap3==2.10.2rc3 is pinned here; this is where the 
version would be changed to stable or kept with documentation
   - `DEPENDENCIES.md` — new file
     If the RC is kept, the issue proposes documenting justification in a new 
DEPENDENCIES.md file
   - `scripts/check_prerelease_deps.py` — new file
     Optional automated pre-release detection script proposed in Option C
   
   ### Proposed approach
   Since no source files were provided for inspection, I cannot verify the 
current state of `pip-audit.requirements` or determine why `ldap3==2.10.2rc3` 
was chosen over the stable `2.9.1`. The most pragmatic approach would be Option 
A (use stable version) if testing confirms no regressions, since the stable 
branch receives predictable security patches. If the RC is required for 
specific functionality (e.g., async support, bug fixes not in 2.9.x), then 
Option B (document justification) should be implemented.
   
   A maintainer should first check whether `atr/ldap.py` uses any features 
exclusive to ldap3 2.10.x (such as asyncio support or specific connection pool 
improvements). If no 2.10-specific features are used, downgrade to stable. If 
they are, document the dependency in a `DEPENDENCIES.md` or inline comment 
explaining the rationale.
   
   ### Open questions
   - What specific features from ldap3 2.10.x (if any) does atr/ldap.py rely on 
that are not available in stable 2.9.1?
   - Is `pip-audit.requirements` a separate file from the main dependency 
specification (e.g., pyproject.toml), and does changing it affect the actual 
deployed dependency?
   - Has ldap3 2.10.x been released as stable since this issue was filed? (The 
RC was published some time ago and upstream release status is unclear)
   - Does the project already have a dependency policy documented elsewhere 
that covers pre-release usage?
   
   ### Related issues
   This issue appears related to: #1132.
   
   _Both concern dependency management policies and security requirements, with 
#1132 about undocumented policy enforcement and #1133 about pre-release 
dependencies in production_
   
   ---
   *Draft from a triage agent. A human reviewer should validate before merging 
any change. The agent did not run tests or verify diffs apply.*


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to