Skip to main content

Software-Challenge Logo

Python-Client für die Software-Challenge Germany 2027

Read the Docs PyPI PyPI - Python Version Discord Documentation

Dieses Paket befindet sich derzeit in einem frühen Entwicklungsstadium!

Dieses Repository enthält das Python-Paket für die Software-Challenge Germany, einem Programmierwettbewerb für Schülerinnen und Schüler. Dabei muss eine künstliche Intelligenz entwickelt werden, die in einem jährlich wechselnden Spiel gegen andere Gegner antritt.

In diesem Jahr ist es das Spiel Blokus.

Inhaltsverzeichnis

Installation

Es gibt zwei Methoden, um den socha-Client zu installieren. Die erste Methode ist die schnellste, um sofort loslegen zu können. Diese Methode eignet sich jedoch nicht, um den Player im Wettbewerbssystem zu betreiben, da es keine Internetverbindung gibt, über die Pakete heruntergeladen werden können. Daher wird die Installation in einer virtuellen Umgebung empfohlen, bei der die Pakete in einem Ordner installiert werden.

Bitte sicherstellen, dass mindestens Python 3.10 installiert ist. Dies kann mit $ python -V oder $ python3 -V überprüft werden.

Falls Python nicht vorhanden ist, kann es mit folgenden Befehlen installiert werden:

  • Windows: > winget install -e --id Python.Python.3.10
  • Debian: $ sudo apt install python3.10
  • Arch: $ sudo pacman -S python

In seltenen Fällen kann es zu einer fehlerhaften oder fehlenden Installation von setuptools kommen. In diesem Fall kann setuptools mit pip install -I setuptools erneut installiert werden.

Global

Die Installation ist mit pip recht einfach.

$ pip install socha

Wenn das Paket manuell installiert werden soll, muss die gewünschte Version heruntergeladen, das Paket entpackt und dann setup.py mit Python ausgeführt werden.

$ python setup.py install --user

Damit sollten die Abhängigkeiten erfüllt sein und das Paket ist sofort einsatzbereit.

Virtuelle Umgebung

Um eine virtuelle Umgebung zu erstellen, sollte zunächst ein Verzeichnis erstellt und betreten werden, in dem der Player entwickelt werden soll.

$ mkdir my_player
$ cd my_player

Nun kann die virtuelle Umgebung (venv) erstellt werden.

$ python -m venv venv/

Nach Erstellung der venv kann sie aktiviert werden.

Unter Linux:

$ source venv/bin/activate

Unter Windows:

> Set-ExecutionPolicy Unrestricted -Scope Process
> .venv\Scripts\activate

Die venv sollte nun geöffnet sein und Pakete können installiert sowie Skripte ausgeführt werden. Um den Player zu entwickeln, muss das Paket socha mit pip installiert werden.

(venv) $ pip install socha

Damit sollten die Abhängigkeiten erfüllt sein und das Paket ist sofort einsatzbereit.

Erste Schritte

Die Struktur der Klasse zur Entwicklung und Implementierung der Logik sollte wie folgt aussehen:

class Logic(IClientHandler):
    GameState: GameState

    def calculate_move(self) -> Move:
        return Move(action=Advance(distance=1, cards=[]))

    def on_update(self, state: GameState):
        self.gameState = state

Das obige Beispiel zeigt die einfachste funktionierende Logik. Die Logik muss von IClientHandler erben, damit dessen Methoden überschrieben werden können und die API weiß, wo die Logik zu finden ist.

Wenn eine funktionierende Version des Players fertiggestellt ist, sollte die Datei mit dieser Funktion beendet werden, um den Starter mit den gewünschten Argumenten aufzurufen. Der folgende Code startet den Client mit den Standardargumenten.

if __name__ == "__main__":
    Starter(Logik())

ACHTUNG Die aktuelle ReadtheDocs Dokumentation ist nicht aktuell und leider Fehlerhaft. Die wichtigen Startschritte findetet ihr wie gehabt in dieser ReadMe.

Eine Liste an Klassen und Methoden findet sich hier _socha.pyi.

Ein komplettes Beispiel ist in dieser logic.py zu finden.

Startargumente

Falls die Logik von der Konsole aus ausgeführt werden soll, können Startargumente übergeben werden.

