Subject: CVS commit: pkgsrc/math/py-networkx
From: Adam Ciarcinski
Date: 2023-05-09 10:26:44
Message id: 20230509082644.C21BFFA87@cvs.NetBSD.org

Log Message:
py-networkx: updated to 3.1

NetworkX 3.1

- Minor bug-fixes and speed-ups
- Improvements to plugin based backend infrastructure
- Minor documentation improvements
- Improved test coverage
- Last release supporting Python 3.8
- Stopped building PDF version of docs
- Use Ruff for linting

NetworkX 3.0

- Better syncing between G._succ and G._adj for directed G.
  And slightly better speed from all the core adjacency data structures.
  G.adj is now a cached_property while still having the cache reset when
  G._adj is set to a new dict (which doesn't happen very often).
  Note: We have always assumed that G._succ and G._adj point to the same
  object. But we did not enforce it well. If you have somehow worked
  around our attempts and are relying on these private attributes being
  allowed to be different from each other due to loopholes in our previous
  code, you will have to look for other loopholes in our new code
  (or subclass DiGraph to explicitly allow this).
- If your code sets G._succ or G._adj to new dictionary-like objects, you no longer
  have to set them both. Setting either will ensure the other is set as well.
  And the cached_properties G.adj and G.succ will be rest accordingly too.
- If you use the presence of the attribute `_adj` as a criteria for the object
  being a Graph instance, that code may need updating. The graph classes
  themselves now have an attribute `_adj`. So, it is possible that whatever you
  are checking might be a class rather than an instance. We suggest you check
  for attribute `_adj` to verify it is like a NetworkX graph object or type and
  then `type(obj) is type` to check if it is a class.
- We have added an `experimental plugin feature \ 
<https://github.com/networkx/networkx/pull/6000>`_,
  which let users choose alternate backends like GraphBLAS, CuGraph for \ 
computation. This is an
  opt-in feature and may change in future releases.
- Improved integration with the general `Scientific Python ecosystem \ 
<https://networkx.org/documentation/latest/release/migration_guide_from_2.x_to_3.0.html#improved-integration-with-scientific-python>`_.
- New drawing feature (module and tests) from NetworkX graphs to the TikZ \ 
library of TeX/LaTeX.
  The basic interface is ``nx.to_latex(G, pos, **options)`` to construct a \ 
string of latex code or
  ``nx.write_latex(G, filename, as_document=True, **options)`` to write the \ 
string to a file.
- Added an improved subgraph isomorphism algorithm called VF2++.

Files:
RevisionActionfile
1.36modifypkgsrc/math/py-networkx/Makefile
1.20modifypkgsrc/math/py-networkx/PLIST
1.20modifypkgsrc/math/py-networkx/distinfo
1.4modifypkgsrc/math/py-networkx/patches/patch-setup.py