Weekly reports on scikit-image development (2024)

This is our 2024’s calendar of community management. scikit-image maintainers take on a rotating duty to take a first look at all contributions (PRs and issues) from the community, label them and ping relevant reviewers. We also summarize the week’s development activity here. You can follow updates by subscribing to the RSS feed of the topic.

Scripts for generating the reports are available in this repository. If you have feedback on a report or specific item, please don’t use this topic and comment on the appropriate issue or PR (or create a new topic on GitHub or here).

For 2024, let’s try coordinating community duty in Re-start community desk.


Note: We had this practice before (see 2022's calendar of community management · Issue #6165 · scikit-image/scikit-image · GitHub) but paused it for some time. I decided to move it over from GitHub so we don’t pollute our issue and PR history with references. I think this discussion forum is also a more fitting place in general.

2 Likes

Jul 29 to Aug 05, 2024 (week 31)

While this week seemed to be on the quieter side, there were still a few things getting done or discussed.

CI testing for the new free-threaded Python 3.13 was added (#7463) and a follow-up WIP PR seeks to upload nightlies (#7481).

It was discussed, whether we should drop instructions for setting up the development environment with conda-forge (#7480).

A part of our CI has been failing due to a sphinx warning for some time now. I’m trying to address it in now #7486.

New pull requests

:open_book: #7481 Add CI to release nightly free-threaded wheels
:closed_book: #7482 FIX Use python3 in Meson version script shebang
:closed_book: #7480 Recommend only venv-based dev environment (drop conda)
:closed_book: #7483 Fixup conda development installation instructions
:open_book: #7486 Address autosummary.import_cycle warning
:open_book: #7487 Remove deprecated plot_matches from module and gallery

Updated pull requests (state unchanged)

:open_book: #7309 Create new 3D bioimaging example.
:open_book: #7477 Improved the documentation of the restoration.richardson_lucy deconvolution function

Merged pull requests

:closed_book: #7463 Add CI to test scikit-image against free-threaded Python 3.13
:closed_book: #7482 FIX Use python3 in Meson version script shebang
:closed_book: #7483 Fixup conda development installation instructions
:closed_book: #7469 Prevent skimage.morphology.thin from modifying input array

Closed pull requests (not merged)

:closed_book: #7480 Recommend only venv-based dev environment (drop conda)

New issues

:open_book: #7485 autosummary.import_cycle warning breaks doc build on Windows CI
:open_book: #7484 Backend QtAgg is interactive backend. Turning interactive mode on.

Updated issues (state unchanged)

:open_book: #7464 Tracker: free-threaded Python support
:open_book: #7478 Setting up conda environment for development of skimage throws a package not found error

Closed issues

:closed_book: #7457 morphology.thin change the original image from version 0.23

4 Likes

Aug 05 to Aug 12, 2024 (week 32)

This week we finally, after some unresolved issues with Dask 2024.8.0 (#7491), got our CI to turn green again. :crossed_fingers: The other CI issue that was taking some time to resolve (#7485) was also due to upstream and is also only partially resolved.

I also took some time to dig through our skimage2 proposed changes and update a few things. There are quite a few items that don’t have to be done in context of skimage2, like renaming img_as_* to rescale_to_* (#6318), I think.

scikit-image is having its own sprint in the wake of the upcoming EuroSciPy conference. We’ve started preparing an agenda which we will publish once it’s more fleshed out.

Shoutout to a huge ongoing cleanup to our skeletonize module and related testing suite (#7459).

New pull requests

:open_book: #7488 Added option to not normalize the output from the HOG function
:closed_book: #7490 Improve robustness of _dynamic_max_trials used for ransac
:open_book: #7487 Remove deprecated plot_matches from module and gallery
:closed_book: #7486 Address autosummary.import_cycle warning
:open_book: #7492 Uncomment currentmodule directive again
:closed_book: #7493 Temporarily exclude Dask 2024.8.0 to fix CI

Merged pull requests

:closed_book: #7486 Address autosummary.import_cycle warning
:closed_book: #7493 Temporarily exclude Dask 2024.8.0 to fix CI

Closed unmerged pull requests

:closed_book: #7490 Improve robustness of _dynamic_max_trials used for ransac

Other active pull requests

:closed_book: #7469 Prevent skimage.morphology.thin from modifying input array
:open_book: #7481 Add CI to release nightly free-threaded wheels
:open_book: #7479 Feature/add rotation to draw ellipsoid
:open_book: #6318 rename img_as_* to rescale_to_*
:open_book: #7065 Fix dynamic max trials of RANSAC
:open_book: #7477 Improved the documentation of the restoration.richardson_lucy deconvolution function
:open_book: #7459 Refactored tests for skeletonize

New issues

:closed_book: #7489 Strange description in docstring
:open_book: #7491 filters.threshold_triangle fails for Dask 2024.8 with “unkown chunk size”
:open_book: #7485 autosummary.import_cycle warning breaks doc build on Windows CI

Closed issues

:closed_book: #7489 Strange description in docstring
:closed_book: #4406 API: disk vs circle vs circle_perimeter
:closed_book: #7246 Inconsistency in Default Values of shift_x and shift_y in skimage.filters.rank.mean_percentile
:closed_book: #7279 Error installing botright due to scikit_image-0.21.0.tar.gz metadata preparation

Other active issues

:open_book: #7478 Setting up conda environment for development of skimage throws a package not found error
:open_book: #7484 Backend QtAgg is interactive backend. Turning interactive mode on.
:open_book: #7315 grayreconstruct.reconstruction incorrect when footprint offset is specified
:open_book: #7471 Decide on the GitHub Projects
:open_book: #7474 Unexpected Core Dump When Executing inpaint_biharmonic
:open_book: #7475 Explore faster implementations of median filter


Open pull requests: +3
Open issues: -1

1 Like

Aug 12 to Aug 19, 2024 (week 33)

We merged quite a few PRs this week. The refactor in #7459, the new free-threaded wheels in #7481 and the fix in #7065 are worth highlighting.

Also, we are busy preparing the tutorial for EuroScipy next week right now and hoping that Pyodide will make an alpha release with our most recent skimage version in time. That might take priority over other stuff, at least for me.

New open pull requests (1)

:open_book: #7496 Fix dynamic max trials of RANSAC (follow up)

Closed pull requests (6)

:closed_book: #7065 Fix dynamic max trials of RANSAC
:closed_book: #7459 Refactored tests for skeletonize
:closed_book: #7481 Add CI to release nightly free-threaded wheels
:closed_book: #7487 Complete deprecation of plot_matches
:closed_book: #7492 Uncomment currentmodule directive again
:closed_book: #7495 Remove unused and deprecated dependency pytest-runner

Other active pull requests (3)

:open_book: #6713 Add new property circularity to skimage.measure.regionprops
:open_book: #7309 Create new 3D bioimaging example.
:open_book: #7479 Feature/add rotation to draw ellipsoid

New open issues (1)

:open_book: #7497 test_ellipse_model_estimate_failers fails on master for Mac M1 (arm64)

Closed issues (6)

:closed_book: #7301 morphology.flood fails for boolean image type if tolerance is set
:closed_book: #7474 Unexpected Core Dump When Executing inpaint_biharmonic
:closed_book: #7478 Setting up conda environment for development of skimage throws a package not found error
:closed_book: #7494 pytest-runner deprecated?
:closed_book: #7498 About the PyWavelets not installed error
:closed_book: #7499 Error in saving the resulting image of denoise wavelet

Other active issues (4)

:open_book: #7282 Test and prepare for NumPy 2.0
:open_book: #7315 grayreconstruct.reconstruction incorrect when footprint offset is specified
:open_book: #7377 Cannot catch MemoryError
:open_book: #7458 morphology.binary_closing() is ~50x slower than morphology.closing(). The ratio should be reversed


Open pull requests: -4
Open issues: -2

1 Like

I missed that the weekly reports are back! So awesome :heart: :muscle:

1 Like

Aug 25 to Sep 01, 2024 (week 35)

Last week, a few of us attended the EuroSciPy conference in Szczecin, Poland. And on the weekend after the conference we had a rare sprint on scikit-image!

Unsurprisingly, we got work a lot on scikit-image and the repo saw a lot of activity. Though, the biggest progress is probably not visible yet (we managed to go through through the entire skimage2 list! We found a bunch of items that we can actually do with conventional deprecation cycles, and clarified / updated the remaining ones. I’m really happy with that progress!

In parallel, @eriknw and @betatim started work on a prototype for dispatching scikit-image to backends. Early progress can be found in Basic infrastructure for dispatching to a backend by betatim · Pull Request #7520 · scikit-image/scikit-image · GitHub. Exciting and very experimental stuff! Hopefully, it sticks this time.

New open pull requests (5)

  • #7513 Adding dispatching to scikit-image
  • #7517 Fix docstring math rendering in manders_coloc_coeff
  • #7518 Further document use of regionprops function and fix terms.
  • #7521 promote 8 and 16-bit integer dtypes to float32
  • #7523 Improve docstring for Wiener restoration function.

Closed pull requests (15)

  • #7434 Rework installation instructions
  • #7438 Add sdist check to spin sdist
  • #7496 Fix dynamic max trials of RANSAC (follow up)
  • #7501 Update deprecated configuration
  • #7505 Move from CITATION.bib to CITATION.cff
  • #7507 Bump spin version to 0.11
  • #7508 Deprecate io.{imshow,imshow_collection,show}
  • #7509 Don’t test thresholding funcs for Dask compatibility
  • #7510 Fix build dependency
  • #7511 Update pydata-sphinx-theme
  • #7512 Ensure only a single label is present
  • #7514 Add spin install
  • #7515 Use correct spin test --coverage in contribution guide
  • #7519 Reorder items in TODO list.
  • #7522 Tweak advice to new developers; remove AI warning

Other active pull requests (8)

  • #7309 Create new 3D bioimaging example.
  • #7465 Gray-scale Hough Line Transform
  • #7466 WIP: cucim backend for skimage
  • #7477 Improved the documentation of the restoration.richardson_lucy deconvolution function
  • #7479 Feature/add rotation to draw ellipsoid
  • #7503 Feature/use scipy rotation
  • #7065 Fix dynamic max trials of RANSAC
  • #7226 Silence PyData theme warning about new default for “navigation_with_keys”

New open issues (2)

  • #7506 Module Not Found Error
  • #7516 Math display rendering is broken.

Closed issues (3)

  • #7437 tools/check_sdist.py is currently unused
  • #7491 filters.threshold_triangle fails for Dask 2024.8 with “unkown chunk size”
  • #7500 One of our doc dependencies brings in numpy < 2

Other active issues (7)

  • #2755 Change regionprops so that indices match labels
  • #4876 Terminology: n_jobs vs num_workers vs ncpu etc.
  • #7238 Breaking change suggestions for morphological operators
  • #7330 Gallery examples use Matplotlib in a hybrid way (explicit vs. implicit interfaces).
  • #7425 [0.23.2] test_active_contour_model.py fails on mips64el
  • #7458 morphology.binary_closing() is ~50x slower than morphology.closing(). The ratio should be reversed
  • #7504 io.show only shows the last image on macOS (M2)

Open pull requests: +1
Open issues: -1

2 Likes