Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

🎛️ Python Redux

codecov PyPI - Python Version PyPI PyPI - License GitHub Workflow Status

🌟 Overview

Python Redux is a Redux implementation for Python, bringing Redux's state management architecture to Python applications.

🔎 Sample Usage

Minimal todo application store implemented using python-redux:

import uuid
from dataclasses import replace
from typing import Sequence

from immutable import Immutable

from redux import (
    BaseAction,
    BaseEvent,
    CompleteReducerResult,
    FinishAction,
    ReducerResult,
)
from redux.main import Store


# state:
class ToDoItem(Immutable):
    id: str
    content: str
    is_done: bool = False


class ToDoState(Immutable):
    items: Sequence[ToDoItem]


# actions:
class AddTodoItemAction(BaseAction):
    content: str


class MarkTodoItemDone(BaseAction):
    id: str


class RemoveTodoItemAction(BaseAction):
    id: str


# events:
class CallApi(BaseEvent):
    parameters: object


# reducer:
def reducer(
    state: ToDoState | None,
    action: BaseAction,
) -> ReducerResult[ToDoState, BaseAction, BaseEvent]:
    if state is None:
        return ToDoState(
            items=[
                ToDoItem(
                    id=uuid.uuid4().hex,
                    content='Initial Item',
                ),
            ],
        )
    if isinstance(action, AddTodoItemAction):
        return replace(
            state,
            items=[
                *state.items,
                ToDoItem(
                    id=uuid.uuid4().hex,
                    content=action.content,
                ),
            ],
        )
    if isinstance(action, RemoveTodoItemAction):
        return replace(
            state,
            actions=[item for item in state.items if item.id != action.id],
        )
    if isinstance(action, MarkTodoItemDone):
        return CompleteReducerResult(
            state=replace(
                state,
                items=[
                    replace(item, is_done=True) if item.id == action.id else item
                    for item in state.items
                ],
            ),
            events=[CallApi(parameters={})],
        )
    return state


store = Store(reducer)


# subscription:
dummy_render = print
store.subscribe(dummy_render)


# autorun:
@store.autorun(
    lambda state: state.items[0].content if len(state.items) > 0 else None,
)
def reaction(content: str | None) -> None:
    print(content)


@store.view(lambda state: state.items[0])
def first_item(first_item: ToDoItem) -> ToDoItem:
    return first_item


@store.view(lambda state: [item for item in state.items if item.is_done])
def done_items(done_items: list[ToDoItem]) -> list[ToDoItem]:
    return done_items


# event listener, note that this will run async in a separate thread, so it can include
# io operations like network calls, etc:
dummy_api_call = print
store.subscribe_event(
    CallApi,
    lambda event: dummy_api_call(event.parameters, done_items()),
)

# dispatch:
store.dispatch(AddTodoItemAction(content='New Item'))

store.dispatch(MarkTodoItemDone(id=first_item().id))

store.dispatch(FinishAction())

⚙️ Features

  • Redux API for Python developers.

  • Reduce boilerplate by dropping type property, payload classes and action creators:

    • Each action is a subclass of BaseAction.
    • Its type is checked by utilizing isinstance (no need for type property).
    • Its payload are its direct properties (no need for a separate payload object).
    • Its creator is its auto-generated constructor.
  • Use type annotations for all its API.

  • Immutable state management for predictable state updates using python-immutable.

  • Offers a streamlined, native API for handling side-effects asynchronously, eliminating the necessity for more intricate utilities such as redux-thunk or redux-saga.

  • Incorporates the autorun decorator and the view decorator, inspired by the mobx framework, to better integrate with elements of the software following procedural patterns.

  • Supports middlewares.

📦 Installation

The package handle in PyPI is python-redux

Pip

pip install python-redux

Poetry

poetry add python-redux

🛠 Usage

Handling Side Effects with Events

Python-redux introduces a powerful concept for managing side effects: Events. This approach allows reducers to remain pure while still signaling the need for side effects.

Why Events?

  • Separation of Concerns: By returning events, reducers stay pure and focused solely on state changes, delegating side effects to other parts of the software.
  • Flexibility: Events allow asynchronous operations like API calls to be handled separately, enhancing scalability and maintainability.

How to Use Events

  • Reducers: Reducers primarily return a new state. They can optionally return actions and events, maintaining their purity as these do not enact side effects themselves.
  • Dispatch Function: Besides actions, dispatch function can now accept events, enabling a more integrated flow of state and side effects.
  • Event Listeners: Implement listeners for specific events. These listeners handle the side effects (e.g., API calls) asynchronously.

Best Practices

  • Define Clear Events: Create well-defined events that represent specific side effects.
  • Use Asynchronously: Design event listeners to operate asynchronously, keeping your application responsive. Note that python-redux, by default, runs all event handler functions in new threads.

