Skip to main content

flexablelib

Fast, dependency-free terminal tables for Python.
54 border styles · ANSI colours · cell merges · decimal alignment · width fitting · CSV / Markdown / HTML / Excel / LaTeX I/O

PyPI version Python versions Tests Downloads per month Development status License: MIT Typed


flexablelib turns rows and columns into readable tables for terminals, logs, reports and docs. It has no runtime dependencies, ships prebuilt wheels with an optional C speed-up, and is covered by 1,000+ tests on Python 3.8 – 3.14.

A rounded flexablelib table with a coloured header and a red value

Install

pip install flexablelib

Optional extras: pip install "flexablelib[pandas]", "flexablelib[excel]", "flexablelib[html]" or "flexablelib[all]". The base install stays dependency-free.

30-second quickstart

from flexablelib import Table

table = Table(
    rows=[
        ["api-gateway", "eu-west-1", 99.982, 1240],
        ["auth", "us-east-1", 99.9, 312],
        ["billing", "us-east-1", 98.75, 87],
    ],
    headers=["Service", "Region", "Uptime %", "RPS"],
)
table.style_name = "rounded"            # 54 styles, see style_examples.md
table.header_color = "bold cyan"
table.color_rule = lambda value, row, column: (
    "red" if column == "Uptime %" and value < 99.5 else None
)
print(table)
╭─────────────┬───────────┬──────────┬──────╮
│ Service     │ Region    │ Uptime % │  RPS │
├─────────────┼───────────┼──────────┼──────┤
│ api-gateway │ eu-west-1 │   99.982 │ 1240 │
│ auth        │ us-east-1 │   99.9   │  312 │
│ billing     │ us-east-1 │   98.75  │   87 │
╰─────────────┴───────────┴──────────┴──────╯

Numbers align on the decimal point, colours never break alignment, and the same table exports anywhere:

table.to_markdown()                # GitHub / docs
table.to_html("report.html")       # self-contained, sortable, offline
table.to_csv("out.csv"); table.to_latex(); table.to_rst(); table.to_asciidoc()
table.to_excel("report.xlsx")      # pip install "flexablelib[excel]"
Table.from_csv("sales.csv"); Table.from_markdown(md); Table.from_pandas(df)
Styles — 54 presets, from ascii_rows to borderless
Several border styles
Themes — table.apply_theme("ocean")
Theme presets
Text on borders — table.border_text("Production", where="top")
Labels written into the table frame
Cell merges — table.merge_cells(0, 0, last_row=1)
Vertically merged cells
Zebra rows, footer, caption
Striped rows with a footer and caption
Decimal alignment — floats and scientific notation
Numbers aligned on the decimal point

More: all 54 styles · wrapping and ellipsis overflow · per-column / per-cell colour and alignment · vertical alignment · paginate() · stream() for live rows · transpose() · nested tables · fit_terminal() · hide_columns · sort_by · Roman / custom index.

How it compares

A factual feature matrix from our survey of 89 table libraries. A dash means the feature was not found in that library's documentation during the survey, not a claim that it is impossible there.

flexablelib tabulate prettytable rich
Runtime dependencies none none wcwidth markdown-it-py, pygments
Border style presets 54 many tablefmt — (hrules/vrules toggles) box styles
Decimal-point alignment ✓ ✓ — —
Row and column cell merges ✓ — — —
ANSI colours (header, rows, cells, borders) ✓ — — ✓
Zebra rows / caption / footer ✓ — — ✓
Text written on borders ✓ — — —
Wrap / truncate / ellipsis overflow ✓ — max width ✓
Sorting, pagination ✓ — ✓ —
Exports CSV, MD, HTML, Excel, RST, AsciiDoc, LaTeX HTML, LaTeX, MD, RST, org, jira, … HTML, CSV, JSON, LaTeX — (console)
Readers CSV, Markdown, HTML, dicts, pandas, Excel — CSV, DB cursor, HTML —
Nested tables ✓ — — ✓ (renderables)

rich is a full terminal-rendering toolkit (markup, live displays, progress bars) and tabulate covers many more markup dialects; pick flexablelib when you want a dependency-free, table-focused library with styling, merges and I/O in one place.

