Skip to main content

High-performance graph traversal and graph algorithms for Python

Project description

rxgraph

High-performance graph traversal and graph algorithms for Python, implemented in Rust with an ergonomic object API and Polars expression support.

rxgraph supports:

  1. Efficient graph construction leveraging Arrow-backed DataFrames as inputs
  2. Optimized stateful search, where the traversal predicates are expressed with Poalrs expressions
  3. Common graph algorithms like BFS, DFS, shortest path, weakly connected components, etc.

From initial benchmarks, rxgraph is comparable in performance and CPU/memory consumption (and very possibly better in some cases) with igraph and networkx.

The place where rxgraph really shines is stateful search - you can use rxgraph for stateful blind search across a very large graph. See the traversal example in Quickstart.

The main focus of this library is Python and its Python bindings, but its Rust core is also published as a crate to crates.io.

[!IMPORTANT]

rxgraph is under heavy active development - the core implementation (Python bindings & Rust crate) are usable with decent test coverage, but it is not ready for production and you should use it at your own risk. The public API is likely to change as well.

Having said that, the library is usable and should work for most scenarios it supports, and I would love for some initial feedback.

Installation

# uv
uv add rxgraph polars

# pip
pip install rxgraph polars

[!NOTE]

Requires Python 3.11+ and currently depends on Polars for expression input.

Quick Start

import rxgraph as rxg

graph = rxg.Graph.from_edges(
    [("a", "b"), ("a", "c"), ("b", "d"), ("c", "d")],
    nodes=["a", "b", "c", "d", "isolated"],
)

assert graph.node_count == 5
assert graph.edge_count == 4
assert graph.bfs("a") == ["a", "b", "c", "d"]
assert graph.shortest_path("a", "d") == ["a", "b", "d"]
assert graph.reachable_nodes("isolated") == ["isolated"]

For the most powerful capability of rxgraph, see the Stateful Search example.

Data Model

For small or Python-native graphs, use Graph.from_edges with hashable node labels:

routes = rxg.Graph.from_edges(
    [
        ("a", "b", {"price": 5, "kind": "route"}),
        ("b", "c", {"price": 6, "kind": "route"}),
        ("a", "c", {"price": 100, "kind": "skip"}),
    ],
    nodes=[
        ("a", {"closed": False}),
        ("b", {"closed": False}),
        ("c", {"closed": False}),
    ],
)

For table-backed graphs, pass Polars DataFrames directly:

import polars as pl
import rxgraph as rxg

nodes = pl.DataFrame(
    {"id": [10, 20, 30]},
    schema={"id": pl.UInt64},
)
edges = pl.DataFrame(
    {"id": [1, 2], "src": [10, 20], "dest": [20, 30]},
    schema={"id": pl.UInt64, "src": pl.UInt64, "dest": pl.UInt64},
)

table_graph = rxg.Graph(nodes, edges)
assert table_graph.shortest_path(10, 30) == [10, 20, 30]

Node tables require an id column. Edge tables require id, src, and dest. All identity columns must be either unsigned integers or strings. Extra columns remain available to traversal expressions.

Algorithms

The high-level object API includes:

  • bfs(start, max_depth=None)
  • dfs(start, max_depth=None)
  • reachable_nodes(start)
  • shortest_path(source, target)
  • out_degrees(), in_degrees(), and degrees()
  • weakly_connected_components()

These methods return the same labels or IDs used to build the graph.

Stateful Search

Graph.search evaluates Polars expressions against candidate edges. Expressions can read source-node fields (src.*), destination-node fields (dest.*), edge fields (edge.*), and path state (state.*).

Using the routes graph from the data model example:

s = lambda name: rxg.col(f"state.{name}")
d = lambda name: rxg.col(f"dest.{name}")
e = lambda name: rxg.col(f"edge.{name}")

result = routes.search(
    start_nodes=["a"],
    visit=(~d("closed")) & (e("kind") != "skip") & ((s("spent") + e("price")) < 20),
    next_state={"spent": s("spent") + e("price")},
    stop=rxg.col("dest.id") == rxg.lit(routes.node_id("c")),
    initial_state={"spent": 0},
    max_depth=3,
    max_paths=10,
)

