Skip to main content

PyPI version Downloads Tests Coverage

ncolor bacteria

Fast remapping of instance labels 1,2,3,...,M to a smaller set of repeating, disjoint labels 1,2,...,N. The four color theorem guarantees N ≤ 4 for any 2D segmentation. The picker will fall back to N = 5 if a 4-coloring cannot be found within the time budget. Also works for 3D labels (< 8 typically) and higher dimensions.

Install

pip install ncolor

Pulls a precompiled wheel (Linux x86_64 / aarch64, macOS arm64 / x86_64, Windows AMD64 / ARM64) for CPython 3.11 to 3.15. Only runtime deps are numpy and platformdirs.

Usage

import ncolor
ncolor_masks = ncolor.label(masks)                    # 4-color
ncolor_masks, n = ncolor.label(masks, return_n=True)  # + color count
labels = ncolor.format_labels(masks)                  # compact to 1..N
labels = ncolor.format_labels(masks, clean=True)      # + split disjoint pieces, drop tiny components
ncolor.release_buffers()                              # free the scratch kept between calls (optional)

Expand-labels is on by default (so that close-but-not-touching cells tend to be assigned distinct colors). Pass expand=False for 3D inputs where cells can over-expand. Thanks to Ryan Peters (@ryanirl) for the original suggestion.

Threading needs nothing special. A lone call uses every core; calls that overlap are handed narrower engines whose threads add up to about one machine, so several images color at once:

import concurrent.futures as cf, ncolor

with cf.ThreadPoolExecutor(4) as pool:
    colored = list(pool.map(ncolor.label, images))   # 1.3-2x on 4 threads

Nothing is measured or configured for this. Whether spreading calls out beats taking turns was swept over four machines and eight image sizes, and it depends on the image at least as much as on the machine, so there is no per-machine answer worth caching: on an 8-core i9 the same arrangement ran 1.3x faster at 512 by 512, 0.8x at 1024, and 1.1x at 4096. Averaged over sizes it pays on every machine tested, from 1.07x on that i9 to 1.9x on a 64-core Threadripper, with a worst single case of 0.76x. NCOLOR_MAX_ENGINES=1 turns it off and calls take turns on one pool as they always have. Engines are built only when calls actually overlap, so a single-threaded program holds one, and once the parallel phase is over calls go back to full width. At most NCOLOR_MAX_ENGINES (4) are created; each keeps the working set of the largest image it has seen, roughly 20 bytes per pixel. ncolor.Engine does the same by hand for callers who would rather size the threads themselves.

Any integer, bool or float label array is accepted; the cast to the engine's int32 runs in parallel inside the call. Labels beyond the int32 range are compacted automatically by label and format_labels. The engine keeps the scratch memory of the largest image it has processed until release_buffers() is called.

Vector geometry (GeoDataFrames, GeoJSON)

Data that starts out as polygons does not have to be rasterized to be colored. ncolor.geo.label reads the adjacency straight off the geometry, so nothing is lost on the way in:

pip install "ncolor[geo]"      # adds shapely; geopandas is optional
import geopandas as gpd
from ncolor import geo

gdf = gpd.read_file("cells.geojson")
gdf["color"] = geo.label(gdf)                         # 4-color, one per feature
gdf.plot(column="color", cmap="viridis")

It accepts a GeoDataFrame, a GeoSeries, a GeoJSON file / string / dict, a list of Shapely geometries, or anything with a __geo_interface__, and returns a uint8 array of colors in 1..n in input order (0 for missing or empty geometries). Pass return_frame=True for a GeoDataFrame with the colors in a column instead.

Two knobs mirror the raster ones:

kwarg meaning raster analogue
min_shared_length contact must be a shared border, not a point. The default 0.0 drops corner-only touches (the "Four Corners" rule), which is what keeps the graph planar and 4-colorable. None counts them, and then n = 5 is likely. conn=1 vs conn=2
tolerance treat features within this distance as touching, for polygons whose neighbors are separated by a hairline gap after vectorization or reprojection. In CRS units. connect_radius

With a tolerance, a positive min_shared_length is the vector form of the raster min_contact filter: dilating polygons to close gaps also creates one-point leaks between features that were never really neighbors, and those are what push a coloring from 4 up to 5. On a 5000-cell Voronoi tessellation with hairline gaps, tolerance=0.2 alone needs 5 colors; adding min_shared_length=1.0 brings it back to 4.

