pyscience-projects / pyevtk

PyEVTK (Python Export VTK) exports data to binary VTK files for visualization/analysis with packages like Paraview, VisIt, and Mayavi.
Other
63 stars 15 forks source link

The official version of PyEVTK has moved #7

Closed xylar closed 5 years ago

xylar commented 5 years ago

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: https://github.com/conda-forge/pyevtk-feedstock/pull/1

renefritze commented 5 years ago

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 commented 5 years ago

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 commented 5 years ago

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 commented 5 years ago

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 commented 5 years ago

Hello:

Thanks for including me in the mailing list, for sending the fix for the MANIFEST file and for your interest in EVTK.

I was not aware about the package in conda-forge until a couple of weeks ago. I think it is a good effort because it will make easier for Anaconda users to install EVTK.

On to the other hand, I prefer to keep a separate repository in GitHub where I can commit changes without worrying to make a mess and also I can keep a copy of EVTK with the changes I required since I use it often for different purposes.

I think it should not be a problem for you to pull the changes I made to the GitHub repo and merge them into your repository if you want so. On the other hand, I am open to review and include changes (as time allows) that users send me (as I have done in the past), if I consider they improve EVTK. I have not problem with other people forking the main repository if they include the original LICENSE and copyright notice.

Cheers,

Paulo

PS: I changed the MANIFEST file in GitHub.

El jue., 14 de mar. de 2019 a la(s) 10:50, Xylar Asay-Davis ( notifications@github.com) escribió:

That plan would certainly suit me. @paulo-herrera https://github.com/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?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/pyscience-projects/pyevtk/issues/7#issuecomment-472862744, or mute the thread https://github.com/notifications/unsubscribe-auth/AuR8h5N-7kcNz_fZ2xBEp5XJHDXNGQYSks5vWlOTgaJpZM4bzAte .

xylar commented 5 years ago

@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 commented 5 years ago

@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 commented 5 years ago

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 commented 5 years ago

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 commented 5 years ago

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 commented 5 years ago

Hello,

Thanks for your replies.

I recalled Adamos contacted me some time ago to set up a package for Pypi (he also sent me some fixes). It is great you packaged EVTK so users of PyPi or conda can install it more easily. I do not have any problem with that.

I had to move from Bitbucket since I was locked out after some update of their systems. I created a repository in GitHub that I plan to use to upload changes I make to EVTK. You could pull the changes directly from that repository and only create a recipe for the installers (as I believe is done for many other open source packages), OR you can keep your own repository and pull and merge changes. Either way is fine for me as long as you include the original license and copyright (I would also appreciate if you could provide a link to the GitHub repository in your webpage or as part of the installer).

Cheers,

Paulo

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

El vie., 15 de mar. de 2019 a la(s) 02:47, Adamos Kyriakou ( notifications@github.com) escribió:

hey @xylar https://github.com/xylar @renefritze https://github.com/renefritze @paulo-herrera https://github.com/paulo-herrera. As @renefritze https://github.com/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 https://github.com/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 https://github.com/renefritze stepped in willing to contribute so much.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/pyscience-projects/pyevtk/issues/7#issuecomment-473166717, or mute the thread https://github.com/notifications/unsubscribe-auth/AuR8h6TSjY39moqHwnd7B2m4U5oPaoNhks5vWzQFgaJpZM4bzAte .

somada141 commented 5 years ago

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 commented 5 years ago

@renefritze @xylar small PR to update README: https://github.com/pyscience-projects/pyevtk/pull/11

somada141 commented 5 years ago

@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 commented 5 years ago

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 commented 5 years ago

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 commented 5 years ago

@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 commented 5 years ago

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 commented 5 years ago

Thanks Rene.

Paulo

El domingo, 17 de marzo de 2019, René Fritzenotifications@github.com escribió:

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

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/pyscience-projects/pyevtk/issues/7#issuecomment-473652393, or mute the thread https://github.com/notifications/unsubscribe-auth/AuR8h9U88bruudxYZ4sCi4ONXOGpnUEAks5vXhcpgaJpZM4bzAte .