Skip to main content

Test status badge

Test

PySpec

PySpec is a Python implementation of the SPEC server and client protocol, providing tools for remote control, data acquisition, and automation in scientific instrumentation environments. It enables Python-based clients to interact with a SPEC server, control motors, read/write variables, and execute commands or functions remotely.

Features

  • Async client-server architecture for high-performance remote control
  • Remote property and function access (read/write variables, call functions)
  • Motor control and status monitoring
  • Associative array and data array support

Installation

PySpec requires Python 3.9+ and depends on cython, h5py, numpy, and pyee.

pip install chess-pyspec

# or for development
git clone https://github.com/Verdant-Evolution/chess-pyspec
cd chess-pyspec
pip install -e .[dev]

Quick Start

Connecting as a Client

import asyncio
from pyspec.client import Client

async def main():
    async with Client("127.0.0.1", 6510) as client:
        # Get a reference to "var/foo" on the server.
        foo = client.var("foo", int)
        await foo.set(42)
        value = await foo.get()
        print("foo:", value) # foo: 42

        result = await client.call("add", 2, 3)
        print("add(2, 3):", result)


        # Wait for properties to be set to specific values
        await foo.wait_for(15, timeout=10)


asyncio.run(main())

Motor Control Example

async with Client("127.0.0.1", 6510) as client:
    motor = client.motor("theta")

    # Read and write motor properties and parameters
    await motor.sign.get()
    await motor.offset.get()
    await motor.position.get()
    ...

    # Move motors on the server
    async with motor:
        await motor.move(10.0)
        pos = await motor.position.get()
        print("Motor position:", pos) # "Motor position: 10.0"

Output Streaming Example

async with Client("127.0.0.1", 6510) as client:
    async with client.output("tty").capture() as lines:
        await client.exec('print("Hello, world!")')
    print(lines[-1])  # Should print 'Hello, world!\n'

Starting a Server

from pyspec.server import Server, Property, remote_function
import asyncio

class MyServer(Server):
    foo = Property[int]("foo", 0)

    @remote_function
    def add(self, a: str, b: str):
        return float(a) + float(b)

async def main():
    async with MyServer(host="127.0.0.1", port=6510, test_mode=True) as server:
        await server.serve_forever()

asyncio.run(main())

Hardware servers currently support properties and remote function calls. Connect with a PySpec or spec client to interface with a PySpec server.

Currently unsupported server features:

  1. Associative Arrays
  2. Motor Protocols (through ../start_one or ../start_all )

Testing

Run the test suite with:

pytest

Documentation

See the docs/ directory for full API documentation and usage details.

License

