libpysal icon indicating copy to clipboard operation
libpysal copied to clipboard

items for deprecation

Open sjsrey opened this issue 3 years ago • 3 comments

Deprecations identified in the 2022-10-28 Sprint

by module

weights
  • [ ] keep everything in distance & contiguity, but reorganize the voronoi, delaunay, gabriel, and relative neighborhood into a triangulations.py
  • [ ] move wsp out of spint
  • [ ] move spint weights into spint itself, since no one else has used it since then
  • [ ] move perimeter-weighted contiguity into contiguity
  • [ ] move some stuff from momepy
  • [ ] deprecate adjtools.py

raster

  • [ ] migrate da2W/da2WSP into W.from_da() methods instead, so deprecate the functions.

util & user

  • [ ] WSP2W gets deprecated in favour of WSP.to_w()
  • [ ] full2W gets deprecated in favour of a W.from_dense()
  • [ ] full() gets deprecated in favour of a W.to_dense()
  • [ ] fill_diagonal() is retained
  • [ ] keep higher_order, shimbel gets re-written to use csgraph.floydwarshall
  • [ ] comb, remap_ids, get_ids, get_points_array_from_shapefile gets deprecated
  • [ ] consolidate higher_order, order, and heigher_order_sp to one function
  • [ ] min_threshold_distance move to cg
  • [ ] lat2SW, hexlat2W moves to same module as lat2W
  • [ ] min_threshold_dist, build_lattice_shapefile, spw_from_gal, w_local_cluster, spw_from_gal deprecated
  • [ ] attach_islands, nonplanar, fuzzy is kept
  • [ ] neighbor_equality should be enhanced, made to recognize the difference between "equality" and "isomorphism"
    • [ ] two weights are equal when their matrix representations are the same (i.e. they're ordered the same)
    • [ ] two weights are isomorphic when the ids are equal, links are present in both, and weights are equal.
  • [ ] the rest of weights should be kept (w_sets, lag_spatila/categorical ,etc. )

cg

  • [ ] all of sphere will be deprecated
  • [ ] all of shapes will get deprecated
  • [ ] all of standalone will get deprecated
  • [ ] locators are already deprecated and should be removed
  • [ ] kdtree should be deprecated, point users to BallTree with haversine metric as an alternative to Arc_KDTree
  • [ ] deprecate ops
  • [ ] deprecate shapely_ext
  • [ ] deprecate segmentLocator

io

  • [ ] deprecate all io functionality not reading weights
  • [ ] keep weights readers, wrap into a W.from_file() method that works kind of like the existing implementation

examples (see #485)

  • [x] keep the module
  • [x] allow for get_path() to list remote paths, too
  • [x] enhance to only download the requested data

by class

W see #493

  • [ ] to/from_file should stay
  • [ ] to_wsp() stays, build from_wsp()
  • [ ] to/from_networkx() stays
  • [ ] make _build_sparse() public as to_sparse, add a from_sparse, and keep .sparse
  • [ ] keep n_components, all the math/stats on the graph
  • [ ] rename islands to isolates to match networkx
  • [ ] deprecate id2i, from_shapefile, __set/get_id_order, id_order, id_order set, neighbor_offsets,
  • [ ] turn get/set_transform() and transform itself into a single transform method that returns a copy() (at new geograph module)
  • [ ] re-write iter to remove _id_order and instead just use dictionary iteration
  • [ ] keep remap_ids
  • [ ] keep asymmetry
  • [ ] keep symmetrize, but fix the docstring
  • [ ] deprecate full, move to to/from_dense and a .dense attribute
  • [ ] deprecate set_shapefile()
  • [x] merge plot with splot's weights plotter... keep W.plot()'s flexibility, but adapt to splot's performance

sjsrey avatar Oct 28 '22 17:10 sjsrey

xref #477 #427

jGaboardi avatar Oct 28 '22 17:10 jGaboardi

We might think about moving some of these into individual tickets (maybe by module) to facilitate collaboration.

sjsrey avatar Oct 28 '22 17:10 sjsrey