Skip to main content

Fast, openpyxl-compatible Excel I/O with Rust backend and built-in formula engine (67 functions, financial, date, time, text, lookup, conditional stats)

Project description

WolfXL

Openpyxl-compatible Excel automation with a Rust backend.
Read, write, and surgically modify workbooks, including charts, images, encryption, structural ops, and pivot-table construction.

PyPI Python License ExcelBench


Openpyxl-style imports. One import change.

- from openpyxl import load_workbook, Workbook
- from openpyxl.styles import Font, PatternFill, Alignment, Border
+ from wolfxl import load_workbook, Workbook, Font, PatternFill, Alignment, Border

Most workbook automation keeps the same shape: ws["A1"].value, Font(bold=True), and wb.save() all work the way openpyxl users expect.

For codebases where changing every openpyxl import is impractical, install the runtime alias once at process startup:

import wolfxl; wolfxl.install_as_openpyxl()

import openpyxl
from openpyxl.styles import Font

WolfXL vs openpyxl benchmark chart

Dated WolfXL 2.0 release-artifact evidence is available in ExcelBench: 2026-04-28 wheel-backed rerun, 18/18 green features, and performance snapshots.

On the dated 2026-06-10 supported-scope benchmark (openpyxl 3.1.5 vs WolfXL 2.0): ~8-9x faster on large writes and ~12.7-18x faster on large reads at 200,000-row scale, with the same openpyxl API. Per-workload measured numbers are in Batch APIs below; smaller grids show smaller multipliers.

Current Evidence

  • WolfXL package surface is at 2.0.0.
  • The current strict SOTA audit reports the supported-scope gate is currently green: current fidelity evidence passes, and fresh clean-source OpenPyXL plus Rust/Rust-backed benchmark reruns are source-relevant.
  • WolfXL runs OpenPyXL's own published test suite unchanged: the upstream tests import openpyxl, which install_as_openpyxl aliases to wolfxl, so they exercise WolfXL's real code paths. It passes across the supported scope with zero triaged behavior gaps, and this openpyxl-compatibility check runs in CI on every change (the parity job in .github/workflows/ci.yml, driven by scripts/run_openpyxl_corpus.py against the vendored upstream corpus).
  • The broader all-future-surface SOTA claim is still not ready; the audit keeps that gated until future package/install-route, open-ended render, click-level interaction, and future-surface proof boundaries are resolved.
  • The latest local evidence snapshot is docs/performance/baselines/2026-06-05-current-sota-claim-audit.md.
  • For launch copy, use the Launch Claim Brief: it turns the proof files into safe public wording and keeps the broader all-future-surface claim gated.
  • Historical wheel-backed ExcelBench evidence is available in the 2026-04-28 release snapshot fidelity report.
  • The paired dated evidence includes the release snapshot dashboard and the matching perf snapshot; refresh these before using them as next-release proof.
  • Use the Public Evidence Status page to see which claims are current, historical, or still gated.

Install

pip install wolfxl

Quick Start

from wolfxl import load_workbook, Workbook, Font, PatternFill

# Write a styled spreadsheet
wb = Workbook()
ws = wb.active
ws["A1"].value = "Product"
ws["A1"].font = Font(bold=True, color="FFFFFF")
ws["A1"].fill = PatternFill(fill_type="solid", fgColor="336699")
ws["A2"].value = "Widget"
ws["B2"].value = 9.99
wb.save("report.xlsx")

# Read it back — styles included
wb = load_workbook("report.xlsx")
ws = wb[wb.sheetnames[0]]
for row in ws.iter_rows(values_only=False):
    for cell in row:
        print(cell.coordinate, cell.value, cell.font.bold)
wb.close()

Pivot tables through modify mode

import wolfxl
from wolfxl.chart import Reference
from wolfxl.pivot import PivotCache, PivotTable

wb = wolfxl.load_workbook("source-data.xlsx", modify=True)
ws = wb.active
src = Reference(ws, min_col=1, min_row=1, max_col=4, max_row=100)
cache = wb.add_pivot_cache(PivotCache(source=src))
pt = PivotTable(
    cache=cache, location="F2",
    rows=["region"], cols=["quarter"], data=[("revenue", "sum")],
)
ws.add_pivot_table(pt)
wb.save("pivot.xlsx")