Pairs the filters reject become soft constraints: they still get different colors where that is free, without constraining the coloring. ncolor.geo.connect returns the adjacency pairs alone (0-indexed by row), and ncolor.color_graph colors any edge list you build yourself:

colors = ncolor.color_graph(edges, n_vertices=len(nodes))   # 0-indexed pairs

New in v2

v2 is a complete C++ rewrite. Every stage of the pipeline including label expansion has been optimized, resulting in 7–12× speedups end-to-end. The new default expand removes 1-pixel bridges and spurs before the picker sees them, and an auto-soft constraint refines the hard 4-coloring via local search to differentiate near-adjacent cells. Together these break the K₅-shaped convergence clusters that forced the v1 numba pipeline up to N = 5. See CHANGELOG.md for the full list of changes and the migration table from v1.

The rewrite also brings drop-in C++ replacements for the scikit-image and scipy.ndimage / edt calls the old pipeline relied on, with no extra install:

ncolor replaces typical speedup
ncolor.connected_components skimage.measure.label 1.5–3×
ncolor.regionprops skimage.measure.regionprops (vectorized subset: area / bbox / centroid) 1.5–3×
ncolor.expand_labels skimage.segmentation.expand_labels + scipy.ndimage.distance_transform_edt ND-parallel L1 / L2 in-engine; no scipy or edt dependency
ncolor.delete_spurs hand-rolled morphology / not in scikit-image ND, parallel

For C++ engine internals, file-by-file architecture, and threadpool design, see ARCHITECTURE.md.

Download files

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

Source Distribution

ncolor-2.1.0.tar.gz (288.4 kB view details)

Uploaded Source

Built Distributions

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

ncolor-2.1.0-cp315-cp315-win_arm64.whl (733.2 kB view details)

Uploaded CPython 3.15Windows ARM64

ncolor-2.1.0-cp315-cp315-win_amd64.whl (608.5 kB view details)

Uploaded CPython 3.15Windows x86-64

ncolor-2.1.0-cp315-cp315-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (830.7 kB view details)

Uploaded CPython 3.15manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ncolor-2.1.0-cp315-cp315-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (828.5 kB view details)

Uploaded CPython 3.15manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

ncolor-2.1.0-cp315-cp315-macosx_11_0_arm64.whl (461.7 kB view details)

Uploaded CPython 3.15macOS 11.0+ ARM64

ncolor-2.1.0-cp315-cp315-macosx_10_15_x86_64.whl (492.3 kB view details)

Uploaded CPython 3.15macOS 10.15+ x86-64

ncolor-2.1.0-cp314-cp314-win_arm64.whl (733.2 kB view details)

Uploaded CPython 3.14Windows ARM64

ncolor-2.1.0-cp314-cp314-win_amd64.whl (608.4 kB view details)

Uploaded CPython 3.14Windows x86-64