path = result.paths[0]
assert path.nodes == ["a", "b", "c"]
assert path.edges == [0, 1]
assert path.state == {"spent": 11}

Search supports DFS or BFS ordering, optional Rayon-backed parallel traversal, depth/path limits, and optional intermediate state materialization.

Search kernels evaluate supported Polars scalar, list, and struct expressions natively in Rust. List and struct columns/state can be read and updated inside visit, next_state, and stop. Polars JSON list literals are intentionally not decoded yet; use list columns or list state for list-valued operands.

See examples/nyc_taxi_zone_search.py for a public NYC TLC trip-record example that uses list and struct state over millions of raw trip edges.

Native Rust kernels

While the Polars expression DSL covers most stateful searches with no compilation step, when you need arbitrary state types, logic the DSL cannot express, or the last bit of performance, you can supply a native Rust kernel instead. A plugin package imports like rxgraph, but binds the Python API to its own native backend:

import rxgraph_hop_budget as rxg

graph = rxg.Graph.from_edges([("a", "b"), ("b", "c")])
result = graph.search(
    start_nodes=["a"],
    kernel="hop_budget",
    params={"max_hops": 3, "target_col": "target"},
)

The consumer's crate depends on rxgraph with the python feature (their own crate is the cdylib that needs pyo3's extension-module; rxgraph's python feature deliberately does not enable it):

[dependencies]
rxgraph = { version = "0.6", features = ["python"] }
pyo3 = { version = "0.28", features = ["extension-module"] }

The Rust side implements rxgraph::Kernel and ends with a small macro call:

rxgraph::plugin! {
    module = _native;
    "hop_budget" => HopBudget::from_params,
}

See examples/rust-kernel-plugin/ for the full guide, including the EdgeCtx accessor reference and the maturin build.

Architecture

The Python package is backed by a Rust core. Internally, rxgraph stores node and edge tables as Arrow RecordBatch values, validates graph identity columns once, and builds compact CSR topology for traversal. User columns stay in columnar form and remain available to stateful search expressions.

Rust Crate

The Rust engine is published as the rxgraph crate and exposes the same traversal kernel model used by the Python bindings.

