Skip to main content

CodaraScan — Offline Barcode Detection for Images and PDFs

PyPI Python CI License

One local Python API for detecting, localizing, and decoding 40 selectable 1D and 2D barcode formats in images and PDF documents.

CodaraScan is an open-source, offline barcode detector, barcode localizer, decoder, and document scanner for Python. It finds multiple linear and matrix barcodes, returns their quadrilateral coordinates, and preserves decoded text and original payload bytes. Multi-page PDF processing, ordered concurrency, streaming results, and a command-line interface are included—without a cloud API, telemetry, or runtime model download.

For teams looking for a universal barcode detection layer, CodaraScan provides one stable interface across QR Code, Data Matrix, PDF417, Aztec, MaxiCode, Code 128, Code 39, EAN, UPC, ITF, DataBar, and other formats. The exact 40-format catalog and its validation boundaries are documented below; “multi-format” does not mean that every degraded barcode is guaranteed to decode.

Install · Quick start · PDF batch scanning · CLI · Formats · API reference · PyPI

Alpha notice — CodaraScan 0.1.1 is alpha software. Its APIs and schemas may change during 0.x. Pin an exact version and evaluate it against your own documents before production use. See the known limitations and release policy.

Why CodaraScan?

Most barcode libraries focus on decoding a clean, tightly cropped symbol. Document workflows need more: finding an unknown number of barcodes on a page, retaining their geometry, processing long PDFs in a controlled order, and handling symbols that can be located but not decoded. CodaraScan exposes those states explicitly.

Capability What CodaraScan provides
Barcode detection Finds multiple 1D/linear and 2D/matrix symbols in an image or PDF page
Barcode localization Returns clockwise pixel and normalized quadrilaterals, even when decoding is disabled
Barcode decoding Returns Unicode text, exact raw payload bytes, and a canonical format name
Document scanning Reads selected PDF pages, preserves requested order, and supports bounded parallel work
Batch processing Scans complete or selected multi-page PDFs and can stream pages without accumulating them
Format coverage 40 selectable formats: 27 linear and 13 matrix selections in version 0.1.1
Recovery profiles fast Tessera mode for lower latency; robust Mosaic mode for stronger recovery
Local processing No server, network request, telemetry, external executable, or runtime model download
Integration Typed Python API, deterministic JSON, CLI, schemas, and a private persistent worker protocol
Deployment Native wheels for supported Linux, macOS, and Windows targets; Python fallback for Tessera

Common use cases

  • Extract QR Codes and barcodes from scanned PDF documents.
  • Localize multiple barcodes on shipping labels, forms, invoices, and archive pages.
  • Process document batches while keeping page results in deterministic order.
  • Read retail, logistics, inventory, manufacturing, and library barcode formats.
  • Return barcode coordinates for redaction, cropping, indexing, annotation, or review.
  • Run barcode recognition inside private, air-gapped, or offline environments.
  • Add a local barcode reader to Python, OpenCV, Pillow, desktop, or backend workflows.

Installation

CodaraScan supports CPython 3.11, 3.12, 3.13, and 3.14.

python -m pip install codarascan

For reproducible alpha deployments, pin the current release:

python -m pip install codarascan==0.1.1

Quick start

Detect and decode barcodes in an image

from codarascan import DecodedSymbolResult, Scanner

scanner = Scanner(
    mode="fast",       # "fast" (Tessera) or "robust" (Mosaic)
    symbols="all",     # "linear", "2d", or "all"
    decode=True,
)

result = scanner.scan_image("shipping-label.png")

for symbol in result.symbols:
    print("status:", symbol.status.value)
    print("corners:", [(point.x, point.y) for point in symbol.quad])

    if isinstance(symbol, DecodedSymbolResult):
        print("format:", symbol.format)
        print("text:", symbol.text)
        print("raw bytes:", symbol.raw_bytes)

result.symbols may contain zero, one, or multiple detections. Every symbol has full-image pixel geometry in quad and resolution-independent coordinates in normalized_quad.

Scan only selected barcode formats

Narrowing the format set can reduce unnecessary work and makes the expected contract explicit:

