- Convert OCDS releases to types.Opportunity (internal/types); FetchOnce
and FetchAll now return opportunities, built from each ocid's latest
release
- Include each item's main classification as well as its additional ones
- Return ErrUnexpectedStatus for non-200 responses and
ErrRateLimitExceeded for a repeated 429; close discarded bodies
- Stop fetchAll on a repeated next link and close each page's body once
read rather than deferring in the loop
- Default a zero Since to 24 hours ago
- Merge date repair and releaseIDs into api.go
- Filter --planning/--opportunities/--awards on each procedure's current
stage, using OCDS release tags; --opportunities previously matched a
nonexistent "opportunity" tag and returned nothing
- Reject conflicting filters before fetching (cobra flag group)