Beachten, dass alle als Startparameter übergebenen Argumente die im Code gesetzten überschreiben, einschließlich derjenigen, die selbst gesetzt wurden.

Befehl Beschreibung
--help Druckt die Hilfemeldung.
-h, --host Der Host, zu dem eine Verbindung hergestellt werden soll. Die Vorgabe ist 'localhost'.
-p, --port Der Port des Hosts. Die Vorgabe ist 13050.
-r, --reservation Reservierungscode für ein vorbereitetes Spiel.
-R, --room Raumnummer, mit der der Client versucht, eine Verbindung herzustellen.
-s, --survive Falls vorhanden, läuft der Client weiter, auch wenn die Verbindung zum Server unterbrochen wird.
-l, --log Falls vorhanden, schreibt der Client eine Protokolldatei in das aktuelle Verzeichnis.
-v, --verbose Ausführliche Option für die Protokollierung.
--auto-reconnect Verbindet sich automatisch wieder mit dem Server, wenn die Verbindung unterbrochen wird.
-b, --build Baut dieses Skript zu einem Paket mit all seinen Abhängigkeiten.
-d, --directory Das Verzeichnis, in dem das Paket erstellt werden soll.
-a, --architecture Die Architektur des Pakets.
--python-version Die Python-Version für den Build. Der Standardwert ist '3.10'.

Vorbereitung des Spielers für den Wettbewerb

Das Wettbewerbssystem läuft auf einem Linux-System mit einer x86_64-Architektur. Um den Client auf dem Wettbewerbssystem zu verwenden, muss das Socha-Paket für die Plattform manylinux2014_x86_64 und die Python-Version 310 oder 312 heruntergeladen werden.

Um sicherzustellen, dass der Player im Wettbewerbssystem verwendbar ist, müssen alle Abhängigkeiten heruntergeladen werden, da das System auf einem Docker-Container ohne Internetzugang und sudo-Berechtigung ausgeführt wird.

Das Paket erleichtert die Vorbereitung!

Eine Datei requirements.txt, die alle Abhängigkeiten auflistet, wird dafür benötigt. Jeder Bot braucht natürlich das Paket socha. Außerdem sollte setuptools in der Version 58.1.0 für Python 3.10 bzw. 75.8.0 für Python 3.12 hinzugefügt werden.
Alle Abhängigkeiten kommen mit der Syntax <paket>==<version> in jeweils eine Zeile.

Zum Starten folgenden Befehl im Terminal ausführen:

$ python <dein_haupt_skript>.py --build --directory <dein_ordner> --architecture <ziel_architektur> --python-version <3.xx>

Dadurch wird das Paket aktiviert und das Projekt erstellt.

Falls eine manuelle Vorgehensweise bevorzugt wird, folgen diese Schritte zum Herunterladen der Abhängigkeiten:

  1. Terminal oder Konsole an dem Ort öffnen, an dem das Verzeichnis erstellt werden soll, das hochgeladen wird.
  2. mkdir my_player eingeben, um ein neues Verzeichnis namens my_player zu erstellen. Der Verzeichnisname kann beliebig gewählt werden.
  3. Mit cd my_player in das Verzeichnis wechseln.
  4. Den Befehl pip download socha --only-binary=:all: --platform manylinux2014_x86_64 --python-version 310 -d dependencies im Verzeichnis ausführen, um die benötigten Abhängigkeiten in den Ordner dependencies herunterzuladen.
    • Ändere hier 310 zu 312 wenn du mit der Python-Version 3.12 arbeitest.
  5. Alle Abhängigkeiten hinzufügen, die der Client verwendet.
  6. Ein letztes Verzeichnis mit mkdir .pip_cache erstellen.

Nach dem Herunterladen der Abhängigkeiten muss ein Shell-Skript erstellt werden, das als Einstiegspunkt für den Player verwendet wird. Es muss den Namen start.sh tragen und sich auf der obersten Ebene des Verzeichnisses befinden, sonst kann es nicht gefunden werden.

Um das Shell-Skript zu erstellen, sind folgende Schritte notwendig:

  1. Das Shell-Skript in einer UNIX-Umgebung erstellen.

