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

The official version of PyEVTK has moved #7

Closed
xylar opened this issue Mar 14, 2019 · 19 comments
Closed

The official version of PyEVTK has moved #7

xylar opened this issue Mar 14, 2019 · 19 comments

Comments

@xylar
Copy link
Collaborator

xylar commented Mar 14, 2019

I wanted to bring to your attention that @paulo-herrera has moved the official site for PyEVTK to GitHub: https://github.com/paulo-herrera/PyEVTK

Given this move, it might be confusing to users if there is an official GitHub site and also this mirror site with modifications, particularly if this site is used for pypi and conda-forge feedstocks. I suggest you consider making pull requests with whatever changes you would like to make to the official site instead and maybe consider archiving this repo. Perhaps @paulo-herrera would be willing to add you as collaborators if there are significant contributions to be made, but that's obviously up to him.

I discuss this further in my proposed update to the conda-forge feedstock here:
conda-forge/pyevtk-feedstock#1

@renefritze
Copy link
Contributor

I feel like it would have been much easier if @paulo-herrera contacted us here before doing anything. There's no reason he couldn't have taken over this repo if he wants to further develop the library after his absence. At least I think @somada141 will agree. That would've saved you @xylar work on the feedstock too. I also feel it would have been nice if you contacted us about that beforehand.
We've also already published v1.1.1 to pypi too. The repo at https://github.com/paulo-herrera/PyEVTK also lost all of it's history, whereas here that's all preserved. It has also not incorporated the refactoring we did here and therefore cannot be used as a drop-in replacement.

@xylar
Copy link
Collaborator Author

xylar commented Mar 14, 2019

I cannot speak for @paulo-herrera's choice to migrate to GitHub without the repo history from BitBucket. But I can say that for me it has been extremely confusing over the past several years to know whose version of PyEVTK was the "official" one and whether the refactor that has happened here (and on pypi) was "blessed" or just temporary. I agree, I should have got in touch. The choice to rename the evtk package to pyevtk here without going back to the original BitBucket repo, followed by a modest amount of further development on BitBucket made the process very confusing. It was not clear to me if @paulo-herrera was good with the various changes that happened here and on pypi or not.

In any case, it would be good to figure out a way that pyevtk can become a community collaborative effort going forward so that there can be bug fixes and if there are changes to the API, that there is full buy-in. @renefritze, @somada141 and @paulo-herrera, could you get in touch with each other and please decide how this should be done? I am fine with whatever all of you come up with as a solution but there needs to be clarity on who "owns" PyEVTK, where it lives, which is the "official" v1.1.1, etc.

@renefritze
Copy link
Contributor

I for one really do not want to "own" PyEVTK. @somada141 and I got this going here because we wanted to use the library and needed fixes for python 3 and a release on pypi and didn't really get anywhere after reaching out.

Going forward I think it would be easiest to

  1. port the three commits that happened in bitbucket since our last common one over onto the current codebase: https://bitbucket.org/pauloh/pyevtk/commits/c3c076129dbc6a3bebc801c8929baf9f1d1c74ca
    https://bitbucket.org/pauloh/pyevtk/commits/4e759fe42afa605415cbe2e5127112efa7571213 https://bitbucket.org/pauloh/pyevtk/commits/5d22e9cd10a0f67ae4ab3fa6c8cdcc41c7d694a3
  2. give @paulo-herrera ownership for the repo/org here
  3. add him to the pypi project
  4. ship a mini module evtk that imports everything from under pyevtk and emits a DeprecationWarning
  5. make 1.2 release

That would require the least amount of work overall I think, make the library usable for users old and new, and with a github organization behind the repo it's also much easier to handle collaboration.

@xylar
Copy link
Collaborator Author

xylar commented Mar 14, 2019

That plan would certainly suit me. @paulo-herrera, would you be interested in taking over ownership of this repo in lieu of the new one you just created? I have the impression you aren't that interested in or don't have a lot of time for maintenance of PyEVTK. In view of that, what do you see as the way forward here?

@paulo-herrera
Copy link
Contributor

paulo-herrera commented Mar 14, 2019 via email

@xylar
Copy link
Collaborator Author

xylar commented Mar 14, 2019

@paulo-herrera, thank you for the response. But it will continue to be very confusing if there are 2 separately maintained and differently named (evtk vs. pyevtk) packages out there. It sounds like your suggestion is that we continue this way without any attempt to consolidate to a single repo and code base.

That's not a great solution as far as I'm concerned. It will be hard to know which is the "official" tag for a given version of PyEVTK if there are 2 different repos with two different conventions about releases. These repos are not forks of one another so the divergence is more severe than it would be if they were.

I feel like it's not up to me as an outsider to suggest what the solution is here but it seems like a bad situation that there are these 2 divergent efforts without a plan to merge them back together.

@xylar
Copy link
Collaborator Author

xylar commented Mar 14, 2019

@renefritze, could you explain a bit more the sequence of events that led to the divergence between this repo and @paulo-herrera's original BitBucket repo? For example, why was the decision made to refactorize from evtk to pyevtk? Was there an attempt to push these changes back to BitBucket that wasn't accepted? How did you and @somada141 decide on which commit corresponded to v1.1.1 (and earlier versions)?

@somada141
Copy link
Collaborator