WolfXL constructs pivot tables with pre-aggregated records — pivots open in Excel, LibreOffice, and openpyxl with data populated, through the modify-mode patcher (load_workbook(..., modify=True)), with no refresh-on-open required. In the project comparison below, openpyxl preserves pivots on round-trip but does not provide this constructor, and XlsxWriter does not support pivots.

Link a chart to the pivot:

from wolfxl.chart import BarChart

chart = BarChart()
chart.pivot_source = pt          # emits <c:pivotSource> + per-series <c:fmtId>
ws.add_chart(chart, "F18")

Existing pivots can also be edited in modify mode: source ranges, row/column/page field placement, page-field selection, and data-field aggregation all route through PivotTableHandle. Layout edits stamp refreshOnLoad="1" so Excel refreshes derived pivot cache records on open; source-range edits with the same shape stay byte-stable.

Three Modes

WolfXL architecture

Mode Usage Engine What it does
Read load_workbook(path) NativeXlsxBook Parse XLSX with values, formulas, styles, metadata, drawings, and tables
Write Workbook() rust_xlsxwriter Create new XLSX files from scratch
Streaming write Workbook(write_only=True) Per-sheet temp file + <sheetData> splice Append-only, bounded-memory ETL exports — peak RSS dominated by SST + styles, not by row data
Modify load_workbook(path, modify=True) XlsxPatcher Surgical ZIP patch — only changed cells are rewritten

Modify mode preserves everything it doesn't touch: charts, macros, images, pivot tables, VBA.

Supported Features

Features marked Preserved are kept verbatim on modify-mode round-trip (open, edit other cells, save). The table below lists the currently documented support surface; caveats for pivots, external links, and adjacent non-openpyxl file formats live in Limitations.

Category Features
Data Cell values (string, number, date, bool), formulas, comments, hyperlinks
Styling Font (bold, italic, underline, color, size), fills, borders, number formats, alignment; Color(theme=...) and Color(indexed=...) accepted
Structure Multiple sheets, merged cells, defined names (read + write), freeze panes, row heights, column widths, document properties
Tables / Validation / CF ws.tables, ws.add_table, ws.data_validations, ws.conditional_formatting (read + write in Workbook() mode)
Charts 16 chart families — BarChart, LineChart, PieChart, DoughnutChart, AreaChart, ScatterChart, BubbleChart, RadarChart, BarChart3D, LineChart3D, PieChart3D, AreaChart3D, SurfaceChart, SurfaceChart3D, StockChart, ProjectedPieChart
Pivots PivotCache, PivotTable, RowField / ColumnField / DataField / PageField; slicers, calculated fields/items, GroupItems; pivot-chart linkage via chart.pivot_source = pt; deep-clone of pivot-bearing sheets
Images Image (PNG / JPEG / GIF / BMP); one-cell, two-cell, absolute anchors; modify-mode add_image
Encryption Read + write Agile (AES-256 / SHA-512) via wolfxl[encrypted]
Iteration iter_rows, iter_cols, rows, columns, values, range slicing (ws["A1:B2"], ws["A:B"], ws[1:3])
Utils get_column_letter, column_index_from_string, coordinate_to_tuple, range_boundaries, absolute_coordinate, quote_sheetname, range_to_tuple, rows_from_range, cols_from_range, get_column_interval, dataframe_to_rows, is_date_format
Preserved / linked content Macros (VBA) — round-trip cleanly through modify mode with raw xl/vbaProject.bin bytes available via Workbook.vba_archive for inspection (no authoring API); external workbook links (wb._external_links exposes target / sheet_names / cached values and supports append/remove/update-target authoring); embedded objects also round-trip

openpyxl compatibility status

Modules that import from openpyxl generally work against wolfxl. Unsupported classes raise NotImplementedError with a clear hint at the construction site - no silent no-ops.

