Skip to content

Commit

Permalink
Prepare 0.12.0 release (#685)
Browse files Browse the repository at this point in the history
* Prepare 0.12.0 release

This commit prepares the 0.12.0 release. It moves the release notes that
for the release to a separate directory and adds a prelude to the
release notes. This should be the last commit to merge and after it
merges it'll be tagged for the 0.12.0 release.

* Move new release notes and update release notes

* Fix typo

* Update releasenotes/notes/0.12/prepare-0.12.0-45e978cfb17b78a5.yaml

Co-authored-by: Matthew Treinish <[email protected]>

Co-authored-by: Ivan Carvalho <[email protected]>
  • Loading branch information
mtreinish and IvanIsCoding authored Oct 6, 2022
1 parent 63de4cb commit 70edcfd
Show file tree
Hide file tree
Showing 20 changed files with 63 additions and 10 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
features:
- |
Added a new function, :func:`~.eigenvector_centrality()` which is used to
compute the eigenvector centrality for all nodes in a given graph. For
example:
.. jupyter-execute::
import rustworkx as rx
from rustworkx.visualization import mpl_draw
graph = rx.generators.hexagonal_lattice_graph(4, 4)
centrality = rx.eigenvector_centrality(graph)
# Generate a color list
colors = []
for node in graph.node_indices():
centrality_score = centrality[node]
graph[node] = centrality_score
colors.append(centrality_score)
mpl_draw(
graph,
with_labels=True,
node_color=colors,
node_size=650,
labels=lambda x: "{0:.2f}".format(x)
)
- |
Added a new function to rustworkx-core ``eigenvector_centrality`` to the
``rustworkx_core::centrality`` modules which is used to compute the
eigenvector centrality for all nodes in a given graph.
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ features:
node indices and the inner value is the list of all simple paths of length
3 between those 2 nodes.
- |
The rustworkx-core ``connectivity`` module has a new function
The rustworkx-core ``rustworkx_core::connectivity`` module has a new function
``all_simple_paths_multiple_targets`` this is similar to the
``all_simple_paths()`` method in petgraph's ``algo`` module but instead of
returning an iterator that will yield the all the simple path from a source
Expand Down
29 changes: 29 additions & 0 deletions releasenotes/notes/0.12/prepare-0.12.0-45e978cfb17b78a5.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
prelude: |
This release introduces some major changes to the Rustworkx (formerly
retworkx) project. The first change is the library has been renamed from
retworkx to rustworkx, and the retworkx-core rust crate has been renamed
rustworkx-core. This was done out of respect for a request from the
maintainers of the NetworkX library. For the current release the retworkx
library will still continue to work as it has without any notification,
but starting in the 0.13.0 release a ``DeprecationWarning`` will be emitted
when importing from retworkx and in the 1.0.0 release we will drop support
for the legacy name. For the retworkx-core crate, there will no longer be
any releases under that name on crates.io and all future versions of the
library will be released as rustworkx-core.
Additionally this release adds support for Python 3.11 and also moves to
manylinux2014 for all precompiled Linux binaries we publish to PyPI. The
minimum supported Rust version for building rustworkx from source has
increased to Rust 1.48.
This release also includes several new features, some highlights are:
* Support for graph attributes under the ``attrs`` attribute
* New serialization format support (a graphml parser, :func:`~.read_graphml`,
and a node link JSON generator, :func:`~.node_link_json`)
* New algorithms functions including:
* Eigenvector Centrality
* Stoer–Wagner Min-Cut algorithm
* Bellman-Ford shortest path algorithm

This file was deleted.

0 comments on commit 70edcfd

Please sign in to comment.