Production notes

  • Zero runtime dependencies. Readers/writers that need a third-party package (pandas, openpyxl, lxml) are opt-in extras and imported lazily.
  • Performance. Rendering 10,000 rows × 6 columns takes ~157 ms with the C extension (~172 ms pure Python), on par with prettytable, ~1.3× faster than tabulate and ~18× faster than rich's table. pandas to_string() is faster still (~85 ms). Full method and numbers: docs/BENCHMARKS.md.
  • Wheels. Prebuilt for CPython 3.8 – 3.14 on Linux (manylinux, musllinux), Windows x64 and macOS arm64. Anywhere else it builds from source or falls back to pure Python — installation never fails for want of a compiler. from flexablelib.fast import implementation; implementation() tells you which backend is live.
  • Colour safety. Escape sequences are emitted only to a TTY by default, never when NO_COLOR is set; FORCE_COLOR or table.use_colors = True overrides. Logs and files stay clean.
  • Unicode. Widths are measured in terminal columns, so CJK, emoji and coloured text stay aligned.
  • Windows. Box-drawing styles need a UTF-8 console (chcp 65001 or PYTHONUTF8=1; Windows Terminal is usually UTF-8 already). ASCII styles (ascii_rows, ascii_double_underline_rows, psql, markdown, …) work on any code page.
  • Typed. Ships py.typed (PEP 561).
  • Stability. flexablelib follows semantic versioning: within 2.x, public Table attributes and methods are not removed or renamed without a deprecation period; new features arrive in minor/patch releases and every release is listed in the CHANGELOG.
  • Support. Bugs and requests: issues. Security reports: SECURITY.md. Contributions: CONTRIBUTING.md.

Windows console encoding

chcp 65001
set PYTHONUTF8=1

(PowerShell: $env:PYTHONUTF8=1.)

Guide

Usage

Creating a table is simple.

Code Example

from flexablelib import Table

new_table = Table()
print(new_table)

Output

++
++
++

This is an empty table. It has no data so it only displays this strange thing.

A table that has columns but no rows — a query that came back empty — shows its headers rather than raising:

┌──────┬───────┐
│ name │ value │
╞══════╪═══════╡
└──────┴───────┘

It's possible to add data as columns or rows, or even alternating each one. Any untitled column will be named automatically.

Code Example

new_table.add_column('Name', ['Jade', 'John', 'Jane'])
new_table.add_column('Age', [20, 30, 40])
new_table.add_column('Results', [9.651, 3, 245.7])
print(new_table)

Output

+----------------------+
| Name   Age   Results |
+======+=====+=========+
| Jade |  20 |   9.651 |
| John |  30 |   3     |
| Jane |  40 | 245.7   |
+------+-----+---------+

Code Example

new_table = Table()
new_table.add_column('Name', ['Jade', 'John', 'Jane'])
new_table.add_column('Age', [20, 30, 40])
new_table.add_column('Test\nResults', [9.651, 3, 245.7])
new_table.add_row(['Piotr\nBaltimore', 27, 3.5])
new_table.add_row(['Sam', 21, 0.6519])
print(new_table)

Output

+----------------------------+
| Name        Age       Test |
|                    Results |
+===========+=====+==========+
| Jade      |  20 |   9.651  |
| John      |  30 |   3      |
| Jane      |  40 | 245.7    |
| Piotr     |  27 |   3.5    |
| Baltimore |     |          |
| Sam       |  21 |   0.6519 |
+-----------+-----+----------+

As it is visible, the table will format automatically new lines and data types, for now without trying to parse strings that could be converted to another type.

The Table class offers a variety of options that allow things like showing the index of each row, changing the style of the table, hiding the headers, etc.

See style examples here.

Code Example

new_table = Table()
new_table.add_column('Name', ['Jade', 'John'])
new_table.add_column('Age', [20, 30])
new_table.add_column('Test\nResults', [9.651, 3, 245.7])
new_table.add_row(['Piotr\nBaltimore', 27, 3.5])
new_table.add_row(['Sam', 21])
new_table.show_index = True
new_table.style_name = 'double_horizontal'
new_table.missing_value = '?'
print(new_table)

Output

╒═══╤═══════════╤═════╤═════════╕
│ i │ Name      │ Age │    Test │
│   │           │     │ Results │
╞═══╪═══════════╪═════╪═════════╡
│ 0 │ Jade      │  20 │   9.651 │
│ 1 │ John      │  30 │   3     │
│ 2 │ ?         │   ? │ 245.7   │
│ 3 │ Piotr     │  27 │   3.5   │
│   │ Baltimore │     │         │
│ 4 │ Sam       │  21 │       ? │
╘═══╧═══════════╧═════╧═════════╛

The missing value aligns as if it was of the same type of the other data in the column.