Class / API Status
Font, PatternFill, Border, Side, Alignment, Color Full support
Comment, Hyperlink Read + write (write mode); modify-mode setters T1.5
DataValidation, Table, TableStyleInfo, TableColumn Read + write (write mode); modify-mode setters T1.5
CellIsRule, FormulaRule, ColorScaleRule, DataBarRule, IconSetRule Read + write (write mode); modify-mode setters T1.5
DefinedName, DocumentProperties Read + write (write mode); modify-mode setters T1.5
NamedStyle, Protection, GradientFill, DifferentialStyle Constructor / dataclass support
BarChart, LineChart, PieChart, Reference, Series (from wolfxl.chart) Full support (1.6+) — 16 chart families incl. 3D / Stock / Surface / ProjectedPie
Image (from wolfxl.drawing.image) Full support (1.5+) — PNG / JPEG / GIF / BMP, all anchor types
PivotTable, PivotCache (from wolfxl.pivot) Supported (2.0+) — modify-mode construction, chart linkage, and deep-clone within the documented pivot caveats
AutoFilter Read + write support
ws.insert_rows, ws.delete_rows Full support (modify mode, 1.1+) — RFC-030
ws.insert_cols, ws.delete_cols Full support (modify mode, 1.1+) — RFC-031
ws.move_range Full support (modify mode, 1.1+) — RFC-034
wb.move_sheet Full support (modify mode, 1.1+) — RFC-036
wb.copy_worksheet Full support (write + modify mode, 1.1+) — RFC-035

Performance at Scale

Dated WolfXL 2.0 release-artifact evidence is now available for the OpenPyXL and required Rust/Rust-backed benchmark grids. Use those reports for claim-grade numbers, not older draft 10×-100× marketing copy or placeholder benchmark rows. On the dated 2026-06-10 supported-scope benchmark, the measured large-workbook results are roughly 8-9x faster writes and 12.7-18x faster reads versus openpyxl at 200,000-row scale; smaller grids show smaller multipliers. The broader all-future-surface SOTA claim remains gated.

For historical context and reproducible benchmark commands, see Benchmark Results. For the current claim status, see Public Evidence Status.

The implementation goal remains stable throughput as files grow, with linear pivot construction over source-row count.

How WolfXL Compares

Every Rust-backed Python Excel project picks a different slice of the problem. In the supported-scope comparison tracked by the current audit, WolfXL covers all four practical workflow areas shown below: formatting, modify mode, openpyxl API compatibility, and pivot-table construction. This is a capability map, not a claim that every future Excel surface is already exhausted.

The measured Rust/Rust-backed benchmark gate is separate from this table. It currently covers rust_xlsxwriter 0.95.0, crates.io package xlsxwriter 0.6.1 with repo alias xlsxwriter-rs, calamine 0.35.0, umya-spreadsheet 3.0.0, fastexcel 0.20.2, and python-calamine 0.6.2; see Public Evidence Status for the dated, supported-scope result and caveats.

Library Read Write Modify Styling openpyxl API Pivots
fastexcel Yes
python-calamine Yes
FastXLSX Yes Yes
rustpy-xlsxwriter Yes Partial
openpyxl Yes Yes Yes (full DOM) Yes Native Round-trip only*
XlsxWriter Yes Yes
WolfXL Yes Yes Yes (surgical) Yes Yes Yes (construction + linkage)
  • Styling = reads and writes fonts, fills, borders, alignment, number formats
  • Modify = open an existing file, change cells, save back — without rebuilding from scratch
  • openpyxl API = same load_workbook, Workbook, Cell, Font, PatternFill objects
  • Pivots = construct a pivot table from Python with pre-aggregated records (the file opens in Excel / LibreOffice / openpyxl with data populated, no refresh-on-open)

*openpyxl preserves pivot tables on round-trip but does not provide a Python-side constructor that emits the pivotCacheRecords snapshot. WolfXL's public ecosystem claim here should stay tied to the current Public Evidence Status boundary.

See Limitations before relying on OLAP or external pivot caches, broad pivot visual styling, or linked-workbook external-link refresh behavior.

WolfXL's public .xlsx and .xlsb readers are native. .xlsb is read-only but exposes values, cached formula results, and cell styles; legacy .xls remains on the Calamine-backed value path.