ncolor-2.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (839.4 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ncolor-2.1.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (828.1 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

ncolor-2.1.0-cp314-cp314-macosx_11_0_arm64.whl (461.2 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

ncolor-2.1.0-cp314-cp314-macosx_10_15_x86_64.whl (492.3 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

ncolor-2.1.0-cp313-cp313-win_arm64.whl (708.7 kB view details)

Uploaded CPython 3.13Windows ARM64

ncolor-2.1.0-cp313-cp313-win_amd64.whl (591.5 kB view details)

Uploaded CPython 3.13Windows x86-64

ncolor-2.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (838.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ncolor-2.1.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (826.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

ncolor-2.1.0-cp313-cp313-macosx_11_0_arm64.whl (461.0 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

ncolor-2.1.0-cp313-cp313-macosx_10_14_x86_64.whl (492.0 kB view details)

Uploaded CPython 3.13macOS 10.14+ x86-64

ncolor-2.1.0-cp312-cp312-win_arm64.whl (708.6 kB view details)

Uploaded CPython 3.12Windows ARM64

ncolor-2.1.0-cp312-cp312-win_amd64.whl (591.4 kB view details)

Uploaded CPython 3.12Windows x86-64

ncolor-2.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (838.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ncolor-2.1.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (826.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

ncolor-2.1.0-cp312-cp312-macosx_11_0_arm64.whl (460.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ncolor-2.1.0-cp312-cp312-macosx_10_14_x86_64.whl (491.9 kB view details)

Uploaded CPython 3.12macOS 10.14+ x86-64

ncolor-2.1.0-cp311-cp311-win_arm64.whl (707.0 kB view details)

Uploaded CPython 3.11Windows ARM64

ncolor-2.1.0-cp311-cp311-win_amd64.whl (588.9 kB view details)

Uploaded CPython 3.11Windows x86-64

ncolor-2.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (837.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

ncolor-2.1.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (825.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

ncolor-2.1.0-cp311-cp311-macosx_11_0_arm64.whl (459.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

ncolor-2.1.0-cp311-cp311-macosx_10_14_x86_64.whl (488.8 kB view details)

Uploaded CPython 3.11macOS 10.14+ x86-64

File details

Details for the file ncolor-2.1.0.tar.gz.

File metadata

  • Download URL: ncolor-2.1.0.tar.gz
  • Upload date:
  • Size: 288.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0.tar.gz
Algorithm Hash digest
SHA256 3925c65782a3666321fc721d61a2e4d379b1a8f331dfaf989da3978356e120be
MD5 7842391f4a679a2df335fb2df1dfba89
BLAKE2b-256 c6c394400952f6e4efaad8afa8f1a2e724182d005b34af5232f3b011d1a00ea5

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0.tar.gz:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp315-cp315-win_arm64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp315-cp315-win_arm64.whl
  • Upload date:
  • Size: 733.2 kB
  • Tags: CPython 3.15, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp315-cp315-win_arm64.whl
Algorithm Hash digest
SHA256 68af081ba2d9abd6c48d67cc68958f31539c0fc2966a8f9111e4c1dfcf784a36
MD5 8389e84a0de191e455a77f4bee2b70f4
BLAKE2b-256 d0fd17a1f9e394b84574269758e31a0a0089eebc4bc5518c873161eafc164c62

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp315-cp315-win_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp315-cp315-win_amd64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp315-cp315-win_amd64.whl
  • Upload date:
  • Size: 608.5 kB
  • Tags: CPython 3.15, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp315-cp315-win_amd64.whl
Algorithm Hash digest
SHA256 aa2d19027fc804b8e9134b286bdd2bed37cdd751becd8f863f0e0fdbaf73beb8
MD5 717dc0ecdbd5e5395b91d25902b7b343
BLAKE2b-256 ca8f4933f3d9e6d2e0d365ed278da6adf78636ab0276bac7ef930eb042ea06d5

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp315-cp315-win_amd64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp315-cp315-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp315-cp315-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0bf97d101d9ec3c72bc4d280375cd98eb794972449c7f5e8708cadc9a46a7776
MD5 6ae5a5c53026099d59c8cccd4401cad4
BLAKE2b-256 1c5715f59086c2d97396b686d097b3e87ba81015cc1c8ab366a87aa4c93c9553

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp315-cp315-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp315-cp315-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp315-cp315-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8ee78d8fcf6dd79123e40c08977bc3486e96001b140a69c93c34a749ab09d138
MD5 f35ba3b06a7860a81b8de7e3aed441d0
BLAKE2b-256 5363ed66e0e91e2314fca931a3590a19d117d3ba7288622c35815478f5193f83

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp315-cp315-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp315-cp315-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp315-cp315-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9322bef3ff22de76519385ac81268c3e254dbffe594e46b927262f58fbbc3e64
MD5 381ef70090f5ab036c304536ba861c5a
BLAKE2b-256 41fb9fa6b5b458bd33d5d042592216d2b2bab403d5af88e58f5bd439d57be201

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp315-cp315-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp315-cp315-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp315-cp315-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 f6ca5ccf6e4ce11579a9ae18b46e3906f8d9584bf84f1cbbffad3bd35a4b5a9e
MD5 6abb8901be242f2062c7bf29ffe9198d
BLAKE2b-256 0abff2da76049b4417d8d33207937a152e549f4b867bed4289679420ea50fec4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp315-cp315-macosx_10_15_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 733.2 kB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 5cfec426334963cfc0e77e571c03448d48dcaccdfc3e09e490b6a69ab52e1ba2
MD5 a1314f3e2455fbe664c3818f60917273
BLAKE2b-256 446f78c75fa92b8d7667d6ad5e3c6dc83d91d3d1209ecb7a7529920d4864b682

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp314-cp314-win_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 608.4 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 c784f1779436c27bb6c045fdfc1c726f5f5b7694262b64ad678538350e8a3c28
MD5 af0a690ce08a0ae28d3c9b1a4ee3d303
BLAKE2b-256 3748fb153d367ca87a54d07bf12cc942364b8a06f3664643dd5b21bc04c48ce9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp314-cp314-win_amd64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bbf5b402f5c26ac39f9f08497ef7b53ab91db920bb295a762d7556902e1e8061
MD5 458d7c06792e89d4a1094c9db8f0a977
BLAKE2b-256 6fb24122fd830a437653a146fa6a2442c6472d7fb912c8370ce71a711629ecb4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a8460c673e3afb9e78af094d610b22364c7dccf0518b3e0b8c204ca860dffd46
MD5 04d478378b8fd6ca96dff93e7fa8293c
BLAKE2b-256 4009769b526ab51c1b622622f5d723e55fa8952d7b10c4d656a8aa488a98b30a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c782623fec5b588fe4822e45e300f3d4d77c586dda13a072aada1b99068e9fe0
MD5 d961d1fc71173a70c67b10e214407665
BLAKE2b-256 41158d2dcfa9d8918c99c5c26822a9790346e948524d123de245cfe6a597f10c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 0d22a870346f6aa59687b0fc2fb4982d3ba151d1213ef5ea29e1538c40a55259
MD5 e59d682bda532d9678c7e4188108b213
BLAKE2b-256 26e8d241afb2ab87dfc2f0a8de672433902227960f5c7cbc763c4bce7be5c6ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 708.7 kB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 46336961c4139242833a9308b3c09f32109002a07d3768ff80a02da96cae50d2
MD5 6c5ffe3d8224f55269027844a933185f
BLAKE2b-256 91f4a7924742d7e2dc8ac3abe1e5d9cac983e78a0cee86f87cdb1757263d42c8

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp313-cp313-win_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 591.5 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 55fa33fdc936e75c2ecec68eb80ecc80e2781a37f06315b8d90e11715a294574
MD5 1312838574e1c02124e0e31dfa587b24
BLAKE2b-256 1bafb816541a3caac0e5557edc4b9c452a6eeab85508a5171f9c5f7bc32bfcc4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp313-cp313-win_amd64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e07793d9bf7b4c6ff484ae8b1c3e141b72a644b8f6b4edbe2e1b76e16a084002
MD5 2d9378d080ee9bfe1deb6d5f8aa7a777
BLAKE2b-256 09ba99575af3f4ea8ad5e7fafd949606b65c607d12cbfb21678657969cd9b3d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6e32a6007e77dc965f127f8687195fbd51e7796e72a888573cfa01deb20d88e9
MD5 7b3fd392d5ca7da5144adaf6cf46b2cf
BLAKE2b-256 3ff77e8b51c6a531e990d0a24231c2a9dd84505cd96b330c1ff95d094e6b4ca5

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 44478023bc893122444014d288dc24bc67ee1569bd1963a0adca4b460e6dedd7
MD5 63feddef1e4ce60e537ec76f3956e2e3
BLAKE2b-256 e41599926bf43e58fba02f8bc585ddb73b3f89805f4612253ee5bbbb97676b7e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp313-cp313-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp313-cp313-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 b889aa34c3dad86898cb42702375cdc9d10e9ef03ac07abee737306d23973915
MD5 7ef2c4d39fec7d0f775f30ea27983d47
BLAKE2b-256 1e54ebdceda674ca9ccbb2610744c147262ad4e23201ccc19c677bc2504ad17f

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp313-cp313-macosx_10_14_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 708.6 kB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 bdf4d180a489be48d97f48ffca4cb3b78d262061b6b403faef37dd8110d7283f
MD5 40eefed6e8a2bd95c8e24a1b33bb2486
BLAKE2b-256 65a9c87e3551e650cb885bd2959379fd94d49c8e022df6d8be160a46e564ab61

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp312-cp312-win_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 591.4 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 66879e97b8110d1851f5a999a96816c2f3aab640464194a70cdf900af2cd9382
MD5 c2a857a2a8acfa94a078cfbd2d2ce89f
BLAKE2b-256 67dda22534bf1d149842ecca5d81a59975d3b79e529c0781f0c13442d26a52ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp312-cp312-win_amd64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7c8bff7496e508a7ca9e79f2798519aa063a4360184137a69a1b808a0a0d2bc7
MD5 87e0625bdc064246bdd98552ea513a7b
BLAKE2b-256 9da20ed48f79de5a83fdcc780488f0287689ca2f2493f7bac6b78668db2bac66

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b64a06c363f3df6914592593beee7968d43e29b0fb07107a0107948395b43bab
MD5 46dc103c0da9e7f5127574503f3303e3
BLAKE2b-256 20f3657aaaabc5f02127706d768fd28b65bd36da20981aa65cf335bf629ea10f

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7507043ef6de725ba768babbbe6b60d0e7f1dbb11dd27b797c0b257c093b41dd
MD5 7adf15c8ebb7cff5021549b1e2f281f2
BLAKE2b-256 6276ab880006e42eb04963143fc1a0f62fc7ca0b5608fad14c9fbf8eb3e0c974

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp312-cp312-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp312-cp312-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 5b16ba7e8375e333d952536329ce17c5d8af36f7d6dc1c4515654175e209c94a
MD5 1c0d7774e1ce1ae4813fcc55f06a45cf
BLAKE2b-256 a99a7d054c97b0665707d8ef666f4fbc081239f638e7aacb41e8ac60f43e0f1e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp312-cp312-macosx_10_14_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 707.0 kB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 27777aee4750cc95ef37dc4fb916804575d5f9afd0cc126d2fa2145314da6e4e
MD5 8854e81ad70c755439e200fb22c63029
BLAKE2b-256 3502fcd7e56a55e3259d7806a8792ed78b3e0fe9c4cde42a93e30320aa324bd0

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp311-cp311-win_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: ncolor-2.1.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 588.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ncolor-2.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a3cfa55cc30ba11e13d518473411e9a992330f6d21587369430353ed45313092
MD5 297581eeb7518b6b6b7d51c7745edba6
BLAKE2b-256 1a9ad47148d29ad26796dc78b53bf280ee5cacb0d28da7d3666f6e33ce16bb39

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp311-cp311-win_amd64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9658f2394f7db45186502af62b6661909163ff0e7c81a46f7b084e247a915a53
MD5 00c4422e09263a7c1c422ab369cf34c5
BLAKE2b-256 b2db87ad0b55ea2d99f1b4ae41b0a1a60f1cdcf80a026d1aecb8d0f3d6da4718

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 55a52a55ebe089cbd339f3e5aad075b3503a7bb97a9ed6ad438391589a2b8501
MD5 0eff40255c87f3424aa6e046eb0ec27f
BLAKE2b-256 7cd9b2c7d9a3d46f12089bda5089159b9f1fd6f21dd425d5baadf3ff03a0e8a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f2a83389b7b247711ccde11371346a7d2d529bec288f0217a3f46ed311d0bc72
MD5 a2de460b371b246a1f6640b997b66387
BLAKE2b-256 0ba439721c0d2cb80679ec8f50feb7ee77c6530323bd64a145f24487c51cc8f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ncolor-2.1.0-cp311-cp311-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for ncolor-2.1.0-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e429cff1c1fa4b40b545be3749834bbba2dfbad8d8c30ab7adcb8039e959dd71
MD5 a1de2b8700c4af35c69bd382d744fce6
BLAKE2b-256 714b9c77e87d26d346a3651b3d64e1666c34c65a4af76995c31483849f6ffd81

See more details on using hashes here.

Provenance

The following attestation bundles were made for ncolor-2.1.0-cp311-cp311-macosx_10_14_x86_64.whl:

Publisher: build_wheels.yml on kevinjohncutler/ncolor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

2.2.0

31 files

2.1.1

31 files

This release

2.1.0 This release

31 files

2.0.2

21 files

2.0.1

21 files

2.0.0

21 files

1.5.3

2 files

1.5.2

2 files

1.5.1

2 files

1.5.0

2 files

1.4.5

2 files

1.4.4

2 files

1.4.3

2 files

1.4.2

2 files

1.4.1

2 files

1.3.0

2 files

1.2.1

2 files

1.2.0

2 files

1.1.8

2 files

1.1.6

1 file

1.1.5

1 file

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.1

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page