# PEP 625: File name of a Source Distribution

**URL:** <https://discuss.python.org/t/pep-625-file-name-of-a-source-distribution/4686>\
**Category:** Packaging\
**Created:** [July 8, 2020, 8:19am UTC](https://discuss.python.org/t/pep-625-file-name-of-a-source-distribution/4686 "2020-07-08T08:19:27Z")\
**Posts on this page:** 1\
**Showing post:** 92

<div class="post-metadata">

**Author:** ![uranusjr](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/uranusjr/32/103_2.png) [@uranusjr](https://discuss.python.org/u/uranusjr)\
**Post date:** [August 9, 2020, 9:48am UTC](https://discuss.python.org/t/pep-625-file-name-of-a-source-distribution/4686/92 "2020-08-09T09:48:27Z")

</div>

> [@steve.dower](#):
>
> > [@uranusjr](#):
> >
> > I hope this is the case, but may have missed that. What were the better ideas we came up on this, exactly?
> 
> It was a hypothetical future, the point at which we might want to consider switching the extension.

Are you saying that there’s a chance we _shouldn’t_ change the extension when introducing the new format? If so, what’s the scenario? This would need to something be better than “I don’t know since we haven’t designed that yet, but it might”. It is impossible to argue against speculation, and it is the speculating side’s responsibility to prove it, not the receiving end of it.

The proof also would be very needed for the whole sdist discussion; otherwise it will always run in circles: every partial design is shut down because we may want it done otherwise if everything is fully designed, without any indication of what that full design actually is. This is frustrating since the comment is always so easily made without any responsibility to prove it true, while the the other side has no way to object.

> [@steve.dower](#):
>
> It adds a huge amount of churn though. That added value doesn’t seem worth it, but maybe I’ve just never encountered the problem among all the teams at work that I support.

Assuming we will have a new extension when the sdist format is done, all churn required now will still be required. Unless you think a new extension would be a bad idea (again, proof required), the work relating to it is unavoidable, and does not change whether we do it now or later.

* * *

> [@pradyunsg](#):
>
> I think we should be writing a “source distributions 1.0” specification such that the _current_ behaviors of pip / setuptools / twine / warehouse etc are standardized as (almost?) fully compliant to it. All the other changes we want to make can happen in a 1.1 or 2.0 spec.

This is the current specification in its full:

- The file name is the `{name}-{version}.{ext}`.
  - `{name}` may or may not be normalised.
  - `{version}` may or may not be normalised. It may or may not be compliant to PEP 440.
  - `{ext}` is either `tar.gz` or `zip`.

- It is an archive. There are files in it.

Honestly I think PEP 517’s [Source distribution](https://www.python.org/dev/peps/pep-0517/#source-distributions) section is enough as a specification of the current situation.

---

_[View the full topic](https://discuss.python.org/t/pep-625-file-name-of-a-source-distribution/4686)._
