Skip to content

Release v23.01

Compare
Choose a tag to compare
@github-actions github-actions released this 31 Jan 04:15

PySAL 23.01, 2023-01-30

Overall, there were 479 commits that closed 205 issues, together with 19 pull requests since our last release on 2022-07-31.

Highlights

  • Version numbering has switched to YR.MO for the pysal meta-package release.
  • The spopt package added a LSCP-B formulation and the P-Dispersion model through the excellent GSoC project by Erin Olson

Changes by Package

libpysal

  • #488: type vs. geom_type with shapely
  • #487: address ShapelyDeprecationWarning The 'type' attribute is...
  • #485: allow for individual downloads and access to remote urls in examples
  • #486: ENH: more granularity in example handling
  • #482: test against shapely prerelease
  • #479: Creating Weights from dataframe: IndexError: index 0 is out of bounds for axis 0 with size 0
  • #483: Networkx3.0
  • #481: Platformdirs
  • #478: Updates warnings, etc.
  • #391: Test failures with GEOS 3.9.0

access

esda

giddy

inequality

pointpats

segregation

spaghetti

  • #701: another release_and_publish.yml failures (due to pyproject.toml)
  • #703: Update Versioneer
  • #700: Update Versioneer
  • #702: add formatting exclusions properly in toml
  • #699: Update Versioneer
  • #698: Update Versioneer
  • #697: try versioneer action
  • #696: remove pygeos from environments
  • #680: remove pygeos
  • #695: supplement setup.py with a name kwarg for dep graph
  • #694: add name keyword in setup.py
  • #693: [pre-commit.ci] pre-commit autoupdate
  • #692: [pre-commit.ci] pre-commit autoupdate
  • #690: try pyproject.toml; remove setup.cfg
  • #691: [pre-commit.ci] pre-commit autoupdate
  • #689: [pre-commit.ci] pre-commit autoupdate
  • #688: adjust css for doc references
  • #687: esda master -> main
  • #686: update sphinx tooling, etc.
  • #685: 1st attempt for Python 3.11 testing
  • #684: [pre-commit.ci] pre-commit autoupdate
  • #683: Bump actions/setup-python from 3 to 4
  • #682: add linting in CI
  • #681: Try out pre-commit.ci
  • #679: Test against shapely pre-release
  • #678: test against shapely==2.0b1
  • #677: rerun notebooks
  • #676: Update warnings, etc.

mgwr

momepy

  • #422: RLS: add 0.5.4 changelog
  • #420: Add pyproject.toml file
  • #415: add a project.toml?
  • #419: proof README.md
  • #416: Scour docs for consistency, grammar, etc.
  • #414: scour docstrings (grammar, punctuation, etc.)
  • #418: GHA: update PyPI release action
  • #413: add flake8 and isort to CI
  • #412: enhance CI with flake8 & isort
  • #409: BUG: get_network_ratio non-interescting joins fix
  • #408: BUG: get_network_ratio returns wrong ID for non-intersecting join
  • #410: minor spelling and punctuation update
  • #392: ENH: roundabout_simplification() notebook example
  • #407: CI: test preprocessing part of user guide
  • #405: Run user guide tests with Python 3.10
  • #403: remove pygeos duplicate
  • #400: standardize pytest.approx() in testing files
  • #404: bump copyright year
  • #402: pygeos occurs twice in asv.conf.json - matrix
  • #401: test user guide against Python 3.10?
  • #399: both pytest.approx() and approx() used in testing
  • #398: Fix various warnings
  • #397: Fix thrown warnings in dimension, elements, diversity
  • #395: handle All NaN slice warning
  • #394: Handle All-NaN slice encountered warning in diversity.Percentiles()
  • #390: limit numpy version evaluations in diversity.Percentiles
  • #393: DOC: create preprocessing section
  • #388: suppress warnings in dimensions.StreetProfile()
  • #389: handle scenarios leading to dimensions.StreetProfile() warnings
  • #391: Rabs geom
  • #386: numpy. nanpercentile() has a renamed keyword
  • #383: update .append method for dataframes
  • #382: REF: remove deprecated pandas append
  • #384: REF: replace append with concat
  • #387: address numpy.nanpercentile warning
  • #385: DOC: temporarily pin theme
  • #371: ENH: geometry-based simplification of roundabouts
  • #379: Added warning for gdp_to_nx if geometries are not LineStrings
  • #378: BUG: make coins independent of gdf index
  • #373: DOC: compat with latest sphinx pydata theme
  • #362: DOC: broken colours with new pydata_sphinx_theme

spglm

spint

spreg

  • #108: update gitcount and conf.py
  • #107: update workflows/ci
  • #100: update tools/gitcount notebook
  • #105: Fixing failed tests for new release
  • #104: Version update

spvcm

tobler