See LICENSE or the source headers for license details. Portions copyright Certified Scientific Software.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chess_pyspec-1.0.5.tar.gz (83.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_x86_64.whl (268.1 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_i686.whl (260.5 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_aarch64.whl (341.3 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

chess_pyspec-1.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

chess_pyspec-1.0.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (336.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

chess_pyspec-1.0.5-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl (250.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.12+ i686manylinux: glibc 2.17+ i686

chess_pyspec-1.0.5-cp313-cp313-macosx_11_0_arm64.whl (125.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

chess_pyspec-1.0.5-cp313-cp313-macosx_10_13_x86_64.whl (128.4 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_x86_64.whl (268.1 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_i686.whl (260.4 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_aarch64.whl (341.2 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

chess_pyspec-1.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

chess_pyspec-1.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (336.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

chess_pyspec-1.0.5-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl (250.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.12+ i686manylinux: glibc 2.17+ i686

chess_pyspec-1.0.5-cp312-cp312-macosx_11_0_arm64.whl (125.2 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

chess_pyspec-1.0.5-cp312-cp312-macosx_10_13_x86_64.whl (128.4 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_x86_64.whl (267.7 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_i686.whl (260.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_aarch64.whl (340.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

chess_pyspec-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

chess_pyspec-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (335.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

chess_pyspec-1.0.5-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl (250.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.12+ i686manylinux: glibc 2.17+ i686

chess_pyspec-1.0.5-cp311-cp311-macosx_11_0_arm64.whl (125.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

chess_pyspec-1.0.5-cp311-cp311-macosx_10_9_x86_64.whl (129.1 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_x86_64.whl (267.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_i686.whl (260.2 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_aarch64.whl (340.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

chess_pyspec-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

chess_pyspec-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (335.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

chess_pyspec-1.0.5-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl (250.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ i686manylinux: glibc 2.17+ i686

chess_pyspec-1.0.5-cp310-cp310-macosx_11_0_arm64.whl (125.2 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

chess_pyspec-1.0.5-cp310-cp310-macosx_10_9_x86_64.whl (129.1 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_x86_64.whl (267.5 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_i686.whl (260.0 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ i686

chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_aarch64.whl (340.6 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

chess_pyspec-1.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (260.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

chess_pyspec-1.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (335.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

chess_pyspec-1.0.5-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl (249.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.12+ i686manylinux: glibc 2.17+ i686

chess_pyspec-1.0.5-cp39-cp39-macosx_11_0_arm64.whl (125.2 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

chess_pyspec-1.0.5-cp39-cp39-macosx_10_9_x86_64.whl (129.1 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file chess_pyspec-1.0.5.tar.gz.

File metadata

  • Download URL: chess_pyspec-1.0.5.tar.gz
  • Upload date:
  • Size: 83.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for chess_pyspec-1.0.5.tar.gz
Algorithm Hash digest
SHA256 716dcd504549495aa8a5c0b87f5fd2265d5c9375dc2f2981c636e832e038039e
MD5 58b4dd5590b03007c0f04fb50e0c08ed
BLAKE2b-256 4a1660127a9e2c5815453b89dfcc415015a83505d354d978a459c8398e4cf644

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5.tar.gz:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 aa9eec7fa53d0ce6ed02d44d117c8b58fa7b4401ee4fb682edf8b7ece8348b7f
MD5 a447ac2a5a57f5973f8b2add6498fecc
BLAKE2b-256 d46b8a63fd09331f77c72873ff1ca9828bb2e06c3191828ad4430a89662858dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 47d59a591f2ca20123ad4572bf3bde947be80720b0f8b8b8bd573571818c6edc
MD5 f35e6501b68a4dc7e71b24d4e987a825
BLAKE2b-256 58f2d3a1a0f74e0260ef34f127b2cbe00ac2355446956cd102d6dc6aa28941e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 624542ee452bec3fe1bf94c9cefc403eb54fd0728165694d4b558862d40136b7
MD5 15a38dc71d27a344a405f11c4899fe22
BLAKE2b-256 e9135ddfe274e62cbc73a5acdb7e31efe9b6efcfc8f0f30be183057f942af1e6

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1cb0164e8a63227adebff5124962588aeab944e721fdd9f9e4ef49e72768f60f
MD5 97b5e174c3536cc0927c2a45055b6dee
BLAKE2b-256 621dd6b387804c3494e783c4b60de7903fcf50fdeceeacc27c3840fc0a52efe3

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4d2d312b055cfa189f8b3f651d176e04723e83afb3cd7b2fc06d4c2c939b66bc
MD5 90268505a5bd0dad09faf1195fc2f1e6
BLAKE2b-256 4735fdabb65aaf1760113061340a4516f25b39bc4725a71b03c97927f10771a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0d8d6c4dde5400877b6dcb84bd8181f13b3b701b11bac5cb9da46c62046a6c93
MD5 bb942a60a81764e6c8a962fce6dedf19
BLAKE2b-256 9d3be1d75b27331dcb3a6141d2780ab6348608644188f909fcc98e94e3a71fe1

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f5b897d8930b838d2067ba84a76b3fb64422bbcf028809f3a02dfb76b8e0d88e
MD5 1aab65f46e2ef4c83f06700e75e0ccf6
BLAKE2b-256 219bf069878d0464602a28fc755c5747d3de999163f759fe17038515ac173861

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a490fe33492a215eb7092719b135ac8ede11b7f5e06de072240fb864ab39f87f
MD5 ebd6e9ffda451184eba4957f366d961a
BLAKE2b-256 ca81dfd94060450a8f84bc27626962616a83853e3bc5390f02d182a1afe93056

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 914bb7aefb6dc77bfc9008c598f6056c966eb027734ad7beffe5b73268c3f6ca
MD5 908df5010ec86a484493ab867f9a54e3
BLAKE2b-256 4ba989982105ce06a4f653560cf8ee3752ed1199d3fbb6cf67fc73e4bd359e3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 1ddb7ed0c031fe39d3ac61e0511d1fb4c5548c6b6016416cfd11c465feea1537
MD5 b4da121377e092e2be35167bdfb91266
BLAKE2b-256 cef774e624e5460089420e103beec48fe9f11a155ba5fb793edebe75c367a977

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 18663aa0a636d306e35575331b395ec4c19702c08b0452d87c40a3eb94d1dea5
MD5 b0f67734d954ac6d0b0593c9534e2d5f
BLAKE2b-256 bca824ec248b77e7cb5e9491ee66108ca603809cfd88955b4afd564dfe8ff70c

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fbf5c5485ff5939724f1f910f40d82583cf4cdd9fe52fea8e6633dd1887d31d9
MD5 82b882572759bd90675a5b9e53587aed
BLAKE2b-256 e0bd97b0b6b029c3f1eb8ae07554b1f01ea46f639fdedcdadacaae20b622b2b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 56d513e5e714cfc66f45e75614682e3cc0df96016f8000d6edd6633459603920
MD5 f57c2dd7ed1aa4e5070de6e47ac75656
BLAKE2b-256 5072a315bd16f7b9e8e5a443c7cc9ffc877c8818e537654f6b6092254a8b81ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0e3ec80bfb4286a359f2193baf3346df1551756e7d88ca957077ab2b1c0622c4
MD5 9ca8c52d403ae393c7b4a462bb01c7c3
BLAKE2b-256 8f6167659bfc4e1bbb6d66da6d6f17dd24b6512ea3b18efc15af786d7d29f3c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a3ba9d4c6cd9250ab436a88270273a33ce085402e61fab46056cf5a08471b112
MD5 64d13eccbbfd37a97cff6c54440e64a2
BLAKE2b-256 cf95ab31f3da99496ac66ec3a07866c7e9a04fc76f30665b08ba9343611cc191

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 84209eb839f501dcab1f36f67349f4022b048021d9fa6a21927d38ee9973f840
MD5 58b73b91e4c394d2feecf04f2e8d6f32
BLAKE2b-256 8d7444b2685093fa7376ca847995ed9d6821618e580e49a566a3e4daf7a6ddd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fe9445952b71d30c4a7acd32959cf55aa65af926b39e1b12332e8ae4618cc9dd
MD5 6b67520727c407e5002c51246dff3058
BLAKE2b-256 8812b612c9bf2d7b2c0db7845262100473ec41f790fff88d110b1ad70dfed58d

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 1f045f104d8aa6dc28ba91f0952db440503ce4c4f2666e20a6aeddcff325d982
MD5 bb65775c3b57160e7cdf10cb8c400231
BLAKE2b-256 b6ea2e6e7be8f70b051f348543bff0ab11a6079bab28e9ef808f30aa88cbd1de

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 67019162c2916c6927ff8635edbba7673e64517a8a1686f7186701de6caeee2b
MD5 baebb97dbee8783b4c4462a838480886
BLAKE2b-256 95e8b18313a64d38e25cd09ff43bb685fba7b52545c85e73f86f840905a57b3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dabe417fb31a1bda6b53c79cd52b3bde9f936f08eda0bd22dc77f1c20d41a5ad
MD5 0d99ea60fa8bcacf742e34a08adc4ee0
BLAKE2b-256 ddde43541740f6f3c84c6c7c91c5ffdae62f458dd72be5a3976c03487fdcd0a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 aee926120ac9d0189cfc19de6552fae00bd98b68841771cfcd5e0d4f31186b96
MD5 a037b3913ab42dbe88494c8a76339f12
BLAKE2b-256 0992cd15c485fbd6ff24e0c0b62307ccadb7ae67a772edd3a3ea46f86ec4b20c

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b881e03019b1c2cc64c33ecc3425cfe04361a909f3dba62bdf3af63e080e634b
MD5 3cfee83a993b521a584360ab1e77d9f4
BLAKE2b-256 de1caf0db348740edb9a169e16b369c3bb7d0593d264ec4406dea06a34d82451

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4fb80aa50e7aa856c8ca027d57b76dd67886f649542f2e3568dbf45469e9e95d
MD5 b395c762b272847da104796c6669f28a
BLAKE2b-256 f4cc5496ba66535c1a7a68f80211e0066c5fca6bea94621a74807a688ad48cce

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4e0c9cce8727a7f15a6542f5b537db3dbb148bf2f3e90b820bdfc30f34e45074
MD5 1446419c45363a38d3161410e3e5ebbb
BLAKE2b-256 92d007f321c185128113fd72af26e04eac6d6ade54160dd4fd9a1ba2dc618752

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3c887d8161bbecd2e31048386ee7029549f708f459ca242f4930fefacdbe867a
MD5 10e65020ab555de579212fde01bde7fd
BLAKE2b-256 dc3dc081d83c9089700d924997589bc8c76e257b98c70ac5e36d5b4e1ab5d0b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 a080ef76d43e08a2d4d5d73f40ac1a4742db3483f1b7405f7f0925bede999367
MD5 b42b36fd166c7c765f172449763de906
BLAKE2b-256 7ddc434332515c5b7da71dd01ddf75961731b769a6d78f44bf19a34b331b7dc0

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8e98435020ae5325dc1681ebc0592b9f39588a378b1a6157a76649ed9164462f
MD5 6b0ae31f100c25c4e3deb687a55025ff
BLAKE2b-256 8ca87093178ff9ac8f0c91ba9347b24f47080169c8db72ab215fac6f32935dbd

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 61a4f96590433b2dc58086fad7fee1cf2a60cede189ef4e1969c71fde134f6c8
MD5 542705c489ee0d52c5326e4a413aa210
BLAKE2b-256 66a7c7484990d280d23d5e9e99f0efe41746e98acc8f327094db35aa116b6521

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c2c6faa8cee9c295482c45940cafbccc0a04bd87871e69c1241e524a15e6ca39
MD5 858fa5908b4e9f6a8cd8c29ea7f55fa2
BLAKE2b-256 43bb61b1d0218af9019d06e2641357cb6d39aead30629476e22149b83bcfea18

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 20d7f329cb20b03a977bc9d3416c2ece6a12df7604386f5238206fbb999adaa3
MD5 4c03456873dc362f40c3bf5643e01642
BLAKE2b-256 29952e683ca85afe5612db57d4f97c4169f0d80e70884d6a5a50e15f2cc3bd2d

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 24a5e3e755be71c404243fdef4c39d8f6eb3095b6f4f8367f47e94c614067c14
MD5 bd3b50cae315fb1f9ed1594a6cc7ed28
BLAKE2b-256 67f8b7ff77541e003c6fd90f5330838e23b3e4a64bfab0d4e2e4ac1ba9ad6ca1

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e52e2d70de9ea7fc9b340cdef86e39a4a811f4bfe08cc69bda6175f4c549ec8d
MD5 b8bc7c6d73f01b5a11f5466f618eb91b
BLAKE2b-256 ff4d5bdc372c92943aa4e970ab22095947182e313bd0135710a27389449d1914

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 28555063962468489ef2c479536cb3abd3891c774b0ea6546c797ea166204f52
MD5 5bda64f3116802aa281ca894b47bc7bd
BLAKE2b-256 f41772579fa5ee3774babef022446c6d59f1812e58fd6a1ea404d8358bc4b99c

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 44fb861880af5143359bfb04a31a8ac3225953d421f21ef5b591d4733eddd9f9
MD5 32b697cc81eade419ab7f182bab57eb3
BLAKE2b-256 ab9bfaab84c74c5955e6875654bf9c0d382015888b7348546ee942a2634fc08a

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 29d65728b08207a250198bbe90629751981fe3a3f015d81125f112f5ee884077
MD5 b83b6a2625bd255ec619fbea8dcb95e5
BLAKE2b-256 4463a1cd55f5c6381badc5bc9cc3c227c61c017a5fe59ec676eebfeb9d726d65

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp39-cp39-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 299e4666767135ef4893202d98400a51d567992696f9c55e40ac72a921f8fb3b
MD5 b16bfad22d69e64230df2249e2d88afe
BLAKE2b-256 a3f27fe645d6077d5eeb36062cb5f11fc3ff56585efddd32fa073c9949dc1b2a

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b7890593a0b2327921e18508a604905bad41a992348bcde1e46c7467a44f65cd
MD5 7183c7c9d8920743a0acd712cc0e5793
BLAKE2b-256 93ffe1aec2839cde930a592223440e80eb2a208b5cf2eb75f45f067cbdfac901

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 fafb87536f98ce7504413a001578ad52e389f2fc6999dd8c78f0bf995731b3dc
MD5 88c66a5917a89eebd47990fde7d93dd7
BLAKE2b-256 462a34689fb65f121d05bca788ea5776d6a63f1a7001cbb28822a8eac51dd25e

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e2cb9c3e2c785f020d9aafb5cb6fdba7885a48b4e41407b8010fb2302f4be557
MD5 4b84fb94ea5bee83c63af88523c16e09
BLAKE2b-256 946ced773a7befef3d3aff9538bad14c213647acd766b11cf79fdcb8dee79c5f

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chess_pyspec-1.0.5-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for chess_pyspec-1.0.5-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6d0c6d6ab7d036d88e7317e617ab4acbf94656efc0ab70ba471a3b806156ae1b
MD5 90df3c5df453a53dfe1fcb7d302dce9c
BLAKE2b-256 1645c684cadc3fba9eeb7eb39e8778d4dbb0e7624fe277e88fe7ba41ed05edad

See more details on using hashes here.

Provenance

The following attestation bundles were made for chess_pyspec-1.0.5-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: publish.yml on Verdant-Evolution/chess-pyspec

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.0.6

41 files

This release

1.0.5 This release

41 files

1.0.4

41 files

1.0.3

41 files

1.0.2

41 files

1.0.1

41 files

1.0.0

17 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