Unter Windows kann WSL oder Notepad++ verwendet werden. In Notepad++ zu Bearbeiten->Format Zeilenende->Unix(LF) wechseln, um sicherzustellen, dass die Zeilenenden nur LS ohne CR sind.

  1. Das Shell-Skript sollte die folgende Struktur haben:
#!/bin/sh

# Sofortiges Beenden, wenn ein Befehl fehlschlägt
set -e

# Setzt die Umgebungsvariable, die den Ort angibt, an dem pip seine Cache-Dateien speichert
export XDG_CACHE_HOME=./my_player/.pip_cache

# Setzt die Umgebungsvariable, die das Verzeichnis zur Liste der Pfade hinzufügt, die Python nach Modulen und Paketen durchsucht, wenn diese importiert werden.
export PYTHONPATH=./my_player/packages:$PYTHONPATH

# Installieren Sie das Paket socha
pip install --no-index --find-links=./my_player/dependencies/ ./my_player/dependencies/socha-1.0.1-py3-none-any.whl ./my_player/dependencies/xsdata-22.7-py3-none-any.whl --target=./my_player/packages/ --cache-dir=./my_player/.pip_cache

# Das Skript logic.py mit Startargumenten ausführen
python3 ./my_player/logic.py "$@"
  1. Alle Abhängigkeiten, die der Client verwendet, zu diesem Skript hinzufügen.

Nach Erstellung des Shell-Skripts sollte die Verzeichnisstruktur wie folgt aussehen:

my_player/
├── .pip_cache/
├─── dependencies/
├─── logic.py
└── start.sh

Das Verzeichnis my_player (oder wie auch immer es benannt wurde) muss nur noch als ZIP-Archiv verpackt werden, und der Player ist bereit zum Hochladen. Herzlichen Glückwunsch! 🥳🎉

Lokale Entwicklung

🏗️ Dieser Teil ist derzeit noch unfertig und kann sich noch ändern.

Dieses Paket wurde größtenteils in Rust geschrieben, was einen deutlichen Leistungsschub im Vergleich zu einem nativen Python-Programm bringt. Allerdings führt dies zu einem erheblichen Aufwand, da sogenannte Bindings erstellt werden müssen, die es Python ermöglichen, auf die Funktionen in Rust zuzugreifen. Hierfür wird PyO3 mit Hilfe von Maturin verwendet.

Für eine lokale Entwicklung müssen folgende Dinge installiert werden:

Nach erfolgreicher Installation muss der Befehl maturin develop in einer virtuellen Umgebung ausgeführt werden. Dann kann eine in Python geschriebene Logik verwendet und Änderungen im Rust-Code vorgenommen werden. Nach jeder Änderung muss maturin develop erneut ausgeführt werden, damit die Änderungen für den Python-Code sichtbar werden.

Metadata

Release files for socha 5.1.0

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

Built distributions (wheels)

Table of built distributions (wheels) for socha 5.1.0
File
socha-5.1.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
socha-5.1.0-cp313-cp313-win32.whl CPython 3.13 CPython 3.13 Windows x86-32 Details
socha-5.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
socha-5.1.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ IBM System/390x Details
socha-5.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ PowerPC 64-le Details
socha-5.1.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARMv7l Details
socha-5.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64 Details
socha-5.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.13 CPython 3.13 Linux glibc 2.5+ x86-32 Details
socha-5.1.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
socha-5.1.0-cp313-cp313-macosx_10_12_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.12+ x86-64 Details
socha-5.1.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
socha-5.1.0-cp312-cp312-win32.whl CPython 3.12 CPython 3.12 Windows x86-32 Details
socha-5.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
socha-5.1.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ IBM System/390x Details
socha-5.1.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ PowerPC 64-le Details
socha-5.1.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARMv7l Details
socha-5.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details
socha-5.1.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.12 CPython 3.12 Linux glibc 2.5+ x86-32 Details
socha-5.1.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
socha-5.1.0-cp312-cp312-macosx_10_12_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.12+ x86-64 Details
socha-5.1.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
socha-5.1.0-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details
socha-5.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
socha-5.1.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ IBM System/390x Details
socha-5.1.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ PowerPC 64-le Details
socha-5.1.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARMv7l Details
socha-5.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details
socha-5.1.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.11 CPython 3.11 Linux glibc 2.5+ x86-32 Details
socha-5.1.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
socha-5.1.0-cp311-cp311-macosx_10_12_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.12+ x86-64 Details
socha-5.1.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
socha-5.1.0-cp310-cp310-win32.whl CPython 3.10 CPython 3.10 Windows x86-32 Details
socha-5.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
socha-5.1.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ IBM System/390x Details
socha-5.1.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ PowerPC 64-le Details
socha-5.1.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARMv7l Details
socha-5.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details
socha-5.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.10 CPython 3.10 Linux glibc 2.5+ x86-32 Details
socha-5.1.0-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
socha-5.1.0-cp310-cp310-macosx_10_12_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.12+ x86-64 Details

