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

Make releases for various Python versions #48

Closed
maresb opened this issue Sep 8, 2020 · 11 comments · Fixed by #50
Closed

Make releases for various Python versions #48

maresb opened this issue Sep 8, 2020 · 11 comments · Fixed by #50

Comments

@maresb
Copy link
Contributor

maresb commented Sep 8, 2020

Are there plans on the horizon to make a distribution which supports Python 3.8? (Miniconda is currently on 3.8.) Thanks!

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Sep 8, 2020

I guess we could migrate. Want to make the PR?

@maresb
Copy link
Contributor Author

maresb commented Sep 8, 2020

Well in principle yes, but for starters I don't understand the naming convention.

{% if name == "Miniforge3" %}
  - python 3.7.*
{% elif name == "Miniforge-pypy3" %}
  - python 3.6.* *_pypy
{% endif %}

What would I call 3.8?

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Sep 8, 2020

Miniforge3 is python 3.8 ;)

the other is pypy, which only has 3.6

@maresb maresb changed the title Support Python 3.8 Make releases for various Python versions Sep 9, 2020
@maresb
Copy link
Contributor Author

maresb commented Sep 9, 2020

I realize now that what I actually wanted was PYTHON_VERSION as a build parameter, and to build corresponding assets for various Python versions in the releases.

My end goal would be to make Docker images (#20 (comment)) which could be tagged, for example with python3.8. In the CI/CD context, it's helpful to have various Python versions available for testing.

Since the linked Dockerfile installs from the releases here, setting up the appropriate releases according to Python version would be the first step. (Note that I haven't run this plan by the people in the above thread, but I think such a feature would independently be sensible here.)

Do you think this would make sense? If you agree, I could work on a PR. (Seems relatively straightforward.)

Am I correct in assuming that the name of Miniforge3 was chosen to mimic the Anaconda2 / Anaconda3 / Miniconda2 / Miniconda3 convention? (With Python2 now deprecated, it seems like it would be better to have named it simply Miniforge? Perhaps it's not too late to switch?)

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Sep 9, 2020

I see.

I'm personally not a fan. Miniconda only offers you 3.8, and 2.7.

The reason is that miniforge is already a "niche" product. You, setting up your CIs and all, are perfectly capable of creating different environments based on your needs.

I'm not a big fan of encouraging the use of the "base" environment.

@maresb
Copy link
Contributor Author

maresb commented Sep 9, 2020

Actually Miniconda3 offers both 3.7 and 3.8, although it's not well-advertised.

https://repo.anaconda.com/miniconda/

@maresb
Copy link
Contributor Author

maresb commented Sep 9, 2020

I'm a bit confused by your comment that I'm perfectly capable of setting up environments. I wonder if I'm completely missing the point of Miniforge? :) Why use Miniforge in favor of Miniconda?

Is it primarily because you want to support architectures?

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Sep 9, 2020

Good searching.

Yes, primarily to provide an installer for different architechtures.

I could be swayed to doing what miniconda is doing. But for them, they are likely doing it due to the business case, not the practical case.

If you make the PR that enables both to get built, with a naming convention similar to Miniconda, then I will support it.

Please be sure to update the documentation (README) so that we can keep track of the builds.

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Sep 9, 2020

I fully anticipate the majority of users will use miniconda as:

conda install update --all
conda install mamba
conda create --name the_environment_i_care_about
conda activate the_environment_i_care_about

and move on.

Personally, i don't like the fact that the "base" environment is where conda installs things. It seems rather anti-user to me, and pro-developer of conda. But such is life.

@maresb
Copy link
Contributor Author

maresb commented Sep 9, 2020

Yes, primarily to provide an installer for different architechtures.

I see! Then I did misunderstand the point. Thanks so much for your patience with me, and for sharing your expected setup commands. (Although I've been using conda quite extensively over the past few years, I feel like I'm out-of-the-loop and understand it very poorly.)

Mamba is new to me. I just read their Medium post, and it looks very interesting! I'm going to play around with that before trying anything more with Miniforge.

@maresb maresb closed this as completed Sep 9, 2020
@hmaarrfk
Copy link
Contributor

hmaarrfk commented Sep 9, 2020

The point is really to make conda-forge more user friendly.

So if python version specific installers are useful, then we can maybe include them.

That said, they are rather minimal value, since:

  1. conda-forge moves so quickly, environments often become stale, and need a rebuild, rather than an update.
  2. Given 1., I seldom recomment people install anything in base, unless they want to reinstall conda every time (which is dooable).

@maresb maresb mentioned this issue Sep 15, 2020
10 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging a pull request may close this issue.

2 participants