GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Short term index cache · Issue #72 · python/pymanager

Short term index cache #72

New issue
Copy link
New issue
Copy link
Open
#111
Open
Short term index cache#72
#111
Copy link
Assignees
zooba
Labels
enhancementNew feature or requestNew feature or request

Description

@zooba
zooba
opened on May 6, 2025
Issue body actions

We should probably cache the index locally for a short period of time (e.g. 5 minutes), to more efficiently handle rapid queries.

The period should be short enough to not really worry about other invalidation mechanisms - we can just skip the network traffic entirely. Passing -f should skip it, of course.

Activity

  1. zooba
    added
    enhancementNew feature or requestNew feature or request
    on May 6, 2025
  2. AA-Turner commented on May 6, 2025

    @AA-Turner
    AA-Turner
    on May 6, 2025
    Member
    More actions

    If we add a cache we could reasonably consider making it longer than 5 minutes, as we make releases on the order of months. I'm maybe biased though by the constant 40MB conda index downloads!

    A

  3. zooba commented on May 7, 2025

    @zooba
    zooba
    on May 7, 2025
    MemberAuthor
    More actions

    The thing about a longer cache is then we need to do network calls to check whether to invalidate it. For a very short one, we're really just trying to catch a flurry of calls (e.g. a user doing py list --online ... a few times then a py install), and so we can get away with only looking at the local timestamp.

  4. zooba commented on May 7, 2025

    @zooba
    zooba
    on May 7, 2025
    MemberAuthor
    More actions

    I'm maybe biased though by the constant 40MB conda index downloads!

    And yeah, I'm all too familiar with these. It's why I set up the index chaining system like I did. I just repartitioned (#5), so now we have:

    Wrote index-windows.json (36 entries, 27461 bytes)
    Wrote index-windows-recent.json (225 entries, 170621 bytes)
    Wrote index-windows-legacy.json (160 entries, 254675 bytes)

    Most people just doing installs/updates will only get the first one (27KB). You only see the rest if you ask for a specific version that isn't the latest. New releases will always go into the first, so eventually it'll bloat, but we can repartition whenever we want to balance them again.

  5. zooba
    self-assigned this
    on May 16, 2025
  6. zooba
    added a commit that references this issue on May 16, 2025

    Adds 60 second disk cache for unauthenticated indexes.

    This issue will close once commit c835a4b is merged into the 'main' branch.
    c835a4b
  7. zooba
    added a commit that references this issue on Oct 17, 2025

    Merge branch 'main' into pythongh-72

    4c24176
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

  • @zooba
    zooba

Labels

enhancementNew feature or requestNew feature or request

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

    You are visitor 01402503 — GeezerVison does not store the pages you look up.
    Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.