from codarascan import Scanner

scanner = Scanner(
    mode="robust",
    symbols="all",
    formats=["qr-code", "data-matrix", "code-128", "ean-13"],
)

result = scanner.scan_image("warehouse-label.jpg")

Canonical names and common aliases are accepted. Unknown formats and contradictions such as symbols="linear" with formats=["qr-code"] fail at configuration time.

Localize barcodes without decoding

Use detection-only mode when you need coordinates for crops, overlays, redaction, indexing, or a separate decoding pipeline:

from codarascan import Scanner

localizer = Scanner(symbols="all", decode=False)
result = localizer.scan_image("document.png")

for symbol in result.symbols:
    assert symbol.status.value == "localized"
    print(symbol.kind.value, symbol.quad, symbol.normalized_quad)

Localization-only results deliberately have no text, raw_bytes, or format attributes.

Scan a region of interest

The ROI is (x, y, width, height) normalized to the oriented full image. The returned barcode coordinates remain relative to the full image.

result = scanner.scan_image(
    "form.png",
    roi=(0.50, 0.00, 0.50, 0.40),  # top-right portion of the page
)

Scan a multi-page PDF

Page numbers are one-based. Requested order is preserved even when pages are processed concurrently.

from codarascan import Scanner

scanner = Scanner(mode="robust", symbols="all")

document = scanner.scan_document(
    "archive-batch.pdf",
    pages=[3, 1, 2],
    workers=4,          # positive integer or "auto"
    on_error="collect", # keep successful pages and report page errors
)

for page in document.pages:
    print(f"page {page.page}: {len(page.image.symbols)} symbol(s)")

print("complete:", document.complete)
print("errors:", document.errors)

Use on_error="raise" for fail-fast behavior. With "collect", failed pages are recorded as typed errors while successful pages remain available.

Stream a large PDF with bounded memory

iter_document yields ordered page results without storing all returned pages:

from codarascan import Scanner

scanner = Scanner(mode="fast")

with scanner.iter_document("large-document.pdf", workers="auto") as pages:
    for page in pages:
        save_result(page)

    print("complete:", pages.complete)
    print("errors:", pages.errors)

At most the selected worker count is in flight. Access and rendering are serialized; owned pixel snapshots are then analyzed concurrently.

Use the one-off functions

For short scripts, the module-level functions reuse cached immutable scanner configurations:

from codarascan import scan_document, scan_image

image_result = scan_image("label.png", mode="fast", formats=["code-128"])
pdf_result = scan_document("forms.pdf", mode="robust", workers=2)

Long-running applications can create a Scanner once, optionally call scanner.warm(), and safely share the immutable configuration across threads.

Barcode detection, localization, and decoding

These terms describe different parts of barcode recognition:

  • Localization (also spelled localisation) describes where a detected barcode is. CodaraScan returns four clockwise corners rather than only an axis-aligned bounding box.
  • Decoding interprets the bars or modules and returns the payload and barcode symbology.

A difficult symbol may be localized without being decoded. CodaraScan keeps that information instead of silently discarding the region.

Status Meaning
decoded Geometry, format, Unicode text, and raw payload bytes are available
localized_unresolved_linear A linear/1D barcode was confidently localized, but its payload could not be decoded
localized_unresolved_matrix A matrix/2D barcode was confidently localized, but its payload could not be decoded
localized Geometry-only result produced with decode=False
review_candidate A barcode-like region was found with weaker evidence and may require human review

Confidence is an engine-specific evidence score in [0, 1], not a calibrated probability. It is not directly comparable between Tessera and Mosaic. Treat status as the primary semantic signal.

Fast vs. robust barcode scanning

CodaraScan makes the performance/recovery choice explicit. It does not switch engines automatically.

Mode Engine Best fit Trade-off
mode="fast" Tessera Low-latency document scanning and common workflows Less exhaustive recovery
mode="robust" Mosaic Difficult inputs where stronger recovery is worth more work Higher CPU time and latency

Start with fast, measure on representative inputs, and choose robust where it materially improves your corpus. Avoid choosing a mode from synthetic benchmarks alone.

