Releases: networkx/networkx
Releases Β· networkx/networkx
NetworkX 3.3
networkx 3.3
We're happy to announce the release of networkx 3.3!
API Changes
- Disallow negative number of nodes in
complete_multipartite_graph
(#7057). - DEP: Deprecate the all_triplets one-liner (#7060).
- [A-star] Added expansion pruning via cutoff if cutoff is provided (#7073).
- Make HITS raise exceptions consistent with power iterations (#7084).
- DEP: Deprecate random_triad (#7061).
- Added feature modular graph product (#7227).
- ENH: Speed up common/non_neighbors by using _adj dict operations (#7244).
- Deprecate the
create
argument ofnonisomorphic_trees
(#7316). - Improve total_spanning_tree_weight (#7100).
- Update init.py (#7320).
- add **kwargs to traveling_salesman_problem (#7371).
Enhancements
- Add Tadpole graph (#6999).
- [A-star] Added expansion pruning via cutoff if cutoff is provided (#7073).
- Implementation of
$S^1$ model (#6858). - [Feat] Random expanders utilities (#6761).
- Compare graphs for generator functions when running tests with backend (#7066).
- Add Kirchhoff index / Effective graph resistance (#6926).
- Changed return types of shortest path methods to improve consistency (#6584).
- New PR for Fixes minimal d-separator function failing to handle cases where no d-separators exist (#7019).
- ENH : Provide non-normalized and normalized directed laplacian matrix calculation (#7199).
- feat: drop the use of node attribute "first_nbr" in PlanarEmbedding (#7202).
- Add functions to compute Schultz and Gutman Index (#3709).
- Divisive community algorithms (#5830).
- Added feature modular graph product (#7227).
- ENH : added
sort_neighbors
to all functions indepth_first_search.py
(#7196). - New graph generator for the Kneser graph (#7146).
- Draw MultiDiGraph edges and labels qa7008 (#7010).
- Use github actions to run a comparison benchmark (#7268).
- BFS layout implementation (#5179).
- Add
max_level=
argument tolouvain_communities
to limit macro-iterations (#6909). - Review and update
@nx._dispatchable
usage since 3.2.1 (#7302). - Transmogrify
_dispatchable
objects into functions (#7298). - fix: make
PlanarEmbedding.copy()
useadd_edges_from()
from parent (closes #7223) (#7224). - Allow seed of np.random instance to exactly produce arbitrarily large integers (#6869).
- Improve total_spanning_tree_weight (#7100).
- add seed to
nx.generate_random_paths
(#7332). - Allow backends to implement
should_run
(#7257). - Adding tree broadcasting algorithm in a new module (#6928).
- Option to include initial labels in
weisfeiler_lehman_subgraph_hashes
(#6601). - Add better error message when trying to get edge that is not present (#7245).
- Make
is_negatively_weighted
dispatchable (#7352). - Add option to hide or show tick labels (#6018).
- ENH: Cache graphs objects when converting to a backend (#7345).
Bug Fixes
- Fix listing of release notes on Releases page (#7030).
- Fix syntax warning from bad escape sequence (#7034).
- Fix triangles to avoid using
is
to compare nodes (#7041). - Fix error message for
nx.mycielski_graph(0)
(#7056). - Disallow negative number of nodes in
complete_multipartite_graph
(#7057). - Handle edge cases for greedy_modularity_communities (#6973).
- FIX: Match the doc description while copying over data (#7092).
- fix: Include singleton/trivial paths in all_simple_paths & other functions (#6694).
- Dinitz correction (#6968).
- Modify GML test to fix invalid octal character warning (#7159).
- Fix random_spanning_tree() for single node and empty graphs (#7211).
- PlanarEmbedding.remove_edge() now updates removed edge's neighbors (#6798).
- add seed to graph creation (#7241).
- add seed to tests of fast_label_propatation_communities (#7242).
- Fix rich_club_coefficient() for single node and empty graphs (#7212).
- Fix minimum_spanning_arborescence regression (#7280).
- Move arrowstyle input munging after intput validation (#7293).
- Fix empty GraphML attribute is not parsed (#7319).
- Add new test result to
test_asadpour_tsp
and changelinprog
method (#7335). - Fix custom weight attribute for Mehlhorn (#6681).
Documentation
- Update release process (#7029).
- Update convert_matrix.py (#7018).
- fix extendability function name in bipartite.rst (#7042).
- Minor doc cleanups to remove doc build warnings (#7048).
- DOC: Add example to generic_bfs_edges to demonstrate the
neighbors
param (#7072). - Hierarchical clustering layout gallery example (#7058).
- Fixed an error in the documentation of the katz centrality (#6294).
- Create 3d_rotation_anime.py (#7025).
- DOC: Add docstrings to filter view functions (#7086).
- DOC: Add docstrings to Filter mapping views (#7075).
- DOCS: Fix internal links to other functions in isomorphvf2 (#6706).
- added note for the triangle inequality case in TSP (#6995).
- Add note about importance of testing to contributor guide (#7103).
- Proposal to add centrality overview to mentored projects (#7104).
- Improve documentation of Component Algorithms (#5473).
- Add dot io to readwrite (#5061).
- Add Python versions to release notes (#7113).
- DOC: Turn on inline plots in graph generators docstrings (#6401).
- Fix duplicate numbering in contributor guide (#7116).
- DOC: remove unnecessary 'or' in planted_partition_graph (#7115).
- DOC: Link methods in functions to base Graph methods/properties (#7125).
- Connect docs to doc_string for total_spanning_tree_weight (#7098).
- Image (3D RGB data) segmentation by spectral clustering with 3D illustrations (#7040).
- update triadic_census documentation for undirected graphs - issue 4386 ([#7141](https://github.com/ne...
NetworkX 3.3rc0
What's Changed
- Update release process by @jarrodmillman in #7029
- Fix listing of release notes on Releases page by @ottojo in #7030
- Fix syntax warning from bad escape sequence. by @rossbar in #7034
- Drop Python 3.9 support by @jarrodmillman in #7028
- Fix triangles to avoid using
is
to compare nodes by @dschult in #7041 - fix: Explicitly check for None/False in edge_attr during import from np by @j6k4m8 in #6825
- Update convert_matrix.py by @akshayamadhuri in #7018
- fix extendability function name in bipartite.rst by @dschult in #7042
- Minor doc cleanups to remove doc build warnings by @rossbar in #7048
- Add Tadpole graph in #6999
- Add favicon by @jarrodmillman in #7043
- Remove unused code resistance_distance in #7053
- Fix error message for
nx.mycielski_graph(0)
by @eriknw in #7056 - Fix names of small graphs by @eriknw in #7055
- Disallow negative number of nodes in
complete_multipartite_graph
by @eriknw in #7057 - Improve error messages for misconfigured backend treatment by @dschult in #7062
- DOC: Add example to generic_bfs_edges to demonstrate the
neighbors
param by @rossbar in #7072 - MAINT: Fixup union exception message. by @rossbar in #7071
- MAINT: Minor touchups to tadpole and lollipop graph by @rossbar in #7049
- Add
@not_implemented_for("directed")
tonumber_connected_components
by @eriknw in #7074 - remove unused code in #7076
- DEP: Deprecate the all_triplets one-liner. by @rossbar in #7060
- Minor touchups to the beamsearch module by @rossbar in #7059
- Hierarchical clustering layout gallery example by @rossbar in #7058
- Fixed an error in the documentation of the katz centrality by @BrunoBaldissera in #6294
- Fix annoying split strings on same line by @eriknw in #7079
- Update dispatch decorator for
hits
to use"weight"
edge weight by @eriknw in #7081 - Remove nbconvert upper pin (revert #6984) by @jarrodmillman in #7083
- Add a step to CI to check for warnings at import time. by @rossbar in #7077
- [A-star] Added expansion pruning via cutoff if cutoff is provided by @anders-rydbirk in #7073
- Create 3d_rotation_anime.py by @lobpcg in #7025
- Make HITS raise exceptions consistent with power iterations by @eriknw in #7084
- Handle edge cases for greedy_modularity_communities by @NeilBotelho in #6973
- DOC: Add docstrings to filter view functions by @akshayamadhuri in #7086
- DOC: Add docstrings to Filter mapping views by @akshayamadhuri in #7075
- Added few tests for /generators/duplication.py and /generators/geomet⦠by @karthikchiru12 in #6976
- Test on Python 3.13-dev by @jarrodmillman in #7096
- DEP: Deprecate random_triad by @rossbar in #7061
- DOCS: Fix internal links to other functions in isomorphvf2 by @MridulS in #6706
- FIX: Match the doc description while copying over data by @MridulS in #7092
- added note for the triangle inequality case in TSP by @Schefflera-Arboricola in #6995
- Add note about importance of testing to contributor guide by @rossbar in #7103
- Proposal to add centrality overview to mentored projects. by @rossbar in #7104
- Improve documentation of Component Algorithms by @dtekinoglu in #5473
- Changed arguments list of GraphMLWriterLxml.dump() by @patrick-nicodemus in #6261
- Add dot io to readwrite by @rossbar in #5061
-
write_graphml
: Small fix for object type description onTypeError
exception by @nelsonaloysio in #7109 - Add Python versions to release notes by @jarrodmillman in #7113
- DOC: Turn on inline plots in graph generators docstrings by @paulitapb in #6401
- Fix duplicate numbering in contributor guide by @DanielEgdal in #7116
- updated functions in
core.py
by @Schefflera-Arboricola in #7027 - DOC: remove unnecessary 'or' in planted_partition_graph by @DanielEgdal in #7115
- DOC: Link methods in functions to base Graph methods/properties by @MridulS in #7125
- fix: Include singleton/trivial paths in all_simple_paths & other functions by @plammens in #6694
- label check on push and change check name by @dschult in #7111
- DEP : adding
not_implemented_for("multigraphβ)
tok_core
,k_shell
,k_crust
andk_corona
by @Schefflera-Arboricola in #7121 - Add label check when pull request is edited instead of push by @dschult in #7134
- Add label workflow pull_request type synchronize and echo message by @dschult in #7135
- Connect docs to doc_string for total_spanning_tree_weight in #7098
- Implementation of
$S^1$ model by @robertjankowski in #6858 - [Feat] Random expanders utilities by @fcrozatier in #6761
- Image (3D RGB data) segmentation by spectral clustering with 3D illustrations by @lobpcg in #7040
- update triadic_census documentation for undirected graphs - issue 4386 by @LuigiSciarretta in #7141
- added 3d and animation to plot_greedy_coloring.py by @lobpcg in #7090
- Dinitz correction by @YVWX in #6968
- Compare graphs for generator functions when running tests with backend by @eriknw in #7066
- Add Kirchhoff index / Effective graph resistance in #6926
- DOC: fix URL econded links and doc references by @MridulS in #7152
- Changed return types of shortest path methods to improve consistency by @navyagarwal in #6584
- adding test coverage for isomorphism when using digraphs by @ImHereForTheCookies in #6417
- Remove usage of
__networkx_plugin__
(use__networkx_backend__
instead) by @eriknw in #7157 - DOC: consistent spelling of neighbor and rename vars by @MridulS in #7162
- DOC: add reference to fast_label_propagation_communities by @MridulS in #7167
- MAINT: use ruff format instead of black by @MridulS in #7160
- updated See also sec of argmap class by @Schefflera-Arboricola in #7163
- Modify GML test to fix invalid octal character warning. by @rossbar in #7159
- DOC : updated examples in mincost.py by @Schefflera-Arboricola in #7169
- Ensure warnings related to changes in shortest_path returns are visible to users by @rossbar in #7161
- Sync up behavior of is_{type} for empty graphs by @MridulS in #5849
- Added
NodeNotFound
exceptions to_apply_prediction
andsimrank
, and ignored isolated nodes inpanther_similarity
by @Schefflera-Arboricola in #7110 - Document the walk_type argument default in directed_laplacian and similar functions. by @Ay-slim in #7171
- DOC: Add plots to classic graph generators docs by @MridulS in #7114
- Fix not_implemented_for decorator for is_regular and related functions by @rossbar in #7182
- New PR for Fixes minimal d-separator function failing to handle cases where no d-separators exist by @dschult in https://github.com/networkx/networkx/p...
NetworkX 3.2.1
networkx-3.2.1 signed 3.2.1 tag
NetworkX 3.2
networkx-3.2 signed 3.2 tag
NetworkX 3.1
networkx-3.1 signed 3.1 tag
networkx-3.1rc0
What's Changed
- Fix link in isomorphvf2.py by @paulitapb in #6347
- Update precommit hooks by @jarrodmillman in #6348
- Add clique examples and deprecate helper funtions by @rossbar in #6186
- Laplace centrality for issue 4973 by @gaborberei in #5399
- doc:improve doc of possible values of nodes and expected behaviour by @tinaoberoi in #6333
- add OrderedGraph removal as an API change in release_3.0.rst by @dschult in #6354
- Update release_3.0 authors (add Jim and Erik) by @eriknw in #6356
- Fix broken link nx guide by @paulitapb in #6361
- Add nx-guide link in the tutorial by @paulitapb in #6353
- DOC: Minor formatting fixups to get rid of doc build warnings. by @rossbar in #6363
- Fix ecuation in clustering documentation by @paulitapb in #6369
- Add reference to paper in vf2pp by @paulitapb in #6373
- provide tikz with degrees, not radians by @dimpase in #6360
- Improve handling of create_using to allow Mixins of type Protocol by @dschult in #6244
- Remove an instance of random.sample from a set (deprecated in Python 3.9) by @eriknw in #6380
- DOC: Add banner for user survey annoucement by @MridulS in #6375
- bump pre-commit hooks (and fix CI) by @danieleades in #6396
- Add generate / write "network text" (formerly graph_str) by @Erotemic in #5602
- Improve doc regular graphs by @paulitapb in #6397
- Fix link vonoroi by @paulitapb in #6398
- Document PageRank algo convergence condition by @Qudirah in #6212
- Fix pre-commit on Python 3.10 by @rossbar in #6407
- DOC: list pred method for MultiDiGraphs by @MridulS in #6409
- Delete warning in approximation documentation by @paulitapb in #6221
- Comment out unused unlayered dict construction. by @rossbar in #6411
- Update installation test instructions by @EricPostMaster in #6303
- Added new tests in test_clique.py by @paulitapb in #6142
- Added test in project. Coverage up to 100. by @Mjh9122 in #6196
- Add dispatching to more shortest path algorithms by @eriknw in #6415
- Add Plausible Analytics to our docs by @MridulS in #6413
- Fix docstring heading title. by @rossbar in #6424
- Added tests to test_directed.py. by @Mjh9122 in #6208
- Gallery example for Maximum Independent Set by @stanyas in #5563
- spectral bisection for graphs using fiedler vector by @MridulS in #6404
- Update developer requirements by @jarrodmillman in #6429
- Fix reference in line.py-inverse_line_graph by @Blueclaus13 in #6434
- Add project desc for visualization and ISMAGs by @dschult in #6432
- Lint using Ruff by @danieleades in #6371
- add ruff commit to git-blame-ignore by @MridulS in #6440
- NXEP 0 and NXEP 1 - change status to Accepted by @MridulS in #5343
- Bump gh-pages deploy bot version. by @rossbar in #6446
- Start using ruff for pyupgrade and isort by @MridulS in #6441
- Add documentation building to contributor guide by @rossbar in #6437
- Reset deploy-action param names for latest version. by @rossbar in #6451
- Doc upgrade paley graph by @paulitapb in #6399
- Added two tests for convert_numpy by @Mjh9122 in #6455
- Clean up similarity.py and use dataclasses for storing state by @MridulS in #5831
- Remove pdf latex builds of docs by @MridulS in #5572
- Add docstring for dorogovtsev_goltsev_mendes generator by @rossbar in #6450
- tweak _dispatch to allow G keyword. Add test. by @dschult in #6471
- Fix negative edge cycle function raising exception for empty graph and added test function by @PurviChaurasia in #6473
- Dispatch more BFS-based algorithms by @eriknw in #6467
- Ignore weakrefs when testing for memory leak by @eriknw in #6466
- Fix reference formatting in generator docstring. by @rossbar in #6493
- tweak
test_override_dispatch
to allow G keyword by @eriknw in #6499 - Improve test coverage for astar.py by @navyagarwal in #6504
- Add docstring example to weighted.py by @navyagarwal in #6497
- Fix len operation of UnionAtlas by @dschult in #6478
- Improve test coverage for edgelist.py by @navyagarwal in #6507
- Improve test coverage for mst.py and bug fix in prim_mst_edges() by @navyagarwal in #6486
- Add examples clarifying ambiguity of nbunch by @navyagarwal in #6513
- Updating removing explicit import for communities by @Lukong123 in #6459
- Use generator to limit memory footprint of read_graph6. by @rossbar in #6519
- Update docstring of paley graph by @paulitapb in #6529
- Fixed bug k_truss doesn't raise exception for self loops by @PurviChaurasia in #6521
- Update pre-commit by @jarrodmillman in #6545
- Update sphinx by @jarrodmillman in #6544
- Add docstring examples to dag.py by @navyagarwal in #6491
- Add example script for mst by @PurviChaurasia in #6525
- Add docstring examples to boundary.py by @navyagarwal in #6487
- improve test coverage for branchings.py by @Qudirah in #6523
- Improve test coverage for redundancy.py by @navyagarwal in #6551
- Fixed return type inconsistencies in shortest path methods documentation by @navyagarwal in #6528
- Optimize _single_shortest_path_length function by @Tortar in #6299
- Deprecate shortest_path functions to have consistent return values in v3.3 by @dschult in #6567
- Add community detection example to Gallery by @navyagarwal in #6526
- add simple cycle enumerator for undirected class by @boothby in #6461
- Fix survey URL by @Infiniticity in #6548
- Test dispatching via nx-loopback backend by @jim22k in #6536
- Fixed return type inconsistencies in weighted.py by @navyagarwal in #6568
- Update team galleries by @jarrodmillman in #6569
- Added Docstring Example for Bidirectional Shortest Path by @vanshika230 in #6570
- Update release requirements by @jarrodmillman in #6587
New Contributors
- @gaborberei made their first contribution in #5399
- @stanyas made their first contribution in #5563
- @Blueclaus13 made their first contribution in #6434
- @PurviChaurasia made their first contribution in #6473
- @navyagarwal made their first contribution in #6504
- @Tortar made their first contribution in #6299
- @jim22k made their first contribution in #6536
- @vanshika230 made their first contribution in #6570
Full Changelog: networkx-3.0...networkx-3.1rc0
NetworkX 3.0
What's Changed
- Tests added in test_centrality.py by @Mjh9122 in #6200
- add laplacian_spectrum example by @paulitapb in #6169
- PR for issue #6033 Improve test coverage for algorithms in betweenness_subset.py #6033 by @ladykkk in #6083
- Di graph edges doc fix by @nsengiyumva-wilberforce in #6108
- Improve coverage for core.py by @Mjh9122 in #6116
- Add clear edges method as a method to be frozen by nx.freeze by @AdamWRichardson in #6190
- Adds LCA test case for self-ancestors from gh-4458. by @rossbar in #6218
- Minor Python 2 cleanup by @rossbar in #6219
- Add example laplacian matrix by @paulitapb in #6168
- Revert 6219 and delete comment. by @rossbar in #6222
- fix wording in error message by @ikethefifth in #6228
- Rm incorrect test case for connected edge swap by @rossbar in #6223
- add missing
seed
to function called byconnected_double_edge_swap
by @dschult in #6231 - Hide edges with a weight of None in A*. by @brianhou in #5945
- Add dfs_labeled_edges reporting of reverse edges due to depth_limit. by @dschult in #6240
- Warn users about duplicate nodes in generator function input by @dschult in #6237
- Reenable geospatial examples by @jarrodmillman in #6252
- Draft 3.0 release notes by @MridulS in #6232
- Add 2.8.x release notes by @jarrodmillman in #6255
- doc: clarify allowed
alpha
when using nx.draw_networkx_edges by @SultanOrazbayev in #6254 - Add a contributor by @SultanOrazbayev in #6256
- Allow MultiDiGraphs for LCA by @dschult in #6234
- Update simple_paths.py to improve readability of the BFS. by @SultanOrazbayev in #6273
- doc: update documentation when providing an iterator over current graph to add/remove_edges_from. by @SultanOrazbayev in #6268
- Fix bug vf2pp is isomorphic issue 6257 by @reneechebbo in #6270
- Improve test coverage for Eigenvector centrality by @Qudirah in #6227
- Bug fix in swap: directed_edge_swap and double_edge_swap by @paulitapb in #6149
- Adding a test to verify that a NetworkXError is raised when calling n⦠by @reneechebbo in #6265
- Pin to sphinx 5.2.3 by @jarrodmillman in #6277
- Update pre-commit hooks by @jarrodmillman in #6278
- Update GH actions by @jarrodmillman in #6280
- Fix links in release notes by @jarrodmillman in #6281
- bug fix in smallworld.py: random_reference and lattice_reference by @paulitapb in #6151
- [DOC] Follow numpydoc standard in barbell_graph documentation by @SultanOrazbayev in #6286
- Update simple_paths.py: consistent behaviour for
is_simple_path
when path contains nodes not in the graph. by @SultanOrazbayev in #6272 - Correctly point towards 2.8.8 in release notes by @MridulS in #6298
- Isomorphism improve documentation by @paulitapb in #6295
- Improvements and test coverage for
line.py
by @Aufinal in #6215 - Fix typo in Katz.py by @faze-geek in #6310
- Broken link in isomorphism documentation by @paulitapb in #6296
- Update copyright years to 2023 by @MridulS in #6322
- fix warnings for make doctest by @dschult in #6323
- fix whitespace issue in test_internet_as_graphs by @danieleades in #6324
- Create a Tikz latex drawing feature for networkx by @dschult in #6238
- Fix docstrings by @jarrodmillman in #6329
- Fix documentation deployment by @jarrodmillman in #6330
- Fix links to migration guide by @jarrodmillman in #6331
- Fix typo in readme file by @tinaoberoi in #6312
- Fix typos in the networkx codebase by @faze-geek in #6335
- Refactor vf2pp modules and test files by @dschult in #6334
- Update release notes by @jarrodmillman in #6341
New Contributors
- @AdamWRichardson made their first contribution in #6190
- @ikethefifth made their first contribution in #6228
- @brianhou made their first contribution in #5945
- @reneechebbo made their first contribution in #6270
- @faze-geek made their first contribution in #6310
- @danieleades made their first contribution in #6324
- @tinaoberoi made their first contribution in #6312
Full Changelog: networkx-3.0rc1...networkx-3.0
NetworkX 3.0rc1
What's Changed
- Add characteristic polynomial example to polynomials docs by @lucasmccabe in #5730
- Remove deprecated function is_string_like by @MridulS in #5738
- Remove deprecated function make_str by @MridulS in #5739
- Remove unused 'name' parameter from
/operators/binary.py
by @z3y50n in #5741 - Remove deprecated function is_iterator by @MridulS in #5740
- remove euclidean from geometric.py by @z3y50n in #5744
- Remove deprecated function utils.consume by @MridulS in #5745
- Rm
to_numpy_recarray
by @rossbar in #5737 - Remove deprecated function utils.empty_generator by @MridulS in #5748
- Rm jit.py by @dtekinoglu in #5751
- Remove deprecated context managers by @MridulS in #5752
- Remove deprecated function utils.to_tuple by @MridulS in #5755
- Remove deprecated display_pygraphviz by @juanis2112 in #5754
- Remove to_numpy_matrix & from_numpy_matrix by @dtekinoglu in #5746
- Remove deprecated decorator preserve_random_state by @dschult in #5768
- Remove deprecated function is_list_of_ints by @MridulS in #5743
- Remove decorator random_state by @dschult in #5770
- remove
adj_matrix
fromlinalg/graphmatrix.py
by @z3y50n in #5753 - Remove betweenness_centrality_source by @dtekinoglu in #5786
- Remove deprecated simrank_similarity_numpy by @juanis2112 in #5783
- remove testing submodule by @mjschwenne in #5782
- Change PyDot PendingDeprecation to Deprecation by @dschult in #5781
- Remove deprecated numeric_mixing_matrix by @juanis2112 in #5777
- Remove deprecated functions make_small_graph and make_small_undirected_graph by @MridulS in #5761
- Remove _naive_greedy_modularity_communities by @juanis2112 in #5760
- Make chordal_graph_cliques a generator by @juanis2112 in #5758
- update cytoscape functions to drop old signature by @dschult in #5784
- Remove deprecated functions dict_to_numpy_array2 and dict_to_numpy_array1 by @MridulS in #5756
- Remove deprecated function utils.default_opener by @MridulS in #5747
- Remove deprecated function iterable by @MridulS in #5742
- remove old attr keyword from json_graph/tree by @mjschwenne in #5785
- Remove generate_unique_node by @jarrodmillman in #5780
- Replace node_classification subpackage with a module by @dschult in #5774
- Remove gpickle by @jarrodmillman in #5773
- Remove deprecated function extrema_bounding by @MridulS in #5757
- Remove coverage and performance from quality by @jarrodmillman in #5775
- Update return type of google_matrix to numpy.ndarray by @MridulS in #5762
- Remove deprecated k-nearest-neighbors by @juanis2112 in #5769
- Remove gdal dependency by @jarrodmillman in #5766
- Update return type of attrmatrix by @MridulS in #5764
- Remove unused deprecated argument from to_pandas_edgelist by @MridulS in #5778
- Updated astar docstring by @lior8 in #5797
- Compute
is_weakly_connected
lazily by @matusvalo in #5795 - Compute
is_strongly_connected
lazily by @matusvalo in #5793 - Remove deprecated function edge_betweeness by @juanis2112 in #5765
- Remove pyyaml dependency by @jarrodmillman in #5763
- Fix typo in bipartite closeness_centrality and thought-o in tests by @dschult in #5800
- Test out explicit paths while installing pygraphviz in macOS by @MridulS in #5805
- Remove copy methods for Filter* coreviews by @MridulS in #5776
- Remove deprecated function nx.info by @MridulS in #5759
- Add more comprehensive tests for pydot by @MridulS in #5792
- Remove deprecated n_communities argument from greedy_modularity_communities by @MridulS in #5789
- Remove deprecated functions hub_matrix and authority_matrix by @MridulS in #5767
- Make HITS numpy and scipy private functions by @MridulS in #5771
- Pydot layout fix by @shakedbr in #5809
- Add random_spanning_tree to documentation by @mjschwenne in #5810
- Add examples for the condensation function by @kpetridis24 in #5452
- Check that nodes have "pos" attribute in geometric_edges by @rossbar in #5707
- Add Triad example plot by @0ddoes in #5528
- DAG Layouts Added solving #5124 by @0ddoes in #5432
- Make pagerank numpy and scipy private functions by @MridulS in #5772
- Implement directed edge swap by @ben-heil in #5663
- Temporary fix for failing tests w/ scipy1.9. by @rossbar in #5816
- Fix #5817 by @mjschwenne in #5822
- Update relabel.py to preserve node order by @SultanOrazbayev in #5258
- Update distance parameter description. by @rossbar in #5819
- Modify DAG example to show topological layout. by @rossbar in #5835
- DOC: Rst syntax update. by @Carreau in #5837
- Add keyword argument to
nx.ancestors
&nx.descendants
by @dtekinoglu in #5802 - Update precommit linters by @jarrodmillman in #5839
- Add warning to nx_agraph about layout nondeterminism. by @rossbar in #5832
- remove to/from_scipy_sparse_matrix by @mjschwenne in #5779
- Clean up from PR #5779 by @jarrodmillman in #5841
- Corona Product by @alifa98 in #5223
- Add direct link to github networkx org sponsorship by @MridulS in #5843
- added examples to efficiency_measures.py by @Lukong123 in #5643
- added examples to regular.py by @Lukong123 in #5642
- added examples to degree_alg.py by @Lukong123 in #5644
- Add examples to lowest common ancestors algorithms by @dtekinoglu in #5531
- Examples for 7 Functions in Triads.py added solving issue #5498 by @0ddoes in #5522
- Fix docbuild warnings: is_string_like is removed and identation in corona product by @MridulS in #5845
- Use py_random_state to control randomness of random_triad by @MridulS in #5847
- Point to the latest URL for the description. by @tom24d in #5852
- Remove OrderedGraphs by @jarrodmillman in #5813
- Drop NumPy 1.19 by @jarrodmillman in #5856
- Correct louvain formula by @z3y50n in #5713
- Naive lowest common ancestor implementation by @dtekinoglu in #5736
- Speed up unionfind a bit by not adding root node in the path by @MridulS in #5844
- Minor doc fixups by @rossbar in #5868
- update tests in base class and simple rename in convert.py by @dschult in #5848
- Gallery example: Morse code alphabet as a prefix tree by @rossbar in #5867
- Move factory attributes to the class instead of instance. by @dschult in #5850
- Attempt to reverse slowdown from hasattr needed f...
NetworkX 2.8.8
Full Changelog: networkx-2.8.7...networkx-2.8.8
NetworkX 3.0b1
What's Changed
- Add characteristic polynomial example to polynomials docs by @lucasmccabe in #5730
- Remove deprecated function is_string_like by @MridulS in #5738
- Remove deprecated function make_str by @MridulS in #5739
- Remove unused 'name' parameter from
/operators/binary.py
by @z3y50n in #5741 - Remove deprecated function is_iterator by @MridulS in #5740
- remove euclidean from geometric.py by @z3y50n in #5744
- Remove deprecated function utils.consume by @MridulS in #5745
- Rm
to_numpy_recarray
by @rossbar in #5737 - Remove deprecated function utils.empty_generator by @MridulS in #5748
- Rm jit.py by @dtekinoglu in #5751
- Remove deprecated context managers by @MridulS in #5752
- Remove deprecated function utils.to_tuple by @MridulS in #5755
- Remove deprecated display_pygraphviz by @juanis2112 in #5754
- Remove to_numpy_matrix & from_numpy_matrix by @dtekinoglu in #5746
- Remove deprecated decorator preserve_random_state by @dschult in #5768
- Remove deprecated function is_list_of_ints by @MridulS in #5743
- Remove decorator random_state by @dschult in #5770
- remove
adj_matrix
fromlinalg/graphmatrix.py
by @z3y50n in #5753 - Remove betweenness_centrality_source by @dtekinoglu in #5786
- Remove deprecated simrank_similarity_numpy by @juanis2112 in #5783
- remove testing submodule by @mjschwenne in #5782
- Change PyDot PendingDeprecation to Deprecation by @dschult in #5781
- Remove deprecated numeric_mixing_matrix by @juanis2112 in #5777
- Remove deprecated functions make_small_graph and make_small_undirected_graph by @MridulS in #5761
- Remove _naive_greedy_modularity_communities by @juanis2112 in #5760
- Make chordal_graph_cliques a generator by @juanis2112 in #5758
- update cytoscape functions to drop old signature by @dschult in #5784
- Remove deprecated functions dict_to_numpy_array2 and dict_to_numpy_array1 by @MridulS in #5756
- Remove deprecated function utils.default_opener by @MridulS in #5747
- Remove deprecated function iterable by @MridulS in #5742
- remove old attr keyword from json_graph/tree by @mjschwenne in #5785
- Remove generate_unique_node by @jarrodmillman in #5780
- Replace node_classification subpackage with a module by @dschult in #5774
- Remove gpickle by @jarrodmillman in #5773
- Remove deprecated function extrema_bounding by @MridulS in #5757
- Remove coverage and performance from quality by @jarrodmillman in #5775
- Update return type of google_matrix to numpy.ndarray by @MridulS in #5762
- Remove deprecated k-nearest-neighbors by @juanis2112 in #5769
- Remove gdal dependency by @jarrodmillman in #5766
- Update return type of attrmatrix by @MridulS in #5764
- Remove unused deprecated argument from to_pandas_edgelist by @MridulS in #5778
- Updated astar docstring by @lior8 in #5797
- Compute
is_weakly_connected
lazily by @matusvalo in #5795 - Compute
is_strongly_connected
lazily by @matusvalo in #5793 - Remove deprecated function edge_betweeness by @juanis2112 in #5765
- Remove pyyaml dependency by @jarrodmillman in #5763
- Fix typo in bipartite closeness_centrality and thought-o in tests by @dschult in #5800
- Test out explicit paths while installing pygraphviz in macOS by @MridulS in #5805
- Remove copy methods for Filter* coreviews by @MridulS in #5776
- Remove deprecated function nx.info by @MridulS in #5759
- Add more comprehensive tests for pydot by @MridulS in #5792
- Remove deprecated n_communities argument from greedy_modularity_communities by @MridulS in #5789
- Remove deprecated functions hub_matrix and authority_matrix by @MridulS in #5767
- Make HITS numpy and scipy private functions by @MridulS in #5771
- Pydot layout fix by @shakedbr in #5809
- Add random_spanning_tree to documentation by @mjschwenne in #5810
- Add examples for the condensation function by @kpetridis24 in #5452
- Check that nodes have "pos" attribute in geometric_edges by @rossbar in #5707
- Add Triad example plot by @0ddoes in #5528
- DAG Layouts Added solving #5124 by @0ddoes in #5432
- Make pagerank numpy and scipy private functions by @MridulS in #5772
- Implement directed edge swap by @ben-heil in #5663
- Temporary fix for failing tests w/ scipy1.9. by @rossbar in #5816
- Fix #5817 by @mjschwenne in #5822
- Update relabel.py to preserve node order by @SultanOrazbayev in #5258
- Update distance parameter description. by @rossbar in #5819
- Modify DAG example to show topological layout. by @rossbar in #5835
- DOC: Rst syntax update. by @Carreau in #5837
- Add keyword argument to
nx.ancestors
&nx.descendants
by @dtekinoglu in #5802 - Update precommit linters by @jarrodmillman in #5839
- Add warning to nx_agraph about layout nondeterminism. by @rossbar in #5832
- remove to/from_scipy_sparse_matrix by @mjschwenne in #5779
- Clean up from PR #5779 by @jarrodmillman in #5841
- Corona Product by @alifa98 in #5223
- Add direct link to github networkx org sponsorship by @MridulS in #5843
- added examples to efficiency_measures.py by @Lukong123 in #5643
- added examples to regular.py by @Lukong123 in #5642
- added examples to degree_alg.py by @Lukong123 in #5644
- Add examples to lowest common ancestors algorithms by @dtekinoglu in #5531
- Examples for 7 Functions in Triads.py added solving issue #5498 by @0ddoes in #5522
- Fix docbuild warnings: is_string_like is removed and identation in corona product by @MridulS in #5845
- Use py_random_state to control randomness of random_triad by @MridulS in #5847
- Point to the latest URL for the description. by @tom24d in #5852
- Remove OrderedGraphs by @jarrodmillman in #5813
- Drop NumPy 1.19 by @jarrodmillman in #5856
- Correct louvain formula by @z3y50n in #5713
- Naive lowest common ancestor implementation by @dtekinoglu in #5736
- Speed up unionfind a bit by not adding root node in the path by @MridulS in #5844
- Minor doc fixups by @rossbar in #5868
- update tests in base class and simple rename in convert.py by @dschult in #5848
- Gallery example: Morse code alphabet as a prefix tree by @rossbar in #5867
- Move factory attributes to the class instead of instance. by @dschult in #5850
- Attempt to reverse slowdown from hasattr needed f...