Batch APIs for Maximum Speed

For write-heavy workloads, use append() or write_rows() instead of cell-by-cell access. These APIs buffer rows as raw Python lists and flush them to Rust in a single call at save time, bypassing per-cell FFI overhead entirely.

from wolfxl import Workbook

wb = Workbook()
ws = wb.active

# append() — fast sequential writes (3.7x faster than cell-by-cell)
ws.append(["Name", "Amount", "Date"])
for row in data:
    ws.append(row)

# write_rows() — fast writes at arbitrary positions
ws.write_rows(header_grid, start_row=1, start_col=1)
ws.write_rows(data_grid, start_row=5, start_col=1)

wb.save("output.xlsx")

For reads, iter_rows(values_only=True) uses a fast bulk path that reads all values in a single Rust call. The per-workload numbers below come from the dated 2026-06-10 supported-scope benchmark (openpyxl 3.1.5 vs WolfXL 2.0); smaller grids show smaller multipliers.

wb = load_workbook("data.xlsx")
ws = wb[wb.sheetnames[0]]
for row in ws.iter_rows(values_only=True):
    process(row)  # row is a tuple of plain Python values

For ingestion, dataframe, or review workflows that need values plus formatting signals, use cell_records(). It returns compact dictionaries without creating one Python Cell object per coordinate:

records = ws.cell_records(
    include_format=True,
    include_formula_blanks=False,
    include_coordinate=False,
)

for record in records:
    print(record["row"], record["column"], record["value"], record.get("number_format"))
API vs openpyxl (2026-06-10 dated rerun) How
ws.append(row) 8.4x faster write (200k rows) Buffers rows, single Rust call at save
ws.write_rows(grid) 9.0x faster write (200k rows) Same mechanism, arbitrary start position
ws.iter_rows(values_only=True) 18.0x faster read (200k rows) Single Rust call, no Cell objects
ws.cell_records() Fast styled sparse read Single Rust call, values plus compact format metadata
ws.cell(r, c, value=v) 4.3x faster write Per-cell FFI (compatible but slower)

Formula Engine

WolfXL includes a built-in formula evaluator with 67 functions across 7 categories. Calculate formulas without external dependencies - no need for formulas or xlcalc.

from wolfxl import Workbook
from wolfxl.calc import calculate

wb = Workbook()
ws = wb.active
ws["A1"] = 100
ws["A2"] = 200
ws["A3"] = "=SUM(A1:A2)"
ws["B1"] = "=PMT(0.05/12, 360, -300000)"  # monthly mortgage payment

results = calculate(wb)
print(results["Sheet!A3"])  # 300
print(results["Sheet!B1"])  # 1610.46...

# Recalculate after changes
ws["A1"] = 500
results = calculate(wb)
print(results["Sheet!A3"])  # 700
Category Functions
Math (10) SUM, ABS, ROUND, ROUNDUP, ROUNDDOWN, INT, MOD, POWER, SQRT, SIGN
Logic (5) IF, AND, OR, NOT, IFERROR
Lookup (7) VLOOKUP, HLOOKUP, INDEX, MATCH, OFFSET, CHOOSE, XLOOKUP
Statistical (13) AVERAGE, AVERAGEIF, AVERAGEIFS, COUNT, COUNTA, COUNTIF, COUNTIFS, MIN, MINIFS, MAX, MAXIFS, SUMIF, SUMIFS
Financial (7) PV, FV, PMT, NPV, IRR, SLN, DB
Text (13) LEFT, RIGHT, MID, LEN, CONCATENATE, UPPER, LOWER, TRIM, SUBSTITUTE, TEXT, REPT, EXACT, FIND
Date / Time (12) TODAY, DATE, YEAR, MONTH, DAY, EDATE, EOMONTH, DAYS, NOW, HOUR, MINUTE, SECOND

