← Back to News
lumibot 4.5.86

lumibot 4.5.86

lumibot · PyPI Skip to main content Switch to mobile version Warning Some features may not work without JavaScript.

Please try enabling it if you encounter problems. Search PyPI Search Help Docs Sponsors Log in Register Menu Help Docs

Sponsors Log in Register Search PyPI Search lumibot 4.5.86 Python framework for algorithmic trading: backtesting and

live deployment for stocks, options, crypto, futures, and forex. Same code for backtest and live trading. pip install

lumibot==4.5.86 Copy PIP instructions Description Download files Release history Lumibot Build, backtest, and run

algorithmic trading strategies and AI agents in Python. Full docs: lumibot.lumiwealth.com · Managed cloud:

BotSpot.trade · MCP: BotSpot for AI coding agents 🌐 Community Reddit Community     Discord Community What You Can

Build Deterministic strategies: normal Python logic, indicators, if statements, scheduled rules, position sizing, and

risk controls. AI-agent strategies: one or more agents that reason through evidence, call tools, write memory, and

optionally place orders. Backtests: replay historical data and simulated orders with artifacts you can inspect. Paper or

live trading: reuse the same strategy code with real broker state and real order routing. Start with the open-source

docs, then deploy when you are ready: Lumibot documentation · Try a sample Lumibot strategy on BotSpot Quick Start

Backtest a strategy pip install lumibot Save this as my_strategy.py: from datetime import datetime from

lumibot.strategies import Strategy from lumibot.backtesting import YahooDataBacktesting class MyStrategy(Strategy): def

on_trading_iteration(self): if self.first_iteration: aapl = self.create_order("AAPL", 10, "buy") self.submit_order(aapl)

MyStrategy.backtest( YahooDataBacktesting, datetime(2023, 1, 1), datetime(2024, 1, 1), ) python my_strategy.py Run the

same strategy with a paper broker After the backtest works, keep the MyStrategy class and replace the final

MyStrategy.backtest(...) call with a broker runner. This example uses Alpaca paper trading: export

ALPACA_API_KEY='your-alpaca-key' export ALPACA_API_SECRET='your-alpaca-secret' export ALPACA_IS_PAPER=true python

my_strategy.py import os from lumibot.brokers import Alpaca from lumibot.traders import Trader ALPACA_CONFIG = {

"API_KEY": os.environ["ALPACA_API_KEY"], "API_SECRET": os.environ["ALPACA_API_SECRET"], "PAPER":

os.environ.get("ALPACA_IS_PAPER", "true").lower() != "false", } broker = Alpaca(ALPACA_CONFIG) strategy =

MyStrategy(broker=broker) trader = Trader() trader.add_strategy(strategy) trader.run_all() Start with paper trading.

When you are ready for live trading, use the same strategy class and switch your broker account/configuration

intentionally. For full setup guides, broker tutorials, AI-agent docs, examples, and deployment notes, use the Lumibot

documentation. AI Trading Team Lumibot now includes a built-in AI agent runtime for financial research, reasoning,

debate, risk review, and trade execution. Agents can inspect market data, read filings, query indicators, search memory,

compare macro context, and submit orders through the same Lumibot strategy loop used by normal backtests and live

trading. Classic Python strategies are still first-class. Lumibot lets you choose the right level of intelligence: fixed

rules, AI agents, or a hybrid where Python handles the hard gates and agents reason through evidence. Built-in AI agent

tools include market/account state, order inspection, DuckDB queries, documentation search, Alpaca news when credentials

exist, technical indicators, SEC fundamentals and filings, FRED macro data, local memory, and Telegram notifications.

Design Your AI Trading Team An AI trading team is just a group of agents with different jobs inside the same Lumibot

strategy. You can build a single-agent strategy, a specialist research flow, bull/bear/neutral teams, model-vs-model

debates, deterministic execution gates, or agent reviewers layered on top of normal Python logic. Example: Research,

Bull, Bear, and Trader Agents Here is one example pattern: a researcher gathers evidence, bull and bear agents debate

the trade, and a trader agent decides what to buy or sell. In this pattern, each agent has a job: Research Agent: builds

the evidence pack from market data, filings, fundamentals, news, macro data, and indicators. Bull Agent: turns that

evidence into the strongest long thesis. Bear Agent: challenges the thesis, looks for risk, and argues for avoiding,

delaying, or reducing the trade. Trader / Portfolio Manager Agent: checks cash, positions, open orders, and risk limits,

then decides whether to trade. The copy-paste example below implements that exact team. It uses Gemini Flash Lite

because it is fast and inexpensive for experiments. To run it with a broker in paper mode, set your AI and Alpaca

credentials and run the file: export GEMINI_API_KEY='your-key-here' export ALPACA_API_KEY='your-alpaca-key' export

ALPACA_API_SECRET='your-alpaca-secret' export ALPACA_IS_PAPER=true python ai_trading_team_bull_bear_leveraged_etf.py To

backtest the same strategy instead, change IS_BACKTESTING = False to IS_BACKTESTING = True in the runner: export

GEMINI_API_KEY='your-key-here' python ai_trading_team_bull_bear_leveraged_etf.py Save this as

ai_trading_team_bull_bear_leveraged_etf.py. If an AI key is missing or invalid, Lumibot stops and prints a clear

provider key error with a link to create a key. import os from datetime import datetime from lumibot.strategies.strategy

import Strategy class AITradingTeamBullBearLeveragedETFStrategy(Strategy): parameters = { "universe": ["TQQQ", "SQQQ",

"UPRO", "SPXU", "UDOW", "SDOW", "TNA", "TZA", "TECL", "TECS", "SOXL", "SOXS", "WEBL", "WEBS", "FAS", "FAZ", "LABU",

"LABD", "ERX", "ERY", "GUSH", "DRIP", "DRN", "DRV", "TMF", "TMV", "NUGT", "DUST"], } def initialize(self):

self.sleeptime = "1D" model = os.environ.get("AI_TRADING_TEAM_MODEL", "gemini-3.1-flash-lite") # The first three agents

are read-only. They can reason, but cannot trade. self.agents.create( name="researcher", model=model,

allow_trading=False, system_prompt="Rank the ETFs by upside. Be direct.", ) self.agents.create( name="bull",

model=model, allow_trading=False, system_prompt="Argue for the strongest money-making trade.", ) self.agents.create(

name="bear", model=model, allow_trading=False, system_prompt="Point out the biggest risk, briefly.", ) # Only this final

agent can submit orders through Lumibot. self.agents.create( name="trader", model=model, allow_trading=True,

system_prompt="Buy one ETF from the universe aggressively. Use nearly all cash.", ) def on_trading_iteration(self): #

Each trading day, pass the same market context through the team. context = { "date":

self.get_datetime().date().isoformat(), "universe": self.parameters["universe"], } research =

self.agents["researcher"].run( task_prompt="Pick the strongest ETF.", context=context, ) bull = self.agents["bull"].run(

task_prompt="Make the bull case.", context={**context, "research": research.summary}, ) bear = self.agents["bear"].run(

task_prompt="Make the bear case.", context={**context, "research": research.summary, "bull": bull.summary}, )