Total release size: 17.2 MB

Release files / socha-5.1.0-cp313-cp313-win_amd64.whl

Download URL socha-5.1.0-cp313-cp313-win_amd64.whl
Size 280.8 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
edcadb4e3321f0904c230a13f2ec5231416d0bf053a2fac91873295fe609a2ac
BLAKE2b-256 checksum
How to use checksums
e899328c4fab6cc7fcf0bfaa243a1b5f2a32750c2c886105281fb4a2e022efc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp313-cp313-win32.whl

Download URL socha-5.1.0-cp313-cp313-win32.whl
Size 265.4 kB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
d22a9596dd3c99ce2ad1a42b017cfc1a6693d9bb7e2bba85344a57ef6f2d4b95
BLAKE2b-256 checksum
How to use checksums
369ff5acaf1b3b2bc8c4b0e42b8a8db419a6e6f5e93270ae3d2677b5058e939e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL socha-5.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 450.2 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
cb3144f73ee786013e8b3c15dfff0551c705aac01d3eb18a824b598a7c253e5a
BLAKE2b-256 checksum
How to use checksums
2f6aa215ac0546b704f341b751f87395ee04a7b001ffdb8a70c49e64c5961f44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL socha-5.1.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 484.1 kB
Tags CPython 3.13 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
bc1230bce5759a987a796e93788a4f23e7dfde515f84ad0aa91592c4690d813d
BLAKE2b-256 checksum
How to use checksums
4e6a61e43c169645d244b37e42ac51d147b1e682138ea9b19dda4fa59851ab38
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL socha-5.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 586.6 kB
Tags CPython 3.13 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
3e8f1fb4e3521698b9270c83d5c9c5aafefaa6e762d1d2e16f02fbe0ba737157
BLAKE2b-256 checksum
How to use checksums
2ac80418818a73361b5e446e3459b7693af7572af2a37be50ac8bf520e1581ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL socha-5.1.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 457.0 kB
Tags CPython 3.13 Linux glibc 2.17+ ARMv7l
SHA-256 checksum
How to use checksums
34ebd1de585ca0bf147f48c6bc1db897db61be55ec62cd4cd2e7e25f3b2f42de
BLAKE2b-256 checksum
How to use checksums
be5a4a9b31940b7ee5e1bcf646350f32b8c4ffc7cbf563e46019ab0ead166b5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL socha-5.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 454.2 kB
Tags CPython 3.13 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
b88ccaefebe4a8df337c7b0399fcef72ec6a22eec341d42e9a6cafd5b87d24cd
BLAKE2b-256 checksum
How to use checksums
bc7c869a001aab43fe088c8e0443da03a65e4cb08867d7921db16eed539a8b9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl

Download URL socha-5.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Size 482.4 kB
Tags CPython 3.13 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
bec00e23fda9804a2269aebb29bdf06c1640b07465229ac2c657f5c70f60e0cc
BLAKE2b-256 checksum
How to use checksums
436542d43706e98bb43187113211022d967fe1872f3af3bb0888768a3fc9c6af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL socha-5.1.0-cp313-cp313-macosx_11_0_arm64.whl
Size 400.5 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e65b8ced3cacf0c8a0bd134d3dddef7dce6ceec31d96c80b356071c5072796d7
BLAKE2b-256 checksum
How to use checksums
c05b7659b5130b84f6512576ab87930cfcf62a07c119d44dfa10bd592384f119
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp313-cp313-macosx_10_12_x86_64.whl