Supported barcode formats

CodaraScan 0.1.1 exposes 40 selectable barcode formats generated from the installed ZXing-C++ readable catalog: 27 linear/1D selections and 13 matrix/2D selections.

1D and linear barcodes

codabar, code-128, code-32, code-39, code-39-extended, code-39-standard, code-93, databar, databar-expanded, databar-expanded-stacked, databar-limited, databar-omni, databar-stacked, databar-stacked-omni, dx-film-edge, ean-13, ean-8, ean-upc, isbn, itf, itf-14, pzn, telepen, telepen-alpha, telepen-numeric, upc-a, upc-e.

2D and matrix barcodes

aztec, aztec-code, aztec-rune, compact-pdf417, data-matrix, maxicode, micro-pdf417, micro-qr-code, pdf417, qr-code, qr-code-model-1, qr-code-model-2, rmqr-code.

Inspect the catalog programmatically instead of hard-coding it:

from codarascan import supported_formats

groups = supported_formats()

for kind, formats in groups.items():
    print(kind, [item.name for item in formats])

Some selectors are semantic or family views, and clean-fixture coverage is not the same as production accuracy on blur, glare, damage, perspective, or poor quiet zones. See the compatibility notes and 0.1.0 format evidence.

Inputs and results

Image inputs

scan_image accepts:

  • str and pathlib.Path image paths;
  • encoded bytes, bytearray, and memoryview values;
  • Pillow images;
  • 2D uint8 grayscale NumPy arrays;
  • 3-channel BGR and 4-channel BGRA uint8 NumPy arrays.

EXIF orientation is applied to encoded and Pillow inputs. NumPy arrays are analyzed exactly as supplied and copied to isolate the scan from caller mutation.

PDF inputs

scan_document and iter_document accept PDF paths or encoded PDF bytes. Version 0.1 supports PDFs only through the document API; password-protected documents do not yet have a password parameter.

Geometry and payloads

Every symbol includes:

  • status and kind;
  • engine-specific confidence and contributing sources;
  • quad: four pixel-space points in top-left, top-right, bottom-right, bottom-left order;
  • normalized_quad: the same four points normalized by image width and height;
  • analyzed image_width and image_height.

A DecodedSymbolResult additionally includes format, text, its value alias, and exact raw_bytes.

Deterministic JSON

from codarascan import scan_image, to_json

result = scan_image("label.png", mode="robust")
print(to_json(result, indent=2))

to_json emits UTF-8, sorted keys, finite JSON numbers, and Base64-encoded raw bytes. JSON schemas and golden examples ship in codarascan/schemas for consumer contract tests.

Command-line interface

The codarascan CLI uses the same engines and result contract as the Python API.

# Scan an image and emit one JSON result
codarascan image shipping-label.png --mode fast --symbols all --json

# Restrict decoding to QR Code, Data Matrix, and Code 128
codarascan image mixed-label.png --formats qr-code,data-matrix,code-128 --json

# Return barcode locations without decoding payloads
codarascan image page.png --no-decode --json

# Scan selected PDF pages in parallel and stream NDJSON
codarascan document archive.pdf --pages 1-4,7 --workers auto --ndjson

Human-readable output is the default. --json emits one shared-schema result; --ndjson streams page objects and a final document summary. Standard output is reserved for results, while warnings and debug-output locations use standard error.

Exit code Meaning
0 Scan completed and found symbols
1 Scan completed successfully with no symbols
2 Invalid usage or input
3 Processing failure
4 Partial document result

Run codarascan image --help or codarascan document --help for every option.

Platform support

Official 0.1.1 wheels target:

Operating system Architectures Python
Linux glibc / manylinux x86_64, ARM64 CPython 3.11–3.14
macOS Intel x86_64, Apple Silicon ARM64 CPython 3.11–3.14
Windows x86_64 CPython 3.11–3.14

The native Tessera extension is included in supported wheels. If it cannot load, CodaraScan emits one warning and continues with the slower Python reference backend. Set CODARASCAN_FORCE_PYTHON=1 to exercise that path. Result metadata records the selected backend.

