Skip to main content

100% openCypher-compliant in-memory graph database — 4 backends, 175+ algorithms, pure Rust

Project description

OCG — OpenCypher Graph

High-performance in-memory graph database with 100% OpenCypher compliance, 4 backends, and 175+ algorithms — pure Rust.

PyPI Python License OpenCypher TCK Rust

Overview

OCG executes OpenCypher queries against in-memory property graphs. It is built in pure Rust and exposed to Python via PyO3 bindings.

  • 100% OpenCypher TCK: 3,897 / 3,897 scenarios passing (0 skipped, 0 failed)
  • 4 graph backends: PropertyGraph, NetworKitRust, RustworkxCore, Graphrs
  • 175+ graph algorithms: centrality, community, pathfinding, spanning trees, flow, coloring, matching, cliques, layout, generators
  • Bulk Loader API: 57x faster batch construction vs OpenCypher CREATE statements
  • Serialization: save/load graphs to JSON with full metadata
  • Python 3.11–3.14, macOS · Linux (glibc + musl) · Windows

Installation

pip install ocg

Rust:

[dependencies]
ocg = "0.4.1"

Quick Start

Python

from ocg import Graph

graph = Graph()

# OpenCypher queries
graph.execute("CREATE (a:Person {name: 'Alice', age: 30})")
graph.execute("CREATE (b:Person {name: 'Bob', age: 25})")
graph.execute("MATCH (a:Person), (b:Person) WHERE a.name='Alice' AND b.name='Bob' CREATE (a)-[:KNOWS]->(b)")

result = graph.execute("MATCH (a:Person)-[:KNOWS]->(b:Person) RETURN a.name AS from, b.name AS to")
print(result)  # [{'from': 'Alice', 'to': 'Bob'}]

Bulk Loader (10–57x faster)

Bypasses the OpenCypher parser for large batch operations:

from ocg import Graph

graph = Graph()

node_ids = graph.bulk_create_nodes([
    (["Person"], {"name": "Alice", "age": 30}),
    (["Person"], {"name": "Bob",   "age": 25}),
])

graph.bulk_create_relationships([
    (node_ids[0], node_ids[1], "KNOWS", {"since": 2020}),
])

result = graph.execute("MATCH (a)-[:KNOWS]->(b) RETURN a.name, b.name")

Serialization

graph.save("my_graph.json")
loaded = Graph.load("my_graph.json")

Rust

use ocg::{PropertyGraph, execute};

let mut graph = PropertyGraph::new();
execute(&mut graph, "CREATE (a:Person {name: 'Alice'})").unwrap();
let result = execute(&mut graph, "MATCH (n:Person) RETURN n.name").unwrap();

Graph Backends

Backend Class Description
PropertyGraph Graph Native petgraph-based property graph
NetworKitRust NetworKitGraph Port of NetworKit algorithms to pure Rust
RustworkxCore RustworkxGraph IBM Qiskit rustworkx-core algorithms
Graphrs GraphrsGraph graphrs-based community detection

All four backends expose identical APIs: OpenCypher execution, bulk loader, 175+ algorithms, and save/load.


Graph Algorithms (175+)

All algorithms are available on all 4 backends.

Category Algorithms
Centrality degree, betweenness, closeness, pagerank, eigenvector, katz, harmonic, voterank
Pathfinding bfs, dijkstra, astar, bellman_ford, floyd_warshall, all_pairs, all_simple_paths, all_pairs_all_simple_paths
Shortest Paths single_source, multi_source, k_shortest, average_shortest_path_length
Spanning Trees minimum, maximum, steiner_tree
DAG topological_sort, is_dag, find_cycles, dag_longest_path, transitive_closure, transitive_reduction, dag_to_tree
Flow max_flow, min_cut_capacity
Coloring node_coloring, edge_coloring, chromatic_number
Matching max_weight_matching, max_cardinality_matching
Community louvain, label_propagation, girvan_newman
Components connected_components, strongly_connected, number_weakly_connected, is_connected, is_tree, is_forest
Cliques find_cliques, max_clique, clique_number, node_clique_number, cliques_containing_node
Traversal dfs, bfs_layers, descendants, ancestors
Transitivity triangles, transitivity, clustering, average_clustering, square_clustering
Graph Ops complement, line_graph, cartesian_product, tensor_product, strong_product, lexicographic_product, graph_power
Euler is_eulerian, eulerian_circuit, semieulerian
Planar is_planar
Contraction contract_nodes, quotient_graph
Token Swapper token_swapper
Generators erdos_renyi, barabasi_albert, complete_graph, path_graph, cycle_graph, star_graph, grid_graph, petersen_graph, watts_strogatz, configuration_model, expected_degree_graph
Layout spring, kamada_kawai, spectral, sfdp, hierarchical, bipartite, circular, shell, random
from ocg import Graph

