Skip to content
Open
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions downloads/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,13 @@ def is_version_at_least_3_5(self):
def is_version_at_least_3_9(self):
return self.is_version_at_least((3, 9))

def clean(self):
super().clean()
if not re.match(r'^Python\s[\d.]+$', self.name):
raise ValidationError({
"name": "Release name must be in the format 'Python X.Y.Z' (e.g., 'Python 3.14.0')"
})


def update_supernav():
latest_python3 = Release.objects.latest_python3()
Expand Down