Download URL socha-5.1.0-cp313-cp313-macosx_10_12_x86_64.whl
Size 412.6 kB
Tags CPython 3.13 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
b06af75cf059b8db8fc0f5aa222118aff7e4c03be5de1d6c9bd9d3d7fa073a88
BLAKE2b-256 checksum
How to use checksums
bc673bd067ea38483c25b362d472b2de342e60197c069c105ea94fcd16a32c8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-win_amd64.whl

Download URL socha-5.1.0-cp312-cp312-win_amd64.whl
Size 280.6 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
502da466464b28a06d434125ab1eb4e5eafa03338ec2d4f8998b246bdb5e0f11
BLAKE2b-256 checksum
How to use checksums
dff1087b6b182d84d714d153beeeee9a3ee88ee9ff974065a8bda99c9c7a939d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-win32.whl

Download URL socha-5.1.0-cp312-cp312-win32.whl
Size 264.4 kB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
22153e4a0fe2c2eb82dd3a98c5ff5959d0b1e223eebb6f60c4c9ce4fc02aa9f0
BLAKE2b-256 checksum
How to use checksums
a890983ad3e3b9976a552a928f901761acca7fe2f6475e62fa90816b595d993b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL socha-5.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 450.1 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
8cca96b23be12b158276a842bad908e77f608743aa3cf558d9114f8329e82c6e
BLAKE2b-256 checksum
How to use checksums
0f59f9fa584fb8eeec0e09f10d81893da3d3f6e574685afafa4b00fee9351d4d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL socha-5.1.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 483.4 kB
Tags CPython 3.12 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
f01922530b9aec441fa3808532d9fad715d48898b48f6df2049f206271b6bef7
BLAKE2b-256 checksum
How to use checksums
c8b54afd6a8046a61c2d528e4294e45d538780b534585e1603c3ad1ed10db947
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL socha-5.1.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 585.1 kB
Tags CPython 3.12 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
69e9eb3a6e1a991617c11253a851cce92bb0e7d54361b9cd9e762b0c5af113de
BLAKE2b-256 checksum
How to use checksums
0187ebdae45530291ff3242f857cc2fac642668986afa3b5b29df50755efc03d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL socha-5.1.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 456.5 kB
Tags CPython 3.12 Linux glibc 2.17+ ARMv7l
SHA-256 checksum
How to use checksums
6a5e3ca4369d507db8bea8e824894fc61a40739da7b8b9769a87f12407cb90b4
BLAKE2b-256 checksum
How to use checksums
3903ec38534f49fd02be963c55c64586488fbeb89c9dd1f2affa8f98f52f5422
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL socha-5.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 453.8 kB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
6e3311df45662b600c3f80d02cc267261527d500908ef3281dfacee5ff91ce97
BLAKE2b-256 checksum
How to use checksums
aad253859e76caa4354f33f714880d0e4eee4d0da33a487207855e3e6fd10a7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl

Download URL socha-5.1.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Size 482.0 kB
Tags CPython 3.12 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
eb5181990d1190655c24f7a05ee171c6dfbe60e596f809e658f961636e627117
BLAKE2b-256 checksum
How to use checksums
dc926c4b978271475e9d841125cb2b760866c0881dd5fa35d45b566b6c05f737
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL socha-5.1.0-cp312-cp312-macosx_11_0_arm64.whl
Size 402.3 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e9208965ead9de73c12f017ebd2c442c028034ca9a2be0e62669702e06da4dc3
BLAKE2b-256 checksum
How to use checksums
4487dd6c7329390342a98ace0949d2a9d1107157202a98c6b34524ce3301fc5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp312-cp312-macosx_10_12_x86_64.whl

Download URL socha-5.1.0-cp312-cp312-macosx_10_12_x86_64.whl
Size 413.0 kB
Tags CPython 3.12 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
62c9089041ee019b74366e820435d636a6a85014f324ef6935d0638b7f06fb8a
BLAKE2b-256 checksum
How to use checksums
6efe7cf9347c7252b518354c6fc97eb2d4b0102e892306141bd02fc73b2e37ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-win_amd64.whl