self.agents["trader"].run( task_prompt="Sell anything that is not the pick, then buy the best ETF with nearly all

available cash.", context={**context, "research": research.summary, "bull": bull.summary, "bear": bear.summary}, ) if

__name__ == "__main__": IS_BACKTESTING = False if IS_BACKTESTING: from lumibot.backtesting import YahooDataBacktesting

AITradingTeamBullBearLeveragedETFStrategy.backtest( YahooDataBacktesting, datetime(2026, 4, 7), datetime(2026, 5, 22), )

else: from lumibot.brokers import Alpaca from lumibot.traders import Trader ALPACA_CONFIG = { "API_KEY":

os.environ["ALPACA_API_KEY"], "API_SECRET": os.environ["ALPACA_API_SECRET"], "PAPER": os.environ.get("ALPACA_IS_PAPER",

"true").lower() != "false", } broker = Alpaca(ALPACA_CONFIG) strategy =

AITradingTeamBullBearLeveragedETFStrategy(broker=broker) trader = Trader() trader.add_strategy(strategy)

trader.run_all() Example backtest artifact from this sample strategy: Backtests are not expected future performance. The

point is that the full AI trading team runs inside Lumibot's normal broker and backtest loops, so the decisions, orders,

and artifacts are inspectable before you connect real money. See this AI trading team running live on BotSpot More AI

Trading Team Examples These examples show different ways to organize an AI trading team. Each page explains the

inspiration, the agent flow, how to run it with a broker in paper mode, and how to backtest it. Citadel sector pods AI

trading team: inspired by the pod-style structure associated with Ken Griffin's Citadel: sector specialists pitch their

best ideas, a risk manager challenges crowding and drawdown risk, and a portfolio manager rotates into the strongest

sector ETF. Watch it live on BotSpot. Source: ai_trading_team_citadel_sector_pods.py. Warren Buffett value AI trading

team: uses AI agents like a patient value-investing desk: one agent digs into business quality and annual reports, one

demands valuation discipline, and the portfolio manager only buys the best long-term compounder. Watch it live on

BotSpot. Source: ai_trading_team_warren_buffett_value.py. Ray Dalio idea meritocracy AI trading team: turns

Bridgewater-style thoughtful disagreement into a macro ETF workflow, with growth, inflation, liquidity, and disagreement

agents arguing before the trader acts. Watch it live on BotSpot. Source: ai_trading_team_ray_dalio_idea_meritocracy.py.

Bill Ackman concentrated AI trading team: inspired by Pershing Square-style concentrated investing: find one great

business, make the activist bull case, attack it like a short seller, then let the portfolio manager take a focused

position if the thesis survives. Watch it live on BotSpot. Source: ai_trading_team_bill_ackman_concentrated.py.

Bull/bear leveraged ETF AI trading team: a fast, aggressive demo where bull and bear agents debate leveraged long and

inverse ETFs before the trader rotates into one high-conviction ETF. Watch it live on BotSpot. Source:

ai_trading_team_bull_bear_leveraged_etf.py. Bull/bear large-cap stocks AI trading team: the same debate structure

applied to familiar large-cap stocks, which makes it easier to inspect each agent's reasoning before using more volatile

instruments. Watch it live on BotSpot. Source: ai_trading_team_bull_bear_large_cap_stocks.py. Run Lumibot Without

Managing Servers BotSpot is the managed cloud built around Lumibot. It makes Lumibot easier and cheaper to run because

the data, backtesting workers, broker connections, scheduling, monitoring, logs, alerts, and kill switches are already

wired together. BotSpot is not a generic chatbot bolted onto a broker account. Its AI workflows, prompts, MCP tools,

backtest setup, broker paths, and deployment flow are built for Lumibot. Backtesting data included. Use hosted stock,

futures, options, FRED macro, SEC filing, and other supported data without wrangling every feed and API key yourself.

Some data is included; premium data can be much cheaper than buying direct subscriptions for occasional experiments.

Cheaper deployment at scale. Scheduled and periodic bots should not need a full always-on server per strategy. BotSpot

runs Lumibot bots on managed infrastructure built for this workflow, with monitoring and controls included.

Lumibot-tuned AI. Generic coding tools can write Python, but BotSpot is tuned for Lumibot strategy structure, broker

setup, backtests, artifacts, and deployment. MCP for coding agents. Connect BotSpot to Codex, Claude Code, Cursor, and

other MCP clients so your coding agent can run backtests, inspect artifacts, compare results, and prepare deployment

instead of only generating code. Work from anywhere. Use the same strategy workspace from the web, your phone, Telegram,

Discord, Claude, ChatGPT, and coding tools. Start in one place and continue in another. Marketplace and strategy

library. Browse existing strategy code, clone and adapt strategies, run strategies where available, and publish your own

strategies when you are ready. Observability and control. Inspect why a bot bought or sold, review charts, logs,

decisions, orders, notifications, audit history, and kill-switch controls in one place. Why Lumibot? AI trading projects

have proved that people want agentic trading workflows. Lumibot's edge is that those workflows run inside a real Python

trading framework: you can backtest the agent decisions, inspect artifacts, add Python guardrails, paper trade, and

connect to brokers without rewriting the strategy. That matters because an AI trading demo is not the same thing as a

trading system. Without backtests and broker-aware strategy code, you are mostly trusting prompts. Lumibot lets you

iterate faster: test the agent flow on historical data, see what it would have bought or sold, tighten the Python risk

checks, then run the same lifecycle in paper or live trading. Compared with AI trading agent projects Project Main angle

AI agents / teams Backtest agent decisions Paper/live broker path Deterministic Python strategies Hosted

data/deploy/monitoring Lumibot + BotSpot Python strategies, flexible AI trading teams, hybrid guardrails, backtests,

brokers, hosted deployment Flexible teams, debates, specialist desks, and deterministic gates Replayable decisions,

orders, traces, artifacts, charts, logs Yes: Alpaca, IBKR, Tradier, Schwab, Tradovate, ProjectX, Bitunix, Polymarket,

selected CCXT Yes Hosted data, parallel backtests, deployment, monitoring, MCP, alerts, kill switches TradingAgents

Multi-agent LLM trading research framework Yes, with a specific research/debate structure Research/demo oriented Not the

main focus Limited No ai-hedge-fund Educational AI hedge fund with named investor-style agents Yes, with investor-style

personas Demo/backtest oriented Not the main focus Limited No OpenAlice One-person Wall Street agent concept Yes,

end-to-end agent concept Emerging/experimental Local/self-run focus Limited No QuantDinger Self-hosted AI quant

operating system Yes Yes Crypto, IBKR, MT5, Alpaca Yes Self-hosted Vibe-Trading Personal trading agent Yes Yes Agent

trading platform focus Limited Platform-specific AI-Trader Agent-native trading platform Yes Platform focus Platform

focus Limited Platform-specific OpenBB Financial data platform for analysts, quants, and AI agents Tooling for agents

Not a strategy backtester No broker execution framework No OpenBB workspace/platform Qlib AI-oriented quant research

platform Research/ML agents Quant research backtests Limited live focus Research pipelines No See the docs comparison

pages for more detail: Lumibot vs TradingAgents, Lumibot vs ai-hedge-fund, Lumibot vs OpenAlice, and Lumibot vs

QuantDinger. Compared with backtesting libraries Feature Lumibot Backtrader Freqtrade Zipline Backtesting.py Jesse

vectorbt NautilusTrader Hummingbot Same code: backtest + live Yes Yes Yes (crypto) No No Yes (paid) No Yes Yes (crypto)

Stocks Yes Yes No Yes Yes No Yes Yes No Options Yes No No No No No No Limited No Crypto Yes Limited Yes No Yes Yes Yes

Yes Yes Prediction markets Polymarket trading and backtesting No No No No No No No Limited/no Futures Yes Limited Crypto

only Partial Yes Crypto only Yes Yes Perpetuals/crypto venues Forex Yes Outdated No No Yes No Yes Yes No AI agent

runtime Built-in No FreqAI (ML) No No ML pipeline No No Scripts/controllers Broker execution Alpaca, IBKR, Tradier,

Schwab, Tradovate, TopstepX (via ProjectX), Bitunix, Polymarket, selected CCXT IB only (outdated) Crypto exchanges None

None Crypto exchanges No Exchange adapters Crypto exchanges Hosted deployment path BotSpot No No No No Paid cloud No No

Hummingbot Foundation/enterprise ecosystem License MIT GPL-3.0 GPL-3.0 Apache-2.0 AGPL-3.0 MIT Apache-2.0 LGPL-3.0

Apache-2.0 Switching from Backtrader? See our migration guide for a side-by-side comparison with code examples. Deploy

Live Option A: BotSpot (managed cloud) BotSpot is the managed path for taking a Lumibot strategy from idea to backtest

to paper or live trading. It handles the expensive and fragile parts around the strategy: hosted data setup for

supported backtests, parallel backtest runs, broker connections, scheduling, logs, alerts, monitoring, audit history,

and kill-switch controls. This is especially useful when your strategy only needs to run daily or periodically. You get

the same Lumibot code path without paying for always-on infrastructure, maintaining a scheduler, hand-wiring broker

secrets, or building your own log and alerting stack. Option B: Self-hosted (full control) Run Lumibot on your own

machine with any supported broker: from lumibot.brokers import Alpaca from lumibot.traders import Trader ALPACA_CONFIG =

{ "API_KEY": "your-key", "API_SECRET": "your-secret", "PAPER": True, } broker = Alpaca(ALPACA_CONFIG) strategy =

MyStrategy(broker=broker) trader = Trader() trader.add_strategy(strategy) trader.run_all() Supported Brokers Lumibot

supports stocks, options, crypto, futures, forex, indexes, and prediction contracts across several broker integrations:

Alpaca Interactive Brokers and Interactive Brokers REST Tradier Schwab Tradovate TopstepX futures (via ProjectX) Bitunix

Polymarket prediction-contract trading and backtesting Selected CCXT crypto paths. Coinbase, Kraken, and WEEX have

auto-detected credential paths; KuCoin, Binance, and BitMEX have documented manual CCXT setup paths; Kraken, Binance,

KuCoin, BitMEX, Bybit, and OKX have documented backtesting examples. Lumibot does not claim blanket support for every

CCXT exchange. Select Backtesting Data Sources Lumibot can backtest from free daily data, broker data, premium market

data, and your own files: Yahoo Finance Alpaca Interactive Brokers REST ThetaData Polygon/Massive DataBento Tradier

Schwab Polymarket prediction-contract price history CCXT backtesting examples: Kraken, Binance, KuCoin, BitMEX, Bybit,

and OKX Pandas/CSV dataframes Recommended Data Provider For the deepest historical coverage (stocks, options, futures,

indexes), we recommend ThetaData. Use promo code BotSpot10 for 10% off your first order. AI Trading Agents Lumibot

includes a built-in AI trading agent runtime. Build agents that run identically in backtests and live trading. Create

agents with self.agents.create(...) Use a different model per agent with model="openai/gpt-5.5" or any

LiteLLM/ADK-supported provider string Make research agents read-only with allow_trading=False Give agents built-in SEC

fundamentals, filings, FRED macro data, indicators, memory, and notifications Use DuckDB for time-series analysis

instead of dumping raw bars into prompts Mount external MCP servers for news, macro data, filings, or any

domain-specific tools Replay identical agent decisions in backtests without paying for another model call Use BotSpot

MCP when you want an AI coding agent to generate Lumibot strategies, launch backtests, inspect artifacts, and iterate

without leaving your editor. Start here: Agent Documentation AI Trading Team Flow Design AI Trading Team Examples

Leveraged ETF, large-cap stocks, Ray Dalio idea meritocracy, Warren Buffett value, Bill Ackman concentrated, and Citadel

sector pods Standalone AI Committee Demo Discretionary Agent Example News Sentiment Agent Example Full Guide Memory and

Traceability AI strategies can record proposals, risk notes, actual trading decisions, submitted orders, lessons, open

theses, tool calls, and run artifacts as local SQLite and Parquet files. This makes an AI backtest reviewable instead of

a black box: you can inspect why the agent traded, which tools it used, what memory it retrieved, and what it remembered

for later iterations. Memory events include agent/model-call provenance when they come from agent tools. Community

Strategies Browse and contribute open-source strategies: lumibot-strategies. For hosted strategy discovery with

performance, descriptions, visuals, and deploy flows, use the BotSpot marketplace. Example Strategies Lumibot includes

25+ example strategies covering stocks, options, crypto, futures, forex, and Polymarket prediction contracts: # Run a

simple buy-and-hold backtest python -m lumibot.example_strategies.stock_buy_and_hold # Or explore all examples ls

lumibot/example_strategies/ Browse all examples: example_strategies/ Polymarket example:

polymarket_prediction_contract.py External example repo: stock_example_algo shows a minimal strategy repository you can

run yourself or adapt inside BotSpot. Backtesting Data Sources Select a data source via environment variable (overrides

code): export BACKTESTING_DATA_SOURCE=thetadata # or yahoo, ibkr, polygon, polymarket Multi-provider routing by asset

type: export

BACKTESTING_DATA_SOURCE='{"default":"thetadata","option":"thetadata","crypto":"ibkr","crypto_future":"ibkr","future":"ibkr","cont_future":"ibkr"}'

Crypto futures/perpetual backtests can route Asset.AssetType.CRYPTO_FUTURE through spot crypto history. Quote symbols

are preserved: BTCUSDT uses BTC/USDT spot history when that pair is available from the selected crypto data source.

LumiBot must not silently replace a requested USDT, USDC, EUR, or other quote with USD; missing pairs should fail

honestly or be changed explicitly in strategy code. Data source comparison Data Source OHLCV Split Adjusted Dividends

Dividend Adjusted Returns Yahoo Yes Yes Yes Yes Alpaca Yes Yes No No Polygon Yes Yes No No Tradier Yes Yes No No

Polymarket Yes N/A N/A N/A Pandas* Yes Yes Yes Yes *Pandas loads CSV files in Yahoo dataframe format, which can contain

dividends. Learn More Documentation: lumibot.lumiwealth.com Blog: lumiwealth.com/blog AI strategy builder and hosted

deployment: BotSpot.trade BotSpot MCP for AI coding agents: botspot.trade/agents Strategy marketplace:

botspot.trade/marketplace YouTube strategy builds: Lumiwealth on YouTube Project Growth AI Bootcamp Learn to build,

backtest, and deploy trading strategies using AI. Join 2,400+ traders. Contributing We welcome contributions! Here's a

video to help you get started: Watch The Video Steps: Clone the repository Create a new branch: git switch -c my-feature

Install dev dependencies: pip install -r requirements_dev.txt && pip install -e . Make your changes Run tests:

pytest Create a pull request Running Tests pytest # Run all tests pytest tests/test_asset.py # Run a specific test file

coverage run; coverage report # Show code coverage Remote Cache Configuration Lumibot can mirror its local parquet

caches to AWS S3. See docs/remote_cache.md for configuration. Architecture Documentation Backtesting Architecture - Data

flow diagrams for Yahoo, ThetaData, Polygon Acceptance Backtests - End-to-end acceptance suite Environment Variables -

All configurable env vars Changelog - Release notes AI Assistant Guide - Instructions for AI coding assistants

Production Safety - ThetaData and production rules Disclaimer This software is provided for educational and

informational purposes only. It is not financial advice and does not constitute a recommendation to buy or sell any

security. Lumibot and BotSpot are not registered broker-dealers or financial advisors. Algorithmic trading involves

substantial risk of loss, including the possibility of losses greater than your initial investment. Software bugs and

errors can lead to rapid financial losses. Past backtest performance does not guarantee future results. Use this

software at your own risk. You are solely responsible for compliance with all applicable laws and regulations regarding

the assets you choose to trade. Affiliate disclosure: some provider links or promo codes, including ThetaData, may

support continued Lumibot development. License MIT License - View License Project links Homepage BotSpot Platform Bug

Tracker Discord Community Documentation Reddit Community Source Code Key dates PyPI data Data sourced directly from

PyPI's database. Released: Aug 26, 2026 Latest release 1 maintainer PyPI data Data sourced directly from PyPI's

database. lumiwealth Credits Author: Robert Grzesik License MIT License (MIT) Requires Python >=3.10 Provides Extra

thetadata Tags algorithmic-trading backtesting trading-bot live-trading stocks options crypto cryptocurrency futures

forex quantitative-finance alpaca interactive-brokers tradier polymarket schwab trading-strategies paper-trading

ai-trading multi-asset event-driven Classifiers Development Status 5 - Production/Stable Intended Audience Developers

Financial and Insurance Industry Science/Research License OSI Approved :: MIT License Operating System OS Independent

Programming Language Python :: 3 Python :: 3.10 Python :: 3.11 Python :: 3.12 Topic Office/Business :: Financial

Office/Business :: Financial :: Investment Scientific/Engineering :: Artificial Intelligence Software Development ::

Libraries :: Python Modules Report project as malware Download files Download the file for your platform. If you're not

sure which to choose, learn more about installing packages. Source Distributions No source distribution files available

for this release.See tutorial on generating distribution archives. Built Distribution Filter files by name, interpreter,

ABI, and platform. If you're not sure about the file name format, learn more about wheel file names. The dropdown lists

show the available interpreters, ABIs, and platforms. Enable javascript to be able to filter the list of wheel files.

Copy a direct link to the current filters Copy File name Interpreter Interpreter py3 ABI ABI none Platform Platform any

lumibot-4.5.86-py3-none-any.whl (37.8 MB view details) Uploaded Aug 26, 2026 Python 3 File details Details for the file

lumibot-4.5.86-py3-none-any.whl. File metadata Download URL: lumibot-4.5.86-py3-none-any.whl Upload date: Aug 26, 2026

Size: 37.8 MB Tags: Python 3 Uploaded using Trusted Publishing? No Uploaded via: twine/7.0.0 CPython/3.13.14 File hashes

Hashes for lumibot-4.5.86-py3-none-any.whl Algorithm Hash digest SHA256

c99106fdbed3d62c0ee1a20dffcbfe21a2ec54d91612712fd9aacc6c4ea827da Copy MD5 36b7b37534d963ab07231645714fbebe Copy

BLAKE2b-256 55d5f90e087c7eff2dec2ff03d596a8cb61f647514a5d17f03835382acbb840f Copy See more details on using hashes here.

Release history Release notifications | RSS feed This release 4.5.86 This release Aug 26, 2026 1 file 4.5.84 Aug 26,

2026 1 file 4.5.83 Aug 5, 2026 1 file 4.5.82 Aug 4, 2026 1 file 4.5.81 Jul 30, 2026 1 file 4.5.80 Jul 30, 2026 1 file

4.5.79 Jul 30, 2026 1 file 4.5.78 Jul 16, 2026 1 file 4.5.77 Jul 15, 2026 1 file 4.5.76 Jul 14, 2026 1 file 4.5.74 Jul

8, 2026 1 file 4.5.73 Jul 8, 2026 1 file 4.5.72 Jul 8, 2026 1 file 4.5.70 Jul 8, 2026 1 file 4.5.69 Jul 7, 2026 1 file

4.5.68 Jul 7, 2026 1 file 4.5.66 Jul 4, 2026 1 file 4.5.65 Jul 4, 2026 1 file 4.5.64 Jul 2, 2026 1 file 4.5.63 Jun 30,

2026 1 file 4.5.62 Jun 25, 2026 1 file 4.5.61 Jun 25, 2026 1 file 4.5.60 Jun 25, 2026 1 file 4.5.59 Jun 25, 2026 1 file

4.5.58 Jun 25, 2026 1 file 4.5.57 Jun 25, 2026 1 file 4.5.56 Jun 25, 2026 1 file 4.5.55 Jun 25, 2026 1 file 4.5.54 Jun

25, 2026 1 file 4.5.53 Jun 24, 2026 1 file 4.5.52 Jun 23, 2026 1 file 4.5.49 Jun 12, 2026 1 file 4.5.48 Jun 12, 2026 1

file 4.5.47 Jun 5, 2026 1 file 4.5.46 Jun 5, 2026 1 file 4.5.45 Jun 3, 2026 1 file 4.5.44 Jun 1, 2026 1 file 4.5.42 Jun

1, 2026 1 file 4.5.41 May 30, 2026 1 file 4.5.40 May 29, 2026 1 file 4.5.38 May 29, 2026 1 file 4.5.37 May 29, 2026 1

file 4.5.36 May 28, 2026 1 file 4.5.35 May 28, 2026 1 file 4.5.34 May 27, 2026 1 file 4.5.32 May 23, 2026 1 file 4.5.31

May 23, 2026 1 file 4.5.30 May 22, 2026 1 file 4.5.29 May 21, 2026 1 file 4.5.28 May 20, 2026 1 file 4.5.27 May 20, 2026

1 file 4.5.26 May 19, 2026 1 file 4.5.23 May 15, 2026 1 file 4.5.22 May 15, 2026 1 file 4.5.21 May 15, 2026 1 file

4.5.20 May 15, 2026 1 file 4.5.19 May 14, 2026 1 file 4.5.18 May 14, 2026 1 file 4.5.17 May 14, 2026 1 file 4.5.16 May

14, 2026 1 file 4.5.15 May 13, 2026 1 file 4.5.14 May 13, 2026 1 file 4.5.13 May 13, 2026 1 file 4.5.12 May 13, 2026 1

file 4.5.11 May 12, 2026 1 file 4.5.10 May 1, 2026 1 file 4.5.9 Apr 30, 2026 1 file 4.5.8 Apr 29, 2026 1 file 4.5.7 Apr

29, 2026 1 file 4.5.6 Apr 29, 2026 1 file 4.5.5 Apr 25, 2026 1 file 4.5.4 Apr 24, 2026 1 file 4.5.3 Apr 22, 2026 1 file

4.5.2 Apr 21, 2026 1 file 4.5.1 Apr 20, 2026 1 file 4.5.0 Apr 20, 2026 1 file 4.4.62 Apr 15, 2026 1 file 4.4.61 Apr 1,

2026 1 file 4.4.58 Apr 1, 2026 1 file 4.4.57 Mar 31, 2026 1 file 4.4.56 Mar 17, 2026 1 file 4.4.55 Mar 16, 2026 1 file

4.4.54 Mar 9, 2026 1 file 4.4.53 Mar 6, 2026 1 file 4.4.52 Mar 3, 2026 1 file 4.4.51 Feb 26, 2026 1 file 4.4.50 Feb 19,

2026 1 file 4.4.49 Feb 11, 2026 1 file 4.4.48 Feb 10, 2026 1 file 4.4.47 Feb 7, 2026 1 file 4.4.46 Feb 6, 2026 1 file

4.4.45 Jan 30, 2026 1 file 4.4.44 Jan 30, 2026 1 file 4.4.43 Jan 30, 2026 1 file 4.4.42 Jan 30, 2026 1 file 4.4.41 Jan

28, 2026 1 file 4.4.40 Jan 27, 2026 1 file 4.4.39 Jan 27, 2026 1 file 4.4.38 Jan 26, 2026 1 file 4.4.37 Jan 24, 2026 1

file 4.4.36 Jan 24, 2026 1 file 4.4.35 Jan 19, 2026 1 file 4.4.34 Jan 19, 2026 1 file 4.4.33 Jan 12, 2026 1 file 4.4.32

Jan 10, 2026 1 file 4.4.31 Jan 9, 2026 1 file 4.4.30 Jan 7, 2026 1 file 4.4.29 Jan 6, 2026 1 file 4.4.28 Jan 6, 2026 1

file 4.4.27 Jan 5, 2026 1 file 4.4.26 Jan 5, 2026 1 file 4.4.25 Jan 5, 2026 1 file 4.4.24 Jan 3, 2026 1 file 4.4.23 Jan

3, 2026 1 file 4.4.22 Jan 3, 2026 1 file 4.4.21 Jan 2, 2026 1 file 4.4.20 Dec 31, 2025 1 file 4.4.19 Dec 31, 2025 1 file

4.4.18 Dec 31, 2025 1 file 4.4.16 Dec 27, 2025 1 file 4.4.15 Dec 26, 2025 1 file 4.4.14 Dec 22, 2025 1 file 4.4.13 Dec

18, 2025 1 file 4.4.12 Dec 16, 2025 1 file 4.4.11 Dec 9, 2025 1 file 4.4.10 Dec 8, 2025 1 file 4.4.9 Dec 8, 2025 1 file

4.4.8 Dec 7, 2025 1 file 4.4.7 Dec 5, 2025 1 file 4.4.6 Dec 3, 2025 1 file 4.4.5 Dec 2, 2025 1 file 4.4.4 Nov 29, 2025 1

file 4.4.3 Nov 29, 2025 1 file 4.4.2 Nov 28, 2025 1 file 4.4.1 Nov 26, 2025 1 file 4.4.0 Nov 24, 2025 1 file 4.3.12 Nov

24, 2025 1 file 4.3.11 Nov 24, 2025 1 file 4.3.10 Nov 24, 2025 1 file 4.3.9 Nov 23, 2025 1 file 4.3.8 Nov 23, 2025 1

file 4.3.7 Nov 19, 2025 1 file 4.3.6 Nov 16, 2025 1 file 4.3.5 Nov 16, 2025 1 file 4.3.4 Nov 16, 2025 1 file 4.3.3 Nov

15, 2025 1 file 4.3.2 Nov 14, 2025 1 file 4.3.1 Nov 14, 2025 1 file 4.3.0 Nov 14, 2025 1 file 4.2.12 Nov 8, 2025 1 file

4.2.11 Nov 8, 2025 1 file 4.2.10 Nov 5, 2025 1 file 4.2.9 Nov 3, 2025 1 file 4.2.8 Nov 3, 2025 1 file 4.2.7 Nov 2, 2025

1 file 4.2.6 Nov 2, 2025 1 file 4.2.5 Nov 2, 2025 1 file 4.2.4 Nov 2, 2025 1 file 4.2.3 Nov 1, 2025 1 file 4.2.2 Nov 1,

2025 1 file 4.2.1 Nov 1, 2025 1 file 4.2.0 Oct 30, 2025 1 file 4.1.3 Oct 9, 2025 1 file 4.1.2 Oct 8, 2025 1 file 4.1.1

Oct 8, 2025 1 file 4.1.0 Oct 8, 2025 1 file 4.0.23 Oct 1, 2025 1 file 4.0.22 Oct 1, 2025 1 file 4.0.21 Oct 1, 2025 1

file 4.0.20 Sep 30, 2025 1 file 4.0.19 Sep 29, 2025 1 file 4.0.18 Sep 29, 2025 1 file 4.0.17 Sep 28, 2025 1 file 4.0.16

Sep 25, 2025 1 file 4.0.15 Sep 19, 2025 1 file 4.0.14 Sep 18, 2025 1 file 4.0.13 Sep 18, 2025 1 file 4.0.12 Sep 18, 2025

1 file 4.0.11 Sep 17, 2025 1 file 4.0.10 Sep 17, 2025 1 file 4.0.9 Sep 10, 2025 1 file 4.0.8 Sep 10, 2025 1 file 4.0.7

Sep 10, 2025 1 file 4.0.6 Sep 4, 2025 1 file 4.0.5 Aug 29, 2025 1 file 4.0.4 Aug 29, 2025 1 file 4.0.3 Aug 25, 2025 1

file 4.0.2 Aug 21, 2025 1 file 4.0.1 Aug 21, 2025 1 file 4.0.0 Aug 20, 2025 1 file 3.18.2 Aug 8, 2025 1 file 3.18.1 Jul

30, 2025 1 file 3.18.0 Jul 30, 2025 1 file 3.17.19 Jul 24, 2025 1 file 3.17.18 Jul 23, 2025 1 file 3.17.17 Jul 22, 2025

1 file 3.17.16 Jul 22, 2025 1 file 3.17.15 Jul 21, 2025 1 file 3.17.14 Jul 12, 2025 1 file 3.17.12 Jul 11, 2025 1 file

3.17.11 Jul 11, 2025 1 file 3.17.10 Jul 9, 2025 1 file 3.17.9 Jul 9, 2025 1 file 3.17.8 Jul 9, 2025 1 file 3.17.6 Jul 9,

2025 1 file 3.17.5 Jul 4, 2025 1 file 3.17.4 Jul 4, 2025 1 file 3.17.3 Jul 3, 2025 1 file 3.17.2 Jul 3, 2025 1 file

3.17.1 Jul 3, 2025 1 file 3.17.0 Jul 3, 2025 1 file 3.16.1 Jun 23, 2025 1 file 3.16.0 Jun 20, 2025 1 file 3.15.1 Jun 18,

2025 1 file 3.15.0 Jun 5, 2025 1 file 3.14.11 Jun 4, 2025 1 file 3.14.10 Jun 4, 2025 1 file 3.14.9 Jun 4, 2025 1 file

3.14.8 Jun 4, 2025 1 file 3.14.7 Jun 1, 2025 1 file 3.14.6 Jun 1, 2025 1 file 3.14.5 May 30, 2025 1 file 3.14.4 May 28,

2025 1 file 3.14.3 May 28, 2025 1 file 3.14.2 May 28, 2025 1 file 3.14.1 May 28, 2025 1 file 3.14.0 May 28, 2025 1 file

3.13.9 May 20, 2025 1 file 3.13.8 May 19, 2025 1 file 3.13.7 May 17, 2025 1 file 3.13.6 May 17, 2025 1 file 3.13.5 May

17, 2025 1 file 3.13.4 May 14, 2025 1 file 3.13.3 May 14, 2025 1 file 3.13.2 May 14, 2025 1 file 3.13.1 May 14, 2025 1

file 3.13.0 May 13, 2025 1 file 3.12.14 May 13, 2025 1 file 3.12.13 May 8, 2025 1 file 3.12.12 May 8, 2025 1 file

3.12.11 May 6, 2025 1 file 3.12.10 May 5, 2025 1 file 3.12.9 May 2, 2025 1 file 3.12.8 Apr 30, 2025 1 file 3.12.7 Apr

30, 2025 1 file 3.12.6 Apr 30, 2025 1 file 3.12.5 Apr 30, 2025 1 file 3.12.4 Apr 30, 2025 1 file 3.12.3 Apr 30, 2025 1

file 3.12.2 Apr 30, 2025 1 file 3.12.1 Apr 30, 2025 1 file 3.12.0 Apr 30, 2025 1 file 3.11.11 Apr 30, 2025 1 file

3.11.10 Apr 23, 2025 1 file 3.11.9 Apr 23, 2025 1 file 3.11.8 Apr 18, 2025 1 file 3.11.7 Apr 17, 2025 1 file 3.11.6 Apr

15, 2025 1 file 3.11.5 Apr 12, 2025 1 file 3.11.4 Apr 12, 2025 1 file 3.11.3 Apr 11, 2025 1 file 3.11.2 Apr 11, 2025 1

file 3.11.1 Apr 9, 2025 1 file 3.11.0 Apr 7, 2025 1 file 3.10.6 Mar 22, 2025 1 file 3.10.5 Mar 17, 2025 1 file 3.10.4

Mar 17, 2025 1 file 3.10.3 Mar 15, 2025 1 file 3.10.2 Mar 15, 2025 1 file 3.10.1 Mar 15, 2025 1 file 3.10.0 Mar 14, 2025

1 file 3.9.17 Feb 20, 2025 1 file 3.9.16 Feb 19, 2025 1 file 3.9.15 Feb 19, 2025 1 file 3.9.14 Feb 15, 2025 1 file

3.9.13 Feb 15, 2025 1 file 3.9.12 Feb 15, 2025 1 file 3.9.11 Feb 5, 2025 1 file 3.9.10 Feb 5, 2025 1 file 3.9.9 Feb 5,

2025 1 file 3.9.8 Feb 3, 2025 1 file 3.9.7 Feb 3, 2025 1 file 3.9.6 Jan 31, 2025 1 file 3.9.5 Jan 30, 2025 1 file 3.9.4

Jan 29, 2025 1 file 3.9.3 Jan 24, 2025 1 file 3.9.2 Jan 22, 2025 1 file 3.9.1 Jan 18, 2025 1 file 3.9.0 Jan 18, 2025 1

file 3.8.27 Jan 18, 2025 1 file 3.8.26 Jan 14, 2025 1 file 3.8.25 Jan 13, 2025 1 file 3.8.24 Dec 22, 2024 1 file 3.8.23

Dec 22, 2024 1 file 3.8.22 Dec 17, 2024 1 file 3.8.21 Dec 17, 2024 1 file 3.8.20 Dec 12, 2024 1 file 3.8.19 Dec 12, 2024

1 file 3.8.18 Dec 11, 2024 1 file 3.8.17 Dec 7, 2024 1 file 3.8.16 Dec 3, 2024 1 file 3.8.15 Nov 29, 2024 1 file 3.8.14

Nov 29, 2024 1 file 3.8.13 Nov 28, 2024 1 file 3.8.12 Nov 22, 2024 1 file 3.8.11 Nov 21, 2024 1 file 3.8.10 Nov 19, 2024

1 file 3.8.9 Nov 19, 2024 1 file 3.8.8 Nov 14, 2024 1 file 3.8.7 Nov 12, 2024 1 file 3.8.6 Nov 9, 2024 1 file 3.8.5 Nov

5, 2024 1 file 3.8.4 Nov 5, 2024 1 file 3.8.3 Nov 5, 2024 1 file 3.8.2 Oct 31, 2024 1 file 3.8.1 Oct 22, 2024 1 file

3.8.0 Oct 19, 2024 1 file 3.7.20 Oct 17, 2024 1 file 3.7.19 Oct 16, 2024 1 file 3.7.18 Oct 16, 2024 1 file 3.7.17 Oct

16, 2024 1 file 3.7.16 Oct 15, 2024 1 file 3.7.15 Oct 15, 2024 1 file 3.7.14 Oct 14, 2024 1 file 3.7.13 Oct 12, 2024 1

file 3.7.12 Oct 12, 2024 1 file 3.7.11 Oct 12, 2024 1 file 3.7.10 Oct 12, 2024 1 file 3.7.9 Oct 10, 2024 1 file 3.7.8

Oct 1, 2024 1 file 3.7.7 Sep 27, 2024 1 file 3.7.6 Sep 22, 2024 1 file 3.7.5 Sep 20, 2024 1 file 3.7.4 Sep 18, 2024 1

file 3.7.3 Sep 9, 2024 1 file 3.7.2 Sep 6, 2024 1 file 3.7.1 Sep 4, 2024 1 file 3.7.0 Sep 4, 2024 1 file 3.6.26 Sep 3,

2024 1 file 3.6.25 Aug 28, 2024 1 file 3.6.24 Aug 22, 2024 1 file 3.6.23 Aug 22, 2024 1 file 3.6.22 Aug 22, 2024 1 file

3.6.21 Aug 19, 2024 1 file 3.6.20 Aug 19, 2024 1 file 3.6.19 Aug 17, 2024 1 file 3.6.18 Aug 16, 2024 1 file 3.6.17 Aug

16, 2024 1 file 3.6.16 Aug 15, 2024 1 file 3.6.15 Aug 14, 2024 1 file 3.6.14 Aug 14, 2024 1 file 3.6.13 Aug 14, 2024 1

file 3.6.12 Aug 14, 2024 1 file 3.6.11 Aug 13, 2024 1 file 3.6.10 Aug 13, 2024 1 file 3.6.9 Aug 13, 2024 1 file 3.6.8

Aug 13, 2024 1 file 3.6.7 Aug 12, 2024 1 file 3.6.6 Aug 12, 2024 1 file 3.6.5 Aug 12, 2024 1 file 3.6.4 Aug 10, 2024 1

file 3.6.3 Aug 9, 2024 1 file 3.6.2 Aug 9, 2024 1 file 3.6.1 Aug 9, 2024 1 file 3.6.0 Aug 9, 2024 1 file 3.5.25 Aug 6,

2024 1 file 3.5.24 Aug 6, 2024 1 file 3.5.23 Aug 6, 2024 1 file 3.5.22 Aug 5, 2024 1 file 3.5.21 Aug 2, 2024 1 file

3.5.20 Aug 2, 2024 1 file 3.5.19 Jul 31, 2024 1 file 3.5.18 Jul 29, 2024 1 file 3.5.17 Jul 24, 2024 1 file 3.5.16 Jul

24, 2024 1 file 3.5.15 Jul 22, 2024 1 file 3.5.14 Jul 18, 2024 1 file 3.5.13 Jul 10, 2024 1 file 3.5.12 Jul 5, 2024 1

file 3.5.11 Jul 4, 2024 1 file 3.5.10 Jul 3, 2024 1 file 3.5.9 Jun 29, 2024 1 file 3.5.8 Jun 23, 2024 1 file 3.5.7 Jun

16, 2024 1 file 3.5.6 Jun 14, 2024 1 file 3.5.5 Jun 12, 2024 1 file 3.5.4 Jun 12, 2024 1 file 3.5.3 Jun 11, 2024 1 file

3.5.2 Jun 11, 2024 1 file 3.5.1 Jun 10, 2024 1 file 3.5.0 Jun 4, 2024 1 file 3.4.7 Jun 3, 2024 1 file 3.4.6 Jun 3, 2024

1 file 3.4.5 Jun 3, 2024 1 file 3.4.4 May 28, 2024 1 file 3.4.3 May 24, 2024 1 file 3.4.2 May 23, 2024 1 file 3.4.1 May

10, 2024 1 file 3.4.0 May 8, 2024 1 file 3.3.7 Apr 11, 2024 1 file 3.3.6 Apr 10, 2024 1 file 3.3.5 Apr 10, 2024 1 file

3.3.4 Apr 10, 2024 1 file 3.3.3 Apr 10, 2024 1 file 3.3.2 Apr 8, 2024 1 file 3.3.1 Apr 7, 2024 1 file 3.2.15 Mar 27,

2024 1 file 3.2.14 Mar 27, 2024 1 file 3.2.13 Mar 27, 2024 1 file 3.2.12 Mar 27, 2024 1 file 3.2.11 Mar 27, 2024 1 file

3.2.10 Mar 20, 2024 1 file 3.2.9 Mar 19, 2024 1 file 3.2.8 Mar 17, 2024 1 file 3.2.7 Mar 15, 2024 1 file 3.2.6 Mar 14,

2024 1 file 3.2.5 Mar 14, 2024 1 file 3.2.4 Mar 12, 2024 1 file 3.2.3 Mar 12, 2024 1 file 3.2.2 Mar 11, 2024 1 file

3.2.1 Mar 10, 2024 1 file 3.2.0 Mar 5, 2024 1 file 3.1.14 Mar 1, 2024 1 file 3.1.13 Mar 1, 2024 1 file 3.1.12 Feb 29,

2024 1 file 3.1.11 Feb 29, 2024 1 file 3.1.10 Feb 28, 2024 1 file 3.1.9 Feb 28, 2024 1 file 3.1.8 Feb 23, 2024 1 file

3.1.7 Feb 15, 2024 1 file 3.1.6 Feb 13, 2024 1 file 3.1.5 Feb 12, 2024 1 file 3.1.4 Feb 12, 2024 1 file 3.1.3 Feb 12,

2024 1 file 3.1.2 Feb 12, 2024 1 file 3.1.1 Feb 9, 2024 1 file 3.1.0 Feb 9, 2024 1 file 3.0.6 Feb 2, 2024 1 file 3.0.5

Jan 22, 2024 1 file 3.0.4 Jan 22, 2024 1 file 3.0.3 Jan 19, 2024 1 file 3.0.2 Jan 18, 2024 1 file 3.0.1 Jan 18, 2024 1

file 3.0.0 Jan 17, 2024 1 file 2.9.13 Dec 24, 2023 1 file 2.9.12 Dec 23, 2023 1 file 2.9.11 Dec 20, 2023 1 file 2.9.10

Dec 19, 2023 1 file 2.9.9 Dec 19, 2023 1 file 2.9.8 Dec 18, 2023 1 file 2.9.7 Dec 15, 2023 1 file 2.9.6 Dec 7, 2023 1

file 2.9.5 Dec 4, 2023 1 file 2.9.4 Dec 1, 2023 1 file 2.9.3 Nov 19, 2023 1 file 2.9.2 Nov 16, 2023 1 file 2.9.1 Nov 9,

2023 1 file 2.9.0 Nov 8, 2023 1 file 2.8.15 Nov 8, 2023 1 file 2.8.14 Nov 2, 2023 1 file 2.8.13 Nov 2, 2023 1 file

2.8.12 Oct 27, 2023 1 file 2.8.11 Oct 26, 2023 1 file 2.8.10 Oct 19, 2023 1 file 2.8.9 Oct 18, 2023 1 file 2.8.8 Oct 16,

2023 1 file 2.8.7 Oct 14, 2023 1 file 2.8.6 Oct 13, 2023 1 file 2.8.5 Oct 9, 2023 1 file 2.8.4 Oct 2, 2023 1 file 2.8.3

Sep 21, 2023 1 file 2.8.2 Sep 19, 2023 1 file 2.8.1 Sep 11, 2023 1 file 2.8 Sep 7, 2023 1 file 2.7.18 Sep 6, 2023 1 file

2.7.17 Sep 6, 2023 1 file 2.7.16 Sep 5, 2023 1 file 2.7.15 Sep 5, 2023 1 file 2.7.14 Aug 16, 2023 1 file 2.7.13 Aug 16,

2023 1 file 2.7.12 Aug 15, 2023 1 file 2.7.11 Aug 6, 2023 1 file 2.7.10 Aug 6, 2023 1 file 2.7.9 Aug 6, 2023 1 file

2.7.8 Aug 4, 2023 1 file 2.7.7 Aug 2, 2023 1 file 2.7.6 Aug 1, 2023 1 file 2.7.5 Jul 31, 2023 1 file 2.7.4 Jul 26, 2023

1 file 2.7.3 Jul 25, 2023 1 file 2.7.2 Jul 17, 2023 1 file 2.7.1 Jul 17, 2023 1 file 2.7.0 Jul 11, 2023 1 file 2.6.9 Jul

5, 2023 1 file 2.6.8 Jul 3, 2023 1 file 2.6.7 Jul 3, 2023 1 file 2.6.6 Jun 7, 2023 1 file 2.6.5 Jun 2, 2023 1 file 2.6.4

May 29, 2023 1 file 2.6.3 May 29, 2023 1 file 2.6.2 May 28, 2023 1 file 2.6.1 May 24, 2023 1 file 2.6.0 May 23, 2023 1

file 2.5.11 May 2, 2023 1 file 2.5.10 May 1, 2023 1 file 2.5.9 Apr 30, 2023 1 file 2.5.8 Apr 30, 2023 1 file 2.5.7 Apr

28, 2023 1 file 2.5.6 Apr 28, 2023 1 file 2.5.5 Apr 27, 2023 1 file 2.5.4 Apr 18, 2023 1 file 2.5.3 Apr 18, 2023 1 file

2.5.2 Apr 14, 2023 1 file 2.5.1 Apr 14, 2023 1 file 2.5.0 Feb 16, 2023 1 file 2.4.18 Jan 26, 2023 1 file 2.4.17 Jan 25,

2023 1 file 2.4.16 Jan 25, 2023 1 file 2.4.15 Jan 23, 2023 1 file 2.4.14 Jan 23, 2023 1 file 2.4.13 Jan 22, 2023 1 file

2.4.12 Jan 17, 2023 1 file 2.4.11 Jan 15, 2023 1 file 2.4.10 Jan 10, 2023 1 file 2.4.9 Dec 30, 2022 1 file 2.4.8 Dec 26,

2022 1 file 2.4.7 Dec 23, 2022 1 file 2.4.6 Dec 20, 2022 1 file 2.4.5 Dec 16, 2022 1 file 2.4.4 Dec 16, 2022 1 file

2.4.3 Dec 16, 2022 1 file 2.4.2 Dec 16, 2022 1 file 2.4.1 Dec 10, 2022 1 file 2.4 Dec 9, 2022 1 file 2.3.13 Dec 9, 2022

1 file 2.3.12 Dec 8, 2022 1 file 2.3.11 Dec 7, 2022 1 file 2.3.10 Dec 1, 2022 1 file 2.3.9 Sep 27, 2022 1 file 2.3.8 Sep

22, 2022 1 file 2.3.7 Sep 20, 2022 1 file 2.3.6 Sep 3, 2022 1 file 2.3.5 Aug 22, 2022 1 file 2.3.4 Aug 15, 2022 1 file

2.3.3 Aug 14, 2022 1 file 2.3.2 Aug 14, 2022 1 file 2.3.1 Aug 11, 2022 1 file 2.3.0 Aug 5, 2022 1 file 2.2.9 Aug 4, 2022

1 file 2.2.8 Aug 4, 2022 1 file 2.2.7 Aug 4, 2022 1 file 2.2.6 Jul 29, 2022 1 file 2.2.5 Jul 21, 2022 1 file 2.2.4 Jul

20, 2022 1 file 2.2.3 Jul 14, 2022 1 file 2.2.2 Jul 14, 2022 1 file 2.2.1 Jul 9, 2022 1 file 2.2.0 Jun 21, 2022 1 file

2.1.9 Jun 6, 2022 1 file 2.1.7 Jun 6, 2022 1 file 2.1.6 Jun 3, 2022 1 file 2.1.5 Jun 3, 2022 1 file 2.1.4 May 29, 2022 1

file 2.1.3 May 17, 2022 1 file 2.1.2 May 16, 2022 1 file 2.1.1 May 11, 2022 1 file 2.1.0 May 7, 2022 1 file 2.0.9 Apr

21, 2022 1 file 2.0.8 Apr 20, 2022 1 file 2.0.7 Apr 20, 2022 1 file 2.0.6 Apr 16, 2022 1 file 2.0.5 Apr 16, 2022 1 file

2.0.4 Apr 15, 2022 1 file 2.0.3 Apr 10, 2022 1 file 2.0.2 Apr 8, 2022 1 file 2.0.1 Apr 7, 2022 1 file 2.0.0 Apr 6, 2022

1 file 1.6.2 Apr 1, 2022 1 file 1.6.1 Mar 25, 2022 1 file 1.6.0 Mar 25, 2022 1 file 1.5.5 Feb 17, 2022 1 file 1.5.4 Feb

17, 2022 1 file 1.5.3 Feb 17, 2022 1 file 1.5.2 Feb 17, 2022 1 file 1.5.1 Feb 17, 2022 1 file 1.5.0 Feb 17, 2022 1 file

1.4.9 Feb 10, 2022 1 file 1.4.8 Jan 14, 2022 1 file 1.4.7 Jan 13, 2022 1 file 1.4.6 Jan 5, 2022 1 file 1.4.5 Jan 4, 2022

1 file 1.4.4 Jan 4, 2022 1 file 1.4.3 Jan 4, 2022 1 file 1.4.2 Dec 8, 2021 1 file 1.4.1 Dec 3, 2021 1 file 1.4.0 Nov 29,

2021 1 file 1.3.9 Nov 18, 2021 1 file 1.3.8 Oct 31, 2021 1 file 1.3.7 Oct 30, 2021 1 file 1.3.6 Oct 27, 2021 1 file

1.3.5 Oct 25, 2021 1 file 1.3.4 Oct 16, 2021 1 file 1.3.3 Oct 15, 2021 1 file 1.3.2 Oct 15, 2021 1 file 1.3.1 Oct 15,

2021 1 file 1.3.0 Oct 7, 2021 1 file 1.2.8 Sep 14, 2021 1 file 1.2.7 Sep 10, 2021 1 file 1.2.6 Sep 9, 2021 1 file 1.2.5

Sep 8, 2021 1 file 1.2.4 Sep 8, 2021 1 file 1.2.3 Aug 25, 2021 1 file 1.2.2 Aug 24, 2021 1 file 1.2.1 Aug 19, 2021 1

file 1.1.7 Jul 13, 2021 1 file 1.1.6 Jul 12, 2021 1 file 1.1.5 Jul 9, 2021 1 file 1.1.4 Jul 8, 2021 1 file 1.1.3 Jul 7,

2021 1 file 1.1.2 Jul 1, 2021 1 file 1.1.1 Jun 25, 2021 1 file 1.1.0 Jun 25, 2021 1 file 1.0.3 Jun 11, 2021 1 file 1.0.2

Jun 8, 2021 1 file 1.0.1 Jun 8, 2021 1 file 1.0.0 Jun 8, 2021 1 file 0.0.10 Mar 29, 2021 1 file 0.0.9 Mar 19, 2021 1

file 0.0.8 Mar 12, 2021 1 file 0.0.7 Mar 2, 2021 1 file 0.0.6 Feb 18, 2021 1 file 0.0.5 Feb 18, 2021 1 file 0.0.4 Feb

16, 2021 1 file 0.0.3 Feb 12, 2021 1 file 0.0.2 Jan 15, 2021 1 file 0.0.1 Jan 12, 2021 1 file Help Installing packages

Uploading packages User guide Project name retention FAQs About PyPI PyPI Blog Infrastructure dashboard Statistics Logos

& trademarks Our sponsors Contributing to PyPI Bugs and feedback Contribute on GitHub Translate PyPI Sponsor PyPI

Development credits Using PyPI Terms of Service Report security issue Code of conduct Privacy Notice Acceptable Use

Policy Status: all systems operational Developed and maintained by the Python community, for the Python community.

Donate today! "PyPI", "Python Package Index", and the blocks logos are registered trademarks of the Python Software

Foundation. © 2026 Python Software Foundation Site map Deployed from 1ccf4dc Switch to desktop version English español

français 日本語 português (Brasil) українська Ελληνικά Deutsch 中文 (简体) 中文 (繁體)

русский עברית Esperanto 한국어 Supported by AWS Cloud computing and Security Sponsor Datadog Monitoring

Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page

Source: pypi.org