ipython / ipython_genutils

Vestigial IPython utilities: DO NOT USE
Other
11 stars 22 forks source link

Remove dependency on nose (port to pytest) #17

Open mcepl opened 3 years ago

mcepl commented 3 years ago

I am a maintainer of Python packages in openSUSE, and I am on my crusade of eliminating nose1 from our distribution. When I look at its repository on https://github.com/nose-devs/nose, the last release 1.3.7 was on 2 Jun 2015, and even the last commit on the master branch was on 4 Mar 2016.

This patch eliminates dependency on nose, which has been unnecessary for a long time. Resulting test suite depends on pytest, which is currently perfectly developed and maintained.

Carreau commented 3 years ago

Many thanks for working on this. I'll try to integrate this and might do a release. Thought it may take some time. Another possibility would be to finish removing usage of this package from the dependees.

mcepl commented 3 years ago

I work for SUSE, which means we are working on hundreds of packages, so I cannot concentrate on one particular package for too long … my current enemy is nose, and so I eliminate it. Concerning dependees, given this whole package has been already deprecated, it seems weird how stubbornly it refuses to die.

Carreau commented 3 years ago

Concerning dependees, given this whole package has been already deprecated, it seems weird how stubbornly it refuses to die.

Sorry, this was not a comment for you to do this; I am a maintainer of (all?) the direct dependees that use ipython_genutils, and more a comment that I might go the route of removing ipython_genutils as a dependencies from those (so you can drop ipython_genutils from your list of packages) instead of publishing a new release if ipython_genutils. I might also do both depending on the timeline.

Updating the dependees might also be a better route as some of them still require nose1 IIRC (which is one of the things i've also been getting rid of progressively).

To be clearer, I have commit rights to remove and publish new version of the following packages to not use ipython_genutils:

ipython ipykernel ipyparallel ipython_genutils jupyter_client jupyter_console jupyter_core jupyter_server nbconvert nbformat notebook qtconsole traitlets

A few of those also directly use nose, and I'll try to remove nose usage as well, but will take time.

mcepl commented 3 years ago

Looking through openSUSE packages and it seems to me that some packages you mentioned really don’t require nose:

Carreau commented 3 years ago

Yeah, my concern is that some of the test are skipped on pytest. I'll see what I can do to help with this migration. Feel free to drop links to upstream issue I'm happy to mention there when the upstream patches have been merged or releases have been done.

mcepl commented 3 years ago

@Carreau https://github.com/ipython/ipython/pull/12840

Carreau commented 3 years ago

https://github.com/jupyter/jupyter_client/pull/622 might also help to remove genutils as a dependencies of Jupyter_client.

opoplawski commented 2 years ago

Any more progress here? We're probably not going to introduce nose into EPEL9. Still a number of packages using ipython_genutils.

mcepl commented 2 years ago

Any more progress here? We're probably not going to introduce nose into EPEL9. Still a number of packages using ipython_genutils.

https://build.opensuse.org/package/view_file/devel:languages:python:jupyter/python-ipython_genutils/denose.patch?expand=1 works still just fine for us.

Our ipython packages don’t need nose anymore.