This concept fills the gap in handling side effects within Redux's ecosystem, offering a more nuanced and integrated approach to state and side effect management.

See todo sample below or check the todo demo or features demo to see it in action.

Autorun Decorator

Inspired by MobX's autorun and reaction, python-redux introduces the autorun decorator. This decorator requires a selector function as an argument. The selector is a function that accepts the store instance and returns a derived object from the store's state. The primary function of autorun is to establish a subscription to the store. Whenever the store is changed, autorun executes the selector with the updated store. Importantly, the decorated function is triggered only if there is a change in the selector's return value. This mechanism ensures that the decorated function runs in response to relevant state changes, enhancing efficiency and responsiveness in the application.

See todo sample below or check the todo demo or features demo to see it in action.

View Decorator

Inspired by MobX's computed, python-redux introduces the view decorator. It takes a selector and each time the decorated function is called, it only runs the function body if the returned value of the selector is changed, otherwise it simply returns the previous value. So unlike computed of MobX, it doesn't extract the requirements of the function itself, you need to provide them in the return value of the selector function.

Combining reducers - combine_reducers

You can compose high level reducers by combining smaller reducers using combine_reducers utility function. This works mostly the same as the JS redux library version except that it provides a mechanism to dynamically add/remove reducers to/from it. This is done by generating an id and returning it along the generated reducer. This id is used to refer to this reducer in the future. Let's assume you composed a reducer like this:

reducer, reducer_id = combine_reducers(
    state_type=StateType,
    first=straight_reducer,
    second=second_reducer,
)

You can then add a new reducer to it using the reducer_id like this:

store.dispatch(
    CombineReducerRegisterAction(
        combine_reducers_id=reducer_id,
        key='third',
        third=third_reducer,
    ),
)

You can also remove a reducer from it like this:

store.dispatch(
    CombineReducerRegisterAction(
        combine_reducers_id=reducer_id,
        key='second',
    ),
)

Without this id, all the combined reducers in the store tree would register third reducer and unregister second reducer, but thanks to this reducer_id, these actions will only target the desired combined reducer.

🎉 Demo

For a detailed example, see features demo.

🤝 Contributing

Contributions following Python best practices are welcome.

📜 License

This project is released under the Apache-2.0 License. See the LICENSE file for more details.

Metadata

Release files for python-redux 0.25.2.dev126020910352100100

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

Source distribution (sdist)

Source distribution for python-redux 0.25.2.dev126020910352100100
File Size Uploaded
python_redux-0.25.2.dev126020910352100100.tar.gz 23.1 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for python-redux 0.25.2.dev126020910352100100
File
python_redux-0.25.2.dev126020910352100100-py3-none-any.whl Python 3 none any Details
python_redux-0.25.2.dev126020910352100100-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
python_redux-0.25.2.dev126020910352100100-cp313-cp313-win32.whl CPython 3.13 CPython 3.13 Windows x86-32 Details
python_redux-0.25.2.dev126020910352100100-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
python_redux-0.25.2.dev126020910352100100-cp313-cp313-musllinux_1_2_i686.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-32 Details
python_redux-0.25.2.dev126020910352100100-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
python_redux-0.25.2.dev126020910352100100-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.13 CPython 3.13 Linux glibc 2.5+ x86-32, Linux glibc 2.17+ x86-32 Details
python_redux-0.25.2.dev126020910352100100-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
python_redux-0.25.2.dev126020910352100100-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
python_redux-0.25.2.dev126020910352100100-cp312-cp312-win32.whl CPython 3.12 CPython 3.12 Windows x86-32 Details
python_redux-0.25.2.dev126020910352100100-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
python_redux-0.25.2.dev126020910352100100-cp312-cp312-musllinux_1_2_i686.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-32 Details
python_redux-0.25.2.dev126020910352100100-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
python_redux-0.25.2.dev126020910352100100-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-32, Linux glibc 2.5+ x86-32 Details
python_redux-0.25.2.dev126020910352100100-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
python_redux-0.25.2.dev126020910352100100-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
python_redux-0.25.2.dev126020910352100100-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details
python_redux-0.25.2.dev126020910352100100-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
python_redux-0.25.2.dev126020910352100100-cp311-cp311-musllinux_1_2_i686.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-32 Details
python_redux-0.25.2.dev126020910352100100-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
python_redux-0.25.2.dev126020910352100100-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.11 CPython 3.11 Linux glibc 2.5+ x86-32, Linux glibc 2.17+ x86-32 Details
python_redux-0.25.2.dev126020910352100100-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details

Total release size: 41.7 MB

Release files / python_redux-0.25.2.dev126020910352100100.tar.gz

