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

version madness #49

Closed
beckermr opened this issue Aug 26, 2019 · 13 comments · Fixed by #48
Closed

version madness #49

beckermr opened this issue Aug 26, 2019 · 13 comments · Fixed by #48

Comments

@beckermr
Copy link
Member

So apparently the upstream package split out the python package (a good thing) but decided to reset the version number. So to update this feedstock for eccodes >=2.13.0, the new version would be 0.9.2. The current version of this feedstock is based on the upstream eccodes version of 2.12.*.

@conda-forge/python-eccodes How should we proceed here?

@beckermr
Copy link
Member Author

This issue blocks python 3 support w/ PRs #47 and #48

@beckermr
Copy link
Member Author

Here is one proposal. We simply update the repo to support only python 3 via pypi with the new version number. People can rely on older versions for python 2.7 and older eccodes builds.

@beckermr
Copy link
Member Author

We can eventually mark the old versions as broken sometime near the end of next year or so.

@beckermr
Copy link
Member Author

Certainly, for python 3 we could mark them as broken almost right away.

@ocefpaf
Copy link
Member

ocefpaf commented Aug 26, 2019

So apparently the upstream package split out the python package (a good thing) but decided to reset the version number

😩

So to update this feedstock for eccodes >=2.13.0, the new version would be 0.9.2. The current version of this feedstock is based on the upstream eccodes version of 2.12.*.

@conda-forge/python-eccodes How should we proceed here?

Here is one proposal. We simply update the repo to support only python 3 via pypi with the new version number. People can rely on older versions for python 2.7 and older eccodes builds.

I'm OK with that but I'm not a heavy user of eccodes. @conda-forge/python-eccodes team, what do you think?

@kmuehlbauer
Copy link
Contributor

Good question! The PyPI Package is Python3 only. So my suggestion would be to drop Python2 support for this feedstock now.

As the new build would be for ecCodes v2.13.0 we might have to mark older py3 packages as broken then.

Another thing is, that the new bindings can be compiled. @ocefpaf any idea how to incorporate this?

@beckermr
Copy link
Member Author

As the new build would be for ecCodes v2.13.0 we might have to mark older py3 packages as broken then.

This is not needed. Conda will resolve the version dependence of the individual build on ecCodes properly.

@kmuehlbauer
Copy link
Contributor

This is not needed. Conda will resolve the version dependence of the individual build on ecCodes properly.

Will $ conda install python-eccodes install the 0.9.2 version (if it's build) or the 2.12.3 which is latest?

@beckermr
Copy link
Member Author

It depends on what other packages are in the environment. if you never want the older package 2.12.3 installed, then marking the older ones as broken would do the trick as you say. However, this would have other consequences, like breaking support for users.

@kmuehlbauer
Copy link
Contributor

Ah, I see, in #48 the package is just pulled from PyPI and installed alongside the eccodes build. But that means we will build eccodes twice. In the eccodes-feedstock and here.

And, we would have a conda-forge version naming contradicting the python-eccodes PyPI version. Seems not easy to sort out properly.

@beckermr
Copy link
Member Author

beckermr commented Aug 27, 2019

I think I might have misinterpreted one of your comments. Indeed marking all python 3 builds of python-eccodes as broken and starting over is probably the best option.

The question I thought I was answering was "Will conda get confused and try and install python-eccodes 0.9.2 with eccodes 2.12.3?" The answer to this question is no as long as the python-eccodes recipe depends on the eccodes one via the meta.yaml.

I think we can avoid a double build along with compiling the package, but that will take some effort to get working.

@kmuehlbauer
Copy link
Contributor

The question I thought I was answering was "Will conda get confused and try and install python-eccodes 0.9.2 with eccodes 2.12.3?" The answer to this question is no as long as the python-eccodes recipe depends on the eccodes one via the meta.yaml.

IIUC, we can use the new version (0.9.2) in this feedstock and depend on eccodes 2.13.0 via meta.yaml and conda will take care of it. But with the consequence of dropping python2 support, right?

@beckermr
Copy link
Member Author

That is basically right. However, we can keep the old builds with python 2 support around by not marking those as broken. We just can't easily support python 3 for both eccodes 2.12.3 and eccodes 2.13.0.

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

Successfully merging a pull request may close this issue.

3 participants