Changed in 2.3.0: an explicit None is a missing cell, just like a padding gap or table.missing. It displays missing_value (blank by default), not the text "None". Set table.missing_value = '?' to show gaps explicitly. Use the string "None" if you want that literal text. This applies to printing, compose(), pagination, streaming, and transposition in every style.

Missing cells do not turn numeric columns into text: numeric alignment and the decimal axis are preserved, and overflow='wrap' does not split floats because a column contains None. Raw rows and exports still represent gaps as None; rendering Table(rows=table.rows) reproduces the same cells (copy headers and display settings too if you changed them).

table = Table(rows=[[924.87], [None], [1.25]])
assert 'None' not in table.compose()
assert Table(rows=table.rows).compose() == table.compose()
table.missing_value = '?'  # changes the display, not stored None values

See missing-cell semantics for migration details.

This shows how to get the row and column count. If the index is shown, this count remains unaffected by that column, although, you can get the internal count.

Code Example

new_table.show_index = False
new_table.show_headers = False
print(new_table)
print('row:', new_table.row_count)
print('columns:', new_table.column_count)
new_table.show_index = True
print(new_table)
print('internal_row_count:', new_table.internal_row_count)
print('internal_column_count:', new_table.internal_column_count)

Output

╒═══════════╤════╤═════════╕
│ Jade      │ 20 │   9.651 │
│ John      │ 30 │   3     │
│ ?         │  ? │ 245.7   │
│ Piotr     │ 27 │   3.5   │
│ Baltimore │    │         │
│ Sam       │ 21 │       ? │
╘═══════════╧════╧═════════╛
row: 5
columns: 3
╒═══╤═══════════╤════╤═════════╕
│ 0 │ Jade      │ 20 │   9.651 │
│ 1 │ John      │ 30 │   3     │
│ 2 │ ?         │  ? │ 245.7   │
│ 3 │ Piotr     │ 27 │   3.5   │
│   │ Baltimore │    │         │
│ 4 │ Sam       │ 21 │       ? │
╘═══╧═══════════╧════╧═════════╛
internal_row_count: 5
internal_column_count: 4

Colour

Colour the header, the borders, whole columns, whole rows, or individual cells. Specs accept names, attributes, 256-colour indexes and hex triples.

table.header_color = 'bold cyan'
table.border_color = 'grey'
table.column_colors = {'Service': 'bright_white'}
table.color_rule = lambda value, row, column: (
    'red' if column == 'Delta' and value < 0 else None
)

color_rule receives the original value, so numeric comparisons work directly.

Colour is emitted only to a terminal by default, and never when NO_COLOR is set. FORCE_COLOR or table.use_colors = True overrides that. Because compose() returns a string you may send anywhere, the default errs toward not embedding escape sequences in something bound for a file.

Widths are measured in terminal columns, not characters, so coloured cells and CJK or emoji data stay aligned.

Reading and writing

Table.from_csv('sales.csv')          # numeric columns parsed and aligned
Table.from_html(markup)              # standard library parser, no dependency
Table.from_dicts(records)
Table.from_pandas(dataframe)         # pip install flexablelib[pandas]
Table.from_excel('report.xlsx')      # pip install flexablelib[excel]

table.to_csv('out.csv')
table.to_markdown()
table.to_html('report.html', paginate=25)
table.to_excel('report.xlsx')

Since 2.2.0 every export writes the table as print(table) shows it: rows in sort_by order (with sort_reverse and callables), row_filter applied, hide_columns left out, and the text formats (to_csv, to_markdown, to_html, to_rst, to_asciidoc, to_latex) hold the formatted strings — float_format, int_format, leading_zeros, custom_format, strip_cells — without padding or colour. Empty cells are empty strings.

table.sort_by, table.sort_reverse = 'Uptime', True
table.row_filter = lambda row: row[1] < 99.9
table.float_format = '.1f'
table.to_markdown()                  # same rows, order and numbers as print(table)

to_records() keeps the stored Python values (numbers stay numbers, gaps are None) in display order; to_records(formatted=True) gives the printed strings. to_excel() writes numbers as numbers and turns simple format specs (',d', '.2f', '.1%', '{:,.2f}'…) into the cell's Excel number format.

to_html writes one self-contained file — the stylesheet and the sorting, filtering and pagination script are inline — so it works offline and from a file:// URL.

Text formats deliver everything as strings, and a column of strings is left-aligned. parse_str_numbers converts numeric-looking text so it aligns as numbers; the readers turn it on for you:

table.parse_str_numbers = True