Named ranges are resolved automatically. Error values (#N/A, #VALUE!, #DIV/0!, #REF!, #NUM!, #NAME?) propagate through formula chains like real Excel. Install pip install wolfxl[calc] for extended formula coverage via the formulas library fallback.

Case Study: SynthGL

SynthGL switched from openpyxl to WolfXL for their GL journal exports (14-column financial data, 1K-50K rows). Results: 4x faster writes, 9x faster reads at scale. 50K-row exports dropped from 7.6s to 1.3s. Read the full case study.

Case Study: Finance Template Modify Mode

For a representative finance workflow, see Template-Driven Finance Workbook Updates. It benchmarks the exact workload where WolfXL is most differentiated: open an existing workbook with formulas, charts, comments, validations, and large detail sheets, touch three assumption cells, and save.

Case Study: Styled Report Generation

For a fresh-workbook export path, see Styled Report Generation. The current local snapshot on a 10k-row reporting workbook came in at 0.553s for openpyxl vs 0.380s for WolfXL, about 1.46x faster.

Case Study: Workbook-Preserving ETL

For the "update one data block but keep the workbook" workflow, see Workbook-Preserving ETL Update. The current local snapshot for replacing a 2,000-row block inside a 20,000-row reporting workbook came in at 1.064s for openpyxl vs 0.496s for WolfXL, about 2.15x faster.

Case Study: Pivot Construction

For a capability-first example, see Pivot Construction From Python. It demonstrates workbook-scoped pivot cache creation, pivot-table emit, and pivot-linked chart output through WolfXL modify mode. The current local snapshot constructed the full artifact on a 10,000-row source sheet in 0.229s median with emitted pivot cache, pivot records, pivot table, and chart <c:pivotSource> parts all validated.

How It Works

WolfXL is a thin Python layer over compiled Rust engines, connected via PyO3. The Python side uses lazy cell proxies: large workbooks do not materialize every cell up front, so values and styles are fetched from Rust only when you access them. Runtime still depends on the workbook and access pattern; validate speed claims against a measured workload. On save, dirty cells are flushed in one batch, avoiding per-cell FFI overhead.

License

MIT

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

wolfxl-2.0.0.tar.gz (19.4 MB view details)

Uploaded Source

Built Distributions

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

wolfxl-2.0.0-cp313-cp313-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.13Windows x86-64

wolfxl-2.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

wolfxl-2.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

wolfxl-2.0.0-cp313-cp313-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

wolfxl-2.0.0-cp313-cp313-macosx_10_12_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

wolfxl-2.0.0-cp312-cp312-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.12Windows x86-64

wolfxl-2.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

wolfxl-2.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

wolfxl-2.0.0-cp312-cp312-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

wolfxl-2.0.0-cp312-cp312-macosx_10_12_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

wolfxl-2.0.0-cp311-cp311-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.11Windows x86-64

wolfxl-2.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

wolfxl-2.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

wolfxl-2.0.0-cp311-cp311-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

wolfxl-2.0.0-cp311-cp311-macosx_10_12_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

wolfxl-2.0.0-cp310-cp310-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.10Windows x86-64

wolfxl-2.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

wolfxl-2.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

wolfxl-2.0.0-cp310-cp310-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

wolfxl-2.0.0-cp310-cp310-macosx_10_12_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

wolfxl-2.0.0-cp39-cp39-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.9Windows x86-64

wolfxl-2.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

wolfxl-2.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

wolfxl-2.0.0-cp39-cp39-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

wolfxl-2.0.0-cp39-cp39-macosx_10_12_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

Details for the file wolfxl-2.0.0.tar.gz.

File metadata

  • Download URL: wolfxl-2.0.0.tar.gz
  • Upload date:
  • Size: 19.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wolfxl-2.0.0.tar.gz
Algorithm Hash digest
SHA256 95c58d7989da80e41b9db3f10f0d1262f736f83abd05305121a06cf51a8bbd0f
MD5 a30375ecd124aabe110417015d62aebb
BLAKE2b-256 9a592dc84d3b457964c35e94664c8be66f35ac0484a38754d17f292284a17b84

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0.tar.gz:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: wolfxl-2.0.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wolfxl-2.0.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b8e4143cf10fce42e2af64ff1380b5b57d4f8ebc375b11c4785f6c1a0045d30f
MD5 fd373eed3257acf8e5710d13755b246a
BLAKE2b-256 72c9a56e7d13b765a2c356c533f8a049d9b3fa5ac90c8a89af3fc7e548e3f8f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp313-cp313-win_amd64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aa6f537341463b08ab040583feb7a43188d3cc9168d586f74f178f3535271515
MD5 8d97d48c88461087f5b174989623fb5f
BLAKE2b-256 308b41d01fe3313460a87ccf235efa29452d40e49c99ed27d686b2a8a681bb73

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b16192d547b83f174f3160ceb04d4c455984f93092b0d592b924ec22ec3d5cfe
MD5 f9245ef05b2631f3cc0e7a402a3cf791
BLAKE2b-256 ced60522a5086d61852141fd86eb6fb5f39b879f9a4e962d8a5c5ed4c5b8c2dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 055e633b851284ee79b5723aad5f8821cac390bfa6451de3cb19d0a191a27b0f
MD5 7bc70774ead1830ff3eb61ac137f61a6
BLAKE2b-256 8f3555969689f802ee0823300bb62bf151d6a53cf093e806f66cf85a855f6c08

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 81c3f92172f6c8769d2c961702b46c87f8c4c31f60226f3cd37fb93ff57fbc0a
MD5 cc6297db0b72b181e2fb49028d0e07d4
BLAKE2b-256 718a71beceddd19c0f5ba5b66a57cdcbc0d1e926efc301ed62e488b9b7dae092

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: wolfxl-2.0.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wolfxl-2.0.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 2283c9e480710cdb7a40597553094da06abcb2199bba311c9f57b40b5c2655f4
MD5 8a43212e43b071abaf1b94cf9a149e7d
BLAKE2b-256 86f5dd272570caa8f0bc3f26ade8429047ad73178aa68a94537421d8e01ac31a

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp312-cp312-win_amd64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 844371602b4307b88de99613a142ab4df9f99c062b4cd6461ff6e9ebec5de817
MD5 023eae22a7946072c2451a4f7438917a
BLAKE2b-256 b7d8b576581af8606936c72f4fb4479dec7b4fdcf4406abfa2401e19c97eccd5

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 37c9d52aeae4be1302a0b8c5bfd3eeb02a39ca065464a678762cbbd41d4685e2
MD5 61ff60d22eae7a870de0a61ddc9784d9
BLAKE2b-256 1332dd3903ce3318b393245a9d24b094934af8776a2cd13f74711cc5645b180e

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8db86b3c6734c2fe97c6e871b9019ec84a4051fe9536b7c86819160a5b6af0d5
MD5 93e0453d1dd6e5bed1efcf68c922e46e
BLAKE2b-256 6b25d0be05ff44be911b6214ea3abbd1c72d8e7144cd25b70ac1ce5b48534f99

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 da63f794df389366e4b19da557ac20e190df67568db4d2a3b70f882c979c1124
MD5 b82e7eea05b5403d4253dff38a266d31
BLAKE2b-256 cf97534e292883d99fe4dbf42b729576201c3b26adaa5b57692663ab6413cd89

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: wolfxl-2.0.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wolfxl-2.0.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e8618cea2449adedcc13c4a8ee927beab55ef4f0b37e6ce145aed173d3feb8cb
MD5 5c084624d5655ac9e61b37347d250686
BLAKE2b-256 a5626c0e8e467c929408acc3470916007345fb3e51844f690190907c5ba32053

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp311-cp311-win_amd64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f4c92b54173ba76ca43c19873810172f6d9dddd7de699b25471632c53f32616f
MD5 dfd5b4946998c1ab17616f63b6509c82
BLAKE2b-256 d10904177816e0dea3a5e21f86ba69c6c0c70cce453f12e4d770a2f68e10554a

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a30320e9de0ca7234558a1448957067628afdeb8de42441543cfafda1f119706
MD5 5dc8d23c27727ca6d2504761dbc76665
BLAKE2b-256 b57ef2b3bdab3c7e2de01c80c68c591a1481d0cdadd689b6246888035455a13b

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4d2e3ccda49e842a360b67607928ae4170ae08699ca64296a09da7420cc79ba1
MD5 ae3b5958ab9c6e22ef8b9e2b01cc2aed
BLAKE2b-256 49a786d55767a0d650666aea0157463c5cb7dcab6c551cffc54bb7d2e39cb972

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a1866ec64f3a98464116c3c1b1f429d601be20b2552d205fe9975dbf3aae4e91
MD5 ec9a2c441f838d71c698538add6cb8f5
BLAKE2b-256 1c9f96a5f730ab5a8e938114435e194f08a7d11565236a37296ed935f9322c3e

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: wolfxl-2.0.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wolfxl-2.0.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 7aa62b320812df20c49183b01a241b0b8a4088d19c386dcde1be3df727b726b5
MD5 3ffde122ad3a8bc40b40a3fc2bfe6180
BLAKE2b-256 83dcbe972dad4ff184c9faac00b0ed7f5ccd0c0e52a3fb457e71ac356e6cd018

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp310-cp310-win_amd64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d8df9ee4638a1e8bb62f9a14aa8303e8f8aa462b45ac8068bd7ed0ac17d55d2f
MD5 160c13592a92939da4fa6e2186a30856
BLAKE2b-256 e33494131ddaad6e558bd16f2c3290f09d1abc135dd69314aa5f420197f02bcd

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 06c602a631ebafb77e9bbde2758b97335b4556da368de429db0a03a6c7bad72b
MD5 79a2e87538e59f6fec0d5706afd27c8f
BLAKE2b-256 a34a26c3404c7e4500470620891e54056b017805be784f8ecee74feff42e0141

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7d0c369339f85bf5373d68f0f8a3bacdebdfdad7e2d924f64e1bf0a4c81df2ad
MD5 06376210b9ad80f0214263c6db354614
BLAKE2b-256 8070f0f77aed02f026b5325b99f2af004a2a5673e39b2e7a7ef244353f94c3c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ba1d35beaf051aded102b029399a9a00d597f6cb29c1c97493a90b228565aebe
MD5 e62f192889b6cb50ccd739a06e410db4
BLAKE2b-256 a351bc8be6d300c3c6bab30a26d36dcc03afbb7604e3fe2c5b918c52d2f2ea7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: wolfxl-2.0.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wolfxl-2.0.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 28c8a7e4eff4d3fd90bc48cdb779c15221145f0072660f1202186c4d36d5a176
MD5 4e49c61cffb49afab9c06fc8e2af4561
BLAKE2b-256 abc20a1d41f5bef291bc5c9fa75ef099228d87a399937aab9584d3f02ab3a05f

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp39-cp39-win_amd64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 42a190e4a4a5f703b00f1c20be6c65e963f16de4fb210ea899ba704461c00907
MD5 c1a40f280564ae4fe58887f5e8890802
BLAKE2b-256 dfefae86f92bb21ae255f065f2edc915d993c8dbdf8188b317dd68e3e8d4e4d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9e0ddc1ff73d939ca92def482da8e178626169490eca27605d3d27f859e29028
MD5 d3f1e134480294b640083459c9e2f7e5
BLAKE2b-256 0e83536e6d574016367856779d9bdd3c7d92d2fbfd359620e321e3358893d51f

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3a966331f5175c4e52556c78705f4a156938b7a35fb583a20b3eb43a971325cb
MD5 d91f9f2e8a761b6093ec1a5813316d3b
BLAKE2b-256 f99fff0ab0b3441746fb05554f2ae26acebb83fc2941f4d3262018495c0bbac4

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: release.yml on SynthGL/wolfxl

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

File details

Details for the file wolfxl-2.0.0-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for wolfxl-2.0.0-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b730b528f1f640370d0b31656810d9779b5ceef9ca068babb2a7c5a3ceb30781
MD5 d5f004077dbe221739f2077d3baef1b1
BLAKE2b-256 4ccf1510698dd241f40b0a57bc9618f2d543e0d755172401e65ad01276520714

See more details on using hashes here.

Provenance

The following attestation bundles were made for wolfxl-2.0.0-cp39-cp39-macosx_10_12_x86_64.whl:

Publisher: release.yml on SynthGL/wolfxl

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 Pingdom Monitoring Sentry Error logging StatusPage Status page