pysal/pysal: Release v26.07
Authors: Sergio Rey, Philip Stephens, Taylor Oshan, Charles Schmidt, Jay Laura, Levi John Wolf, Dani Arribas-Bel, David C. Folch, James Gaboardi, mhwang4, Nicholas Malizia, Wei Kang, Pedro Amaral, eli knaap, Luc Anselin, Qunshan, Martin Fleischmann, Stefanie Lumnitz, Samay Mehar, Andrew Winslow, Bas Couwenberg, Marynia, Omar Khursheed, Kritin Sathi, yogabonito, Karl Dunkle Werner, Peter Quackenbush, Ryan Zomorrodi, Stuart Lynn
Type: Software
Published: 2026-07-31

<p>Overall, there were 704 commits that closed 363 issues since our last release on 2026-01-31.</p>
<p><a name="changes-by-package"></a></p>
<h2>Changes by Package</h2>
<p><a name="libpysal-v4.15.0"></a></p>
<h3>libpysal v4.15.0</h3>
<ul>
<li><a href="https://github.com/pysal/libpysal/pull/882">#882:</a> DOC: switch to sphinx-immaterial theme</li>
<li><a href="https://github.com/pysal/libpysal/pull/925">#925:</a> Bump actions/checkout from 6 to 7</li>
<li><a href="https://github.com/pysal/libpysal/pull/924">#924:</a> feat: support array-like bandwidth in kernel functions</li>
<li><a href="https://github.com/pysal/libpysal/pull/922">#922:</a> GHA: fix reverse dependency testing</li>
<li><a href="https://github.com/pysal/libpysal/pull/923">#923:</a> DEP: pin Pulp to <4</li>
<li><a href="https://github.com/pysal/libpysal/pull/921">#921:</a> update path for raster test data</li>
<li><a href="https://github.com/pysal/libpysal/pull/917">#917:</a> ENH: add kernel input validation</li>
<li><a href="https://github.com/pysal/libpysal/pull/920">#920:</a> Bump codecov/codecov-action from 6 to 7</li>
<li><a href="https://github.com/pysal/libpysal/issues/889">#889:</a> Support build of "adaptive" kernel graphs</li>
<li><a href="https://github.com/pysal/libpysal/pull/905">#905:</a> ENH: Add adaptive bandwidth support to Graph.build_kernel</li>
<li><a href="https://github.com/pysal/libpysal/pull/915">#915:</a> BUG: fix situations where linear geometries disappear in voronoi_frames</li>
<li><a href="https://github.com/pysal/libpysal/pull/914">#914:</a> GHA: use dedicated environment for docs action</li>
<li><a href="https://github.com/pysal/libpysal/pull/913">#913:</a> TST: eliminate warning about unary_union</li>
<li><a href="https://github.com/pysal/libpysal/pull/912">#912:</a> ENH: add Graph.from_lattice</li>
<li><a href="https://github.com/pysal/libpysal/pull/911">#911:</a> Sparse kernel weights</li>
<li><a href="https://github.com/pysal/libpysal/issues/909">#909:</a> ENH: use sparse distance computation for compact-support kernels in <code>Graph.build_kernel()</code></li>
<li><a href="https://github.com/pysal/libpysal/pull/904">#904:</a> FIX: Fix index space mismatch in coplanar clique</li>
<li><a href="https://github.com/pysal/libpysal/issues/897">#897:</a> BUG: cannot reindex on an axis with duplicate labels when using clique on coplanar points</li>
<li><a href="https://github.com/pysal/libpysal/pull/910">#910:</a> add <code>pulp</code> and a "plus" dep to <code>pyproject.toml</code></li>
<li><a href="https://github.com/pysal/libpysal/pull/908">#908:</a> Bump actions/github-script from 8 to 9</li>
<li><a href="https://github.com/pysal/libpysal/pull/906">#906:</a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pysal/libpysal/pull/903">#903:</a> Bump mamba-org/setup-micromamba from 2 to 3</li>
<li><a href="https://github.com/pysal/libpysal/pull/902">#902:</a> DOC: update docs infra based on momepy lessons</li>
<li><a href="https://github.com/pysal/libpysal/pull/900">#900:</a> source version info in docs from <code>packaging</code></li>
<li><a href="https://github.com/pysal/libpysal/pull/901">#901:</a> cancel doc builds in progress</li>
<li><a href="https://github.com/pysal/libpysal/pull/899">#899:</a> Bump codecov/codecov-action from 5 to 6</li>
<li><a href="https://github.com/pysal/libpysal/pull/890">#890:</a> Delete .ipynb_checkpoints directory</li>
<li><a href="https://github.com/pysal/libpysal/pull/891">#891:</a> move to new <code>docs/</code> dir structure</li>
<li><a href="https://github.com/pysal/libpysal/pull/898">#898:</a> DOC: fix table rendering</li>
<li><a href="https://github.com/pysal/libpysal/issues/441">#441:</a> Getting an error while trying to calculate knn weights from dataframe</li>
<li><a href="https://github.com/pysal/libpysal/pull/896">#896:</a> DOC: resolve sphinx warnings</li>
<li><a href="https://github.com/pysal/libpysal/pull/895">#895:</a> DOC: fold ReadMe to the docs</li>
<li><a href="https://github.com/pysal/libpysal/pull/893">#893:</a> Optimise default weights generation using dict comprehension</li>
<li><a href="https://github.com/pysal/libpysal/pull/894">#894:</a> Fix reverse dependency check</li>
<li><a href="https://github.com/pysal/libpysal/pull/892">#892:</a> drop Python 311 support - spec0</li>
<li><a href="https://github.com/pysal/libpysal/pull/881">#881:</a> Add deprecation for <code>KDtree</code> and <code>Arc_KDTree</code></li>
<li><a href="https://github.com/pysal/libpysal/issues/886">#886:</a> pandana link in build_travel_cost should point to pandarm instead</li>
<li><a href="https://github.com/pysal/libpysal/issues/879">#879:</a> deprecate <code>Arc_KDTree</code></li>
<li><a href="https://github.com/pysal/libpysal/pull/885">#885:</a> Ref/docs</li>
<li><a href="https://github.com/pysal/libpysal/pull/838">#838:</a> ENH: construction of distance-based weights directly from KDTree/BallTree</li>
<li><a href="https://github.com/pysal/libpysal/issues/805">#805:</a> Allow construction of distance-based weights directly from KDTree/BallTree</li>
<li><a href="https://github.com/pysal/libpysal/pull/887">#887:</a> add make_symmetric function to Graph</li>
<li><a href="https://github.com/pysal/libpysal/issues/664">#664:</a> Interest in a mutual knn?</li>
<li><a href="https://github.com/pysal/libpysal/pull/888">#888:</a> DOC: link to source from pages</li>
<li><a href="https://github.com/pysal/libpysal/pull/884">#884:</a> DOC: convert RST to MD</li>
<li><a href="https://github.com/pysal/libpysal/pull/883">#883:</a> DOC: CI for documentation and version switching</li>
<li><a href="https://github.com/pysal/libpysal/pull/835">#835:</a> fix: handle distance arrays when calculating bandwidth</li>
<li><a href="https://github.com/pysal/libpysal/pull/834">#834:</a> Improve <code>graph._kernely.py</code> performance</li>
<li><a href="https://github.com/pysal/libpysal/pull/837">#837:</a> ENH:  Implement Graph.from_dense</li>
<li><a href="https://github.com/pysal/libpysal/issues/828">#828:</a> ENH: add Graph.from_dense</li>
<li><a href="https://github.com/pysal/libpysal/pull/870">#870:</a> Add next steps guidance after installation</li>
<li><a href="https://github.com/pysal/libpysal/pull/875">#875:</a> Add Python 3.14 support to testing matrix</li>
<li><a href="https://github.com/pysal/libpysal/pull/876">#876:</a> trusted publishing to pypi via action – <code>release_and_publish.yml</code></li>
<li><a href="https://github.com/pysal/libpysal/pull/871">#871:</a> Enable MyST Markdown support for libpysal documentation</li>
<li><a href="https://github.com/pysal/libpysal/pull/864">#864:</a> Docs : added guidance on what to do after the installation</li>
<li><a href="https://github.com/pysal/libpysal/pull/867">#867:</a> Change return type from numpy.array to pandas.Series</li>
<li><a href="https://github.com/pysal/libpysal/issues/866">#866:</a> Docstring return type mismatch in component_labels</li>
<li><a href="https://github.com/pysal/libpysal/pull/865">#865:</a> Docs: add next steps after installation</li>
<li><a href="https://github.com/pysal/libpysal/pull/860">#860:</a> DOC: clarify Rook and Queen contiguity for point geometries</li>
<li><a href="https://github.com/pysal/libpysal/issues/706">#706:</a> Contiguity weight docs</li>
</ul>
<p><a name="access-v1.1.10.post3"></a></p>
<h3>access v1.1.10.post3</h3>
<p><a name="esda-v2.10.0"></a></p>
<h3>esda v2.10.0</h3>
<ul>
<li><a href="https://github.com/pysal/esda/pull/509">#509:</a> Bump actions/checkout from 6 to 7</li>
<li><a href="https://github.com/pysal/esda/issues/404">#404:</a> <code>moa_ratio</code> and <code>nmi</code> in the shapes module are the same thing, and should yield the same result</li>
<li><a href="https://github.com/pysal/esda/pull/507">#507:</a> DOC: polish user guide</li>
<li><a href="https://github.com/pysal/esda/pull/496">#496:</a> Docs user guide</li>
<li><a href="https://github.com/pysal/esda/pull/505">#505:</a> Bump codecov/codecov-action from 6 to 7</li>
<li><a href="https://github.com/pysal/esda/issues/275">#275:</a> Local G Autocorrelation causing Numba TypingError</li>
<li><a href="https://github.com/pysal/esda/pull/442">#442:</a> BUG: cast integers to floats for numba compatibility in Getis-Ord</li>
<li><a href="https://github.com/pysal/esda/pull/503">#503:</a> DOC: fix citation</li>
<li><a href="https://github.com/pysal/esda/pull/501">#501:</a> DOC: properly expose LocalCrossPlot</li>
<li><a href="https://github.com/pysal/esda/pull/502">#502:</a> DOC: fix expected value in docstring</li>
<li><a href="https://github.com/pysal/esda/issues/445">#445:</a> Implement the Westerholt Plot and/or combined LISALOSH plot</li>
<li><a href="https://github.com/pysal/esda/pull/446">#446:</a> ENH: add LocalCrossPlot (Westerholt) plot and ability to scale Moran scatterplot by LOSH</li>
<li><a href="https://github.com/pysal/esda/pull/487">#487:</a> BUG:  Moran_Local p_sim calculation should use crand</li>
<li><a href="https://github.com/pysal/esda/issues/486">#486:</a> alternative argument propagating?</li>
<li><a href="https://github.com/pysal/esda/pull/498">#498:</a> GHA: use dedicated env for docs build</li>
<li><a href="https://github.com/pysal/esda/pull/497">#497:</a> Doc 2.9 fix</li>
<li><a href="https://github.com/pysal/esda/pull/493">#493:</a> TST: load test data ahead of time</li>
<li><a href="https://github.com/pysal/esda/pull/492">#492:</a> fix rough edges in <code>upload_package.yml</code></li>
<li><a href="https://github.com/pysal/esda/pull/490">#490:</a> Doc: missing ref for LOSH</li>
<li><a href="https://github.com/pysal/esda/pull/489">#489:</a> DOC: fixing sphinx warnings on doc build for shape.py</li>
<li><a href="https://github.com/pysal/esda/pull/491">#491:</a> DOC: update sphinx pin in env for doc build action</li>
<li><a href="https://github.com/pysal/esda/pull/488">#488:</a> Debugging broken search on esda docs</li>
<li><a href="https://github.com/pysal/esda/issues/389">#389:</a> test our examples nightly/regularly</li>
<li><a href="https://github.com/pysal/esda/pull/481">#481:</a> get doctests of Examples back running</li>
<li><a href="https://github.com/pysal/esda/issues/485">#485:</a> <code>map_comparision</code> examples using data from testing suite</li>
<li><a href="https://github.com/pysal/esda/issues/484">#484:</a> not passing <code>seed</code> in to <code>crand()</code> within the <code>.fit()</code> method</li>
<li><a href="https://github.com/pysal/esda/issues/482">#482:</a> <code>seed</code> not being passed to <code>crand()</code> in <code>Geary_Local.fit()</code></li>
<li><a href="https://github.com/pysal/esda/pull/480">#480:</a> Update version string in v2.9.0 and stable</li>
<li><a href="https://github.com/pysal/esda/issues/199">#199:</a> Add <code>alternative</code> argument for determining one-tailed or two-tailed permutation tests</li>
<li><a href="https://github.com/pysal/esda/pull/479">#479:</a> actually add (and pass through) the <code>alternative</code> keyword arg for classes using <code>crand()</code></li>
<li><a href="https://github.com/pysal/esda/issues/478">#478:</a> <code>alternative</code> keyword needed for classes that call <code>crand.crand()</code></li>
<li><a href="https://github.com/pysal/esda/pull/477">#477:</a> reup SPEC000 - [2026-05-02]</li>
<li><a href="https://github.com/pysal/esda/pull/476">#476:</a> only run <code>push</code> CI on main branch</li>
<li><a href="https://github.com/pysal/esda/issues/292">#292:</a> Error when importing esda package in Python</li>
<li><a href="https://github.com/pysal/esda/pull/475">#475:</a> Handle more CI warnings CI – [2026-05-02]</li>
<li><a href="https://github.com/pysal/esda/issues/429">#429:</a> BUG: Replace deprecated np.row_stack with np.vstack for NumPy 1.25+ compatibility</li>
<li><a href="https://github.com/pysal/esda/issues/212">#212:</a> GSoC 2022 Interfaces for Consistent API Design</li>
<li><a href="https://github.com/pysal/esda/pull/473">#473:</a> Add root files for gh-pages versioning</li>
<li><a href="https://github.com/pysal/esda/issues/291">#291:</a> smoothers are undocumented</li>
<li><a href="https://github.com/pysal/esda/pull/474">#474:</a> update_versions_json.py belongs only in gh-pages</li>
<li><a href="https://github.com/pysal/esda/pull/472">#472:</a> clean up some warnings in CI – [2026-05-01]</li>
<li><a href="https://github.com/pysal/esda/pull/471">#471:</a> Update build docs for versioning</li>
<li><a href="https://github.com/pysal/esda/pull/469">#469:</a> dependencies;</li>
<li><a href="https://github.com/pysal/esda/pull/470">#470:</a> add deps for nb build</li>
<li><a href="https://github.com/pysal/esda/pull/468">#468:</a> Doc map comparison</li>
<li><a href="https://github.com/pysal/esda/pull/465">#465:</a> Move tests in <strong>main</strong> blocks to actual tests or remove</li>
<li><a href="https://github.com/pysal/esda/pull/467">#467:</a> Docs federation build</li>
<li><a href="https://github.com/pysal/esda/issues/460">#460:</a> <code>G_Local.__crand()</code> -- time to deprecate?</li>
<li><a href="https://github.com/pysal/esda/pull/466">#466:</a> Deprecate legacy __crand in getisord</li>
<li><a href="https://github.com/pysal/esda/pull/430">#430:</a> fix(#428): convert strict raise DeprecationWarning to warnings.warn in smoothing.py</li>
<li><a href="https://github.com/pysal/esda/issues/428">#428:</a> BUG: raising DeprecationWarning halts execution instead of warning in smoothing.py</li>
<li><a href="https://github.com/pysal/esda/pull/463">#463:</a> remove deprecated 'by_col()' - <code>smoothing.py</code></li>
<li><a href="https://github.com/pysal/esda/pull/462">#462:</a> remove deprecated 'by_col()' - join_counts.py</li>
<li><a href="https://github.com/pysal/esda/pull/461">#461:</a> remove <code>CHANGELOG.md</code> - no longer used</li>
<li><a href="https://github.com/pysal/esda/issues/338">#338:</a> <code>TestGeary::test_by_col[W]</code> failure -- <code>312-numba-dev</code></li>
<li><a href="https://github.com/pysal/esda/pull/458">#458:</a> remove deprecated 'by_col()' - <code>{gamma,geary}.py</code></li>
<li><a href="https://github.com/pysal/esda/pull/447">#447:</a> DOC: refactor to federation structure</li>
<li><a href="https://github.com/pysal/esda/issues/399">#399:</a> revisit outstanding items in docs build</li>
<li><a href="https://github.com/pysal/esda/pull/456">#456:</a> mark <code>by_col()</code> methods as deprecated</li>
<li><a href="https://github.com/pysal/esda/pull/457">#457:</a> remove deprecated 'by_col()' - <code>getisord.py</code></li>
<li><a href="https://github.com/pysal/esda/pull/455">#455:</a> remove deprecated HeadBanging after 9 years</li>
<li><a href="https://github.com/pysal/esda/pull/11">#11:</a> WIP: Headbang re-work</li>
<li><a href="https://github.com/pysal/esda/issues/229">#229:</a> is <code>HeadBanging</code> deprecated?</li>
<li><a href="https://github.com/pysal/esda/pull/452">#452:</a> Stricter linting following #451</li>
<li><a href="https://github.com/pysal/esda/issues/416">#416:</a> Failing Moran plotting tests in dev</li>
<li><a href="https://github.com/pysal/esda/pull/451">#451:</a> Lint+turn on pre-commit for PRs -- [2026-04-25]</li>
<li><a href="https://github.com/pysal/esda/issues/450">#450:</a> unnecessary variable declaration in <code>shape.moment_of_inertia_regions()</code></li>
<li><a href="https://github.com/pysal/esda/pull/449">#449:</a> re-up formatting [2026-04-19]</li>
<li><a href="https://github.com/pysal/esda/pull/444">#444:</a> DOC: move to new <code>docs/</code> dir structure</li>
<li><a href="https://github.com/pysal/esda/pull/443">#443:</a> Bump actions/github-script from 8 to 9</li>
<li><a href="https://github.com/pysal/esda/pull/440">#440:</a> Bump codecov/codecov-action from 5 to 6</li>
<li><a href="https://github.com/pysal/esda/pull/441">#441:</a> Bump mamba-org/setup-micromamba from 2 to 3</li>
<li><a href="https://github.com/pysal/esda/pull/438">#438:</a> Fix to calculation of normalized mass moment of inertia (in <code>moment_of_inertia_regions</code> function)</li>
<li><a href="https://github.com/pysal/esda/pull/439">#439:</a> Shape notebook</li>
<li><a href="https://github.com/pysal/esda/issues/437">#437:</a> Normalized mass moment of inertia is incorrect.</li>
<li><a href="https://github.com/pysal/esda/pull/436">#436:</a> BUG: fix the shapely version check</li>
<li><a href="https://github.com/pysal/esda/issues/435">#435:</a> shapely version isolator troubles</li>
<li><a href="https://github.com/pysal/esda/issues/402">#402:</a> update PyPI & <code>upload_package.yml</code> to use trusted publisher</li>
<li><a href="https://github.com/pysal/esda/pull/434">#434:</a> MAINT: Trusted publisher on pypi</li>
<li><a href="https://github.com/pysal/esda/pull/433">#433:</a> TST: geopandas plotting compatibility</li>
<li><a href="https://github.com/pysal/esda/pull/432">#432:</a> Fix for #431: changed incorrect sign for result of length_width_diff</li>
<li><a href="https://github.com/pysal/esda/issues/431">#431:</a> Sign on Length-Width Difference shape measure is backwards.</li>
<li><a href="https://github.com/pysal/esda/pull/420">#420:</a> Inertial shape measures - mass moment of inertia, speed improvements, other fixes</li>
<li><a href="https://github.com/pysal/esda/pull/411">#411:</a> Fix: Replace deprecated 3-argument np.minimum/np.maximum calls for NumPy 2.0+ compatibility</li>
<li><a href="https://github.com/pysal/esda/issues/410">#410:</a> Fix: NumPy 2.0+ compatibility replace deprecated 3-argument np.minimum/np.maximum calls</li>
<li><a href="https://github.com/pysal/esda/pull/419">#419:</a> fix: Add alternative hypothesis support to spatial statistics</li>
<li><a href="https://github.com/pysal/esda/issues/412">#412:</a> Update <code>.gitignore</code> to correctly exclude generated documentation (as opposed to source files)</li>
<li><a href="https://github.com/pysal/esda/pull/418">#418:</a> Fix broken citation link in documentation</li>
</ul>
<p><a name="giddy-v2.3.9"></a></p>
<h3>giddy v2.3.9</h3>
<ul>
<li><a href="https://github.com/pysal/giddy/pull/257">#257:</a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pysal/giddy/pull/256">#256:</a> reup SPEC000 - [2026 05 10]</li>
<li><a href="https://github.com/pysal/giddy/pull/255">#255:</a> DEP: remove upper pin on esda</li>
<li><a href="https://github.com/pysal/giddy/pull/254">#254:</a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pysal/giddy/pull/253">#253:</a> github as trusted publisher on pypi</li>
<li><a href="https://github.com/pysal/giddy/pull/251">#251:</a> remove <code>CHANGELOG.md</code> - no longer used</li>
</ul>
<p><a name="inequality-v1.1.2"></a></p>
<h3>inequality v1.1.2</h3>
<p><a name="pointpats-v2.6.0"></a></p>
<h3>pointpats v2.6.0</h3>
<ul>
<li><a href="https://github.com/pysal/pointpats/issues/205">#205:</a> some <code>numba</code>-enhanced functionality failing tests</li>
<li><a href="https://github.com/pysal/pointpats/pull/206">#206:</a> fix skyums algorithm</li>
<li><a href="https://github.com/pysal/pointpats/pull/204">#204:</a> reup spec000 & some linting [2026-04-15]</li>
<li><a href="https://github.com/pysal/pointpats/pull/201">#201:</a> add ruff configuration - pre-commit</li>
<li><a href="https://github.com/pysal/pointpats/pull/203">#203:</a> rename <code>shapely</code> in <code>environment.yml</code></li>
<li><a href="https://github.com/pysal/pointpats/issues/202">#202:</a> shapely dep wrong in environment file</li>
<li><a href="https://github.com/pysal/pointpats/pull/200">#200:</a> format+lint - <code>docs/user-guide/</code></li>
<li><a href="https://github.com/pysal/pointpats/issues/184">#184:</a> ruff – format & lint <code>pointpats</code></li>
<li><a href="https://github.com/pysal/pointpats/issues/132">#132:</a> distance_statistics.ipynb is corrupted</li>
<li><a href="https://github.com/pysal/pointpats/issues/71">#71:</a> BUG: statistics are now lower case. Notebooks and tutorials need to be updated</li>
<li><a href="https://github.com/pysal/pointpats/issues/100">#100:</a> operands could not be broadcast together with shapes (16,) (18,)</li>
<li><a href="https://github.com/pysal/pointpats/issues/68">#68:</a> PoissonPointProcess - ValueError: Length mismatch</li>
<li><a href="https://github.com/pysal/pointpats/issues/83">#83:</a> Tree types is missing now from Ripley.py</li>
<li><a href="https://github.com/pysal/pointpats/issues/101">#101:</a> cannot import name 'G' from 'pointpats'</li>
<li><a href="https://github.com/pysal/pointpats/issues/113">#113:</a> usage of <code>intensity</code> within <code>random.py</code> distributions?</li>
<li><a href="https://github.com/pysal/pointpats/issues/70">#70:</a> HAS_NUMBA left undefined</li>
<li><a href="https://github.com/pysal/pointpats/pull/199">#199:</a> retire the <code>notebooks/</code> directory</li>
<li><a href="https://github.com/pysal/pointpats/issues/198">#198:</a> time to scrap the <code>notebook/s</code> directory?</li>
<li><a href="https://github.com/pysal/pointpats/pull/196">#196:</a> format+lint - <code>{centography,distance_statistics}.py</code> + previous missed</li>
<li><a href="https://github.com/pysal/pointpats/issues/144">#144:</a> Figure out how to get legend for plot_density</li>
<li><a href="https://github.com/pysal/pointpats/pull/197">#197:</a> Added ContourSet object to return statement in plot_density.py</li>
<li><a href="https://github.com/pysal/pointpats/issues/178">#178:</a> need to adopt trusted publishing for release action</li>
<li><a href="https://github.com/pysal/pointpats/pull/194">#194:</a> swap to <code>FutureWarning</code> for <code>knox()</code> function</li>
<li><a href="https://github.com/pysal/pointpats/issues/189">#189:</a> deprecate old <code>knox</code> function</li>
<li><a href="https://github.com/pysal/pointpats/pull/193">#193:</a> <code>_spacetime_points_to_arrays()</code> - convert assertion to ValueError</li>
<li><a href="https://github.com/pysal/pointpats/issues/190">#190:</a> raise <code>ValueError</code> in <code>_spacetime_points_to_arrays()</code> rather than assertion</li>
<li><a href="https://github.com/pysal/pointpats/pull/192">#192:</a> remove deprecated <code>numpy.row_stack</code> for <code>numpy.vstack</code></li>
<li><a href="https://github.com/pysal/pointpats/pull/191">#191:</a> format+lint - <code>{geometry,kde,pointpattern,process,quadrat_statistics}.py</code></li>
<li><a href="https://github.com/pysal/pointpats/pull/188">#188:</a> format+lint - <code>{random,spacetime,window,util}.py</code></li>
<li><a href="https://github.com/pysal/pointpats/issues/187">#187:</a> docstring for <code>cluster_normal()</code> seems to be copied from <code>cluster_poisson()</code></li>
<li><a href="https://github.com/pysal/pointpats/pull/186">#186:</a> format /tests/*; lint + refactor <code>tests/*.py</code></li>
<li><a href="https://github.com/pysal/pointpats/pull/185">#185:</a> format <code>/tests/*</code>; lint + refactor <code>tests/test_spacetime.py</code></li>
<li><a href="https://github.com/pysal/pointpats/pull/183">#183:</a> REGR: fix GeoDataFrame input to QStatistics</li>
<li><a href="https://github.com/pysal/pointpats/issues/182">#182:</a> REGR: Qstatistics no longer accepts GeoDataFrame</li>
<li><a href="https://github.com/pysal/pointpats/pull/181">#181:</a> consistent <code>rng</code> for <code>cluster_poisson()</code></li>
<li><a href="https://github.com/pysal/pointpats/issues/180">#180:</a> <code>rng</code> not passed into <code>_uniform_circle()</code> within <code>cluster_poisson()</code></li>
<li><a href="https://github.com/pysal/pointpats/pull/179">#179:</a> prepare <code>release_and_publish.yml</code> for trusted publishing</li>
<li><a href="https://github.com/pysal/pointpats/pull/177">#177:</a> adopt dynamic versioning</li>
<li><a href="https://github.com/pysal/pointpats/issues/176">#176:</a> <code>__version__</code> never got updated when we switched to dynamic versioning</li>
</ul>
<p><a name="segregation-v2.5.5"></a></p>
<h3>segregation v2.5.5</h3>
<ul>
<li><a href="https://github.com/pysal/segregation/pull/266">#266:</a> GHA: bump github-script</li>
<li><a href="https://github.com/pysal/segregation/pull/265">#265:</a> Segregation JOSS paper: V1</li>
<li><a href="https://github.com/pysal/segregation/pull/263">#263:</a> respect spec000, add oldest & dev testing</li>
<li><a href="https://github.com/pysal/segregation/issues/262">#262:</a> pinned oldest dependencies & tests against them</li>
<li><a href="https://github.com/pysal/segregation/issues/258">#258:</a> Pandarm obscured</li>
<li><a href="https://github.com/pysal/segregation/pull/260">#260:</a> fix pandarm link on Readme</li>
<li><a href="https://github.com/pysal/segregation/pull/259">#259:</a> MAINT: Trusted publisher on pypi</li>
<li><a href="https://github.com/pysal/segregation/issues/218">#218:</a> update build_docs.yml</li>
<li><a href="https://github.com/pysal/segregation/issues/248">#248:</a> current failing tests (<= Python 3.12 envs)</li>
<li><a href="https://github.com/pysal/segregation/issues/249">#249:</a> CI env dependency problem == Python 3.13</li>
<li><a href="https://github.com/pysal/segregation/pull/255">#255:</a> cleanup <code>pyproject.toml</code> - min Python version etc</li>
<li><a href="https://github.com/pysal/segregation/pull/256">#256:</a> dont use loky backend in tests</li>
<li><a href="https://github.com/pysal/segregation/issues/257">#257:</a> cast to strict ints in inference workflows</li>
<li><a href="https://github.com/pysal/segregation/pull/241">#241:</a> modernize macOS testing</li>
<li><a href="https://github.com/pysal/segregation/pull/243">#243:</a> Add Python 3.14 to CI test matrix (#1382)</li>
<li><a href="https://github.com/pysal/segregation/issues/247">#247:</a> <code>urbanaccess</code> dependency & Python 3.14</li>
<li><a href="https://github.com/pysal/segregation/pull/251">#251:</a> pandana-->pandarm</li>
</ul>
<p><a name="spaghetti-v1.7.6"></a></p>
<h3>spaghetti v1.7.6</h3>
<p><a name="mgwr-v2.2.1"></a></p>
<h3>mgwr v2.2.1</h3>
<p><a name="momepy-v1.0.0"></a></p>
<h3>momepy v1.0.0</h3>
<ul>
<li><a href="https://github.com/pysal/momepy/pull/765">#765:</a> GHA: fix release action</li>
<li><a href="https://github.com/pysal/momepy/issues/739">#739:</a> ValueError when running "corners" and "squareness"</li>
<li><a href="https://github.com/pysal/momepy/pull/763">#763:</a> BUG: raise informative error for MultiPolygon in corner-based shape metrics (#739)</li>
<li><a href="https://github.com/pysal/momepy/pull/764">#764:</a> Bump actions/checkout from 6 to 7</li>
<li><a href="https://github.com/pysal/momepy/pull/762">#762:</a> DOC: update funding</li>
<li><a href="https://github.com/pysal/momepy/issues/761">#761:</a> Images not rendering on landing page</li>
<li><a href="https://github.com/pysal/momepy/pull/760">#760:</a> DOC: fix allowed and expected type docs in graph metrics</li>
<li><a href="https://github.com/pysal/momepy/pull/759">#759:</a> Bump codecov/codecov-action from 6 to 7</li>
<li><a href="https://github.com/pysal/momepy/pull/758">#758:</a> REF: refactor Streetscape to increase its performance</li>
<li><a href="https://github.com/pysal/momepy/pull/757">#757:</a> ENH: support generation of proximity bands</li>
<li><a href="https://github.com/pysal/momepy/pull/756">#756:</a> REF: simplify implementation of enclosures</li>
<li><a href="https://github.com/pysal/momepy/pull/755">#755:</a> GHA: use dedicated docs env</li>
<li><a href="https://github.com/pysal/momepy/pull/754">#754:</a> CI: remove iprogress</li>
<li><a href="https://github.com/pysal/momepy/pull/753">#753:</a> Reup spec000 [2026-04-25]</li>
<li><a href="https://github.com/pysal/momepy/issues/752">#752:</a> simplify by default in <code>*_tessellation()</code></li>
<li><a href="https://github.com/pysal/momepy/pull/686">#686:</a> ENH: Added Cellular Automata-based Enclosed Tessellation</li>
<li><a href="https://github.com/pysal/momepy/pull/751">#751:</a> Bump actions/github-script from 8 to 9</li>
<li><a href="https://github.com/pysal/momepy/pull/750">#750:</a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pysal/momepy/pull/749">#749:</a> Bump mamba-org/setup-micromamba from 2 to 3</li>
<li><a href="https://github.com/pysal/momepy/pull/748">#748:</a> Bump codecov/codecov-action from 5 to 6</li>
<li><a href="https://github.com/pysal/momepy/pull/747">#747:</a> correct markdown link syntax in README</li>
<li><a href="https://github.com/pysal/momepy/pull/746">#746:</a> DOC: fix the versioning switcher</li>
<li><a href="https://github.com/pysal/momepy/pull/745">#745:</a> DOC: switch theme to new PySAL standard</li>
<li><a href="https://github.com/pysal/momepy/pull/744">#744:</a> DOC: fix docstring of neighbors</li>
<li><a href="https://github.com/pysal/momepy/pull/741">#741:</a> REF: refactor elongation and simplify its docstring</li>
<li><a href="https://github.com/pysal/momepy/pull/742">#742:</a> DOC: fix convexity reference</li>
<li><a href="https://github.com/pysal/momepy/issues/740">#740:</a> Wrong citations in the documentation</li>
<li><a href="https://github.com/pysal/momepy/pull/738">#738:</a> adapt <code>release_to_pypi.yml</code> for trusted publishing</li>
</ul>
<p><a name="spglm-v1.1.0"></a></p>
<h3>spglm v1.1.0</h3>
<p><a name="spint-v1.1.0"></a></p>
<h3>spint v1.1.0</h3>
<ul>
<li><a href="https://github.com/pysal/spint/pull/55">#55:</a> add release action - non-trusted publisher</li>
<li><a href="https://github.com/pysal/spint/pull/54">#54:</a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pysal/spint/pull/53">#53:</a> README cleanup and report code coverage</li>
<li><a href="https://github.com/pysal/spint/pull/52">#52:</a> migrate from <code>unittest</code> to <code>pytest</code></li>
<li><a href="https://github.com/pysal/spint/pull/51">#51:</a> Lint notebooks & add notebooks dir to pre-commit</li>
<li><a href="https://github.com/pysal/spint/pull/50">#50:</a> Revise README with new badges and formatting</li>
<li><a href="https://github.com/pysal/spint/pull/47">#47:</a> proper linting of <code>spint</code> codebase</li>
<li><a href="https://github.com/pysal/spint/pull/46">#46:</a> format remaining notebooks Python 2.x syntax</li>
<li><a href="https://github.com/pysal/spint/pull/45">#45:</a> format <code>spint/</code> and some of notebooks</li>
<li><a href="https://github.com/pysal/spint/pull/44">#44:</a> Add Python 3.1{3,4} support; get testing green</li>
<li><a href="https://github.com/pysal/spint/issues/40">#40:</a> working out testing failures</li>
<li><a href="https://github.com/pysal/spint/issues/41">#41:</a> modernize infra - <code>pyproject.toml</code> [2024-07-08]</li>
<li><a href="https://github.com/pysal/spint/issues/37">#37:</a> update infra – pyproject.toml, setuptools_scm, ruff, etc.</li>
<li><a href="https://github.com/pysal/spint/issues/42">#42:</a> support Python 3.12 - add to CI matrix</li>
<li><a href="https://github.com/pysal/spint/pull/43">#43:</a> Update infra, supported Python, GHA, etc.</li>
<li><a href="https://github.com/pysal/spint/issues/36">#36:</a> rename <code>master</code> to <code>main</code></li>
<li><a href="https://github.com/pysal/spint/issues/39">#39:</a> permissions for the steering council</li>
</ul>
<p><a name="spml-v0.2.2"></a></p>
<h3>spml v0.2.2</h3>
<ul>
<li><a href="https://github.com/pysal/spml/pull/130">#130:</a> spatialml -> spml</li>
<li><a href="https://github.com/pysal/spml/pull/129">#129:</a> TST: ignore deprecation warning solved by joblib in upstream</li>
<li><a href="https://github.com/pysal/spml/pull/128">#128:</a> Bump actions/checkout from 6 to 7 in the github-actions group</li>
<li><a href="https://github.com/pysal/spml/pull/91">#91:</a> Add documentation contribution guide to <code>CONTRIBUTING.md</code></li>
<li><a href="https://github.com/pysal/spml/pull/87">#87:</a> Add examples for GWLinearRegression and GWLogisticRegression</li>
<li><a href="https://github.com/pysal/spml/pull/127">#127:</a> rename package to spatialml</li>
<li><a href="https://github.com/pysal/spml/pull/126">#126:</a> Bump codecov/codecov-action from 6 to 7 in the github-actions group</li>
<li><a href="https://github.com/pysal/spml/pull/124">#124:</a> DOC: update examples for sklearn 1.9</li>
<li><a href="https://github.com/pysal/spml/pull/122">#122:</a> TST: ignore warnings about OOB scores</li>
<li><a href="https://github.com/pysal/spml/pull/121">#121:</a> GHA: use dedicated docs environment</li>
<li><a href="https://github.com/pysal/spml/pull/120">#120:</a> TST: use linear models in tests where possible for speed up</li>
<li><a href="https://github.com/pysal/spml/pull/114">#114:</a> Add validation for bandwidth and kernel parameters</li>
<li><a href="https://github.com/pysal/spml/pull/118">#118:</a> Add score_ attribute based on pooled local model performance (BaseClassifier)</li>
<li><a href="https://github.com/pysal/spml/pull/119">#119:</a> reup SPEC000 - 2026-04-18</li>
<li><a href="https://github.com/pysal/spml/pull/117">#117:</a> Bump actions/github-script from 8 to 9 in the github-actions group</li>
<li><a href="https://github.com/pysal/spml/pull/115">#115:</a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pysal/spml/pull/113">#113:</a> ENH: Added validation for bandwidth and kernel parameters in GWR models</li>
<li><a href="https://github.com/pysal/spml/pull/112">#112:</a> ENH: expose local_metric on regressors as well</li>
<li><a href="https://github.com/pysal/spml/pull/111">#111:</a> open-ended license</li>
<li><a href="https://github.com/pysal/spml/pull/110">#110:</a> DOC: update config</li>
<li><a href="https://github.com/pysal/spml/pull/109">#109:</a> Bump the github-actions group with 2 updates</li>
<li><a href="https://github.com/pysal/spml/pull/107">#107:</a> source version info in docs from <code>packaging</code></li>
<li><a href="https://github.com/pysal/spml/pull/108">#108:</a> cancel doc builds in progress</li>
<li><a href="https://github.com/pysal/spml/pull/106">#106:</a> ENH: expose handling of coplanar points</li>
<li><a href="https://github.com/pysal/spml/pull/105">#105:</a> DOC: link to source and new libpysal location</li>
<li><a href="https://github.com/pysal/spml/pull/104">#104:</a> DOC: use markdown instead of RST in references</li>
<li><a href="https://github.com/pysal/spml/issues/103">#103:</a> [GSoC 2026] Proposal: Geographically Weighted Matrix Decomposition (GWPCA) with scikit-learn compatibility</li>
<li><a href="https://github.com/pysal/spml/pull/102">#102:</a> REF: rely on sklearn wrappers around joblib Parallel</li>
<li><a href="https://github.com/pysal/spml/pull/94">#94:</a> Fix inconsistent bandwidth validation for numpy scalar and non-scalar inputs</li>
<li><a href="https://github.com/pysal/spml/pull/101">#101:</a> BUG: fix batch fitting with non-default index</li>
<li><a href="https://github.com/pysal/spml/pull/100">#100:</a> compute information criteria only for linear models</li>
<li><a href="https://github.com/pysal/spml/issues/92">#92:</a> BUG: inconsistent bandwidth validation for numpy scalar and non-scalar inputs</li>
<li><a href="https://github.com/pysal/spml/pull/97">#97:</a> Added pooled scoring and robust aggregation</li>
<li><a href="https://github.com/pysal/spml/pull/99">#99:</a> Refactor: Centralize local model initialization in _BaseModel</li>
<li><a href="https://github.com/pysal/spml/issues/96">#96:</a> Add Spatial Consistency and Convergence Tests for Kernels</li>
<li><a href="https://github.com/pysal/spml/pull/98">#98:</a> Bump actions/upload-artifact from 6 to 7 in the github-actions group</li>
<li><a href="https://github.com/pysal/spml/issues/95">#95:</a> Modularize matrix operations and leverage calculation</li>
<li><a href="https://github.com/pysal/spml/issues/93">#93:</a> [BUG] Incorrect use of oob_score parameter in GWRandomForest models</li>
<li><a href="https://github.com/pysal/spml/pull/86">#86:</a> BUG: fix failure of BandwidthSearch in case of an invariant y</li>
<li><a href="https://github.com/pysal/spml/issues/84">#84:</a> BUG: bandwidth search fails if y is all True</li>
<li><a href="https://github.com/pysal/spml/pull/89">#89:</a> Remove outdated TODO block for performance metrics in parallel validation test</li>
<li><a href="https://github.com/pysal/spml/issues/88">#88:</a> Clarification: Equality vs Tolerance for Parallel Metric Validation Tests</li>
<li><a href="https://github.com/pysal/spml/pull/82">#82:</a> Expose local_class_support_ as fitted attribute</li>
<li><a href="https://github.com/pysal/spml/pull/83">#83:</a> Add structured fit-time input validation</li>
<li><a href="https://github.com/pysal/spml/pull/81">#81:</a> FMT: Ruff format ipynb files</li>
<li><a href="https://github.com/pysal/spml/issues/80">#80:</a> Missing ruff formats on ipynb files</li>
<li><a href="https://github.com/pysal/spml/pull/77">#77:</a> Add scikit-learn metadata routing support to BaseRegressor</li>
<li><a href="https://github.com/pysal/spml/pull/78">#78:</a> DOC: fix outdated BaseRegressor prediction docstring</li>
</ul>
<p><a name="spreg-v1.9.0"></a></p>
<h3>spreg v1.9.0</h3>
<ul>
<li><a href="https://github.com/pysal/spreg/pull/192">#192:</a> Adding new panels module</li>
</ul>
<p><a name="tobler-v0.14.0"></a></p>
<h3>tobler v0.14.0</h3>
<ul>
<li><a href="https://github.com/pysal/tobler/pull/280">#280:</a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pysal/tobler/pull/274">#274:</a> strict linting for code health</li>
<li><a href="https://github.com/pysal/tobler/pull/268">#268:</a> suggestion <code>miniforge</code>, not Anaconda</li>
<li><a href="https://github.com/pysal/tobler/pull/276">#276:</a> fix broken docs build action</li>
<li><a href="https://github.com/pysal/tobler/issues/275">#275:</a> broken docs recipe</li>
<li><a href="https://github.com/pysal/tobler/pull/273">#273:</a> catch several more expected warnings in CI</li>
<li><a href="https://github.com/pysal/tobler/pull/272">#272:</a> Delete <code>.gitattributes</code> -- no longer using <code>versioneer</code></li>
<li><a href="https://github.com/pysal/tobler/pull/271">#271:</a> Format and lint <code>docs/*</code> -- check during <code>pre-commit</code></li>
<li><a href="https://github.com/pysal/tobler/pull/270">#270:</a> Format and lint <code>tobler/tests/*</code></li>
<li><a href="https://github.com/pysal/tobler/pull/269">#269:</a> clean up actions workflow yamls - run testing CI only on <code>main</code> push</li>
<li><a href="https://github.com/pysal/tobler/pull/261">#261:</a> migrate docs</li>
<li><a href="https://github.com/pysal/tobler/pull/266">#266:</a> Setup precommit & re-lint + format codebase</li>
<li><a href="https://github.com/pysal/tobler/pull/265">#265:</a> [maint] fix package name in license</li>
<li><a href="https://github.com/pysal/tobler/pull/267">#267:</a> fewer maps in dotdensity example</li>
<li><a href="https://github.com/pysal/tobler/pull/263">#263:</a> add pixel_values in notebook</li>
<li><a href="https://github.com/pysal/tobler/issues/262">#262:</a> Total area population not matching original population after interpolation</li>
<li><a href="https://github.com/pysal/tobler/pull/264">#264:</a> new structure of gh-pages</li>
<li><a href="https://github.com/pysal/tobler/pull/260">#260:</a> robust nan_handle</li>
<li><a href="https://github.com/pysal/tobler/issues/167">#167:</a> Issue with the version in docs</li>
<li><a href="https://github.com/pysal/tobler/pull/247">#247:</a> [ENH] add pointpattern functions</li>
<li><a href="https://github.com/pysal/tobler/pull/259">#259:</a> MAINT: Trusted publisher for pypi</li>
</ul>
<p><a name="mapclassify-v2.10.0"></a></p>
<h3>mapclassify v2.10.0</h3>
<p><a name="splot-v1.1.7"></a></p>
<h3>splot v1.1.7</h3>
<p><a name="spopt-v0.7.0"></a></p>
<h3>spopt v0.7.0</h3>
<p><a name="pysal-v26.07rc1"></a></p>
<h3>pysal v26.07rc1</h3>
<ul>
<li><a href="https://github.com/pysal/pysal/pull/1441">#1441:</a> Bump actions/setup-python from 6 to 7</li>
<li><a href="https://github.com/pysal/pysal/pull/1440">#1440:</a> Bump actions/checkout from 6 to 7</li>
<li><a href="https://github.com/pysal/pysal/pull/1438">#1438:</a> Bump codecov/codecov-action from 6 to 7</li>
<li><a href="https://github.com/pysal/pysal/issues/1436">#1436:</a> failure to install development (<code>giddy</code>/<code>esda</code>) in <code>ubuntu-latest, ci/314-dev.yaml</code></li>
<li><a href="https://github.com/pysal/pysal/pull/1434">#1434:</a> Bump codecov/codecov-action from 5 to 6</li>
<li><a href="https://github.com/pysal/pysal/pull/1433">#1433:</a> Bump mamba-org/setup-micromamba from 2 to 3</li>
<li><a href="https://github.com/pysal/pysal/issues/1375">#1375:</a> Adopt spec 0 across pysal</li>
<li><a href="https://github.com/pysal/pysal/pull/1435">#1435:</a> minor docs cleanup</li>
<li><a href="https://github.com/pysal/pysal/issues/1324">#1324:</a> update docs & README</li>
<li><a href="https://github.com/pysal/pysal/issues/1339">#1339:</a> testing against oldest dependencies across federation</li>
<li><a href="https://github.com/pysal/pysal/issues/1277">#1277:</a> distutils will be deprecated in Python 3.12</li>
<li><a href="https://github.com/pysal/pysal/issues/1338">#1338:</a> standardize CI environment naming conventions</li>
<li><a href="https://github.com/pysal/pysal/issues/1340">#1340:</a> testing against Python 3.12 across federation</li>
<li><a href="https://github.com/pysal/pysal/issues/1216">#1216:</a> Consider using SCVersioning for docs</li>
<li><a href="https://github.com/pysal/pysal/issues/1282">#1282:</a> consider new theme and GHA for versioned docs</li>
<li><a href="https://github.com/pysal/pysal/issues/1298">#1298:</a> add Apple silicon CI envs across ecosystem</li>
<li><a href="https://github.com/pysal/pysal/issues/1372">#1372:</a> Testing against Python 3.13 across federation</li>
<li><a href="https://github.com/pysal/pysal/issues/1373">#1373:</a> remove testing against Python 3.10 across federation</li>
<li><a href="https://github.com/pysal/pysal/issues/1380">#1380:</a> CI: retire macOS-13 for macOS-15-intel</li>
<li><a href="https://github.com/pysal/pysal/issues/1382">#1382:</a> CI: Testing against Python 3.14 across federation</li>
<li><a href="https://github.com/pysal/pysal/pull/1383">#1383:</a> Modernize supported Python, etc</li>
<li><a href="https://github.com/pysal/pysal/pull/1431">#1431:</a> GHA: fix the release action</li>
<li><a href="https://github.com/pysal/pysal/issues/1430">#1430:</a> remove <code>publish.yml</code>?</li>
<li><a href="https://github.com/pysal/pysal/pull/1427">#1427:</a> REF: support older import style for lib</li>
<li><a href="https://github.com/pysal/pysal/pull/1403">#1403:</a> Add structured warnings to requires decorator</li>
<li><a href="https://github.com/pysal/pysal/issues/1356">#1356:</a> CI: pin fiona</li>
<li><a href="https://github.com/pysal/pysal/pull/1414">#1414:</a> Fix typo in README</li>
<li><a href="https://github.com/pysal/pysal/issues/1421">#1421:</a> Automate updating PySAL subpackage dependencies in pyproject.toml using release_info.py</li>
<li><a href="https://github.com/pysal/pysal/pull/1422">#1422:</a> ENH: Automate updating <code>pyproject.toml</code> dependencies using <code>release_info.py</code></li>
<li><a href="https://github.com/pysal/pysal/issues/1420">#1420:</a> [DOC] Add user guide and example for GWLinearRegression and GWLogisticRegression</li>
<li><a href="https://github.com/pysal/pysal/pull/1419">#1419:</a> Add test for _installed_version with non-existent package</li>
<li><a href="https://github.com/pysal/pysal/issues/1416">#1416:</a> Add type hints to pysal/base.py and modernize version checking with importlib.metadata</li>
<li><a href="https://github.com/pysal/pysal/issues/1417">#1417:</a> GSoC project sizes.</li>
<li><a href="https://github.com/pysal/pysal/issues/1418">#1418:</a> Add return value to Versions.check() method and comprehensive tests</li>
<li><a href="https://github.com/pysal/pysal/issues/1412">#1412:</a> Build Docs Action is Failing</li>
<li><a href="https://github.com/pysal/pysal/pull/1413">#1413:</a> Add lazy_loader when running building docs action</li>
<li><a href="https://github.com/pysal/pysal/pull/1404">#1404:</a> Tooling updated for 26.01rc1</li>
<li><a href="https://github.com/pysal/pysal/pull/1411">#1411:</a> Drop 3.10 testing</li>
</ul>
<p><a name="contributors"></a></p>
<h2>Contributors</h2>
<p>Many thanks to all of the following individuals who contributed to this release:</p>
<ul>
<li>Ashish Raj</li>
<li>Dylan</li>
<li>Eli Knaap</li>
<li>Elliott Sales De Andrade</li>
<li>James Gaboardi</li>
<li>Jigyasa</li>
<li>Knaaptime</li>
<li>Lee Hachadoorian</li>
<li>Levi John Wolf</li>
<li>Martin Fleischmann</li>
<li>Pedro Amaral</li>
<li>Philip Stephens</li>
<li>Ps098</li>
<li>R Virinchi</li>
<li>Ramji Purwar</li>
<li>Renan Xavier Cortes</li>
<li>Serge Rey</li>
<li>Shubham Singh</li>
<li>Vincent Gao</li>
<li>Wei Kang</li>
<li>Yuta Sato</li>
</ul>