python / python/release-tools

Enable a `latest` symlink on the ftp index

Open
#145 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
61
Forks
48
Avg merge
1h 22m
Merged PRs (30d)
4

Description

Hello all 👋
I recently talked with a friend of mine (@sdelquin) and he has a specific use-case for the ftp directory on his Python seminars and usually the students are requested to download "the latest Python version" from the command-line, from which he developed a little ad-hoc script to get such function:

PYTHON_LATEST=`curl -s https://www.python.org/downloads/ | gunzip -c | grep latest | perl -nle 'print $1 if /(\d+\.\d+\.\d+)/'`
PYTHON_DOWNLOAD=https://www.python.org/ftp/python/$PYTHON_LATEST/Python-$PYTHON_LATEST.tgz

This use-case could be improved if we have a latest symlink at https://www.python.org/ftp/python/ always pointing to the latest stable release.

I'm not certain how to implement this, because I'm not aware of how the ftp index is generated, but I have the feeling it shouldn't be so complicated, considering that during the release process, the release managers can select a checkbox to say "this is the latest release".

In my experience this is nothing new, and in some other indexes it's common to find a latest symlink, like this example

Just for the record, I already talked about this with @hugovk and @ewdurbin but I'm opening an issue so the discussion can stay in one place :)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how the FTP index is generated and how the release process records the latest stable release; the payload does not name specific files or tests. Done means the Python FTP index exposes a latest symlink that points to the latest stable release and remains correct after releases.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
release
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.