Download URL socha-5.1.0-cp311-cp311-win_amd64.whl
Size 286.0 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
60b8c398d6639de37e9a6289d2104b44d20c9bd93dd06ac8eb44e5a30a683047
BLAKE2b-256 checksum
How to use checksums
3423451e5a6aa2e2d7c3f7e0260bbd68c4d4086d3fc2ff1442cf014dafecb664
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-win32.whl

Download URL socha-5.1.0-cp311-cp311-win32.whl
Size 269.8 kB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
1ddbe2ef9d8601660aadc1063dfef4c08b19e56824f921a2b68d2b7072b891c0
BLAKE2b-256 checksum
How to use checksums
fc5465b8d8cb04b25bb9e4bdb78342edae3d22e3d3398d2e1eb0e2158b2c072b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL socha-5.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 456.3 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
8cacf583565ac5699f6a11e20af03b0274db303f918264f5897da1d1cacda5dc
BLAKE2b-256 checksum
How to use checksums
d36031e7efd4b910451aa9a07b7807597b9153e72c97b7acc287d46dd74fd72c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL socha-5.1.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 486.5 kB
Tags CPython 3.11 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
2a90f8a8ae66820c61dc454ee50e6fdf9f26b48e0646d20af3c7757e106bcf2f
BLAKE2b-256 checksum
How to use checksums
52b91ee0dd0a497ad2955a9c2778a49905056dc2e128364eb3a5dc0f57242eac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL socha-5.1.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 595.4 kB
Tags CPython 3.11 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
8e82d6f5e144c178ac34ff84c4f603e293ea5a6fd9a23e69ad6407a21e0e4024
BLAKE2b-256 checksum
How to use checksums
6b7a8b7e9faffa589e006fb9356d31c916f88836b63a77bd4b31298aec3b4d7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL socha-5.1.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 460.3 kB
Tags CPython 3.11 Linux glibc 2.17+ ARMv7l
SHA-256 checksum
How to use checksums
cf498ab20d5ff27b1519fde8be5d014ff1205566c2e49baaab314dca25cbf5dc
BLAKE2b-256 checksum
How to use checksums
5bfb54b631103083e108182a8247f52d7fe1300e0b806688677ee005ec5fc5a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL socha-5.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 460.6 kB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
7fd2402d1efe62f676b0ceb38e6045af2a15f852070938c5a2e0ef8d1e4a6aac
BLAKE2b-256 checksum
How to use checksums
3b14a544405c064fba2e7d7957cd25a557e1e7328ab7beef0f9a6eb7481a9040
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl

Download URL socha-5.1.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Size 489.3 kB
Tags CPython 3.11 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
18186e15432e5b05e231f58577acc2ce10de02ec912ffbebd89cf3cb9ab5b27f
BLAKE2b-256 checksum
How to use checksums
06860ea5835ae8f2984434463d6fe346ac21d173f100b00aa71349852f4984da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL socha-5.1.0-cp311-cp311-macosx_11_0_arm64.whl
Size 410.1 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
959c2cd4628e702e71f449db2929bb1ad3aa974def76699fb2026a4be64ad1b6
BLAKE2b-256 checksum
How to use checksums
0260a57c11907984a8446317d0ba33ada7df9226d5fc4699eea9a757e965b8f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp311-cp311-macosx_10_12_x86_64.whl

Download URL socha-5.1.0-cp311-cp311-macosx_10_12_x86_64.whl
Size 410.4 kB
Tags CPython 3.11 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
d68fd7bc922dabcb860b7a03663127100a7d19252882b30fd90d846194b45893
BLAKE2b-256 checksum
How to use checksums
c1d08faab5d0cbf3631141b034c3a9e592c9596321573dcddf72978117d92aca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-win_amd64.whl

Download URL socha-5.1.0-cp310-cp310-win_amd64.whl
Size 286.2 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
9307303ddaaf5a093e7c9e1ca0b63c00a98d96fe975a18b0733dee516c5f4c27
BLAKE2b-256 checksum
How to use checksums
bc45743d90a8159387074e2d66552524b5608ea3e5d2a209318ccf1f77137157
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-win32.whl