Download URL python_redux-0.25.2.dev126020910352100100.tar.gz
Size 23.1 kB
Tags Source
SHA-256 checksum
How to use checksums
2178b3ee74589d51a72c2fdadd9c48992f0bb073735414747c637272f014c08d
BLAKE2b-256 checksum
How to use checksums
33c37c614bf359fd4e8cebd66b0ee170ea885363abe9ace2706230eb36590fa3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-py3-none-any.whl

Download URL python_redux-0.25.2.dev126020910352100100-py3-none-any.whl
Size 29.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9ba9250d41db510eab743c4ed37dfccdc7a51f2625377972a16fd35ce615c752
BLAKE2b-256 checksum
How to use checksums
b517b9725f3359e6484df8ee262c6852798e62df5e17166d266765c4765b9bb2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp313-cp313-win_amd64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp313-cp313-win_amd64.whl
Size 1.0 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
5eb284efb22be6bd107f35ddab939ea723aec7d285c75dea4e0c5eedd423aa7b
BLAKE2b-256 checksum
How to use checksums
49a0fb2e73b0a2da00956d407b427d5f6f801ad59dcf71339822526de695298e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp313-cp313-win32.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp313-cp313-win32.whl
Size 974.1 kB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
663b60adce8c5f738c58e73a8df3b760a439bea202ffd963455107b4b4565ab6
BLAKE2b-256 checksum
How to use checksums
cd76fc2c059a5c8e980e003a9725312f4e632e9f24b143692c037d0a843c699b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp313-cp313-musllinux_1_2_x86_64.whl
Size 2.7 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
36ea4a401c2b4cc49ecca42ad0bb03bd56745ceb273b6672f34f060d2219fbc7
BLAKE2b-256 checksum
How to use checksums
f4bb7d5277a3c568d8c1744ee9f3d3e6501caf553f8753993260bca104cc40a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp313-cp313-musllinux_1_2_i686.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp313-cp313-musllinux_1_2_i686.whl
Size 2.7 MB
Tags CPython 3.13 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
4856667988e6c028ff9cfd526a18d79dcf6615b100e3cda37fa327a2abb935aa
BLAKE2b-256 checksum
How to use checksums
02b58a8694cd23e076ba486dcaa6d8a9570ff8b52ecb0a6ce4e47d9d7a3dffcd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.7 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
dbdf34f1354700b465089ecc7a65dec83d7904b6d236cd378864c1948a99436c
BLAKE2b-256 checksum
How to use checksums
359162d780cecf5d16faccc2bf999925e8481cc04acf65e7a915c4cd39c4345e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 2.6 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
a37f08ee690f4e03f5336b691030b31e62c0d46d4edb51143d0a3b12602735ee
BLAKE2b-256 checksum
How to use checksums
c57b5cb2f9a94fdcf68cae844c5f97b6ebaf9d54e2d3f6b59986c01e171e43b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp313-cp313-macosx_11_0_arm64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp313-cp313-macosx_11_0_arm64.whl
Size 1.0 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
06874ef5115224d37628699d776ef46de99e5164af966c45684ec4e33d160bf7
BLAKE2b-256 checksum
How to use checksums
d85955266a9bf90df8513ea35aaae66368905727220ebf0895cf8b51f60b7374
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp312-cp312-win_amd64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp312-cp312-win_amd64.whl
Size 1.0 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
ff9fb351887830643e15f4664f6862c159c197be605d01889c06c2df3d5c88e7
BLAKE2b-256 checksum
How to use checksums
6200062ad4409c9b3feaa74b5815c0834b52fc01b4e11875dcece1075a0d76d1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp312-cp312-win32.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp312-cp312-win32.whl
Size 976.5 kB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
8a2d49e99d846f5d03637e83b75473844397dd6535abc140d386d1f0878105d1
BLAKE2b-256 checksum
How to use checksums
7dd95ef36f4f7aedf5f603d098b96f394b4b322f9669e4c18d31e8226a4b9ac5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp312-cp312-musllinux_1_2_x86_64.whl
Size 2.8 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
2fcfc669fc78f08c28930317494ac66b57e29b27eba9eed9534b8b127c5793f8
BLAKE2b-256 checksum
How to use checksums
4552e7e727566f54b9b6631bccedb1502df61ccb5e9cf65cab9124bc819570bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp312-cp312-musllinux_1_2_i686.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp312-cp312-musllinux_1_2_i686.whl
Size 2.7 MB
Tags CPython 3.12 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
ea03ad83c75b0f43ddd9c40dd121ec4a16abf278f59f082faaa0adf1bc47cec9
BLAKE2b-256 checksum
How to use checksums
7b0eba39c354cc080bb4b46324b5f142a20ae7e250b6d9ac3f4ed9d036183d03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.8 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
4a865fe746567d9e8e6362df8f828fa28330fab5833bac81427eea3b8ab9206a
BLAKE2b-256 checksum
How to use checksums
8c4c18df3c402c4cc39b05176abd46ca65325b67eab385b2438ac9a8f37996d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 2.7 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
d002476bc3de8c12180fd130b3aee6749115d2308bbe85f624f58dbbc45d944a
BLAKE2b-256 checksum
How to use checksums
4a3ea3f712d4f40b5bd8eafe7d22fe9855f7a1d09881de0618aea024ecdad5d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp312-cp312-macosx_11_0_arm64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp312-cp312-macosx_11_0_arm64.whl
Size 1.0 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
793b12f214f8f205f1a6ca70a61ba521741d7d4b179d26a17e5423ef0e6108ac
BLAKE2b-256 checksum
How to use checksums
75b0af1ad59df7fed46c776fdbf6ca35c16a9b2b07bf70569d81cb35500ba462
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp311-cp311-win_amd64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp311-cp311-win_amd64.whl
Size 1.0 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
23ca6024ae2839ecfc9685dd909799f6d9d4304c58a64ec09d228f866b84dfc6
BLAKE2b-256 checksum
How to use checksums
4182c5151b68e949f82ba7e12467394d11079cccd7073ff2872e4140c85c327c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp311-cp311-win32.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp311-cp311-win32.whl
Size 989.4 kB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
135635fa314b6b22cc392845d3d8cb448f1a0f5b849d3dbc73953d98c83ba5b9
BLAKE2b-256 checksum
How to use checksums
07c66a394706ba91ea91d151d0ad403e27b717524e18f51c6db41f3ad4016f90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp311-cp311-musllinux_1_2_x86_64.whl
Size 2.7 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
5af1c5a8d088a839abff3496b082f83c1e11e03220b7d41a67fa194586cfd2b6
BLAKE2b-256 checksum
How to use checksums
02b041a6de4510b2d0b90e0c1a9951247a66c6f449fc1fe45a8d5e2429801d47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp311-cp311-musllinux_1_2_i686.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp311-cp311-musllinux_1_2_i686.whl
Size 2.7 MB
Tags CPython 3.11 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
d78f306ba4cb5c3672e1daa4c213a9d04ce66d7d2f5cbc1ad187106eab2eada1
BLAKE2b-256 checksum
How to use checksums
68fa918e43743739beadc03f1cd07078563a9ca442716e49111809221226f213
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.7 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
681bfdfe8352c2ce5874ce2742944e4de5d32498cf797f05e90ad3bc69f59d03
BLAKE2b-256 checksum
How to use checksums
9a70060f7e36930b45ac34199e4df6802ed5474c0b96524630eb26aec60c7a10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 2.6 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
50bd7b44f6824d8602ad59e60c9f1c10591db2e450551517c5d83c317ea966c6
BLAKE2b-256 checksum
How to use checksums
43622bdc07a4d909de3d4883c5abaadffe35236739b82586a9252ff915ef61c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / python_redux-0.25.2.dev126020910352100100-cp311-cp311-macosx_11_0_arm64.whl