PyPy, CPython 3.10 and older, Alpine/musl, 32-bit systems, and Windows ARM64 are outside the initial support contract. See the full compatibility matrix.

Offline operation, privacy, and resources

Import, warm-up, image scanning, PDF rendering, CLI, and worker operations make no network requests and emit no telemetry. Default scans leave no persistent crops, overlays, rendered pages, or payload files.

Inputs, decoded payloads, diagnostics, and explicit debug output may still be sensitive. Applications should apply their own access control and retention policy.

CodaraScan intentionally imposes no hidden limits on input bytes, dimensions, pages, workers, CPU, memory, or result count. Large images, 300-DPI PDF rendering, broad format searches, diagnostics, and high worker counts can exhaust resources. Production callers own quotas, isolation, timeouts, admission control, and cancellation.

Frequently asked questions

How do I detect barcodes in a PDF with Python?

Install CodaraScan, create a Scanner, and call scanner.scan_document("file.pdf"). Use pages=[...] to select pages, workers="auto" for bounded parallel analysis, or iter_document to stream a large PDF without accumulating all page results.

Can CodaraScan find multiple barcodes in one image or document page?

Yes. Each image or page result contains a symbols tuple with zero, one, or multiple barcode detections. Each detection has its own status, kind, confidence, and quadrilateral.

Can it return barcode coordinates without reading the value?

Yes. Set decode=False in Python or pass --no-decode to the CLI. CodaraScan returns localization results with pixel and normalized quadrilaterals and does not expose payload attributes.

Is CodaraScan an offline barcode scanner?

Yes. Barcode detection, decoding, PDF rendering, the CLI, and the worker all run locally with no telemetry or network calls. No cloud account or API key is required.

Is CodaraScan a universal barcode reader?

It is a multi-format barcode detection layer with 40 selectable 1D and 2D formats in version 0.1.1. No honest scanner can guarantee every barcode under every capture condition, so CodaraScan publishes the exact catalog, evidence, and known limitations instead of making an unlimited compatibility claim.

Which mode should I use?

Begin with mode="fast" for lower latency. Evaluate mode="robust" when difficult inputs justify stronger recovery and extra computation. Benchmark both on your actual documents.

Is CodaraScan open source and usable commercially?

Yes. CodaraScan is released under the permissive Apache License 2.0. Review the license, notice, and third-party notices for the complete terms.

Documentation

The private codarascan _worker command provides a persistent, versioned, length-prefixed JSON protocol for backend adapters without opening a network port. It is not a public network service or a pre-1.0 stability promise.

Development and contributing

Contributions, reproducible bug reports, and representative barcode samples are welcome. Read CONTRIBUTING.md before opening a pull request.

git clone --recurse-submodules https://github.com/flh-raouf/codarascan.git
cd codarascan
python3.11 -m venv .venv
.venv/bin/python -m pip install -e ".[dev]"
.venv/bin/ruff check src/codarascan tests
.venv/bin/mypy
.venv/bin/python -m pytest
.venv/bin/python -m build

Research history remains under archive/ and benchmarks/; it is not installed as runtime package data.

Contact

CodaraScan is maintained by Abderraouf FELLAHI. For questions and bug reports, use GitHub Issues or email ma_fellahi@esi.dz.

License

CodaraScan is open-source software licensed under Apache-2.0. Third-party provenance is recorded in THIRD_PARTY_NOTICES.md.

Download files

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

Source Distribution

codarascan-0.1.1.tar.gz (205.0 kB view details)

Uploaded Source

Built Distributions

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

codarascan-0.1.1-cp314-cp314-win_amd64.whl (446.5 kB view details)

Uploaded CPython 3.14Windows x86-64

codarascan-0.1.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (251.7 kB view details)

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

codarascan-0.1.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (250.9 kB view details)

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

