Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document how to install the correct Python version for development #201

Open
pietervdvn opened this issue Jun 23, 2022 · 2 comments
Open

Comments

@pietervdvn
Copy link

The script first-setup uses .python-version which is very strict. Not many people will have precisely this version.

I'd propose to change 3.9.2 into 3.9 or even 3 as to allow an easier setup.

@redfast00
Copy link
Member

Python is not forwards-compatible or semantically versioned (source: https://stackoverflow.com/a/60422284/5431090, this is a great read), so if a developer is on a slightly different version of Python, code might work on their machine, but not in production. To avoid this, we pin the version of all dependencies (so both the language itself and the libraries we use).

I do understand that most people won't have that exact version of Python on their machine (and some might even break their OS trying to remove Python and then have to install NixOS 😉 ). I manage my programming runtimes with asdf and find it to be very easy to use. It has support for a ton of languages and really removes the headache of managing versions of runtimes, so I recommend giving it a try.

@pietervdvn
Copy link
Author

Oh, didn't expect python to be non-semantically versioned...

In that case, it might be good to document how to setup the specific python version in the README. I'm the kind of person who doesn't like to tamper with these things, at it'll make onboarding easier.

PS: NixOS is amazing ;)

@redfast00 redfast00 changed the title Broaden allowed python-version Document how to install the correct Python version for development Jun 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants