Skip to content

feat(uploads): wrap clearing-progress and licenses/histogram endpoints#197

Open
Valyrian-Code wants to merge 1 commit into
fossology:mainfrom
Valyrian-Code:feat/upload-clearing-histogram
Open

feat(uploads): wrap clearing-progress and licenses/histogram endpoints#197
Valyrian-Code wants to merge 1 commit into
fossology:mainfrom
Valyrian-Code:feat/upload-clearing-histogram

Conversation

@Valyrian-Code

Copy link
Copy Markdown
Contributor

Refs #52.

Adds two read-only upload analysis getters:

  • clearing_progress()GET /uploads/{id}/clearing-progress — returns a ClearingProgress (totalFilesOfInterest / totalFilesCleared)
  • license_histogram()GET /uploads/{id}/licenses/histogram — returns a list[LicenseHistogram] (id / name / scannerCount / concludedCount), with an optional agentId filter

Adds the ClearingProgress and LicenseHistogram models to obj.py, following the existing from_json convention. Both methods raise AuthorizationError on HTTP 403, consistent with the other uploads endpoints.

API details

Verified against Fossology 4.4.0 (API 1.6.1) running in a container.

Tests

All 8 pass live: happy paths, mocked 403/404/500 error paths, and a payload assertion exercising histogram parsing and the agentId query param.

ruff and mypy pass.

Refs fossology#52.

Adds two read-only upload analysis getters:

- clearing_progress() -> GET /uploads/{id}/clearing-progress, returning a
  ClearingProgress (totalFilesOfInterest / totalFilesCleared)
- license_histogram() -> GET /uploads/{id}/licenses/histogram, returning a
  list[LicenseHistogram] (id / name / scannerCount / concludedCount), with an
  optional agentId filter

Adds the ClearingProgress and LicenseHistogram models to obj.py following the
existing from_json convention. Both methods raise AuthorizationError on HTTP
403, consistent with the other uploads endpoints.

Verified against Fossology 4.4.0 (API 1.6.1) running in a container: all 8
tests pass (live happy paths, mocked 403/404/500 error paths, and a payload
assertion exercising histogram parsing and the agentId query param).

Signed-off-by: RAJVEER42 <irajveer.bishnoi2310@gmail.com>
Copilot AI review requested due to automatic review settings July 1, 2026 17:17

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

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.

2 participants