codarascan-0.1.1-cp314-cp314-macosx_11_0_arm64.whl (248.6 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

codarascan-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl (249.1 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

codarascan-0.1.1-cp313-cp313-win_amd64.whl (438.5 kB view details)

Uploaded CPython 3.13Windows x86-64

codarascan-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (251.7 kB view details)

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

codarascan-0.1.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (250.9 kB view details)

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

codarascan-0.1.1-cp313-cp313-macosx_11_0_arm64.whl (248.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

codarascan-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl (249.0 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

codarascan-0.1.1-cp312-cp312-win_amd64.whl (438.5 kB view details)

Uploaded CPython 3.12Windows x86-64

codarascan-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (251.7 kB view details)

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

codarascan-0.1.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (250.9 kB view details)

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

codarascan-0.1.1-cp312-cp312-macosx_11_0_arm64.whl (248.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

codarascan-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl (249.1 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

codarascan-0.1.1-cp311-cp311-win_amd64.whl (438.5 kB view details)

Uploaded CPython 3.11Windows x86-64

codarascan-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (251.6 kB view details)

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

codarascan-0.1.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (250.9 kB view details)

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

codarascan-0.1.1-cp311-cp311-macosx_11_0_arm64.whl (248.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

codarascan-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl (248.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

Details for the file codarascan-0.1.1.tar.gz.

File metadata

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

File hashes

Hashes for codarascan-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2b6c81bb1cd061c2177410edeabf6bf9db60ff4f0bd6b53e0ea4c44d1877ec90
MD5 2cfd2f158405a8a10a02a866d7d53266
BLAKE2b-256 64dcec36edd8b4e22ce737dc68c7f098a54afca6f9c0cc819c9f3271417e1a83

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1.tar.gz:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: codarascan-0.1.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 446.5 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 codarascan-0.1.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 ffee03c52e0af264aec58d329fcd766bb47d59d53d11e084d068e3276992b7a4
MD5 208c1e81591c41cb37453559a16418dc
BLAKE2b-256 18eb114fee559a4d99c8a15e07da4f840452b52b69550c98e6ecea303afbae65

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp314-cp314-win_amd64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 180e889a32590c7c7a83a099e6e27bc26558030bba8a78205b7d25653a503d2c
MD5 737292a712763dd18059cf2467b20984
BLAKE2b-256 be4dcb92bdcaa05b32217a24d559d97ac22409dd9c1007e6b0a3ba49e58416d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f4b5f110702080b102cc57f58e84d5860be347b6d8315d8ad632eca5170f70de
MD5 afb817ba7786cd73c87b3835b9c8daf7
BLAKE2b-256 1be26453ab311a6e8581418cd04dcfa0ac91877ab9b80f06f98954c80d070acb

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e23451c3d73e30f7b91748051172692d3ed3a306be5a74c77eedd4d8dc997e18
MD5 7129a7aba629ec14b25486e3489ab3f6
BLAKE2b-256 17c17fd2d4845d5d2298e3b5e8cca067539ae040ce06599e8df1ae9a399a371a

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 f42bd4b8a5f1af0bf7282174e6c0a631ea41b524c665b2fa02f53708a4b162e6
MD5 22f80bf79e37dd68445ea6e39584614d
BLAKE2b-256 80dbcd6ac097c69850d0e6df528b73783d0b3e4f83ee1c8d4fc8e79269b6b2e8

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: codarascan-0.1.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 438.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 codarascan-0.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 186dfecd8dfdff98c877b87d52bb46576249de5dc772c4d8f72cb92733d00e85
MD5 2aa633f9c8a4efd2c91d7548a11ccc1e
BLAKE2b-256 cbd8dc07847fa1dab93e72876a847b1111e9d38a66619c275e82781140cc2115

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp313-cp313-win_amd64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 62fea814449a53d29c0824b69fcac8a8480572753a34d4675ad5b291ce5bd26b
MD5 d13bfa0979d5a1c03c6089d92238308c
BLAKE2b-256 cdc0671fcf30c0d49d49b855383d1642435b9b35c4674bea474e6da2e003fe1e

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 afa40ac7fe3be3488ef2391814f6366e63b095c996b9b4b28b08f9e68d88bc26
MD5 407f6b44763541372b7c7a9c8141682a
BLAKE2b-256 3a9e348be6694cb1366e9a7db702d4c68e8bfc988ba70b7a5ae2969b99134f1f

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 073acb94451854fa89da281f54117dc295f190aac26ce6a488222cf1905b388a
MD5 8f1e21b5fe2d39603b9acbc5e05d9e4f
BLAKE2b-256 5a921f6ed88368bf61b7f50d7923a717d7237ee6fe66fc99ee9c23f9d3e0c699

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 203aafba4a19703ea17e65728590b03efcf580321c244585b4132d987196ee7a
MD5 bbdf579dd87c0f9c1b008914a873f3b7
BLAKE2b-256 6b037d38a8a361c32bc6f190aa054605ac7f5e50ed4dafd332b5f74e5600cb1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: codarascan-0.1.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 438.5 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 codarascan-0.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5f97975287c8cce23aaccc64aa1761ff512d4ed5e8964c8938f2397374a9a750
MD5 b34dc645785bceb266bea0c25f67fc93
BLAKE2b-256 7d31bbf46a73e796a2103f2fc532332e9bf6a720fe4f3adcd85b2c5563fbc2ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp312-cp312-win_amd64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dfc68377b05c22a0d1b58d07ff61f574b1f3bc99b802402c12fc82e20fb6b61f
MD5 f4e2f1ff7dc51d57afdabe137f6fc0ab
BLAKE2b-256 755aa900ddf34be5152ed9e69476ab54c368e1f4320fba62cc275b9dc6845a88

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bbc148825ba20c2a448b8314a7282a57586e3c1aa56ecca3930a10abdb1ba1bc
MD5 69c61318dd751f737fb762a58c9f0aab
BLAKE2b-256 d4dc31e52dda40b923974d29ee94add90c30307477a761daf6769ab62a16eaa3

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5595f4454f91c5a6a32a8b951b507aa330404e53b9562866b7ab3cd1fd881a3d
MD5 b642c834ecd650b8f6a6bcaad7c265f3
BLAKE2b-256 2e10b3ea874d31ab7cf1d3916ce4a245fe0a272a06fa37355d73d84d95cf552c

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 c16fef7ad03fda632bd7d3e286aad8d0d15ee43514b394a78ddbaf41f40bd197
MD5 5eecde706b9abf92154cdc3f49a84ee6
BLAKE2b-256 ae97cd7973ffc9ec88de7884de265f3b7e7abf0c060bdd41612d8914afe75209

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: codarascan-0.1.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 438.5 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 codarascan-0.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d3ac033da2afe588e8958470c5338d00bbfda1db085863aca2a1a834569f9c22
MD5 42aac5632f7000d90f3e018187009abf
BLAKE2b-256 39bfb84a423a84a452b9561aaa78157c0d164d7afa7806ade1f08677949196ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp311-cp311-win_amd64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9649fec87421ce22ae8bb64ed9edcc95c5111124162243ecba83fa5c133efbed
MD5 19acb9d8c38090514bf953521115e350
BLAKE2b-256 b4a1180b0b622138283ae5731ff8724fae0ba87644c803c1a10005275fcc28d5

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 91f85f86416b222ddfbf00d5643fccd953f82b0ad0a490a2322a5233d94b02f0
MD5 67d5bd203abcacb528d02bc1cabbc60a
BLAKE2b-256 39f23e171b6cfdb9ba7bbeff51ef344c6d57b4397aeed0268d332e881233129c

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 92048010a816617582ca495944f70e6f20a5c5fb593d9089954128264766f044
MD5 14815ca53c7e4aa75384ea64e9e730b8
BLAKE2b-256 8fa44e1097371f388a0b279c7a8ff7c8d500048ed2fe804fde93ccb87ed48599

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

File details

Details for the file codarascan-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for codarascan-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f5685dcad5c489fa6ae96c7a79917a929235dae796ccb71e358224ed8b571192
MD5 d0fcf0e099f658d0298486d4a09c63ee
BLAKE2b-256 b09e76660f5227981ecfb918695a83f3e5de7da00d7d6da90c44d25e99a97d05

See more details on using hashes here.

Provenance

The following attestation bundles were made for codarascan-0.1.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: release.yml on flh-raouf/codarascan

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

Supported by

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