diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 7ae0a2a..cf2ad3b 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -11,13 +11,13 @@ jobs:
steps:
- uses: actions/checkout@v4
+ - name: Install system deps
+ run: sudo apt-get update && sudo apt-get install -y libudev-dev pkg-config liblgpio-dev
+
- uses: prefix-dev/setup-pixi@v0.9.4
with:
cache: ${{ !env.ACT }}
- - name: Install system deps for AHControl (Rust)
- run: sudo apt-get update && sudo apt-get install -y libudev-dev pkg-config
-
- name: Run pre-commit
run: pixi run pre-commit run --all-files
diff --git a/.gitignore b/.gitignore
index 86ec081..451c125 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,3 +13,8 @@ target/
Demo/out/
out/
*.code-workspace
+
+# Log, CSV, and HTML plot files
+*.log
+*.csv
+*.html
\ No newline at end of file
diff --git a/Demo/Sensors/README.md b/Demo/Sensors/README.md
new file mode 100644
index 0000000..1ec6f41
--- /dev/null
+++ b/Demo/Sensors/README.md
@@ -0,0 +1,147 @@
+# AmazingHand — Sensors
+
+## Files
+
+| File | Description |
+|---|---|
+| `config.toml` | Shared config — GPIO pins, SPI settings, sensor channels, logging and visualisation defaults |
+| `ads1256.py` | ADS1256 driver — 24-bit, 8-channel |
+| `tactile_sensing.py` | `TactileSensor` wrapper — reads config.toml and drives the ADS1256 |
+| `tactile_sensing_post_visualize.py` | Offline Bokeh visualisation of logged CSV data |
+| `haptic_coin.py` | `HapticCoin` PWM class for the QYF-740 coin motor |
+
+---
+
+## FSR Tactile Sensing (ADS1256)
+
+### Hardware
+
+- **ADC HAT**: [Waveshare High-Precision AD HAT](https://www.waveshare.com/wiki/High-Precision_AD_HAT)
+ - ADS1256: 24-bit, 8 single-ended channels, SPI
+- **Sensors**: FSR (Force Sensitive Resistors) wired in a voltage-divider circuit with a **5.1 kΩ resistor** in series with each FSR to each ADC input channel.
+
+### FSR Wiring Diagram
+
+
+
+### SPI Wiring (BCM pin numbers, set in `config.toml`)
+
+| Signal | BCM | Pi header pin |
+|---|---|---|
+| MOSI (DIN) | GPIO 10 | Pin 19 |
+| MISO (DOUT) | GPIO 9 | Pin 21 |
+| SCLK | GPIO 11 | Pin 23 |
+| CS | GPIO 22 | Pin 15 |
+| RST | GPIO 18 | Pin 12 |
+| DRDY | GPIO 17 | Pin 11 |
+
+Enable SPI on the Pi:
+```bash
+sudo raspi-config # Interface Options → SPI → Enable
+```
+
+### Install dependencies
+
+```bash
+pixi install
+```
+
+To add a single package interactively:
+
+```bash
+pixi add --pypi lgpio
+```
+
+### Run
+
+**GUI (default):**
+```bash
+pixi run python -m Demo.Sensors.tactile_sensing
+```
+
+**Terminal only (no GUI window):**
+```bash
+pixi run python -m Demo.Sensors.tactile_sensing --terminal
+```
+
+See all flags:
+```bash
+pixi run python -m Demo.Sensors.tactile_sensing --help
+```
+
+### Offline Visualization
+
+Run without arguments to automatically load the **latest** `tactile_*.csv` from the log directory configured in `config.toml` (`[logging] log_dir`):
+
+```bash
+pixi run python Demo/Sensors/tactile_sensing_post_visualize.py
+```
+
+To visualize a **specific file**, pass it with `--file`:
+
+```bash
+pixi run python Demo/Sensors/tactile_sensing_post_visualize.py --file Demo/Sensors/logs/tactile_20260101_120000.csv
+```
+
+See all flags:
+
+```bash
+pixi run python Demo/Sensors/tactile_sensing_post_visualize.py --help
+```
+
+CSV schema (long format — one row per channel per sample):
+
+```
+sensor_time, channel, raw, volts, force_norm
+```
+
+### Tuning `fsr_r_fixed`
+
+The `fsr_r_fixed` parameter must match the resistor you place in series with each FSR to form the voltage divider. The build uses **5 100 Ω (5.1 kΩ)**. Larger values increase sensitivity at low force; smaller values increase the measurable force range.
+
+---
+
+## Haptic Coin (QYF-740)
+
+### Pin conflict warning
+
+The ADS1256 tactile sensing stack claims the following BCM GPIO pins. **Do not assign the HapticCoin to any of these:**
+
+| BCM | Use |
+|---|---|
+| GPIO 8 | SPI0 CE0 (kernel) |
+| GPIO 9 | SPI0 MISO |
+| GPIO 10 | SPI0 MOSI |
+| GPIO 11 | SPI0 SCLK |
+| GPIO 17 | ADS1256 DRDY |
+| GPIO 18 | ADS1256 RST |
+| GPIO 22 | ADS1256 CS |
+| GPIO 23 | ADS1256 CS_DAC |
+
+Safe choices for the PWM output include GPIO 12, 13 (hardware PWM), 24, 25, 26, 27, or 35.
+
+### Wiring — [RPi 5 pinout](https://vilros.com/pages/raspberry-pi-5-pinout)
+
+
+
+| Motor wire | Pi pin |
+|---|---|
+| GND | Pin 6 |
+| VCC | Pin 2 (5 V) |
+| PWM | Pin 35 (GPIO 19) |
+
+### Usage
+
+```python
+from Demo.Sensors.haptic_coin import HapticCoin
+
+motor = HapticCoin(gpio_pin=19)
+motor.vibrate_once(intensity=0.8, duration_s=0.5)
+motor.cleanup()
+```
+
+Run the example test script as a module so relative imports resolve:
+
+```bash
+pixi run python -m Demo.Sensors.haptic_test
+```
diff --git a/Demo/Sensors/__init__.py b/Demo/Sensors/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/Demo/Sensors/ads1256.py b/Demo/Sensors/ads1256.py
new file mode 100644
index 0000000..4153d38
--- /dev/null
+++ b/Demo/Sensors/ads1256.py
@@ -0,0 +1,263 @@
+"""
+ADS1256 driver — 24-bit, 8-channel ADC (lgpio + spidev, no RPi.GPIO).
+
+Hardware pin and SPI settings are read from config.toml in the same directory.
+"""
+
+import time
+from pathlib import Path
+
+import lgpio
+import spidev
+
+# ---------------------------------------------------------------------------
+# Load hardware settings from config.toml
+# ---------------------------------------------------------------------------
+import tomllib
+
+_CONFIG_PATH = Path(__file__).parent / "config.toml"
+with _CONFIG_PATH.open("rb") as _f:
+ _hw = tomllib.load(_f)["hardware"]
+
+_RST_PIN : int = _hw["rst_pin"]
+_CS_PIN : int = _hw["cs_pin"]
+_CS_DAC_PIN : int = _hw["cs_dac_pin"]
+_DRDY_PIN : int = _hw["drdy_pin"]
+_SPI_MAX_SPEED_HZ : int = _hw["spi_max_speed_hz"]
+_SPI_MODE : int = _hw["spi_mode"]
+
+# ---------------------------------------------------------------------------
+# Hardware handles
+# ---------------------------------------------------------------------------
+_SPI = spidev.SpiDev(0, 0)
+_h: int | None = None
+
+
+# ---------------------------------------------------------------------------
+# Low-level GPIO / SPI helpers
+# ---------------------------------------------------------------------------
+
+def _gpio_write(pin: int, value: int) -> None:
+ lgpio.gpio_write(_h, pin, value)
+
+
+def _gpio_read(pin: int) -> int:
+ return lgpio.gpio_read(_h, pin)
+
+
+def _delay_ms(ms: float) -> None:
+ time.sleep(ms / 1000.0)
+
+
+def _spi_write(data: list[int]) -> None:
+ _SPI.writebytes(data)
+
+
+def _spi_read(n: int) -> list[int]:
+ return _SPI.readbytes(n)
+
+
+# ---------------------------------------------------------------------------
+# Hardware lifecycle
+# ---------------------------------------------------------------------------
+
+def _hw_init() -> None:
+ global _h
+ _h = lgpio.gpiochip_open(4)
+ lgpio.gpio_claim_output(_h, _RST_PIN)
+ lgpio.gpio_claim_output(_h, _CS_DAC_PIN)
+ lgpio.gpio_claim_output(_h, _CS_PIN)
+ lgpio.gpio_claim_input(_h, _DRDY_PIN)
+ _SPI.max_speed_hz = _SPI_MAX_SPEED_HZ
+ _SPI.mode = _SPI_MODE
+
+
+def _hw_exit() -> None:
+ global _h
+ _SPI.close()
+ if _h is not None:
+ lgpio.gpiochip_close(_h)
+ _h = None
+
+
+# ---------------------------------------------------------------------------
+# ADS1256 register / command constants
+# ---------------------------------------------------------------------------
+
+GAIN = {
+ "ADS1256_GAIN_1": 0,
+ "ADS1256_GAIN_2": 1,
+ "ADS1256_GAIN_4": 2,
+ "ADS1256_GAIN_8": 3,
+ "ADS1256_GAIN_16": 4,
+ "ADS1256_GAIN_32": 5,
+ "ADS1256_GAIN_64": 6,
+}
+
+DRATE = {
+ "ADS1256_30000SPS": 0xF0,
+ "ADS1256_15000SPS": 0xE0,
+ "ADS1256_7500SPS": 0xD0,
+ "ADS1256_3750SPS": 0xC0,
+ "ADS1256_2000SPS": 0xB0,
+ "ADS1256_1000SPS": 0xA1,
+ "ADS1256_500SPS": 0x92,
+ "ADS1256_100SPS": 0x82,
+ "ADS1256_60SPS": 0x72,
+ "ADS1256_50SPS": 0x63,
+ "ADS1256_30SPS": 0x53,
+ "ADS1256_25SPS": 0x43,
+ "ADS1256_15SPS": 0x33,
+ "ADS1256_10SPS": 0x20,
+ "ADS1256_5SPS": 0x13,
+ "ADS1256_2d5SPS": 0x03,
+}
+
+REG = {
+ "REG_STATUS": 0,
+ "REG_MUX": 1,
+ "REG_ADCON": 2,
+ "REG_DRATE": 3,
+ "REG_IO": 4,
+ "REG_OFC0": 5,
+ "REG_OFC1": 6,
+ "REG_OFC2": 7,
+ "REG_FSC0": 8,
+ "REG_FSC1": 9,
+ "REG_FSC2": 10,
+}
+
+CMD = {
+ "CMD_WAKEUP": 0x00,
+ "CMD_RDATA": 0x01,
+ "CMD_RDATAC": 0x03,
+ "CMD_SDATAC": 0x0F,
+ "CMD_RREG": 0x10,
+ "CMD_WREG": 0x50,
+ "CMD_SELFCAL": 0xF0,
+ "CMD_SELFOCAL": 0xF1,
+ "CMD_SELFGCAL": 0xF2,
+ "CMD_SYSOCAL": 0xF3,
+ "CMD_SYSGCAL": 0xF4,
+ "CMD_SYNC": 0xFC,
+ "CMD_STANDBY": 0xFD,
+ "CMD_RESET": 0xFE,
+}
+
+_STATUS_DRDY = 0x04
+ADC_MAX = 0x7FFFFF # 24-bit signed positive full-scale
+
+# ADS1256 internal Vref = 2.5 V; with PGA=1 full-scale input = ±2×Vref = ±5 V
+REF_VOLTAGE = 2.5
+
+
+# ---------------------------------------------------------------------------
+# Driver class
+# ---------------------------------------------------------------------------
+
+class ADS1256:
+ """Low-level ADS1256 driver."""
+
+ def __init__(self):
+ self.rst_pin = _RST_PIN
+ self.cs_pin = _CS_PIN
+ self.drdy_pin = _DRDY_PIN
+
+ # --- SPI / GPIO primitives ---
+
+ def _write_cmd(self, cmd: int):
+ _gpio_write(self.cs_pin, 0)
+ _spi_write([cmd])
+ _gpio_write(self.cs_pin, 1)
+
+ def _write_reg(self, reg: int, data: int):
+ _gpio_write(self.cs_pin, 0)
+ _spi_write([CMD["CMD_WREG"] | reg, 0x00, data])
+ _gpio_write(self.cs_pin, 1)
+
+ def _read_reg(self, reg: int) -> int:
+ _gpio_write(self.cs_pin, 0)
+ _spi_write([CMD["CMD_RREG"] | reg, 0x00])
+ data = _spi_read(1)
+ _gpio_write(self.cs_pin, 1)
+ return data[0]
+
+ def _wait_drdy(self, timeout: int = 400_000):
+ for _ in range(timeout):
+ if _gpio_read(self.drdy_pin) == 0:
+ return
+ raise TimeoutError("ADS1256 DRDY timeout — check wiring / power")
+
+ # --- Init helpers ---
+
+ def _reset(self):
+ _gpio_write(self.rst_pin, 1)
+ _delay_ms(200)
+ _gpio_write(self.rst_pin, 0)
+ _delay_ms(200)
+ _gpio_write(self.rst_pin, 1)
+
+ def _read_chip_id(self) -> int:
+ self._wait_drdy()
+ return self._read_reg(REG["REG_STATUS"]) >> 4
+
+ def _config_adc(self, gain: int, drate: int):
+ self._wait_drdy()
+ buf = [
+ (0 << 3) | _STATUS_DRDY | (0 << 1), # STATUS
+ 0x08, # MUX default
+ (0 << 5) | (0 << 3) | gain, # ADCON
+ drate, # DRATE
+ ]
+ _gpio_write(self.cs_pin, 0)
+ _spi_write([CMD["CMD_WREG"] | 0, 0x03])
+ _spi_write(buf)
+ _gpio_write(self.cs_pin, 1)
+ _delay_ms(1)
+
+ def _set_channel(self, channel: int):
+ if channel > 7:
+ raise ValueError(f"ADS1256 single-ended channel must be 0–7, got {channel}")
+ self._write_reg(REG["REG_MUX"], (channel << 4) | 0x08)
+
+ def _set_diff_channel(self, channel: int):
+ pairs = [(0, 1), (2, 3), (4, 5), (6, 7)]
+ if channel >= len(pairs):
+ raise ValueError(f"ADS1256 differential channel must be 0–3, got {channel}")
+ pos, neg = pairs[channel]
+ self._write_reg(REG["REG_MUX"], (pos << 4) | neg)
+
+ def _read_adc_data(self) -> int:
+ self._wait_drdy()
+ _gpio_write(self.cs_pin, 0)
+ _spi_write([CMD["CMD_RDATA"]])
+ buf = _spi_read(3)
+ _gpio_write(self.cs_pin, 1)
+ raw = ((buf[0] << 16) & 0xFF0000) | ((buf[1] << 8) & 0xFF00) | (buf[2] & 0xFF)
+ if raw & 0x800000: # two's-complement sign extension
+ raw -= 0x1000000
+ return raw
+
+ # --- Public API ---
+
+ def init(self, gain_key: str = "ADS1256_GAIN_1",
+ drate_key: str = "ADS1256_30000SPS") -> None:
+ _hw_init()
+ self._reset()
+ chip_id = self._read_chip_id()
+ if chip_id != 3:
+ raise RuntimeError(f"ADS1256 chip ID mismatch: got {chip_id}, expected 3")
+ self._config_adc(GAIN[gain_key], DRATE[drate_key])
+
+ def get_channel_value(self, channel: int, diff: bool = False) -> int:
+ """Return signed 24-bit raw count for the given channel."""
+ if diff:
+ self._set_diff_channel(channel)
+ else:
+ self._set_channel(channel)
+ self._write_cmd(CMD["CMD_SYNC"])
+ self._write_cmd(CMD["CMD_WAKEUP"])
+ return self._read_adc_data()
+
+ def exit(self) -> None:
+ _hw_exit()
diff --git a/Demo/Sensors/config.toml b/Demo/Sensors/config.toml
new file mode 100644
index 0000000..fab9677
--- /dev/null
+++ b/Demo/Sensors/config.toml
@@ -0,0 +1,30 @@
+# AmazingHand — Tactile Sensor Configuration
+
+[hardware]
+# GPIO pin definitions (BCM numbering) — Waveshare HAT
+rst_pin = 18
+cs_pin = 22
+cs_dac_pin = 23
+drdy_pin = 17
+
+# SPI settings
+# Max SPI clock = fCLKIN/4. Default CLKIN=7.68 MHz → ~1.92 MHz.
+# 1 MHz is safe across cable lengths.
+spi_max_speed_hz = 1_000_000
+spi_mode = 1 # CPOL=0, CPHA=1 (0b01)
+
+[sensor]
+channels = [3, 4, 5, 6, 7]
+channel_names = ["thumb", "index", "middle", "ring", "pinky"]
+polling_hz = 100.0
+fsr_vcc = 5.0
+fsr_r_fixed = 5100 #ohms
+gain_key = "ADS1256_GAIN_1"
+drate_key = "ADS1256_30000SPS"
+
+[logging]
+log_dir = "LOGS"
+
+[visualization]
+plot_window_secs = 10.0
+voltage_ymax = 5.5
diff --git a/Demo/Sensors/haptic_coin.py b/Demo/Sensors/haptic_coin.py
new file mode 100644
index 0000000..eb78923
--- /dev/null
+++ b/Demo/Sensors/haptic_coin.py
@@ -0,0 +1,75 @@
+from time import sleep
+
+from gpiozero import PWMLED
+from loguru import logger
+
+
+class HapticCoin:
+ """
+ Controls a haptic coin motor (QYF-740) via PWM on a Raspberry Pi GPIO pin.
+ """
+
+ def __init__(self, gpio_pin: int = 19):
+ if gpio_pin is None:
+ logger.warning("GPIO pin not specified — HapticCoin will not function")
+ self.motor = None
+ return
+ self.gpio_pin = gpio_pin
+ self.motor = PWMLED(self.gpio_pin)
+ logger.info("HapticCoin initialised on GPIO pin {}", gpio_pin)
+
+ def vibrate_once(self, intensity: float = 1.0, duration_s: float = 1.0):
+ """Vibrate at *intensity* (0.0–1.0) for *duration_s* seconds, then pause equally."""
+ if self.motor is None:
+ return
+ logger.debug("vibrate_once intensity={} duration={}s", intensity, duration_s)
+ self.motor.value = intensity
+ sleep(duration_s)
+ self.motor.value = 0.0
+ sleep(duration_s)
+
+ def modulate_vibration(self, step: int = 5, delay_s: float = 0.05, pause_s: float = 1.0):
+ """
+ Ramp intensity up and down continuously until KeyboardInterrupt.
+
+ :param step: Duty-cycle increment in percent (1–100).
+ :param delay_s: Delay between steps (s).
+ :param pause_s: Pause between ramp cycles (s).
+ """
+ if self.motor is None:
+ return
+ try:
+ while True:
+ logger.debug("Ramping up")
+ for duty in range(0, 101, step):
+ self.motor.value = duty / 100.0
+ sleep(delay_s)
+ logger.debug("Ramping down")
+ for duty in range(100, -1, -step):
+ self.motor.value = duty / 100.0
+ sleep(delay_s)
+ sleep(pause_s)
+ except KeyboardInterrupt:
+ logger.info("modulate_vibration stopped by user")
+ finally:
+ self.cleanup()
+
+ def vibration_magnitude(self, intensity: float = 1.0, timing_interval_s: float = 1.0):
+ """Vibrate continuously at *intensity* until KeyboardInterrupt."""
+ if self.motor is None:
+ return
+ try:
+ while True:
+ self.vibrate_once(intensity, timing_interval_s)
+ except KeyboardInterrupt:
+ logger.info("vibration_magnitude stopped by user")
+ finally:
+ self.cleanup()
+
+ def cleanup(self):
+ """Turn off the motor and release GPIO resources."""
+ if self.motor is None:
+ return
+ self.motor.off()
+ self.motor.close()
+ logger.info("HapticCoin GPIO released")
diff --git a/Demo/Sensors/haptic_test.py b/Demo/Sensors/haptic_test.py
new file mode 100644
index 0000000..57fac1d
--- /dev/null
+++ b/Demo/Sensors/haptic_test.py
@@ -0,0 +1,76 @@
+"""
+haptic_test.py — Interactive test script for HapticCoin (QYF-740 motor).
+
+Run with:
+ python haptic_test.py [--pin 19]
+
+Uses Ctrl-C to exit any continuous mode.
+"""
+
+import argparse
+import sys
+from loguru import logger
+from .haptic_coin import HapticCoin
+
+
+def parse_args():
+ parser = argparse.ArgumentParser(description="HapticCoin test script")
+ parser.add_argument("--pin", type=int, default=19, help="GPIO pin (default: 19)")
+ return parser.parse_args()
+
+
+def print_menu():
+ print("\n--- HapticCoin Test Menu ---")
+ print("1. Single vibration pulse")
+ print("2. Vibration at custom intensity")
+ print("3. Continuous vibration (Ctrl-C to stop)")
+ print("4. Ramp modulation (Ctrl-C to stop)")
+ print("q. Quit")
+ print("----------------------------")
+
+
+def main():
+ args = parse_args()
+ haptic = HapticCoin(gpio_pin=args.pin)
+
+ while True:
+ print_menu()
+ choice = input("Select option: ").strip().lower()
+
+ if choice == "1":
+ haptic.vibrate_once(intensity=1.0, duration_s=0.5)
+ logger.info("Single pulse done")
+
+ elif choice == "2":
+ try:
+ intensity = float(input("Intensity (0.0–1.0): "))
+ duration = float(input("Duration (seconds): "))
+ haptic.vibrate_once(intensity=intensity, duration_s=duration)
+ except ValueError:
+ print("Invalid input — enter numeric values.")
+
+ elif choice == "3":
+ try:
+ intensity = float(input("Intensity (0.0–1.0): "))
+ interval = float(input("On/off interval (seconds): "))
+ except ValueError:
+ print("Invalid input — enter numeric values.")
+ continue
+ logger.info("Starting continuous vibration — press Ctrl-C to stop")
+ haptic.vibration_magnitude(intensity=intensity, timing_interval_s=interval)
+
+ elif choice == "4":
+ logger.info("Starting ramp modulation — press Ctrl-C to stop")
+ haptic.modulate_vibration(step=5, delay_s=0.05, pause_s=1.0)
+
+ elif choice == "q":
+ haptic.cleanup()
+ logger.info("Exiting")
+ sys.exit(0)
+
+ else:
+ print("Unknown option — try again.")
+
+
+if __name__ == "__main__":
+ main()
diff --git a/Demo/Sensors/images/fsr_wiring_diagram.png b/Demo/Sensors/images/fsr_wiring_diagram.png
new file mode 100644
index 0000000..48c3b62
Binary files /dev/null and b/Demo/Sensors/images/fsr_wiring_diagram.png differ
diff --git a/Demo/Sensors/images/rpi5_pinout.jpg b/Demo/Sensors/images/rpi5_pinout.jpg
new file mode 100644
index 0000000..4c2b284
Binary files /dev/null and b/Demo/Sensors/images/rpi5_pinout.jpg differ
diff --git a/Demo/Sensors/tactile_sensing.py b/Demo/Sensors/tactile_sensing.py
new file mode 100644
index 0000000..23e85a8
--- /dev/null
+++ b/Demo/Sensors/tactile_sensing.py
@@ -0,0 +1,634 @@
+"""
+tactile_sensing.py — Unified FSR tactile sensing interface + real-time logger.
+
+Includes:
+ - TactileSensor hardware driver (ADS1256 via ads1256.py)
+ - DataLogger auto-timestamped CSV output
+ - Real-time display: PyQtGraph GUI (default) or terminal-only (--terminal)
+
+Hardware config lives in config.toml; low-level driver lives in ads1256.py.
+"""
+
+import argparse
+import csv
+import sys
+import threading
+import time
+from collections import deque
+from collections.abc import Callable
+from dataclasses import dataclass
+from datetime import datetime
+from pathlib import Path
+
+from loguru import logger
+
+import Demo.Sensors.ads1256 as _ads1256_mod
+from Demo.Sensors.ads1256 import ADS1256
+
+# ---------------------------------------------------------------------------
+# Load shared settings from config.toml
+# ---------------------------------------------------------------------------
+import tomllib
+
+_CONFIG_PATH = Path(__file__).parent / "config.toml"
+with _CONFIG_PATH.open("rb") as _f:
+ _TOML = tomllib.load(_f)
+
+_SENSOR_CFG = _TOML["sensor"]
+_LOG_CFG = _TOML["logging"]
+_VIZ_CFG = _TOML["visualization"]
+
+# Paths resolved relative to this file's directory (Demo/Sensors/)
+_SENSORS_DIR = Path(__file__).parent
+_LOG_DIR = _SENSORS_DIR / _LOG_CFG["log_dir"]
+
+
+# ---------------------------------------------------------------------------
+# loguru — file + stderr (set up once at import time)
+# ---------------------------------------------------------------------------
+_LOG_DIR.mkdir(parents=True, exist_ok=True)
+_log_file = _LOG_DIR / f"tactile_{datetime.now():%Y%m%d_%H%M%S}.log"
+logger.remove()
+logger.add(
+ sys.stderr, level="INFO", colorize=True,
+ format="{time:HH:mm:ss} | {level: <8} | {message}",
+)
+logger.add(_log_file, level="DEBUG", rotation="10 MB",
+ format="{time:YYYY-MM-DD HH:mm:ss.SSS} | {level: <8} | {message}")
+logger.info("Log file: {}", _log_file)
+
+
+# ---------------------------------------------------------------------------
+# TactileReading
+# ---------------------------------------------------------------------------
+
+@dataclass
+class TactileReading:
+ sensor_time: float # seconds since sensor.start()
+ raw: dict[str, int] # signed raw ADC counts {name: int}
+ volts: dict[str, float] # voltage (V) {name: float}
+ force_norm: dict[str, float] # 0–1 normalised force {name: float}
+
+ def as_rows(self) -> list[dict]:
+ """One dict per channel — long format for CSV / Bokeh."""
+ return [
+ {
+ "sensor_time": round(self.sensor_time, 6),
+ "channel": name,
+ "raw": self.raw[name],
+ "volts": round(self.volts[name], 6),
+ "force_norm": round(self.force_norm[name], 4),
+ }
+ for name in self.raw
+ ]
+
+
+# ---------------------------------------------------------------------------
+# TactileSensor
+# ---------------------------------------------------------------------------
+
+class TactileSensor:
+ """
+ Thread-safe tactile sensor interface for ADS1256.
+
+ Parameters
+ ----------
+ channels : list[int]
+ ADC input channels (0–7).
+ channel_names : list[str] | None
+ Human-readable labels aligned with *channels*.
+ gain_key : str | None
+ Key into the driver's GAIN dict. None → config.toml default.
+ drate_key : str | None
+ Key into the driver's DRATE dict. None → config.toml default.
+ ref_voltage : float | None
+ Override ADC reference voltage (V). None → chip default.
+ fsr_vcc : float
+ Supply voltage across the FSR divider (V).
+ fsr_r_fixed : float
+ Fixed resistor (Ω) in the FSR voltage-divider. 0 = no force calc.
+ polling_hz : float
+ Background polling rate. 0 = manual reads only.
+ on_reading : callable | None
+ Callback fn(reading: TactileReading) invoked from the polling thread.
+ """
+
+ _DEFAULTS = dict(
+ channels=_SENSOR_CFG["channels"],
+ gain_key=_SENSOR_CFG["gain_key"],
+ drate_key=_SENSOR_CFG["drate_key"],
+ ref_voltage=_ads1256_mod.REF_VOLTAGE,
+ adc_max=_ads1256_mod.ADC_MAX,
+ )
+
+ def __init__(
+ self,
+ channels: list[int] = None,
+ channel_names: list[str] = None,
+ gain_key: str = None,
+ drate_key: str = None,
+ ref_voltage: float = None,
+ fsr_vcc: float = _SENSOR_CFG["fsr_vcc"],
+ fsr_r_fixed: float = _SENSOR_CFG["fsr_r_fixed"],
+ polling_hz: float = _SENSOR_CFG["polling_hz"],
+ on_reading: Callable[[TactileReading], None] | None = None,
+ ):
+ defaults = self._DEFAULTS
+ self._channels = list(channels) if channels is not None else list(defaults["channels"])
+ self._names = list(channel_names) if channel_names else [f"ch{c}" for c in self._channels]
+ if len(self._names) != len(self._channels):
+ raise ValueError("channel_names length must match channels length")
+
+ self._gain_key = gain_key or defaults["gain_key"]
+ self._drate_key = drate_key or defaults["drate_key"]
+ self._ref_v = ref_voltage if ref_voltage is not None else defaults["ref_voltage"]
+ self._adc_max = defaults["adc_max"]
+ self._vcc = fsr_vcc
+ self._r_fixed = fsr_r_fixed
+ self._polling_hz = polling_hz
+ self._on_reading = on_reading
+
+ self._adc: ADS1256 | None = None
+ self._lock = threading.Lock()
+ self._latest: TactileReading | None = None
+ self._t0: float = 0.0
+ self._thread: threading.Thread | None = None
+ self._running = False
+
+ logger.info(
+ "TactileSensor | channels={} names={} hz={}",
+ self._channels, self._names, polling_hz,
+ )
+
+ # ------------------------------------------------------------------
+ # Public API
+ # ------------------------------------------------------------------
+
+ def start(self) -> None:
+ """Initialise hardware and start the background polling thread."""
+ adc = ADS1256()
+ adc.init(self._gain_key, self._drate_key)
+ self._adc = adc
+ self._t0 = time.perf_counter()
+
+ if self._polling_hz > 0:
+ self._running = True
+ self._thread = threading.Thread(
+ target=self._poll_loop, daemon=True, name="TactileSensor-poll"
+ )
+ self._thread.start()
+ logger.info("ADS1256 ready, polling at {}Hz", self._polling_hz)
+
+ def stop(self) -> None:
+ """Stop background thread and release hardware resources."""
+ self._running = False
+ if self._thread and self._thread.is_alive():
+ self._thread.join(timeout=2.0)
+ if self._adc is not None:
+ self._adc.exit()
+ logger.info("TactileSensor stopped")
+
+ def read(self) -> TactileReading:
+ """
+ Return a reading. If the poller is running, returns the latest cached
+ sample (zero latency). Otherwise acquires the ADC synchronously.
+ """
+ if self._running and self._latest is not None:
+ with self._lock:
+ return self._latest
+ return self._acquire()
+
+ @property
+ def latest(self) -> TactileReading | None:
+ with self._lock:
+ return self._latest
+
+ @property
+ def channel_names(self) -> list[str]:
+ return list(self._names)
+
+ def __enter__(self) -> "TactileSensor":
+ self.start()
+ return self
+
+ def __exit__(self, *_) -> None:
+ self.stop()
+
+ # ------------------------------------------------------------------
+ # Internal
+ # ------------------------------------------------------------------
+
+ def _acquire(self) -> TactileReading:
+ if self._adc is None:
+ raise RuntimeError("Call start() before reading")
+ raw: dict[str, int] = {}
+ volts: dict[str, float] = {}
+ force: dict[str, float] = {}
+ for ch, name in zip(self._channels, self._names):
+ counts = self._adc.get_channel_value(ch)
+ v = counts / self._adc_max * self._ref_v
+ raw[name] = counts
+ volts[name] = round(v, 6)
+ force[name] = self._to_force_norm(v)
+ return TactileReading(
+ sensor_time=time.perf_counter() - self._t0,
+ raw=raw,
+ volts=volts,
+ force_norm=force,
+ )
+
+ def _to_force_norm(self, v: float) -> float:
+ """FSR resistor-divider: Vout = Vcc * R_fixed / (R_fsr + R_fixed)."""
+ if self._r_fixed <= 0 or v <= 0:
+ return 0.0
+ try:
+ r_fsr = self._r_fixed * (self._vcc / v - 1.0)
+ if r_fsr <= 0:
+ return 1.0
+ return float(min(1.0, (1.0 / r_fsr) / (1.0 / self._r_fixed)))
+ except ZeroDivisionError:
+ return 1.0
+
+ def _poll_loop(self) -> None:
+ interval = 1.0 / self._polling_hz
+ while self._running:
+ t0 = time.perf_counter()
+ try:
+ reading = self._acquire()
+ with self._lock:
+ self._latest = reading
+ if self._on_reading is not None:
+ self._on_reading(reading)
+ except Exception as exc:
+ logger.error("Poll error: {}", exc)
+ remaining = interval - (time.perf_counter() - t0)
+ if remaining > 0:
+ time.sleep(remaining)
+
+
+# ---------------------------------------------------------------------------
+# DataLogger
+# ---------------------------------------------------------------------------
+
+class DataLogger:
+ """Writes one row per channel per sample (long format) for post-viz compatibility."""
+
+ FIELDNAMES = ["sensor_time", "channel", "raw", "volts", "force_norm"]
+
+ def __init__(self, output_dir: Path):
+ output_dir.mkdir(parents=True, exist_ok=True)
+ fname = output_dir / f"tactile_{datetime.now():%Y%m%d_%H%M%S}.csv"
+ self._file = fname.open("w", newline="", buffering=1) # line-buffered
+ self._writer = csv.DictWriter(self._file, fieldnames=self.FIELDNAMES)
+ self._writer.writeheader()
+ self._row_count = 0
+ logger.info("CSV logger opened: {}", fname)
+
+ def write(self, reading: TactileReading) -> None:
+ if self._file.closed:
+ return
+ for row in reading.as_rows():
+ self._writer.writerow(row)
+ self._row_count += len(reading.raw)
+
+ def close(self) -> None:
+ self._file.flush()
+ self._file.close()
+ logger.info("CSV logger closed — {} rows written", self._row_count)
+
+
+# ---------------------------------------------------------------------------
+# Terminal display
+# ---------------------------------------------------------------------------
+
+class TerminalDisplay:
+ """
+ Prints live readings to stdout in-place using carriage returns.
+ No GUI required — runs in the calling thread via a blocking loop.
+ """
+
+ def __init__(self, sensor: TactileSensor, csv_logger: DataLogger | None):
+ self._sensor = sensor
+ self._csv = csv_logger
+ self._sample_count = 0
+ self._fps_t0 = time.perf_counter()
+
+ def run(self) -> None:
+ """Block until KeyboardInterrupt, printing one line per reading."""
+ names = self._sensor.channel_names
+ header = " ".join(f"{n:>8}" for n in names)
+ print(f"\n{'t (s)':>7} {header}")
+ print("-" * (9 + 11 * len(names)))
+
+ try:
+ while True:
+ reading = self._sensor.read()
+ if reading is None:
+ time.sleep(0.01)
+ continue
+
+ cols = " ".join(
+ f"{reading.volts[n]:5.3f}V/{reading.force_norm[n]:.2f}"
+ for n in names
+ )
+ print(f"\r{reading.sensor_time:7.2f} {cols}", end="", flush=True)
+
+ if self._csv is not None:
+ self._csv.write(reading)
+
+ self._sample_count += 1
+ elapsed = time.perf_counter() - self._fps_t0
+ if elapsed >= 1.0:
+ rate = self._sample_count / elapsed
+ print(f" [{rate:.0f} Sa/s]", end="", flush=True)
+ self._sample_count = 0
+ self._fps_t0 = time.perf_counter()
+
+ time.sleep(0.02) # ~50 Hz terminal refresh
+
+ except KeyboardInterrupt:
+ print() # newline after the last \r line
+ logger.info("Terminal display stopped by user")
+
+
+# ---------------------------------------------------------------------------
+# PyQtGraph GUI
+# ---------------------------------------------------------------------------
+
+def _run_gui(sensor: TactileSensor, csv_logger: DataLogger | None,
+ polling_hz: float) -> None:
+ """Import PySide6 / pyqtgraph lazily so terminal mode works without them."""
+ try:
+ from PySide6.QtCore import Qt, QTimer, Signal, QObject
+ from PySide6.QtGui import QColor, QFont
+ from PySide6.QtWidgets import (
+ QApplication, QGridLayout, QHBoxLayout,
+ QLabel, QMainWindow, QPushButton, QVBoxLayout, QWidget,
+ )
+ import pyqtgraph as pg
+ except ImportError as exc:
+ logger.error("GUI dependencies not available ({}). Use --terminal.", exc)
+ sys.exit(1)
+
+ PLOT_WINDOW_SECS: float = _VIZ_CFG["plot_window_secs"]
+ VOLTAGE_YMAX: float = _VIZ_CFG["voltage_ymax"]
+ COLORS = [
+ "#4FC3F7", "#81C784", "#FFB74D", "#F48FB1",
+ "#CE93D8", "#80DEEA", "#FFCC02", "#FF7043",
+ "#A5D6A7", "#90CAF9",
+ ]
+
+ # --- Signal bridge (sensor callback → GUI thread) ---
+ class _SensorBridge(QObject):
+ new_reading = Signal(object)
+
+ # --- Per-channel plot widget ---
+ class ChannelPlot(QWidget):
+ def __init__(self, name: str, color: str, max_points: int, parent=None):
+ super().__init__(parent)
+ self._times: deque[float] = deque(maxlen=max_points)
+ self._voltages: deque[float] = deque(maxlen=max_points)
+
+ layout = QVBoxLayout(self)
+ layout.setContentsMargins(0, 0, 0, 0)
+ layout.setSpacing(2)
+
+ header = QHBoxLayout()
+ title = QLabel(name)
+ title.setFont(QFont("Monospace", 9, QFont.Bold))
+ title.setStyleSheet(f"color: {color};")
+ self._volt_label = QLabel("-.-- V")
+ self._volt_label.setFont(QFont("Monospace", 9))
+ self._force_label = QLabel("force: -.-")
+ self._force_label.setFont(QFont("Monospace", 9))
+ header.addWidget(title)
+ header.addStretch()
+ header.addWidget(self._volt_label)
+ header.addWidget(self._force_label)
+ layout.addLayout(header)
+
+ self._plot_widget = pg.PlotWidget(background="#1e1e1e")
+ self._plot_widget.setYRange(0, VOLTAGE_YMAX)
+ self._plot_widget.setMaximumHeight(120)
+ self._plot_widget.hideAxis("bottom")
+ self._plot_widget.getAxis("left").setStyle(tickFont=QFont("Monospace", 7))
+ self._plot_widget.showGrid(x=False, y=True, alpha=0.2)
+ self._curve = self._plot_widget.plot(pen=pg.mkPen(color=color, width=1.5))
+ layout.addWidget(self._plot_widget)
+
+ self._plot_window = PLOT_WINDOW_SECS
+
+ def update_data(self, t_rel: float, voltage: float, force: float) -> None:
+ self._times.append(t_rel)
+ self._voltages.append(voltage)
+ self._curve.setData(list(self._times), list(self._voltages))
+ self._plot_widget.setXRange(t_rel - self._plot_window, t_rel, padding=0)
+ self._volt_label.setText(f"{voltage:5.3f} V")
+ self._force_label.setText(f"force: {force:.2f}")
+
+ # --- Main window ---
+ class TactileGUI(QMainWindow):
+ def __init__(self):
+ super().__init__()
+ names = sensor.channel_names
+ max_pts = int(PLOT_WINDOW_SECS * polling_hz * 1.2)
+ self._t0 = time.perf_counter()
+
+ self.setWindowTitle("AmazingHand — Tactile Sensor Monitor")
+ self.setStyleSheet("background-color: #121212; color: #e0e0e0;")
+
+ central = QWidget()
+ self.setCentralWidget(central)
+ root = QVBoxLayout(central)
+ root.setSpacing(6)
+ root.setContentsMargins(8, 8, 8, 8)
+
+ # Status bar
+ status_row = QHBoxLayout()
+ self._status_label = QLabel("Waiting for data…")
+ self._status_label.setFont(QFont("Monospace", 8))
+ self._rate_label = QLabel("")
+ self._rate_label.setFont(QFont("Monospace", 8))
+ self._csv_label = QLabel(f"CSV: {'ON' if csv_logger else 'OFF'}")
+ self._csv_label.setFont(QFont("Monospace", 8))
+ self._csv_label.setStyleSheet(
+ "color: #81C784;" if csv_logger else "color: #888;"
+ )
+ stop_btn = QPushButton("Stop")
+ stop_btn.clicked.connect(self.close)
+ stop_btn.setFixedWidth(60)
+ status_row.addWidget(self._status_label)
+ status_row.addStretch()
+ status_row.addWidget(self._csv_label)
+ status_row.addWidget(self._rate_label)
+ status_row.addWidget(stop_btn)
+ root.addLayout(status_row)
+
+ # Channel plots (2-column grid)
+ grid = QGridLayout()
+ grid.setSpacing(6)
+ self._channel_plots: dict[str, ChannelPlot] = {}
+ for i, name in enumerate(names):
+ color = COLORS[i % len(COLORS)]
+ cp = ChannelPlot(name, color, max_pts)
+ self._channel_plots[name] = cp
+ row, col = divmod(i, 2)
+ grid.addWidget(cp, row, col)
+ root.addLayout(grid)
+
+ self.resize(900, max(400, len(names) // 2 * 160 + 60))
+
+ # Latest reading written by the sensor polling thread; read by the
+ # GUI refresh timer. Single-object assignment is atomic under the
+ # GIL so no explicit lock is needed.
+ self._pending_reading: TactileReading | None = None
+
+ # CSV writes happen in the sensor polling thread (not the GUI
+ # thread) so heavy I/O never blocks the event loop.
+ def _sensor_callback(reading: TactileReading) -> None:
+ if csv_logger is not None:
+ csv_logger.write(reading)
+ self._pending_reading = reading
+
+ sensor._on_reading = _sensor_callback # type: ignore[assignment]
+
+ # Refresh plots at ~30 Hz regardless of sensor polling rate.
+ self._sample_count = 0
+ refresh_timer = QTimer(self)
+ refresh_timer.timeout.connect(self._refresh_plots)
+ refresh_timer.start(33) # ~30 Hz
+
+ fps_timer = QTimer(self)
+ fps_timer.timeout.connect(self._update_fps)
+ fps_timer.start(1000)
+
+ logger.info("GUI window created for channels: {}", names)
+
+ def _refresh_plots(self) -> None:
+ reading = self._pending_reading
+ if reading is None:
+ return
+ self._pending_reading = None
+ t_rel = time.perf_counter() - self._t0
+ for name, cp in self._channel_plots.items():
+ cp.update_data(
+ t_rel,
+ reading.volts.get(name, 0.0),
+ reading.force_norm.get(name, 0.0),
+ )
+ self._sample_count += 1
+ self._status_label.setText(
+ f"t={t_rel:.1f}s sensor_t={reading.sensor_time:.3f}s"
+ )
+
+ def _update_fps(self) -> None:
+ self._rate_label.setText(f"{self._sample_count} Sa/s")
+ self._sample_count = 0
+
+ def closeEvent(self, event) -> None:
+ # Stop the sensor callback so no new readings arrive after close.
+ sensor._on_reading = None # type: ignore[assignment]
+ self._pending_reading = None
+ logger.info("Window closing — stopping sensor")
+ super().closeEvent(event)
+ QApplication.instance().quit()
+
+ import os
+ import signal
+ os.environ.setdefault("QT_QPA_PLATFORMTHEME", "")
+ app = QApplication.instance() or QApplication(sys.argv)
+ app.setStyle("Fusion")
+ window = TactileGUI()
+ window.show()
+
+ # Allow Ctrl+C (SIGINT) to quit the Qt event loop.
+ # Qt blocks Python signal delivery during event processing, so a short
+ # timer wakes the loop periodically to let Python check for signals.
+ signal.signal(signal.SIGINT, lambda *_: app.quit())
+ _sigint_timer = QTimer()
+ _sigint_timer.start(200)
+ _sigint_timer.timeout.connect(lambda: None)
+
+ exit_code = app.exec()
+ # Cleanup happens here, after the event loop exits, so the GUI thread
+ # is never blocked during window close.
+ sensor.stop()
+ if csv_logger is not None:
+ csv_logger.close()
+ logger.info("Application exited with code {}", exit_code)
+ sys.exit(exit_code)
+
+
+# ---------------------------------------------------------------------------
+# CLI entry point
+# ---------------------------------------------------------------------------
+
+def _parse_args() -> argparse.Namespace:
+ p = argparse.ArgumentParser(
+ description="Tactile sensor real-time logger — GUI (default) or terminal",
+ )
+ p.add_argument(
+ "--channels", nargs="+", type=int,
+ default=_SENSOR_CFG["channels"],
+ help="ADS1256 channels to read (default from config.toml)",
+ )
+ p.add_argument(
+ "--names", nargs="+", type=str, default=None,
+ help="Channel labels — must match --channels count",
+ )
+ p.add_argument(
+ "--hz", type=float, default=_SENSOR_CFG["polling_hz"],
+ help="Sensor polling rate in Hz (default from config.toml)",
+ )
+ p.add_argument(
+ "--csv-dir", type=Path, default=_LOG_DIR,
+ help="Directory for CSV output (default from config.toml)",
+ )
+ p.add_argument(
+ "--no-csv", action="store_true",
+ help="Disable CSV logging",
+ )
+ p.add_argument(
+ "--terminal", action="store_true",
+ help="Print readings to terminal only — no GUI window",
+ )
+ return p.parse_args()
+
+
+def main() -> None:
+ args = _parse_args()
+
+ channel_names = args.names or _SENSOR_CFG["channel_names"]
+ if len(channel_names) != len(args.channels):
+ logger.error(
+ "--names count ({}) must match --channels count ({})",
+ len(channel_names), len(args.channels),
+ )
+ sys.exit(1)
+
+ sensor = TactileSensor(
+ channels=args.channels,
+ channel_names=channel_names,
+ polling_hz=args.hz,
+ )
+
+ csv_logger: DataLogger | None = None
+ if not args.no_csv:
+ csv_logger = DataLogger(args.csv_dir)
+
+ sensor.start()
+
+ if args.terminal:
+ display = TerminalDisplay(sensor, csv_logger)
+ try:
+ display.run()
+ finally:
+ sensor.stop()
+ if csv_logger is not None:
+ csv_logger.close()
+ else:
+ _run_gui(sensor, csv_logger, args.hz)
+
+
+if __name__ == "__main__":
+ main()
diff --git a/Demo/Sensors/tactile_sensing_post_visualize.py b/Demo/Sensors/tactile_sensing_post_visualize.py
new file mode 100644
index 0000000..26fd177
--- /dev/null
+++ b/Demo/Sensors/tactile_sensing_post_visualize.py
@@ -0,0 +1,116 @@
+"""
+tactile_sensing_post_visualize.py — Bokeh offline visualisation of logged tactile sensor data.
+
+Expected CSV schema (long format, one row per channel per sample):
+ sensor_time, channel, raw, volts, force_norm
+
+The default log directory is read from config.toml ([logging] log_dir),
+resolved relative to this file's directory (Demo/Sensors/).
+"""
+
+import argparse
+from pathlib import Path
+
+import pandas as pd
+from bokeh.layouts import gridplot
+from bokeh.models import TabPanel, Tabs
+from bokeh.palettes import Set2_8
+from bokeh.plotting import figure, show
+
+# ---------------------------------------------------------------------------
+# Load config.toml — same file used by tactile_sensing.py
+# ---------------------------------------------------------------------------
+import tomllib
+
+_CONFIG_PATH = Path(__file__).parent / "config.toml"
+with _CONFIG_PATH.open("rb") as _f:
+ _TOML = tomllib.load(_f)
+
+_SENSORS_DIR = Path(__file__).parent
+_LOG_DIR = _SENSORS_DIR / _TOML["logging"]["log_dir"]
+
+
+# ---------------------------------------------------------------------------
+# Helpers
+# ---------------------------------------------------------------------------
+
+def _find_latest_csv(log_dir: Path) -> Path:
+ csvs = sorted(log_dir.glob("tactile_*.csv"))
+ if not csvs:
+ raise FileNotFoundError(f"No tactile_*.csv files found in {log_dir}")
+ return csvs[-1]
+
+
+def _customize_plot(fig) -> None:
+ fig.title.text_font_size = "16px"
+ fig.title.align = "center"
+ fig.xaxis.axis_label_text_font_size = "13px"
+ fig.yaxis.axis_label_text_font_size = "13px"
+ fig.legend.title = "Channels"
+ fig.legend.border_line_width = 2
+ fig.legend.border_line_color = "black"
+ fig.legend.location = "top_right"
+ fig.legend.click_policy = "hide"
+
+
+def build_tabs(data: pd.DataFrame) -> Tabs:
+ channels = sorted(data["channel"].unique(), key=lambda x: (x.isdigit(), x))
+ color_map = {ch: Set2_8[i % len(Set2_8)] for i, ch in enumerate(channels)}
+
+ def _make_fig(title, y_label):
+ return figure(
+ title=title,
+ x_axis_label="Sensor Time (s)",
+ y_axis_label=y_label,
+ width=900, height=400,
+ )
+
+ fig_volts = _make_fig("FSR Sensor Data — Voltage", "Voltage (V)")
+ fig_raw = _make_fig("FSR Sensor Data — Raw ADC Counts", "Raw")
+ fig_force = _make_fig("FSR Sensor Data — Normalised Force", "Force (0–1)")
+
+ for ch in channels:
+ dfc = data[data["channel"] == ch]
+ color = color_map[ch]
+ label = str(ch)
+ fig_volts.line(dfc["sensor_time"], dfc["volts"],
+ line_width=2, color=color, legend_label=label)
+ fig_raw.line(dfc["sensor_time"], dfc["raw"],
+ line_width=2, color=color, legend_label=label)
+ fig_force.line(dfc["sensor_time"], dfc["force_norm"],
+ line_width=2, color=color, legend_label=label)
+
+ for fig in (fig_volts, fig_raw, fig_force):
+ _customize_plot(fig)
+
+ grid = gridplot([[fig_volts], [fig_raw], [fig_force]])
+ return Tabs(tabs=[TabPanel(child=grid, title="FSR (all channels)")])
+
+
+# ---------------------------------------------------------------------------
+# Entry point
+# ---------------------------------------------------------------------------
+
+def main() -> None:
+ parser = argparse.ArgumentParser(
+ description="Visualise FSR tactile sensor CSV log",
+ )
+ parser.add_argument(
+ "--file", type=Path, default=None,
+ help=f"Path to CSV file (default: latest in {_LOG_DIR})",
+ )
+ args = parser.parse_args()
+
+ file_path = args.file or _find_latest_csv(_LOG_DIR)
+ print(f"Loading: {file_path}")
+
+ data = pd.read_csv(file_path).dropna().reset_index(drop=True)
+ data["sensor_time"] = data["sensor_time"] - data["sensor_time"].iloc[0]
+ data["channel"] = data["channel"].astype(str)
+
+ tabs = build_tabs(data)
+ show(tabs)
+
+
+if __name__ == "__main__":
+ main()
diff --git a/Demo/__init__.py b/Demo/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/docs/BOM.md b/docs/BOM.md
new file mode 100644
index 0000000..afdce86
--- /dev/null
+++ b/docs/BOM.md
@@ -0,0 +1,24 @@
+# Bill of Materials (BOM)
+
+## Required Components
+
+| Component | Link |
+|---|---|
+| Camera | https://www.amazon.com/dp/B0CLRJZG8D |
+| AD/DA Expansion Hat | https://www.amazon.com/dp/B09Q8Y5F7Y |
+| Haptic Motors | https://www.amazon.com/dp/B0FX9HW33Z |
+| Pressure Sensors (FSR) | https://www.amazon.com/dp/B0FGD267GK |
+| Resistor Kit | https://www.amazon.com/dp/B016NXK6QK |
+
+> **Note:** FSR voltage divider uses a **5.1 kΩ** resistor in series with each pressure sensor.
+
+---
+
+## Nice to Have
+
+| Component | Link |
+|---|---|
+| Silicone Flexible Jumper Wires (Nice Quality) | https://www.amazon.com/dp/B0DNPS4RVQ |
+| Dual Male Jumper Wires | https://www.amazon.com/dp/B09P52PLK4 |
+| Breadboard | https://www.amazon.com/dp/B07DL13RZH |
+| Generic Jumper Wires | https://www.amazon.com/dp/B01EV70C78 |
diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md
index 285e95a..45237f9 100644
--- a/docs/DEVELOPMENT.md
+++ b/docs/DEVELOPMENT.md
@@ -42,7 +42,26 @@ pixi run test-ahcontrol
Windows only (Rust / test-ahcontrol): `pixi.toml` adds `vs2022_win-64` for win-64, which activates the MSVC toolchain (via vcvars64) when you run `pixi shell` or `pixi run`. You must have Visual Studio or Build Tools installed first (see Appendix). If you get a linker error (e.g. "extra operand", "link.exe not found"), install Build Tools per the Appendix, then run `pixi install` to refresh the environment. As a fallback, run `pixi run test-ahcontrol` from "x64 Native Tools Command Prompt for VS" (Start menu).
## Setup (Raspberry Pi)
-Planned and upcoming.
+Raspberry Pi support is experimental and focuses on the haptic/tactile demos.
+
+On Raspberry Pi OS (Debian-based), install system GPIO dependencies first:
+
+```bash
+sudo apt-get update
+sudo apt-get install liblgpio-dev
+```
+
+Then create the pixi environment from the repository root:
+
+```bash
+pixi install
+```
+
+You can now run the haptic/tactile sensor test (from the repo root):
+
+```bash
+pixi run python -m Demo.Sensors.haptic_test
+```
## Run Demos
diff --git a/pixi.lock b/pixi.lock
index cc64744..d57b645 100644
--- a/pixi.lock
+++ b/pixi.lock
@@ -10,98 +10,188 @@ environments:
packages:
linux-64:
- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45.1-default_hfdba357_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.15.3-hb03c661_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45.1-default_hfdba357_102.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-he90730b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/cyrus-sasl-2.1.28-hac629b4_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h24cb091_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/double-conversion-3.4.0-hecca717_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.17.1-h27c8c51_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-15.2.0-he420e7e_18.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.2-h33c6efd_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.14-hecca717_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-13.2.0-h6083320_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-4.18.0-he073ed8_9.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.1.0-hdb68285_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hb03c661_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.2.0-hb03c661_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp22.1-22.1.0-default_h99862b1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.0-default_h746c552_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h7a8fb5f_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.125-hb03c661_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libegl-1.7.0-ha4b6fd6_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.4-hecca717_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.5.2-h3435931_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.2-ha770c72_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libfreetype6-2.14.2-h73754d4_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-64-15.2.0-hcc6f6b0_118.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.86.4-h6548e54_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libglvnd-1.7.0-ha4b6fd6_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libglx-1.7.0-ha4b6fd6_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.1-hf7376ad_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopengl-1.7.0-ha4b6fd6_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpciaccess-0.18-hb9d3cd8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.55-h421ea60_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-18.3-h9abb657_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-15.2.0-h90f66d4_18.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.2-hf4e2dac_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.52.0-hf4e2dac_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_18.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-64-15.2.0-hd446a21_118.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.3-h5347b49_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libvulkan-loader-1.4.341.0-h5279c79_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.17.0-h8a09558_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.1-hca5e8e5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.2-hca6bf5a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.2-he237659_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.43-h711ed8c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-hbde042b_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.47-haa7fec5_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pip-26.0.1-pyh8b19718_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.12-hd63d673_2_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.46.4-h54a6638_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.10.2-py312h50ac2ff_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.13-hd63d673_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.12-8_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/qt6-main-6.10.2-pl5321h16c4a6b_6.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-64/rust-1.93.1-h53717f1_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-unknown-linux-gnu-1.93.1-h2c6d0dc_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/rust-1.94.0-h53717f1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-unknown-linux-gnu-1.94.0-h2c6d0dc_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.1-pyh332efcf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/swig-4.4.1-h7a96c5f_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.28-h4ee821c_9.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h366c992_103.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/wayland-1.25.0-hd6090a7_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.46.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.1-h4f16b4b_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-cursor-0.1.6-hb03c661_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-hb711507_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.1-hb711507_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.10-hb711507_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.2-hb711507_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.47-hb03c661_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.2-hb9d3cd8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.6-he73a12e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.13-he1eb515_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.12-hb03c661_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.7-hb03c661_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcursor-1.2.3-hb9d3cd8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.5-hb03c661_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.7-hb03c661_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxfixes-6.0.2-hb03c661_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxi-1.8.2-hb9d3cd8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrandr-1.5.5-hb03c661_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.12-hb9d3cd8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxtst-1.2.5-hb9d3cd8_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.7-hb03c661_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda
- pypi: https://files.pythonhosted.org/packages/18/a6/907a406bb7d359e6a63f99c313846d9eec4f7e6f7437809e03aa00fa3074/absl_py-2.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/47/0b/bdf449df87be3f07b23091ceafee8c3ef569cf6d2fb7edec6e3b12b3faa4/bokeh-3.9.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/78/2d/7fa73dfa841b5ac06c7b8855cfc18622132e365f5b81d02230333ff26e9e/cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/db/3c/33bac158f8ab7f89b2e59426d5fe2e4f63f7ed25df84c036890172b412b5/cfgv-3.5.0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/c0/10/d20b513afe03acc89ec33948320a5544d31f21b05368436d580dec4e234d/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/4e/ef/79a463eb0fff7f96afa04c1d4c51f8fc85426f918db467854bfb6a569ce3/charset_normalizer-3.4.6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/7e/a6/ddd0f130e44a7593ac6c55aa93f6e256d2270fd88e9d1b64ab7f22ab8fde/colorzero-2.0-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/c0/76/c4aa9e408dbacee3f4de8e6c5417e5f55de7e62fb5a50300e1233a2c9cb5/commentjson-0.9.0.tar.gz
- pypi: https://files.pythonhosted.org/packages/cc/8f/ec6289987824b29529d0dfda0d74a07cec60e54b9c92f3c9da4c0ac732de/contourpy-1.3.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/6b/e7/237155ae19a9023de7e30ec64e5d99a9431a567407ac21170a046d22a5a3/cryptography-46.0.5-cp311-abi3-manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/97/84/f8a89433fd182a850aa8db9c0cfffc9d2ebf7347b34eb5e203c8488459a2/daqp-0.7.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/95/89/92d46052584e7977630583cf79ffdd26a377681e45d0ae5e6d5ef25dcc05/daqp-0.8.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/33/6b/e0547afaf41bf2c42e52430072fa5658766e3d65bd4b03a563d1b6336f57/distlib-0.4.0-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/02/10/5da547df7a391dcde17f59520a231527b8571e6f46fc8efb02ccb370ab12/docutils-0.22.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/1a/af/78aaff4eff5bc850041035673971925ee2650a7ea1173d33ad35bd7d056c/dora_rs-0.3.13-cp37-abi3-manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/da/77/20163e4df61f2c8e9e36619b2e23f4bec073885be46774709b0c58a5159d/dora_rs_cli-0.3.13-cp37-abi3-manylinux_2_28_x86_64.whl
- - pypi: https://files.pythonhosted.org/packages/e7/98/87b5946356095738cb90a6df7b35ff69ac5750f6e783d5fbcc5cb3b6cbd7/etils-1.13.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/f9/0b/de6f54d4a8bedfe8645c41497f3c18d749f0bd3218170c667bf4b81d0cdd/filelock-3.25.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/5a/3d/589663aeeacd59bb2f3e8596bfd3e81cf0fb18d70bb433199041f469771b/etils-1.14.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/a4/a5/842ae8f0c08b61d6484b52f99a03510a3a72d23141942d216ebe81fefbce/filelock-3.25.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/e8/2d/d2a548598be01649e2d46231d151a6c56d10b964d94043a335ae56ea2d92/flatbuffers-25.12.19-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/b7/37/82dbef0f6342eb01f54bca073ac1498433d6ce71e50c3c3282b655733b31/fonttools-4.61.1-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/9b/8a/99c8b3c3888c5c474c08dbfd7c8899786de9604b727fcefb055b42c84bba/fonttools-4.62.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/e6/ab/fb21f4c939bb440104cc2b396d3be1d9b7a9fd3c6c2a53d98c45b3d7c954/fsspec-2026.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/6a/09/e21df6aef1e1ffc0c816f0522ddc3f6dcded766c3261813131c78a704470/gitpython-3.1.46-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/5a/3f/efeb7c6801c46e11bd666a5180f0d615f74f72264212f74f39586c6fda9d/glfw-2.10.0-py2.py27.py3.py30.py31.py32.py33.py34.py35.py36.py37.py38.py39.py310.py311.py312.py313.py314-none-manylinux_2_28_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/02/eb/6518a1b00488d48995034226846653c382d676cf5f04be62b3c3fae2c6a1/gpiozero-2.0.1-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/40/66/71c1227dff78aaeb942fed29dd5651f2aec166cc7c9aeea3e8b26a539b7d/identify-2.6.17-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/46/33/92ef41c6fad0233e41d3d84ba8e8ad18d1780f1e5d99b3c683e6d7f98b63/identify-2.6.18-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/a4/ed/1f1afb2e9e7f38a545d628f864d562a5ae64fe6f7a10e28ffb9b185b4e89/importlib_resources-6.5.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/8d/48/aa685dbf1024c7bd82bede569e3a85f82c32fd3d79ba5fea578f0159571a/jaraco_context-6.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/fd/c4/813bb09f0985cb21e959f21f2464169eca882656849adf727ac7bb7e1767/jaraco_functools-4.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/80/e4/88778c6a23b65224e5088e68fd0924e5bde2196a26e76edb3ea3543fed6a/jax-0.9.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/53/6b/b381bda5850f5611822d791cd25dfe36efda2688a68c4dda0f8a92c36dec/jaxlib-0.9.1-cp312-cp312-manylinux_2_27_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/17/9c/e897231c880f69e32251d3b1145894d7a04e4342d9bef8d29644c440d11b/jax-0.9.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/33/a0/ddb3a71359c1df61f3edc408936b5bda7ed402e78ae7e9ef6afd438577c6/jaxlib-0.9.2-cp312-cp312-manylinux_2_27_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/b2/a3/e137168c9c44d18eff0376253da9f1e9234d0239e0ee230d2fee6cea8e55/jeepney-0.9.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/70/90/6d240beb0f24b74371762873e9b7f499f1e02166a2d9c5801f4dbf8fa12e/kiwisolver-1.4.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/c4/13/680c54afe3e65767bed7ec1a15571e1a2f1257128733851ade24abcefbcc/kiwisolver-1.5.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/34/b8/aa7d6cf2d5efdd2fcd85cf39b33584fe12a0f7086ed451176ceb7fb510eb/lark-parser-0.7.8.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/56/33/26ec2e8049eaa2f077bf23a12dc61ca559fbfa7bea0516bf263d657ae275/lgpio-0.2.2.0.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/e2/6d/d56be57340baf2e6f6361386f4c21b8b5e001251c64af954787f8d01ec78/loop_rate_limiters-1.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/3c/2e/8d0c2ab90a8c1d9a24f0399058ab8519a3279d1bd4289511d74e909f060e/markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/3e/f3/c5195b1ae57ef85339fd7285dfb603b22c8b4e79114bae5f4f0fcf688677/matplotlib-3.10.8-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/11/73/07c6dcbb322f86e2b8526e0073456dbdd2813d5351f772f882123c985fda/mediapipe-0.10.14-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/15/6f/64c5dd93f1d19de05709e5c6ac66f6abe89d280838b434e9075f94e30b65/mink-1.1.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/3a/cb/28ce52eb94390dda42599c98ea0204d74799e4d8047a0eb559b6fd648056/ml_dtypes-0.5.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/a4/8e/469e5a4a2f5855992e425f3cb33804cc07bf18d48f2db061aec61ce50270/more_itertools-10.8.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/c8/8a/229e4db3692be55532e155e2ca6a1363752243ee79df0e7e22ba00f716cf/mujoco-3.5.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/52/6c/5ec4e93676a65064a6591176772e00cfa02716156a1d0a7d646a8203348f/mujoco-3.6.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/fe/75/0b4a10da17a44cf13567d08a9c7632a285297e46253263f1ae119129d10a/narwhals-2.18.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/6f/84/c0dc75c7fb596135f999e59a410d9f45bdabb989f1cb911f0016d22b747b/nh3-0.3.3-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/88/b2/d0896bdcdc8d28a7fc5717c305f1a861c26e18c05047949fb371034d98bd/nodeenv-1.10.0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/f5/c6/a18e59f3f0b8071cc85cbc8d80cd02d68aa9710170b2553a117203d46936/numpy-2.4.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/bd/79/cc665495e4d57d0aa6fbcc0aa57aa82671dfc78fbf95fe733ed86d98f52a/numpy-2.4.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/ea/2c/e17b8814050427929077639d35a42187a006922600d4840475bdc5f64ebb/numpy_stl-3.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/86/0a/8c35465fb5bd481d4299534d9d1dce8bf71474d4edc569133fb4b721f3bc/onshape_to_robot-1.8.1.tar.gz
- pypi: https://files.pythonhosted.org/packages/ba/f6/3c645c21358079097201090de7c30d110f5ec3fa01008e3ee81b0a77a354/opencv_contrib_python-4.13.0.92-cp37-abi3-manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/fd/55/b3b49a1b97aabcfbbd6c7326df9cb0b6fa0c0aefa8e89d500939e04aa229/opencv_python-4.13.0.92-cp37-abi3-manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/23/cd/066e86230ae37ed0be70aae89aabf03ca8d9f39c8aea0dec8029455b5540/opt_einsum-3.4.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/3d/fe/89d77e424365280b79d99b3e1e7d606f5165af2f2ecfaf0c6d24c799d607/pandas-3.0.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/ff/79/6df7b2ee763d619cda2fb4fea498e5f79d984dae304d45a8999b80d6cf5c/pillow-12.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- - pypi: https://files.pythonhosted.org/packages/48/31/05e764397056194206169869b50cf2fee4dbbbc71b344705b9c0d878d4d8/platformdirs-4.9.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/63/d7/97f7e3a6abb67d8080dd406fd4df842c2be0efaf712d1c899c32a075027c/platformdirs-4.9.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/5d/19/fd3ef348460c80af7bb4669ea7926651d1f95c23ff2df18b9d24bab4f3fa/pre_commit-4.5.1-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/d6/c6/c9deaa6e789b6fc41b88ccbdfe7a42d2b82663248b715f55aa77fbc00724/protobuf-4.25.8-cp37-abi3-manylinux2014_x86_64.whl
@@ -111,14 +201,15 @@ environments:
- pypi: https://files.pythonhosted.org/packages/de/e4/1ba6f44e491c4eece978685230dde56b14d51a0365bc1b774ddaa94d14cd/pyopengl-3.1.10-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/10/bd/c038d7cc38edc1aa5bf91ab8068b63d4308c66c4c8bb3cbba7dfbc049f9c/pyparsing-3.3.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/06/54/82a6e2ef37f0f23dccac604b9585bdcbd0698604feb64807dcb72853693e/python_discovery-1.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/c2/3c/2005227cb951df502412de2fa781f800663cccbef8d90ec6f1b371ac2c0d/python_discovery-1.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/0b/d7/1959b9648791274998a9c3526f6d0ec8fd2233e4d4acce81bbae76b44b2a/python_dotenv-1.2.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/d4/69/31c82567719b34d8f6b41077732589104883771d182a9f4ff3e71430999a/python_utils-3.9.1-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/8b/9d/b3589d3877982d4f2329302ef98a8026e7f4443c765c46cfecc8858c6b4b/pyyaml-6.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
- - pypi: https://files.pythonhosted.org/packages/76/e6/e6893547135170c23133bac241d5031b0f2002d61675f2166dcbeeb27fbf/qpsolvers-4.8.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/48/36/bb438a1ab5270be8a0d294a2734b31ebfabe8b1b41fde08f43966118b7e2/qpsolvers-4.11.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/20/64/72ae344963db87a15e8566b8c4f1408080ad5746c8e1c32f8d04911074bb/quadprog-0.1.13-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl
@@ -129,108 +220,202 @@ environments:
- pypi: https://files.pythonhosted.org/packages/01/8e/1e35281b8ab6d5d72ebe9911edcdffa3f36b04ed9d51dec6dd140396e220/scipy-1.17.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/b7/46/f5af3402b579fd5e11573ce652019a67074317e18c1935cc0b4ba9b35552/secretstorage-3.5.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/c1/d4/59e74daffcb57a07668852eeeb6035af9f32cbfd7a1d2511f17d2fe6a738/smmap-5.0.3-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/1e/0a/478e441fd049002cf308520c0d62dd8333e7c6cc8d997f0dda07b9fbcc46/sounddevice-0.5.5-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/67/87/039b6eeea781598015b538691bc174cc0bf77df9d4d2d3b8bf9245c0de8c/spidev-3.8.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/b2/04/7b5705d5b3c0fab088f434f9c83edac1573830ca49ccf29fb83bf7178eec/tornado-6.5.5-cp39-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/61/7a/f38385f1b2d5f54221baf1db3d6371dc6eef8041d95abff39576c694e9d9/transforms3d-0.4.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/3a/7a/882d99539b19b1490cac5d77c67338d126e4122c8276bf640e411650c830/twine-6.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/39/08/aaaad47bc4e9dc8c725e68f9d04865dbcb2052843ff09c97b08904852d84/urllib3-2.6.3-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/71/a9/2735cc9dc39457c9cf64d1ce2ba5a9a8ecbb103d0fb64b052bf33ba3d669/uv-0.10.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- - pypi: https://files.pythonhosted.org/packages/78/55/896b06bf93a49bec0f4ae2a6f1ed12bd05c8860744ac3a70eda041064e4d/virtualenv-21.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/8d/42/139e68d7d92bb90a33b5e269dbe474acb00b6c9797541032f859c5bf4c4d/uv-0.10.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
+ - pypi: https://files.pythonhosted.org/packages/c6/59/7d02447a55b2e55755011a647479041bc92a82e143f96a8195cb33bd0a1c/virtualenv-21.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/ef/5c/2c189d18d495dd0fa3f27ccc60762bbc787eed95b9b0147266e72bb76585/xyzservices-2025.11.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl
linux-aarch64:
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/_openmp_mutex-4.5-20_gnu.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/alsa-lib-1.2.15.3-he30d5cf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_102.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/bzip2-1.0.8-h4777abc_9.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cairo-1.18.4-h0b6afd8_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cyrus-sasl-2.1.28-h6598af7_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/dbus-1.16.2-h70963c4_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/double-conversion-3.4.0-hfae3067_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/fontconfig-2.17.1-hba86a56_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/gcc_impl_linux-aarch64-15.2.0-hcedddb3_18.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.2-hcab7f73_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/graphite2-1.3.14-hfae3067_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/harfbuzz-13.2.0-h1134a53_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.3-hcab7f73_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-aarch64-4.18.0-h05a177a_9.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/keyutils-1.6.3-h86ecc28_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/krb5-1.22.2-hfd895c2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lerc-4.1.0-h52b7260_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlicommon-1.2.0-he30d5cf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlidec-1.2.0-he30d5cf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlienc-1.2.0-he30d5cf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp22.1-22.1.0-default_he95a3c9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-22.1.0-default_h94a09a5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcups-2.3.3-h4f2b762_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libdeflate-1.25-h1af38f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libdrm-2.4.125-he30d5cf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libedit-3.1.20250104-pl5321h976ea20_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libegl-1.7.0-hd24410f_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libexpat-2.7.4-hfae3067_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libffi-3.5.2-h376a255_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libfreetype-2.14.2-h8af1aa0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libfreetype6-2.14.2-hdae7a39_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/libgcc-devel_linux-aarch64-15.2.0-h55c397f_118.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-ng-15.2.0-he9431aa_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgl-1.7.0-hd24410f_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libglib-2.86.4-hf53f6bf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libglvnd-1.7.0-hd24410f_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libglx-1.7.0-hd24410f_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgomp-15.2.0-h8acb6b2_18.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libjpeg-turbo-3.1.2-he30d5cf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.1-hfd2ba90_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/liblzma-5.8.2-he30d5cf_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libnsl-2.0.1-h86ecc28_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libntlm-1.4-hf897c2e_1002.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libopengl-1.7.0-hd24410f_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpciaccess-0.18-h86ecc28_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpng-1.6.55-h1abf092_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpq-18.3-h7d4fc67_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsanitizer-15.2.0-he19c465_18.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.51.2-h10b116e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.52.0-h10b116e_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libstdcxx-15.2.0-hef695bb_18.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/libstdcxx-devel_linux-aarch64-15.2.0-ha7b1723_118.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libtiff-4.7.1-hdb009f0_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libuuid-2.41.3-h1022ec0_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libvulkan-loader-1.4.341.0-h8b8848b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libwebp-base-1.6.0-ha2e29f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxcb-1.17.0-h262b8f6_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxcrypt-4.4.36-h31becfc_1.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.1-h86ecc28_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxkbcommon-1.13.1-h3c6a4c8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h79dcc73_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h825857f_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxslt-1.1.43-h6700d25_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ncurses-6.5-ha32ae93_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openldap-2.6.10-h2fb54aa_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openssl-3.6.1-h546c87b_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pcre2-10.47-hf841c20_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pip-26.0.1-pyh8b19718_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.12.12-h91f4b29_2_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pixman-0.46.4-h7ac5ae9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pthread-stubs-0.4-h86ecc28_1002.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pyside6-6.10.2-py312hfc1e6cc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.12.13-h91f4b29_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.12-8_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/qt6-main-6.10.2-pl5321h598db47_6.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.3-hb682ff5_0.conda
- - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rust-1.93.1-h6cf38e9_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-unknown-linux-gnu-1.93.1-hbe8e118_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rust-1.94.0-h6cf38e9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-unknown-linux-gnu-1.94.0-hbe8e118_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.1-pyh332efcf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/swig-4.4.1-h512d76c_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h0dc03b3_103.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/wayland-1.25.0-h4f8a99f_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.46.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-0.4.1-hca56bd8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-cursor-0.1.6-he30d5cf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-image-0.4.0-h5c728e9_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-keysyms-0.4.1-h5c728e9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-renderutil-0.3.10-h5c728e9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-wm-0.4.2-h5c728e9_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xkeyboard-config-2.47-he30d5cf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libice-1.1.2-h86ecc28_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libsm-1.2.6-h0808dbd_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libx11-1.8.13-h63a1b12_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxau-1.0.12-he30d5cf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxcomposite-0.4.7-he30d5cf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxcursor-1.2.3-h86ecc28_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxdamage-1.1.6-h86ecc28_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxdmcp-1.1.5-he30d5cf_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxext-1.3.7-he30d5cf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxfixes-6.0.2-he30d5cf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxi-1.8.2-h57736b2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxrandr-1.5.5-he30d5cf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxrender-0.9.12-h86ecc28_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxtst-1.2.5-h57736b2_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxxf86vm-1.1.7-he30d5cf_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/zstd-1.5.7-h85ac4a6_6.conda
- pypi: https://files.pythonhosted.org/packages/18/a6/907a406bb7d359e6a63f99c313846d9eec4f7e6f7437809e03aa00fa3074/absl_py-2.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/47/0b/bdf449df87be3f07b23091ceafee8c3ef569cf6d2fb7edec6e3b12b3faa4/bokeh-3.9.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/d5/72/12b5f8d3865bf0f87cf1404d8c374e7487dcf097a1c91c436e72e6badd83/cffi-2.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/db/3c/33bac158f8ab7f89b2e59426d5fe2e4f63f7ed25df84c036890172b412b5/cfgv-3.5.0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/9d/6a/04130023fef2a0d9c62d0bae2649b69f7b7d8d24ea5536feef50551029df/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/a8/37/bdca6613c2e3c58c7421891d80cc3efa1d32e882f7c4a7ee6039c3fc951a/charset_normalizer-3.4.6-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/7e/a6/ddd0f130e44a7593ac6c55aa93f6e256d2270fd88e9d1b64ab7f22ab8fde/colorzero-2.0-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/c0/76/c4aa9e408dbacee3f4de8e6c5417e5f55de7e62fb5a50300e1233a2c9cb5/commentjson-0.9.0.tar.gz
- pypi: https://files.pythonhosted.org/packages/d4/1c/a12359b9b2ca3a845e8f7f9ac08bdf776114eb931392fcad91743e2ea17b/contourpy-1.3.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/37/53/a18500f270342d66bf7e4d9f091114e31e5ee9e7375a5aba2e85a91e0044/cryptography-46.0.5-cp311-abi3-manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/2f/2a/b0a896f1aa8618fae09acf508f0bb0192022383dbf73bea76143345167c8/daqp-0.7.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/e3/8c/1f034921f93cc6d678c05bd496da7667d03be3ff01aa37b150eda6ebb006/daqp-0.8.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/33/6b/e0547afaf41bf2c42e52430072fa5658766e3d65bd4b03a563d1b6336f57/distlib-0.4.0-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/02/10/5da547df7a391dcde17f59520a231527b8571e6f46fc8efb02ccb370ab12/docutils-0.22.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/59/d5/64a3e1dadfa72aed14d9dc1a2e11b4acbef9dfb850ad3eeed1293b63ea26/dora_rs-0.3.13-cp37-abi3-manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/90/2a/e66c6cbf19f05ec38ecab7ca3d0ecdb3b5a9450050087c12b6e1d3025699/dora_rs_cli-0.3.13-cp37-abi3-manylinux_2_28_aarch64.whl
- - pypi: https://files.pythonhosted.org/packages/e7/98/87b5946356095738cb90a6df7b35ff69ac5750f6e783d5fbcc5cb3b6cbd7/etils-1.13.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/f9/0b/de6f54d4a8bedfe8645c41497f3c18d749f0bd3218170c667bf4b81d0cdd/filelock-3.25.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/5a/3d/589663aeeacd59bb2f3e8596bfd3e81cf0fb18d70bb433199041f469771b/etils-1.14.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/a4/a5/842ae8f0c08b61d6484b52f99a03510a3a72d23141942d216ebe81fefbce/filelock-3.25.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/e8/2d/d2a548598be01649e2d46231d151a6c56d10b964d94043a335ae56ea2d92/flatbuffers-25.12.19-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/6c/44/f3aeac0fa98e7ad527f479e161aca6c3a1e47bb6996b053d45226fe37bf2/fonttools-4.61.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/69/64/f19a9e3911968c37e1e620e14dfc5778299e1474f72f4e57c5ec771d9489/fonttools-4.62.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/e6/ab/fb21f4c939bb440104cc2b396d3be1d9b7a9fd3c6c2a53d98c45b3d7c954/fsspec-2026.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/6a/09/e21df6aef1e1ffc0c816f0522ddc3f6dcded766c3261813131c78a704470/gitpython-3.1.46-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/ff/b4/f7b6cc022dd7c68b6c702d19da5d591f978f89c958b9bd3090615db0c739/glfw-2.10.0-py2.py27.py3.py30.py31.py32.py33.py34.py35.py36.py37.py38.py39.py310.py311.py312.py313.py314-none-manylinux_2_28_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/02/eb/6518a1b00488d48995034226846653c382d676cf5f04be62b3c3fae2c6a1/gpiozero-2.0.1-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/40/66/71c1227dff78aaeb942fed29dd5651f2aec166cc7c9aeea3e8b26a539b7d/identify-2.6.17-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/46/33/92ef41c6fad0233e41d3d84ba8e8ad18d1780f1e5d99b3c683e6d7f98b63/identify-2.6.18-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/a4/ed/1f1afb2e9e7f38a545d628f864d562a5ae64fe6f7a10e28ffb9b185b4e89/importlib_resources-6.5.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/8d/48/aa685dbf1024c7bd82bede569e3a85f82c32fd3d79ba5fea578f0159571a/jaraco_context-6.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/fd/c4/813bb09f0985cb21e959f21f2464169eca882656849adf727ac7bb7e1767/jaraco_functools-4.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/80/e4/88778c6a23b65224e5088e68fd0924e5bde2196a26e76edb3ea3543fed6a/jax-0.9.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/f8/b9/e0419783cbff9fa3bbc053dbe130f9051f60de4f424f650d70aae7f3bdf1/jaxlib-0.9.1-cp312-cp312-manylinux_2_27_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/17/9c/e897231c880f69e32251d3b1145894d7a04e4342d9bef8d29644c440d11b/jax-0.9.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/88/79/699aa47d2256b2edbb75a68a8f1a1ee4d34dfb84b8842a963caeb9a8cb03/jaxlib-0.9.2-cp312-cp312-manylinux_2_27_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/b2/a3/e137168c9c44d18eff0376253da9f1e9234d0239e0ee230d2fee6cea8e55/jeepney-0.9.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/12/42/f36816eaf465220f683fb711efdd1bbf7a7005a2473d0e4ed421389bd26c/kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/c8/2f/cebfcdb60fd6a9b0f6b47a9337198bcbad6fbe15e68189b7011fd914911f/kiwisolver-1.5.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/34/b8/aa7d6cf2d5efdd2fcd85cf39b33584fe12a0f7086ed451176ceb7fb510eb/lark-parser-0.7.8.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/56/33/26ec2e8049eaa2f077bf23a12dc61ca559fbfa7bea0516bf263d657ae275/lgpio-0.2.2.0.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/e2/6d/d56be57340baf2e6f6361386f4c21b8b5e001251c64af954787f8d01ec78/loop_rate_limiters-1.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/1e/2c/799f4742efc39633a1b54a92eec4082e4f815314869865d876824c257c1e/markupsafe-3.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/00/f9/7638f5cc82ec8a7aa005de48622eecc3ed7c9854b96ba15bd76b7fd27574/matplotlib-3.10.8-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/f4/da/dfed8db260b3fbe4e24ac17dda32c55787643a656d8d4e78c55bc847efa8/mediapipe-0.10.14-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/9c/71/3b219f6563b5a1a4e7bda894d7314b9eea1a5ec53d5cc3975b7951c6e84a/mink-1.1.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/54/0f/428ef6881782e5ebb7eca459689448c0394fa0a80bea3aa9262cba5445ea/ml_dtypes-0.5.4-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/a4/8e/469e5a4a2f5855992e425f3cb33804cc07bf18d48f2db061aec61ce50270/more_itertools-10.8.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/b8/7b/c1612ec68d98e5f3dbc5b8a21ff5d40ab52409fcc89ea7afc8a197983297/mujoco-3.5.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/2c/cc/2aae89c3a83fed29ccb9057c05fb4a218b2a42c6dea136d9a78fea6b39f8/mujoco-3.6.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/fe/75/0b4a10da17a44cf13567d08a9c7632a285297e46253263f1ae119129d10a/narwhals-2.18.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/ca/43/d2011a4f6c0272cb122eeff40062ee06bb2b6e57eabc3a5e057df0d582df/nh3-0.3.3-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/88/b2/d0896bdcdc8d28a7fc5717c305f1a861c26e18c05047949fb371034d98bd/nodeenv-1.10.0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/b1/91/b97fdfd12dc75b02c44e26c6638241cc004d4079a0321a69c62f51470c4c/numpy-2.4.2-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/7b/12/8c9f0c6c95f76aeb20fc4a699c33e9f827fa0d0f857747c73bb7b17af945/numpy-2.4.3-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/ea/2c/e17b8814050427929077639d35a42187a006922600d4840475bdc5f64ebb/numpy_stl-3.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/86/0a/8c35465fb5bd481d4299534d9d1dce8bf71474d4edc569133fb4b721f3bc/onshape_to_robot-1.8.1.tar.gz
- pypi: https://files.pythonhosted.org/packages/f3/11/10c46e9527c4591d5264117debd8fe0e21bb23dbf378ce760add6b1e85b6/opencv_contrib_python-4.13.0.92-cp37-abi3-manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/02/6d/7a9cc719b3eaf4377b9c2e3edeb7ed3a81de41f96421510c0a169ca3cfd4/opencv_python-4.13.0.92-cp37-abi3-manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/23/cd/066e86230ae37ed0be70aae89aabf03ca8d9f39c8aea0dec8029455b5540/opt_einsum-3.4.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/d7/39/327802e0b6d693182403c144edacbc27eb82907b57062f23ef5a4c4a5ea7/pandas-3.0.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/b2/8b/07587069c27be7535ac1fe33874e32de118fbd34e2a73b7f83436a88368c/pillow-12.1.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- - pypi: https://files.pythonhosted.org/packages/48/31/05e764397056194206169869b50cf2fee4dbbbc71b344705b9c0d878d4d8/platformdirs-4.9.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/63/d7/97f7e3a6abb67d8080dd406fd4df842c2be0efaf712d1c899c32a075027c/platformdirs-4.9.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/5d/19/fd3ef348460c80af7bb4669ea7926651d1f95c23ff2df18b9d24bab4f3fa/pre_commit-4.5.1-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/bd/6d/a4a198b61808dd3d1ee187082ccc21499bc949d639feb948961b48be9a7e/protobuf-4.25.8-cp37-abi3-manylinux2014_aarch64.whl
@@ -240,14 +425,15 @@ environments:
- pypi: https://files.pythonhosted.org/packages/de/e4/1ba6f44e491c4eece978685230dde56b14d51a0365bc1b774ddaa94d14cd/pyopengl-3.1.10-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/10/bd/c038d7cc38edc1aa5bf91ab8068b63d4308c66c4c8bb3cbba7dfbc049f9c/pyparsing-3.3.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/06/54/82a6e2ef37f0f23dccac604b9585bdcbd0698604feb64807dcb72853693e/python_discovery-1.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/c2/3c/2005227cb951df502412de2fa781f800663cccbef8d90ec6f1b371ac2c0d/python_discovery-1.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/0b/d7/1959b9648791274998a9c3526f6d0ec8fd2233e4d4acce81bbae76b44b2a/python_dotenv-1.2.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/d4/69/31c82567719b34d8f6b41077732589104883771d182a9f4ff3e71430999a/python_utils-3.9.1-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/ed/23/7a778b6bd0b9a8039df8b1b1d80e2e2ad78aa04171592c8a5c43a56a6af4/pyyaml-6.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- - pypi: https://files.pythonhosted.org/packages/76/e6/e6893547135170c23133bac241d5031b0f2002d61675f2166dcbeeb27fbf/qpsolvers-4.8.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/48/36/bb438a1ab5270be8a0d294a2734b31ebfabe8b1b41fde08f43966118b7e2/qpsolvers-4.11.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/9e/60/fb9b56d425c5b3495bb92683c28f954aedb609ae62f14c81a1b5621ad759/quadprog-0.1.13.tar.gz
- pypi: https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl
@@ -258,89 +444,149 @@ environments:
- pypi: https://files.pythonhosted.org/packages/da/34/16f10e3042d2f1d6b66e0428308ab52224b6a23049cb2f5c1756f713815f/scipy-1.17.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/b7/46/f5af3402b579fd5e11573ce652019a67074317e18c1935cc0b4ba9b35552/secretstorage-3.5.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/c1/d4/59e74daffcb57a07668852eeeb6035af9f32cbfd7a1d2511f17d2fe6a738/smmap-5.0.3-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/1e/0a/478e441fd049002cf308520c0d62dd8333e7c6cc8d997f0dda07b9fbcc46/sounddevice-0.5.5-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/67/87/039b6eeea781598015b538691bc174cc0bf77df9d4d2d3b8bf9245c0de8c/spidev-3.8.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/34/01/74e034a30ef59afb4097ef8659515e96a39d910b712a89af76f5e4e1f93c/tornado-6.5.5-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- pypi: https://files.pythonhosted.org/packages/61/7a/f38385f1b2d5f54221baf1db3d6371dc6eef8041d95abff39576c694e9d9/transforms3d-0.4.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/3a/7a/882d99539b19b1490cac5d77c67338d126e4122c8276bf640e411650c830/twine-6.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/39/08/aaaad47bc4e9dc8c725e68f9d04865dbcb2052843ff09c97b08904852d84/urllib3-2.6.3-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/20/5f/5f204e9c3f04f5fc844d2f98d80a7de64b6b304af869644ab478d909f6ff/uv-0.10.7-py3-none-manylinux_2_28_aarch64.whl
- - pypi: https://files.pythonhosted.org/packages/78/55/896b06bf93a49bec0f4ae2a6f1ed12bd05c8860744ac3a70eda041064e4d/virtualenv-21.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/0c/75/40b237d005e4cdef9f960c215d3e2c0ab4f459ca009c3800cdcb07fbaa1d/uv-0.10.12-py3-none-manylinux_2_28_aarch64.whl
+ - pypi: https://files.pythonhosted.org/packages/c6/59/7d02447a55b2e55755011a647479041bc92a82e143f96a8195cb33bd0a1c/virtualenv-21.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/ef/5c/2c189d18d495dd0fa3f27ccc60762bbc787eed95b9b0147266e72bb76585/xyzservices-2025.11.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl
osx-arm64:
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.2-hef89b57_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.4-he0f2337_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cyrus-sasl-2.1.28-hb961e35_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/double-conversion-3.4.0-hf6b4638_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.17.1-h2b252f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/graphite2-1.3.14-hec049ff_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/harfbuzz-13.2.0-h3103d1b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.1.0-h1eee2c3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.2.0-hc919400_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.2.0-hc919400_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.2.0-hc919400_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp19.1-19.1.7-default_hf3020a7_8.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-22.1.0-default_h13b06bd_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.1-h55c6f16_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.25-hc11a715_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.4-hf6b4638_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libfreetype-2.14.2-hce30654_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libfreetype6-2.14.2-hdfa99f5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.86.4-he378b5c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-0.25.1-h493aca8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.2-hc919400_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm19-19.1.7-h8e0c9ce_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.1-h89af1be_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.2-h8088a28_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.2-h1ae2325_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libntlm-1.8-h5505292_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.55-h132b30e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-18.3-hd341ff2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.52.0-h1ae2325_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h4030677_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.6.0-h07db88b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.2-h5ef1a60_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.2-h8d039ee_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxslt-1.1.43-hb2570ba_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.2-h8088a28_2.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h5e97a16_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openldap-2.6.10-hf7f56bc_1.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.6.1-hd24854e_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.47-h30297fc_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pip-26.0.1-pyh8b19718_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.12-h18782d2_2_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.46.4-h81086ad_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyside6-6.10.2-py312h4aa7bac_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.13-h8561d8f_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.12-8_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt6-main-6.10.2-pl5321h01fc3ab_6.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.3-h46df422_0.conda
- - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rust-1.93.1-h4ff7c5d_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-apple-darwin-1.93.1-hf6ec828_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rust-1.94.0-h4ff7c5d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-apple-darwin-1.94.0-hf6ec828_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.1-pyh332efcf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/swig-4.4.1-h4366dc5_0.conda
- conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h010d191_3.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.46.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda
- pypi: https://files.pythonhosted.org/packages/18/a6/907a406bb7d359e6a63f99c313846d9eec4f7e6f7437809e03aa00fa3074/absl_py-2.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/47/0b/bdf449df87be3f07b23091ceafee8c3ef569cf6d2fb7edec6e3b12b3faa4/bokeh-3.9.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/df/a2/781b623f57358e360d62cdd7a8c681f074a71d445418a776eef0aadb4ab4/cffi-2.0.0-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/db/3c/33bac158f8ab7f89b2e59426d5fe2e4f63f7ed25df84c036890172b412b5/cfgv-3.5.0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/f3/85/1637cd4af66fa687396e757dec650f28025f2a2f5a5531a3208dc0ec43f2/charset_normalizer-3.4.4-cp312-cp312-macosx_10_13_universal2.whl
+ - pypi: https://files.pythonhosted.org/packages/e5/62/c0815c992c9545347aeea7859b50dc9044d147e2e7278329c6e02ac9a616/charset_normalizer-3.4.6-cp312-cp312-macosx_10_13_universal2.whl
- pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/7e/a6/ddd0f130e44a7593ac6c55aa93f6e256d2270fd88e9d1b64ab7f22ab8fde/colorzero-2.0-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/c0/76/c4aa9e408dbacee3f4de8e6c5417e5f55de7e62fb5a50300e1233a2c9cb5/commentjson-0.9.0.tar.gz
- pypi: https://files.pythonhosted.org/packages/53/3e/405b59cfa13021a56bba395a6b3aca8cec012b45bf177b0eaf7a202cde2c/contourpy-1.3.3-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/9e/08/041461120e16bab05ea163afdb88fab452aefa9cbeadb9b91b3ec4f23635/daqp-0.7.2-cp312-cp312-macosx_11_0_arm64.whl
+ - pypi: https://files.pythonhosted.org/packages/2e/32/0102e237dbcd47224fc638905354fcecb48097763b291e43a9e6a03d706b/daqp-0.8.3-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/33/6b/e0547afaf41bf2c42e52430072fa5658766e3d65bd4b03a563d1b6336f57/distlib-0.4.0-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/02/10/5da547df7a391dcde17f59520a231527b8571e6f46fc8efb02ccb370ab12/docutils-0.22.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/59/8f/c5e43fc1a9bf27cd34cd98d5ad48ce18429851ae67977ae5be8f2ab0eccf/dora_rs-0.3.13-cp37-abi3-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/19/1e/2c9be5ca5a99bee5150cc76ff654f67c8d0e4b85e64f9cdd81d4ec138cf0/dora_rs_cli-0.3.13-cp37-abi3-macosx_11_0_arm64.whl
- - pypi: https://files.pythonhosted.org/packages/e7/98/87b5946356095738cb90a6df7b35ff69ac5750f6e783d5fbcc5cb3b6cbd7/etils-1.13.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/f9/0b/de6f54d4a8bedfe8645c41497f3c18d749f0bd3218170c667bf4b81d0cdd/filelock-3.25.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/5a/3d/589663aeeacd59bb2f3e8596bfd3e81cf0fb18d70bb433199041f469771b/etils-1.14.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/a4/a5/842ae8f0c08b61d6484b52f99a03510a3a72d23141942d216ebe81fefbce/filelock-3.25.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/e8/2d/d2a548598be01649e2d46231d151a6c56d10b964d94043a335ae56ea2d92/flatbuffers-25.12.19-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/6f/16/7decaa24a1bd3a70c607b2e29f0adc6159f36a7e40eaba59846414765fd4/fonttools-4.61.1-cp312-cp312-macosx_10_13_universal2.whl
+ - pypi: https://files.pythonhosted.org/packages/47/d4/dbacced3953544b9a93088cc10ef2b596d348c983d5c67a404fa41ec51ba/fonttools-4.62.1-cp312-cp312-macosx_10_13_universal2.whl
- pypi: https://files.pythonhosted.org/packages/e6/ab/fb21f4c939bb440104cc2b396d3be1d9b7a9fd3c6c2a53d98c45b3d7c954/fsspec-2026.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/6a/09/e21df6aef1e1ffc0c816f0522ddc3f6dcded766c3261813131c78a704470/gitpython-3.1.46-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/b6/a6/6ea2f73ad4474896d9e38b3ffbe6ffd5a802c738392269e99e8c6621a461/glfw-2.10.0-py2.py27.py3.py30.py31.py32.py33.py34.py35.py36.py37.py38.py39.py310.py311.py312.py313.py314-none-macosx_11_0_arm64.whl
+ - pypi: https://files.pythonhosted.org/packages/02/eb/6518a1b00488d48995034226846653c382d676cf5f04be62b3c3fae2c6a1/gpiozero-2.0.1-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/40/66/71c1227dff78aaeb942fed29dd5651f2aec166cc7c9aeea3e8b26a539b7d/identify-2.6.17-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/46/33/92ef41c6fad0233e41d3d84ba8e8ad18d1780f1e5d99b3c683e6d7f98b63/identify-2.6.18-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/a4/ed/1f1afb2e9e7f38a545d628f864d562a5ae64fe6f7a10e28ffb9b185b4e89/importlib_resources-6.5.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/8d/48/aa685dbf1024c7bd82bede569e3a85f82c32fd3d79ba5fea578f0159571a/jaraco_context-6.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/fd/c4/813bb09f0985cb21e959f21f2464169eca882656849adf727ac7bb7e1767/jaraco_functools-4.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/80/e4/88778c6a23b65224e5088e68fd0924e5bde2196a26e76edb3ea3543fed6a/jax-0.9.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/8f/06/59b1da0a3b2450a4abbf66cbb3bbfe0b14f9723b1f8997c0178db3549e54/jaxlib-0.9.1-cp312-cp312-macosx_11_0_arm64.whl
+ - pypi: https://files.pythonhosted.org/packages/17/9c/e897231c880f69e32251d3b1145894d7a04e4342d9bef8d29644c440d11b/jax-0.9.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/51/15/ff3d9fde15b5146a0164505085312d8c9c0b0bbd7be5a15218ead2593307/jaxlib-0.9.2-cp312-cp312-macosx_11_0_arm64.whl
+ - pypi: https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/5b/5a/51f5464373ce2aeb5194508298a508b6f21d3867f499556263c64c621914/kiwisolver-1.4.9-cp312-cp312-macosx_11_0_arm64.whl
+ - pypi: https://files.pythonhosted.org/packages/99/9f/795fedf35634f746151ca8839d05681ceb6287fbed6cc1c9bf235f7887c2/kiwisolver-1.5.0-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/34/b8/aa7d6cf2d5efdd2fcd85cf39b33584fe12a0f7086ed451176ceb7fb510eb/lark-parser-0.7.8.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/56/33/26ec2e8049eaa2f077bf23a12dc61ca559fbfa7bea0516bf263d657ae275/lgpio-0.2.2.0.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/e2/6d/d56be57340baf2e6f6361386f4c21b8b5e001251c64af954787f8d01ec78/loop_rate_limiters-1.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/9a/81/7e4e08678a1f98521201c3079f77db69fb552acd56067661f8c2f534a718/markupsafe-3.0.3-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/7e/65/07d5f5c7f7c994f12c768708bd2e17a4f01a2b0f44a1c9eccad872433e2e/matplotlib-3.10.8-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/2d/df/be410905b9757de4b00891dd34236d96e6db150b624f28cc27cd90c74564/mediapipe-0.10.14-cp312-cp312-macosx_11_0_universal2.whl
- pypi: https://files.pythonhosted.org/packages/c7/3d/97e4b9736f7d983d87f872eb80bbdc256a903ae1e4481f24bf3c317e376e/mink-1.1.0-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/a8/b8/3c70881695e056f8a32f8b941126cf78775d9a4d7feba8abcb52cb7b04f2/ml_dtypes-0.5.4-cp312-cp312-macosx_10_13_universal2.whl
- pypi: https://files.pythonhosted.org/packages/a4/8e/469e5a4a2f5855992e425f3cb33804cc07bf18d48f2db061aec61ce50270/more_itertools-10.8.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/e1/d4/d0032323f58a9b8080b8464c6aade8d5ac2e101dbed1de64a38b3913b446/mujoco-3.5.0-cp312-cp312-macosx_11_0_arm64.whl
+ - pypi: https://files.pythonhosted.org/packages/26/55/7407eced2c44fbea233302d2c11e778852ea0f2eb0e14610f13a7e0d6ac7/mujoco-3.6.0-cp312-cp312-macosx_11_0_arm64.whl
+ - pypi: https://files.pythonhosted.org/packages/fe/75/0b4a10da17a44cf13567d08a9c7632a285297e46253263f1ae119129d10a/narwhals-2.18.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/13/3e/aef8cf8e0419b530c95e96ae93a5078e9b36c1e6613eeb1df03a80d5194e/nh3-0.3.3-cp38-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
- pypi: https://files.pythonhosted.org/packages/88/b2/d0896bdcdc8d28a7fc5717c305f1a861c26e18c05047949fb371034d98bd/nodeenv-1.10.0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/1f/f8/55483431f2b2fd015ae6ed4fe62288823ce908437ed49db5a03d15151678/numpy-2.4.2-cp312-cp312-macosx_11_0_arm64.whl
+ - pypi: https://files.pythonhosted.org/packages/74/1b/ee2abfc68e1ce728b2958b6ba831d65c62e1b13ce3017c13943f8f9b5b2e/numpy-2.4.3-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/ea/2c/e17b8814050427929077639d35a42187a006922600d4840475bdc5f64ebb/numpy_stl-3.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/86/0a/8c35465fb5bd481d4299534d9d1dce8bf71474d4edc569133fb4b721f3bc/onshape_to_robot-1.8.1.tar.gz
- pypi: https://files.pythonhosted.org/packages/7e/4c/a45c96b9fe90b2c48ee604f5176eb7deb46ce7c2e87c8d819d2945dbcab6/opencv_contrib_python-4.13.0.92-cp37-abi3-macosx_13_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/fc/6f/5a28fef4c4a382be06afe3938c64cc168223016fa520c5abaf37e8862aa5/opencv_python-4.13.0.92-cp37-abi3-macosx_13_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/23/cd/066e86230ae37ed0be70aae89aabf03ca8d9f39c8aea0dec8029455b5540/opt_einsum-3.4.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/7c/f1/e2567ffc8951ab371db2e40b2fe068e36b81d8cf3260f06ae508700e5504/pandas-3.0.1-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/d6/71/5026395b290ff404b836e636f51d7297e6c83beceaa87c592718747e670f/pillow-12.1.1-cp312-cp312-macosx_11_0_arm64.whl
- - pypi: https://files.pythonhosted.org/packages/48/31/05e764397056194206169869b50cf2fee4dbbbc71b344705b9c0d878d4d8/platformdirs-4.9.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/63/d7/97f7e3a6abb67d8080dd406fd4df842c2be0efaf712d1c899c32a075027c/platformdirs-4.9.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/5d/19/fd3ef348460c80af7bb4669ea7926651d1f95c23ff2df18b9d24bab4f3fa/pre_commit-4.5.1-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/28/d7/ab27049a035b258dab43445eb6ec84a26277b16105b277cbe0a7698bdc6c/protobuf-4.25.8-cp37-abi3-macosx_10_9_universal2.whl
@@ -350,14 +596,15 @@ environments:
- pypi: https://files.pythonhosted.org/packages/de/e4/1ba6f44e491c4eece978685230dde56b14d51a0365bc1b774ddaa94d14cd/pyopengl-3.1.10-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/10/bd/c038d7cc38edc1aa5bf91ab8068b63d4308c66c4c8bb3cbba7dfbc049f9c/pyparsing-3.3.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/06/54/82a6e2ef37f0f23dccac604b9585bdcbd0698604feb64807dcb72853693e/python_discovery-1.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/c2/3c/2005227cb951df502412de2fa781f800663cccbef8d90ec6f1b371ac2c0d/python_discovery-1.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/0b/d7/1959b9648791274998a9c3526f6d0ec8fd2233e4d4acce81bbae76b44b2a/python_dotenv-1.2.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/d4/69/31c82567719b34d8f6b41077732589104883771d182a9f4ff3e71430999a/python_utils-3.9.1-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/89/a0/6cf41a19a1f2f3feab0e9c0b74134aa2ce6849093d5517a0c550fe37a648/pyyaml-6.0.3-cp312-cp312-macosx_11_0_arm64.whl
- - pypi: https://files.pythonhosted.org/packages/76/e6/e6893547135170c23133bac241d5031b0f2002d61675f2166dcbeeb27fbf/qpsolvers-4.8.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/48/36/bb438a1ab5270be8a0d294a2734b31ebfabe8b1b41fde08f43966118b7e2/qpsolvers-4.11.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/10/5e/de8d3911e44699abc4e3ce835e69c3db76525af8018026f9bce61be69a43/quadprog-0.1.13-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl
@@ -367,29 +614,71 @@ environments:
- pypi: https://files.pythonhosted.org/packages/99/d8/e91cfb6fde9b37fb9884e0ed0b6becc9b2d98293e8c3255579999a8cc734/rustypot-1.4.2-cp312-cp312-macosx_11_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/b2/02/cf107b01494c19dc100f1d0b7ac3cc08666e96ba2d64db7626066cee895e/scipy-1.17.1-cp312-cp312-macosx_12_0_arm64.whl
- pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/c1/d4/59e74daffcb57a07668852eeeb6035af9f32cbfd7a1d2511f17d2fe6a738/smmap-5.0.3-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/56/f9/c037c35f6d0b6bc3bc7bfb314f1d6f1f9a341328ef47cd63fc4f850a7b27/sounddevice-0.5.5-py3-none-macosx_10_6_x86_64.macosx_10_6_universal2.whl
+ - pypi: https://files.pythonhosted.org/packages/67/87/039b6eeea781598015b538691bc174cc0bf77df9d4d2d3b8bf9245c0de8c/spidev-3.8.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/59/8c/77f5097695f4dd8255ecbd08b2a1ed8ba8b953d337804dd7080f199e12bf/tornado-6.5.5-cp39-abi3-macosx_10_9_universal2.whl
- pypi: https://files.pythonhosted.org/packages/61/7a/f38385f1b2d5f54221baf1db3d6371dc6eef8041d95abff39576c694e9d9/transforms3d-0.4.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/3a/7a/882d99539b19b1490cac5d77c67338d126e4122c8276bf640e411650c830/twine-6.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/39/08/aaaad47bc4e9dc8c725e68f9d04865dbcb2052843ff09c97b08904852d84/urllib3-2.6.3-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/5e/15/8365dc2ded350a4ee5fcbbf9b15195cb2b45855114f2a154b5effb6fa791/uv-0.10.7-py3-none-macosx_11_0_arm64.whl
- - pypi: https://files.pythonhosted.org/packages/78/55/896b06bf93a49bec0f4ae2a6f1ed12bd05c8860744ac3a70eda041064e4d/virtualenv-21.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/ce/db/c41ace81b8ef5d5952433df38e321c0b6e5f88ce210c508b14f84817963f/uv-0.10.12-py3-none-macosx_11_0_arm64.whl
+ - pypi: https://files.pythonhosted.org/packages/c6/59/7d02447a55b2e55755011a647479041bc92a82e143f96a8195cb33bd0a1c/virtualenv-21.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/ef/5c/2c189d18d495dd0fa3f27ccc60762bbc787eed95b9b0147266e72bb76585/xyzservices-2025.11.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl
win-64:
- conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h0ad9c76_9.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-h4c7d964_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.4-h477c42c_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/double-conversion-3.4.0-hac47afa_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.17.1-hd47e2ca_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/graphite2-1.3.14-hac47afa_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/harfbuzz-13.2.0-h5a1b470_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/icu-78.3-h637d24d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.1.0-hd936e49_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.2.0-hfd05255_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.2.0-hfd05255_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.2.0-hfd05255_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.25-h51727cc_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.7.4-hac47afa_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.5.2-h3d046cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libfreetype-2.14.2-h57928b3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libfreetype6-2.14.2-hdbac1cb_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.86.4-h0c9aed9_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.18-hc1393d2_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_3.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.2-hfd05255_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/liblzma-5.8.2-hfd05255_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.2-hf5d6505_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.55-h7351971_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.52.0-hf5d6505_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h8f73337_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libvulkan-loader-1.4.341.0-h477610d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.6.0-h4d5522a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-16-2.15.2-h3cfd58e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.15.2-h779ef1b_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxslt-1.1.43-h0fbe4c1_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.2-hfd05255_2.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.6.1-hf411b9b_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.0-pyhcf101f3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.47-hd2b5f0e_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pip-26.0.1-pyh8b19718_0.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.12-h0159041_2_cpython.conda
- - conda: https://conda.anaconda.org/conda-forge/win-64/rust-1.93.1-hf8d6059_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-pc-windows-msvc-1.93.1-h17fc481_0.conda
- - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.46.4-h5112557_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pyside6-6.10.2-py312ha7d0d2e_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.13-h0159041_0_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.12-8_cp312.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/qt6-main-6.10.2-pl5321hfcac499_6.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/rust-1.94.0-hf8d6059_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-pc-windows-msvc-1.94.0-h17fc481_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.1-pyh332efcf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/swig-4.4.1-h9b0202b_0.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h6ed50ae_3.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda
- conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.26100.0-h57928b3_0.conda
@@ -399,60 +688,71 @@ environments:
- conda: https://conda.anaconda.org/conda-forge/win-64/vs2022_win-64-19.44.35207-ha74f236_34.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/vswhere-3.1.7-h40126e0_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.46.3-pyhd8ed1ab_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda
- pypi: https://files.pythonhosted.org/packages/18/a6/907a406bb7d359e6a63f99c313846d9eec4f7e6f7437809e03aa00fa3074/absl_py-2.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/47/0b/bdf449df87be3f07b23091ceafee8c3ef569cf6d2fb7edec6e3b12b3faa4/bokeh-3.9.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/f8/ed/13bd4418627013bec4ed6e54283b1959cf6db888048c7cf4b4c3b5b36002/cffi-2.0.0-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/db/3c/33bac158f8ab7f89b2e59426d5fe2e4f63f7ed25df84c036890172b412b5/cfgv-3.5.0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/3d/2d/1e5ed9dd3b3803994c155cd9aacb60c82c331bad84daf75bcb9c91b3295e/charset_normalizer-3.4.4-cp312-cp312-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/ab/20/0567efb3a8fd481b8f34f739ebddc098ed062a59fed41a8d193a61939e8f/charset_normalizer-3.4.6-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/7e/a6/ddd0f130e44a7593ac6c55aa93f6e256d2270fd88e9d1b64ab7f22ab8fde/colorzero-2.0-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/c0/76/c4aa9e408dbacee3f4de8e6c5417e5f55de7e62fb5a50300e1233a2c9cb5/commentjson-0.9.0.tar.gz
- pypi: https://files.pythonhosted.org/packages/19/e8/6026ed58a64563186a9ee3f29f41261fd1828f527dd93d33b60feca63352/contourpy-1.3.3-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/ea/72/3bbbb5c5da4b982f420000ee4465b46b35d802bfbc73c1f3b772585c8b86/daqp-0.7.2-cp312-cp312-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/4f/c2/a2a2c30c771f53f6ee68778096e7347eeb65f876fafcaf34a6428131931a/daqp-0.8.3-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/33/6b/e0547afaf41bf2c42e52430072fa5658766e3d65bd4b03a563d1b6336f57/distlib-0.4.0-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/02/10/5da547df7a391dcde17f59520a231527b8571e6f46fc8efb02ccb370ab12/docutils-0.22.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/cb/72/7e6881a2c9d0513e65e93f6f8343c5e66b46bee1e1de0d4d39d5fd3d1b7e/dora_rs-0.3.13-cp37-abi3-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/eb/29/005e12a00e4475c30185f4a3998fa82370eba689a8133227ef591924ee37/dora_rs_cli-0.3.13-cp37-abi3-win_amd64.whl
- - pypi: https://files.pythonhosted.org/packages/e7/98/87b5946356095738cb90a6df7b35ff69ac5750f6e783d5fbcc5cb3b6cbd7/etils-1.13.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/f9/0b/de6f54d4a8bedfe8645c41497f3c18d749f0bd3218170c667bf4b81d0cdd/filelock-3.25.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/5a/3d/589663aeeacd59bb2f3e8596bfd3e81cf0fb18d70bb433199041f469771b/etils-1.14.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/a4/a5/842ae8f0c08b61d6484b52f99a03510a3a72d23141942d216ebe81fefbce/filelock-3.25.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/e8/2d/d2a548598be01649e2d46231d151a6c56d10b964d94043a335ae56ea2d92/flatbuffers-25.12.19-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/80/3b/a3e81b71aed5a688e89dfe0e2694b26b78c7d7f39a5ffd8a7d75f54a12a8/fonttools-4.61.1-cp312-cp312-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/28/b1/0c2ab56a16f409c6c8a68816e6af707827ad5d629634691ff60a52879792/fonttools-4.62.1-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/e6/ab/fb21f4c939bb440104cc2b396d3be1d9b7a9fd3c6c2a53d98c45b3d7c954/fsspec-2026.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/6a/09/e21df6aef1e1ffc0c816f0522ddc3f6dcded766c3261813131c78a704470/gitpython-3.1.46-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/bd/e1/6d6816b296a529ac9b897ad228b1e084eb1f92319e96371880eebdc874a6/glfw-2.10.0-py2.py27.py3.py30.py31.py32.py33.py34.py35.py36.py37.py38.py39.py310.py311.py312.py313.py314-none-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/02/eb/6518a1b00488d48995034226846653c382d676cf5f04be62b3c3fae2c6a1/gpiozero-2.0.1-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/40/66/71c1227dff78aaeb942fed29dd5651f2aec166cc7c9aeea3e8b26a539b7d/identify-2.6.17-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/46/33/92ef41c6fad0233e41d3d84ba8e8ad18d1780f1e5d99b3c683e6d7f98b63/identify-2.6.18-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/a4/ed/1f1afb2e9e7f38a545d628f864d562a5ae64fe6f7a10e28ffb9b185b4e89/importlib_resources-6.5.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/8d/48/aa685dbf1024c7bd82bede569e3a85f82c32fd3d79ba5fea578f0159571a/jaraco_context-6.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/fd/c4/813bb09f0985cb21e959f21f2464169eca882656849adf727ac7bb7e1767/jaraco_functools-4.4.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/80/e4/88778c6a23b65224e5088e68fd0924e5bde2196a26e76edb3ea3543fed6a/jax-0.9.1-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/6c/e9/e4dc1f699b894651f3d3ed6622c3c113c21003c2ed832ab00ed62055062b/jaxlib-0.9.1-cp312-cp312-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/17/9c/e897231c880f69e32251d3b1145894d7a04e4342d9bef8d29644c440d11b/jax-0.9.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/2d/57/09d6a9e2a8bc8e3ea79eb8e980f8ea2aea2d9dec3793755f5765657f6e11/jaxlib-0.9.2-cp312-cp312-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/a0/41/85d82b0291db7504da3c2defe35c9a8a5c9803a730f297bd823d11d5fb77/kiwisolver-1.4.9-cp312-cp312-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/ad/cf/0348374369ca588f8fe9c338fae49fa4e16eeb10ffb3d012f23a54578a9e/kiwisolver-1.5.0-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/34/b8/aa7d6cf2d5efdd2fcd85cf39b33584fe12a0f7086ed451176ceb7fb510eb/lark-parser-0.7.8.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/56/33/26ec2e8049eaa2f077bf23a12dc61ca559fbfa7bea0516bf263d657ae275/lgpio-0.2.2.0.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/e2/6d/d56be57340baf2e6f6361386f4c21b8b5e001251c64af954787f8d01ec78/loop_rate_limiters-1.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/aa/5b/bec5aa9bbbb2c946ca2733ef9c4ca91c91b6a24580193e891b5f7dbe8e1e/markupsafe-3.0.3-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/30/4e/c10f171b6e2f44d9e3a2b96efa38b1677439d79c99357600a62cc1e9594e/matplotlib-3.10.8-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/f0/26/d228fe6e9f2060dde7f7db738968bcd603e9340f064351655b5b2652a664/mediapipe-0.10.14-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/99/7f/cfba1085a845ce188259d25c72d3180c4f7431c566125f6b171f2fd62d06/mink-1.1.0-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/f5/f0/0cfadd537c5470378b1b32bd859cf2824972174b51b873c9d95cfd7475a5/ml_dtypes-0.5.4-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/a4/8e/469e5a4a2f5855992e425f3cb33804cc07bf18d48f2db061aec61ce50270/more_itertools-10.8.0-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/02/37/527d83610b878f27c01dd762e0e41aaa62f095c607f0500ac7f724a2c7a5/mujoco-3.5.0-cp312-cp312-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/92/22/38d82f0c34213af53afbbb248b3442943ef48ffbac1e4c909b321e02ac56/mujoco-3.6.0-cp312-cp312-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/fe/75/0b4a10da17a44cf13567d08a9c7632a285297e46253263f1ae119129d10a/narwhals-2.18.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/73/88/1ce287ef8649dc51365b5094bd3713b76454838140a32ab4f8349973883c/nh3-0.3.3-cp38-abi3-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/88/b2/d0896bdcdc8d28a7fc5717c305f1a861c26e18c05047949fb371034d98bd/nodeenv-1.10.0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/92/0f/7ceaaeaacb40567071e94dbf2c9480c0ae453d5bb4f52bea3892c39dc83c/numpy-2.4.2-cp312-cp312-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/d7/7c/f5ee1bf6ed888494978046a809df2882aad35d414b622893322df7286879/numpy-2.4.3-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/ea/2c/e17b8814050427929077639d35a42187a006922600d4840475bdc5f64ebb/numpy_stl-3.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/86/0a/8c35465fb5bd481d4299534d9d1dce8bf71474d4edc569133fb4b721f3bc/onshape_to_robot-1.8.1.tar.gz
- pypi: https://files.pythonhosted.org/packages/d9/98/a03f69ff6fb86a67d584ecc990d85a95e6930b96e3f39ad1f8e019cb8ada/opencv_contrib_python-4.13.0.92-cp37-abi3-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/e9/a5/1be1516390333ff9be3a9cb648c9f33df79d5096e5884b5df71a588af463/opencv_python-4.13.0.92-cp37-abi3-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/23/cd/066e86230ae37ed0be70aae89aabf03ca8d9f39c8aea0dec8029455b5540/opt_einsum-3.4.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/75/08/67cc404b3a966b6df27b38370ddd96b3b023030b572283d035181854aac5/pandas-3.0.1-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/3d/17/688626d192d7261bbbf98846fc98995726bddc2c945344b65bec3a29d731/pillow-12.1.1-cp312-cp312-win_amd64.whl
- - pypi: https://files.pythonhosted.org/packages/48/31/05e764397056194206169869b50cf2fee4dbbbc71b344705b9c0d878d4d8/platformdirs-4.9.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/63/d7/97f7e3a6abb67d8080dd406fd4df842c2be0efaf712d1c899c32a075027c/platformdirs-4.9.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/5d/19/fd3ef348460c80af7bb4669ea7926651d1f95c23ff2df18b9d24bab4f3fa/pre_commit-4.5.1-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/08/35/8b8a8405c564caf4ba835b1fdf554da869954712b26d8f2a98c0e434469b/protobuf-4.25.8-cp310-abi3-win_amd64.whl
@@ -462,15 +762,16 @@ environments:
- pypi: https://files.pythonhosted.org/packages/de/e4/1ba6f44e491c4eece978685230dde56b14d51a0365bc1b774ddaa94d14cd/pyopengl-3.1.10-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/10/bd/c038d7cc38edc1aa5bf91ab8068b63d4308c66c4c8bb3cbba7dfbc049f9c/pyparsing-3.3.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/06/54/82a6e2ef37f0f23dccac604b9585bdcbd0698604feb64807dcb72853693e/python_discovery-1.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/c2/3c/2005227cb951df502412de2fa781f800663cccbef8d90ec6f1b371ac2c0d/python_discovery-1.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/0b/d7/1959b9648791274998a9c3526f6d0ec8fd2233e4d4acce81bbae76b44b2a/python_dotenv-1.2.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/d4/69/31c82567719b34d8f6b41077732589104883771d182a9f4ff3e71430999a/python_utils-3.9.1-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/86/bf/899e81e4cce32febab4fb42bb97dcdf66bc135272882d1987881a4b519e9/pyyaml-6.0.3-cp312-cp312-win_amd64.whl
- - pypi: https://files.pythonhosted.org/packages/76/e6/e6893547135170c23133bac241d5031b0f2002d61675f2166dcbeeb27fbf/qpsolvers-4.8.2-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/48/36/bb438a1ab5270be8a0d294a2734b31ebfabe8b1b41fde08f43966118b7e2/qpsolvers-4.11.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/47/11/4f8b99099215f6e7f2c8ca9756c590e561d1d3093fedb51a960dc609e347/quadprog-0.1.13-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/e1/67/921ec3024056483db83953ae8e48079ad62b92db7880013ca77632921dd0/readme_renderer-44.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl
@@ -480,13 +781,19 @@ environments:
- pypi: https://files.pythonhosted.org/packages/11/cb/60e4be7b67dd8e0adfe73d0d30c11977ca1a2639ce0b852d880852cae4bc/rustypot-1.4.2-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/a2/84/dc08d77fbf3d87d3ee27f6a0c6dcce1de5829a64f2eae85a0ecc1f0daa73/scipy-1.17.1-cp312-cp312-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/c1/d4/59e74daffcb57a07668852eeeb6035af9f32cbfd7a1d2511f17d2fe6a738/smmap-5.0.3-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/c3/0e/002ed7c4c1c2ab69031f78989d3b789fee3a7fba9e586eb2b81688bf4961/sounddevice-0.5.5-py3-none-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/67/87/039b6eeea781598015b538691bc174cc0bf77df9d4d2d3b8bf9245c0de8c/spidev-3.8.tar.gz
+ - pypi: https://files.pythonhosted.org/packages/2c/23/f6c6112a04d28eed765e374435fb1a9198f73e1ec4b4024184f21faeb1ad/tornado-6.5.5-cp39-abi3-win_amd64.whl
- pypi: https://files.pythonhosted.org/packages/61/7a/f38385f1b2d5f54221baf1db3d6371dc6eef8041d95abff39576c694e9d9/transforms3d-0.4.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/3a/7a/882d99539b19b1490cac5d77c67338d126e4122c8276bf640e411650c830/twine-6.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/39/08/aaaad47bc4e9dc8c725e68f9d04865dbcb2052843ff09c97b08904852d84/urllib3-2.6.3-py3-none-any.whl
- - pypi: https://files.pythonhosted.org/packages/e3/1f/74f4d625db838f716a555908d41777b6357bacc141ddef117a01855e5ef9/uv-0.10.7-py3-none-win_amd64.whl
- - pypi: https://files.pythonhosted.org/packages/78/55/896b06bf93a49bec0f4ae2a6f1ed12bd05c8860744ac3a70eda041064e4d/virtualenv-21.1.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/b5/9c/1954092ce17c00a8c299d39f8121e4c8d60f22a69c103f34d8b8dc68444d/uv-0.10.12-py3-none-win_amd64.whl
+ - pypi: https://files.pythonhosted.org/packages/c6/59/7d02447a55b2e55755011a647479041bc92a82e143f96a8195cb33bd0a1c/virtualenv-21.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl
+ - pypi: https://files.pythonhosted.org/packages/ef/5c/2c189d18d495dd0fa3f27ccc60762bbc787eed95b9b0147266e72bb76585/xyzservices-2025.11.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl
packages:
- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda
@@ -521,35 +828,69 @@ packages:
version: 2.4.0
sha256: 88476fd881ca8aab94ffa78b7b6c632a782ab3ba1cd19c9bd423abc4fb4cd28d
requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl
+- conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.15.3-hb03c661_0.conda
+ sha256: d88aa7ae766cf584e180996e92fef2aa7d8e0a0a5ab1d4d49c32390c1b5fff31
+ md5: dcdc58c15961dbf17a0621312b01f5cb
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ license: LGPL-2.1-or-later
+ license_family: GPL
+ purls: []
+ size: 584660
+ timestamp: 1768327524772
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/alsa-lib-1.2.15.3-he30d5cf_0.conda
+ sha256: ea2233e2db9908c2e5f29d3ca420a546b4583253f4f70abb5494cdd676866d42
+ md5: 4a98cbc4ade694520227402ff8880630
+ depends:
+ - libgcc >=14
+ license: LGPL-2.1-or-later
+ license_family: GPL
+ purls: []
+ size: 615729
+ timestamp: 1768327548407
+- pypi: https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl
name: attrs
- version: 25.4.0
- sha256: adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373
+ version: 26.1.0
+ sha256: c647aa4a12dfbad9333ca4e71fe62ddc36f4e63b2d260a37a8b83d2f043ac309
requires_python: '>=3.9'
-- conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45.1-default_hfdba357_101.conda
- sha256: 74341b26a2b9475dc14ba3cf12432fcd10a23af285101883e720216d81d44676
- md5: 83aa53cb3f5fc849851a84d777a60551
+- conda: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.45.1-default_hfdba357_102.conda
+ sha256: 0a7d405064f53b9d91d92515f1460f7906ee5e8523f3cd8973430e81219f4917
+ md5: 8165352fdce2d2025bf884dc0ee85700
depends:
- - ld_impl_linux-64 2.45.1 default_hbd61a6d_101
+ - ld_impl_linux-64 2.45.1 default_hbd61a6d_102
- sysroot_linux-64
- zstd >=1.5.7,<1.6.0a0
license: GPL-3.0-only
- license_family: GPL
purls: []
- size: 3744895
- timestamp: 1770267152681
-- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_101.conda
- sha256: e90ab42a5225dc1eaa6e4e7201cd7b8ed52dad6ec46814be7e5a4039433ae85c
- md5: df6e1dc38cbe5642350fa09d4a1d546b
+ size: 3661455
+ timestamp: 1774197460085
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/binutils_impl_linux-aarch64-2.45.1-default_h5f4c503_102.conda
+ sha256: 7fd4ddde2f0150d015dfa9f2db5f428bd1570078f270e4bd4f116487a52de169
+ md5: 56a04d796d7e3cdc9f8d2e1278e91bff
depends:
- - ld_impl_linux-aarch64 2.45.1 default_h1979696_101
+ - ld_impl_linux-aarch64 2.45.1 default_h1979696_102
- sysroot_linux-aarch64
- zstd >=1.5.7,<1.6.0a0
license: GPL-3.0-only
- license_family: GPL
purls: []
- size: 4741684
- timestamp: 1770267224406
+ size: 4683754
+ timestamp: 1774197535605
+- pypi: https://files.pythonhosted.org/packages/47/0b/bdf449df87be3f07b23091ceafee8c3ef569cf6d2fb7edec6e3b12b3faa4/bokeh-3.9.0-py3-none-any.whl
+ name: bokeh
+ version: 3.9.0
+ sha256: b252bfb16a505f0e0c57d532d0df308ae1667235bafc622aa9441fe9e7c5ce4a
+ requires_dist:
+ - jinja2>=2.9
+ - contourpy>=1.2
+ - narwhals>=1.13
+ - numpy>=1.16
+ - packaging>=16.8
+ - pillow>=7.1.0
+ - pyyaml>=3.10
+ - tornado>=6.2 ; sys_platform != 'emscripten'
+ - xyzservices>=2021.9.1
+ requires_python: '>=3.10'
- pypi: https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl
name: build
version: 1.4.0
@@ -626,6 +967,100 @@ packages:
purls: []
size: 147413
timestamp: 1772006283803
+- conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.4-he90730b_1.conda
+ sha256: 06525fa0c4e4f56e771a3b986d0fdf0f0fc5a3270830ee47e127a5105bde1b9a
+ md5: bb6c4808bfa69d6f7f6b07e5846ced37
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - fontconfig >=2.15.0,<3.0a0
+ - fonts-conda-ecosystem
+ - icu >=78.1,<79.0a0
+ - libexpat >=2.7.3,<3.0a0
+ - libfreetype >=2.14.1
+ - libfreetype6 >=2.14.1
+ - libgcc >=14
+ - libglib >=2.86.3,<3.0a0
+ - libpng >=1.6.53,<1.7.0a0
+ - libstdcxx >=14
+ - libxcb >=1.17.0,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - pixman >=0.46.4,<1.0a0
+ - xorg-libice >=1.1.2,<2.0a0
+ - xorg-libsm >=1.2.6,<2.0a0
+ - xorg-libx11 >=1.8.12,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxrender >=0.9.12,<0.10.0a0
+ license: LGPL-2.1-only or MPL-1.1
+ purls: []
+ size: 989514
+ timestamp: 1766415934926
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cairo-1.18.4-h0b6afd8_1.conda
+ sha256: 675db823f3d6fb6bf747fab3b0170ba99b269a07cf6df1e49fff2f9972be9cd1
+ md5: 043c13ed3a18396994be9b4fab6572ad
+ depends:
+ - fontconfig >=2.15.0,<3.0a0
+ - fonts-conda-ecosystem
+ - icu >=78.1,<79.0a0
+ - libexpat >=2.7.3,<3.0a0
+ - libfreetype >=2.14.1
+ - libfreetype6 >=2.14.1
+ - libgcc >=14
+ - libglib >=2.86.3,<3.0a0
+ - libpng >=1.6.53,<1.7.0a0
+ - libstdcxx >=14
+ - libxcb >=1.17.0,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - pixman >=0.46.4,<1.0a0
+ - xorg-libice >=1.1.2,<2.0a0
+ - xorg-libsm >=1.2.6,<2.0a0
+ - xorg-libx11 >=1.8.12,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxrender >=0.9.12,<0.10.0a0
+ license: LGPL-2.1-only or MPL-1.1
+ purls: []
+ size: 927045
+ timestamp: 1766416003626
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.4-he0f2337_1.conda
+ sha256: cde9b79ee206fe3ba6ca2dc5906593fb7a1350515f85b2a1135a4ce8ec1539e3
+ md5: 36200ecfbbfbcb82063c87725434161f
+ depends:
+ - __osx >=11.0
+ - fontconfig >=2.15.0,<3.0a0
+ - fonts-conda-ecosystem
+ - icu >=78.1,<79.0a0
+ - libcxx >=19
+ - libexpat >=2.7.3,<3.0a0
+ - libfreetype >=2.14.1
+ - libfreetype6 >=2.14.1
+ - libglib >=2.86.3,<3.0a0
+ - libpng >=1.6.53,<1.7.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - pixman >=0.46.4,<1.0a0
+ license: LGPL-2.1-only or MPL-1.1
+ purls: []
+ size: 900035
+ timestamp: 1766416416791
+- conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.4-h477c42c_1.conda
+ sha256: 9ee4ad706c5d3e1c6c469785d60e3c2b263eec569be0eac7be33fbaef978bccc
+ md5: 52ea1beba35b69852d210242dd20f97d
+ depends:
+ - fontconfig >=2.15.0,<3.0a0
+ - fonts-conda-ecosystem
+ - icu >=78.1,<79.0a0
+ - libexpat >=2.7.3,<3.0a0
+ - libfreetype >=2.14.1
+ - libfreetype6 >=2.14.1
+ - libglib >=2.86.3,<3.0a0
+ - libpng >=1.6.53,<1.7.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - pixman >=0.46.4,<1.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: LGPL-2.1-only or MPL-1.1
+ purls: []
+ size: 1537783
+ timestamp: 1766416059188
- pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
name: certifi
version: 2026.2.25
@@ -664,31 +1099,42 @@ packages:
version: 3.5.0
sha256: a8dc6b26ad22ff227d2634a65cb388215ce6cc96bbcc5cfde7641ae87e8dacc0
requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/3d/2d/1e5ed9dd3b3803994c155cd9aacb60c82c331bad84daf75bcb9c91b3295e/charset_normalizer-3.4.4-cp312-cp312-win_amd64.whl
+- pypi: https://files.pythonhosted.org/packages/4e/ef/79a463eb0fff7f96afa04c1d4c51f8fc85426f918db467854bfb6a569ce3/charset_normalizer-3.4.6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
name: charset-normalizer
- version: 3.4.4
- sha256: a79cfe37875f822425b89a82333404539ae63dbdddf97f84dcbc3d339aae9525
+ version: 3.4.6
+ sha256: 0e28d62a8fc7a1fa411c43bd65e346f3bce9716dc51b897fbe930c5987b402d5
requires_python: '>=3.7'
-- pypi: https://files.pythonhosted.org/packages/9d/6a/04130023fef2a0d9c62d0bae2649b69f7b7d8d24ea5536feef50551029df/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
+- pypi: https://files.pythonhosted.org/packages/a8/37/bdca6613c2e3c58c7421891d80cc3efa1d32e882f7c4a7ee6039c3fc951a/charset_normalizer-3.4.6-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
name: charset-normalizer
- version: 3.4.4
- sha256: b5b290ccc2a263e8d185130284f8501e3e36c5e02750fc6b6bdeb2e9e96f1e25
+ version: 3.4.6
+ sha256: a4ea868bc28109052790eb2b52a9ab33f3aa7adc02f96673526ff47419490e21
requires_python: '>=3.7'
-- pypi: https://files.pythonhosted.org/packages/c0/10/d20b513afe03acc89ec33948320a5544d31f21b05368436d580dec4e234d/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
+- pypi: https://files.pythonhosted.org/packages/ab/20/0567efb3a8fd481b8f34f739ebddc098ed062a59fed41a8d193a61939e8f/charset_normalizer-3.4.6-cp312-cp312-win_amd64.whl
name: charset-normalizer
- version: 3.4.4
- sha256: 11d694519d7f29d6cd09f6ac70028dba10f92f6cdd059096db198c283794ac86
+ version: 3.4.6
+ sha256: c8ae56368f8cc97c7e40a7ee18e1cedaf8e780cd8bc5ed5ac8b81f238614facb
requires_python: '>=3.7'
-- pypi: https://files.pythonhosted.org/packages/f3/85/1637cd4af66fa687396e757dec650f28025f2a2f5a5531a3208dc0ec43f2/charset_normalizer-3.4.4-cp312-cp312-macosx_10_13_universal2.whl
+- pypi: https://files.pythonhosted.org/packages/e5/62/c0815c992c9545347aeea7859b50dc9044d147e2e7278329c6e02ac9a616/charset_normalizer-3.4.6-cp312-cp312-macosx_10_13_universal2.whl
name: charset-normalizer
- version: 3.4.4
- sha256: 0a98e6759f854bd25a58a73fa88833fba3b7c491169f86ce1180c948ab3fd394
+ version: 3.4.6
+ sha256: 2ef7fedc7a6ecbe99969cd09632516738a97eeb8bd7258bf8a0f23114c057dab
requires_python: '>=3.7'
- pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl
name: colorama
version: 0.4.6
sha256: 4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6
requires_python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*'
+- pypi: https://files.pythonhosted.org/packages/7e/a6/ddd0f130e44a7593ac6c55aa93f6e256d2270fd88e9d1b64ab7f22ab8fde/colorzero-2.0-py2.py3-none-any.whl
+ name: colorzero
+ version: '2.0'
+ sha256: 0e60d743a6b8071498a56465f7719c96a5e92928f858bab1be2a0d606c9aa0f8
+ requires_dist:
+ - setuptools
+ - pkginfo ; extra == 'doc'
+ - sphinx ; extra == 'doc'
+ - sphinx-rtd-theme ; extra == 'doc'
+ - pytest ; extra == 'test'
+ - pytest-cov ; extra == 'test'
- pypi: https://files.pythonhosted.org/packages/c0/76/c4aa9e408dbacee3f4de8e6c5417e5f55de7e62fb5a50300e1233a2c9cb5/commentjson-0.9.0.tar.gz
name: commentjson
version: 0.9.0
@@ -868,22 +1314,94 @@ packages:
- pytest-cov ; extra == 'tests'
- pytest-xdist ; extra == 'tests'
requires_python: '>=3.8'
-- pypi: https://files.pythonhosted.org/packages/2f/2a/b0a896f1aa8618fae09acf508f0bb0192022383dbf73bea76143345167c8/daqp-0.7.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
+- conda: https://conda.anaconda.org/conda-forge/linux-64/cyrus-sasl-2.1.28-hac629b4_1.conda
+ sha256: 7684da83306bb69686c0506fb09aa7074e1a55ade50c3a879e4e5df6eebb1009
+ md5: af491aae930edc096b58466c51c4126c
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - libgcc >=13
+ - libntlm >=1.8,<2.0a0
+ - libstdcxx >=13
+ - libxcrypt >=4.4.36
+ - openssl >=3.5.5,<4.0a0
+ license: BSD-3-Clause-Attribution
+ license_family: BSD
+ purls: []
+ size: 210103
+ timestamp: 1771943128249
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/cyrus-sasl-2.1.28-h6598af7_1.conda
+ sha256: 0606296a3b0cc757229dd97db8c6dc0f77e54f975f89ae63c36fb01e2a2abe61
+ md5: f4fbf4001970e3e58984281a12c99969
+ depends:
+ - krb5 >=1.22.2,<1.23.0a0
+ - libgcc >=13
+ - libntlm
+ - libstdcxx >=13
+ - libxcrypt >=4.4.36
+ - openssl >=3.5.5,<4.0a0
+ license: BSD-3-Clause-Attribution
+ license_family: BSD
+ purls: []
+ size: 224450
+ timestamp: 1771943147365
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/cyrus-sasl-2.1.28-hb961e35_1.conda
+ sha256: 2bb1a8cfc2534b05718c21ffacd806c5c3d5289c9e8be12270d9fc5606c859bf
+ md5: 784c64a42b083798c5acd2373df5b825
+ depends:
+ - __osx >=11.0
+ - krb5 >=1.22.2,<1.23.0a0
+ - libcxx >=19
+ - libntlm >=1.8,<2.0a0
+ - openssl >=3.5.5,<4.0a0
+ license: BSD-3-Clause-Attribution
+ license_family: BSD
+ purls: []
+ size: 194397
+ timestamp: 1771943557428
+- pypi: https://files.pythonhosted.org/packages/2e/32/0102e237dbcd47224fc638905354fcecb48097763b291e43a9e6a03d706b/daqp-0.8.3-cp312-cp312-macosx_11_0_arm64.whl
name: daqp
- version: 0.7.2
- sha256: 5bc97b1f8b9ecd3bc1e5b8c0edc839314e6fd9e13061637a664d003e9b7ef7db
-- pypi: https://files.pythonhosted.org/packages/97/84/f8a89433fd182a850aa8db9c0cfffc9d2ebf7347b34eb5e203c8488459a2/daqp-0.7.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
+ version: 0.8.3
+ sha256: 300a44fb1ce218ba19e0b5f753b800cc27f417447ec64332132b7c86a24bea88
+- pypi: https://files.pythonhosted.org/packages/4f/c2/a2a2c30c771f53f6ee68778096e7347eeb65f876fafcaf34a6428131931a/daqp-0.8.3-cp312-cp312-win_amd64.whl
name: daqp
- version: 0.7.2
- sha256: 7d27e010ef42405f5979a93ca75c2c2f323a2b34247aacb4328fb446c61058d3
-- pypi: https://files.pythonhosted.org/packages/9e/08/041461120e16bab05ea163afdb88fab452aefa9cbeadb9b91b3ec4f23635/daqp-0.7.2-cp312-cp312-macosx_11_0_arm64.whl
+ version: 0.8.3
+ sha256: 0bca581f25ea8c074190412acd6db71125e8a23aa8227df09a15ecde5eef8246
+- pypi: https://files.pythonhosted.org/packages/95/89/92d46052584e7977630583cf79ffdd26a377681e45d0ae5e6d5ef25dcc05/daqp-0.8.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
name: daqp
- version: 0.7.2
- sha256: 9da7a69e89b5d26302cbfb049f132981fe1c2f2a59a788e46a7b53df242b4828
-- pypi: https://files.pythonhosted.org/packages/ea/72/3bbbb5c5da4b982f420000ee4465b46b35d802bfbc73c1f3b772585c8b86/daqp-0.7.2-cp312-cp312-win_amd64.whl
+ version: 0.8.3
+ sha256: c84ac7bb4e2b7403126eedefa2a51d4f46d10f9a2eb3bf93d77972bf5e35e8ad
+- pypi: https://files.pythonhosted.org/packages/e3/8c/1f034921f93cc6d678c05bd496da7667d03be3ff01aa37b150eda6ebb006/daqp-0.8.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
name: daqp
- version: 0.7.2
- sha256: 49d66d0c92f309eda5acbbbb3b970f2ff90ec93e0f7450ced75fd2df83c12e3b
+ version: 0.8.3
+ sha256: 7be682bdff020f5996e2a7def47da5d56226d2200db4528420c30331305a1fac
+- conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.16.2-h24cb091_1.conda
+ sha256: 8bb557af1b2b7983cf56292336a1a1853f26555d9c6cecf1e5b2b96838c9da87
+ md5: ce96f2f470d39bd96ce03945af92e280
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - libzlib >=1.3.1,<2.0a0
+ - libglib >=2.86.2,<3.0a0
+ - libexpat >=2.7.3,<3.0a0
+ license: AFL-2.1 OR GPL-2.0-or-later
+ purls: []
+ size: 447649
+ timestamp: 1764536047944
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/dbus-1.16.2-h70963c4_1.conda
+ sha256: 3af801577431af47c0b72a82bb93c654f03072dece0a2a6f92df8a6802f52a22
+ md5: a4b6b82427d15f0489cef0df2d82f926
+ depends:
+ - libstdcxx >=14
+ - libgcc >=14
+ - libglib >=2.86.2,<3.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - libexpat >=2.7.3,<3.0a0
+ license: AFL-2.1 OR GPL-2.0-or-later
+ purls: []
+ size: 480416
+ timestamp: 1764536098891
- pypi: https://files.pythonhosted.org/packages/33/6b/e0547afaf41bf2c42e52430072fa5658766e3d65bd4b03a563d1b6336f57/distlib-0.4.0-py2.py3-none-any.whl
name: distlib
version: 0.4.0
@@ -957,10 +1475,56 @@ packages:
- dora-rs>=0.3.9
- uv
requires_python: '>=3.8'
-- pypi: https://files.pythonhosted.org/packages/e7/98/87b5946356095738cb90a6df7b35ff69ac5750f6e783d5fbcc5cb3b6cbd7/etils-1.13.0-py3-none-any.whl
+- conda: https://conda.anaconda.org/conda-forge/linux-64/double-conversion-3.4.0-hecca717_0.conda
+ sha256: 40cdd1b048444d3235069d75f9c8e1f286db567f6278a93b4f024e5642cfaecc
+ md5: dbe3ec0f120af456b3477743ffd99b74
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libstdcxx >=14
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 71809
+ timestamp: 1765193127016
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/double-conversion-3.4.0-hfae3067_0.conda
+ sha256: a636dfd17adc2a859cbdfce97e449e338b02a9f099c6dc0941c9f26bf448cca9
+ md5: 9fd794eaf983eabf975ead524540b4be
+ depends:
+ - libgcc >=14
+ - libstdcxx >=14
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 71905
+ timestamp: 1765194538141
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/double-conversion-3.4.0-hf6b4638_0.conda
+ sha256: 777f73f137c56f390e14d03bae9538f66e4b42025c5fe304531537aca9261060
+ md5: 5c2db157899dc09a20dcc87638066120
+ depends:
+ - __osx >=11.0
+ - libcxx >=19
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 64561
+ timestamp: 1773480255077
+- conda: https://conda.anaconda.org/conda-forge/win-64/double-conversion-3.4.0-hac47afa_0.conda
+ sha256: 09e30a170e0da3e9847d449b594b5e55e6ae2852edd3a3680e05753a5e015605
+ md5: 3d3caf4ccc6415023640af4b1b33060a
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 70943
+ timestamp: 1765193243911
+- pypi: https://files.pythonhosted.org/packages/5a/3d/589663aeeacd59bb2f3e8596bfd3e81cf0fb18d70bb433199041f469771b/etils-1.14.0-py3-none-any.whl
name: etils
- version: 1.13.0
- sha256: d9cd4f40fbe77ad6613b7348a18132cc511237b6c076dbb89105c0b520a4c6bb
+ version: 1.14.0
+ sha256: b5df7341f54dbe1405a4450b2741207b4a8c279780402b45f87202b94dfc52b4
requires_dist:
- etils[array-types] ; extra == 'all'
- etils[eapp] ; extra == 'all'
@@ -1006,7 +1570,6 @@ packages:
- einops ; extra == 'enp'
- etils[epy] ; extra == 'enp'
- fsspec ; extra == 'epath'
- - importlib-resources ; extra == 'epath'
- typing-extensions ; extra == 'epath'
- zipp ; extra == 'epath'
- etils[epy] ; extra == 'epath'
@@ -1029,20 +1592,137 @@ packages:
- tensorflow ; extra == 'etree-tf'
- etils[etree] ; extra == 'etree-tf'
- etils[ecolab] ; extra == 'lazy-imports'
- requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/f9/0b/de6f54d4a8bedfe8645c41497f3c18d749f0bd3218170c667bf4b81d0cdd/filelock-3.25.0-py3-none-any.whl
+ requires_python: '>=3.11'
+- pypi: https://files.pythonhosted.org/packages/a4/a5/842ae8f0c08b61d6484b52f99a03510a3a72d23141942d216ebe81fefbce/filelock-3.25.2-py3-none-any.whl
name: filelock
- version: 3.25.0
- sha256: 5ccf8069f7948f494968fc0713c10e5c182a9c9d9eef3a636307a20c2490f047
+ version: 3.25.2
+ sha256: ca8afb0da15f229774c9ad1b455ed96e85a81373065fb10446672f64444ddf70
requires_python: '>=3.10'
- pypi: https://files.pythonhosted.org/packages/e8/2d/d2a548598be01649e2d46231d151a6c56d10b964d94043a335ae56ea2d92/flatbuffers-25.12.19-py2.py3-none-any.whl
name: flatbuffers
version: 25.12.19
sha256: 7634f50c427838bb021c2d66a3d1168e9d199b0607e6329399f04846d42e20b4
-- pypi: https://files.pythonhosted.org/packages/6c/44/f3aeac0fa98e7ad527f479e161aca6c3a1e47bb6996b053d45226fe37bf2/fonttools-4.61.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
+- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2
+ sha256: 58d7f40d2940dd0a8aa28651239adbf5613254df0f75789919c4e6762054403b
+ md5: 0c96522c6bdaed4b1566d11387caaf45
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 397370
+ timestamp: 1566932522327
+- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2
+ sha256: c52a29fdac682c20d252facc50f01e7c2e7ceac52aa9817aaf0bb83f7559ec5c
+ md5: 34893075a5c9e55cdafac56607368fc6
+ license: OFL-1.1
+ license_family: Other
+ purls: []
+ size: 96530
+ timestamp: 1620479909603
+- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2
+ sha256: 00925c8c055a2275614b4d983e1df637245e19058d79fc7dd1a93b8d9fb4b139
+ md5: 4d59c254e01d9cde7957100457e2d5fb
+ license: OFL-1.1
+ license_family: Other
+ purls: []
+ size: 700814
+ timestamp: 1620479612257
+- conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_3.conda
+ sha256: 2821ec1dc454bd8b9a31d0ed22a7ce22422c0aef163c59f49dfdf915d0f0ca14
+ md5: 49023d73832ef61042f6a237cb2687e7
+ license: LicenseRef-Ubuntu-Font-Licence-Version-1.0
+ license_family: Other
+ purls: []
+ size: 1620504
+ timestamp: 1727511233259
+- conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.17.1-h27c8c51_0.conda
+ sha256: aa4a44dba97151221100a637c7f4bde619567afade9c0265f8e1c8eed8d7bd8c
+ md5: 867127763fbe935bab59815b6e0b7b5c
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libexpat >=2.7.4,<3.0a0
+ - libfreetype >=2.14.1
+ - libfreetype6 >=2.14.1
+ - libgcc >=14
+ - libuuid >=2.41.3,<3.0a0
+ - libzlib >=1.3.1,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 270705
+ timestamp: 1771382710863
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/fontconfig-2.17.1-hba86a56_0.conda
+ sha256: 835aff8615dd8d8fff377679710ce81b8a2c47b6404e21a92fb349fda193a15c
+ md5: 0fed1ff55f4938a65907f3ecf62609db
+ depends:
+ - libexpat >=2.7.4,<3.0a0
+ - libfreetype >=2.14.1
+ - libfreetype6 >=2.14.1
+ - libgcc >=14
+ - libuuid >=2.41.3,<3.0a0
+ - libzlib >=1.3.1,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 279044
+ timestamp: 1771382728182
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.17.1-h2b252f5_0.conda
+ sha256: 851e9c778bfc54645dcab7038c0383445cbebf16f6bb2d3f62ce422b1605385a
+ md5: d06ae1a11b46cc4c74177ecd28de7c7a
+ depends:
+ - __osx >=11.0
+ - libexpat >=2.7.4,<3.0a0
+ - libfreetype >=2.14.1
+ - libfreetype6 >=2.14.1
+ - libzlib >=1.3.1,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 237308
+ timestamp: 1771382999247
+- conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.17.1-hd47e2ca_0.conda
+ sha256: ff2db9d305711854de430f946dc59bd40167940a1de38db29c5a78659f219d9c
+ md5: a0b1b87e871011ca3b783bbf410bc39f
+ depends:
+ - libexpat >=2.7.4,<3.0a0
+ - libfreetype >=2.14.1
+ - libfreetype6 >=2.14.1
+ - libiconv >=1.18,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 195332
+ timestamp: 1771382820659
+- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2
+ sha256: a997f2f1921bb9c9d76e6fa2f6b408b7fa549edd349a77639c9fe7a23ea93e61
+ md5: fee5683a3f04bd15cbd8318b096a27ab
+ depends:
+ - fonts-conda-forge
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 3667
+ timestamp: 1566974674465
+- conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-hc364b38_1.conda
+ sha256: 54eea8469786bc2291cc40bca5f46438d3e062a399e8f53f013b6a9f50e98333
+ md5: a7970cd949a077b7cb9696379d338681
+ depends:
+ - font-ttf-ubuntu
+ - font-ttf-inconsolata
+ - font-ttf-dejavu-sans-mono
+ - font-ttf-source-code-pro
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 4059
+ timestamp: 1762351264405
+- pypi: https://files.pythonhosted.org/packages/28/b1/0c2ab56a16f409c6c8a68816e6af707827ad5d629634691ff60a52879792/fonttools-4.62.1-cp312-cp312-win_amd64.whl
name: fonttools
- version: 4.61.1
- sha256: 15acc09befd16a0fb8a8f62bc147e1a82817542d72184acca9ce6e0aeda9fa6d
+ version: 4.62.1
+ sha256: 9e7863e10b3de72376280b515d35b14f5eeed639d1aa7824f4cf06779ec65e42
requires_dist:
- lxml>=4.0 ; extra == 'lxml'
- brotli>=1.0.1 ; platform_python_implementation == 'CPython' and extra == 'woff'
@@ -1073,10 +1753,10 @@ packages:
- skia-pathops>=0.5.0 ; extra == 'all'
- uharfbuzz>=0.45.0 ; extra == 'all'
requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/6f/16/7decaa24a1bd3a70c607b2e29f0adc6159f36a7e40eaba59846414765fd4/fonttools-4.61.1-cp312-cp312-macosx_10_13_universal2.whl
+- pypi: https://files.pythonhosted.org/packages/47/d4/dbacced3953544b9a93088cc10ef2b596d348c983d5c67a404fa41ec51ba/fonttools-4.62.1-cp312-cp312-macosx_10_13_universal2.whl
name: fonttools
- version: 4.61.1
- sha256: f3cb4a569029b9f291f88aafc927dd53683757e640081ca8c412781ea144565e
+ version: 4.62.1
+ sha256: 90365821debbd7db678809c7491ca4acd1e0779b9624cdc6ddaf1f31992bf974
requires_dist:
- lxml>=4.0 ; extra == 'lxml'
- brotli>=1.0.1 ; platform_python_implementation == 'CPython' and extra == 'woff'
@@ -1107,10 +1787,10 @@ packages:
- skia-pathops>=0.5.0 ; extra == 'all'
- uharfbuzz>=0.45.0 ; extra == 'all'
requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/80/3b/a3e81b71aed5a688e89dfe0e2694b26b78c7d7f39a5ffd8a7d75f54a12a8/fonttools-4.61.1-cp312-cp312-win_amd64.whl
+- pypi: https://files.pythonhosted.org/packages/69/64/f19a9e3911968c37e1e620e14dfc5778299e1474f72f4e57c5ec771d9489/fonttools-4.62.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
name: fonttools
- version: 4.61.1
- sha256: 497c31ce314219888c0e2fce5ad9178ca83fe5230b01a5006726cdf3ac9f24d9
+ version: 4.62.1
+ sha256: 9c125ffa00c3d9003cdaaf7f2c79e6e535628093e14b5de1dccb08859b680936
requires_dist:
- lxml>=4.0 ; extra == 'lxml'
- brotli>=1.0.1 ; platform_python_implementation == 'CPython' and extra == 'woff'
@@ -1141,10 +1821,10 @@ packages:
- skia-pathops>=0.5.0 ; extra == 'all'
- uharfbuzz>=0.45.0 ; extra == 'all'
requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/b7/37/82dbef0f6342eb01f54bca073ac1498433d6ce71e50c3c3282b655733b31/fonttools-4.61.1-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
+- pypi: https://files.pythonhosted.org/packages/9b/8a/99c8b3c3888c5c474c08dbfd7c8899786de9604b727fcefb055b42c84bba/fonttools-4.62.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
name: fonttools
- version: 4.61.1
- sha256: 10d88e55330e092940584774ee5e8a6971b01fc2f4d3466a1d6c158230880796
+ version: 4.62.1
+ sha256: 149f7d84afca659d1a97e39a4778794a2f83bf344c5ee5134e09995086cc2392
requires_dist:
- lxml>=4.0 ; extra == 'lxml'
- brotli>=1.0.1 ; platform_python_implementation == 'CPython' and extra == 'woff'
@@ -1317,6 +1997,35 @@ packages:
purls: []
size: 73516504
timestamp: 1771378256368
+- pypi: https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl
+ name: gitdb
+ version: 4.0.12
+ sha256: 67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf
+ requires_dist:
+ - smmap>=3.0.1,<6
+ requires_python: '>=3.7'
+- pypi: https://files.pythonhosted.org/packages/6a/09/e21df6aef1e1ffc0c816f0522ddc3f6dcded766c3261813131c78a704470/gitpython-3.1.46-py3-none-any.whl
+ name: gitpython
+ version: 3.1.46
+ sha256: 79812ed143d9d25b6d176a10bb511de0f9c67b1fa641d82097b0ab90398a2058
+ requires_dist:
+ - gitdb>=4.0.1,<5
+ - typing-extensions>=3.10.0.2 ; python_full_version < '3.10'
+ - coverage[toml] ; extra == 'test'
+ - ddt>=1.1.1,!=1.4.3 ; extra == 'test'
+ - mock ; python_full_version < '3.8' and extra == 'test'
+ - mypy==1.18.2 ; python_full_version >= '3.9' and extra == 'test'
+ - pre-commit ; extra == 'test'
+ - pytest>=7.3.1 ; extra == 'test'
+ - pytest-cov ; extra == 'test'
+ - pytest-instafail ; extra == 'test'
+ - pytest-mock ; extra == 'test'
+ - pytest-sugar ; extra == 'test'
+ - typing-extensions ; python_full_version < '3.11' and extra == 'test'
+ - sphinx>=7.1.2,<7.2 ; extra == 'doc'
+ - sphinx-rtd-theme ; extra == 'doc'
+ - sphinx-autodoc-typehints ; extra == 'doc'
+ requires_python: '>=3.7'
- pypi: https://files.pythonhosted.org/packages/5a/3f/efeb7c6801c46e11bd666a5180f0d615f74f72264212f74f39586c6fda9d/glfw-2.10.0-py2.py27.py3.py30.py31.py32.py33.py34.py35.py36.py37.py38.py39.py310.py311.py312.py313.py314-none-manylinux_2_28_x86_64.whl
name: glfw
version: 2.10.0
@@ -1341,9 +2050,146 @@ packages:
sha256: 27c9e9a2d5e1dc3c9e3996171d844d9df9a5a101e797cb94cce217b7afcf8fd9
requires_dist:
- glfw-preview ; extra == 'preview'
-- conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.2-h33c6efd_0.conda
- sha256: 142a722072fa96cf16ff98eaaf641f54ab84744af81754c292cb81e0881c0329
- md5: 186a18e3ba246eccfc7cff00cd19a870
+- pypi: https://files.pythonhosted.org/packages/02/eb/6518a1b00488d48995034226846653c382d676cf5f04be62b3c3fae2c6a1/gpiozero-2.0.1-py3-none-any.whl
+ name: gpiozero
+ version: 2.0.1
+ sha256: 8f621de357171d574c0b7ea0e358cb66e560818a47b0eeedf41ce1cdbd20c70b
+ requires_dist:
+ - colorzero
+ - importlib-metadata~=4.6 ; python_full_version < '3.10'
+ - importlib-resources~=5.0 ; python_full_version < '3.10'
+ - sphinx-rtd-theme>=1.0 ; extra == 'doc'
+ - sphinx>=4.0 ; extra == 'doc'
+ - pytest ; extra == 'test'
+ - pytest-cov ; extra == 'test'
+ requires_python: '>=3.9'
+- conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.14-hecca717_2.conda
+ sha256: 25ba37da5c39697a77fce2c9a15e48cf0a84f1464ad2aafbe53d8357a9f6cc8c
+ md5: 2cd94587f3a401ae05e03a6caf09539d
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libstdcxx >=14
+ license: LGPL-2.0-or-later
+ license_family: LGPL
+ purls: []
+ size: 99596
+ timestamp: 1755102025473
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/graphite2-1.3.14-hfae3067_2.conda
+ sha256: c9b1781fe329e0b77c5addd741e58600f50bef39321cae75eba72f2f381374b7
+ md5: 4aa540e9541cc9d6581ab23ff2043f13
+ depends:
+ - libgcc >=14
+ - libstdcxx >=14
+ license: LGPL-2.0-or-later
+ license_family: LGPL
+ purls: []
+ size: 102400
+ timestamp: 1755102000043
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/graphite2-1.3.14-hec049ff_2.conda
+ sha256: c507ae9989dbea7024aa6feaebb16cbf271faac67ac3f0342ef1ab747c20475d
+ md5: 0fc46fee39e88bbcf5835f71a9d9a209
+ depends:
+ - __osx >=11.0
+ - libcxx >=19
+ license: LGPL-2.0-or-later
+ license_family: LGPL
+ purls: []
+ size: 81202
+ timestamp: 1755102333712
+- conda: https://conda.anaconda.org/conda-forge/win-64/graphite2-1.3.14-hac47afa_2.conda
+ sha256: 5f1714b07252f885a62521b625898326ade6ca25fbc20727cfe9a88f68a54bfd
+ md5: b785694dd3ec77a011ccf0c24725382b
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: LGPL-2.0-or-later
+ license_family: LGPL
+ purls: []
+ size: 96336
+ timestamp: 1755102441729
+- conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-13.2.0-h6083320_0.conda
+ sha256: 2b6958ab30b2ce330b0166e51fc5f20f761f71e09510d62f03f9729882707497
+ md5: 71c2c966e17a65b08b995f571310fb9f
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - cairo >=1.18.4,<2.0a0
+ - graphite2 >=1.3.14,<2.0a0
+ - icu >=78.3,<79.0a0
+ - libexpat >=2.7.4,<3.0a0
+ - libfreetype >=2.14.2
+ - libfreetype6 >=2.14.2
+ - libgcc >=14
+ - libglib >=2.86.4,<3.0a0
+ - libstdcxx >=14
+ - libzlib >=1.3.1,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 2342310
+ timestamp: 1773909324136
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/harfbuzz-13.2.0-h1134a53_0.conda
+ sha256: 59614c9bba26720d4298a887a51733b05006c836ddace0469549c1dcce561652
+ md5: 68508785d05856e4a053bf3d152fba95
+ depends:
+ - cairo >=1.18.4,<2.0a0
+ - graphite2 >=1.3.14,<2.0a0
+ - icu >=78.3,<79.0a0
+ - libexpat >=2.7.4,<3.0a0
+ - libfreetype >=2.14.2
+ - libfreetype6 >=2.14.2
+ - libgcc >=14
+ - libglib >=2.86.4,<3.0a0
+ - libstdcxx >=14
+ - libzlib >=1.3.1,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 2404379
+ timestamp: 1773914163008
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/harfbuzz-13.2.0-h3103d1b_0.conda
+ sha256: d46c0486f4b6c9a7d6765f5bb816c7099a90a84c2edc043577d99ac7693f0c36
+ md5: f1f2021c8a0eb0f4e73f7644fc4a2e52
+ depends:
+ - __osx >=11.0
+ - cairo >=1.18.4,<2.0a0
+ - graphite2 >=1.3.14,<2.0a0
+ - icu >=78.3,<79.0a0
+ - libcxx >=19
+ - libexpat >=2.7.4,<3.0a0
+ - libfreetype >=2.14.2
+ - libfreetype6 >=2.14.2
+ - libglib >=2.86.4,<3.0a0
+ - libzlib >=1.3.1,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 1858910
+ timestamp: 1773909964919
+- conda: https://conda.anaconda.org/conda-forge/win-64/harfbuzz-13.2.0-h5a1b470_0.conda
+ sha256: 78a35bf2c350a83d3f40b3d934e2041a292cc8938b57baca12847475426b4dff
+ md5: 92901fd2086b94a243abc5da33cfa87d
+ depends:
+ - cairo >=1.18.4,<2.0a0
+ - graphite2 >=1.3.14,<2.0a0
+ - icu >=78.3,<79.0a0
+ - libexpat >=2.7.4,<3.0a0
+ - libfreetype >=2.14.2
+ - libfreetype6 >=2.14.2
+ - libglib >=2.86.4,<3.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 1288774
+ timestamp: 1773909586544
+- conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda
+ sha256: fbf86c4a59c2ed05bbffb2ba25c7ed94f6185ec30ecb691615d42342baa1a16a
+ md5: c80d8a3b84358cb967fa81e7075fbc8a
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
@@ -1351,29 +2197,41 @@ packages:
license: MIT
license_family: MIT
purls: []
- size: 12728445
- timestamp: 1767969922681
-- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.2-hcab7f73_0.conda
- sha256: dcbaa3042084ac58685e3ef4547e4c4be9d37dc52b92ea18581288af95e48b52
- md5: 998ee7d53e32f7ab57fc35707285527e
+ size: 12723451
+ timestamp: 1773822285671
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/icu-78.3-hcab7f73_0.conda
+ sha256: 49ba6aed2c6b482bb0ba41078057555d29764299bc947b990708617712ef6406
+ md5: 546da38c2fa9efacf203e2ad3f987c59
depends:
- libgcc >=14
- libstdcxx >=14
license: MIT
license_family: MIT
purls: []
- size: 12851689
- timestamp: 1772208964788
-- conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.2-hef89b57_0.conda
- sha256: 24bc62335106c30fecbcc1dba62c5eba06d18b90ea1061abd111af7b9c89c2d7
- md5: 114e6bfe7c5ad2525eb3597acdbf2300
+ size: 12837286
+ timestamp: 1773822650615
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-78.3-hef89b57_0.conda
+ sha256: 3a7907a17e9937d3a46dfd41cffaf815abad59a569440d1e25177c15fd0684e5
+ md5: f1182c91c0de31a7abd40cedf6a5ebef
depends:
- __osx >=11.0
license: MIT
license_family: MIT
purls: []
- size: 12389400
- timestamp: 1772209104304
+ size: 12361647
+ timestamp: 1773822915649
+- conda: https://conda.anaconda.org/conda-forge/win-64/icu-78.3-h637d24d_0.conda
+ sha256: 1bda728d70a619731b278c859eda364146cb5b4b8c739a64da8128353d81d1c4
+ md5: 0097b24800cb696915c3dbd1f5335d3f
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 14954024
+ timestamp: 1773822508646
- pypi: https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl
name: id
version: 1.6.1
@@ -1392,10 +2250,10 @@ packages:
- pretend ; extra == 'test'
- coverage[toml] ; extra == 'test'
requires_python: '>=3.9'
-- pypi: https://files.pythonhosted.org/packages/40/66/71c1227dff78aaeb942fed29dd5651f2aec166cc7c9aeea3e8b26a539b7d/identify-2.6.17-py2.py3-none-any.whl
+- pypi: https://files.pythonhosted.org/packages/46/33/92ef41c6fad0233e41d3d84ba8e8ad18d1780f1e5d99b3c683e6d7f98b63/identify-2.6.18-py2.py3-none-any.whl
name: identify
- version: 2.6.17
- sha256: be5f8412d5ed4b20f2bd41a65f920990bdccaa6a4a18a08f1eefdcd0bdd885f0
+ version: 2.6.18
+ sha256: 8db9d3c8ea9079db92cafb0ebf97abdc09d52e97f4dcf773a2e694048b7cd737
requires_dist:
- ukkonen ; extra == 'license'
requires_python: '>=3.10'
@@ -1409,27 +2267,6 @@ packages:
- pytest>=8.3.2 ; extra == 'all'
- flake8>=7.1.1 ; extra == 'all'
requires_python: '>=3.8'
-- pypi: https://files.pythonhosted.org/packages/a4/ed/1f1afb2e9e7f38a545d628f864d562a5ae64fe6f7a10e28ffb9b185b4e89/importlib_resources-6.5.2-py3-none-any.whl
- name: importlib-resources
- version: 6.5.2
- sha256: 789cfdc3ed28c78b67a06acb8126751ced69a3d5f79c095a98298cd8a760ccec
- requires_dist:
- - zipp>=3.1.0 ; python_full_version < '3.10'
- - pytest>=6,!=8.1.* ; extra == 'test'
- - zipp>=3.17 ; extra == 'test'
- - jaraco-test>=5.4 ; extra == 'test'
- - sphinx>=3.5 ; extra == 'doc'
- - jaraco-packaging>=9.3 ; extra == 'doc'
- - rst-linker>=1.9 ; extra == 'doc'
- - furo ; extra == 'doc'
- - sphinx-lint ; extra == 'doc'
- - jaraco-tidelift>=1.4 ; extra == 'doc'
- - pytest-checkdocs>=2.4 ; extra == 'check'
- - pytest-ruff>=0.2.1 ; sys_platform != 'cygwin' and extra == 'check'
- - pytest-cov ; extra == 'cover'
- - pytest-enabler>=2.2 ; extra == 'enabler'
- - pytest-mypy ; extra == 'type'
- requires_python: '>=3.9'
- pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl
name: iniconfig
version: 2.3.0
@@ -1454,10 +2291,10 @@ packages:
- pytest-enabler>=2.2 ; extra == 'testing'
- pytest-ruff>=0.2.1 ; extra == 'testing'
requires_python: '>=3.8'
-- pypi: https://files.pythonhosted.org/packages/8d/48/aa685dbf1024c7bd82bede569e3a85f82c32fd3d79ba5fea578f0159571a/jaraco_context-6.1.0-py3-none-any.whl
+- pypi: https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl
name: jaraco-context
- version: 6.1.0
- sha256: a43b5ed85815223d0d3cfdb6d7ca0d2bc8946f28f30b6f3216bda070f68badda
+ version: 6.1.2
+ sha256: bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
requires_dist:
- backports-tarfile ; python_full_version < '3.12'
- pytest>=6,!=8.1.* ; extra == 'test'
@@ -1469,13 +2306,12 @@ packages:
- furo ; extra == 'doc'
- sphinx-lint ; extra == 'doc'
- jaraco-tidelift>=1.4 ; extra == 'doc'
- - pytest-checkdocs>=2.4 ; extra == 'check'
+ - pytest-checkdocs>=2.14 ; extra == 'check'
- pytest-ruff>=0.2.1 ; sys_platform != 'cygwin' and extra == 'check'
- pytest-cov ; extra == 'cover'
- pytest-enabler>=3.4 ; extra == 'enabler'
- - pytest-mypy>=1.0.1 ; extra == 'type'
- - mypy<1.19 ; platform_python_implementation == 'PyPy' and extra == 'type'
- requires_python: '>=3.9'
+ - pytest-mypy>=1.0.1 ; platform_python_implementation != 'PyPy' and extra == 'type'
+ requires_python: '>=3.10'
- pypi: https://files.pythonhosted.org/packages/fd/c4/813bb09f0985cb21e959f21f2464169eca882656849adf727ac7bb7e1767/jaraco_functools-4.4.0-py3-none-any.whl
name: jaraco-functools
version: 4.4.0
@@ -1497,67 +2333,67 @@ packages:
- pytest-mypy>=1.0.1 ; extra == 'type'
- mypy<1.19 ; platform_python_implementation == 'PyPy' and extra == 'type'
requires_python: '>=3.9'
-- pypi: https://files.pythonhosted.org/packages/80/e4/88778c6a23b65224e5088e68fd0924e5bde2196a26e76edb3ea3543fed6a/jax-0.9.1-py3-none-any.whl
+- pypi: https://files.pythonhosted.org/packages/17/9c/e897231c880f69e32251d3b1145894d7a04e4342d9bef8d29644c440d11b/jax-0.9.2-py3-none-any.whl
name: jax
- version: 0.9.1
- sha256: d11cb53d362912253013e8c4d6926cb9f3a4b59ab5b25a7dc08123567067d088
+ version: 0.9.2
+ sha256: 822a8ae155ab42e7bc59f2ae7a28705bcfccb01a7e76abfc8ae996190cdc5598
requires_dist:
- - jaxlib<=0.9.1,>=0.9.1
+ - jaxlib<=0.9.2,>=0.9.2
- ml-dtypes>=0.5.0
- numpy>=2.0
- opt-einsum
- scipy>=1.13
- - jaxlib==0.9.1 ; extra == 'minimum-jaxlib'
- - jaxlib==0.9.0 ; extra == 'ci'
- - jaxlib<=0.9.1,>=0.9.1 ; extra == 'tpu'
- - libtpu==0.0.35.* ; extra == 'tpu'
+ - jaxlib==0.9.2 ; extra == 'minimum-jaxlib'
+ - jaxlib==0.9.1 ; extra == 'ci'
+ - jaxlib<=0.9.2,>=0.9.2 ; extra == 'tpu'
+ - libtpu==0.0.37.* ; extra == 'tpu'
- requests ; extra == 'tpu'
- - jaxlib<=0.9.1,>=0.9.1 ; extra == 'cuda'
- - jax-cuda12-plugin[with-cuda]<=0.9.1,>=0.9.1 ; extra == 'cuda'
- - jaxlib<=0.9.1,>=0.9.1 ; extra == 'cuda12'
- - jax-cuda12-plugin[with-cuda]<=0.9.1,>=0.9.1 ; extra == 'cuda12'
- - jaxlib<=0.9.1,>=0.9.1 ; extra == 'cuda13'
- - jax-cuda13-plugin[with-cuda]<=0.9.1,>=0.9.1 ; extra == 'cuda13'
- - jaxlib<=0.9.1,>=0.9.1 ; extra == 'cuda12-local'
- - jax-cuda12-plugin<=0.9.1,>=0.9.1 ; extra == 'cuda12-local'
- - jaxlib<=0.9.1,>=0.9.1 ; extra == 'cuda13-local'
- - jax-cuda13-plugin<=0.9.1,>=0.9.1 ; extra == 'cuda13-local'
- - jaxlib<=0.9.1,>=0.9.1 ; extra == 'rocm'
- - jax-rocm7-plugin<=0.9.1,>=0.9.1 ; extra == 'rocm'
+ - jaxlib<=0.9.2,>=0.9.2 ; extra == 'cuda'
+ - jax-cuda12-plugin[with-cuda]<=0.9.2,>=0.9.2 ; extra == 'cuda'
+ - jaxlib<=0.9.2,>=0.9.2 ; extra == 'cuda12'
+ - jax-cuda12-plugin[with-cuda]<=0.9.2,>=0.9.2 ; extra == 'cuda12'
+ - jaxlib<=0.9.2,>=0.9.2 ; extra == 'cuda13'
+ - jax-cuda13-plugin[with-cuda]<=0.9.2,>=0.9.2 ; extra == 'cuda13'
+ - jaxlib<=0.9.2,>=0.9.2 ; extra == 'cuda12-local'
+ - jax-cuda12-plugin<=0.9.2,>=0.9.2 ; extra == 'cuda12-local'
+ - jaxlib<=0.9.2,>=0.9.2 ; extra == 'cuda13-local'
+ - jax-cuda13-plugin<=0.9.2,>=0.9.2 ; extra == 'cuda13-local'
+ - jaxlib<=0.9.2,>=0.9.2 ; extra == 'rocm7-local'
+ - jax-rocm7-plugin==0.9.2.* ; extra == 'rocm7-local'
- kubernetes ; extra == 'k8s'
- xprof ; extra == 'xprof'
requires_python: '>=3.11'
-- pypi: https://files.pythonhosted.org/packages/53/6b/b381bda5850f5611822d791cd25dfe36efda2688a68c4dda0f8a92c36dec/jaxlib-0.9.1-cp312-cp312-manylinux_2_27_x86_64.whl
+- pypi: https://files.pythonhosted.org/packages/2d/57/09d6a9e2a8bc8e3ea79eb8e980f8ea2aea2d9dec3793755f5765657f6e11/jaxlib-0.9.2-cp312-cp312-win_amd64.whl
name: jaxlib
- version: 0.9.1
- sha256: e2ab8c97be30354a34e64d17066df0fce7d1d0f40f7a48eded19e9e837896f5d
+ version: 0.9.2
+ sha256: c2f0837cc0788746301e68ae9eda468e6a8a7734dc4d529f26a2cb60fb56c657
requires_dist:
- scipy>=1.13
- numpy>=2.0
- ml-dtypes>=0.5.0
requires_python: '>=3.11'
-- pypi: https://files.pythonhosted.org/packages/6c/e9/e4dc1f699b894651f3d3ed6622c3c113c21003c2ed832ab00ed62055062b/jaxlib-0.9.1-cp312-cp312-win_amd64.whl
+- pypi: https://files.pythonhosted.org/packages/33/a0/ddb3a71359c1df61f3edc408936b5bda7ed402e78ae7e9ef6afd438577c6/jaxlib-0.9.2-cp312-cp312-manylinux_2_27_x86_64.whl
name: jaxlib
- version: 0.9.1
- sha256: 836b78e16bb06d984c41ae0605e96ef031b720191b489a0c09f7185dcabcbed0
+ version: 0.9.2
+ sha256: 88b276a71f4f2071b1fd2e922abfd67c87c6977a551a1036febcea78d5ef7e22
requires_dist:
- scipy>=1.13
- numpy>=2.0
- ml-dtypes>=0.5.0
requires_python: '>=3.11'
-- pypi: https://files.pythonhosted.org/packages/8f/06/59b1da0a3b2450a4abbf66cbb3bbfe0b14f9723b1f8997c0178db3549e54/jaxlib-0.9.1-cp312-cp312-macosx_11_0_arm64.whl
+- pypi: https://files.pythonhosted.org/packages/51/15/ff3d9fde15b5146a0164505085312d8c9c0b0bbd7be5a15218ead2593307/jaxlib-0.9.2-cp312-cp312-macosx_11_0_arm64.whl
name: jaxlib
- version: 0.9.1
- sha256: cea7f98a1a558fab5cf8f569e5567a3c288667dd223261adaeb9645c37e4ad8b
+ version: 0.9.2
+ sha256: 97c2fbe58cbee4a27d94ca735d709d231b299ab6ed8b3b1075f52d864dfd32c1
requires_dist:
- scipy>=1.13
- numpy>=2.0
- ml-dtypes>=0.5.0
requires_python: '>=3.11'
-- pypi: https://files.pythonhosted.org/packages/f8/b9/e0419783cbff9fa3bbc053dbe130f9051f60de4f424f650d70aae7f3bdf1/jaxlib-0.9.1-cp312-cp312-manylinux_2_27_aarch64.whl
+- pypi: https://files.pythonhosted.org/packages/88/79/699aa47d2256b2edbb75a68a8f1a1ee4d34dfb84b8842a963caeb9a8cb03/jaxlib-0.9.2-cp312-cp312-manylinux_2_27_aarch64.whl
name: jaxlib
- version: 0.9.1
- sha256: f80e8aead3461683657027e14e814e5bdd00be8ce8e05c0a5db86403db297c2e
+ version: 0.9.2
+ sha256: fef02d846863b726e72452993883a8596eac325f22a2ec7ea921da0fbc5509b4
requires_dist:
- scipy>=1.13
- numpy>=2.0
@@ -1576,6 +2412,14 @@ packages:
- async-timeout ; python_full_version < '3.11' and extra == 'test'
- trio ; extra == 'trio'
requires_python: '>=3.7'
+- pypi: https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl
+ name: jinja2
+ version: 3.1.6
+ sha256: 85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67
+ requires_dist:
+ - markupsafe>=2.0
+ - babel>=2.7 ; extra == 'i18n'
+ requires_python: '>=3.7'
- conda: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-4.18.0-he073ed8_9.conda
sha256: 41557eeadf641de6aeae49486cef30d02a6912d8da98585d687894afd65b356a
md5: 86d9cba083cd041bfbf242a01a7a1999
@@ -1626,55 +2470,564 @@ packages:
- types-pywin32 ; extra == 'type'
- shtab>=1.1.0 ; extra == 'completion'
requires_python: '>=3.9'
-- pypi: https://files.pythonhosted.org/packages/12/42/f36816eaf465220f683fb711efdd1bbf7a7005a2473d0e4ed421389bd26c/kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
+- conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.3-hb9d3cd8_0.conda
+ sha256: 0960d06048a7185d3542d850986d807c6e37ca2e644342dd0c72feefcf26c2a4
+ md5: b38117a3c920364aff79f870c984b4a3
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 134088
+ timestamp: 1754905959823
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/keyutils-1.6.3-h86ecc28_0.conda
+ sha256: 5ce830ca274b67de11a7075430a72020c1fb7d486161a82839be15c2b84e9988
+ md5: e7df0aab10b9cbb73ab2a467ebfaf8c7
+ depends:
+ - libgcc >=13
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 129048
+ timestamp: 1754906002667
+- pypi: https://files.pythonhosted.org/packages/99/9f/795fedf35634f746151ca8839d05681ceb6287fbed6cc1c9bf235f7887c2/kiwisolver-1.5.0-cp312-cp312-macosx_11_0_arm64.whl
name: kiwisolver
- version: 1.4.9
- sha256: 67bb8b474b4181770f926f7b7d2f8c0248cbcb78b660fdd41a47054b28d2a752
+ version: 1.5.0
+ sha256: ed3a984b31da7481b103f68776f7128a89ef26ed40f4dc41a2223cda7fb24819
requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/5b/5a/51f5464373ce2aeb5194508298a508b6f21d3867f499556263c64c621914/kiwisolver-1.4.9-cp312-cp312-macosx_11_0_arm64.whl
+- pypi: https://files.pythonhosted.org/packages/ad/cf/0348374369ca588f8fe9c338fae49fa4e16eeb10ffb3d012f23a54578a9e/kiwisolver-1.5.0-cp312-cp312-win_amd64.whl
name: kiwisolver
- version: 1.4.9
- sha256: 4a2899935e724dd1074cb568ce7ac0dce28b2cd6ab539c8e001a8578eb106d14
+ version: 1.5.0
+ sha256: f18c2d9782259a6dc132fdc7a63c168cbc74b35284b6d75c673958982a378384
requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/70/90/6d240beb0f24b74371762873e9b7f499f1e02166a2d9c5801f4dbf8fa12e/kiwisolver-1.4.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
+- pypi: https://files.pythonhosted.org/packages/c4/13/680c54afe3e65767bed7ec1a15571e1a2f1257128733851ade24abcefbcc/kiwisolver-1.5.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
name: kiwisolver
- version: 1.4.9
- sha256: f6008a4919fdbc0b0097089f67a1eb55d950ed7e90ce2cc3e640abadd2757a04
+ version: 1.5.0
+ sha256: bb5136fb5352d3f422df33f0c879a1b0c204004324150cc3b5e3c4f310c9049f
requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/a0/41/85d82b0291db7504da3c2defe35c9a8a5c9803a730f297bd823d11d5fb77/kiwisolver-1.4.9-cp312-cp312-win_amd64.whl
+- pypi: https://files.pythonhosted.org/packages/c8/2f/cebfcdb60fd6a9b0f6b47a9337198bcbad6fbe15e68189b7011fd914911f/kiwisolver-1.5.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
name: kiwisolver
- version: 1.4.9
- sha256: f68208a520c3d86ea51acf688a3e3002615a7f0238002cccc17affecc86a8a54
+ version: 1.5.0
+ sha256: b2af221f268f5af85e776a73d62b0845fc8baf8ef0abfae79d29c77d0e776aaf
requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/34/b8/aa7d6cf2d5efdd2fcd85cf39b33584fe12a0f7086ed451176ceb7fb510eb/lark-parser-0.7.8.tar.gz
- name: lark-parser
- version: 0.7.8
- sha256: 26215ebb157e6fb2ee74319aa4445b9f3b7e456e26be215ce19fdaaa901c20a4
-- conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_101.conda
- sha256: 565941ac1f8b0d2f2e8f02827cbca648f4d18cd461afc31f15604cd291b5c5f3
- md5: 12bd9a3f089ee6c9266a37dab82afabd
+- conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.22.2-ha1258a1_0.conda
+ sha256: 3e307628ca3527448dd1cb14ad7bb9d04d1d28c7d4c5f97ba196ae984571dd25
+ md5: fb53fb07ce46a575c5d004bbc96032c2
depends:
- __glibc >=2.17,<3.0.a0
- - zstd >=1.5.7,<1.6.0a0
- constrains:
- - binutils_impl_linux-64 2.45.1
- license: GPL-3.0-only
- license_family: GPL
- purls: []
- size: 725507
- timestamp: 1770267139900
-- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_101.conda
- sha256: 44527364aa333be631913451c32eb0cae1e09343827e9ce3ccabd8d962584226
- md5: 35b2ae7fadf364b8e5fb8185aaeb80e5
- depends:
- - zstd >=1.5.7,<1.6.0a0
+ - keyutils >=1.6.3,<2.0a0
+ - libedit >=3.1.20250104,<3.2.0a0
+ - libedit >=3.1.20250104,<4.0a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - openssl >=3.5.5,<4.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 1386730
+ timestamp: 1769769569681
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/krb5-1.22.2-hfd895c2_0.conda
+ sha256: b53999d888dda53c506b264e8c02b5f5c8e022c781eda0718f007339e6bc90ba
+ md5: d9ca108bd680ea86a963104b6b3e95ca
+ depends:
+ - keyutils >=1.6.3,<2.0a0
+ - libedit >=3.1.20250104,<3.2.0a0
+ - libedit >=3.1.20250104,<4.0a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - openssl >=3.5.5,<4.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 1517436
+ timestamp: 1769773395215
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.22.2-h385eeb1_0.conda
+ sha256: c0a0bf028fe7f3defcdcaa464e536cf1b202d07451e18ad83fdd169d15bef6ed
+ md5: e446e1822f4da8e5080a9de93474184d
+ depends:
+ - __osx >=11.0
+ - libcxx >=19
+ - libedit >=3.1.20250104,<3.2.0a0
+ - libedit >=3.1.20250104,<4.0a0
+ - openssl >=3.5.5,<4.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 1160828
+ timestamp: 1769770119811
+- conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.22.2-h0ea6238_0.conda
+ sha256: eb60f1ad8b597bcf95dee11bc11fe71a8325bc1204cf51d2bb1f2120ffd77761
+ md5: 4432f52dc0c8eb6a7a6abc00a037d93c
+ depends:
+ - openssl >=3.5.5,<4.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 751055
+ timestamp: 1769769688841
+- pypi: https://files.pythonhosted.org/packages/34/b8/aa7d6cf2d5efdd2fcd85cf39b33584fe12a0f7086ed451176ceb7fb510eb/lark-parser-0.7.8.tar.gz
+ name: lark-parser
+ version: 0.7.8
+ sha256: 26215ebb157e6fb2ee74319aa4445b9f3b7e456e26be215ce19fdaaa901c20a4
+- conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda
+ sha256: 3d584956604909ff5df353767f3a2a2f60e07d070b328d109f30ac40cd62df6c
+ md5: 18335a698559cdbcd86150a48bf54ba6
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - zstd >=1.5.7,<1.6.0a0
+ constrains:
+ - binutils_impl_linux-64 2.45.1
+ license: GPL-3.0-only
+ purls: []
+ size: 728002
+ timestamp: 1774197446916
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ld_impl_linux-aarch64-2.45.1-default_h1979696_102.conda
+ sha256: 7abd913d81a9bf00abb699e8987966baa2065f5132e37e815f92d90fc6bba530
+ md5: a21644fc4a83da26452a718dc9468d5f
+ depends:
+ - zstd >=1.5.7,<1.6.0a0
constrains:
- binutils_impl_linux-aarch64 2.45.1
license: GPL-3.0-only
- license_family: GPL
purls: []
- size: 875924
- timestamp: 1770267209884
+ size: 875596
+ timestamp: 1774197520746
+- conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.1.0-hdb68285_0.conda
+ sha256: f84cb54782f7e9cea95e810ea8fef186e0652d0fa73d3009914fa2c1262594e1
+ md5: a752488c68f2e7c456bcbd8f16eec275
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libstdcxx >=14
+ license: Apache-2.0
+ license_family: Apache
+ purls: []
+ size: 261513
+ timestamp: 1773113328888
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/lerc-4.1.0-h52b7260_0.conda
+ sha256: 8957fd460c1c132c8031f65fd5f56ec3807fd71b7cab2c5e2b0937b13404ab36
+ md5: d13423b06447113a90b5b1366d4da171
+ depends:
+ - libgcc >=14
+ - libstdcxx >=14
+ license: Apache-2.0
+ license_family: Apache
+ purls: []
+ size: 240444
+ timestamp: 1773114901155
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.1.0-h1eee2c3_0.conda
+ sha256: 66e5ffd301a44da696f3efc2f25d6d94f42a9adc0db06c44ad753ab844148c51
+ md5: 095e5749868adab9cae42d4b460e5443
+ depends:
+ - __osx >=11.0
+ - libcxx >=19
+ license: Apache-2.0
+ license_family: Apache
+ purls: []
+ size: 164222
+ timestamp: 1773114244984
+- conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.1.0-hd936e49_0.conda
+ sha256: 45df58fca800b552b17c3914cc9ab0d55a82c5172d72b5c44a59c710c06c5473
+ md5: 54b231d595bc1ff9bff668dd443ee012
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: Apache-2.0
+ license_family: Apache
+ purls: []
+ size: 172395
+ timestamp: 1773113455582
+- pypi: https://files.pythonhosted.org/packages/56/33/26ec2e8049eaa2f077bf23a12dc61ca559fbfa7bea0516bf263d657ae275/lgpio-0.2.2.0.tar.gz
+ name: lgpio
+ version: 0.2.2.0
+ sha256: 11372e653b200f76a0b3ef8a23a0735c85ec678a9f8550b9893151ed0f863fff
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.2.0-hb03c661_1.conda
+ sha256: 318f36bd49ca8ad85e6478bd8506c88d82454cc008c1ac1c6bf00a3c42fa610e
+ md5: 72c8fd1af66bd67bf580645b426513ed
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 79965
+ timestamp: 1764017188531
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlicommon-1.2.0-he30d5cf_1.conda
+ sha256: 5fa8c163c8d776503aa68cdaf798ff9440c76a0a1c3ea84e0c43dbf1ece8af4d
+ md5: 8ec1d03f3000108899d1799d9964f281
+ depends:
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 80030
+ timestamp: 1764017273715
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.2.0-hc919400_1.conda
+ sha256: a7cb9e660531cf6fbd4148cff608c85738d0b76f0975c5fc3e7d5e92840b7229
+ md5: 006e7ddd8a110771134fcc4e1e3a6ffa
+ depends:
+ - __osx >=11.0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 79443
+ timestamp: 1764017945924
+- conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.2.0-hfd05255_1.conda
+ sha256: 5097303c2fc8ebf9f9ea9731520aa5ce4847d0be41764edd7f6dee2100b82986
+ md5: 444b0a45bbd1cb24f82eedb56721b9c4
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 82042
+ timestamp: 1764017799966
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.2.0-hb03c661_1.conda
+ sha256: 12fff21d38f98bc446d82baa890e01fd82e3b750378fedc720ff93522ffb752b
+ md5: 366b40a69f0ad6072561c1d09301c886
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libbrotlicommon 1.2.0 hb03c661_1
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 34632
+ timestamp: 1764017199083
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlidec-1.2.0-he30d5cf_1.conda
+ sha256: 494365e8f58799ea95a6e82334ef696e9c2120aecd6626121694b30a15033301
+ md5: 47e5b71b77bb8b47b4ecf9659492977f
+ depends:
+ - libbrotlicommon 1.2.0 he30d5cf_1
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 33166
+ timestamp: 1764017282936
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.2.0-hc919400_1.conda
+ sha256: 2eae444039826db0454b19b52a3390f63bfe24f6b3e63089778dd5a5bf48b6bf
+ md5: 079e88933963f3f149054eec2c487bc2
+ depends:
+ - __osx >=11.0
+ - libbrotlicommon 1.2.0 hc919400_1
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 29452
+ timestamp: 1764017979099
+- conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.2.0-hfd05255_1.conda
+ sha256: 3239ce545cf1c32af6fffb7fc7c75cb1ef5b6ea8221c66c85416bb2d46f5cccb
+ md5: 450e3ae947fc46b60f1d8f8f318b40d4
+ depends:
+ - libbrotlicommon 1.2.0 hfd05255_1
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 34449
+ timestamp: 1764017851337
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.2.0-hb03c661_1.conda
+ sha256: a0c15c79997820bbd3fbc8ecf146f4fe0eca36cc60b62b63ac6cf78857f1dd0d
+ md5: 4ffbb341c8b616aa2494b6afb26a0c5f
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libbrotlicommon 1.2.0 hb03c661_1
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 298378
+ timestamp: 1764017210931
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libbrotlienc-1.2.0-he30d5cf_1.conda
+ sha256: f998c03257b9aa1f7464446af2cf424862f0e54258a2a588309853e45ae771df
+ md5: 6553a5d017fe14859ea8a4e6ea5def8f
+ depends:
+ - libbrotlicommon 1.2.0 he30d5cf_1
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 309304
+ timestamp: 1764017292044
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.2.0-hc919400_1.conda
+ sha256: 01436c32bb41f9cb4bcf07dda647ce4e5deb8307abfc3abdc8da5317db8189d1
+ md5: b2b7c8288ca1a2d71ff97a8e6a1e8883
+ depends:
+ - __osx >=11.0
+ - libbrotlicommon 1.2.0 hc919400_1
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 290754
+ timestamp: 1764018009077
+- conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.2.0-hfd05255_1.conda
+ sha256: 3226df6b7df98734440739f75527d585d42ca2bfe912fbe8d1954c512f75341a
+ md5: ccd93cfa8e54fd9df4e83dbe55ff6e8c
+ depends:
+ - libbrotlicommon 1.2.0 hfd05255_1
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 252903
+ timestamp: 1764017901735
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp19.1-19.1.7-default_hf3020a7_8.conda
+ sha256: f047f0d677bdccef02a844a50874baf9665551b2200e451e4c69b473ad499623
+ md5: 445fc95210a8e15e8b5f9f93782e3f80
+ depends:
+ - __osx >=11.0
+ - libcxx >=19.1.7
+ - libllvm19 >=19.1.7,<19.2.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 14064507
+ timestamp: 1772400067348
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp22.1-22.1.0-default_h99862b1_0.conda
+ sha256: 914da94dbf829192b2bb360a7684b32e46f047a57de96a2f5ab39a011aeae6ea
+ md5: d966a23335e090a5410cc4f0dec8d00a
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libllvm22 >=22.1.0,<22.2.0a0
+ - libstdcxx >=14
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 21661249
+ timestamp: 1772101075353
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang-cpp22.1-22.1.0-default_he95a3c9_0.conda
+ sha256: 48f27a5ad4ea95de961131a282ba884305e309314b51abb61814856732b28461
+ md5: 1519a50e2f4caca01098a33d39f45f5c
+ depends:
+ - libgcc >=14
+ - libllvm22 >=22.1.0,<22.2.0a0
+ - libstdcxx >=14
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 21293353
+ timestamp: 1772101944548
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-22.1.0-default_h746c552_0.conda
+ sha256: 4a9dd814492a129f2ff40cd4ab0b942232c9e3c6dbc0d0aaf861f1f65e99cc7d
+ md5: 140459a7413d8f6884eb68205ce39a0d
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libllvm22 >=22.1.0,<22.2.0a0
+ - libstdcxx >=14
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 12817500
+ timestamp: 1772101411287
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libclang13-22.1.0-default_h94a09a5_0.conda
+ sha256: 643c2fb49f91977348cd04589bf4fab3b3e1e096ee42f979255f2ff9749d31a6
+ md5: 4e1023aa62d0919a4014954d57bcb786
+ depends:
+ - libgcc >=14
+ - libllvm22 >=22.1.0,<22.2.0a0
+ - libstdcxx >=14
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 12619911
+ timestamp: 1772102257387
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-22.1.0-default_h13b06bd_0.conda
+ sha256: 1f9195e2f9be884880b3d119be6eaea4b8f57d399b49e78a9718071ecee1cc29
+ md5: 64ecee538edc16caf5717f3c2d6d8545
+ depends:
+ - __osx >=11.0
+ - libcxx >=22.1.0
+ - libllvm22 >=22.1.0,<22.2.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 8934812
+ timestamp: 1772098474633
+- conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-22.1.0-default_ha2db4b5_0.conda
+ sha256: c8e34362c6bf7305ef50f0de4e16292cd97e31650ab6465282eeeac62f0a05c4
+ md5: 7ad437870ea7d487e1b0e663503b6b1d
+ depends:
+ - libzlib >=1.3.1,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - zstd >=1.5.7,<1.6.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 30584641
+ timestamp: 1772353741135
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h7a8fb5f_6.conda
+ sha256: 205c4f19550f3647832ec44e35e6d93c8c206782bdd620c1d7cf66237580ff9c
+ md5: 49c553b47ff679a6a1e9fc80b9c5a2d4
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - libzlib >=1.3.1,<2.0a0
+ license: Apache-2.0
+ license_family: Apache
+ purls: []
+ size: 4518030
+ timestamp: 1770902209173
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libcups-2.3.3-h4f2b762_6.conda
+ sha256: 41b04f995c9f63af8c4065a35931e46cbc2fdd6b9bf7e4c19f90d53cbb2bc8e5
+ md5: 67828c963b17db7dc989fe5d509ef04a
+ depends:
+ - krb5 >=1.22.2,<1.23.0a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - libzlib >=1.3.1,<2.0a0
+ license: Apache-2.0
+ license_family: Apache
+ purls: []
+ size: 4553739
+ timestamp: 1770903929794
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-22.1.1-h55c6f16_0.conda
+ sha256: 3c8142cdd3109c250a926c492ec45bc954697b288e5d1154ada95272ffa21be8
+ md5: 7a290d944bc0c481a55baf33fa289deb
+ depends:
+ - __osx >=11.0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 570281
+ timestamp: 1773203613980
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.25-h17f619e_0.conda
+ sha256: aa8e8c4be9a2e81610ddf574e05b64ee131fab5e0e3693210c9d6d2fba32c680
+ md5: 6c77a605a7a689d17d4819c0f8ac9a00
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 73490
+ timestamp: 1761979956660
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libdeflate-1.25-h1af38f5_0.conda
+ sha256: 48814b73bd462da6eed2e697e30c060ae16af21e9fbed30d64feaf0aad9da392
+ md5: a9138815598fe6b91a1d6782ca657b0c
+ depends:
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 71117
+ timestamp: 1761979776756
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.25-hc11a715_0.conda
+ sha256: 5e0b6961be3304a5f027a8c00bd0967fc46ae162cffb7553ff45c70f51b8314c
+ md5: a6130c709305cd9828b4e1bd9ba0000c
+ depends:
+ - __osx >=11.0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 55420
+ timestamp: 1761980066242
+- conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.25-h51727cc_0.conda
+ sha256: 834e4881a18b690d5ec36f44852facd38e13afe599e369be62d29bd675f107ee
+ md5: e77030e67343e28b084fabd7db0ce43e
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 156818
+ timestamp: 1761979842440
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libdrm-2.4.125-hb03c661_1.conda
+ sha256: c076a213bd3676cc1ef22eeff91588826273513ccc6040d9bea68bccdc849501
+ md5: 9314bc5a1fe7d1044dc9dfd3ef400535
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libpciaccess >=0.18,<0.19.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 310785
+ timestamp: 1757212153962
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libdrm-2.4.125-he30d5cf_1.conda
+ sha256: 4e6cdb5dd37db794b88bec714b4418a0435b04d14e9f7afc8cc32f2a3ced12f2
+ md5: 2079727b538f6dd16f3fa579d4c3c53f
+ depends:
+ - libgcc >=14
+ - libpciaccess >=0.18,<0.19.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 344548
+ timestamp: 1757212128414
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20250104-pl5321h7949ede_0.conda
+ sha256: d789471216e7aba3c184cd054ed61ce3f6dac6f87a50ec69291b9297f8c18724
+ md5: c277e0a4d549b03ac1e9d6cbbe3d017b
+ depends:
+ - ncurses
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - ncurses >=6.5,<7.0a0
+ license: BSD-2-Clause
+ license_family: BSD
+ purls: []
+ size: 134676
+ timestamp: 1738479519902
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libedit-3.1.20250104-pl5321h976ea20_0.conda
+ sha256: c0b27546aa3a23d47919226b3a1635fccdb4f24b94e72e206a751b33f46fd8d6
+ md5: fb640d776fc92b682a14e001980825b1
+ depends:
+ - ncurses
+ - libgcc >=13
+ - ncurses >=6.5,<7.0a0
+ license: BSD-2-Clause
+ license_family: BSD
+ purls: []
+ size: 148125
+ timestamp: 1738479808948
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20250104-pl5321hafb1f1b_0.conda
+ sha256: 66aa216a403de0bb0c1340a88d1a06adaff66bae2cfd196731aa24db9859d631
+ md5: 44083d2d2c2025afca315c7a172eab2b
+ depends:
+ - ncurses
+ - __osx >=11.0
+ - ncurses >=6.5,<7.0a0
+ license: BSD-2-Clause
+ license_family: BSD
+ purls: []
+ size: 107691
+ timestamp: 1738479560845
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libegl-1.7.0-ha4b6fd6_2.conda
+ sha256: 7fd5408d359d05a969133e47af580183fbf38e2235b562193d427bb9dad79723
+ md5: c151d5eb730e9b7480e6d48c0fc44048
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libglvnd 1.7.0 ha4b6fd6_2
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 44840
+ timestamp: 1731330973553
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libegl-1.7.0-hd24410f_2.conda
+ sha256: 8962abf38a58c235611ce356b9899f6caeb0352a8bce631b0bcc59352fda455e
+ md5: cf105bce884e4ef8c8ccdca9fe6695e7
+ depends:
+ - libglvnd 1.7.0 hd24410f_2
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 53551
+ timestamp: 1731330990477
- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.4-hecca717_0.conda
sha256: d78f1d3bea8c031d2f032b760f36676d87929b18146351c4464c66b0869df3f5
md5: e7f7ce06ec24cfcfb9e36d28cf82ba57
@@ -1769,21 +3122,112 @@ packages:
purls: []
size: 45831
timestamp: 1769456418774
-- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda
- sha256: faf7d2017b4d718951e3a59d081eb09759152f93038479b768e3d612688f83f5
- md5: 0aa00f03f9e39fb9876085dee11a85d4
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libfreetype-2.14.2-ha770c72_0.conda
+ sha256: 2e1bfe1e856eb707d258f669ef6851af583ceaffab5e64821b503b0f7cd09e9e
+ md5: 26c746d14402a3b6c684d045b23b9437
depends:
- - __glibc >=2.17,<3.0.a0
- - _openmp_mutex >=4.5
- constrains:
- - libgcc-ng ==15.2.0=*_18
- - libgomp 15.2.0 he0feb66_18
- license: GPL-3.0-only WITH GCC-exception-3.1
- license_family: GPL
+ - libfreetype6 >=2.14.2
+ license: GPL-2.0-only OR FTL
purls: []
- size: 1041788
- timestamp: 1771378212382
-- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda
+ size: 8035
+ timestamp: 1772757210108
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libfreetype-2.14.2-h8af1aa0_0.conda
+ sha256: 23cdb94528bb4328b6f7550906dee5080952354445d8bd96241fa7d059c4af95
+ md5: 93bce8dee6a0a4906331db294ec250fe
+ depends:
+ - libfreetype6 >=2.14.2
+ license: GPL-2.0-only OR FTL
+ purls: []
+ size: 8108
+ timestamp: 1772756012710
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libfreetype-2.14.2-hce30654_0.conda
+ sha256: 6061ef5321b8e697d5577d8dfe7a4c75bfe3e706c956d0d84bfec6bea3ed9f77
+ md5: a3a53232936b55ffea76806aefe19e8b
+ depends:
+ - libfreetype6 >=2.14.2
+ license: GPL-2.0-only OR FTL
+ purls: []
+ size: 8076
+ timestamp: 1772756349852
+- conda: https://conda.anaconda.org/conda-forge/win-64/libfreetype-2.14.2-h57928b3_0.conda
+ sha256: 427c3072b311e65bd3eae3fcb78f6847b15b2dbb173a8546424de56550b2abfb
+ md5: 153d52fd0e4ba2a5bd5bb4f4afa41417
+ depends:
+ - libfreetype6 >=2.14.2
+ license: GPL-2.0-only OR FTL
+ purls: []
+ size: 8404
+ timestamp: 1772756167212
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libfreetype6-2.14.2-h73754d4_0.conda
+ sha256: aba65b94bdbed52de17ec3d0c6f2ebac2ef77071ad22d6900d1614d0dd702a0c
+ md5: 8eaba3d1a4d7525c6814e861614457fd
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libpng >=1.6.55,<1.7.0a0
+ - libzlib >=1.3.1,<2.0a0
+ constrains:
+ - freetype >=2.14.2
+ license: GPL-2.0-only OR FTL
+ purls: []
+ size: 386316
+ timestamp: 1772757193822
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libfreetype6-2.14.2-hdae7a39_0.conda
+ sha256: a2e9efb033f7519bbc0a54558d7c9bb96252adc22c6e09df2daee7615265fbb1
+ md5: 69d1cdfdabb66464cbde17890e8be3b9
+ depends:
+ - libgcc >=14
+ - libpng >=1.6.55,<1.7.0a0
+ - libzlib >=1.3.1,<2.0a0
+ constrains:
+ - freetype >=2.14.2
+ license: GPL-2.0-only OR FTL
+ purls: []
+ size: 423372
+ timestamp: 1772756012086
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libfreetype6-2.14.2-hdfa99f5_0.conda
+ sha256: 24dd0e0bee56e87935f885929f67659f1d3b8a01e7546568de2919cffd9e2e36
+ md5: e726e134a392ae5d7bafa6cc4a3d5725
+ depends:
+ - __osx >=11.0
+ - libpng >=1.6.55,<1.7.0a0
+ - libzlib >=1.3.1,<2.0a0
+ constrains:
+ - freetype >=2.14.2
+ license: GPL-2.0-only OR FTL
+ purls: []
+ size: 338032
+ timestamp: 1772756347899
+- conda: https://conda.anaconda.org/conda-forge/win-64/libfreetype6-2.14.2-hdbac1cb_0.conda
+ sha256: 1e80e01e5662bd3a0c0e094fbeaec449dbb2288949ca55ca80345e7812904e67
+ md5: c21a474a38982cdb56b3454cf4f78389
+ depends:
+ - libpng >=1.6.55,<1.7.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ constrains:
+ - freetype >=2.14.2
+ license: GPL-2.0-only OR FTL
+ purls: []
+ size: 340155
+ timestamp: 1772756166648
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_18.conda
+ sha256: faf7d2017b4d718951e3a59d081eb09759152f93038479b768e3d612688f83f5
+ md5: 0aa00f03f9e39fb9876085dee11a85d4
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - _openmp_mutex >=4.5
+ constrains:
+ - libgcc-ng ==15.2.0=*_18
+ - libgomp 15.2.0 he0feb66_18
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ license_family: GPL
+ purls: []
+ size: 1041788
+ timestamp: 1771378212382
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgcc-15.2.0-h8acb6b2_18.conda
sha256: 43df385bedc1cab11993c4369e1f3b04b4ca5d0ea16cba6a0e7f18dbc129fcc9
md5: 552567ea2b61e3a3035759b2fdb3f9a6
depends:
@@ -1836,6 +3280,129 @@ packages:
purls: []
size: 27568
timestamp: 1771378136019
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libgl-1.7.0-ha4b6fd6_2.conda
+ sha256: dc2752241fa3d9e40ce552c1942d0a4b5eeb93740c9723873f6fcf8d39ef8d2d
+ md5: 928b8be80851f5d8ffb016f9c81dae7a
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libglvnd 1.7.0 ha4b6fd6_2
+ - libglx 1.7.0 ha4b6fd6_2
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 134712
+ timestamp: 1731330998354
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libgl-1.7.0-hd24410f_2.conda
+ sha256: 3e954380f16255d1c8ae5da3bd3044d3576a0e1ac2e3c3ff2fe8f2f1ad2e467a
+ md5: 0d00176464ebb25af83d40736a2cd3bb
+ depends:
+ - libglvnd 1.7.0 hd24410f_2
+ - libglx 1.7.0 hd24410f_2
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 145442
+ timestamp: 1731331005019
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.86.4-h6548e54_1.conda
+ sha256: a27e44168a1240b15659888ce0d9b938ed4bdb49e9ea68a7c1ff27bcea8b55ce
+ md5: bb26456332b07f68bf3b7622ed71c0da
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libffi >=3.5.2,<3.6.0a0
+ - libgcc >=14
+ - libiconv >=1.18,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - pcre2 >=10.47,<10.48.0a0
+ constrains:
+ - glib 2.86.4 *_1
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 4398701
+ timestamp: 1771863239578
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libglib-2.86.4-hf53f6bf_1.conda
+ sha256: afc503dbd04a5bf2709aa9d8318a03a8c4edb389f661ff280c3494bfef4341ec
+ md5: 4ac4372fc4d7f20630a91314cdac8afd
+ depends:
+ - libffi >=3.5.2,<3.6.0a0
+ - libgcc >=14
+ - libiconv >=1.18,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - pcre2 >=10.47,<10.48.0a0
+ constrains:
+ - glib 2.86.4 *_1
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 4512186
+ timestamp: 1771863220969
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.86.4-he378b5c_1.conda
+ sha256: a4254a241a96198e019ced2e0d2967e4c0ef64fac32077a45c065b32dc2b15d2
+ md5: 673069f6725ed7b1073f9b96094294d1
+ depends:
+ - __osx >=11.0
+ - libffi >=3.5.2,<3.6.0a0
+ - libiconv >=1.18,<2.0a0
+ - libintl >=0.25.1,<1.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - pcre2 >=10.47,<10.48.0a0
+ constrains:
+ - glib 2.86.4 *_1
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 4108927
+ timestamp: 1771864169970
+- conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.86.4-h0c9aed9_1.conda
+ sha256: f035fb25f8858f201e0055c719ef91022e9465cd51fe803304b781863286fb10
+ md5: 0329a7e92c8c8b61fcaaf7ad44642a96
+ depends:
+ - libffi >=3.5.2,<3.6.0a0
+ - libiconv >=1.18,<2.0a0
+ - libintl >=0.22.5,<1.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - pcre2 >=10.47,<10.48.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ constrains:
+ - glib 2.86.4 *_1
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 4095369
+ timestamp: 1771863229701
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libglvnd-1.7.0-ha4b6fd6_2.conda
+ sha256: 1175f8a7a0c68b7f81962699751bb6574e6f07db4c9f72825f978e3016f46850
+ md5: 434ca7e50e40f4918ab701e3facd59a0
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 132463
+ timestamp: 1731330968309
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libglvnd-1.7.0-hd24410f_2.conda
+ sha256: 57ec3898a923d4bcc064669e90e8abfc4d1d945a13639470ba5f3748bd3090da
+ md5: 9e115653741810778c9a915a2f8439e7
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 152135
+ timestamp: 1731330986070
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libglx-1.7.0-ha4b6fd6_2.conda
+ sha256: 2d35a679624a93ce5b3e9dd301fff92343db609b79f0363e6d0ceb3a6478bfa7
+ md5: c8013e438185f33b13814c5c488acd5c
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libglvnd 1.7.0 ha4b6fd6_2
+ - xorg-libx11 >=1.8.10,<2.0a0
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 75504
+ timestamp: 1731330988898
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libglx-1.7.0-hd24410f_2.conda
+ sha256: 6591af640cb05a399fab47646025f8b1e1a06a0d4bbb4d2e320d6629b47a1c61
+ md5: 1d4269e233636148696a67e2d30dad2a
+ depends:
+ - libglvnd 1.7.0 hd24410f_2
+ - xorg-libx11 >=1.8.9,<2.0a0
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 77736
+ timestamp: 1731330998960
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_18.conda
sha256: 21337ab58e5e0649d869ab168d4e609b033509de22521de1bfed0c031bfc5110
md5: 239c5e9546c38a1e884d69effcf4c882
@@ -1854,6 +3421,172 @@ packages:
purls: []
size: 588060
timestamp: 1771378040807
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.18-h3b78370_2.conda
+ sha256: c467851a7312765447155e071752d7bf9bf44d610a5687e32706f480aad2833f
+ md5: 915f5995e94f60e9a4826e0b0920ee88
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ license: LGPL-2.1-only
+ purls: []
+ size: 790176
+ timestamp: 1754908768807
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libiconv-1.18-h90929bb_2.conda
+ sha256: 1473451cd282b48d24515795a595801c9b65b567fe399d7e12d50b2d6cdb04d9
+ md5: 5a86bf847b9b926f3a4f203339748d78
+ depends:
+ - libgcc >=14
+ license: LGPL-2.1-only
+ purls: []
+ size: 791226
+ timestamp: 1754910975665
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.18-h23cfdf5_2.conda
+ sha256: de0336e800b2af9a40bdd694b03870ac4a848161b35c8a2325704f123f185f03
+ md5: 4d5a7445f0b25b6a3ddbb56e790f5251
+ depends:
+ - __osx >=11.0
+ license: LGPL-2.1-only
+ purls: []
+ size: 750379
+ timestamp: 1754909073836
+- conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.18-hc1393d2_2.conda
+ sha256: 0dcdb1a5f01863ac4e8ba006a8b0dc1a02d2221ec3319b5915a1863254d7efa7
+ md5: 64571d1dd6cdcfa25d0664a5950fdaa2
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: LGPL-2.1-only
+ purls: []
+ size: 696926
+ timestamp: 1754909290005
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libintl-0.25.1-h493aca8_0.conda
+ sha256: 99d2cebcd8f84961b86784451b010f5f0a795ed1c08f1e7c76fbb3c22abf021a
+ md5: 5103f6a6b210a3912faf8d7db516918c
+ depends:
+ - __osx >=11.0
+ - libiconv >=1.18,<2.0a0
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 90957
+ timestamp: 1751558394144
+- conda: https://conda.anaconda.org/conda-forge/win-64/libintl-0.22.5-h5728263_3.conda
+ sha256: c7e4600f28bcada8ea81456a6530c2329312519efcf0c886030ada38976b0511
+ md5: 2cf0cf76cc15d360dfa2f17fd6cf9772
+ depends:
+ - libiconv >=1.17,<2.0a0
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 95568
+ timestamp: 1723629479451
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.1.2-hb03c661_0.conda
+ sha256: cc9aba923eea0af8e30e0f94f2ad7156e2984d80d1e8e7fe6be5a1f257f0eb32
+ md5: 8397539e3a0bbd1695584fb4f927485a
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ constrains:
+ - jpeg <0.0.0a
+ license: IJG AND BSD-3-Clause AND Zlib
+ purls: []
+ size: 633710
+ timestamp: 1762094827865
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libjpeg-turbo-3.1.2-he30d5cf_0.conda
+ sha256: 84064c7c53a64291a585d7215fe95ec42df74203a5bf7615d33d49a3b0f08bb6
+ md5: 5109d7f837a3dfdf5c60f60e311b041f
+ depends:
+ - libgcc >=14
+ constrains:
+ - jpeg <0.0.0a
+ license: IJG AND BSD-3-Clause AND Zlib
+ purls: []
+ size: 691818
+ timestamp: 1762094728337
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.1.2-hc919400_0.conda
+ sha256: 6c061c56058bb10374daaef50e81b39cf43e8aee21f0037022c0c39c4f31872f
+ md5: f0695fbecf1006f27f4395d64bd0c4b8
+ depends:
+ - __osx >=11.0
+ constrains:
+ - jpeg <0.0.0a
+ license: IJG AND BSD-3-Clause AND Zlib
+ purls: []
+ size: 551197
+ timestamp: 1762095054358
+- conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.1.2-hfd05255_0.conda
+ sha256: 795e2d4feb2f7fc4a2c6e921871575feb32b8082b5760726791f080d1e2c2597
+ md5: 56a686f92ac0273c0f6af58858a3f013
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ constrains:
+ - jpeg <0.0.0a
+ license: IJG AND BSD-3-Clause AND Zlib
+ purls: []
+ size: 841783
+ timestamp: 1762094814336
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm19-19.1.7-h8e0c9ce_2.conda
+ sha256: 46f8ff3d86438c0af1bebe0c18261ce5de9878d58b4fe399a3a125670e4f0af5
+ md5: d1d9b233830f6631800acc1e081a9444
+ depends:
+ - __osx >=11.0
+ - libcxx >=19
+ - libxml2
+ - libxml2-16 >=2.14.5
+ - libzlib >=1.3.1,<2.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 26914852
+ timestamp: 1757353228286
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm22-22.1.1-hf7376ad_0.conda
+ sha256: 1145f9e85f0fbbdba88f1da5c8c48672bee7702e2f40c563b2dd48350ab4d413
+ md5: 97cc6dad22677304846a798c8a65064d
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - libzlib >=1.3.1,<2.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 44256563
+ timestamp: 1773371774629
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libllvm22-22.1.1-hfd2ba90_0.conda
+ sha256: 9b1634ce91d4d56d8a92996e65a2ef20fe0dd8afa88761bb361314748e439aab
+ md5: 9684eec87b0eb9c81c6b95dfcbe574a0
+ depends:
+ - libgcc >=14
+ - libstdcxx >=14
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - libzlib >=1.3.1,<2.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 43166469
+ timestamp: 1773368435640
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm22-22.1.1-h89af1be_0.conda
+ sha256: a07056c4b52eca3d0cff01b127e9a071066257dc70bd1bbe60611ead7fec5e76
+ md5: ead237a59f2abca6861c134a589c9e83
+ depends:
+ - __osx >=11.0
+ - libcxx >=19
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - libzlib >=1.3.1,<2.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ license: Apache-2.0 WITH LLVM-exception
+ license_family: Apache
+ purls: []
+ size: 30052340
+ timestamp: 1773362324365
- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.2-hb03c661_0.conda
sha256: 755c55ebab181d678c12e49cced893598f2bab22d582fbbf4d8b83c18be207eb
md5: c7c83eecbb72d88b940c249af56c8b17
@@ -1922,6 +3655,157 @@ packages:
purls: []
size: 34831
timestamp: 1750274211
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libntlm-1.8-hb9d3cd8_0.conda
+ sha256: 3b3f19ced060013c2dd99d9d46403be6d319d4601814c772a3472fe2955612b0
+ md5: 7c7927b404672409d9917d49bff5f2d6
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 33418
+ timestamp: 1734670021371
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libntlm-1.4-hf897c2e_1002.tar.bz2
+ sha256: 0e303d7a8845391bd1634efb65dc9d9b82b5608ebeb32fb77a56d1ed696d2eee
+ md5: 835c7c4137821de5c309f4266a51ba89
+ depends:
+ - libgcc-ng >=9.3.0
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 39449
+ timestamp: 1609781865660
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libntlm-1.8-h5505292_0.conda
+ sha256: ea8c680924d957e12270dca549620327d5e986f23c4bd5f45627167ca6ef7a3b
+ md5: c90c1d3bd778f5ec0d4bb4ef36cbd5b6
+ depends:
+ - __osx >=11.0
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 31099
+ timestamp: 1734670168822
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libopengl-1.7.0-ha4b6fd6_2.conda
+ sha256: 215086c108d80349e96051ad14131b751d17af3ed2cb5a34edd62fa89bfe8ead
+ md5: 7df50d44d4a14d6c31a2c54f2cd92157
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libglvnd 1.7.0 ha4b6fd6_2
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 50757
+ timestamp: 1731330993524
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libopengl-1.7.0-hd24410f_2.conda
+ sha256: e359df399fb2f308774237384414e318fac8870c1bf6481bdc67ae16e0bd2a02
+ md5: cf9d12bfab305e48d095a4c79002c922
+ depends:
+ - libglvnd 1.7.0 hd24410f_2
+ license: LicenseRef-libglvnd
+ purls: []
+ size: 56355
+ timestamp: 1731331001820
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libpciaccess-0.18-hb9d3cd8_0.conda
+ sha256: 0bd91de9b447a2991e666f284ae8c722ffb1d84acb594dbd0c031bd656fa32b2
+ md5: 70e3400cbbfa03e96dcde7fc13e38c7b
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 28424
+ timestamp: 1749901812541
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpciaccess-0.18-h86ecc28_0.conda
+ sha256: 7641dfdfe9bda7069ae94379e9924892f0b6604c1a016a3f76b230433bb280f2
+ md5: 5044e160c5306968d956c2a0a2a440d6
+ depends:
+ - libgcc >=13
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 29512
+ timestamp: 1749901899881
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.55-h421ea60_0.conda
+ sha256: 36ade759122cdf0f16e2a2562a19746d96cf9c863ffaa812f2f5071ebbe9c03c
+ md5: 5f13ffc7d30ffec87864e678df9957b4
+ depends:
+ - libgcc >=14
+ - __glibc >=2.17,<3.0.a0
+ - libzlib >=1.3.1,<2.0a0
+ license: zlib-acknowledgement
+ purls: []
+ size: 317669
+ timestamp: 1770691470744
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpng-1.6.55-h1abf092_0.conda
+ sha256: c7378c6b79de4d571d00ad1caf0a4c19d43c9c94077a761abb6ead44d891f907
+ md5: be4088903b94ea297975689b3c3aeb27
+ depends:
+ - libgcc >=14
+ - libzlib >=1.3.1,<2.0a0
+ license: zlib-acknowledgement
+ purls: []
+ size: 340156
+ timestamp: 1770691477245
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.55-h132b30e_0.conda
+ sha256: 7a4fd29a6ee2d7f7a6e610754dfdf7410ed08f40d8d8b488a27bc0f9981d5abb
+ md5: 871dc88b0192ac49b6a5509932c31377
+ depends:
+ - __osx >=11.0
+ - libzlib >=1.3.1,<2.0a0
+ license: zlib-acknowledgement
+ purls: []
+ size: 288950
+ timestamp: 1770691485950
+- conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.55-h7351971_0.conda
+ sha256: db23f281fa80597a0dc0445b18318346862602d7081ed76244df8cc4418d6d68
+ md5: 43f47a9151b9b8fc100aeefcf350d1a0
+ depends:
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - ucrt >=10.0.20348.0
+ - libzlib >=1.3.1,<2.0a0
+ license: zlib-acknowledgement
+ purls: []
+ size: 383155
+ timestamp: 1770691504832
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-18.3-h9abb657_0.conda
+ sha256: c7e61b86c273ec1ce92c0e087d1a0f3ed3b9485507c6cd35e03bc63de1b6b03f
+ md5: 405ec206d230d9d37ad7c2636114cbf4
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - icu >=78.2,<79.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - libgcc >=14
+ - openldap >=2.6.10,<2.7.0a0
+ - openssl >=3.5.5,<4.0a0
+ license: PostgreSQL
+ purls: []
+ size: 2865686
+ timestamp: 1772136328077
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libpq-18.3-h7d4fc67_0.conda
+ sha256: 878b5d316087a226eb235f0dd46e7de39941afe13c5d3c7f6a289e8853d45333
+ md5: 7eb18b198b1d35da9352062c69c4ee64
+ depends:
+ - icu >=78.2,<79.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - libgcc >=14
+ - openldap >=2.6.10,<2.7.0a0
+ - openssl >=3.5.5,<4.0a0
+ license: PostgreSQL
+ purls: []
+ size: 2854221
+ timestamp: 1772136342536
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-18.3-hd341ff2_0.conda
+ sha256: 625b59f5b3c750a2e4c5a0a4ade5b4f1c3d6b8d6a781797324344c03270a529a
+ md5: fc064efe5042bcaf994307822ccbb1f1
+ depends:
+ - __osx >=11.0
+ - icu >=78.2,<79.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - openldap >=2.6.10,<2.7.0a0
+ - openssl >=3.5.5,<4.0a0
+ license: PostgreSQL
+ purls: []
+ size: 2705141
+ timestamp: 1772136813226
- conda: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-15.2.0-h90f66d4_18.conda
sha256: 0329e23d54a567c259adc962a62172eaa55e6ca33c105ef67b4f3cdb4ef70eaa
md5: ff754fbe790d4e70cf38aea3668c3cb3
@@ -1945,9 +3829,9 @@ packages:
purls: []
size: 7164557
timestamp: 1771378185265
-- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.51.2-hf4e2dac_0.conda
- sha256: 04596fcee262a870e4b7c9807224680ff48d4d0cc0dac076a602503d3dc6d217
- md5: da5be73701eecd0e8454423fd6ffcf30
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.52.0-hf4e2dac_0.conda
+ sha256: d716847b7deca293d2e49ed1c8ab9e4b9e04b9d780aea49a97c26925b28a7993
+ md5: fd893f6a3002a635b5e50ceb9dd2c0f4
depends:
- __glibc >=2.17,<3.0.a0
- icu >=78.2,<79.0a0
@@ -1955,41 +3839,41 @@ packages:
- libzlib >=1.3.1,<2.0a0
license: blessing
purls: []
- size: 942808
- timestamp: 1768147973361
-- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.51.2-h10b116e_0.conda
- sha256: 5f8230ccaf9ffaab369adc894ef530699e96111dac0a8ff9b735a871f8ba8f8b
- md5: 4e3ba0d5d192f99217b85f07a0761e64
+ size: 951405
+ timestamp: 1772818874251
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libsqlite-3.52.0-h10b116e_0.conda
+ sha256: 1ddaf91b44fae83856276f4cb7ce544ffe41d4b55c1e346b504c6b45f19098d6
+ md5: 77891484f18eca74b8ad83694da9815e
depends:
- icu >=78.2,<79.0a0
- libgcc >=14
- libzlib >=1.3.1,<2.0a0
license: blessing
purls: []
- size: 944688
- timestamp: 1768147991301
-- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.51.2-h1ae2325_0.conda
- sha256: 6e9b9f269732cbc4698c7984aa5b9682c168e2a8d1e0406e1ff10091ca046167
- md5: 4b0bf313c53c3e89692f020fb55d5f2c
+ size: 952296
+ timestamp: 1772818881550
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.52.0-h1ae2325_0.conda
+ sha256: beb0fd5594d6d7c7cd42c992b6bb4d66cbb39d6c94a8234f15956da99a04306c
+ md5: f6233a3fddc35a2ec9f617f79d6f3d71
depends:
- __osx >=11.0
- icu >=78.2,<79.0a0
- libzlib >=1.3.1,<2.0a0
license: blessing
purls: []
- size: 909777
- timestamp: 1768148320535
-- conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.51.2-hf5d6505_0.conda
- sha256: 756478128e3e104bd7e7c3ce6c1b0efad7e08c7320c69fdc726e039323c63fbb
- md5: 903979414b47d777d548e5f0165e6cd8
+ size: 918420
+ timestamp: 1772819478684
+- conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.52.0-hf5d6505_0.conda
+ sha256: 5fccf1e4e4062f8b9a554abf4f9735a98e70f82e2865d0bfdb47b9de94887583
+ md5: 8830689d537fda55f990620680934bb1
depends:
- ucrt >=10.0.20348.0
- vc >=14.3,<15
- vc14_runtime >=14.44.35208
license: blessing
purls: []
- size: 1291616
- timestamp: 1768148278261
+ size: 1297302
+ timestamp: 1772818899033
- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_18.conda
sha256: 78668020064fdaa27e9ab65cd2997e2c837b564ab26ce3bf0e58a2ce1a525c6e
md5: 1b08cd684f34175e4514474793d44bcb
@@ -2035,6 +3919,75 @@ packages:
purls: []
size: 17628403
timestamp: 1771378058765
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.1-h9d88235_1.conda
+ sha256: e5f8c38625aa6d567809733ae04bb71c161a42e44a9fa8227abe61fa5c60ebe0
+ md5: cd5a90476766d53e901500df9215e927
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - lerc >=4.0.0,<5.0a0
+ - libdeflate >=1.25,<1.26.0a0
+ - libgcc >=14
+ - libjpeg-turbo >=3.1.0,<4.0a0
+ - liblzma >=5.8.1,<6.0a0
+ - libstdcxx >=14
+ - libwebp-base >=1.6.0,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ license: HPND
+ purls: []
+ size: 435273
+ timestamp: 1762022005702
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libtiff-4.7.1-hdb009f0_1.conda
+ sha256: 7ff79470db39e803e21b8185bc8f19c460666d5557b1378d1b1e857d929c6b39
+ md5: 8c6fd84f9c87ac00636007c6131e457d
+ depends:
+ - lerc >=4.0.0,<5.0a0
+ - libdeflate >=1.25,<1.26.0a0
+ - libgcc >=14
+ - libjpeg-turbo >=3.1.0,<4.0a0
+ - liblzma >=5.8.1,<6.0a0
+ - libstdcxx >=14
+ - libwebp-base >=1.6.0,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ license: HPND
+ purls: []
+ size: 488407
+ timestamp: 1762022048105
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.7.1-h4030677_1.conda
+ sha256: e9248077b3fa63db94caca42c8dbc6949c6f32f94d1cafad127f9005d9b1507f
+ md5: e2a72ab2fa54ecb6abab2b26cde93500
+ depends:
+ - __osx >=11.0
+ - lerc >=4.0.0,<5.0a0
+ - libcxx >=19
+ - libdeflate >=1.25,<1.26.0a0
+ - libjpeg-turbo >=3.1.0,<4.0a0
+ - liblzma >=5.8.1,<6.0a0
+ - libwebp-base >=1.6.0,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ license: HPND
+ purls: []
+ size: 373892
+ timestamp: 1762022345545
+- conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.1-h8f73337_1.conda
+ sha256: f1b8cccaaeea38a28b9cd496694b2e3d372bb5be0e9377c9e3d14b330d1cba8a
+ md5: 549845d5133100142452812feb9ba2e8
+ depends:
+ - lerc >=4.0.0,<5.0a0
+ - libdeflate >=1.25,<1.26.0a0
+ - libjpeg-turbo >=3.1.0,<4.0a0
+ - liblzma >=5.8.1,<6.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - zstd >=1.5.7,<1.6.0a0
+ license: HPND
+ purls: []
+ size: 993166
+ timestamp: 1762022118895
- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.41.3-h5347b49_0.conda
sha256: 1a7539cfa7df00714e8943e18de0b06cceef6778e420a5ee3a2a145773758aee
md5: db409b7c1720428638e7c0d509d3e1b5
@@ -2056,17 +4009,140 @@ packages:
purls: []
size: 43453
timestamp: 1766271546875
-- conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
- sha256: 6ae68e0b86423ef188196fff6207ed0c8195dd84273cb5623b85aa08033a410c
- md5: 5aa797f8787fe7a17d1b0821485b5adc
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libvulkan-loader-1.4.341.0-h5279c79_0.conda
+ sha256: a68280d57dfd29e3d53400409a39d67c4b9515097eba733aa6fe00c880620e2b
+ md5: 31ad065eda3c2d88f8215b1289df9c89
depends:
- - libgcc-ng >=12
- license: LGPL-2.1-or-later
- purls: []
- size: 100393
- timestamp: 1702724383534
-- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxcrypt-4.4.36-h31becfc_1.conda
- sha256: 6b46c397644091b8a26a3048636d10b989b1bf266d4be5e9474bf763f828f41f
+ - __glibc >=2.17,<3.0.a0
+ - libstdcxx >=14
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ - xorg-libxrandr >=1.5.5,<2.0a0
+ constrains:
+ - libvulkan-headers 1.4.341.0.*
+ license: Apache-2.0
+ license_family: APACHE
+ purls: []
+ size: 199795
+ timestamp: 1770077125520
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libvulkan-loader-1.4.341.0-h8b8848b_0.conda
+ sha256: 92a92589f4f787201bc5091990001f61515fa794fa4f0fb15f0ca50f3cc330cc
+ md5: 06bb91a87fb97ea09398d2e121e00c39
+ depends:
+ - libstdcxx >=14
+ - libgcc >=14
+ - xorg-libxrandr >=1.5.5,<2.0a0
+ - xorg-libx11 >=1.8.12,<2.0a0
+ constrains:
+ - libvulkan-headers 1.4.341.0.*
+ license: Apache-2.0
+ license_family: APACHE
+ purls: []
+ size: 217655
+ timestamp: 1770077141862
+- conda: https://conda.anaconda.org/conda-forge/win-64/libvulkan-loader-1.4.341.0-h477610d_0.conda
+ sha256: 0f0965edca8b255187604fc7712c53fe9064b31a1845a7dfb2b63bf660de84a7
+ md5: 804880b2674119b84277d6c16b01677d
+ depends:
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - ucrt >=10.0.20348.0
+ constrains:
+ - libvulkan-headers 1.4.341.0.*
+ license: Apache-2.0
+ license_family: APACHE
+ purls: []
+ size: 282251
+ timestamp: 1770077165680
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.6.0-hd42ef1d_0.conda
+ sha256: 3aed21ab28eddffdaf7f804f49be7a7d701e8f0e46c856d801270b470820a37b
+ md5: aea31d2e5b1091feca96fcfe945c3cf9
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ constrains:
+ - libwebp 1.6.0
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 429011
+ timestamp: 1752159441324
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libwebp-base-1.6.0-ha2e29f5_0.conda
+ sha256: b03700a1f741554e8e5712f9b06dd67e76f5301292958cd3cb1ac8c6fdd9ed25
+ md5: 24e92d0942c799db387f5c9d7b81f1af
+ depends:
+ - libgcc >=14
+ constrains:
+ - libwebp 1.6.0
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 359496
+ timestamp: 1752160685488
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.6.0-h07db88b_0.conda
+ sha256: a4de3f371bb7ada325e1f27a4ef7bcc81b2b6a330e46fac9c2f78ac0755ea3dd
+ md5: e5e7d467f80da752be17796b87fe6385
+ depends:
+ - __osx >=11.0
+ constrains:
+ - libwebp 1.6.0
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 294974
+ timestamp: 1752159906788
+- conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.6.0-h4d5522a_0.conda
+ sha256: 7b6316abfea1007e100922760e9b8c820d6fc19df3f42fb5aca684cfacb31843
+ md5: f9bbae5e2537e3b06e0f7310ba76c893
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ constrains:
+ - libwebp 1.6.0
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 279176
+ timestamp: 1752159543911
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.17.0-h8a09558_0.conda
+ sha256: 666c0c431b23c6cec6e492840b176dde533d48b7e6fb8883f5071223433776aa
+ md5: 92ed62436b625154323d40d5f2f11dd7
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - pthread-stubs
+ - xorg-libxau >=1.0.11,<2.0a0
+ - xorg-libxdmcp
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 395888
+ timestamp: 1727278577118
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxcb-1.17.0-h262b8f6_0.conda
+ sha256: 461cab3d5650ac6db73a367de5c8eca50363966e862dcf60181d693236b1ae7b
+ md5: cd14ee5cca2464a425b1dbfc24d90db2
+ depends:
+ - libgcc >=13
+ - pthread-stubs
+ - xorg-libxau >=1.0.11,<2.0a0
+ - xorg-libxdmcp
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 397493
+ timestamp: 1727280745441
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
+ sha256: 6ae68e0b86423ef188196fff6207ed0c8195dd84273cb5623b85aa08033a410c
+ md5: 5aa797f8787fe7a17d1b0821485b5adc
+ depends:
+ - libgcc-ng >=12
+ license: LGPL-2.1-or-later
+ purls: []
+ size: 100393
+ timestamp: 1702724383534
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxcrypt-4.4.36-h31becfc_1.conda
+ sha256: 6b46c397644091b8a26a3048636d10b989b1bf266d4be5e9474bf763f828f41f
md5: b4df5d7d4b63579d081fd3a4cf99740e
depends:
- libgcc-ng >=12
@@ -2074,57 +4150,301 @@ packages:
purls: []
size: 114269
timestamp: 1702724369203
-- conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda
- sha256: d4bfe88d7cb447768e31650f06257995601f89076080e76df55e3112d4e47dc4
- md5: edb0dca6bc32e4f4789199455a1dbeb8
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.13.1-hca5e8e5_0.conda
+ sha256: d2195b5fbcb0af1ff7b345efdf89290c279b8d1d74f325ae0ac98148c375863c
+ md5: 2bca1fbb221d9c3c8e3a155784bbc2e9
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - libxcb >=1.17.0,<2.0a0
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - xkeyboard-config
+ - xorg-libxau >=1.0.12,<2.0a0
+ license: MIT/X11 Derivative
+ license_family: MIT
+ purls: []
+ size: 837922
+ timestamp: 1764794163823
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxkbcommon-1.13.1-h3c6a4c8_0.conda
+ sha256: 37e4aa45b71c35095a01835bd42fa37c08218fec44eb2c6bf4b9e2826b0351d4
+ md5: 22c1ce28d481e490f3635c1b6a2bb23f
+ depends:
+ - libgcc >=14
+ - libstdcxx >=14
+ - libxcb >=1.17.0,<2.0a0
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - xkeyboard-config
+ - xorg-libxau >=1.0.12,<2.0a0
+ license: MIT/X11 Derivative
+ license_family: MIT
+ purls: []
+ size: 863646
+ timestamp: 1764794352540
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.15.2-he237659_0.conda
+ sha256: 275c324f87bda1a3b67d2f4fcc3555eeff9e228a37655aa001284a7ceb6b0392
+ md5: e49238a1609f9a4a844b09d9926f2c3d
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - icu >=78.2,<79.0a0
+ - libgcc >=14
+ - libiconv >=1.18,<2.0a0
+ - liblzma >=5.8.2,<6.0a0
+ - libxml2-16 2.15.2 hca6bf5a_0
+ - libzlib >=1.3.1,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 45968
+ timestamp: 1772704614539
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-2.15.2-h825857f_0.conda
+ sha256: 3e51e1952cb60c8107094b6b78473d91ff49d428ad4bef6806124b383e8fe29c
+ md5: 19de96909ee1198e2853acd8aba89f6c
+ depends:
+ - icu >=78.2,<79.0a0
+ - libgcc >=14
+ - libiconv >=1.18,<2.0a0
+ - liblzma >=5.8.2,<6.0a0
+ - libxml2-16 2.15.2 h79dcc73_0
+ - libzlib >=1.3.1,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 47837
+ timestamp: 1772704681112
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.15.2-h8d039ee_0.conda
+ sha256: 99cb32dd06a2e58c12981b71a84b052293f27b5ab042e3f21d895f5d7ee13eff
+ md5: e476ba84e57f2bd2004a27381812ad4e
+ depends:
+ - __osx >=11.0
+ - icu >=78.2,<79.0a0
+ - libiconv >=1.18,<2.0a0
+ - liblzma >=5.8.2,<6.0a0
+ - libxml2-16 2.15.2 h5ef1a60_0
+ - libzlib >=1.3.1,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 41206
+ timestamp: 1772704982288
+- conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.15.2-h779ef1b_0.conda
+ sha256: 2131e25d4fb21be66d7ef685e1b2d66f04aa08e70b37322d557824389d0a4c2a
+ md5: be3843e412c9f9d697958aa68c72d09d
+ depends:
+ - icu >=78.2,<79.0a0
+ - libiconv >=1.18,<2.0a0
+ - liblzma >=5.8.2,<6.0a0
+ - libxml2-16 2.15.2 h3cfd58e_0
+ - libzlib >=1.3.1,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 43866
+ timestamp: 1772704745691
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-16-2.15.2-hca6bf5a_0.conda
+ sha256: 08d2b34b49bec9613784f868209bb7c3bb8840d6cf835ff692e036b09745188c
+ md5: f3bc152cb4f86babe30f3a4bf0dbef69
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - icu >=78.2,<79.0a0
+ - libgcc >=14
+ - libiconv >=1.18,<2.0a0
+ - liblzma >=5.8.2,<6.0a0
+ - libzlib >=1.3.1,<2.0a0
+ constrains:
+ - libxml2 2.15.2
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 557492
+ timestamp: 1772704601644
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxml2-16-2.15.2-h79dcc73_0.conda
+ sha256: da6b2ebbcecc158200d90be39514e4e902971628029b35b7f6ad57270659c5d9
+ md5: e3ec9079759d35b875097d6a9a69e744
+ depends:
+ - icu >=78.2,<79.0a0
+ - libgcc >=14
+ - libiconv >=1.18,<2.0a0
+ - liblzma >=5.8.2,<6.0a0
+ - libzlib >=1.3.1,<2.0a0
+ constrains:
+ - libxml2 2.15.2
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 598438
+ timestamp: 1772704671710
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-16-2.15.2-h5ef1a60_0.conda
+ sha256: 6432259204e78c8a8a815afae987fbf60bd722605fe2c4b022e65196b17d4537
+ md5: b284e2b02d53ef7981613839fb86beee
+ depends:
+ - __osx >=11.0
+ - icu >=78.2,<79.0a0
+ - libiconv >=1.18,<2.0a0
+ - liblzma >=5.8.2,<6.0a0
+ - libzlib >=1.3.1,<2.0a0
+ constrains:
+ - libxml2 2.15.2
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 466220
+ timestamp: 1772704950232
+- conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-16-2.15.2-h3cfd58e_0.conda
+ sha256: d6d792f8f1d6786b9144adfa62c33a04aeec3d76682351b353ca1224fc1a74f3
+ md5: f6dd496a1f2b66951110a3a0817f699b
+ depends:
+ - icu >=78.2,<79.0a0
+ - libiconv >=1.18,<2.0a0
+ - liblzma >=5.8.2,<6.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ constrains:
+ - libxml2 2.15.2
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 520731
+ timestamp: 1772704723763
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.43-h711ed8c_1.conda
+ sha256: 0694760a3e62bdc659d90a14ae9c6e132b525a7900e59785b18a08bb52a5d7e5
+ md5: 87e6096ec6d542d1c1f8b33245fe8300
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libxml2
+ - libxml2-16 >=2.14.6
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 245434
+ timestamp: 1757963724977
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libxslt-1.1.43-h6700d25_1.conda
+ sha256: 8a816572a4650149d28c0b8b44e294380de18787735d00c7cf5fad91dba8e286
+ md5: 0f31501ccd51a40f0a91381080ae7368
+ depends:
+ - libgcc >=14
+ - libxml2
+ - libxml2-16 >=2.14.6
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 253367
+ timestamp: 1757964660396
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxslt-1.1.43-hb2570ba_1.conda
+ sha256: 7a4d0676ab1407fecb24d4ada7fe31a98c8889f61f04612ea533599c22b8c472
+ md5: 90f7ed12bb3c164c758131b3d3c2ab0c
+ depends:
+ - __osx >=11.0
+ - libxml2
+ - libxml2-16 >=2.14.6
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 220345
+ timestamp: 1757964000982
+- conda: https://conda.anaconda.org/conda-forge/win-64/libxslt-1.1.43-h0fbe4c1_1.conda
+ sha256: 13da38939c2c20e7112d683ab6c9f304bfaf06230a2c6a7cf00359da1a003ec7
+ md5: 46034d9d983edc21e84c0b36f1b4ba61
+ depends:
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 420223
+ timestamp: 1757963935611
+- conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda
+ sha256: 55044c403570f0dc26e6364de4dc5368e5f3fc7ff103e867c487e2b5ab2bcda9
+ md5: d87ff7921124eccd67248aa483c23fec
depends:
- __glibc >=2.17,<3.0.a0
- - libgcc >=13
constrains:
- - zlib 1.3.1 *_2
+ - zlib 1.3.2 *_2
license: Zlib
license_family: Other
purls: []
- size: 60963
- timestamp: 1727963148474
-- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.1-h86ecc28_2.conda
- sha256: 5a2c1eeef69342e88a98d1d95bff1603727ab1ff4ee0e421522acd8813439b84
- md5: 08aad7cbe9f5a6b460d0976076b6ae64
- depends:
- - libgcc >=13
+ size: 63629
+ timestamp: 1774072609062
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/libzlib-1.3.2-hdc9db2a_2.conda
+ sha256: eb111e32e5a7313a5bf799c7fb2419051fa2fe7eff74769fac8d5a448b309f7f
+ md5: 502006882cf5461adced436e410046d1
constrains:
- - zlib 1.3.1 *_2
+ - zlib 1.3.2 *_2
license: Zlib
license_family: Other
purls: []
- size: 66657
- timestamp: 1727963199518
-- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda
- sha256: ce34669eadaba351cd54910743e6a2261b67009624dbc7daeeafdef93616711b
- md5: 369964e85dc26bfe78f41399b366c435
+ size: 69833
+ timestamp: 1774072605429
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.3.2-h8088a28_2.conda
+ sha256: 361415a698514b19a852f5d1123c5da746d4642139904156ddfca7c922d23a05
+ md5: bc5a5721b6439f2f62a84f2548136082
depends:
- __osx >=11.0
constrains:
- - zlib 1.3.1 *_2
+ - zlib 1.3.2 *_2
license: Zlib
license_family: Other
purls: []
- size: 46438
- timestamp: 1727963202283
-- conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda
- sha256: ba945c6493449bed0e6e29883c4943817f7c79cbff52b83360f7b341277c6402
- md5: 41fbfac52c601159df6c01f875de31b9
+ size: 47759
+ timestamp: 1774072956767
+- conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.2-hfd05255_2.conda
+ sha256: 88609816e0cc7452bac637aaf65783e5edf4fee8a9f8e22bdc3a75882c536061
+ md5: dbabbd6234dea34040e631f87676292f
depends:
- ucrt >=10.0.20348.0
- - vc >=14.2,<15
- - vc14_runtime >=14.29.30139
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
constrains:
- - zlib 1.3.1 *_2
+ - zlib 1.3.2 *_2
license: Zlib
license_family: Other
purls: []
- size: 55476
- timestamp: 1727963768015
+ size: 58347
+ timestamp: 1774072851498
+- pypi: https://files.pythonhosted.org/packages/0c/29/0348de65b8cc732daa3e33e67806420b2ae89bdce2b04af740289c5c6c8c/loguru-0.7.3-py3-none-any.whl
+ name: loguru
+ version: 0.7.3
+ sha256: 31a33c10c8e1e10422bfd431aeb5d351c7cf7fa671e3c4df004162264b28220c
+ requires_dist:
+ - colorama>=0.3.4 ; sys_platform == 'win32'
+ - aiocontextvars>=0.2.0 ; python_full_version < '3.7'
+ - win32-setctime>=1.0.0 ; sys_platform == 'win32'
+ - pre-commit==4.0.1 ; python_full_version >= '3.9' and extra == 'dev'
+ - tox==3.27.1 ; python_full_version < '3.8' and extra == 'dev'
+ - tox==4.23.2 ; python_full_version >= '3.8' and extra == 'dev'
+ - pytest==6.1.2 ; python_full_version < '3.8' and extra == 'dev'
+ - pytest==8.3.2 ; python_full_version >= '3.8' and extra == 'dev'
+ - pytest-cov==2.12.1 ; python_full_version < '3.8' and extra == 'dev'
+ - pytest-cov==5.0.0 ; python_full_version == '3.8.*' and extra == 'dev'
+ - pytest-cov==6.0.0 ; python_full_version >= '3.9' and extra == 'dev'
+ - pytest-mypy-plugins==1.9.3 ; python_full_version >= '3.6' and python_full_version < '3.8' and extra == 'dev'
+ - pytest-mypy-plugins==3.1.0 ; python_full_version >= '3.8' and extra == 'dev'
+ - colorama==0.4.5 ; python_full_version < '3.8' and extra == 'dev'
+ - colorama==0.4.6 ; python_full_version >= '3.8' and extra == 'dev'
+ - freezegun==1.1.0 ; python_full_version < '3.8' and extra == 'dev'
+ - freezegun==1.5.0 ; python_full_version >= '3.8' and extra == 'dev'
+ - exceptiongroup==1.1.3 ; python_full_version >= '3.7' and python_full_version < '3.11' and extra == 'dev'
+ - mypy==0.910 ; python_full_version < '3.6' and extra == 'dev'
+ - mypy==0.971 ; python_full_version == '3.6.*' and extra == 'dev'
+ - mypy==1.4.1 ; python_full_version == '3.7.*' and extra == 'dev'
+ - mypy==1.13.0 ; python_full_version >= '3.8' and extra == 'dev'
+ - sphinx==8.1.3 ; python_full_version >= '3.11' and extra == 'dev'
+ - sphinx-rtd-theme==3.0.2 ; python_full_version >= '3.11' and extra == 'dev'
+ - myst-parser==4.0.0 ; python_full_version >= '3.11' and extra == 'dev'
+ - build==1.2.2 ; python_full_version >= '3.11' and extra == 'dev'
+ - twine==6.0.1 ; python_full_version >= '3.11' and extra == 'dev'
+ requires_python: '>=3.5,<4.0'
- pypi: https://files.pythonhosted.org/packages/e2/6d/d56be57340baf2e6f6361386f4c21b8b5e001251c64af954787f8d01ec78/loop_rate_limiters-1.2.0-py3-none-any.whl
name: loop-rate-limiters
version: 1.2.0
@@ -2163,6 +4483,26 @@ packages:
- pytest-regressions ; extra == 'testing'
- requests ; extra == 'testing'
requires_python: '>=3.10'
+- pypi: https://files.pythonhosted.org/packages/1e/2c/799f4742efc39633a1b54a92eec4082e4f815314869865d876824c257c1e/markupsafe-3.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
+ name: markupsafe
+ version: 3.0.3
+ sha256: 3a7e8ae81ae39e62a41ec302f972ba6ae23a5c5396c8e60113e9066ef893da0d
+ requires_python: '>=3.9'
+- pypi: https://files.pythonhosted.org/packages/3c/2e/8d0c2ab90a8c1d9a24f0399058ab8519a3279d1bd4289511d74e909f060e/markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
+ name: markupsafe
+ version: 3.0.3
+ sha256: d6dd0be5b5b189d31db7cda48b91d7e0a9795f31430b7f271219ab30f1d3ac9d
+ requires_python: '>=3.9'
+- pypi: https://files.pythonhosted.org/packages/9a/81/7e4e08678a1f98521201c3079f77db69fb552acd56067661f8c2f534a718/markupsafe-3.0.3-cp312-cp312-macosx_11_0_arm64.whl
+ name: markupsafe
+ version: 3.0.3
+ sha256: 1872df69a4de6aead3491198eaf13810b565bdbeec3ae2dc8780f14458ec73ce
+ requires_python: '>=3.9'
+- pypi: https://files.pythonhosted.org/packages/aa/5b/bec5aa9bbbb2c946ca2733ef9c4ca91c91b6a24580193e891b5f7dbe8e1e/markupsafe-3.0.3-cp312-cp312-win_amd64.whl
+ name: markupsafe
+ version: 3.0.3
+ sha256: 26a5784ded40c9e318cfc2bdb30fe164bdb8665ded9cd64d500a34fb42067b1c
+ requires_python: '>=3.9'
- pypi: https://files.pythonhosted.org/packages/00/f9/7638f5cc82ec8a7aa005de48622eecc3ed7c9854b96ba15bd76b7fd27574/matplotlib-3.10.8-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
name: matplotlib
version: 3.10.8
@@ -2409,10 +4749,10 @@ packages:
version: 10.8.0
sha256: 52d4362373dcf7c52546bc4af9a86ee7c4579df9a8dc268be0a2f949d376cc9b
requires_python: '>=3.9'
-- pypi: https://files.pythonhosted.org/packages/02/37/527d83610b878f27c01dd762e0e41aaa62f095c607f0500ac7f724a2c7a5/mujoco-3.5.0-cp312-cp312-win_amd64.whl
+- pypi: https://files.pythonhosted.org/packages/26/55/7407eced2c44fbea233302d2c11e778852ea0f2eb0e14610f13a7e0d6ac7/mujoco-3.6.0-cp312-cp312-macosx_11_0_arm64.whl
name: mujoco
- version: 3.5.0
- sha256: 4b3a62af174ab59b9b6d816dca0786b7fd85ac081d6c2a931a2b22dd6e821f50
+ version: 3.6.0
+ sha256: ea71750f8cbe24b02a091093592f08fb71c95692b43c25e87dabe496ace0bb55
requires_dist:
- absl-py
- etils[epath]
@@ -2431,11 +4771,11 @@ packages:
- typing-extensions ; extra == 'sysid'
- usd-core ; extra == 'usd'
- pillow ; extra == 'usd'
- requires_python: '>=3.9'
-- pypi: https://files.pythonhosted.org/packages/b8/7b/c1612ec68d98e5f3dbc5b8a21ff5d40ab52409fcc89ea7afc8a197983297/mujoco-3.5.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
+ requires_python: '>=3.10'
+- pypi: https://files.pythonhosted.org/packages/2c/cc/2aae89c3a83fed29ccb9057c05fb4a218b2a42c6dea136d9a78fea6b39f8/mujoco-3.6.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
name: mujoco
- version: 3.5.0
- sha256: 12bfb2bb70f760e0d51fd59f3c43b2906c7660a23954fd717321da52ba85a617
+ version: 3.6.0
+ sha256: 094de585a2084508f1cfd76170b0dfe1d9c122b3bd4677e96ef2383100c9032f
requires_dist:
- absl-py
- etils[epath]
@@ -2454,11 +4794,11 @@ packages:
- typing-extensions ; extra == 'sysid'
- usd-core ; extra == 'usd'
- pillow ; extra == 'usd'
- requires_python: '>=3.9'
-- pypi: https://files.pythonhosted.org/packages/c8/8a/229e4db3692be55532e155e2ca6a1363752243ee79df0e7e22ba00f716cf/mujoco-3.5.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
+ requires_python: '>=3.10'
+- pypi: https://files.pythonhosted.org/packages/52/6c/5ec4e93676a65064a6591176772e00cfa02716156a1d0a7d646a8203348f/mujoco-3.6.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
name: mujoco
- version: 3.5.0
- sha256: 66fe37276644c28fab497929c55580725de81afc6d511a40cc27525a8dd99efa
+ version: 3.6.0
+ sha256: 8714fab312c7ee58f45bda7ef8762da2184e3a6a1d780a5093e93a160d66bd3d
requires_dist:
- absl-py
- etils[epath]
@@ -2477,11 +4817,11 @@ packages:
- typing-extensions ; extra == 'sysid'
- usd-core ; extra == 'usd'
- pillow ; extra == 'usd'
- requires_python: '>=3.9'
-- pypi: https://files.pythonhosted.org/packages/e1/d4/d0032323f58a9b8080b8464c6aade8d5ac2e101dbed1de64a38b3913b446/mujoco-3.5.0-cp312-cp312-macosx_11_0_arm64.whl
+ requires_python: '>=3.10'
+- pypi: https://files.pythonhosted.org/packages/92/22/38d82f0c34213af53afbbb248b3442943ef48ffbac1e4c909b321e02ac56/mujoco-3.6.0-cp312-cp312-win_amd64.whl
name: mujoco
- version: 3.5.0
- sha256: 94cf4285b46bc2d74fbe86e39a93ecfb3b0e584477fff7e38d293d47b88576e7
+ version: 3.6.0
+ sha256: 3d4ec53e4e20fcc85843d607fa1648e0b12d2d2de81ee6f85926e95a7e84e8d8
requires_dist:
- absl-py
- etils[epath]
@@ -2500,6 +4840,28 @@ packages:
- typing-extensions ; extra == 'sysid'
- usd-core ; extra == 'usd'
- pillow ; extra == 'usd'
+ requires_python: '>=3.10'
+- pypi: https://files.pythonhosted.org/packages/fe/75/0b4a10da17a44cf13567d08a9c7632a285297e46253263f1ae119129d10a/narwhals-2.18.0-py3-none-any.whl
+ name: narwhals
+ version: 2.18.0
+ sha256: 68378155ee706ac9c5b25868ef62ecddd62947b6df7801a0a156bc0a615d2d0d
+ requires_dist:
+ - cudf-cu12>=24.10.0 ; extra == 'cudf'
+ - dask[dataframe]>=2024.8 ; extra == 'dask'
+ - duckdb>=1.1 ; extra == 'duckdb'
+ - ibis-framework>=6.0.0 ; extra == 'ibis'
+ - packaging ; extra == 'ibis'
+ - pyarrow-hotfix ; extra == 'ibis'
+ - rich ; extra == 'ibis'
+ - modin ; extra == 'modin'
+ - pandas>=1.1.3 ; extra == 'pandas'
+ - polars>=0.20.4 ; extra == 'polars'
+ - pyarrow>=13.0.0 ; extra == 'pyarrow'
+ - pyspark>=3.5.0 ; extra == 'pyspark'
+ - pyspark[connect]>=3.5.0 ; extra == 'pyspark-connect'
+ - duckdb>=1.1 ; extra == 'sql'
+ - sqlparse ; extra == 'sql'
+ - sqlframe>=3.22.0,!=3.39.3 ; extra == 'sqlframe'
requires_python: '>=3.9'
- conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-h2d0b736_3.conda
sha256: 3fde293232fa3fca98635e1167de6b7c7fda83caf24b9d6c91ec9eefb4f4d586
@@ -2554,25 +4916,25 @@ packages:
version: 1.10.0
sha256: 5bb13e3eed2923615535339b3c620e76779af4cb4c6a90deccc9e36b274d3827
requires_python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*'
-- pypi: https://files.pythonhosted.org/packages/1f/f8/55483431f2b2fd015ae6ed4fe62288823ce908437ed49db5a03d15151678/numpy-2.4.2-cp312-cp312-macosx_11_0_arm64.whl
+- pypi: https://files.pythonhosted.org/packages/74/1b/ee2abfc68e1ce728b2958b6ba831d65c62e1b13ce3017c13943f8f9b5b2e/numpy-2.4.3-cp312-cp312-macosx_11_0_arm64.whl
name: numpy
- version: 2.4.2
- sha256: 40397bda92382fcec844066efb11f13e1c9a3e2a8e8f318fb72ed8b6db9f60f1
+ version: 2.4.3
+ sha256: 7395e69ff32526710748f92cd8c9849b361830968ea3e24a676f272653e8983e
requires_python: '>=3.11'
-- pypi: https://files.pythonhosted.org/packages/92/0f/7ceaaeaacb40567071e94dbf2c9480c0ae453d5bb4f52bea3892c39dc83c/numpy-2.4.2-cp312-cp312-win_amd64.whl
+- pypi: https://files.pythonhosted.org/packages/7b/12/8c9f0c6c95f76aeb20fc4a699c33e9f827fa0d0f857747c73bb7b17af945/numpy-2.4.3-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
name: numpy
- version: 2.4.2
- sha256: 209fae046e62d0ce6435fcfe3b1a10537e858249b3d9b05829e2a05218296a85
+ version: 2.4.3
+ sha256: 32e3bef222ad6b052280311d1d60db8e259e4947052c3ae7dd6817451fc8a4c5
requires_python: '>=3.11'
-- pypi: https://files.pythonhosted.org/packages/b1/91/b97fdfd12dc75b02c44e26c6638241cc004d4079a0321a69c62f51470c4c/numpy-2.4.2-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
+- pypi: https://files.pythonhosted.org/packages/bd/79/cc665495e4d57d0aa6fbcc0aa57aa82671dfc78fbf95fe733ed86d98f52a/numpy-2.4.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
name: numpy
- version: 2.4.2
- sha256: 6d82351358ffbcdcd7b686b90742a9b86632d6c1c051016484fa0b326a0a1548
+ version: 2.4.3
+ sha256: e7dd01a46700b1967487141a66ac1a3cf0dd8ebf1f08db37d46389401512ca97
requires_python: '>=3.11'
-- pypi: https://files.pythonhosted.org/packages/f5/c6/a18e59f3f0b8071cc85cbc8d80cd02d68aa9710170b2553a117203d46936/numpy-2.4.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
+- pypi: https://files.pythonhosted.org/packages/d7/7c/f5ee1bf6ed888494978046a809df2882aad35d414b622893322df7286879/numpy-2.4.3-cp312-cp312-win_amd64.whl
name: numpy
- version: 2.4.2
- sha256: 9e35d3e0144137d9fdae62912e869136164534d64a169f86438bc9561b6ad49f
+ version: 2.4.3
+ sha256: 65f3c2455188f09678355f5cae1f959a06b778bc66d535da07bf2ef20cd319d5
requires_python: '>=3.11'
- pypi: https://files.pythonhosted.org/packages/ea/2c/e17b8814050427929077639d35a42187a006922600d4840475bdc5f64ebb/numpy_stl-3.2.0-py3-none-any.whl
name: numpy-stl
@@ -2681,6 +5043,49 @@ packages:
- numpy<2.0 ; python_full_version < '3.9'
- numpy>=2 ; python_full_version >= '3.9'
requires_python: '>=3.6'
+- conda: https://conda.anaconda.org/conda-forge/linux-64/openldap-2.6.10-hbde042b_1.conda
+ sha256: 2e185a3dc2bdc4525dd68559efa3f24fa9159a76c40473e320732b35115163b2
+ md5: 3c40a106eadf7c14c6236ceddb267893
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - cyrus-sasl >=2.1.28,<3.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - openssl >=3.5.5,<4.0a0
+ license: OLDAP-2.8
+ license_family: BSD
+ purls: []
+ size: 785570
+ timestamp: 1771970256722
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/openldap-2.6.10-h2fb54aa_1.conda
+ sha256: 32c9bd01e108a6983778c13b54ff6a99cb2eca188ce217db907819ec6d1d5db7
+ md5: b761e5f1358577a16ca187c6116d9fcc
+ depends:
+ - cyrus-sasl >=2.1.28,<3.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - openssl >=3.5.5,<4.0a0
+ license: OLDAP-2.8
+ license_family: BSD
+ purls: []
+ size: 907905
+ timestamp: 1771970279050
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/openldap-2.6.10-hf7f56bc_1.conda
+ sha256: e0b08e88f52391c829d347039c6152e3f39b8b0ca0baf85b42fa38e8edb2ff17
+ md5: a9a018599629925fb1e597e5a730d2af
+ depends:
+ - __osx >=11.0
+ - cyrus-sasl >=2.1.28,<3.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - libcxx >=19
+ - openssl >=3.5.5,<4.0a0
+ license: OLDAP-2.8
+ license_family: BSD
+ purls: []
+ size: 843972
+ timestamp: 1771970904727
- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.1-h35e630c_1.conda
sha256: 44c877f8af015332a5d12f5ff0fb20ca32f896526a7d0cdb30c769df1144fb5c
md5: f61eb8cd60ff9057122a3d338b99c00f
@@ -2745,42 +5150,453 @@ packages:
- pkg:pypi/packaging?source=compressed-mapping
size: 72010
timestamp: 1769093650580
-- pypi: https://files.pythonhosted.org/packages/3d/17/688626d192d7261bbbf98846fc98995726bddc2c945344b65bec3a29d731/pillow-12.1.1-cp312-cp312-win_amd64.whl
- name: pillow
- version: 12.1.1
- sha256: 21329ec8c96c6e979cd0dfd29406c40c1d52521a90544463057d2aaa937d66a6
+- pypi: https://files.pythonhosted.org/packages/3d/fe/89d77e424365280b79d99b3e1e7d606f5165af2f2ecfaf0c6d24c799d607/pandas-3.0.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
+ name: pandas
+ version: 3.0.1
+ sha256: 532527a701281b9dd371e2f582ed9094f4c12dd9ffb82c0c54ee28d8ac9520c4
requires_dist:
- - furo ; extra == 'docs'
- - olefile ; extra == 'docs'
- - sphinx>=8.2 ; extra == 'docs'
- - sphinx-autobuild ; extra == 'docs'
- - sphinx-copybutton ; extra == 'docs'
- - sphinx-inline-tabs ; extra == 'docs'
- - sphinxext-opengraph ; extra == 'docs'
- - olefile ; extra == 'fpx'
- - olefile ; extra == 'mic'
- - arro3-compute ; extra == 'test-arrow'
- - arro3-core ; extra == 'test-arrow'
- - nanoarrow ; extra == 'test-arrow'
- - pyarrow ; extra == 'test-arrow'
- - check-manifest ; extra == 'tests'
- - coverage>=7.4.2 ; extra == 'tests'
- - defusedxml ; extra == 'tests'
- - markdown2 ; extra == 'tests'
- - olefile ; extra == 'tests'
- - packaging ; extra == 'tests'
- - pyroma>=5 ; extra == 'tests'
- - pytest ; extra == 'tests'
- - pytest-cov ; extra == 'tests'
- - pytest-timeout ; extra == 'tests'
- - pytest-xdist ; extra == 'tests'
- - trove-classifiers>=2024.10.12 ; extra == 'tests'
- - defusedxml ; extra == 'xmp'
- requires_python: '>=3.10'
-- pypi: https://files.pythonhosted.org/packages/b2/8b/07587069c27be7535ac1fe33874e32de118fbd34e2a73b7f83436a88368c/pillow-12.1.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- name: pillow
- version: 12.1.1
- sha256: a0b1cd6232e2b618adcc54d9882e4e662a089d5768cd188f7c245b4c8c44a397
+ - numpy>=1.26.0 ; python_full_version < '3.14'
+ - numpy>=2.3.3 ; python_full_version >= '3.14'
+ - python-dateutil>=2.8.2
+ - tzdata ; sys_platform == 'win32'
+ - tzdata ; sys_platform == 'emscripten'
+ - hypothesis>=6.116.0 ; extra == 'test'
+ - pytest>=8.3.4 ; extra == 'test'
+ - pytest-xdist>=3.6.1 ; extra == 'test'
+ - pyarrow>=13.0.0 ; extra == 'pyarrow'
+ - bottleneck>=1.4.2 ; extra == 'performance'
+ - numba>=0.60.0 ; extra == 'performance'
+ - numexpr>=2.10.2 ; extra == 'performance'
+ - scipy>=1.14.1 ; extra == 'computation'
+ - xarray>=2024.10.0 ; extra == 'computation'
+ - fsspec>=2024.10.0 ; extra == 'fss'
+ - s3fs>=2024.10.0 ; extra == 'aws'
+ - gcsfs>=2024.10.0 ; extra == 'gcp'
+ - odfpy>=1.4.1 ; extra == 'excel'
+ - openpyxl>=3.1.5 ; extra == 'excel'
+ - python-calamine>=0.3.0 ; extra == 'excel'
+ - pyxlsb>=1.0.10 ; extra == 'excel'
+ - xlrd>=2.0.1 ; extra == 'excel'
+ - xlsxwriter>=3.2.0 ; extra == 'excel'
+ - pyarrow>=13.0.0 ; extra == 'parquet'
+ - pyarrow>=13.0.0 ; extra == 'feather'
+ - pyiceberg>=0.8.1 ; extra == 'iceberg'
+ - tables>=3.10.1 ; extra == 'hdf5'
+ - pyreadstat>=1.2.8 ; extra == 'spss'
+ - sqlalchemy>=2.0.36 ; extra == 'postgresql'
+ - psycopg2>=2.9.10 ; extra == 'postgresql'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'postgresql'
+ - sqlalchemy>=2.0.36 ; extra == 'mysql'
+ - pymysql>=1.1.1 ; extra == 'mysql'
+ - sqlalchemy>=2.0.36 ; extra == 'sql-other'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'sql-other'
+ - adbc-driver-sqlite>=1.2.0 ; extra == 'sql-other'
+ - beautifulsoup4>=4.12.3 ; extra == 'html'
+ - html5lib>=1.1 ; extra == 'html'
+ - lxml>=5.3.0 ; extra == 'html'
+ - lxml>=5.3.0 ; extra == 'xml'
+ - matplotlib>=3.9.3 ; extra == 'plot'
+ - jinja2>=3.1.5 ; extra == 'output-formatting'
+ - tabulate>=0.9.0 ; extra == 'output-formatting'
+ - pyqt5>=5.15.9 ; extra == 'clipboard'
+ - qtpy>=2.4.2 ; extra == 'clipboard'
+ - zstandard>=0.23.0 ; extra == 'compression'
+ - pytz>=2024.2 ; extra == 'timezone'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'all'
+ - adbc-driver-sqlite>=1.2.0 ; extra == 'all'
+ - beautifulsoup4>=4.12.3 ; extra == 'all'
+ - bottleneck>=1.4.2 ; extra == 'all'
+ - fastparquet>=2024.11.0 ; extra == 'all'
+ - fsspec>=2024.10.0 ; extra == 'all'
+ - gcsfs>=2024.10.0 ; extra == 'all'
+ - html5lib>=1.1 ; extra == 'all'
+ - hypothesis>=6.116.0 ; extra == 'all'
+ - jinja2>=3.1.5 ; extra == 'all'
+ - lxml>=5.3.0 ; extra == 'all'
+ - matplotlib>=3.9.3 ; extra == 'all'
+ - numba>=0.60.0 ; extra == 'all'
+ - numexpr>=2.10.2 ; extra == 'all'
+ - odfpy>=1.4.1 ; extra == 'all'
+ - openpyxl>=3.1.5 ; extra == 'all'
+ - psycopg2>=2.9.10 ; extra == 'all'
+ - pyarrow>=13.0.0 ; extra == 'all'
+ - pyiceberg>=0.8.1 ; extra == 'all'
+ - pymysql>=1.1.1 ; extra == 'all'
+ - pyqt5>=5.15.9 ; extra == 'all'
+ - pyreadstat>=1.2.8 ; extra == 'all'
+ - pytest>=8.3.4 ; extra == 'all'
+ - pytest-xdist>=3.6.1 ; extra == 'all'
+ - python-calamine>=0.3.0 ; extra == 'all'
+ - pytz>=2024.2 ; extra == 'all'
+ - pyxlsb>=1.0.10 ; extra == 'all'
+ - qtpy>=2.4.2 ; extra == 'all'
+ - scipy>=1.14.1 ; extra == 'all'
+ - s3fs>=2024.10.0 ; extra == 'all'
+ - sqlalchemy>=2.0.36 ; extra == 'all'
+ - tables>=3.10.1 ; extra == 'all'
+ - tabulate>=0.9.0 ; extra == 'all'
+ - xarray>=2024.10.0 ; extra == 'all'
+ - xlrd>=2.0.1 ; extra == 'all'
+ - xlsxwriter>=3.2.0 ; extra == 'all'
+ - zstandard>=0.23.0 ; extra == 'all'
+ requires_python: '>=3.11'
+- pypi: https://files.pythonhosted.org/packages/75/08/67cc404b3a966b6df27b38370ddd96b3b023030b572283d035181854aac5/pandas-3.0.1-cp312-cp312-win_amd64.whl
+ name: pandas
+ version: 3.0.1
+ sha256: 536232a5fe26dd989bd633e7a0c450705fdc86a207fec7254a55e9a22950fe43
+ requires_dist:
+ - numpy>=1.26.0 ; python_full_version < '3.14'
+ - numpy>=2.3.3 ; python_full_version >= '3.14'
+ - python-dateutil>=2.8.2
+ - tzdata ; sys_platform == 'win32'
+ - tzdata ; sys_platform == 'emscripten'
+ - hypothesis>=6.116.0 ; extra == 'test'
+ - pytest>=8.3.4 ; extra == 'test'
+ - pytest-xdist>=3.6.1 ; extra == 'test'
+ - pyarrow>=13.0.0 ; extra == 'pyarrow'
+ - bottleneck>=1.4.2 ; extra == 'performance'
+ - numba>=0.60.0 ; extra == 'performance'
+ - numexpr>=2.10.2 ; extra == 'performance'
+ - scipy>=1.14.1 ; extra == 'computation'
+ - xarray>=2024.10.0 ; extra == 'computation'
+ - fsspec>=2024.10.0 ; extra == 'fss'
+ - s3fs>=2024.10.0 ; extra == 'aws'
+ - gcsfs>=2024.10.0 ; extra == 'gcp'
+ - odfpy>=1.4.1 ; extra == 'excel'
+ - openpyxl>=3.1.5 ; extra == 'excel'
+ - python-calamine>=0.3.0 ; extra == 'excel'
+ - pyxlsb>=1.0.10 ; extra == 'excel'
+ - xlrd>=2.0.1 ; extra == 'excel'
+ - xlsxwriter>=3.2.0 ; extra == 'excel'
+ - pyarrow>=13.0.0 ; extra == 'parquet'
+ - pyarrow>=13.0.0 ; extra == 'feather'
+ - pyiceberg>=0.8.1 ; extra == 'iceberg'
+ - tables>=3.10.1 ; extra == 'hdf5'
+ - pyreadstat>=1.2.8 ; extra == 'spss'
+ - sqlalchemy>=2.0.36 ; extra == 'postgresql'
+ - psycopg2>=2.9.10 ; extra == 'postgresql'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'postgresql'
+ - sqlalchemy>=2.0.36 ; extra == 'mysql'
+ - pymysql>=1.1.1 ; extra == 'mysql'
+ - sqlalchemy>=2.0.36 ; extra == 'sql-other'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'sql-other'
+ - adbc-driver-sqlite>=1.2.0 ; extra == 'sql-other'
+ - beautifulsoup4>=4.12.3 ; extra == 'html'
+ - html5lib>=1.1 ; extra == 'html'
+ - lxml>=5.3.0 ; extra == 'html'
+ - lxml>=5.3.0 ; extra == 'xml'
+ - matplotlib>=3.9.3 ; extra == 'plot'
+ - jinja2>=3.1.5 ; extra == 'output-formatting'
+ - tabulate>=0.9.0 ; extra == 'output-formatting'
+ - pyqt5>=5.15.9 ; extra == 'clipboard'
+ - qtpy>=2.4.2 ; extra == 'clipboard'
+ - zstandard>=0.23.0 ; extra == 'compression'
+ - pytz>=2024.2 ; extra == 'timezone'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'all'
+ - adbc-driver-sqlite>=1.2.0 ; extra == 'all'
+ - beautifulsoup4>=4.12.3 ; extra == 'all'
+ - bottleneck>=1.4.2 ; extra == 'all'
+ - fastparquet>=2024.11.0 ; extra == 'all'
+ - fsspec>=2024.10.0 ; extra == 'all'
+ - gcsfs>=2024.10.0 ; extra == 'all'
+ - html5lib>=1.1 ; extra == 'all'
+ - hypothesis>=6.116.0 ; extra == 'all'
+ - jinja2>=3.1.5 ; extra == 'all'
+ - lxml>=5.3.0 ; extra == 'all'
+ - matplotlib>=3.9.3 ; extra == 'all'
+ - numba>=0.60.0 ; extra == 'all'
+ - numexpr>=2.10.2 ; extra == 'all'
+ - odfpy>=1.4.1 ; extra == 'all'
+ - openpyxl>=3.1.5 ; extra == 'all'
+ - psycopg2>=2.9.10 ; extra == 'all'
+ - pyarrow>=13.0.0 ; extra == 'all'
+ - pyiceberg>=0.8.1 ; extra == 'all'
+ - pymysql>=1.1.1 ; extra == 'all'
+ - pyqt5>=5.15.9 ; extra == 'all'
+ - pyreadstat>=1.2.8 ; extra == 'all'
+ - pytest>=8.3.4 ; extra == 'all'
+ - pytest-xdist>=3.6.1 ; extra == 'all'
+ - python-calamine>=0.3.0 ; extra == 'all'
+ - pytz>=2024.2 ; extra == 'all'
+ - pyxlsb>=1.0.10 ; extra == 'all'
+ - qtpy>=2.4.2 ; extra == 'all'
+ - scipy>=1.14.1 ; extra == 'all'
+ - s3fs>=2024.10.0 ; extra == 'all'
+ - sqlalchemy>=2.0.36 ; extra == 'all'
+ - tables>=3.10.1 ; extra == 'all'
+ - tabulate>=0.9.0 ; extra == 'all'
+ - xarray>=2024.10.0 ; extra == 'all'
+ - xlrd>=2.0.1 ; extra == 'all'
+ - xlsxwriter>=3.2.0 ; extra == 'all'
+ - zstandard>=0.23.0 ; extra == 'all'
+ requires_python: '>=3.11'
+- pypi: https://files.pythonhosted.org/packages/7c/f1/e2567ffc8951ab371db2e40b2fe068e36b81d8cf3260f06ae508700e5504/pandas-3.0.1-cp312-cp312-macosx_11_0_arm64.whl
+ name: pandas
+ version: 3.0.1
+ sha256: 0ab749dfba921edf641d4036c4c21c0b3ea70fea478165cb98a998fb2a261955
+ requires_dist:
+ - numpy>=1.26.0 ; python_full_version < '3.14'
+ - numpy>=2.3.3 ; python_full_version >= '3.14'
+ - python-dateutil>=2.8.2
+ - tzdata ; sys_platform == 'win32'
+ - tzdata ; sys_platform == 'emscripten'
+ - hypothesis>=6.116.0 ; extra == 'test'
+ - pytest>=8.3.4 ; extra == 'test'
+ - pytest-xdist>=3.6.1 ; extra == 'test'
+ - pyarrow>=13.0.0 ; extra == 'pyarrow'
+ - bottleneck>=1.4.2 ; extra == 'performance'
+ - numba>=0.60.0 ; extra == 'performance'
+ - numexpr>=2.10.2 ; extra == 'performance'
+ - scipy>=1.14.1 ; extra == 'computation'
+ - xarray>=2024.10.0 ; extra == 'computation'
+ - fsspec>=2024.10.0 ; extra == 'fss'
+ - s3fs>=2024.10.0 ; extra == 'aws'
+ - gcsfs>=2024.10.0 ; extra == 'gcp'
+ - odfpy>=1.4.1 ; extra == 'excel'
+ - openpyxl>=3.1.5 ; extra == 'excel'
+ - python-calamine>=0.3.0 ; extra == 'excel'
+ - pyxlsb>=1.0.10 ; extra == 'excel'
+ - xlrd>=2.0.1 ; extra == 'excel'
+ - xlsxwriter>=3.2.0 ; extra == 'excel'
+ - pyarrow>=13.0.0 ; extra == 'parquet'
+ - pyarrow>=13.0.0 ; extra == 'feather'
+ - pyiceberg>=0.8.1 ; extra == 'iceberg'
+ - tables>=3.10.1 ; extra == 'hdf5'
+ - pyreadstat>=1.2.8 ; extra == 'spss'
+ - sqlalchemy>=2.0.36 ; extra == 'postgresql'
+ - psycopg2>=2.9.10 ; extra == 'postgresql'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'postgresql'
+ - sqlalchemy>=2.0.36 ; extra == 'mysql'
+ - pymysql>=1.1.1 ; extra == 'mysql'
+ - sqlalchemy>=2.0.36 ; extra == 'sql-other'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'sql-other'
+ - adbc-driver-sqlite>=1.2.0 ; extra == 'sql-other'
+ - beautifulsoup4>=4.12.3 ; extra == 'html'
+ - html5lib>=1.1 ; extra == 'html'
+ - lxml>=5.3.0 ; extra == 'html'
+ - lxml>=5.3.0 ; extra == 'xml'
+ - matplotlib>=3.9.3 ; extra == 'plot'
+ - jinja2>=3.1.5 ; extra == 'output-formatting'
+ - tabulate>=0.9.0 ; extra == 'output-formatting'
+ - pyqt5>=5.15.9 ; extra == 'clipboard'
+ - qtpy>=2.4.2 ; extra == 'clipboard'
+ - zstandard>=0.23.0 ; extra == 'compression'
+ - pytz>=2024.2 ; extra == 'timezone'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'all'
+ - adbc-driver-sqlite>=1.2.0 ; extra == 'all'
+ - beautifulsoup4>=4.12.3 ; extra == 'all'
+ - bottleneck>=1.4.2 ; extra == 'all'
+ - fastparquet>=2024.11.0 ; extra == 'all'
+ - fsspec>=2024.10.0 ; extra == 'all'
+ - gcsfs>=2024.10.0 ; extra == 'all'
+ - html5lib>=1.1 ; extra == 'all'
+ - hypothesis>=6.116.0 ; extra == 'all'
+ - jinja2>=3.1.5 ; extra == 'all'
+ - lxml>=5.3.0 ; extra == 'all'
+ - matplotlib>=3.9.3 ; extra == 'all'
+ - numba>=0.60.0 ; extra == 'all'
+ - numexpr>=2.10.2 ; extra == 'all'
+ - odfpy>=1.4.1 ; extra == 'all'
+ - openpyxl>=3.1.5 ; extra == 'all'
+ - psycopg2>=2.9.10 ; extra == 'all'
+ - pyarrow>=13.0.0 ; extra == 'all'
+ - pyiceberg>=0.8.1 ; extra == 'all'
+ - pymysql>=1.1.1 ; extra == 'all'
+ - pyqt5>=5.15.9 ; extra == 'all'
+ - pyreadstat>=1.2.8 ; extra == 'all'
+ - pytest>=8.3.4 ; extra == 'all'
+ - pytest-xdist>=3.6.1 ; extra == 'all'
+ - python-calamine>=0.3.0 ; extra == 'all'
+ - pytz>=2024.2 ; extra == 'all'
+ - pyxlsb>=1.0.10 ; extra == 'all'
+ - qtpy>=2.4.2 ; extra == 'all'
+ - scipy>=1.14.1 ; extra == 'all'
+ - s3fs>=2024.10.0 ; extra == 'all'
+ - sqlalchemy>=2.0.36 ; extra == 'all'
+ - tables>=3.10.1 ; extra == 'all'
+ - tabulate>=0.9.0 ; extra == 'all'
+ - xarray>=2024.10.0 ; extra == 'all'
+ - xlrd>=2.0.1 ; extra == 'all'
+ - xlsxwriter>=3.2.0 ; extra == 'all'
+ - zstandard>=0.23.0 ; extra == 'all'
+ requires_python: '>=3.11'
+- pypi: https://files.pythonhosted.org/packages/d7/39/327802e0b6d693182403c144edacbc27eb82907b57062f23ef5a4c4a5ea7/pandas-3.0.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
+ name: pandas
+ version: 3.0.1
+ sha256: b8e36891080b87823aff3640c78649b91b8ff6eea3c0d70aeabd72ea43ab069b
+ requires_dist:
+ - numpy>=1.26.0 ; python_full_version < '3.14'
+ - numpy>=2.3.3 ; python_full_version >= '3.14'
+ - python-dateutil>=2.8.2
+ - tzdata ; sys_platform == 'win32'
+ - tzdata ; sys_platform == 'emscripten'
+ - hypothesis>=6.116.0 ; extra == 'test'
+ - pytest>=8.3.4 ; extra == 'test'
+ - pytest-xdist>=3.6.1 ; extra == 'test'
+ - pyarrow>=13.0.0 ; extra == 'pyarrow'
+ - bottleneck>=1.4.2 ; extra == 'performance'
+ - numba>=0.60.0 ; extra == 'performance'
+ - numexpr>=2.10.2 ; extra == 'performance'
+ - scipy>=1.14.1 ; extra == 'computation'
+ - xarray>=2024.10.0 ; extra == 'computation'
+ - fsspec>=2024.10.0 ; extra == 'fss'
+ - s3fs>=2024.10.0 ; extra == 'aws'
+ - gcsfs>=2024.10.0 ; extra == 'gcp'
+ - odfpy>=1.4.1 ; extra == 'excel'
+ - openpyxl>=3.1.5 ; extra == 'excel'
+ - python-calamine>=0.3.0 ; extra == 'excel'
+ - pyxlsb>=1.0.10 ; extra == 'excel'
+ - xlrd>=2.0.1 ; extra == 'excel'
+ - xlsxwriter>=3.2.0 ; extra == 'excel'
+ - pyarrow>=13.0.0 ; extra == 'parquet'
+ - pyarrow>=13.0.0 ; extra == 'feather'
+ - pyiceberg>=0.8.1 ; extra == 'iceberg'
+ - tables>=3.10.1 ; extra == 'hdf5'
+ - pyreadstat>=1.2.8 ; extra == 'spss'
+ - sqlalchemy>=2.0.36 ; extra == 'postgresql'
+ - psycopg2>=2.9.10 ; extra == 'postgresql'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'postgresql'
+ - sqlalchemy>=2.0.36 ; extra == 'mysql'
+ - pymysql>=1.1.1 ; extra == 'mysql'
+ - sqlalchemy>=2.0.36 ; extra == 'sql-other'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'sql-other'
+ - adbc-driver-sqlite>=1.2.0 ; extra == 'sql-other'
+ - beautifulsoup4>=4.12.3 ; extra == 'html'
+ - html5lib>=1.1 ; extra == 'html'
+ - lxml>=5.3.0 ; extra == 'html'
+ - lxml>=5.3.0 ; extra == 'xml'
+ - matplotlib>=3.9.3 ; extra == 'plot'
+ - jinja2>=3.1.5 ; extra == 'output-formatting'
+ - tabulate>=0.9.0 ; extra == 'output-formatting'
+ - pyqt5>=5.15.9 ; extra == 'clipboard'
+ - qtpy>=2.4.2 ; extra == 'clipboard'
+ - zstandard>=0.23.0 ; extra == 'compression'
+ - pytz>=2024.2 ; extra == 'timezone'
+ - adbc-driver-postgresql>=1.2.0 ; extra == 'all'
+ - adbc-driver-sqlite>=1.2.0 ; extra == 'all'
+ - beautifulsoup4>=4.12.3 ; extra == 'all'
+ - bottleneck>=1.4.2 ; extra == 'all'
+ - fastparquet>=2024.11.0 ; extra == 'all'
+ - fsspec>=2024.10.0 ; extra == 'all'
+ - gcsfs>=2024.10.0 ; extra == 'all'
+ - html5lib>=1.1 ; extra == 'all'
+ - hypothesis>=6.116.0 ; extra == 'all'
+ - jinja2>=3.1.5 ; extra == 'all'
+ - lxml>=5.3.0 ; extra == 'all'
+ - matplotlib>=3.9.3 ; extra == 'all'
+ - numba>=0.60.0 ; extra == 'all'
+ - numexpr>=2.10.2 ; extra == 'all'
+ - odfpy>=1.4.1 ; extra == 'all'
+ - openpyxl>=3.1.5 ; extra == 'all'
+ - psycopg2>=2.9.10 ; extra == 'all'
+ - pyarrow>=13.0.0 ; extra == 'all'
+ - pyiceberg>=0.8.1 ; extra == 'all'
+ - pymysql>=1.1.1 ; extra == 'all'
+ - pyqt5>=5.15.9 ; extra == 'all'
+ - pyreadstat>=1.2.8 ; extra == 'all'
+ - pytest>=8.3.4 ; extra == 'all'
+ - pytest-xdist>=3.6.1 ; extra == 'all'
+ - python-calamine>=0.3.0 ; extra == 'all'
+ - pytz>=2024.2 ; extra == 'all'
+ - pyxlsb>=1.0.10 ; extra == 'all'
+ - qtpy>=2.4.2 ; extra == 'all'
+ - scipy>=1.14.1 ; extra == 'all'
+ - s3fs>=2024.10.0 ; extra == 'all'
+ - sqlalchemy>=2.0.36 ; extra == 'all'
+ - tables>=3.10.1 ; extra == 'all'
+ - tabulate>=0.9.0 ; extra == 'all'
+ - xarray>=2024.10.0 ; extra == 'all'
+ - xlrd>=2.0.1 ; extra == 'all'
+ - xlsxwriter>=3.2.0 ; extra == 'all'
+ - zstandard>=0.23.0 ; extra == 'all'
+ requires_python: '>=3.11'
+- conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.47-haa7fec5_0.conda
+ sha256: 5e6f7d161356fefd981948bea5139c5aa0436767751a6930cb1ca801ebb113ff
+ md5: 7a3bff861a6583f1889021facefc08b1
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - bzip2 >=1.0.8,<2.0a0
+ - libgcc >=14
+ - libzlib >=1.3.1,<2.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 1222481
+ timestamp: 1763655398280
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pcre2-10.47-hf841c20_0.conda
+ sha256: 04df2cee95feba440387f33f878e9f655521e69f4be33a0cd637f07d3d81f0f9
+ md5: 1a30c42e32ca0ea216bd0bfe6f842f0b
+ depends:
+ - bzip2 >=1.0.8,<2.0a0
+ - libgcc >=14
+ - libzlib >=1.3.1,<2.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 1166552
+ timestamp: 1763655534263
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.47-h30297fc_0.conda
+ sha256: 5e2e443f796f2fd92adf7978286a525fb768c34e12b1ee9ded4000a41b2894ba
+ md5: 9b4190c4055435ca3502070186eba53a
+ depends:
+ - __osx >=11.0
+ - bzip2 >=1.0.8,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 850231
+ timestamp: 1763655726735
+- conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.47-hd2b5f0e_0.conda
+ sha256: 3e9e02174edf02cb4bcdd75668ad7b74b8061791a3bc8bdb8a52ae336761ba3e
+ md5: 77eaf2336f3ae749e712f63e36b0f0a1
+ depends:
+ - bzip2 >=1.0.8,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 995992
+ timestamp: 1763655708300
+- pypi: https://files.pythonhosted.org/packages/3d/17/688626d192d7261bbbf98846fc98995726bddc2c945344b65bec3a29d731/pillow-12.1.1-cp312-cp312-win_amd64.whl
+ name: pillow
+ version: 12.1.1
+ sha256: 21329ec8c96c6e979cd0dfd29406c40c1d52521a90544463057d2aaa937d66a6
+ requires_dist:
+ - furo ; extra == 'docs'
+ - olefile ; extra == 'docs'
+ - sphinx>=8.2 ; extra == 'docs'
+ - sphinx-autobuild ; extra == 'docs'
+ - sphinx-copybutton ; extra == 'docs'
+ - sphinx-inline-tabs ; extra == 'docs'
+ - sphinxext-opengraph ; extra == 'docs'
+ - olefile ; extra == 'fpx'
+ - olefile ; extra == 'mic'
+ - arro3-compute ; extra == 'test-arrow'
+ - arro3-core ; extra == 'test-arrow'
+ - nanoarrow ; extra == 'test-arrow'
+ - pyarrow ; extra == 'test-arrow'
+ - check-manifest ; extra == 'tests'
+ - coverage>=7.4.2 ; extra == 'tests'
+ - defusedxml ; extra == 'tests'
+ - markdown2 ; extra == 'tests'
+ - olefile ; extra == 'tests'
+ - packaging ; extra == 'tests'
+ - pyroma>=5 ; extra == 'tests'
+ - pytest ; extra == 'tests'
+ - pytest-cov ; extra == 'tests'
+ - pytest-timeout ; extra == 'tests'
+ - pytest-xdist ; extra == 'tests'
+ - trove-classifiers>=2024.10.12 ; extra == 'tests'
+ - defusedxml ; extra == 'xmp'
+ requires_python: '>=3.10'
+- pypi: https://files.pythonhosted.org/packages/b2/8b/07587069c27be7535ac1fe33874e32de118fbd34e2a73b7f83436a88368c/pillow-12.1.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
+ name: pillow
+ version: 12.1.1
+ sha256: a0b1cd6232e2b618adcc54d9882e4e662a089d5768cd188f7c245b4c8c44a397
requires_dist:
- furo ; extra == 'docs'
- olefile ; extra == 'docs'
@@ -2886,10 +5702,61 @@ packages:
- pkg:pypi/pip?source=compressed-mapping
size: 1181790
timestamp: 1770270305795
-- pypi: https://files.pythonhosted.org/packages/48/31/05e764397056194206169869b50cf2fee4dbbbc71b344705b9c0d878d4d8/platformdirs-4.9.2-py3-none-any.whl
+- conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.46.4-h54a6638_1.conda
+ sha256: 43d37bc9ca3b257c5dd7bf76a8426addbdec381f6786ff441dc90b1a49143b6a
+ md5: c01af13bdc553d1a8fbfff6e8db075f0
+ depends:
+ - libgcc >=14
+ - libstdcxx >=14
+ - libgcc >=14
+ - __glibc >=2.17,<3.0.a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 450960
+ timestamp: 1754665235234
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pixman-0.46.4-h7ac5ae9_1.conda
+ sha256: e6b0846a998f2263629cfeac7bca73565c35af13251969f45d385db537a514e4
+ md5: 1587081d537bd4ae77d1c0635d465ba5
+ depends:
+ - libgcc >=14
+ - libstdcxx >=14
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 357913
+ timestamp: 1754665583353
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.46.4-h81086ad_1.conda
+ sha256: 29c9b08a9b8b7810f9d4f159aecfd205fce051633169040005c0b7efad4bc718
+ md5: 17c3d745db6ea72ae2fce17e7338547f
+ depends:
+ - __osx >=11.0
+ - libcxx >=19
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 248045
+ timestamp: 1754665282033
+- conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.46.4-h5112557_1.conda
+ sha256: 246fce4706b3f8b247a7d6142ba8d732c95263d3c96e212b9d63d6a4ab4aff35
+ md5: 08c8fa3b419df480d985e304f7884d35
+ depends:
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - ucrt >=10.0.20348.0
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - ucrt >=10.0.20348.0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 542795
+ timestamp: 1754665193489
+- pypi: https://files.pythonhosted.org/packages/63/d7/97f7e3a6abb67d8080dd406fd4df842c2be0efaf712d1c899c32a075027c/platformdirs-4.9.4-py3-none-any.whl
name: platformdirs
- version: 4.9.2
- sha256: 9170634f126f8efdae22fb58ae8a0eaa86f38365bc57897a6c4f781d1f5875bd
+ version: 4.9.4
+ sha256: 68a9a4619a666ea6439f2ff250c12a853cd1cbd5158d258bd824a7df6be2f868
requires_python: '>=3.10'
- pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl
name: pluggy
@@ -2933,6 +5800,27 @@ packages:
version: 4.25.8
sha256: 83e6e54e93d2b696a92cad6e6efc924f3850f82b52e1563778dfab8b355101b0
requires_python: '>=3.8'
+- conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.conda
+ sha256: 9c88f8c64590e9567c6c80823f0328e58d3b1efb0e1c539c0315ceca764e0973
+ md5: b3c17d95b5a10c6e64a21fa17573e70e
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 8252
+ timestamp: 1726802366959
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pthread-stubs-0.4-h86ecc28_1002.conda
+ sha256: 977dfb0cb3935d748521dd80262fe7169ab82920afd38ed14b7fee2ea5ec01ba
+ md5: bb5a90c93e3bac3d5690acf76b4a6386
+ depends:
+ - libgcc >=13
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 8342
+ timestamp: 1726803319942
- pypi: https://files.pythonhosted.org/packages/2c/a5/da83046273d990f256cb79796a190bbf7ec999269705ddc609403f8c6b06/pyarrow-23.0.1-cp312-cp312-manylinux_2_28_x86_64.whl
name: pyarrow
version: 23.0.1
@@ -2982,12 +5870,113 @@ packages:
version: 1.2.0
sha256: 9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913
requires_python: '>=3.7'
+- pypi: https://files.pythonhosted.org/packages/32/36/4c242f81fdcbfa4fb62a5645f6af79191f4097a0577bd5460c24f19cc4ef/pyqtgraph-0.14.0-py3-none-any.whl
+ name: pyqtgraph
+ version: 0.14.0
+ sha256: 7abb7c3e17362add64f8711b474dffac5e7b0e9245abdf992e9a44119b7aa4f5
+ requires_dist:
+ - numpy>=1.25.0
+ - colorama
+ requires_python: '>=3.10'
- pypi: https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl
name: pyserial
version: '3.5'
sha256: c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0
requires_dist:
- hidapi ; extra == 'cp2110'
+- conda: https://conda.anaconda.org/conda-forge/linux-64/pyside6-6.10.2-py312h50ac2ff_1.conda
+ sha256: 18c8ffaca3d33e8617d600a79a1781b6de8e022039827254772a85651f4cebe6
+ md5: 08452854f86c3190c3b0d4df1ae28555
+ depends:
+ - python
+ - qt6-main 6.10.2.*
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - libopengl >=1.7.0,<2.0a0
+ - qt6-main >=6.10.2,<6.11.0a0
+ - libclang13 >=21.1.8
+ - libxslt >=1.1.43,<2.0a0
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - libegl >=1.7.0,<2.0a0
+ - libgl >=1.7.0,<2.0a0
+ - python_abi 3.12.* *_cp312
+ - libvulkan-loader >=1.4.341.0,<2.0a0
+ license: LGPL-3.0-only
+ license_family: LGPL
+ purls:
+ - pkg:pypi/pyside6?source=compressed-mapping
+ size: 13096913
+ timestamp: 1773742520312
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/pyside6-6.10.2-py312hfc1e6cc_1.conda
+ sha256: 09feadf01ecf4f2eceb24b43052f65218af7be6a723c318416b6cd47f565ac32
+ md5: b5dd45340bc6df6fa860906c2560f6b9
+ depends:
+ - python
+ - qt6-main 6.10.2.*
+ - libstdcxx >=14
+ - libgcc >=14
+ - libgl >=1.7.0,<2.0a0
+ - python_abi 3.12.* *_cp312
+ - libegl >=1.7.0,<2.0a0
+ - libvulkan-loader >=1.4.341.0,<2.0a0
+ - libclang13 >=21.1.8
+ - libxslt >=1.1.43,<2.0a0
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - libopengl >=1.7.0,<2.0a0
+ - qt6-main >=6.10.2,<6.11.0a0
+ license: LGPL-3.0-only
+ license_family: LGPL
+ purls:
+ - pkg:pypi/pyside6?source=hash-mapping
+ - pkg:pypi/shiboken6?source=hash-mapping
+ size: 8726477
+ timestamp: 1773742522966
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyside6-6.10.2-py312h4aa7bac_1.conda
+ sha256: 0cf9c6c953e1cdef58195c814e018c5103ecd0e656c0a8e61a44998b65eb995a
+ md5: 75bca82c716708c6c4059374137a81f0
+ depends:
+ - python
+ - qt6-main 6.10.2.*
+ - libcxx >=19
+ - __osx >=11.0
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - libxslt >=1.1.43,<2.0a0
+ - python_abi 3.12.* *_cp312
+ - libclang13 >=19.1.7
+ - qt6-main >=6.10.2,<6.11.0a0
+ license: LGPL-3.0-only
+ license_family: LGPL
+ purls:
+ - pkg:pypi/pyside6?source=hash-mapping
+ - pkg:pypi/shiboken6?source=hash-mapping
+ size: 12771287
+ timestamp: 1773742743051
+- conda: https://conda.anaconda.org/conda-forge/win-64/pyside6-6.10.2-py312ha7d0d2e_1.conda
+ sha256: 2b8265dc16dfbf23b31667f680c5ad3eb80f63e2332f93fb2b8e4373039019ac
+ md5: 8ffed66bebf43d73a2bb396e86324021
+ depends:
+ - python
+ - qt6-main 6.10.2.*
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - ucrt >=10.0.20348.0
+ - qt6-main >=6.10.2,<6.11.0a0
+ - python_abi 3.12.* *_cp312
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - libvulkan-loader >=1.4.341.0,<2.0a0
+ - libxslt >=1.1.43,<2.0a0
+ - libclang13 >=21.1.8
+ license: LGPL-3.0-only
+ license_family: LGPL
+ purls:
+ - pkg:pypi/pyside6?source=compressed-mapping
+ size: 10993742
+ timestamp: 1773742532174
- pypi: https://files.pythonhosted.org/packages/3b/ab/b3226f0bd7cdcf710fbede2b3548584366da3b19b5021e74f5bde2a8fa3f/pytest-9.0.2-py3-none-any.whl
name: pytest
version: 9.0.2
@@ -3008,15 +5997,14 @@ packages:
- setuptools ; extra == 'dev'
- xmlschema ; extra == 'dev'
requires_python: '>=3.10'
-- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.12-hd63d673_2_cpython.conda
- build_number: 2
- sha256: 6621befd6570a216ba94bc34ec4618e4f3777de55ad0adc15fc23c28fadd4d1a
- md5: c4540d3de3fa228d9fa95e31f8e97f89
+- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.13-hd63d673_0_cpython.conda
+ sha256: a44655c1c3e1d43ed8704890a91e12afd68130414ea2c0872e154e5633a13d7e
+ md5: 7eccb41177e15cc672e1babe9056018e
depends:
- __glibc >=2.17,<3.0.a0
- bzip2 >=1.0.8,<2.0a0
- ld_impl_linux-64 >=2.36.1
- - libexpat >=2.7.3,<3.0a0
+ - libexpat >=2.7.4,<3.0a0
- libffi >=3.5.2,<3.6.0a0
- libgcc >=14
- liblzma >=5.8.2,<6.0a0
@@ -3026,7 +6014,7 @@ packages:
- libxcrypt >=4.4.36
- libzlib >=1.3.1,<2.0a0
- ncurses >=6.5,<7.0a0
- - openssl >=3.5.4,<4.0a0
+ - openssl >=3.5.5,<4.0a0
- readline >=8.3,<9.0a0
- tk >=8.6.13,<8.7.0a0
- tzdata
@@ -3034,16 +6022,15 @@ packages:
- python_abi 3.12.* *_cp312
license: Python-2.0
purls: []
- size: 31457785
- timestamp: 1769472855343
-- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.12.12-h91f4b29_2_cpython.conda
- build_number: 2
- sha256: b67569e1d6ce065e1d246a38a0c92bcc9f43cf003a6d67a57e7db7240714c5ce
- md5: b75f79be54a1422f1259bb7d198e8697
+ size: 31608571
+ timestamp: 1772730708989
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/python-3.12.13-h91f4b29_0_cpython.conda
+ sha256: 61933478813f5fd96c89a00dd964201b0266d71d2e3bc4dd5679354056e46948
+ md5: 8aed8fdbbc03a5c9f455d20ce75a9dce
depends:
- bzip2 >=1.0.8,<2.0a0
- ld_impl_linux-aarch64 >=2.36.1
- - libexpat >=2.7.3,<3.0a0
+ - libexpat >=2.7.4,<3.0a0
- libffi >=3.5.2,<3.6.0a0
- libgcc >=14
- liblzma >=5.8.2,<6.0a0
@@ -3053,7 +6040,7 @@ packages:
- libxcrypt >=4.4.36
- libzlib >=1.3.1,<2.0a0
- ncurses >=6.5,<7.0a0
- - openssl >=3.5.4,<4.0a0
+ - openssl >=3.5.5,<4.0a0
- readline >=8.3,<9.0a0
- tk >=8.6.13,<8.7.0a0
- tzdata
@@ -3061,22 +6048,21 @@ packages:
- python_abi 3.12.* *_cp312
license: Python-2.0
purls: []
- size: 13798340
- timestamp: 1769471112
-- conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.12-h18782d2_2_cpython.conda
- build_number: 2
- sha256: 765e5d0f92dabc8c468d078a4409490e08181a6f9be6f5d5802a4e3131b9a69c
- md5: e198b8f74b12292d138eb4eceb004fa3
+ size: 13757191
+ timestamp: 1772728951853
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.13-h8561d8f_0_cpython.conda
+ sha256: e658e647a4a15981573d6018928dec2c448b10c77c557c29872043ff23c0eb6a
+ md5: 8e7608172fa4d1b90de9a745c2fd2b81
depends:
- __osx >=11.0
- bzip2 >=1.0.8,<2.0a0
- - libexpat >=2.7.3,<3.0a0
+ - libexpat >=2.7.4,<3.0a0
- libffi >=3.5.2,<3.6.0a0
- liblzma >=5.8.2,<6.0a0
- libsqlite >=3.51.2,<4.0a0
- libzlib >=1.3.1,<2.0a0
- ncurses >=6.5,<7.0a0
- - openssl >=3.5.4,<4.0a0
+ - openssl >=3.5.5,<4.0a0
- readline >=8.3,<9.0a0
- tk >=8.6.13,<8.7.0a0
- tzdata
@@ -3084,20 +6070,19 @@ packages:
- python_abi 3.12.* *_cp312
license: Python-2.0
purls: []
- size: 12953358
- timestamp: 1769472376612
-- conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.12-h0159041_2_cpython.conda
- build_number: 2
- sha256: 5937ab50dfeb979f7405132f73e836a29690f21162308b95b240b8037aa99975
- md5: 068897f82240d69580c2d93f93b56ff5
+ size: 12127424
+ timestamp: 1772730755512
+- conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.13-h0159041_0_cpython.conda
+ sha256: a02b446d8b7b167b61733a3de3be5de1342250403e72a63b18dac89e99e6180e
+ md5: 2956dff38eb9f8332ad4caeba941cfe7
depends:
- bzip2 >=1.0.8,<2.0a0
- - libexpat >=2.7.3,<3.0a0
+ - libexpat >=2.7.4,<3.0a0
- libffi >=3.5.2,<3.6.0a0
- liblzma >=5.8.2,<6.0a0
- libsqlite >=3.51.2,<4.0a0
- libzlib >=1.3.1,<2.0a0
- - openssl >=3.5.4,<4.0a0
+ - openssl >=3.5.5,<4.0a0
- tk >=8.6.13,<8.7.0a0
- tzdata
- ucrt >=10.0.20348.0
@@ -3107,8 +6092,8 @@ packages:
- python_abi 3.12.* *_cp312
license: Python-2.0
purls: []
- size: 15829087
- timestamp: 1769470991307
+ size: 15840187
+ timestamp: 1772728877265
- pypi: https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
name: python-dateutil
version: 2.9.0.post0
@@ -3116,10 +6101,10 @@ packages:
requires_dist:
- six>=1.5
requires_python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*'
-- pypi: https://files.pythonhosted.org/packages/06/54/82a6e2ef37f0f23dccac604b9585bdcbd0698604feb64807dcb72853693e/python_discovery-1.1.0-py3-none-any.whl
+- pypi: https://files.pythonhosted.org/packages/c2/3c/2005227cb951df502412de2fa781f800663cccbef8d90ec6f1b371ac2c0d/python_discovery-1.2.0-py3-none-any.whl
name: python-discovery
- version: 1.1.0
- sha256: a162893b8809727f54594a99ad2179d2ede4bf953e12d4c7abc3cc9cdbd1437b
+ version: 1.2.0
+ sha256: 1e108f1bbe2ed0ef089823d28805d5ad32be8e734b86a5f212bf89b71c266e4a
requires_dist:
- filelock>=3.15.4
- platformdirs>=4.3.6,<5
@@ -3163,6 +6148,17 @@ packages:
- mypy-ipython ; extra == 'tests'
- blessings ; extra == 'tests'
requires_python: '>=3.9.0'
+- conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.12-8_cp312.conda
+ build_number: 8
+ sha256: 80677180dd3c22deb7426ca89d6203f1c7f1f256f2d5a94dc210f6e758229809
+ md5: c3efd25ac4d74b1584d2f7a57195ddf1
+ constrains:
+ - python 3.12.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 6958
+ timestamp: 1752805918820
- pypi: https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl
name: pywin32-ctypes
version: 0.2.3
@@ -3188,14 +6184,15 @@ packages:
version: 6.0.3
sha256: 9149cad251584d5fb4981be1ecde53a1ca46c891a79788c0df828d2f166bda28
requires_python: '>=3.8'
-- pypi: https://files.pythonhosted.org/packages/76/e6/e6893547135170c23133bac241d5031b0f2002d61675f2166dcbeeb27fbf/qpsolvers-4.8.2-py3-none-any.whl
+- pypi: https://files.pythonhosted.org/packages/48/36/bb438a1ab5270be8a0d294a2734b31ebfabe8b1b41fde08f43966118b7e2/qpsolvers-4.11.0-py3-none-any.whl
name: qpsolvers
- version: 4.8.2
- sha256: 66cad899705b5ba009c6a280b2702c5f413e25c69beec2c6bcad72307fb22dd1
+ version: 4.11.0
+ sha256: 02ced5690e17036802662f9054dcd8270fc8f4b8c3bddffbfcecd71a6353db00
requires_dist:
- numpy>=1.15.4
- scipy>=1.2.0
- clarabel>=0.4.1 ; extra == 'clarabel'
+ - coptpy>=7.0.0 ; extra == 'copt'
- cvxopt>=1.2.6 ; extra == 'cvxopt'
- daqp>=0.5.1 ; extra == 'daqp'
- ecos>=2.0.8 ; extra == 'ecos'
@@ -3205,17 +6202,234 @@ packages:
- kvxopt>=1.3.2 ; extra == 'kvxopt'
- cvxopt>=1.2.6 ; extra == 'mosek'
- mosek>=10.0.40 ; extra == 'mosek'
- - qpsolvers[clarabel,cvxopt,daqp,ecos,highs,jaxopt,osqp,piqp,proxqp,qpalm,quadprog,scs,sip,qpax] ; extra == 'open-source-solvers'
+ - qpsolvers[clarabel,cvxopt,daqp,ecos,highs,jaxopt,osqp,piqp,proxqp,qpalm,qtqp,quadprog,scs,sip,qpax] ; extra == 'open-source-solvers'
- osqp>=0.6.2 ; extra == 'osqp'
- piqp>=0.2.2 ; extra == 'piqp'
- proxsuite>=0.2.9 ; extra == 'proxqp'
- qpalm>=1.2.1 ; extra == 'qpalm'
- qpax>=0.0.9 ; extra == 'qpax'
+ - qtqp>=0.0.3 ; extra == 'qtqp'
- quadprog>=0.1.11 ; extra == 'quadprog'
- scs>=3.2.0 ; extra == 'scs'
- sip-python>=0.0.2 ; extra == 'sip'
- qpsolvers[cvxopt,daqp,ecos,highs,piqp,proxqp,qpalm,sip] ; extra == 'wheels-only'
- requires_python: '>=3.8'
+ requires_python: '>=3.10'
+- conda: https://conda.anaconda.org/conda-forge/linux-64/qt6-main-6.10.2-pl5321h16c4a6b_6.conda
+ sha256: dd2fdde2cfecd29d4acd2bacbb341f00500d8b3b1c0583a8d92e07fc1e4b1106
+ md5: 3a00bff44c15ee37bfd5eb435e1b2a51
+ depends:
+ - libxcb
+ - xcb-util
+ - xcb-util-wm
+ - xcb-util-keysyms
+ - xcb-util-image
+ - xcb-util-renderutil
+ - xcb-util-cursor
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libstdcxx >=14
+ - xorg-libice >=1.1.2,<2.0a0
+ - icu >=78.3,<79.0a0
+ - libllvm22 >=22.1.0,<22.2.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - xorg-libx11 >=1.8.13,<2.0a0
+ - xorg-libxtst >=1.2.5,<2.0a0
+ - libfreetype >=2.14.2
+ - libfreetype6 >=2.14.2
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - libtiff >=4.7.1,<4.8.0a0
+ - libegl >=1.7.0,<2.0a0
+ - xorg-libxxf86vm >=1.1.7,<2.0a0
+ - libdrm >=2.4.125,<2.5.0a0
+ - xcb-util >=0.4.1,<0.5.0a0
+ - libbrotlicommon >=1.2.0,<1.3.0a0
+ - libbrotlienc >=1.2.0,<1.3.0a0
+ - libbrotlidec >=1.2.0,<1.3.0a0
+ - libvulkan-loader >=1.4.341.0,<2.0a0
+ - libclang-cpp22.1 >=22.1.0,<22.2.0a0
+ - double-conversion >=3.4.0,<3.5.0a0
+ - dbus >=1.16.2,<2.0a0
+ - xcb-util-renderutil >=0.3.10,<0.4.0a0
+ - alsa-lib >=1.2.15.3,<1.3.0a0
+ - wayland >=1.24.0,<2.0a0
+ - xcb-util-cursor >=0.1.6,<0.2.0a0
+ - libpng >=1.6.55,<1.7.0a0
+ - libclang13 >=22.1.0
+ - libwebp-base >=1.6.0,<2.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ - pcre2 >=10.47,<10.48.0a0
+ - xorg-libxrandr >=1.5.5,<2.0a0
+ - libcups >=2.3.3,<2.4.0a0
+ - libpq >=18.3,<19.0a0
+ - libjpeg-turbo >=3.1.2,<4.0a0
+ - xorg-libxcomposite >=0.4.7,<1.0a0
+ - xcb-util-keysyms >=0.4.1,<0.5.0a0
+ - xorg-libxcursor >=1.2.3,<2.0a0
+ - harfbuzz >=13.1.1
+ - openssl >=3.5.5,<4.0a0
+ - fontconfig >=2.17.1,<3.0a0
+ - fonts-conda-ecosystem
+ - libxcb >=1.17.0,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - libsqlite >=3.52.0,<4.0a0
+ - xorg-libsm >=1.2.6,<2.0a0
+ - libgl >=1.7.0,<2.0a0
+ - libglib >=2.86.4,<3.0a0
+ - xorg-libxext >=1.3.7,<2.0a0
+ - libxkbcommon >=1.13.1,<2.0a0
+ - xorg-libxdamage >=1.1.6,<2.0a0
+ - xcb-util-image >=0.4.0,<0.5.0a0
+ - xcb-util-wm >=0.4.2,<0.5.0a0
+ constrains:
+ - qt ==6.10.2
+ license: LGPL-3.0-only
+ license_family: LGPL
+ purls: []
+ size: 58118322
+ timestamp: 1773865930316
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/qt6-main-6.10.2-pl5321h598db47_6.conda
+ sha256: cb0175afcab951eb966382b8d02f5f6ad8a74a6f26ed97bd3def3b3515b9bc56
+ md5: a2be7073b12891aab9fa91ca005c5a6b
+ depends:
+ - libxcb
+ - xcb-util
+ - xcb-util-wm
+ - xcb-util-keysyms
+ - xcb-util-image
+ - xcb-util-renderutil
+ - xcb-util-cursor
+ - libgcc >=14
+ - libstdcxx >=14
+ - xorg-libx11 >=1.8.13,<2.0a0
+ - libtiff >=4.7.1,<4.8.0a0
+ - libdrm >=2.4.125,<2.5.0a0
+ - xcb-util-cursor >=0.1.6,<0.2.0a0
+ - libegl >=1.7.0,<2.0a0
+ - xcb-util >=0.4.1,<0.5.0a0
+ - libbrotlicommon >=1.2.0,<1.3.0a0
+ - libbrotlienc >=1.2.0,<1.3.0a0
+ - libbrotlidec >=1.2.0,<1.3.0a0
+ - alsa-lib >=1.2.15.3,<1.3.0a0
+ - icu >=78.3,<79.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - dbus >=1.16.2,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - harfbuzz >=13.1.1
+ - double-conversion >=3.4.0,<3.5.0a0
+ - libwebp-base >=1.6.0,<2.0a0
+ - libxml2
+ - libxml2-16 >=2.14.6
+ - libgl >=1.7.0,<2.0a0
+ - libclang13 >=22.1.0
+ - pcre2 >=10.47,<10.48.0a0
+ - libpq >=18.3,<19.0a0
+ - libsqlite >=3.52.0,<4.0a0
+ - libllvm22 >=22.1.0,<22.2.0a0
+ - xorg-libxcursor >=1.2.3,<2.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ - libclang-cpp22.1 >=22.1.0,<22.2.0a0
+ - xorg-libxxf86vm >=1.1.7,<2.0a0
+ - xorg-libxcomposite >=0.4.7,<1.0a0
+ - xorg-libxrandr >=1.5.5,<2.0a0
+ - wayland >=1.24.0,<2.0a0
+ - libvulkan-loader >=1.4.341.0,<2.0a0
+ - xorg-libsm >=1.2.6,<2.0a0
+ - xorg-libxext >=1.3.7,<2.0a0
+ - xcb-util-renderutil >=0.3.10,<0.4.0a0
+ - libfreetype >=2.14.2
+ - libfreetype6 >=2.14.2
+ - libjpeg-turbo >=3.1.2,<4.0a0
+ - fontconfig >=2.17.1,<3.0a0
+ - fonts-conda-ecosystem
+ - libcups >=2.3.3,<2.4.0a0
+ - xorg-libxdamage >=1.1.6,<2.0a0
+ - xcb-util-image >=0.4.0,<0.5.0a0
+ - libpng >=1.6.55,<1.7.0a0
+ - xorg-libice >=1.1.2,<2.0a0
+ - xorg-libxtst >=1.2.5,<2.0a0
+ - libxkbcommon >=1.13.1,<2.0a0
+ - libxcb >=1.17.0,<2.0a0
+ - libglib >=2.86.4,<3.0a0
+ - xcb-util-keysyms >=0.4.1,<0.5.0a0
+ - openssl >=3.5.5,<4.0a0
+ - xcb-util-wm >=0.4.2,<0.5.0a0
+ constrains:
+ - qt ==6.10.2
+ license: LGPL-3.0-only
+ license_family: LGPL
+ purls: []
+ size: 60839855
+ timestamp: 1773865968913
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt6-main-6.10.2-pl5321h01fc3ab_6.conda
+ sha256: a20eae7f002278c0517d5d38dbe0f2a292f57b0df04a3b96c722ce3dfd6e7e3e
+ md5: 125f9a5dc035657ac027eec502ccaec9
+ depends:
+ - libcxx >=19
+ - __osx >=11.0
+ - openssl >=3.5.5,<4.0a0
+ - libpq >=18.3,<19.0a0
+ - libwebp-base >=1.6.0,<2.0a0
+ - libsqlite >=3.52.0,<4.0a0
+ - libtiff >=4.7.1,<4.8.0a0
+ - libclang13 >=19.1.7
+ - libjpeg-turbo >=3.1.2,<4.0a0
+ - icu >=78.3,<79.0a0
+ - harfbuzz >=13.1.1
+ - libbrotlicommon >=1.2.0,<1.3.0a0
+ - libbrotlienc >=1.2.0,<1.3.0a0
+ - libbrotlidec >=1.2.0,<1.3.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ - libllvm19 >=19.1.7,<19.2.0a0
+ - libglib >=2.86.4,<3.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - libclang-cpp19.1 >=19.1.7,<19.2.0a0
+ - pcre2 >=10.47,<10.48.0a0
+ - double-conversion >=3.4.0,<3.5.0a0
+ - libpng >=1.6.55,<1.7.0a0
+ constrains:
+ - qt ==6.10.2
+ license: LGPL-3.0-only
+ license_family: LGPL
+ purls: []
+ size: 47339230
+ timestamp: 1773865969082
+- conda: https://conda.anaconda.org/conda-forge/win-64/qt6-main-6.10.2-pl5321hfcac499_6.conda
+ sha256: bee25670710310749fa71d7c20e5bf7cf4f8d65519c11a5b867a8371f60ca2ef
+ md5: d5a2b237ad30f01d4f9474313c1ef1c4
+ depends:
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - ucrt >=10.0.20348.0
+ - pcre2 >=10.47,<10.48.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - libpng >=1.6.55,<1.7.0a0
+ - libglib >=2.86.4,<3.0a0
+ - icu >=78.3,<79.0a0
+ - libclang13 >=22.1.0
+ - libjpeg-turbo >=3.1.2,<4.0a0
+ - libvulkan-loader >=1.4.341.0,<2.0a0
+ - harfbuzz >=13.1.1
+ - libtiff >=4.7.1,<4.8.0a0
+ - libfreetype >=2.14.2
+ - libfreetype6 >=2.14.2
+ - libwebp-base >=1.6.0,<2.0a0
+ - libbrotlicommon >=1.2.0,<1.3.0a0
+ - libbrotlienc >=1.2.0,<1.3.0a0
+ - libbrotlidec >=1.2.0,<1.3.0a0
+ - libsqlite >=3.52.0,<4.0a0
+ - krb5 >=1.22.2,<1.23.0a0
+ - double-conversion >=3.4.0,<3.5.0a0
+ - openssl >=3.5.5,<4.0a0
+ - zstd >=1.5.7,<1.6.0a0
+ constrains:
+ - qt ==6.10.2
+ license: LGPL-3.0-only
+ license_family: LGPL
+ purls: []
+ size: 87201183
+ timestamp: 1773865806951
- pypi: https://files.pythonhosted.org/packages/10/5e/de8d3911e44699abc4e3ce835e69c3db76525af8018026f9bce61be69a43/quadprog-0.1.13-cp312-cp312-macosx_11_0_arm64.whl
name: quadprog
version: 0.1.13
@@ -3323,103 +6537,103 @@ packages:
- markdown-it-py>=2.2.0
- pygments>=2.13.0,<3.0.0
requires_python: '>=3.8.0'
-- conda: https://conda.anaconda.org/conda-forge/linux-64/rust-1.93.1-h53717f1_0.conda
- sha256: 21e067aabf5863eee02fc5681a6d56de888abea6eaa521abf756b707c0dbcd39
- md5: f05b79be5b5f13fecc79af60892bb1c4
+- conda: https://conda.anaconda.org/conda-forge/linux-64/rust-1.94.0-h53717f1_0.conda
+ sha256: 50bfa8a8f848c1cb0a75e25327c056e5dad46c9076d54471b01b08fa7fd64f94
+ md5: f32243e302459c44eb66291ff690abd2
depends:
- __glibc >=2.17,<3.0.a0
- gcc_impl_linux-64
- libgcc >=14
- libzlib >=1.3.1,<2.0a0
- - rust-std-x86_64-unknown-linux-gnu 1.93.1 h2c6d0dc_0
+ - rust-std-x86_64-unknown-linux-gnu 1.94.0 h2c6d0dc_0
- sysroot_linux-64 >=2.17
license: MIT
license_family: MIT
purls: []
- size: 177821736
- timestamp: 1771008968072
-- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rust-1.93.1-h6cf38e9_0.conda
- sha256: 0b3f1c4d552092345f32d4723adfbb77aba02175615cda40454963f4136cba3d
- md5: 27e0439ad967c39b26045a52764abc91
+ size: 178422821
+ timestamp: 1773066893036
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rust-1.94.0-h6cf38e9_0.conda
+ sha256: e9d97896c81ab7d628f341b5775e9e5dc21771efa8c66be21db818355e3d5bc8
+ md5: 127575f27d8d7f7cfcd17eb24d8a46eb
depends:
- gcc_impl_linux-aarch64
- libgcc >=14
- libzlib >=1.3.1,<2.0a0
- - rust-std-aarch64-unknown-linux-gnu 1.93.1 hbe8e118_0
+ - rust-std-aarch64-unknown-linux-gnu 1.94.0 hbe8e118_0
- sysroot_linux-aarch64 >=2.17
license: MIT
license_family: MIT
purls: []
- size: 139979043
- timestamp: 1771009599403
-- conda: https://conda.anaconda.org/conda-forge/osx-arm64/rust-1.93.1-h4ff7c5d_0.conda
- sha256: 5c7bf3200b072752878281fee69077a6731d491562e03ddaa46df0058ff9d706
- md5: 9d63a676e2138373a5520b820f34a3ab
+ size: 140668117
+ timestamp: 1773067599517
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/rust-1.94.0-h4ff7c5d_0.conda
+ sha256: 811c519f01d0d26587cdc99ba2c77ea8affd1cef0990e61c0a4ed663451d01b3
+ md5: fb0fc448d379337e26f2633bd15bfcd8
depends:
- - rust-std-aarch64-apple-darwin 1.93.1 hf6ec828_0
+ - rust-std-aarch64-apple-darwin 1.94.0 hf6ec828_0
license: MIT
license_family: MIT
purls: []
- size: 181513569
- timestamp: 1771008421760
-- conda: https://conda.anaconda.org/conda-forge/win-64/rust-1.93.1-hf8d6059_0.conda
- sha256: ca85fab88197407d0a240eb43ca9c454e00068d7b8cd75c0e88e3ba00ea64116
- md5: 426d6deb734b4e00a7e413ddf281f1dd
+ size: 183759788
+ timestamp: 1773066599252
+- conda: https://conda.anaconda.org/conda-forge/win-64/rust-1.94.0-hf8d6059_0.conda
+ sha256: e1527c93259a2b0d3902b23232a43dd65ae6fde5824292c2f9d4fab0a36b2bef
+ md5: e9a29bde9a77aeeac056dddd6edd6863
depends:
- - rust-std-x86_64-pc-windows-msvc 1.93.1 h17fc481_0
+ - rust-std-x86_64-pc-windows-msvc 1.94.0 h17fc481_0
license: MIT
license_family: MIT
purls: []
- size: 199507365
- timestamp: 1771011101657
-- conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-apple-darwin-1.93.1-hf6ec828_0.conda
- sha256: 738563b1144c277822379194e7cf3980327f2b22fc0f46a20e432c177d6fa156
- md5: 7ad7ce45df53349e3bc817ed384496fd
+ size: 196531421
+ timestamp: 1773068659416
+- conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-apple-darwin-1.94.0-hf6ec828_0.conda
+ sha256: ad761500228974aad3d422902a87c8c2d938fb3f76dd356f7629fd16f5f214a4
+ md5: 4aa5527d3163e6644197772dc56261c9
depends:
- __unix
constrains:
- - rust >=1.93.1,<1.93.2.0a0
+ - rust >=1.94.0,<1.94.1.0a0
license: MIT
license_family: MIT
purls: []
- size: 35165708
- timestamp: 1771008221089
-- conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-unknown-linux-gnu-1.93.1-hbe8e118_0.conda
- sha256: 82dbb0788d7896a9270ebc17712d41a1391fb2bebaed7847ce66985e6cbd6c92
- md5: 62fbbf47f940ed4c722a0cf156d86ba0
+ size: 32683899
+ timestamp: 1773066361926
+- conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-aarch64-unknown-linux-gnu-1.94.0-hbe8e118_0.conda
+ sha256: b3b9f6624c01d34377742a44db9b8a2edbb849ea8285dd50361f76d6ef979203
+ md5: 3b01077f6def6c44a89318546abfafbe
depends:
- __unix
constrains:
- - rust >=1.93.1,<1.93.2.0a0
+ - rust >=1.94.0,<1.94.1.0a0
license: MIT
license_family: MIT
purls: []
- size: 38356812
- timestamp: 1771009097984
-- conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-pc-windows-msvc-1.93.1-h17fc481_0.conda
- sha256: 02604af1baf2fcef0184ca3dd1e78dde5a87982f3193fc2fc0bbd5e752597a77
- md5: 68a38a410f3652df865e3d536e52e541
+ size: 35066947
+ timestamp: 1773067041901
+- conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-pc-windows-msvc-1.94.0-h17fc481_0.conda
+ sha256: 3d84e1778e68709a377127af453f8564d038053c61ca063f448ee6c03dc8b20a
+ md5: a80810ebd9d697f369a94af8b8afe45e
depends:
- __win
constrains:
- - rust >=1.93.1,<1.93.2.0a0
+ - rust >=1.94.0,<1.94.1.0a0
license: MIT
license_family: MIT
purls: []
- size: 28799384
- timestamp: 1771010950507
-- conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-unknown-linux-gnu-1.93.1-h2c6d0dc_0.conda
- sha256: fb979ded3c378074457af671a4f7317e0e24ba9393a4ace33d7d87efe055752e
- md5: b202bf8a5113a75a130ca5f6f111dda7
+ size: 26451999
+ timestamp: 1773068501954
+- conda: https://conda.anaconda.org/conda-forge/noarch/rust-std-x86_64-unknown-linux-gnu-1.94.0-h2c6d0dc_0.conda
+ sha256: 3980a10eee5f24ce7770c5d1665f93f363345c630bb6189176f3ab7bd9e8724d
+ md5: df0c8674169061103f9cc0e112591eab
depends:
- __unix
constrains:
- - rust >=1.93.1,<1.93.2.0a0
+ - rust >=1.94.0,<1.94.1.0a0
license: MIT
license_family: MIT
purls: []
- size: 38400767
- timestamp: 1771008857576
+ size: 36890656
+ timestamp: 1773066787379
- pypi: https://files.pythonhosted.org/packages/11/cb/60e4be7b67dd8e0adfe73d0d30c11977ca1a2639ce0b852d880852cae4bc/rustypot-1.4.2-cp312-cp312-win_amd64.whl
name: rustypot
version: 1.4.2
@@ -3632,22 +6846,27 @@ packages:
- cryptography>=2.0
- jeepney>=0.6
requires_python: '>=3.10'
-- conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.0-pyh332efcf_0.conda
- sha256: fd7201e38e38bf7f25818d624ca8da97b8998957ca9ae3fb7fdc9c17e6b25fcd
- md5: 1d00d46c634177fc8ede8b99d6089239
+- conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-82.0.1-pyh332efcf_0.conda
+ sha256: 82088a6e4daa33329a30bc26dc19a98c7c1d3f05c0f73ce9845d4eab4924e9e1
+ md5: 8e194e7b992f99a5015edbd4ebd38efd
depends:
- python >=3.10
license: MIT
license_family: MIT
purls:
- pkg:pypi/setuptools?source=compressed-mapping
- size: 637506
- timestamp: 1770634745653
+ size: 639697
+ timestamp: 1773074868565
- pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl
name: six
version: 1.17.0
sha256: 4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274
requires_python: '>=2.7,!=3.0.*,!=3.1.*,!=3.2.*'
+- pypi: https://files.pythonhosted.org/packages/c1/d4/59e74daffcb57a07668852eeeb6035af9f32cbfd7a1d2511f17d2fe6a738/smmap-5.0.3-py3-none-any.whl
+ name: smmap
+ version: 5.0.3
+ sha256: c106e05d5a61449cf6ba9a1e650227ecfb141590d2a98412103ff35d89fc7b2f
+ requires_python: '>=3.7'
- pypi: https://files.pythonhosted.org/packages/1e/0a/478e441fd049002cf308520c0d62dd8333e7c6cc8d997f0dda07b9fbcc46/sounddevice-0.5.5-py3-none-any.whl
name: sounddevice
version: 0.5.5
@@ -3672,6 +6891,68 @@ packages:
- cffi
- numpy ; extra == 'numpy'
requires_python: '>=3.7'
+- pypi: https://files.pythonhosted.org/packages/67/87/039b6eeea781598015b538691bc174cc0bf77df9d4d2d3b8bf9245c0de8c/spidev-3.8.tar.gz
+ name: spidev
+ version: '3.8'
+ sha256: 2bc02fb8c6312d519ebf1f4331067427c0921d3f77b8bcaf05189a2e8b8382c0
+- conda: https://conda.anaconda.org/conda-forge/linux-64/swig-4.4.1-h7a96c5f_0.conda
+ sha256: 45ec1eedd1de2d7985955290015773a4adc9b8ea95d0f839aaabda2ed075d83c
+ md5: ce50bd18ea2a92833be8b62881929e23
+ depends:
+ - libstdcxx >=14
+ - libgcc >=14
+ - __glibc >=2.17,<3.0.a0
+ - pcre2 >=10.47,<10.48.0a0
+ constrains:
+ - swig-abi ==5
+ license: GPL-3.0-or-later
+ license_family: GPL
+ purls: []
+ size: 1329174
+ timestamp: 1773251886390
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/swig-4.4.1-h512d76c_0.conda
+ sha256: ac5e52ae7aededf3aa1489a8b4a47b2210915c2760f25c374dffba2335f014ee
+ md5: 91c99a0fec455afa9137c1d978445166
+ depends:
+ - libstdcxx >=14
+ - libgcc >=14
+ - pcre2 >=10.47,<10.48.0a0
+ constrains:
+ - swig-abi ==5
+ license: GPL-3.0-or-later
+ license_family: GPL
+ purls: []
+ size: 1399015
+ timestamp: 1773251896861
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/swig-4.4.1-h4366dc5_0.conda
+ sha256: 6491edeb3df94578b016015f78dd80bddc0f85e2624ed9cea79ad9f9f4b240ca
+ md5: f9a4ce9ad596a0feac7cc7aba8517389
+ depends:
+ - libcxx >=19
+ - __osx >=11.0
+ - pcre2 >=10.47,<10.48.0a0
+ constrains:
+ - swig-abi ==5
+ license: GPL-3.0-or-later
+ license_family: GPL
+ purls: []
+ size: 1189583
+ timestamp: 1773252068990
+- conda: https://conda.anaconda.org/conda-forge/win-64/swig-4.4.1-h9b0202b_0.conda
+ sha256: f05e256f8edd14786c7832288e842f313b244a506975c2830ea9bbe7d4abc205
+ md5: 0341bd38d90eae2041629f9084bb143a
+ depends:
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - ucrt >=10.0.20348.0
+ - pcre2 >=10.47,<10.48.0a0
+ constrains:
+ - swig-abi ==5
+ license: GPL-3.0-or-later
+ license_family: GPL
+ purls: []
+ size: 1154778
+ timestamp: 1773251909868
- conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.28-h4ee821c_9.conda
sha256: c47299fe37aebb0fcf674b3be588e67e4afb86225be4b0d452c7eb75c086b851
md5: 13dc3adbc692664cd3beabd216434749
@@ -3746,6 +7027,26 @@ packages:
purls: []
size: 3526350
timestamp: 1769460339384
+- pypi: https://files.pythonhosted.org/packages/2c/23/f6c6112a04d28eed765e374435fb1a9198f73e1ec4b4024184f21faeb1ad/tornado-6.5.5-cp39-abi3-win_amd64.whl
+ name: tornado
+ version: 6.5.5
+ sha256: 6443a794ba961a9f619b1ae926a2e900ac20c34483eea67be4ed8f1e58d3ef7b
+ requires_python: '>=3.9'
+- pypi: https://files.pythonhosted.org/packages/34/01/74e034a30ef59afb4097ef8659515e96a39d910b712a89af76f5e4e1f93c/tornado-6.5.5-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
+ name: tornado
+ version: 6.5.5
+ sha256: 435319e9e340276428bbdb4e7fa732c2d399386d1de5686cb331ec8eee754f07
+ requires_python: '>=3.9'
+- pypi: https://files.pythonhosted.org/packages/59/8c/77f5097695f4dd8255ecbd08b2a1ed8ba8b953d337804dd7080f199e12bf/tornado-6.5.5-cp39-abi3-macosx_10_9_universal2.whl
+ name: tornado
+ version: 6.5.5
+ sha256: 487dc9cc380e29f58c7ab88f9e27cdeef04b2140862e5076a66fb6bb68bb1bfa
+ requires_python: '>=3.9'
+- pypi: https://files.pythonhosted.org/packages/b2/04/7b5705d5b3c0fab088f434f9c83edac1573830ca49ccf29fb83bf7178eec/tornado-6.5.5-cp39-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
+ name: tornado
+ version: 6.5.5
+ sha256: e74c92e8e65086b338fd56333fb9a68b9f6f2fe7ad532645a290a464bcf46be5
+ requires_python: '>=3.9'
- pypi: https://files.pythonhosted.org/packages/61/7a/f38385f1b2d5f54221baf1db3d6371dc6eef8041d95abff39576c694e9d9/transforms3d-0.4.2-py3-none-any.whl
name: transforms3d
version: 0.4.2
@@ -3775,6 +7076,11 @@ packages:
version: 4.15.0
sha256: f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548
requires_python: '>=3.9'
+- pypi: https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl
+ name: tzdata
+ version: '2025.3'
+ sha256: 06a47e5700f3081aab02b2e513160914ff0694bce9947d6b76ebd6bf57cfc5d1
+ requires_python: '>=2'
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2025c-hc9c84f9_1.conda
sha256: 1d30098909076af33a35017eed6f2953af1c769e273a0626a04722ac4acaba3c
md5: ad659d0a2b3e47e38d829aa8cad2d610
@@ -3803,25 +7109,25 @@ packages:
- pysocks>=1.5.6,!=1.5.7,<2.0 ; extra == 'socks'
- backports-zstd>=1.0.0 ; python_full_version < '3.14' and extra == 'zstd'
requires_python: '>=3.9'
-- pypi: https://files.pythonhosted.org/packages/20/5f/5f204e9c3f04f5fc844d2f98d80a7de64b6b304af869644ab478d909f6ff/uv-0.10.7-py3-none-manylinux_2_28_aarch64.whl
+- pypi: https://files.pythonhosted.org/packages/0c/75/40b237d005e4cdef9f960c215d3e2c0ab4f459ca009c3800cdcb07fbaa1d/uv-0.10.12-py3-none-manylinux_2_28_aarch64.whl
name: uv
- version: 0.10.7
- sha256: 9945de1d11c4a5ad77e9c4f36f8b5f9e7c9c3c32999b8bc0e7e579145c3b641c
+ version: 0.10.12
+ sha256: 384b7f36a1ae50efe5f50fe299f276a83bf7acc8b7147517f34e27103270f016
requires_python: '>=3.8'
-- pypi: https://files.pythonhosted.org/packages/5e/15/8365dc2ded350a4ee5fcbbf9b15195cb2b45855114f2a154b5effb6fa791/uv-0.10.7-py3-none-macosx_11_0_arm64.whl
+- pypi: https://files.pythonhosted.org/packages/8d/42/139e68d7d92bb90a33b5e269dbe474acb00b6c9797541032f859c5bf4c4d/uv-0.10.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
name: uv
- version: 0.10.7
- sha256: d872d2ff9c9dfba989b5f05f599715bc0f19b94cd0dbf8ae4ad22f8879a66c8c
+ version: 0.10.12
+ sha256: 101481a1f48db6becf219914a591a588c0b3bfd05bef90768a5d04972bd6455e
requires_python: '>=3.8'
-- pypi: https://files.pythonhosted.org/packages/71/a9/2735cc9dc39457c9cf64d1ce2ba5a9a8ecbb103d0fb64b052bf33ba3d669/uv-0.10.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
+- pypi: https://files.pythonhosted.org/packages/b5/9c/1954092ce17c00a8c299d39f8121e4c8d60f22a69c103f34d8b8dc68444d/uv-0.10.12-py3-none-win_amd64.whl
name: uv
- version: 0.10.7
- sha256: 89de2504407dcf04aece914c6ca3b9d8e60cf9ff39a13031c1df1f7c040cea81
+ version: 0.10.12
+ sha256: 76ebe11572409dfbe20ec25a823f9bc8781400ece5356aa33ec44903af7ec316
requires_python: '>=3.8'
-- pypi: https://files.pythonhosted.org/packages/e3/1f/74f4d625db838f716a555908d41777b6357bacc141ddef117a01855e5ef9/uv-0.10.7-py3-none-win_amd64.whl
+- pypi: https://files.pythonhosted.org/packages/ce/db/c41ace81b8ef5d5952433df38e321c0b6e5f88ce210c508b14f84817963f/uv-0.10.12-py3-none-macosx_11_0_arm64.whl
name: uv
- version: 0.10.7
- sha256: ad0d0ddd9f5407ad8699e3b20fe6c18406cd606336743e246b16914801cfd8b0
+ version: 0.10.12
+ sha256: 551f799d53e397843b6cde7e3c61de716fb487da512a21a954b7d0cbc06967e0
requires_python: '>=3.8'
- conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-h41ae7f8_34.conda
sha256: 9dc40c2610a6e6727d635c62cced5ef30b7b30123f5ef67d6139e23d21744b3a
@@ -3860,10 +7166,10 @@ packages:
purls: []
size: 115235
timestamp: 1767320173250
-- pypi: https://files.pythonhosted.org/packages/78/55/896b06bf93a49bec0f4ae2a6f1ed12bd05c8860744ac3a70eda041064e4d/virtualenv-21.1.0-py3-none-any.whl
+- pypi: https://files.pythonhosted.org/packages/c6/59/7d02447a55b2e55755011a647479041bc92a82e143f96a8195cb33bd0a1c/virtualenv-21.2.0-py3-none-any.whl
name: virtualenv
- version: 21.1.0
- sha256: 164f5e14c5587d170cf98e60378eb91ea35bf037be313811905d3a24ea33cc07
+ version: 21.2.0
+ sha256: 1bd755b504931164a5a496d217c014d098426cddc79363ad66ac78125f9d908f
requires_dist:
- distlib>=0.3.7,<1
- filelock>=3.24.2,<4 ; python_full_version >= '3.10'
@@ -3897,6 +7203,33 @@ packages:
purls: []
size: 238764
timestamp: 1745560912727
+- conda: https://conda.anaconda.org/conda-forge/linux-64/wayland-1.25.0-hd6090a7_0.conda
+ sha256: ea374d57a8fcda281a0a89af0ee49a2c2e99cc4ac97cf2e2db7064e74e764bdb
+ md5: 996583ea9c796e5b915f7d7580b51ea6
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libexpat >=2.7.4,<3.0a0
+ - libffi >=3.5.2,<3.6.0a0
+ - libgcc >=14
+ - libstdcxx >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 334139
+ timestamp: 1773959575393
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/wayland-1.25.0-h4f8a99f_0.conda
+ sha256: 3cc479df517b0ce110835a1256f91ca568581cb6dfe1c53a0786f0a226039a45
+ md5: 0a7a9548726f98d5869fd4c43e110f0f
+ depends:
+ - libexpat >=2.7.4,<3.0a0
+ - libffi >=3.5.2,<3.6.0a0
+ - libgcc >=14
+ - libstdcxx >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 335260
+ timestamp: 1773959583826
- conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.46.3-pyhd8ed1ab_0.conda
sha256: d6cf2f0ebd5e09120c28ecba450556ce553752652d91795442f0e70f837126ae
md5: bdbd7385b4a67025ac2dba4ef8cb6a8f
@@ -3909,6 +7242,549 @@ packages:
- pkg:pypi/wheel?source=hash-mapping
size: 31858
timestamp: 1769139207397
+- pypi: https://files.pythonhosted.org/packages/e1/07/c6fe3ad3e685340704d314d765b7912993bcb8dc198f0e7a89382d37974b/win32_setctime-1.2.0-py3-none-any.whl
+ name: win32-setctime
+ version: 1.2.0
+ sha256: 95d644c4e708aba81dc3704a116d8cbc974d70b3bdb8be1d150e36be6e9d1390
+ requires_dist:
+ - black>=19.3b0 ; python_full_version >= '3.6' and extra == 'dev'
+ - pytest>=4.6.2 ; extra == 'dev'
+ requires_python: '>=3.5'
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.1-h4f16b4b_2.conda
+ sha256: ad8cab7e07e2af268449c2ce855cbb51f43f4664936eff679b1f3862e6e4b01d
+ md5: fdc27cb255a7a2cc73b7919a968b48f0
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - libxcb >=1.17.0,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 20772
+ timestamp: 1750436796633
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-0.4.1-hca56bd8_2.conda
+ sha256: d874906e236a5edc9309d479599bf2de4d8adca0f23c355b76759d5fb3c4bef8
+ md5: 159ffec8f7fab775669a538f0b29373a
+ depends:
+ - libgcc >=13
+ - libxcb >=1.17.0,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 21517
+ timestamp: 1750437961489
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-cursor-0.1.6-hb03c661_0.conda
+ sha256: c2be9cae786fdb2df7c2387d2db31b285cf90ab3bfabda8fa75a596c3d20fc67
+ md5: 4d1fc190b99912ed557a8236e958c559
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libxcb >=1.13
+ - libxcb >=1.17.0,<2.0a0
+ - xcb-util-image >=0.4.0,<0.5.0a0
+ - xcb-util-renderutil >=0.3.10,<0.4.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 20829
+ timestamp: 1763366954390
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-cursor-0.1.6-he30d5cf_0.conda
+ sha256: 2e31eeeac0ad76229a565f1df3a8fb4ea54852a68404a99558adab9c92c0ac4d
+ md5: 8b70063c86f7f9a0b045e78d2d9971f7
+ depends:
+ - libgcc >=14
+ - libxcb >=1.13
+ - libxcb >=1.17.0,<2.0a0
+ - xcb-util-image >=0.4.0,<0.5.0a0
+ - xcb-util-renderutil >=0.3.10,<0.4.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 21639
+ timestamp: 1763367131001
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-hb711507_2.conda
+ sha256: 94b12ff8b30260d9de4fd7a28cca12e028e572cbc504fd42aa2646ec4a5bded7
+ md5: a0901183f08b6c7107aab109733a3c91
+ depends:
+ - libgcc-ng >=12
+ - libxcb >=1.16,<2.0.0a0
+ - xcb-util >=0.4.1,<0.5.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 24551
+ timestamp: 1718880534789
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-image-0.4.0-h5c728e9_2.conda
+ sha256: a43058edc001e8fb97f9b291028a6ca16a8969d9b56a998c7aecea083323ac97
+ md5: b82e5c78dbbfa931980e8bfe83bce913
+ depends:
+ - libgcc-ng >=12
+ - libxcb >=1.16,<2.0.0a0
+ - xcb-util >=0.4.1,<0.5.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 24910
+ timestamp: 1718880504308
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.1-hb711507_0.conda
+ sha256: 546e3ee01e95a4c884b6401284bb22da449a2f4daf508d038fdfa0712fe4cc69
+ md5: ad748ccca349aec3e91743e08b5e2b50
+ depends:
+ - libgcc-ng >=12
+ - libxcb >=1.16,<2.0.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 14314
+ timestamp: 1718846569232
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-keysyms-0.4.1-h5c728e9_0.conda
+ sha256: 9d92daa7feb0e14f81bf0d4b3f0b6ff1e8cec3ff514df8a0c06c4d49b518c315
+ md5: 57ca8564599ddf8b633c4ea6afee6f3a
+ depends:
+ - libgcc-ng >=12
+ - libxcb >=1.16,<2.0.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 14343
+ timestamp: 1718846624153
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.10-hb711507_0.conda
+ sha256: 2d401dadc43855971ce008344a4b5bd804aca9487d8ebd83328592217daca3df
+ md5: 0e0cbe0564d03a99afd5fd7b362feecd
+ depends:
+ - libgcc-ng >=12
+ - libxcb >=1.16,<2.0.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 16978
+ timestamp: 1718848865819
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-renderutil-0.3.10-h5c728e9_0.conda
+ sha256: 5827f5617c9741599f72bb7f090726f89c6ef91e4bada621895fdc2bbadfb0f1
+ md5: 7beeda4223c5484ef72d89fb66b7e8c1
+ depends:
+ - libgcc-ng >=12
+ - libxcb >=1.16,<2.0.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 18139
+ timestamp: 1718849914457
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.2-hb711507_0.conda
+ sha256: 31d44f297ad87a1e6510895740325a635dd204556aa7e079194a0034cdd7e66a
+ md5: 608e0ef8256b81d04456e8d211eee3e8
+ depends:
+ - libgcc-ng >=12
+ - libxcb >=1.16,<2.0.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 51689
+ timestamp: 1718844051451
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xcb-util-wm-0.4.2-h5c728e9_0.conda
+ sha256: 3f52cd8783e7d953c54266255fd11886c611c2620545eabc28ec8cf470ae8be7
+ md5: f14dcda6894722e421da2b7dcffb0b78
+ depends:
+ - libgcc-ng >=12
+ - libxcb >=1.16,<2.0.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 50772
+ timestamp: 1718845072660
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.47-hb03c661_0.conda
+ sha256: 19c2bb14bec84b0e995b56b752369775c75f1589314b43733948bb5f471a6915
+ md5: b56e0c8432b56decafae7e78c5f29ba5
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - xorg-libx11 >=1.8.13,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 399291
+ timestamp: 1772021302485
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xkeyboard-config-2.47-he30d5cf_0.conda
+ sha256: ec7ff9dffbd41faa31a30fa0724699f05bca000d57c745a195ecdb56888a8605
+ md5: 4ac707a4279972357712af099cd1ae50
+ depends:
+ - libgcc >=14
+ - xorg-libx11 >=1.8.13,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 399629
+ timestamp: 1772021320967
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.2-hb9d3cd8_0.conda
+ sha256: c12396aabb21244c212e488bbdc4abcdef0b7404b15761d9329f5a4a39113c4b
+ md5: fb901ff28063514abb6046c9ec2c4a45
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 58628
+ timestamp: 1734227592886
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libice-1.1.2-h86ecc28_0.conda
+ sha256: a2ba1864403c7eb4194dacbfe2777acf3d596feae43aada8d1b478617ce45031
+ md5: c8d8ec3e00cd0fd8a231789b91a7c5b7
+ depends:
+ - libgcc >=13
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 60433
+ timestamp: 1734229908988
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.6-he73a12e_0.conda
+ sha256: 277841c43a39f738927145930ff963c5ce4c4dacf66637a3d95d802a64173250
+ md5: 1c74ff8c35dcadf952a16f752ca5aa49
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - libuuid >=2.38.1,<3.0a0
+ - xorg-libice >=1.1.2,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 27590
+ timestamp: 1741896361728
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libsm-1.2.6-h0808dbd_0.conda
+ sha256: b86a819cd16f90c01d9d81892155126d01555a20dabd5f3091da59d6309afd0a
+ md5: 2d1409c50882819cb1af2de82e2b7208
+ depends:
+ - libgcc >=13
+ - libuuid >=2.38.1,<3.0a0
+ - xorg-libice >=1.1.2,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 28701
+ timestamp: 1741897678254
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.13-he1eb515_0.conda
+ sha256: 516d4060139dbb4de49a4dcdc6317a9353fb39ebd47789c14e6fe52de0deee42
+ md5: 861fb6ccbc677bb9a9fb2468430b9c6a
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - libxcb >=1.17.0,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 839652
+ timestamp: 1770819209719
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libx11-1.8.13-h63a1b12_0.conda
+ sha256: cf886160e2ff580d77f7eb8ec1a77c41c2c5b05343e329bc35f0ddf40b8d92ab
+ md5: 22dd10425ef181e80e130db50675d615
+ depends:
+ - libgcc >=14
+ - libxcb >=1.17.0,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 869058
+ timestamp: 1770819244991
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.12-hb03c661_1.conda
+ sha256: 6bc6ab7a90a5d8ac94c7e300cc10beb0500eeba4b99822768ca2f2ef356f731b
+ md5: b2895afaf55bf96a8c8282a2e47a5de0
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 15321
+ timestamp: 1762976464266
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxau-1.0.12-he30d5cf_1.conda
+ sha256: e9f6e931feeb2f40e1fdbafe41d3b665f1ab6cb39c5880a1fcf9f79a3f3c84a5
+ md5: 1c246e1105000c3660558459e2fd6d43
+ depends:
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 16317
+ timestamp: 1762977521691
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcomposite-0.4.7-hb03c661_0.conda
+ sha256: 048c103000af9541c919deef03ae7c5e9c570ffb4024b42ecb58dbde402e373a
+ md5: f2ba4192d38b6cef2bb2c25029071d90
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ - xorg-libxfixes >=6.0.2,<7.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 14415
+ timestamp: 1770044404696
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxcomposite-0.4.7-he30d5cf_0.conda
+ sha256: 554f986ffa781d3393079926931465e61291d1eb8a56a03ad4a8e54b1ae233f4
+ md5: 9c639c1abdbfe6759c5beb2c1db4bc13
+ depends:
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ - xorg-libxfixes >=6.0.2,<7.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 14915
+ timestamp: 1770044415607
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxcursor-1.2.3-hb9d3cd8_0.conda
+ sha256: 832f538ade441b1eee863c8c91af9e69b356cd3e9e1350fff4fe36cc573fc91a
+ md5: 2ccd714aa2242315acaf0a67faea780b
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - xorg-libx11 >=1.8.10,<2.0a0
+ - xorg-libxfixes >=6.0.1,<7.0a0
+ - xorg-libxrender >=0.9.11,<0.10.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 32533
+ timestamp: 1730908305254
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxcursor-1.2.3-h86ecc28_0.conda
+ sha256: c5d3692520762322a9598e7448492309f5ee9d8f3aff72d787cf06e77c42507f
+ md5: f2054759c2203d12d0007005e1f1296d
+ depends:
+ - libgcc >=13
+ - xorg-libx11 >=1.8.9,<2.0a0
+ - xorg-libxfixes >=6.0.1,<7.0a0
+ - xorg-libxrender >=0.9.11,<0.10.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 34596
+ timestamp: 1730908388714
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdamage-1.1.6-hb9d3cd8_0.conda
+ sha256: 43b9772fd6582bf401846642c4635c47a9b0e36ca08116b3ec3df36ab96e0ec0
+ md5: b5fcc7172d22516e1f965490e65e33a4
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - xorg-libx11 >=1.8.10,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxfixes >=6.0.1,<7.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 13217
+ timestamp: 1727891438799
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxdamage-1.1.6-h86ecc28_0.conda
+ sha256: 3afaa2f43eb4cb679fc0c3d9d7c50f0f2c80cc5d3df01d5d5fd60655d0bfa9be
+ md5: d5773c4e4d64428d7ddaa01f6f845dc7
+ depends:
+ - libgcc >=13
+ - xorg-libx11 >=1.8.9,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxfixes >=6.0.1,<7.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 13794
+ timestamp: 1727891406431
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.5-hb03c661_1.conda
+ sha256: 25d255fb2eef929d21ff660a0c687d38a6d2ccfbcbf0cc6aa738b12af6e9d142
+ md5: 1dafce8548e38671bea82e3f5c6ce22f
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 20591
+ timestamp: 1762976546182
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxdmcp-1.1.5-he30d5cf_1.conda
+ sha256: 128d72f36bcc8d2b4cdbec07507542e437c7d67f677b7d77b71ed9eeac7d6df1
+ md5: bff06dcde4a707339d66d45d96ceb2e2
+ depends:
+ - libgcc >=14
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 21039
+ timestamp: 1762979038025
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.7-hb03c661_0.conda
+ sha256: 79c60fc6acfd3d713d6340d3b4e296836a0f8c51602327b32794625826bd052f
+ md5: 34e54f03dfea3e7a2dcf1453a85f1085
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 50326
+ timestamp: 1769445253162
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxext-1.3.7-he30d5cf_0.conda
+ sha256: db2188bc0d844d4e9747bac7f6c1d067e390bd769c5ad897c93f1df759dc5dba
+ md5: fb42b683034619915863d68dd9df03a3
+ depends:
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 52409
+ timestamp: 1769446753771
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxfixes-6.0.2-hb03c661_0.conda
+ sha256: 83c4c99d60b8784a611351220452a0a85b080668188dce5dfa394b723d7b64f4
+ md5: ba231da7fccf9ea1e768caf5c7099b84
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 20071
+ timestamp: 1759282564045
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxfixes-6.0.2-he30d5cf_0.conda
+ sha256: 8cb9c88e25c57e47419e98f04f9ef3154ad96b9f858c88c570c7b91216a64d0e
+ md5: e8b4056544341daf1d415eaeae7a040c
+ depends:
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 20704
+ timestamp: 1759284028146
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxi-1.8.2-hb9d3cd8_0.conda
+ sha256: 1a724b47d98d7880f26da40e45f01728e7638e6ec69f35a3e11f92acd05f9e7a
+ md5: 17dcc85db3c7886650b8908b183d6876
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - xorg-libx11 >=1.8.10,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxfixes >=6.0.1,<7.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 47179
+ timestamp: 1727799254088
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxi-1.8.2-h57736b2_0.conda
+ sha256: 7b587407ecb9ccd2bbaf0fb94c5dbdde4d015346df063e9502dc0ce2b682fb5e
+ md5: eeee3bdb31c6acde2b81ad1b8c287087
+ depends:
+ - libgcc >=13
+ - xorg-libx11 >=1.8.9,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxfixes >=6.0.1,<7.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 48197
+ timestamp: 1727801059062
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrandr-1.5.5-hb03c661_0.conda
+ sha256: 80ed047a5cb30632c3dc5804c7716131d767089f65877813d4ae855ee5c9d343
+ md5: e192019153591938acf7322b6459d36e
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxrender >=0.9.12,<0.10.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 30456
+ timestamp: 1769445263457
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxrandr-1.5.5-he30d5cf_0.conda
+ sha256: 9f5196665a8d72f4f119c40dcc4bafeb0b540b102cc7b8b299c2abf599e7919f
+ md5: 1f64c613f0b8d67e9fb0e165d898fb6b
+ depends:
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxrender >=0.9.12,<0.10.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 31122
+ timestamp: 1769445286951
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.12-hb9d3cd8_0.conda
+ sha256: 044c7b3153c224c6cedd4484dd91b389d2d7fd9c776ad0f4a34f099b3389f4a1
+ md5: 96d57aba173e878a2089d5638016dc5e
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - xorg-libx11 >=1.8.10,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 33005
+ timestamp: 1734229037766
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxrender-0.9.12-h86ecc28_0.conda
+ sha256: ffd77ee860c9635a28cfda46163dcfe9224dc6248c62404c544ae6b564a0be1f
+ md5: ae2c2dd0e2d38d249887727db2af960e
+ depends:
+ - libgcc >=13
+ - xorg-libx11 >=1.8.10,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 33649
+ timestamp: 1734229123157
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxtst-1.2.5-hb9d3cd8_3.conda
+ sha256: 752fdaac5d58ed863bbf685bb6f98092fe1a488ea8ebb7ed7b606ccfce08637a
+ md5: 7bbe9a0cc0df0ac5f5a8ad6d6a11af2f
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - xorg-libx11 >=1.8.10,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxi >=1.7.10,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 32808
+ timestamp: 1727964811275
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxtst-1.2.5-h57736b2_3.conda
+ sha256: 6eaffce5a34fc0a16a21ddeaefb597e792a263b1b0c387c1ce46b0a967d558e1
+ md5: c05698071b5c8e0da82a282085845860
+ depends:
+ - libgcc >=13
+ - xorg-libx11 >=1.8.9,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ - xorg-libxi >=1.7.10,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 33786
+ timestamp: 1727964907993
+- conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxxf86vm-1.1.7-hb03c661_0.conda
+ sha256: 64db17baaf36fa03ed8fae105e2e671a7383e22df4077486646f7dbf12842c9f
+ md5: 665d152b9c6e78da404086088077c844
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 18701
+ timestamp: 1769434732453
+- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/xorg-libxxf86vm-1.1.7-he30d5cf_0.conda
+ sha256: 6f6f2b32754e09c2334e067ba5d2d38715f2432cd9fb41d6f66de0591f8f4f94
+ md5: b15ca02584678f38df6e114c32f93959
+ depends:
+ - libgcc >=14
+ - xorg-libx11 >=1.8.12,<2.0a0
+ - xorg-libxext >=1.3.6,<2.0a0
+ license: MIT
+ license_family: MIT
+ purls: []
+ size: 19148
+ timestamp: 1769434729220
+- pypi: https://files.pythonhosted.org/packages/ef/5c/2c189d18d495dd0fa3f27ccc60762bbc787eed95b9b0147266e72bb76585/xyzservices-2025.11.0-py3-none-any.whl
+ name: xyzservices
+ version: 2025.11.0
+ sha256: de66a7599a8d6dad63980b77defd1d8f5a5a9cb5fc8774ea1c6e89ca7c2a3d2f
+ requires_python: '>=3.8'
- pypi: https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl
name: zipp
version: 3.23.0
@@ -3954,3 +7830,27 @@ packages:
purls: []
size: 614429
timestamp: 1764777145593
+- conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda
+ sha256: 9485ba49e8f47d2b597dd399e88f4802e100851b27c21d7525625b0b4025a5d9
+ md5: ab136e4c34e97f34fb621d2592a393d8
+ depends:
+ - __osx >=11.0
+ - libzlib >=1.3.1,<2.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 433413
+ timestamp: 1764777166076
+- conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.7-h534d264_6.conda
+ sha256: 368d8628424966fd8f9c8018326a9c779e06913dd39e646cf331226acc90e5b2
+ md5: 053b84beec00b71ea8ff7a4f84b55207
+ depends:
+ - vc >=14.3,<15
+ - vc14_runtime >=14.44.35208
+ - ucrt >=10.0.20348.0
+ - libzlib >=1.3.1,<2.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ purls: []
+ size: 388453
+ timestamp: 1764777142545
diff --git a/pixi.toml b/pixi.toml
index 70d8832..d4ae5a3 100644
--- a/pixi.toml
+++ b/pixi.toml
@@ -10,6 +10,8 @@ platforms = ["linux-64", "win-64", "linux-aarch64", "osx-arm64"]
python = "3.12.*"
pip = "*"
rust = "*"
+pyside6 = "*"
+swig = "*"
[target.win-64.dependencies]
# Provides activation that runs vcvars64, putting MSVC link.exe on PATH so Rust finds it (not Git's link)
@@ -39,6 +41,15 @@ mujoco = ">=3.3.2"
onshape-to-robot = ">=1.7.5"
qpsolvers = { version = ">=4.7.1", extras = ["quadprog"] }
pyserial = ">=3.5"
+# Demo/Sensors — tactile sensing, haptic feedback, visualisation
+lgpio = "*"
+spidev = "*"
+loguru = "*"
+pyqtgraph = "*"
+bokeh = "*"
+pandas = "*"
+gitpython = "*"
+gpiozero = "*"
[tasks]