-
Notifications
You must be signed in to change notification settings - Fork 93
Open
Description
Checklist
- I added a descriptive title
- I searched open reports and couldn't find a duplicate
What happened?
rattler
caches the repodata.json
for the solve operation. Whether or not the repodata.json
is fetched again relies on three parameters from the HTTP Request headers. Those three are,
- etag
- cache_control
- last_modified
Out of these three headers the cache_control
functionality is not working as expected. I observed this behavior while trying to run the solve operation. Here is the sequence of events,
- I run the solve process and save the lockfile
- I pushed a new package to my private conda channel, let's call it packageA
- I ran the solve again and save the lockfile
Rattler
still uses the old version of the package. It remains the same in lockfile1 vs lockfile2
The HTTP Response received from the private conda channel contains the field cache_control
with maxAge = 30s
. However, rattler is still used the cache version of repodata.json to run the solve. This behavior is unexpected and needs to be updated.
Additional Context
The HTTP response received from the private conda repository
$ curl -I https://xxx/:<REDACTED_TOKEN>@conda.registry.XXX/linux-64/repodata.json
HTTP/1.1 200 Connection established
HTTP/2 200
content-type: application/json
content-length: 112290
date: Fri, <REDACTED> May <REDACTED>
allow: GET, HEAD, OPTIONS
cache-control: max-age=30, must-revalidate
x-ratelimit-interval: 0
x-ratelimit-limit: 1512000
x-ratelimit-remaining: 1511999
x-ratelimit-reset: 1746212526
referrer-policy: same-origin
cross-origin-opener-policy: same-origin
server: <REDACTED>
x-frame-options: DENY
x-content-type-options: nosniff
x-xss-protection: 0
vary: Accept-Encoding,Cookie
x-cache: <REDACTED>
x-amz-cf-pop: <REDACTED>
alt-svc: h3=":443"; ma=86400
x-amz-cf-id: <REDACTED>
Metadata
Metadata
Assignees
Labels
No labels