graph = Graph()
# ... populate graph ...

scores = graph.pagerank(damping=0.85, max_iter=100)
communities = graph.louvain()
path = graph.dijkstra(source_id, target_id)

Supported OpenCypher Features

Clauses

  • MATCH, OPTIONAL MATCH, variable-length paths [*1..3]
  • CREATE, MERGE, SET, DELETE, DETACH DELETE, REMOVE
  • WITH, UNWIND, RETURN, WHERE
  • ORDER BY, SKIP, LIMIT, DISTINCT
  • UNION, UNION ALL

Expressions

  • Property access, list indexing, string slicing
  • Arithmetic: +, -, *, /, %, ^
  • Comparison: =, <>, <, >, <=, >=
  • Logical: AND, OR, NOT, XOR
  • String: STARTS WITH, ENDS WITH, CONTAINS, =~
  • Null: IS NULL, IS NOT NULL
  • List: IN, comprehensions, quantifiers

Functions (60+)

  • String: substring, trim, toLower, toUpper, split, replace
  • Math: abs, ceil, floor, round, sqrt, sin, cos, log
  • List: size, head, tail, range, reverse, keys
  • Aggregation: count, sum, avg, min, max, collect
  • Temporal: date, datetime, localDatetime, duration
  • Predicates: exists, all, any, none, single

Procedures

  • db.labels(), db.relationshipTypes(), db.propertyKeys()
  • dbms.components()

TCK Compliance

3,897 / 3,897 scenarios passing — 100% (0 skipped, 0 failed)

Validated against the openCypher Technology Compatibility Kit.


Development

# Build
cargo build --release

# Unit tests
cargo test --no-default-features

# OpenCypher TCK
cargo test --test tck_property_graph --no-default-features

# Python wheel (requires maturin)
maturin develop --features python

Credits

Algorithm implementations (PageRank, Betweenness Centrality, Dijkstra, etc.) are based on published academic work. See NOTICE file for complete citations.


License

Apache-2.0 — see LICENSE and NOTICE files.

OpenCypher® and Cypher® are registered trademarks of Neo4j, Inc. This project implements the open OpenCypher specification and is not affiliated with Neo4j.


Contributing

Issues and proposals may be submitted via GitHub. Contributions are evaluated on a controlled schedule — pull requests are reviewed at the maintainer's discretion and timeline.

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

ocg-0.4.5.tar.gz (562.8 kB view details)

Uploaded Source

Built Distributions

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

ocg-0.4.5-cp314-cp314-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.14Windows x86-64

ocg-0.4.5-cp314-cp314-musllinux_1_2_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

ocg-0.4.5-cp314-cp314-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

ocg-0.4.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

ocg-0.4.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ s390x

ocg-0.4.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ppc64le

ocg-0.4.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARMv7l

ocg-0.4.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