Download URL socha-5.1.0-cp310-cp310-win32.whl
Size 270.0 kB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
7f343df5ba12fd8cb36088425f598f487a6ccad1802a01a57b3ad7ff09a92fca
BLAKE2b-256 checksum
How to use checksums
f93ad4d3dbb1250ab38c360a2f3a2fc563e151125c430af099607aa089afc5d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL socha-5.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 456.1 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
155d5ec421b5a1bd678b82ff985472434aca019928805339e5bad1959106774a
BLAKE2b-256 checksum
How to use checksums
1b160228ddc775db03e225662ea971547b1ec982446df224d8b752fa74bfa6dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL socha-5.1.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 486.5 kB
Tags CPython 3.10 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
8ec3065e532ef3de16e2a17ba4bea56571b40570a419a78d6889d7761fc87d67
BLAKE2b-256 checksum
How to use checksums
0a0a29be4b9fc69d18660d4683534c0c73991b6ca7c45f71dc5e9f74601dbb96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL socha-5.1.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 594.9 kB
Tags CPython 3.10 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
376cb924da9023806b5e35b815010b52d5faf57d3dacb86092b6241c271570d4
BLAKE2b-256 checksum
How to use checksums
1f5b19852d28d3f3ebcb11c77f08bb60165e6f4ec1179cee16e5fb3712a4e90a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL socha-5.1.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 459.7 kB
Tags CPython 3.10 Linux glibc 2.17+ ARMv7l
SHA-256 checksum
How to use checksums
51209a9f8d8e2364fede1e5b897af95a130f418fb02a902ff3694052acece003
BLAKE2b-256 checksum
How to use checksums
907c87c9082d224688edd1cb43805adef22bef81939da8c60c0ae702b5c1dafc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL socha-5.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 460.0 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
ae4277cfcece454f87c69286fa20fe11ef5e994ca35d8f9b655ed5fa789eece2
BLAKE2b-256 checksum
How to use checksums
73f476716d0d96e4e66350d07db4951953369358206f6ed3ae739488c021b5ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl

Download URL socha-5.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Size 488.4 kB
Tags CPython 3.10 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
85187200029bfad66e0cff60041d05b7e2ad8acef193d27229f4a164f00f89cf
BLAKE2b-256 checksum
How to use checksums
acd1557c14755f49381e5e4a16bcfc86e35b0885afa8de967a7a71031df931a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-macosx_11_0_arm64.whl

Download URL socha-5.1.0-cp310-cp310-macosx_11_0_arm64.whl
Size 410.6 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
13a28e61d7cc413485076018a9f5e3fbff02b1e6ac6d0d20efea4e7be6809ed2
BLAKE2b-256 checksum
How to use checksums
caf0a8b6fb54ca717adfc76a8acbbfe6576b9b19b84b84b2724f53561828160a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / socha-5.1.0-cp310-cp310-macosx_10_12_x86_64.whl

Download URL socha-5.1.0-cp310-cp310-macosx_10_12_x86_64.whl
Size 410.4 kB
Tags CPython 3.10 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
4fd749e9f76186a9cd1ee8ea51db6880714759932e65ddcfc5b75e12b631b9d5
BLAKE2b-256 checksum
How to use checksums
c787a3a271dc018335ecd55d864a230685b48ea01b98a18a674fab629d1cd7b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release history Release notifications | RSS feed

This release

5.1.0 This release

40 release files

4.3.9

42 release files

4.3.7

42 release files

4.3.6

42 release files

4.3.4

45 release files

4.3.3

44 release files

4.3.2

44 release files

4.3.1

44 release files

4.2.1

44 release files

4.2.0

44 release files

4.0.3

46 release files

4.0.2

46 release files

4.0.1

46 release files

4.0.0

46 release files

3.7.2

38 release files

3.7.1

38 release files

3.7.0

38 release files

3.6.2

36 release files

3.6.1

36 release files

3.5.2

36 release files

3.5.1

36 release files

3.5.0

36 release files

3.4.0

36 release files

3.3.0

36 release files

3.2.1

36 release files

2.2.2

37 release files

2.2.1

37 release files

2.2.0

37 release files

2.1.2

37 release files

2.1.1

37 release files

2.0.8

37 release files

2.0.7

37 release files

2.0.6

36 release files

2.0.4

37 release files

2.0.3

37 release files

2.0.2

37 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.9.9

2 release files

0.9.8

2 release files

0.9.7

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

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