Values with leading zeros are left alone, so '007' stays a string.

table.rows is a copy of the stored data, in insertion order and with None in empty cells (sorting, filtering and formats do not touch it), so editing it does not change the table. Use add_row and set_cell instead:

table.set_cell(0, 'Uptime', 98.2)    # row position, column position or header
table.set_cell(1, 2, table.missing)  # empty a cell

Merging cells

Render a rectangular block as a single cell, across columns, down rows, or both. Coordinates are inclusive, zero-based, and ignore the index column.

table.merge_cells(0, 0, last_column=2, value='Quarter summary')
table.merge_cells(1, 0, last_row=3)                # keeps the top-left content
table.merge_cells(0, 0, 2, 2, value='Total', align='r')

A merge never widens the table -- columns are still sized by their unmerged content -- so text longer than its span is truncated.

Cards, grids, responsive tables and terminal interfaces

Card draws one record in a frame, in any of the table styles. The title goes into the top border when the style draws one:

from flexablelib import Card

card = Card(title='Ana', subtitle='Norte',
            fields={'Edad': 28, 'Ciudad': 'Guadalajara'},
            footer='actualizado hoy')
print(card.render(width=30))
╭─ Ana ──────────────────────╮
│ Norte                      │
├────────────────────────────┤
│ Edad    28                 │
│ Ciudad  Guadalajara        │
├────────────────────────────┤
│ actualizado hoy            │
╰────────────────────────────╯

field_columns=2 (or 'auto') lays the fields out as a grid of tiles, and actions adds [ Action ] chips:

╭─ Pedido 42 ────────────────────╮
│ Cliente         Total          │
│ José            $1,200         │
│ Estado          Fecha          │
│ Enviado         11/11          │
├────────────────────────────────┤
│             [ Ver ] [ Editar ] │
╰────────────────────────────────╯

Cards take style_name, theme (the table themes), border_color, title_color, label_color, value_colors, color (a background for the whole card), zebra, panel and shadow.

table.render(width) makes a table responsive: the normal table when it fits, without its low-priority columns next, squeezed and wrapped after that, and one card per row when nothing else fits. width defaults to max_width, then the terminal width; responsive=True makes print(table) do the same.

table.title, table.title_position = 'Personas', 'border'
table.column_priority = {'Correo': 3}          # hidden first
table.card_options = {'subtitle_field': 'Grupo', 'fields': ['Edad', 'Ciudad']}
table.render(width=80)    # table
table.render(width=46)    # table without "Correo"
table.render(width=30)    # cards
╭─────────┬────────┬──────┬─ Personas ──┬──────────────────╮
│ Nombre  │ Grupo  │ Edad │ Ciudad      │ Correo           │
├─────────┼────────┼──────┼─────────────┼──────────────────┤
│ Ana     │ Norte  │   28 │ Guadalajara │ ana@example.com  │
│ Luna 🌸 │ Centro │   22 │ Mérida      │ luna@example.com │
╰─────────┴────────┴──────┴─────────────┴──────────────────╯

           Personas
╭─ Ana ──────────────────────╮
│ Norte                      │
├────────────────────────────┤
│ Edad    28                 │
│ Ciudad  Guadalajara        │
╰────────────────────────────╯

Grid places cards, tables, text and other grids in columns that reflow with the width -- a grid of cards or a whole terminal screen:

from flexablelib import Grid, GridCell

Grid(table.to_cards(), min_width=28).render(width=100)   # 3 columns, 2 at 62, 1 at 40
Grid([GridCell('Ventas de noviembre', span=3),
      GridCell(table, span=2), Grid(cards, columns=1)], columns=3)

Terminal interfaces

Since 3.2.0 a grid can size its columns (12, 'auto', '2fr', '30%', bounds, or one layout per width), span rows, share one border with proper junctions and a title per cell, and fill an exact height. Widgets -- ProgressBar, Sparkline, BarChart, StatusBar, KeyHints, LogView, Text, Rule -- drop into it, Screen pins a header and footer to the terminal's edges and Live redraws in place:

from flexablelib import (Grid, GridCell, LogView, ProgressBar, Sparkline,
                         Text)