ocg-0.4.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl (2.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.5+ i686

ocg-0.4.5-cp314-cp314-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

ocg-0.4.5-cp314-cp314-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

ocg-0.4.5-cp313-cp313-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.13Windows x86-64

ocg-0.4.5-cp313-cp313-musllinux_1_2_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

ocg-0.4.5-cp313-cp313-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

ocg-0.4.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

ocg-0.4.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390x

ocg-0.4.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64le

ocg-0.4.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

ocg-0.4.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

ocg-0.4.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (2.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.5+ i686

ocg-0.4.5-cp313-cp313-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

ocg-0.4.5-cp313-cp313-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

ocg-0.4.5-cp312-cp312-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.12Windows x86-64

ocg-0.4.5-cp312-cp312-musllinux_1_2_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

ocg-0.4.5-cp312-cp312-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

ocg-0.4.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

ocg-0.4.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390x

ocg-0.4.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64le

ocg-0.4.5-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

ocg-0.4.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

ocg-0.4.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (2.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.5+ i686

ocg-0.4.5-cp312-cp312-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ocg-0.4.5-cp312-cp312-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

ocg-0.4.5-cp311-cp311-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.11Windows x86-64

ocg-0.4.5-cp311-cp311-musllinux_1_2_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

ocg-0.4.5-cp311-cp311-musllinux_1_2_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

ocg-0.4.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

ocg-0.4.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390x

ocg-0.4.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64le

ocg-0.4.5-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

ocg-0.4.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

ocg-0.4.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (2.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.5+ i686

ocg-0.4.5-cp311-cp311-macosx_11_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

ocg-0.4.5-cp311-cp311-macosx_10_12_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file ocg-0.4.5.tar.gz.

File metadata

  • Download URL: ocg-0.4.5.tar.gz
  • Upload date:
  • Size: 562.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for ocg-0.4.5.tar.gz
Algorithm Hash digest
SHA256 14adbcec993a1df6f640f3eaa84797d70b4e78d4e33cf1f9dd6dea79edd98d15
MD5 c432fd08465978db28bc8460516d97cc
BLAKE2b-256 ef56ada8fc15c65e336923077a6dce925626ccf4dab39ffe46cba15b6a0ea9a5

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: ocg-0.4.5-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ocg-0.4.5-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 af7feeb1de019ffd0dc742724c28fa33c0e8f65caa41d5b914d928dcb877e679
MD5 fc46b4ce095dab96dde570c6f6c0ad5a
BLAKE2b-256 b2736d4ad713e12405696c344bbff26406c123d7830226f3c88e73de460547f5

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8cb21ce37a1bce89606a930e755eccb2f195f6ecc143b82c883696fc5d442930
MD5 39b53d8b95fd6092f4cecb93f10983c3
BLAKE2b-256 5c2cfbbbb21374d4dc0f723f87a23d5d6276980c717b1ef3e33b79c4eef3c68c

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 fbf81d5bbb79fdc372116dbcf1f73a2f764faab25b0f562207295c75f60b3336
MD5 00ba6ed24b221c5d8c455f905ff8f27b
BLAKE2b-256 35f73176843b08165ab42acb63e3705ecd46a1455d2985c712c5b513a286d88a

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b6894cc87db23d8a86cadf84df07854a649a157e262746c701aa07ff24303d1e
MD5 d10fab20eae1bc83a62a0ece5dfe586d
BLAKE2b-256 8005574c94d991f6648762292493875acd66f96da23b408bc891b2222ce0cabc

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 5b16a8ea9aeae1d8fbef3665c41c0992a28f95e215c5a2193c6c7480857e0795
MD5 467e4fe159e5abb70ce91a148853c2c5
BLAKE2b-256 d80b481a27425eb38963fd354360066f34637238b43cebbe839d4c630078200b

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 d27e34a6840397fb4a4fa0227d613fe70f9652b7e7fdc24a4e5025a35306f1d5
MD5 196f43073613d17dc1e186afd0c2c9ba
BLAKE2b-256 157746028f6afa63d5f5109e84ec5b7ab7db08fb860d17d722d8ef5b537b3243

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 52d4af72d908ae3d0a0ea460c4819a7c036f38c8e7747b4accb1af32cf995108
MD5 0042167c5c1f494d774777bf364a096b
BLAKE2b-256 3943a1a6a50e5d89f79aa415e8c7484aee688ab592f3cb7bd096f9d6ba25406d

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 059ab08493dba28245459e6ed43421ace150c38ad431ae780d223938106dffdc
MD5 7f9331dfdbe59840b17825a57785a46f
BLAKE2b-256 0a2773b94ae97381581e3926c9bb58c39b91a7f73c4845b165155625afce810f

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 160f6186c03a603b4e9081194c1e313df6d3742b0cac38ba17902a161027fd00
MD5 c70bb9d6e6bcc2b8f2c19ec5eaacaa80
BLAKE2b-256 118c306ffd249df2a6dbc85d89b0fb2d5580f4883d7ae583278e59ae9c23f537

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

  • Download URL: ocg-0.4.5-cp314-cp314-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.14, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for ocg-0.4.5-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab6d431a148d3421f0341165ffab1686120693225780760024a8410a7add5f94
MD5 0f2d350c5203703cb7919d400483daab
BLAKE2b-256 137f27a175d3c005e7dd88589eb42d8046216c2cd5f09bf93b0137810d196f8f

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ddfde50d01ce28dd126c8f77dda02188fe48f97cfd3ffeebf64398ae21130568
MD5 c0afb82674e5d9e1d93b5755ef62f2e9
BLAKE2b-256 9609d5b5f5b882229fbbb4372e1a63cf70749328d98ad10dbce5eff8f2b66b99

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: ocg-0.4.5-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ocg-0.4.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 6e1a5d737248eec4c24fe528b4293dc8e8b4377da702fbdcea9834f2bc3ba106
MD5 b71df65db98017edd6e9afc9cf1cad8a
BLAKE2b-256 26edb6bf5dc8911f27a4e3cbbed3e5b537b7dc2b26779a2e954336c6cf67e56e

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 32987fab722f70fcbbd5cd8474b7a4fb5dbf49039ef85c4077f75b18238acca4
MD5 822af2502b02c9b03aa4d93028b75150
BLAKE2b-256 c72b3b7b883d679ebaff91b0b6abae5e2e22dbd437daafc8118102879995d2a6

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 156757b67a76529ee1d4c3bb3f36897cac7311f2d0803eb2ab820d5d7fc158f5
MD5 dba6ec3104f7bba48263cd77e6914764
BLAKE2b-256 f34c0641f5881dac70b174c7a5f6c44a35fa495dfd3cf6be90e5c425a846e673

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dc9b2ee41f3879fc4671766800628bfca03d4b27e4b6e876cbd15b1b568130d4
MD5 8788db34fbce0df8fb70856d1f0af5e3
BLAKE2b-256 1ed1f057a77ddc59bb37b619e7581a7294ad34a8aa48c5fe279f7d52673e0cc4

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 1f66f59d34a361e4512f8cfd77829ef843bb6ccb1ea7626328d017ebbfa0e6f7
MD5 98298bcceff64e104cd2cda5761832d9
BLAKE2b-256 3fde76227b87b5e5892ed70a1e69dc6f4a7e2ed5a5f68e1734d17289e2527a1d

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 ddad66f53da08ec5e1323f245ea4f72bb1cf19a934fd5e391b8d5046e0d8638b
MD5 95a695436fac03f01340a4efe89ab374
BLAKE2b-256 d146d0056552530eb0cd78b47dbb4827a18b4638f5eff20712fd2b7d54872e40

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 067206cd23b8afaa9e271674497252567199ca407065de5cdaddc5cf83b6264f
MD5 71123a647e91401b8c09d89a924c5120
BLAKE2b-256 304e34c0e2e635d2c63f4b5f82ced1648d439d34bbdbbe6c5a300ecb7c00d96a

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c21ee7db427191224846fc93459912cec72b8c37dd068cc23398714377c6ea06
MD5 d5629ccd760dcf38b907db64426ac6fa
BLAKE2b-256 cc48e0ad0b8c1dcc790bf494346bc0ddf001a30696ca4d1b4ca54f7390d20887

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 98146344f32010db19f4c22316f489b6f08f80a8a3a050b2025ca888a2f6e4b6
MD5 57394567fa854ee2aa2bdc1e915a3129
BLAKE2b-256 ec631f1166ba925c7bd6f484fa2d8852bad550a503c7118cd1f0e0eff583a57c

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

  • Download URL: ocg-0.4.5-cp313-cp313-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.13, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for ocg-0.4.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a04e14c5ab6fdb996b7cea07250fe8974c2508202aae4fd9827e58f68e8a789b
MD5 b65d3f6da111b8224af78087f99c765e
BLAKE2b-256 4c2b278cd3b7157f62c2ff434d44480dd75174eeed89ce3759e0c0714e4404c6

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 35aa62b5010d223dca5b45121bbf5bb5000bf015075cdf2cb7ad268f890295f0
MD5 23a2549538c64115aed108611d0b2b54
BLAKE2b-256 4419b059a3d02db483bfdd354fbf2993dc298abae7f13db7da0e3030e6af211e

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: ocg-0.4.5-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ocg-0.4.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 50f7d7a41f420fa1b7391929f57b32289105a6130fd8f83e9fab2bc13b7bc900
MD5 a125e60d0f4f187d812471477b684317
BLAKE2b-256 f29692d163ced76cfc9a59abc5df68fc7251f0d6921bd06e31e61877c4bc8bce

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3286172a734ccf1923f21ed9881c444a2164d8802abf4e998703dfe389948365
MD5 ddb95dafee0d147f9ff5fa542eae1b87
BLAKE2b-256 82fa59b692cbaeff7fb45e5536b153f401aab9a8b679fe20a8d39f4eb31f280e

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5b5a544d62b3ab773672d3abccf57876158242e05f3de20c90baa295a5c8302a
MD5 dcfdbaf1a3edefe3e01d4912025bf0e8
BLAKE2b-256 47757f2999700cb63715221c4988744222f3026843fd3c6a527415bd08100877

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 16e5daf2bf7f3de9b8a58034816a4a391b662c96da9cc4c0463f0c41c27ec408
MD5 88b8c47e4ac04acc173a210a97713f22
BLAKE2b-256 d08a8239a610c4d80b8b4989c2de3c0e7ac5d89228b316d527e300e2532b6e99

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 5c73538e5850a10ec39a4da13eb1c80e1455daeeafe670e9da2a0e634f1ee8f0
MD5 ef08f15dc46a4e67c3d6b994861a916c
BLAKE2b-256 daa5aec0310afbe12a393d2b12e8f1c8c97f58866f5948e7a195870fb3eb4f0b

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 edfbac4165a71f280f61ff4a3c3d05bd1c93e120b11525709fe2209fe7441b85
MD5 5d7e5ac7d610d06b6e8d4b956b1089d0
BLAKE2b-256 600b007c316103b3453e7f630c4af0d86349d24f92aa464342b3f45971992f4c

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 01bc0dec98815afe450be2fe9e84138a82e798da8d34ef07a2aeee4d8136b2fd
MD5 e6781a3c23f4dc7b85f6b2605dbf7bf6
BLAKE2b-256 210b0aa8a5bdaba72e949525caa0350085a1a5875f7280f9b8e73cf6a9bb2706

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 70106385d0cb38ab155552527f2ac1c017e23b84a936561847730f096ca6abde
MD5 ddd6ec046ba31d4008d94985e5a7ca67
BLAKE2b-256 186fc7e82a5ef824e116a159032b6885b73f806a16d324a4b129a6333e698b95

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 9d83fe47f83521b11d6a3a1cacbd29d93f3a15c7028e14da30f4c2f184ad68ce
MD5 7619a1d439505aa2672994001f6b0bc5
BLAKE2b-256 736a5f62fb30c7fd4d2cd53ca1389098254c0a353c3e400f4059a2bba67b1bcd

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

  • Download URL: ocg-0.4.5-cp312-cp312-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.12, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for ocg-0.4.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 30057f1280f8441b3f902505e954642c621daa1b3000e6fd2ede2382f4b681bf
MD5 392aee23ca69ba5edfbddbb4ebc1af0d
BLAKE2b-256 f5a48482f4fabf05ad1cc4f85777234d51eadf541aafde9b7f7a20df032401c4

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cc9c435318a97b3137edc6225510bc567726c5cb09dd6efe0a7b8dd8a32bdc23
MD5 9cccbd0662dc6a8b011001536318a223
BLAKE2b-256 b9d2c96e453c9017efe4fae48641436c48274b6ff590ffeb982d018d27f6d055

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: ocg-0.4.5-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ocg-0.4.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0b2ae3fa4a94f18bd7c77a521175121b607f27358ec3ef0d00ab2eb6dff4ee6a
MD5 61b34430dab5f93310f67ca6f10d6679
BLAKE2b-256 0028c04928fd7c6b1ab4cc42d27ec1f42d9e1cf37574e177157a544d97b86134

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2a45b4c68be172fd29e1a22103521bf1eac1f79e109348b45077f181b141fd0b
MD5 54ea2775ae82db49a0f729329b511bce
BLAKE2b-256 09efb8891b36ebe5d379473bbce9f10e78421166d130c936787016f710f4faea

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 017c4b85717ca7ce28adc9caab8464a86b14d6d5f1dbd4b736df16ff1991adc1
MD5 b06a4bee0dee0074493d3accfeaff937
BLAKE2b-256 52f7631cfa60e211f4336d90186a5dfd35b81e29f52ba92d45c9f78ee1bd15a3

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 02ce62e860feb21a6a4dfcfaccd6fef930ee188bac4aaba3006e7be118b07910
MD5 d98b0ce4b17652dddcaa261dd0d2dcef
BLAKE2b-256 0eeb557f0260a4747dfde972a1b1fb2240af881076f5097ddb4bdc48235cc9b3

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 f26c9f43e85bf7a17d65263a96971ae2276caa4165a48736e8ee6c96ce2809d1
MD5 b230cd5aa664eec895f322527643bd43
BLAKE2b-256 05b15798fa090c8af515eaf05d90b3bb662bc423ec1d423165f6fb3711bf659b

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 4d7e7c1e92c640fff4d68194403abcbebd424e2b83afe4c72d35acf69347738a
MD5 181c63fa7297076778de75d3ece8da83
BLAKE2b-256 592f90a182c6884bf37ea162ddfdab8fccff9fae3849aa1fbf388ac2d3a07da6

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 4476cdf9444fc81c5a6e6052cba46e0ab8b791fddc258459bee4607c9f14f69d
MD5 1e450708c3e14390862abd61db752c9b
BLAKE2b-256 6fb36821d2ea2c0d8efa19f13c7d812e27cc9be3561bd5ec8ea9f4c5aadf1418

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0b57fdc293c8249d9a0c21c165993c841588430839ed1b9106763b8660781112
MD5 54d53ade77b8e4abb9f27bc08b8829a2
BLAKE2b-256 132fe38d00548ae081d6620a0854e0e7eb462c91cbb8dcc0a63defabfeada656

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 507b2abc62630975f781582a65222b6094fea870f6f960d907ea3448e8eb133b
MD5 836708e7ba6369cd86ef257c778cb27c
BLAKE2b-256 25bc314d0ed9cbaad6f401ccd7fff28e036f3ba9d03f44d512310a1957b42839

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

  • Download URL: ocg-0.4.5-cp311-cp311-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.11, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for ocg-0.4.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ec1d0556e4d5c8f5f94bbf029c9b94802c10ba22cf8412a1df542148985be1bf
MD5 b6a875f600df2b6779b542a0ac2a04fe
BLAKE2b-256 4efff696297696cccfd162e609546bf2b2c5cd4d5d46f19f6c4d733dec50a547

See more details on using hashes here.

File details

Details for the file ocg-0.4.5-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ocg-0.4.5-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d5349307f216048fc10f36f777f23bc8a34b00523edc1f3ec2803cf84e58f7fb
MD5 a12cfecc988c1d93f909cc21c2d7404b
BLAKE2b-256 68361a1538811c54dd85471c3dcbf7aedc40ed45f3ae62381f64a8d405761843

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