Skip to content

Commit

Permalink
Coincurve library experiments (#373)
Browse files Browse the repository at this point in the history
Co-authored-by: Igor Sereda <sereda.igor.s@gmail.com>
  • Loading branch information
droserasprout and igorsereda authored Jul 12, 2024
1 parent f2c8e85 commit 81264c7
Show file tree
Hide file tree
Showing 12 changed files with 332 additions and 319 deletions.
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@ all: ## Run a whole CI pipeline: lint, run tests, build docs

install-deps: ## Install binary dependencies
ifneq (,$(findstring linux-gnu,$(OSTYPE)))
sudo apt install libsodium-dev libsecp256k1-dev libgmp-dev pkg-config
sudo apt install libsodium-dev libgmp-dev pkg-config
else ifneq (,$(findstring darwin,$(OSTYPE)))
brew tap cuber/homebrew-libsecp256k1
brew install libsodium libsecp256k1 gmp pkg-config
brew install libsodium gmp pkg-config
else
echo "Unsupported platform $(OSTYPE)"
exit 1
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,13 +54,13 @@ You also need to install cryptographic packages before installing the library/bu
#### Ubuntu, Debian and other apt-based distributions

```shell
$ sudo apt install libsodium-dev libsecp256k1-dev libgmp-dev pkg-config
$ sudo apt install libsodium-dev libgmp-dev pkg-config
```

#### Arch Linux

```shell
$ sudo pacman -Syu --needed libsodium libsecp256k1 gmp
$ sudo pacman -Syu --needed libsodium gmp
```

### MacOS
Expand All @@ -69,7 +69,7 @@ $ sudo pacman -Syu --needed libsodium libsecp256k1 gmp

```shell
$ brew tap cuber/homebrew-libsecp256k1
$ brew install libsodium libsecp256k1 gmp pkg-config
$ brew install libsodium gmp pkg-config
```

#### M1 (ARM)
Expand Down Expand Up @@ -107,7 +107,7 @@ $ pip install pytezos
### [Google Colab](https://colab.research.google.com)

`````python
>>> !apt install libsodium-dev libsecp256k1-dev libgmp-dev
>>> !apt install libsodium-dev libgmp-dev
>>> !pip install pytezos
`````

Expand All @@ -129,7 +129,7 @@ $ docker-compose up -d notebook
Requirements:

* Python 3.8 to 3.12
* libsodium, libsecp256k1, gmp
* libsodium, coincurve, gmp
* make

```shell
Expand Down
4 changes: 2 additions & 2 deletions binder/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ ARG NB_UID=1000
USER root

RUN apt update && \
apt install -y build-essential pkg-config libsodium-dev libsecp256k1-dev libgmp-dev && \
apt install -y build-essential pkg-config libsodium-dev libgmp-dev && \
rm -rf /var/lib/apt/lists/*

COPY . /tmp/pytezos
Expand All @@ -28,4 +28,4 @@ WORKDIR ${HOME}
USER ${USER}

EXPOSE 8888
ENTRYPOINT []
ENTRYPOINT []
6 changes: 3 additions & 3 deletions docs/source/quick_start.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ Use apt or your favourite package manager:

.. code-block::
$ sudo apt install libsodium-dev libsecp256k1-dev libgmp-dev
$ sudo apt install libsodium-dev libgmp-dev
*MacOS*

Expand All @@ -31,7 +31,7 @@ Use homebrew:
.. code-block::
$ brew tap cuber/homebrew-libsecp256k1
$ brew install libsodium libsecp256k1 gmp
$ brew install libsodium gmp
*Windows*

Expand All @@ -58,7 +58,7 @@ In Google Colab notebook:

.. code-block:: python
>>> !apt install libsodium-dev libsecp256k1-dev libgmp-dev
>>> !apt install libsodium-dev libgmp-dev
>>> !pip install pytezos
[RESTART RUNTIME]
Expand Down
14 changes: 2 additions & 12 deletions michelson-kernel.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,7 @@ RUN apk add --update --no-cache \
python3-dev \
libffi-dev \
gmp-dev \
libsodium-dev \
libsecp256k1-dev

RUN mkdir /tmp/secp256k1 \
&& cd /tmp \
&& wget https://github.com/bitcoin-core/secp256k1/archive/refs/tags/v0.2.0.tar.gz -O /tmp/secp256k1.tar.gz \
&& tar -xzf /tmp/secp256k1.tar.gz -C /tmp/secp256k1 --strip-components=1 \
&& cd /tmp/secp256k1 \
&& ./autogen.sh \
&& ./configure
libsodium-dev

RUN python -m venv --without-pip --system-site-packages /opt/pytezos \
&& mkdir -p /opt/pytezos/src/pytezos/ \
Expand All @@ -35,8 +26,7 @@ FROM python:3.12-alpine3.17 AS build-image
RUN apk add --update --no-cache \
binutils \
gmp-dev \
libsodium-dev \
libsecp256k1-dev
libsodium-dev

RUN adduser -D pytezos
USER pytezos
Expand Down
513 changes: 270 additions & 243 deletions poetry.lock

Large diffs are not rendered by default.

3 changes: 1 addition & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ attrs = ">=21.4.0"
base58 = ">=2.1.1"
cattrs = ">=22.1.0"
click = ">=8.1.3"
coincurve = ">=20.0.0"
cryptography = ">=42.0.4"
deprecation = ">=2.1.0"
docker = ">=6.0.0"
Expand All @@ -58,13 +59,11 @@ py-ecc = ">=7.0.0"
pysodium = ">=0.7.10"
python-dateutil = ">=2.8.2"
requests = ">=2.28.2"
secp256k1 = ">=0.14.0"
simplejson = ">=3.17.6"
strict-rfc3339 = ">=0.7"
tabulate = ">=0.9.0"
testcontainers = ">=3.7.0"
tqdm = ">=4.62.3"
setuptools = ">=70.1.0"
simple-bson = ">=0.0.3"

[tool.poetry.dev-dependencies]
Expand Down
16 changes: 3 additions & 13 deletions pytezos.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,7 @@ RUN apk add --update --no-cache \
python3-dev \
libffi-dev \
gmp-dev \
libsodium-dev \
libsecp256k1-dev

RUN mkdir /tmp/secp256k1 \
&& cd /tmp \
&& wget https://github.com/bitcoin-core/secp256k1/archive/refs/tags/v0.2.0.tar.gz -O /tmp/secp256k1.tar.gz \
&& tar -xzf /tmp/secp256k1.tar.gz -C /tmp/secp256k1 --strip-components=1 \
&& cd /tmp/secp256k1 \
&& ./autogen.sh \
&& ./configure
libsodium-dev

RUN python -m venv --without-pip --system-site-packages /opt/pytezos \
&& mkdir -p /opt/pytezos/src/pytezos/ \
Expand All @@ -35,8 +26,7 @@ FROM python:3.12-alpine3.17 AS build-image
RUN apk add --update --no-cache \
binutils \
gmp-dev \
libsodium-dev \
libsecp256k1-dev
libsodium-dev

RUN adduser -D pytezos
USER pytezos
Expand All @@ -46,4 +36,4 @@ WORKDIR /home/pytezos/
ENTRYPOINT ["python"]

COPY --chown=pytezos --from=compile-image /opt/pytezos /opt/pytezos
COPY --chown=pytezos . /opt/pytezos
COPY --chown=pytezos . /opt/pytezos
24 changes: 12 additions & 12 deletions requirements.dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ appnope==0.1.4 ; python_full_version >= "3.8.1" and python_version < "3.13" and
argon2-cffi-bindings==21.2.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
argon2-cffi==23.1.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
arrow==1.3.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
asn1crypto==1.5.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
asttokens==2.4.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
attrs==23.2.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
babel==2.15.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand All @@ -14,14 +15,15 @@ black==24.4.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
bleach==6.1.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
cached-property==1.5.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
cattrs==23.2.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
certifi==2024.6.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
certifi==2024.7.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
cffi==1.16.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
chardet==5.2.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
charset-normalizer==3.3.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
click==8.1.7 ; python_full_version >= "3.8.1" and python_version < "3.13"
coincurve==20.0.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
colorama==0.4.6 ; python_full_version >= "3.8.1" and python_version < "3.13" and (platform_system == "Windows" or sys_platform == "win32")
comm==0.2.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
coverage[toml]==7.5.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
coverage[toml]==7.6.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
cryptography==42.0.8 ; python_full_version >= "3.8.1" and python_version < "3.13"
cytoolz==0.12.3 ; python_full_version >= "3.8.1" and python_version < "3.13" and implementation_name == "cpython"
debugpy==1.8.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand All @@ -33,7 +35,7 @@ docker==7.1.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
docutils==0.20.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
entrypoints==0.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-hash==0.7.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-typing==4.3.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-typing==4.4.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-utils==4.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
exceptiongroup==1.2.1 ; python_full_version >= "3.8.1" and python_version < "3.11"
execnet==2.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand All @@ -46,7 +48,7 @@ imagesize==1.4.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
importlib-metadata==8.0.0 ; python_full_version >= "3.8.1" and python_version < "3.10"
importlib-resources==6.4.0 ; python_full_version >= "3.8.1" and python_version < "3.9"
iniconfig==2.0.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
ipykernel==6.29.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
ipykernel==6.29.5 ; python_full_version >= "3.8.1" and python_version < "3.13"
ipython-genutils==0.2.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
ipython==8.12.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
isoduration==20.11.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand All @@ -55,8 +57,8 @@ jedi==0.19.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
jinja2==3.1.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonpointer==3.0.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema-specifications==2023.12.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema==4.22.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema[format-nongpl]==4.22.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema==4.23.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema[format-nongpl]==4.23.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jupyter-client==7.4.9 ; python_full_version >= "3.8.1" and python_version < "3.13"
jupyter-core==5.7.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
jupyter-events==0.10.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand Down Expand Up @@ -112,11 +114,9 @@ referencing==0.35.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
requests==2.32.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
rfc3339-validator==0.1.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
rfc3986-validator==0.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
rpds-py==0.18.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
ruff==0.5.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
secp256k1==0.14.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
rpds-py==0.19.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
ruff==0.5.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
send2trash==1.8.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
setuptools==70.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
simple-bson==0.0.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
simplejson==3.19.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
six==1.16.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand Down Expand Up @@ -148,8 +148,8 @@ tqdm==4.66.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
traitlets==5.14.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
types-python-dateutil==2.9.0.20240316 ; python_full_version >= "3.8.1" and python_version < "3.13"
types-pyyaml==6.0.12.20240311 ; python_full_version >= "3.8.1" and python_version < "3.13"
types-requests==2.32.0.20240622 ; python_full_version >= "3.8.1" and python_version < "3.13"
types-setuptools==70.1.0.20240627 ; python_full_version >= "3.8.1" and python_version < "3.13"
types-requests==2.32.0.20240712 ; python_full_version >= "3.8.1" and python_version < "3.13"
types-setuptools==70.3.0.20240710 ; python_full_version >= "3.8.1" and python_version < "3.13"
types-simplejson==3.19.0.20240310 ; python_full_version >= "3.8.1" and python_version < "3.13"
types-tabulate==0.9.0.20240106 ; python_full_version >= "3.8.1" and python_version < "3.13"
typing-extensions==4.12.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand Down
12 changes: 6 additions & 6 deletions requirements.slim.txt
Original file line number Diff line number Diff line change
@@ -1,25 +1,27 @@
asn1crypto==1.5.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
attrs==23.2.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
base58==2.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
cached-property==1.5.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
cattrs==23.2.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
certifi==2024.6.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
certifi==2024.7.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
cffi==1.16.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
charset-normalizer==3.3.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
click==8.1.7 ; python_full_version >= "3.8.1" and python_version < "3.13"
coincurve==20.0.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
colorama==0.4.6 ; python_full_version >= "3.8.1" and python_version < "3.13" and platform_system == "Windows"
cryptography==42.0.8 ; python_full_version >= "3.8.1" and python_version < "3.13"
cytoolz==0.12.3 ; python_full_version >= "3.8.1" and python_version < "3.13" and implementation_name == "cpython"
deprecation==2.1.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
docker==7.1.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-hash==0.7.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-typing==4.3.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-typing==4.4.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-utils==4.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
exceptiongroup==1.2.1 ; python_full_version >= "3.8.1" and python_version < "3.11"
fastecdsa==2.3.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
idna==3.7 ; python_full_version >= "3.8.1" and python_version < "3.13"
importlib-resources==6.4.0 ; python_full_version >= "3.8.1" and python_version < "3.9"
jsonschema-specifications==2023.12.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema==4.22.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema==4.23.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
mnemonic==0.21 ; python_full_version >= "3.8.1" and python_version < "3.13"
netstruct==1.1.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
packaging==24.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand All @@ -32,9 +34,7 @@ python-dateutil==2.9.0.post0 ; python_full_version >= "3.8.1" and python_version
pywin32==306 ; python_full_version >= "3.8.1" and python_version < "3.13" and sys_platform == "win32"
referencing==0.35.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
requests==2.32.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
rpds-py==0.18.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
secp256k1==0.14.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
setuptools==70.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
rpds-py==0.19.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
simple-bson==0.0.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
simplejson==3.19.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
six==1.16.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand Down
16 changes: 8 additions & 8 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ appnope==0.1.4 ; python_full_version >= "3.8.1" and python_version < "3.13" and
argon2-cffi-bindings==21.2.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
argon2-cffi==23.1.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
arrow==1.3.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
asn1crypto==1.5.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
asttokens==2.4.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
attrs==23.2.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
backcall==0.2.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand All @@ -11,10 +12,11 @@ beautifulsoup4==4.12.3 ; python_full_version >= "3.8.1" and python_version < "3.
bleach==6.1.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
cached-property==1.5.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
cattrs==23.2.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
certifi==2024.6.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
certifi==2024.7.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
cffi==1.16.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
charset-normalizer==3.3.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
click==8.1.7 ; python_full_version >= "3.8.1" and python_version < "3.13"
coincurve==20.0.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
colorama==0.4.6 ; python_full_version >= "3.8.1" and python_version < "3.13" and (platform_system == "Windows" or sys_platform == "win32")
comm==0.2.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
cryptography==42.0.8 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand All @@ -26,7 +28,7 @@ deprecation==2.1.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
docker==7.1.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
entrypoints==0.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-hash==0.7.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-typing==4.3.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-typing==4.4.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
eth-utils==4.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
exceptiongroup==1.2.1 ; python_full_version >= "3.8.1" and python_version < "3.11"
executing==2.0.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand All @@ -36,16 +38,16 @@ fqdn==1.5.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
idna==3.7 ; python_full_version >= "3.8.1" and python_version < "3.13"
importlib-metadata==8.0.0 ; python_full_version >= "3.8.1" and python_version < "3.10"
importlib-resources==6.4.0 ; python_full_version >= "3.8.1" and python_version < "3.9"
ipykernel==6.29.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
ipykernel==6.29.5 ; python_full_version >= "3.8.1" and python_version < "3.13"
ipython-genutils==0.2.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
ipython==8.12.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
isoduration==20.11.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jedi==0.19.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
jinja2==3.1.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonpointer==3.0.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema-specifications==2023.12.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema==4.22.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema[format-nongpl]==4.22.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema==4.23.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jsonschema[format-nongpl]==4.23.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
jupyter-client==7.4.9 ; python_full_version >= "3.8.1" and python_version < "3.13"
jupyter-core==5.7.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
jupyter-events==0.10.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand Down Expand Up @@ -92,10 +94,8 @@ referencing==0.35.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
requests==2.32.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
rfc3339-validator==0.1.4 ; python_full_version >= "3.8.1" and python_version < "3.13"
rfc3986-validator==0.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
rpds-py==0.18.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
secp256k1==0.14.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
rpds-py==0.19.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
send2trash==1.8.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
setuptools==70.1.1 ; python_full_version >= "3.8.1" and python_version < "3.13"
simple-bson==0.0.3 ; python_full_version >= "3.8.1" and python_version < "3.13"
simplejson==3.19.2 ; python_full_version >= "3.8.1" and python_version < "3.13"
six==1.16.0 ; python_full_version >= "3.8.1" and python_version < "3.13"
Expand Down
Loading

0 comments on commit 81264c7

Please sign in to comment.