Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Dec 22, 2025

Updates the requirements on scikit-image to permit the latest version.

Release notes

Sourced from scikit-image's releases.

v0.26.0

scikit-image 0.26.0

We're happy to announce the release of scikit-image 0.26.0!

New Features

  • Add new parameter max_step_cost to skimage.graph.MCP.find_costs which allows limiting the maximal stepping cost between points (#7625).
  • In skimage.transform, add the identity class constructor to all geometric transforms. For example, you can now use skimage.transform.PolynomialTransform(dimensionality=2) (#7754).
  • Add new property intensity_median to skimage.measure.regionprops (#7745).
  • binary_blobs now supports a mode parameter for the Gaussian filter, allowing periodic boundary conditions with mode="wrap" (#7909).

API Changes

  • In skimage.morphology, deprecate binary_erosion, binary_dilation, binary_opening, and binary_closing in favor of erosion, dilation, opening, and closing respectively. The binary versions weren't actually significantly faster than their non-binary counterparts and sometimes significantly slower. In the future, we might add optimizations internally to the remaining (general, non-binary) functions for when they're used with binary inputs (#7665).
  • Deprecate parameter max_cost in skimage.graph.MCP.find_costs which previously did nothing. Use the new parameter max_step_cost instead (#7625).
  • Deprecate parameter max_cumulative_cost in skimage.graph.MCP.find_costs which did nothing (#7625).
  • In skimage.morphology.remove_small_objects, deprecate the min_size parameter in favor of the new max_size parameter to make API and behavior clearer. This new threshold removes objects smaller than or equal to its value, while the previous parameter only removed smaller ones (#7739).
  • In skimage.morphology.remove_small_holes, deprecate the area_threshold parameter in favor of the new max_size parameter to make API and behavior clearer. This new threshold removes holes smaller than or equal to its value, while the previous parameter only removed smaller ones (#7739).
  • In skimage.transform, deprecate the use of scalar scale, with dimensionality=3 where this can be passed to a geometric transform contructor. This allows us to generalize the use of the constructors to the case where the parameters must specify the dimensionality, unless you mean to construct an identity transform (#7754).
  • In skimage.transform, turn all input parameters to transform constructors keyword-only (other than matrix). This avoids confusion due to the positional parameter order being different from the order by which they are applied in AffineTransform (#7754).
  • Deprecate parameter num_threads in skimage.restoration.rolling_ball; use workers instead (#7302).
  • Deprecate parameter num_workers in skimage.restoration.cycle_spin; use workers instead (#7302).
  • Officially deprecate old properties in skimage.measure.regionprops and related functions. While we removed the documentation for these some time ago, they where still accessible as keys (via __get_item__) or attributes. Going forward, using deprecated keys or attributes, will emit an appropriate warning (#7778).
  • In skimage.measure, add a new class method and constructor from_estimate for LineModelND, CircleModel, and EllipseModel. This replaces the old API—the now deprecated estimate method—which required initalizing a model with undefined parameters before calling estimate (#7771).
  • In skimage.transform, add a new class method and constructor from_estimate for AffineTransform, EssentialMatrixTransform, EuclideanTransform, FundamentalMatrixTransform, PiecewiseAffineTransform, PolynomialTransform, ProjectiveTransform, SimilarityTransform, and ThinPlateSplineTransform. This replaces the old API—the now deprecated estimate method—which required initializing an undefined transform before calling estimate (#7771).
  • Deprecate skimage.measure.fit.BaseModel; after we expire the other *Model* deprecations, there is no work for an ancestor class to do (#7789).
  • In skimage.measure, deprecate .params attributes of the models CircleModel, EllipseModel, and LineModelND. Instead set model-specific attributes: origin, direction for LineModelND; center, radius for CircleModel, center, ax_lens, theta for EllipseModel (#7789).
  • In skimage.measure, deprecate use of model constructor calls without arguments leaving an uninitialized instance (for example CircleModel()). This applies to CircleModel, EllipseModel, and LineModelND. Instead prefer input arguments to define instances (for example CircleModel(center, radius)). This follows on from prior deprecation of the estimate method, which had implied the need for the no-argument constructor, of form cm = CircleMoldel(); cm.estimate(data) (#7789).
  • In skimage.measure, deprecate use of params arguments to predict* calls of model objects. This applies to CircleModel, EllipseModel, and LineModelND. We now ask instead that the user provide initialization equivalent to the params content in the class construction. For example, prefer cm = CircleModel((2, 3), 4); x = cm.predict_x(t) to cm = CircleMoldel(); x = cm.predict_x(t, params=(2, 3, 4))) (#7789).

Enhancements

  • Raise a ValueError instead of a TypeError in CircleModel, EllipseModel, and LineModelND in skimage.measure. This applies when failing to pass a value for params (or passing params=None) to predict methods of an uninitialized transform (#7789).
  • In skimage.measure, the RegionProperties class that is returned by regionprops, now has a formatted string representation (__repr__). This representation includes the label of the region and its bounding box (#7887).

Performance

  • Use greedy einsum optimization in skimage.measure.moments_central (#7947).
  • Add lazy loading to skimage.segmentation (#7035).

Bug Fixes

  • Make deconvolution example scientifically sensible (#7589).
  • In skimage.filters.sobel/scharr/prewitt/farid, when mode="constant" is used ensure that cval has an effect. It didn't previously (#7826).
  • Ensure skimage.graph.cut_normalized is deterministic when seeded with the rng parameter and when SciPy 1.17.0.dev0 or newer is installed. With earlier SciPy versions the internally used function scipy.linalg.eigsh is not deterministic and can lead to different results (#7912).
  • Avoid potential integer overflow in skimage.morphology.reconstruction (#7938).
  • Handle negative axis lengths due to numerical errors in axis_major_length and axis_minor_length properties of skimage.measure.regionprops (#7916).
  • In skimage.util.random_noise, ensure that clip argument is handled consistently for various modes (#7924).
  • Apparent fix for Hough transform stray j (#7974).

... (truncated)

Commits
  • ee0a7a3 Designate 0.26.0 release
  • b0e3c2d Clarify RELEASE.txt after v0.26.0rc2 (#7990)
  • a12ddfa Bump version in skimage init to 0.26.0rc3.dev0
  • ab3bd14 Bump version in skimage init to 0.26.0rc2
  • c27ac8f Designate 0.26.0rc2 release (#7987)
  • 211223b Clarify non-native support for masked array in the documentation (#7968)
  • b3da953 Mark test_wrap_around as xfail on macOS until 2026-02-01 (#7985)
  • 2799d12 Note issue number tracking the flakiness
  • 52996fd Set exception type in xfail
  • dd49f1f xfail on macOS and make mark temporary until 2026-02-01
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [scikit-image](https://github.com/scikit-image/scikit-image) to permit the latest version.
- [Release notes](https://github.com/scikit-image/scikit-image/releases)
- [Changelog](https://github.com/scikit-image/scikit-image/blob/main/RELEASE.txt)
- [Commits](scikit-image/scikit-image@v0.1...v0.26.0)

---
updated-dependencies:
- dependency-name: scikit-image
  dependency-version: 0.26.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Dec 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant