release: 0.6.0 - #19
Merged
Merged
Conversation
A map can be used as a scikit-learn estimator, and the plain-string deprecation from 0.5.0 is withdrawn. Nothing breaks and no numerical results change. train is untouched and remains the primary way to train, both option spellings work and neither is deprecated, and scikit-learn is optional: numpy is still the only runtime dependency. Verified from the built wheel in a clean environment. With numpy alone: the estimator methods work, plain strings are silent under -W error::DeprecationWarning, and importing python_som.sklearn raises an ImportError naming the extra. With the extra installed, GridSearchCV runs against the adapter.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Version bump and changelog for 0.6.0. Nothing breaks, no results change.
What 0.6.0 is
Two things, both additive:
fit,transform,predict,score,get_params,set_paramsonSOM, pluspython_som.sklearn.SOMEstimatorfor fullPipelineandGridSearchCVintegration behindpip install "python-som[sklearn]".trainis untouched and remains primary.numpyis still the only runtime dependency.The withdrawal, stated plainly
0.5.0 shipped a
DeprecationWarningannouncing thatmode="batch"would stop working in 1.0.0. Thatwas wrong, and this release reverses it. Every comparable library passes options as plain strings and
none export enums — scikit-learn, numpy, scipy, minisom, sompy — so removing the string form would have
made this the only library in its ecosystem to reject
mode="batch".Anyone who migrated to the enums while 0.5.0 was current keeps working code: the enums are staying too.
The changelog says so directly rather than quietly dropping the warning.
Verified from the built wheel, both ways
Plus 424 tests at 100% coverage, ruff /
ruff format/mypy --strictclean,mkdocs build --strictexits 0,
twine checkpasses both artifacts.Where 1.0.0 stands
Deliberately not next. What remains breaking is thin — keyword-only arguments, removing two setters,
removing pre-0.3.0 private aliases, dropping Python 3.10 after its October 2026 EOL — and the estimator
interface introduced here should have real use before the API is frozen around it.
refactor/enums-onlyis dropped from the plan entirely.
After merge
Tag
v0.6.0, then the workflow builds and waits on thepypienvironment reviewer, which youauthorise in the GitHub UI.