See crates/rxgraph/README.md for crate-specific usage.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rxgraph-0.7.0.tar.gz (99.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

rxgraph-0.7.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

rxgraph-0.7.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

rxgraph-0.7.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.15manylinux: glibc 2.17+ x86-64

rxgraph-0.7.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

rxgraph-0.7.0-cp314-cp314-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.14Windows x86-64

rxgraph-0.7.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

rxgraph-0.7.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

rxgraph-0.7.0-cp314-cp314-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rxgraph-0.7.0-cp314-cp314-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

rxgraph-0.7.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

rxgraph-0.7.0-cp313-cp313-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.13Windows x86-64

rxgraph-0.7.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

rxgraph-0.7.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

rxgraph-0.7.0-cp313-cp313-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rxgraph-0.7.0-cp313-cp313-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

rxgraph-0.7.0-cp312-cp312-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.12Windows x86-64

rxgraph-0.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

rxgraph-0.7.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

rxgraph-0.7.0-cp312-cp312-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rxgraph-0.7.0-cp312-cp312-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

rxgraph-0.7.0-cp311-cp311-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.11Windows x86-64

rxgraph-0.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

rxgraph-0.7.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

rxgraph-0.7.0-cp311-cp311-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rxgraph-0.7.0-cp311-cp311-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file rxgraph-0.7.0.tar.gz.

File metadata

  • Download URL: rxgraph-0.7.0.tar.gz
  • Upload date:
  • Size: 99.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rxgraph-0.7.0.tar.gz
Algorithm Hash digest
SHA256 568f74c043ec7275e19ba52efdbe196a8aa956dd6290510562c83d6a2e0e1f9a
MD5 143beb0384520e46ece772dcfe01c7f8
BLAKE2b-256 dad0630ec8e66a1853ad41baab2bf953d723d978ec706575c7a26365f0b58ee2

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b14f4528886de91f24136d24fc46d942cad838a806f348ecd74721682341b2af
MD5 b87dbafb82f04389648475f203959037
BLAKE2b-256 6312fba90374f9c6125309f2803a88b3355cf74eb94dc72c8bedc836a459815d

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7dcbde4f707a1b1ac057a74de744cdb0587dd754840a78fafc936f060f6e4cff
MD5 c4e820ff6b2990327dd6adff9157f1cf
BLAKE2b-256 6181031d86f0e270addcc8b6d02a963cfe059eeb03878964a04b4555300af409

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8bf75d1accff1ebdc955f00831ca89715b48781de587de6363997415ca8ea5bc
MD5 4cce27d72a4491d04fba2b06f3fb871c
BLAKE2b-256 838bc2bec4ed230d2b129e983a2cc9558fea2b38bb7dfae630697a022d7a70b5

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 afbe3d5eb362e23aa4c5ea85e7d3fec41391a84391e00e405a8253f13625fcde
MD5 b6818076a7a28c1f3d769d79c65e3df1
BLAKE2b-256 2a74ea1d437cd9b0ea300bb61c0c8567f1053394db3d3434355b5542ec911e1e

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: rxgraph-0.7.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rxgraph-0.7.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 584400b9fe4092c29dc7f0d0731b9bfc43a12b8577083ccbda6304fb7826608e
MD5 0aed9b74f23918d135b516d9e92e293c
BLAKE2b-256 7275c53d1bbdec537eeb081029f56995217c89d0f1bed7b8fd89e6664515466d

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 971e7b7341904d4b31c13d3f58571ad4ee3691449b61a3fbb59994725c0f3475
MD5 f5b7a6c680e5f572929aa357fd2c7758
BLAKE2b-256 88295a281d02e89b44ab92499385779b1f5a56da012a6551ef5983f26c3d5241

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5e379fbdbbd2ab4fcfecbd8938219f7f26e177188b6f199ed4730662e31684c5
MD5 d76d752738fab451794fa1a28ec56ad8
BLAKE2b-256 34de8b63c081aa248e6d2ff0228e21c9b3e7031e88ef8aa1db940f569775682c

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 73276f31375a993b72ba3b55aa12091ab96b9f62bf4b622800479b8e7ad04d26
MD5 e52f2292044bdb5e7b83d4f7b10e3348
BLAKE2b-256 906bb6b765a8c1d102cea84f7643d18eabe2e2cc74ee1fbe29a218a197b7bc4f

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 73bcd0efa3bc4b2f2717f05e9f8952db115d450404eafee471910e47495a5012
MD5 219ddb26ee76e562666bd0b5c319d6a9
BLAKE2b-256 2f2d33dd7d907c2789fd2955a64a83cb5b9d9eb9e186a16d817fcdf3b135a8bc

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 146c2b8a9c626910ea9170d51af4ad7807a927452b63d7d7bc8781e39faa26df
MD5 8c982a85012e29a6107758ecf8f2be8a
BLAKE2b-256 fbdc9d1314bb127752e18a21af946fd3c6807e75a487aa768135ded6f8795316

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: rxgraph-0.7.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rxgraph-0.7.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 45ec9285f47827b6d4853e3c9927bbc4198d3e1804ab4cfc555b12979fa5fbf8
MD5 c25506f831e2f8589eb5fe0c63faa402
BLAKE2b-256 a840a0f51968b8c71a3392d0919ac46c28f54c8bf19668a94188639782dbcd78

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1fc50808fdfed16352c5ee54b2154dfff2dd7a52fa00f8eb36c2649fc45ef06e
MD5 dd78b1f8bd362b0aa0b9766057ff5e47
BLAKE2b-256 d12dc9206c30257b6ac056d6aec838c46fa7f73b346e85884139796a91be6832

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a9ee00f87cc5405958afde67909e5a2966c6668e4b031e4a57c721374fefbf09
MD5 0fe2961f090b44f6e0acfbb68bcb8089
BLAKE2b-256 adb8a326f79bc883f46e9de92b5906c2cb3dda7359291ba2c2bde0947f8cc53d

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6347539e57ab139486491b832d140c24b3fc2a2dc785207d38940a20079c5c5f
MD5 06efce93d45930d527350582e4c56a30
BLAKE2b-256 73738aecb88e3fe77415ac35c48639fac39d3fd21454f564829053ae14e8a9f0

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4e280fcae3a19f00fadfbbfe8add705d86ac4e8d839c5f123530bdccecc79115
MD5 17118147e898d8dd2d9480c5f899270e
BLAKE2b-256 e89860de80a53120fda7e5bd8a19a1bed12c0d0124b9c569676dc7f0e0129df9

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: rxgraph-0.7.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rxgraph-0.7.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9dd94d809d636b6be6654bd88975c252a24b96ed4ca96dd881f4afcf517fcf5e
MD5 581fb5d2e7d1f95b9acdd48d7aac4f97
BLAKE2b-256 eb2c9189d9ba4aa6d802c77e13f1e670205eb9748881bcf731fe97373bda08f2

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7961d85e47e8d09e514e384ca3c912c0974a5319d2547f3c99aa270e4deeb78a
MD5 a1db334ec6f9bc818b725733a590fe27
BLAKE2b-256 45cea1c769796c314c3beac06dba2c2bfd0c8207cc38a4217a30bce110a8edc2

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0b7ecb6da86dc92f9507319c08eb5019c1ebaa867c5f2609c56923985c07849a
MD5 6eec1099126af8612ba75f530db198a6
BLAKE2b-256 9f17345483c61a27d2829029ac4e466b7f8223f9a3a07395f0bd0768c5787865

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7875b05c73e4c0aaf58688e1814c40eaefce981f2cdd83b4a991db8fb9bb8516
MD5 4ae3bb14e4e27f8805b88acd437d9123
BLAKE2b-256 bece1a1a8b8b0d68f2a87ddc7135b8f0fe293ce6fc2485c506104c9ebf1cf314

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0ec57c50b2e40fcd3c5c9fa251ee67f13d93129f1833448e7325e6ca890f8481
MD5 6aa09eeb6d69767848b4f2ea21ca0cb0
BLAKE2b-256 d2b53e012230f04f064092f7266932c24d8522faf6e98e1f98a409e5e1bd87fb

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: rxgraph-0.7.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rxgraph-0.7.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 60e5150f8fc14f96057e1c3d99314d0c4b7f431cf0c9053b8fe7189c0d6b786e
MD5 c8b52cacaa04a39e3fdf458d19a8d4cb
BLAKE2b-256 906a33314c4bca481129823ddbd1dc6eabccdd9ff2a2a277b422ae4bcdb94113

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 90dc72233d270887ddf73d17043983e3c35a52962c7a9c057c679cd3e9f3d94f
MD5 6a927d2088e0081879272e17a5fb1bd7
BLAKE2b-256 6c05052fcf3c10bf1d27021867d6a0591c586b65c73e96b2e132bf7601464e10

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4309f22d23867b49cf6afe4f20366b9707d3cc6c2b8d1ef7d0742ef90ed57883
MD5 d114b1ff33746d099ca49558abd7a226
BLAKE2b-256 14662930d2afee0f468f5105ff24dadce632b496d30e5a943be01d6a45318aa2

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 22316556aaae691a5e1d6ba82f5bfbca773f5a4d3bb4e77fb528042554ee4711
MD5 5c4f2e3f324e9378b8a3fd7349bd9bca
BLAKE2b-256 f71033facbddecb0de100eb8e68972ee9172e5eb5c67b772df70ed7842dbab5f

See more details on using hashes here.

File details

Details for the file rxgraph-0.7.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rxgraph-0.7.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2e3ebb5511db8d67048b52fa1690e747e6c23aa27609ff426c1b432e3d2a4c54
MD5 5fa1b7bdf44497561a77c6e84477e6c8
BLAKE2b-256 e877a57713182a9a4733755bcac2dd68667c9e780f9f721dcccdd556881186dc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page