Recent Releases of lsapy
lsapy - v0.2.0
Contributor to this version: Baptiste Hamon (@baptistehamon).
New features
- Functions' alternative names can now be used in
SuitabilityFunction(PR #43). - The documentation of membership functions has been improved (PR #43).
LSAPyofficially supports Python>=3.10 and is OS independent (PR #46).reprmethods ofSuitabilityFunction,SuitabilityCriteriaandLandSuitabilityAnalysishave been modified to provide more user-friendly information (issue #55, PR #59).- A setter has been added to the
attrsmethod ofSuitabilityCriteriaandLandSuitabilityAnalysis(issue #55, PR #59). - The
open_datafunction has been added to thelsapy.utilsmodule to load data from the LSAPy data repository (issue #60, PR #62). - A
medianaggregation method has been added (PR #63).
Breaking changes
- The deprecated
SuitabilityFunction.mapmethod has been removed (PR #44). short_name,long_name,descriptionandcommentattributes ofSuitabilityCriteriaandLandSuitabilityAnalysishave been removed and are now stored in theattrsattribute (issue #55, PR #59).load_climate_dataandload_soil_datafunctions have been removed (issue #60, PR #62).- Some names of aggregation methods have been changed (PR #63):
weighted_meanis nowwmeangeomeanis nowgmeanweighted_geomeanis nowwgmeanlimiting_factoris nowlimfactor
- The
vars_weighted_mean,vars_mean,vars_geomean,vars_weighted_geomeanandlimiting_factoraggregation methods have been removed (PR #63).
Internal changes
- Tests have been added for currently implemented
LSAPyfunctionalities (issue #7, PR #46).pytestis used as the testing framework to run all unit tests, doctests and test notebooks.noxhas been set up and is used to run tests in CI workflows.
- A CI GitHub Actions workflow has been added (issue #8, PR #46)
- The CI runs tests on Python 3.10 to 3.13, on Ubuntu, macOS and Windows.
- The coverage, doctests and notebook tests are run on Ubuntu under Python 3.12.
- New pre-commit hooks have been added and the package pyproject has been updated (PR #58)
- New hooks:
yamllint,vulture,nbstripout,pygrep-hooks,mdformat,blackdoc,formatbibtex,gitleaksandmeta. - Update dependencies: remove unused
Shapelyand add dependencies for new hooks. - Add deptry config to track dependencies.
- Update package metadata: keywords, classifiers (python versions) and project URLs.
- Update package sdist files.
- New hooks:
- The
lsapy.core.formattingmodule has been added and containsreprformatting functions (issue #55, PR #59). LSAPysample data management has been improved (issue #60, PR #62):LSAPynow usespoochto fetch sample data.- Old data files have been removed from the data folder, and the new climate data file has been added.
- A registry file has been added to store sample data file names, hashes and URLs.
- Aggregation functions have been moved to the
lsapy.core.aggregationmodule (PR #63). - A relaxed configuration of
mypyhas been added to the project (PR #66).
Bug fixes
- Fix issues with representations of
SuitabilityFunctionwhen no parameters are provided (issue #61, PR #65). - Add
**kwargstoSuitabilityCriteria.computeandLandSuitabilityAnalysis.runto allow handling Dask arrays (issue #64, PR #65). - The codebase has been modified to improve typing and fix mypy errors (issue #35, PR #66).
- Python
Published by baptistehamon 10 months ago
lsapy - v0.1.0
Contributor to this version: Baptiste Hamon (@baptistehamon).
New features
- New function
membership.fit_membershipimplemented as replacement of the deprecatedMembershipSuitFunction.fitmethod (issue #29, PR #30).
Breaking changes
MembershipSuitFunctionandDiscreteSuitFunctionhave been removed (issue #29, PR #30).- Changes in
SuitabilityFunction(issue #15, PR #23 & PR #30):func_methodandfunc_paramshave been renamed tonameandparamsrespectively.maphas been deprecated because of its redundancy with the__call__method. Changes will be permanent in LSAPy v0.1.0. Call the function directly instead.
LandSuitabilityhas been renamed toLandSuitabilityAnalysis. (issue #15, PR #26)
Internal changes
- Templates for requesting new features, asking questions and submitting PR have been added (issue #11, PR #12).
- The README has been updated to make links permanent and to add a docs badge (PR #13, PR #15).
- A configuration file for Zenodo integration has been added to the repository (PR #14).
Pre-commithas been set up andruff,codespellandnumpydochooks have been added (issue #8, PR #18/PR #19).- The autoupdate schedule of
pre-commithas been set to weekly (PR #21) - The unused
introduction.ipynbnotebook has been removed (issue #15, PR #20). - The structure around
SuitabilityFunction(PR #30):- The
SuitabilityFunctionhas been moved to LSAPyfunction._suitabilitymodule. - The membership functions have been moved to the
function.membershipmodule. - The discrete function has been moved to the
function._discretemodule. - The
equationdecorator has been rename todeclare_equationand moved to thecore.functionmodule. - The
get_function_from_namefunction has been moved to thecore.functionmodule.
- The
- Changes on
SuitabilityCriteria(issue #15, PR #31):- It now has a
commentandis_computedattributes. funcparameter is now optional, useful when the criteria is already computed.
- It now has a
- LSAPy logo has been added: README and documentation have been updated to use it (PR #27)
- Python
Published by baptistehamon 10 months ago
lsapy - v0.1.0-dev2
Contributor to this version: Baptiste Hamon (@baptistehamon).
Internal changes
- Major changes for documentation (issue #2, PR #9):
- All public objects are now documented using the NumPy-style.
- introduction.ipynb has been slip into three different ones: criteria.ipynb, function.ipynb, and lsa.ipynb.
- The top-level documentation has been updated/created:
- The format of README and CHANGELOG files is now reStructuredText (RST).
- A proper README has been created.
- A CODEOFCONDUCT file adopting the Contributor Covenant code of conduct has been added.
- A CONTRIBUTING.md providing guidelines on how to contribute to the project has been added.
- FT20250 and UC logos used in the documentation have been added to the repository.
- The documentation building using Sphinx has been setup:
- The documentation uses the PyData theme.
- A User-facing documentation is now available and has been published on Read the Docs.
- The project dependencies have been updated and made consistent accross pyproject.toml and environments.yml files.
- Python
Published by baptistehamon about 1 year ago
lsapy - v0.1.0-dev1
Contributor to this version: Baptiste Hamon (@baptistehamon).
New features
- Add ruff configuration to the project.
Bug fixes
- Python
Published by baptistehamon about 1 year ago
lsapy - v0.1.0-dev0
First release on PyPI.
SuitabilityFunctionto define the function used for suitability computation.SuitabilityCriteriato define criteria to consider in the LSA.LandSuitabilityto conduct LSA.
- Python
Published by baptistehamon about 1 year ago