Download URL python_redux-0.25.2.dev126020910352100100-cp311-cp311-macosx_11_0_arm64.whl
Size 1.0 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3e3771be35698e1ff44b031e7c56d05c2ddc8837e6ccc9898ca32bcdb52cb7c0
BLAKE2b-256 checksum
How to use checksums
e57094d7b8bf6d5e453e30440af97bfa8a798684223eb7eed1e7a2400e3df320
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.24.0

2 release files

0.23.0

2 release files

0.22.2

2 release files

0.22.1

2 release files

0.22.0

2 release files

0.21.1

2 release files

0.21.0

2 release files

0.20.2

2 release files

0.19.1

2 release files

0.19.0

2 release files

0.18.3

2 release files

0.18.2

2 release files

0.18.1

2 release files

0.18.0

2 release files

0.16.0

2 release files

0.15.9

2 release files

0.15.8

2 release files

0.15.7

2 release files

0.15.6

2 release files

0.15.5

2 release files

0.15.4

2 release files

0.15.3

2 release files

0.14.3

2 release files

0.14.2

2 release files

0.14.0

2 release files

0.13.2

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.12.7

2 release files

0.12.6

2 release files

0.12.5

2 release files

0.12.4

2 release files

0.12.3

2 release files

0.12.2

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.10.7

2 release files

0.10.6

2 release files

0.10.4

2 release files

0.10.3

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.9.24

2 release files

0.9.22

2 release files

0.9.21

2 release files

0.9.20

2 release files

0.9.19

2 release files

0.9.17

2 release files

0.9.16

2 release files

0.9.15

2 release files

0.9.14

2 release files

0.9.13

2 release files

0.9.12

2 release files

0.9.11

2 release files

0.9.10

2 release files

0.9.9

2 release files

0.9.8

2 release files

0.9.6

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.0

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

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