mapclassify

  • #165: Update Versioneer
  • #167: Try skipping certain files with isort
  • #166: update master/main link issue
  • #164: Update Versioneer
  • #163: Update infrastructure (actions)
  • #162: GHA for updating versioneer
  • #161: update branch of gh-action-pypi-publish
  • #37: Add VBA functionality
  • #159: [pre-commit.ci] pre-commit autoupdate
  • #158: [pre-commit.ci] pre-commit autoupdate
  • #157: [pre-commit.ci] pre-commit autoupdate
  • #156: [pre-commit.ci] pre-commit autoupdate
  • #142: MaxP.update() – bins used by not defined
  • #155: Remove update method from MaxP
  • #154: Use libpysal.fuzzy_contiguity() in greedy
  • #148: swap greedy. _geos_sw() for libpysal.fuzzy_contiguity
  • #135: Thorough scouring of docs + doc build infrastructure
  • #141: love and care for docstrings, etc.
  • #152: ENH: addressing #145
  • #153: remove spaces after table string title
  • #145: remove spaces from title of classifier table string
  • #150: Switch to pytest
  • #146: convert from unittest to pytest
  • #147: improve warnings and exceptions
  • #140: warn or raise vs. print statements for unexpected behavior
  • #151: [pre-commit.ci] pre-commit autoupdate
  • #149: silence warnings option when k classes not possible?
  • #144: update GHA for CI
  • #143: remove _table_string() method
  • #139: remove old/redundant MapClassifier._table_string() method
  • #138: Bump actions/checkout from 2 to 3
  • #137: Bump codecov/codecov-action from 2 to 3
  • #136: update release action, etc.
  • #105: Fix changelog builder to give proper attribution
  • #134: updating branch in badges on README
  • #133: resolves #132
  • #132: update binder environment
  • #129: RuntimeWarning: invalid value encountered in double_scalars
  • #131: ENH: handle invariant arrays
  • #112: plot doesn't work for pooled classifications
  • #130: change default branch from master to main
  • #128: [MAINT] lint & format repo; update CI; handle DeprWarns, etc.

splot

spopt

  • #276: P-Median Problem Tutorial Binder example
  • #344: Add requirements_notebooks.txt to MANIFEST
  • #343: The requirementes notebook is missing from the MANIFEST.in
  • #342: Update Versioneer
  • #340: add versioneer action
  • #339: add a GHA for updating versioneer
  • #338: Update release_and_publish.yml
  • #337: update branch of gh-action-pypi-publish
  • #336: [BUG] bounds for client assignment variables
  • #328: [BUG] client assignment variable bounds for CLSCP-SO
  • #329: Clean up the implementation of the capacitated LSCP
  • #320: clean up CLSCP-SO implementation
  • #335: polish up docstrings, etc. in skater.py
  • #333: [BUG] affinity in Skater spanning forest
  • #332: customize tqdm progress bar in Skater
  • #321: [BUG] using affinity in skater.SpanningForest
  • #334: doc build env correction
  • #330: Update sphinx requirement from <=4.5.0 to <6.2.0
  • #309: workaround for cascading references in docs
  • #327: Update sphinx requirement from <=4.5.0 to <6.1.0
  • #324: individual locate test, tqdm, & bare minimal testing env
  • #323: test against a minimal / bare bones environment
  • #322: add tqdm as on optional req
  • #318: break out test_locate.py
  • #234: Factoring in Facility Capacities
  • #319: Streamline redundant parameter passing in constraint constructors
  • #317: streamline variable and constraint creation
  • #7: input is not sanitised before it is used
  • #316: Fix CLSCP-SO bugs and add tests
  • #315: raise if demand > capacity in CLSCP-SO
  • #314: [BUG] service radius threshold not respected in CLSCP-SO
  • #273: Facility capacity for LSCP
  • #313: [pre-commit.ci] pre-commit autoupdate
  • #307: doc work and formatting continued (random_region, util, ward)
  • #312: expose SPENC kwargs
  • #310: remove external spenc from CI envs
  • #172: Allow passing all keywords into Spenc
  • #305: utilize BaseSpOptExactSolver
  • #306: Update sphinx requirement from <=4.5.0 to <5.4.0
  • #302: start of doc work – focusing on locate docs
  • #304: update locate images & add tutorial links
  • #300: doc work and cleanup -- add locate formulations to docstrings
  • #296: New attributes & functionality for locate models
  • #287: calculate get_percentage() within MCLP.solve(results=True)
  • #286: calculate get_mean_distance() within PMedian.solve(results=True)
  • #285: remove BaseOutputMixin from PDispersion
  • #283: get_backup_percentage method for LSCP-B
  • #282: maybe set solver as attribute in LSCPB?
  • #267: pre-defined facilities for all location models?
  • #301: [pre-commit.ci] pre-commit autoupdate
  • #294: Region-k-means seed
  • #213: K means heuristic test failure
  • #297: keep or remove RegionMixin
  • #215: maximum-coverage-location package
  • #293: remove pip install in notebooks
  • #290: more issues with binder for locate notebooks
  • #292: Drop Py37, update binders, & test future shapely dev
  • #291: update shapely_dev testing
  • #284: drop testing/support for Python 3.7
  • #288: Update/cleanup/standardize notebooks
  • #289: test spopt against the shapely==2.0b1
  • #269: update docs for new location models
  • #57: Throws an error when silhoutte coefficients for two clusters are the same
  • #187: The dissimilarity parameter should be able to accept a distance/dissimilarity matrix as an alternative to a callable distance function
  • #188: [WIP] allow for precomputed distance matrices
  • #263: LSCP Notebook Plots
  • #21: differentiating spatial clusterers
  • #281: comparing the LSCP and LSCP-B results
  • #278: AttributeError: type object 'FacilityModelBuilder' has no attribute 'add_maximized_min_variable'
  • #279: testing overhaul, etc
  • #260: GSoC 2022 Interfaces for Consistent API Design
  • #277: .coverage in .gitignore
  • #265: Add .coverage to .gitignore
  • #268: P dispersion
  • #275: Update typo in p-median example
  • #259: LSCP-B
  • #271: Lscpb formulation
  • #270: LSCP-B formulation?
  • #272: Rewrite LSCPB formulation

Contributors

Many thanks to all of the following individuals who contributed to this release:

  • Andres Morfin Veytia
  • Erin Olson
  • Germano Barcelos
  • Greg Maya
  • James Gaboardi
  • Levi John Wolf
  • Martin Fleischmann
  • Nick Bearman
  • Pedro Amaral
  • Serge Rey