Skip to content

Conversation

@hugovk
Copy link
Member

@hugovk hugovk commented Dec 6, 2025

Description

The Downloads supernav menu shows Python 3.14.0 instead of 3.14.2.

The supernav box was last updated on 9th October 2025 (when 3.14.0 was released) and hasn't updated since.

This was caused by #2793 (merged 10th October) which changed update_supernav() to support the Python install manager, but introduced a regression.

The code iterates over each operating system, looking for download files with download_button=True (let's call them "featured files") to put in the supernav.

Before, operating systems without featured files were skipped:

release_file = latest_python3.download_file_for_os(o.slug)
if not release_file:
    continue  # Skip this OS
data['python3'] = release_file

After, all operating systems are added to the list, even without featured files:

data['python3'] = latest_python3.download_file_for_os(o.slug)
if latest_pymanager:
    data['pymanager'] = latest_pymanager.download_file_for_os(o.slug)

python_files.append(data)  # Always appends, even if no featured files

But then a later new check requires every OS to have a featured file:

if not all(f['python3'] or f['pymanager'] for f in python_files):
    return  # Silently return without updating

However, Android has no featured files, so for Python 3.14.1 and 3.14.2, the function silently returns without updating the supernav box.

The fix is to restore the skip: only add an OS to python_files if it has a featured file.

Closes

@hugovk hugovk added the app/downloads Relates to the downloads app label Dec 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

app/downloads Relates to the downloads app

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug: templates/downloads/supernav.html not updating

1 participant