hey @xylar @renefritze @paulo-herrera. As @renefritze said I've no particular interest in owning this project. The original motivation was merely to make it available in PyPI and later on to improve its compatibility. I believe that at the time an evtk package had already existed on PyPI so I had to rename it in order to release it. Now its been years but I believe that I contacted Pauloh about releasing the package at the time as I wanted to use it in other projects but got no response hence the above.

@paulo-herrera if you want me to archive this repo and take my package off PyPI I'd happily oblige but only if you're willing to replace and maintain it as I'd hate to break people's projects by ripping out a dependency.

I'm happy to accommodate any solution here but I don't have much time to deal with this project myself hence I was very happy when @renefritze stepped in willing to contribute so much.

@renefritze
Copy link
Contributor

hey @xylar @renefritze @paulo-herrera. As @renefritze said I've no particular interest in owning this project. The original motivation was merely to make it available in PyPI and later on to improve its compatibility. I believe that at the time an evtk package had already existed on PyPI so I had to rename it in order to release it. Now its been years but I believe that I contacted Pauloh about releasing the package at the time as I wanted to use it in other projects but got no response hence the above.

I faintly remember having to use a git+bitbucket url for some time in my project's requirements, so maybe the was no PyPi release? There isn't one now at least with an "evtk" name.

@paulo-herrera if you want me to archive this repo and take my package off PyPI I'd happily oblige but only if you're willing to replace and maintain it as I'd hate to break people's projects by ripping out a dependency.

I too want to stress that I feel the outcome of any action we collectively take should be that current downstream users of the pyevtk package can continue to use it. I'm very open as for the "how" of it though as I said. See also #10

@xylar
Copy link
Collaborator Author

xylar commented Mar 15, 2019

Thank you both for the responses. It doesn't sounds like @paulo-herrera has the interest (and perhaps also not the expertise) to maintain either the PyPI or the conda-forge packages. Given that this repo is now and has always been (to the best of my knowledge) the feed to PyPI and has always been called pyevtk, I think @renefritze's 5 step solution above it the best one. My project has used both pyevtk and evtk as the name of the package at various times, so whichever is good for me.

I would be happy to also help maintain this repo if that is of interest. In fact, I'm happy to make the pull request with the 3 missing commits, perhaps sometime tomorrow. I can also revise my suggested changes to the conda-forge feedstock.

I think we could add some clarifying statement toward the top of the README.md here. It could state that this is the official repo for maintaining compatibility with PyPI and conda-forge, but that it attempts to keep in sync with @paulo-herrera's repo and give the new GitHub URL. My sense is that @paulo-herrera has given his blessing to that approach (@paulo-herrera, please correct us if that's wrong) and that there isn't a clear alternative, given his time and interests.

@renefritze and @somada141, please let me know if that sounds okay to you. Sorry for my role in making this more complicated than it already was.

@paulo-herrera
Copy link
Contributor

paulo-herrera commented Mar 15, 2019 via email

@somada141
Copy link
Collaborator

Hi @xylar you're more than welcome to contribute to the project. I've added you with write-access.

Lets update the README adding the GitHub URL to the new repo and remove that blurb about PyPI refusing to display me as merely the maintainer cause PyPI fixed that bug a while back.

@paulo-herrera thanks for giving us permission to proceed as such. We'll try and keep the package in-sync with your repo.

@somada141
Copy link
Collaborator

@renefritze @xylar small PR to update README: #11

@somada141
Copy link
Collaborator

@paulo-herrera the original license is part of this repo and all PyPI releases but let us know if you'd like us to make it more prevalent by sticking it into the README or something. Also, if you will, have a look at the README PR (see above) and let us know if you'd like us to change it in some other way.

@xylar
Copy link
Collaborator Author

xylar commented Mar 15, 2019

Okay, I think we have a plan. The problem remains that it will be hard to keep package versions synchronized with @paulo-herrera's repository unless that repo has specific tags for specific version numbers. @paulo-herrera, you may get requests from us from time to time to make a tag so we can make the corresponding update to the pypi and conda-forge packages. You may also get pull requests for changes that aren't just related to packaging.

@somada141, thank you for adding me as a maintainer. @paulo-herrera, thank you again for writing the package. @renefritze thanks for the work you have done to get the package ready for conda-forge and keep it updated on pypi.

@xylar
Copy link
Collaborator Author

xylar commented Mar 15, 2019

Once #10 and #11 are in, I'll make another PR with the 3 missing commits from the old BitBucket repo. I have it ready to go but it will need to be rebased because of the changes to README.md.

@xylar
Copy link
Collaborator Author

xylar commented Mar 16, 2019

@paulo-herrera wrote:

I am curious if you have some statistics about how many people use EVTK.

I'm not aware of any stats from PyPI.

From conda-forge, the package has been downloaded 800 times since it became available a month ago. Some of that would reflect automatic downloads related to continuous integration but that's still not too bad!
https://anaconda.org/conda-forge/pyevtk

The version I have up on my project's channel has been downloaded 117 times:
https://anaconda.org/e3sm/evtk

@renefritze
Copy link
Contributor

I'm not aware of any stats from PyPI.

You can't get stats from them directly anymore. One way apparently is through Google's BigQuery, yielding this:

num_downloads month
1599 201903
3084 201902
2701 201901
2085 201812
1385 201811
1396 201810
1108 201809
1169 201808
361 201807
304 201806
421 201805
708 201804
521 201803

@paulo-herrera
Copy link
Contributor

paulo-herrera commented Mar 17, 2019 via email

@xylar xylar closed this as completed Mar 18, 2019
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

4 participants