Grid([
    GridCell(Text('▸ Resumen\n  Ventas\n  Ajustes'), row_span=2, title='Menú'),
    GridCell(ProgressBar(72, label='CPU', thresholds={0.7: 'yellow'}),
             title='Recursos'),
    GridCell(Sparkline([3, 5, 2, 8, 6, 9, 4, 7], label='rps', show_last=True),
             title='Tráfico'),
    GridCell(LogView(['10:00 INFO arranque', '10:01 WARN lento']), span=2,
             title='Eventos'),
], column_widths=[14, '1fr', '1fr'], border='rounded').render(width=64)
╭─ Menú ───────┬─ Recursos ────────────┬─ Tráfico ─────────────╮
│ ▸ Resumen    │ CPU ████████▋░░░  72% │ rps ▂▄▁▇▅█▃▆ 7        │
│   Ventas     ├─ Eventos ─────────────┴───────────────────────┤
│   Ajustes    │ 10:00 INFO arranque                           │
│              │ 10:01 WARN lento                              │
╰──────────────┴───────────────────────────────────────────────╯

A whole dashboard with a sidebar, KPI cards, a coloured table with merges, bars, sparklines and a log: examples/dashboard.py (python examples/dashboard.py --live 10).

More in docs/LAYOUT.md.

Notes

  • A column named "i" does not collide with the index column (utils.IndexColumnTitle).
  • Exponential numbers align on the decimal / exponent axis with the rest of the float column.
  • Shrinking a float column drops decimals instead of chopping characters, so decimal alignment survives a terminal fit (#23).

Open work and the issue map: docs/ISSUES.md.

Project Layout

flexablelib/                 # GitHub repository
├── flexablelib/            the Python package (no runtime dependencies)
│   ├── __init__.py          public API: Table, Card, Grid, widgets, Screen, Live
│   ├── table.py             the Table class — state and render orchestration
│   ├── layout.py            Card, Grid, GridCell, panel and shadow
│   ├── widgets.py           ProgressBar, Sparkline, BarChart, StatusBar, LogView…
│   ├── screen.py            Screen (sticky header/footer) and Live (redraw)
│   ├── columns.py           type inference, alignment, column widths
│   ├── style_compositions.py   the 54 border styles, as data
│   ├── table_strings.py     separator lines and data rows
│   ├── cells.py             cell padding, justification, wrapping
│   ├── options.py           constants and defaults
│   └── utils.py             type predicates and small helpers
├── examples/                runnable demos (dashboard.py)
├── tests/                   pytest suite — see ARCHITECTURE.md#testing
├── docs/                    issue history and design notes
├── logos/                   brand assets — see logos/README.md
├── ARCHITECTURE.md          how it all fits together
├── style_examples.md        all 54 styles rendered
├── package.json             canonical version number (no npm deps)
└── setup.py                 reads the version from package.json

Run the tests from the repository root:

pip install -r requirements-dev.txt
python -m pytest

See ARCHITECTURE.md for the rendering pipeline, how styles are defined, and how to add one.

Metadata

Release files for flexablelib 3.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flexablelib 3.2.0
File Size Uploaded Provenance Actions
flexablelib-3.2.0.tar.gz 314.3 kB Without provenance Details for flexablelib-3.2.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for flexablelib 3.2.0
File Actions
flexablelib-3.2.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for flexablelib-3.2.0-cp314-cp314-win_amd64.whl
flexablelib-3.2.0-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details for flexablelib-3.2.0-cp314-cp314-musllinux_1_2_x86_64.whl
flexablelib-3.2.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for flexablelib-3.2.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
flexablelib-3.2.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for flexablelib-3.2.0-cp314-cp314-macosx_11_0_arm64.whl
flexablelib-3.2.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for flexablelib-3.2.0-cp313-cp313-win_amd64.whl
flexablelib-3.2.0-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details for flexablelib-3.2.0-cp313-cp313-musllinux_1_2_x86_64.whl
flexablelib-3.2.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for flexablelib-3.2.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
flexablelib-3.2.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for flexablelib-3.2.0-cp313-cp313-macosx_11_0_arm64.whl
flexablelib-3.2.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for flexablelib-3.2.0-cp312-cp312-win_amd64.whl
flexablelib-3.2.0-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details for flexablelib-3.2.0-cp312-cp312-musllinux_1_2_x86_64.whl
flexablelib-3.2.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for flexablelib-3.2.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
flexablelib-3.2.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for flexablelib-3.2.0-cp312-cp312-macosx_11_0_arm64.whl
flexablelib-3.2.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for flexablelib-3.2.0-cp311-cp311-win_amd64.whl
flexablelib-3.2.0-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details for flexablelib-3.2.0-cp311-cp311-musllinux_1_2_x86_64.whl
flexablelib-3.2.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for flexablelib-3.2.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
flexablelib-3.2.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details for flexablelib-3.2.0-cp311-cp311-macosx_11_0_arm64.whl
flexablelib-3.2.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for flexablelib-3.2.0-cp310-cp310-win_amd64.whl
flexablelib-3.2.0-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details for flexablelib-3.2.0-cp310-cp310-musllinux_1_2_x86_64.whl
flexablelib-3.2.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for flexablelib-3.2.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
flexablelib-3.2.0-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details for flexablelib-3.2.0-cp310-cp310-macosx_11_0_arm64.whl
flexablelib-3.2.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details for flexablelib-3.2.0-cp39-cp39-win_amd64.whl
flexablelib-3.2.0-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details for flexablelib-3.2.0-cp39-cp39-musllinux_1_2_x86_64.whl
flexablelib-3.2.0-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for flexablelib-3.2.0-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
flexablelib-3.2.0-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details for flexablelib-3.2.0-cp39-cp39-macosx_11_0_arm64.whl
flexablelib-3.2.0-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details for flexablelib-3.2.0-cp38-cp38-win_amd64.whl
flexablelib-3.2.0-cp38-cp38-musllinux_1_2_x86_64.whl CPython 3.8 CPython 3.8 Linux musl 1.2+ x86-64 Details for flexablelib-3.2.0-cp38-cp38-musllinux_1_2_x86_64.whl
flexablelib-3.2.0-cp38-cp38-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for flexablelib-3.2.0-cp38-cp38-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
flexablelib-3.2.0-cp38-cp38-macosx_11_0_arm64.whl CPython 3.8 CPython 3.8 macOS 11.0+ ARM64 Details for flexablelib-3.2.0-cp38-cp38-macosx_11_0_arm64.whl

Total release size: 5.9 MB

Release files / flexablelib-3.2.0.tar.gz

Download URL flexablelib-3.2.0.tar.gz
Size 314.3 kB
Tags Source
SHA-256 checksum
How to use checksums
a3f3168b110312aa8f20a78ae9463be9bccafc179440cf55f22c745e831d3bf3
BLAKE2b-256 checksum
How to use checksums
3f2f8999c030d98147ac990f45c1119809718d2b925667f5749887a65d012ebc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp314-cp314-win_amd64.whl

Download URL flexablelib-3.2.0-cp314-cp314-win_amd64.whl
Size 194.0 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
29bd60d3d4e17d985ccc142b519a48d5e58a71ab2a023ba72bd51897b4990fe2
BLAKE2b-256 checksum
How to use checksums
286bc4227b26cd1a5b81fc48a99fb075f382c5f5d1e2097b79b0a6bef7ef145a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL flexablelib-3.2.0-cp314-cp314-musllinux_1_2_x86_64.whl
Size 206.0 kB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
347010727f3b7582ee3ea2d4fa754687d5e429026c26b034ad44b0c060764942
BLAKE2b-256 checksum
How to use checksums
09e482bc12bf1f8a3a33f5a2ff6ef6525ee000e4a5051d465cc634ad41d82205
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL flexablelib-3.2.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 206.5 kB
Tags CPython 3.14 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
1af672e9152633e0effdec73f0aacc4eebc5c17bbdfc17ab73e99c5749401370
BLAKE2b-256 checksum
How to use checksums
b1a521088e797ab861d197010a4551719ef7061e4f5a510c99ee0a848c9f4768
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL flexablelib-3.2.0-cp314-cp314-macosx_11_0_arm64.whl
Size 189.5 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f7fb2b8540c7f07ac80fee6573ee54a760e5cfd17cce2abdb8e04ac611987791
BLAKE2b-256 checksum
How to use checksums
36a285f06d91452463f10f3c9cc70e0285e4b6324412669e4c41dba6af71c8bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp313-cp313-win_amd64.whl

Download URL flexablelib-3.2.0-cp313-cp313-win_amd64.whl
Size 192.5 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
7ed293e4a9f00d4d6465b76c50bcba0157016132f13ef49cd5ae6ae05df714e8
BLAKE2b-256 checksum
How to use checksums
29ab9377afe39f4d954df9268a195cdb973e165c5193f11d8590f7ee14eafc4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL flexablelib-3.2.0-cp313-cp313-musllinux_1_2_x86_64.whl
Size 206.0 kB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
9693de54b029baa22f1d9f93cbd73825dc0162892f772dd0fa4f70e9a442bd05
BLAKE2b-256 checksum
How to use checksums
32d992e78ca2b80f9b75d1852ee3c206506d8908b21f41342b473bdabc9d5ffb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL flexablelib-3.2.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 206.5 kB
Tags CPython 3.13 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
247e8179e6bddfd8519c39069189ca4f8b46ea7e8d2bc1855f95c68ca2c7a209
BLAKE2b-256 checksum
How to use checksums
10a08b9cef8dd4388e5de46cf1cbbdceecc2618dc575eb906e76b3e3312e9707
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL flexablelib-3.2.0-cp313-cp313-macosx_11_0_arm64.whl
Size 189.5 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e4f4800bb07d71df16ef7c01df7126ee202f6f7ea36a6071821fc2e1be674304
BLAKE2b-256 checksum
How to use checksums
bd1f918212b63ca93a510386f4585d9794491590f544c7620176ffcce3ab3037
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp312-cp312-win_amd64.whl

Download URL flexablelib-3.2.0-cp312-cp312-win_amd64.whl
Size 192.5 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
280411ae2a8c2853a443bdd1b4c01be81af65b0994d9036f050e28697d14bd46
BLAKE2b-256 checksum
How to use checksums
af0ad5e2a26102bef783930ccb5a3f3f140fc848b7367829a5bed6e2e176e29b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL flexablelib-3.2.0-cp312-cp312-musllinux_1_2_x86_64.whl
Size 206.0 kB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
9ba1419387de4d17a9e58752e8baabda73c012eedb090feb35d8c7e18f256691
BLAKE2b-256 checksum
How to use checksums
4e81db127d737a3130c4cd014743f3fc484bdd9b8285147d3cfe13727ea92a67
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL flexablelib-3.2.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 206.5 kB
Tags CPython 3.12 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
f58de9e8e37e282add42b90fe49f22122dc60b5bb7e3656f79099eb5c157f989
BLAKE2b-256 checksum
How to use checksums
b123edd895bb7ea0af2414fdd9cab06e2033499faeeeb0682edb0ca0518f3ec4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL flexablelib-3.2.0-cp312-cp312-macosx_11_0_arm64.whl
Size 189.5 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f0050b15ca4aa4f216216241c7b57cfdc34b82af0dbaaff3d8c54f0080bf2324
BLAKE2b-256 checksum
How to use checksums
2bc2e7a70944a07c8a94bb7fd8ed034a1b14070fff54a17d1ce5199fd5162d3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp311-cp311-win_amd64.whl

Download URL flexablelib-3.2.0-cp311-cp311-win_amd64.whl
Size 192.5 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
6e435fcc452fa33a6121822ba465364e74cc772f4421f9724b4d71e752590574
BLAKE2b-256 checksum
How to use checksums
7a770c559f2980ba52eb7fe652eec17050d9465641a29e5b316efb0227f5af67
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL flexablelib-3.2.0-cp311-cp311-musllinux_1_2_x86_64.whl
Size 206.0 kB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
0663958d1c247f5f3ba8470bc44495f6370f16b4ad206109306d86ae0979a2d4
BLAKE2b-256 checksum
How to use checksums
0f0264d606b9a2f703546376b853c69cdf9e053de19fee21ad337986758cc2cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL flexablelib-3.2.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 206.4 kB
Tags CPython 3.11 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
bbe3189410a37da830e7567e03346fdfdfb6dbb7df96d94cd39447f35e0edb59
BLAKE2b-256 checksum
How to use checksums
df65fe52b593ad0a7c925dafd6aa13f55aebe2ab1ec640235290a01d68f98c09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL flexablelib-3.2.0-cp311-cp311-macosx_11_0_arm64.whl
Size 189.5 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3b25e427120d6ae3bbee0f94dba6f1700d60b7d17e75d9e2f97a4216351eaaa2
BLAKE2b-256 checksum
How to use checksums
555eb05b795a676780a60f3f0849df853a04aa318655bcb88fbdce84f05b9674
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp310-cp310-win_amd64.whl

Download URL flexablelib-3.2.0-cp310-cp310-win_amd64.whl
Size 192.5 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
062c44c35683fa8ca1d9342723fd45f128d266335f0250a72ccb3397b4204a68
BLAKE2b-256 checksum
How to use checksums
d474c7d5e78ba404c567113c9052dc3a8fafdd7c3d96c8ee7d89201f15ca0ae9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL flexablelib-3.2.0-cp310-cp310-musllinux_1_2_x86_64.whl
Size 203.6 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
d0d55c87b52587c35657fda272e0592429cefc5837b990586c5ec8aeea5e991d
BLAKE2b-256 checksum
How to use checksums
fb9f6042652145a2b96a49df2e8a1f6ae000b507e9f9a97db0877c47861fdf3c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL flexablelib-3.2.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 203.8 kB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
27cbac7920f3c683e694970a5954489ca9815d235d4a8e03448a20ab97f87617
BLAKE2b-256 checksum
How to use checksums
a4d6af45d9617f9cf973ca489c0e9e210c1f0855f70c40562a58b1d7fcb4a3fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp310-cp310-macosx_11_0_arm64.whl

Download URL flexablelib-3.2.0-cp310-cp310-macosx_11_0_arm64.whl
Size 189.5 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
babcfec8a07d62a1ddf7f21027c7a97a0edfcb35fd6455c623db0dc2724ce4cc
BLAKE2b-256 checksum
How to use checksums
59374ea7c68bad8ab105310b6dbd20e7df7865a90c7e1d408b1f44bdef92012c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp39-cp39-win_amd64.whl

Download URL flexablelib-3.2.0-cp39-cp39-win_amd64.whl
Size 192.5 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
3803a1f77adc71d2d17cf6acde6485ee648e496d932b29cdd0df3d3762340769
BLAKE2b-256 checksum
How to use checksums
3906f114aaa7b7d3f4e4e95e4f96a28d55d54638b69b797e3ff0f330add23b4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL flexablelib-3.2.0-cp39-cp39-musllinux_1_2_x86_64.whl
Size 203.4 kB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
376a3ec40aaaf5cd78f8606e8c72212434a7b14b92a9b0317dae073fe09b30e8
BLAKE2b-256 checksum
How to use checksums
5577e25c8c430e83cc1d3b154807ba44a4a647fc315eb5d32eb29b44e8038ca3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL flexablelib-3.2.0-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 203.7 kB
Tags CPython 3.9 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
d13faae67b5e613a93ad985afe13a990af92ef09726dfa04de7ffeff29f98ec7
BLAKE2b-256 checksum
How to use checksums
735180d18d230ffda26f5f719177f08f8d52c3be1baf1bf1e3b9accf6fa21568
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp39-cp39-macosx_11_0_arm64.whl

Download URL flexablelib-3.2.0-cp39-cp39-macosx_11_0_arm64.whl
Size 189.5 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
22c76b831b04c57ad20647fa8e62806a383a88e46398c39f4ba0ba0a41138497
BLAKE2b-256 checksum
How to use checksums
70eb063346d60d622805e8c97fe38a4e6887d491fb344b7f35606d5c0ffc16ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp38-cp38-win_amd64.whl

Download URL flexablelib-3.2.0-cp38-cp38-win_amd64.whl
Size 192.3 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
3ff121aa90ed28496db35d54854195c48be31019053b896b1b0d06c39ed2802d
BLAKE2b-256 checksum
How to use checksums
6eafe5960656ae30813b8ca0e37587edec0b69fe1423ddb688627c5a6ad3b76a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp38-cp38-musllinux_1_2_x86_64.whl

Download URL flexablelib-3.2.0-cp38-cp38-musllinux_1_2_x86_64.whl
Size 203.2 kB
Tags CPython 3.8 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
1ef08fae8d9018ae0c3d5b9f8920b84ab2460274547b305d8e86394886282ffd
BLAKE2b-256 checksum
How to use checksums
e946b40911ecf4ab65144d3100d1121419c06d04269813814fac47ab264c938d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp38-cp38-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL flexablelib-3.2.0-cp38-cp38-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 204.0 kB
Tags CPython 3.8 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
57a154f9092386a40d4f4cd83c7abad6eb7d6dd4cbdfb1766750adc79ff3274a
BLAKE2b-256 checksum
How to use checksums
f5e851f43d6fc0fa43b3dd10f0786748c74f794dfbbaffa1a289f1597afc8f7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / flexablelib-3.2.0-cp38-cp38-macosx_11_0_arm64.whl

Download URL flexablelib-3.2.0-cp38-cp38-macosx_11_0_arm64.whl
Size 189.3 kB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c0f63d41799b447828a33a83f8466c558fb94bf25a3f3152d6c2f8cf6bf2f5fc
BLAKE2b-256 checksum
How to use checksums
c5c34f5b6bc45ff6d72672770fd3e566ffd50ec60ea7dfe8e2ade6355426d110
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Security for flexablelib 3.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

3.2.0 This release

29 release files No provenance

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