├── .github └── workflows │ └── CI.yml ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── README.md ├── flake.lock ├── flake.nix ├── pyproject.toml ├── src └── lib.rs └── test.py /.github/workflows/CI.yml: -------------------------------------------------------------------------------- 1 | # This file is autogenerated by maturin v1.4.0 2 | # To update, run 3 | # 4 | # maturin generate-ci github 5 | # 6 | # Note that some of the platforms that are included by default aren't supported for the Holochain dependencies we're pulling in. Those have been 7 | # commented out and will need to be removed again if you use the automated update mechanism. 8 | name: CI 9 | 10 | on: 11 | push: 12 | branches: 13 | - main 14 | - master 15 | tags: 16 | - '*' 17 | pull_request: 18 | workflow_dispatch: 19 | 20 | permissions: 21 | contents: read 22 | 23 | jobs: 24 | linux: 25 | runs-on: ubuntu-latest 26 | strategy: 27 | fail-fast: false 28 | matrix: 29 | target: [x86_64, x86, aarch64, armv7] # Not supported: s390x, ppc64le, 30 | steps: 31 | - uses: actions/checkout@v3 32 | - uses: actions/setup-python@v4 33 | with: 34 | python-version: '3.10' 35 | - name: Build wheels 36 | uses: PyO3/maturin-action@v1 37 | with: 38 | target: ${{ matrix.target }} 39 | args: --release --out dist --find-interpreter 40 | sccache: 'true' 41 | manylinux: auto 42 | - name: Upload wheels 43 | uses: actions/upload-artifact@v3 44 | with: 45 | name: wheels 46 | path: dist 47 | 48 | # Not supported 49 | # windows: 50 | # runs-on: windows-latest 51 | # strategy: 52 | # matrix: 53 | # target: [x64, x86] 54 | # steps: 55 | # - uses: actions/checkout@v3 56 | # - uses: actions/setup-python@v4 57 | # with: 58 | # python-version: '3.10' 59 | # architecture: ${{ matrix.target }} 60 | # - name: Build wheels 61 | # uses: PyO3/maturin-action@v1 62 | # with: 63 | # target: ${{ matrix.target }} 64 | # args: --release --out dist --find-interpreter 65 | # sccache: 'true' 66 | # - name: Upload wheels 67 | # uses: actions/upload-artifact@v3 68 | # with: 69 | # name: wheels 70 | # path: dist 71 | 72 | macos: 73 | runs-on: macos-latest 74 | strategy: 75 | matrix: 76 | target: [x86_64, aarch64] 77 | steps: 78 | - uses: actions/checkout@v3 79 | - uses: actions/setup-python@v4 80 | with: 81 | python-version: '3.10' 82 | - name: Build wheels 83 | uses: PyO3/maturin-action@v1 84 | with: 85 | target: ${{ matrix.target }} 86 | args: --release --out dist --find-interpreter 87 | sccache: 'true' 88 | - name: Upload wheels 89 | uses: actions/upload-artifact@v3 90 | with: 91 | name: wheels 92 | path: dist 93 | 94 | sdist: 95 | runs-on: ubuntu-latest 96 | steps: 97 | - uses: actions/checkout@v3 98 | - name: Build sdist 99 | uses: PyO3/maturin-action@v1 100 | with: 101 | command: sdist 102 | args: --out dist 103 | - name: Upload sdist 104 | uses: actions/upload-artifact@v3 105 | with: 106 | name: wheels 107 | path: dist 108 | 109 | release: 110 | name: Release 111 | runs-on: ubuntu-latest 112 | if: "startsWith(github.ref, 'refs/tags/')" 113 | needs: [linux, macos, sdist] # Not supported: windows 114 | steps: 115 | - uses: actions/download-artifact@v3 116 | with: 117 | name: wheels 118 | - name: Publish to PyPI 119 | uses: PyO3/maturin-action@v1 120 | env: 121 | MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_API_TOKEN }} 122 | with: 123 | command: upload 124 | args: --non-interactive --skip-existing * 125 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.cargo 2 | /target 3 | 4 | # Byte-compiled / optimized / DLL files 5 | __pycache__/ 6 | *.py[cod] 7 | *$py.class 8 | 9 | # C extensions 10 | *.so 11 | 12 | # Distribution / packaging 13 | .Python 14 | build/ 15 | develop-eggs/ 16 | dist/ 17 | downloads/ 18 | eggs/ 19 | .eggs/ 20 | lib/ 21 | lib64/ 22 | parts/ 23 | sdist/ 24 | var/ 25 | wheels/ 26 | share/python-wheels/ 27 | *.egg-info/ 28 | .installed.cfg 29 | *.egg 30 | MANIFEST 31 | 32 | # PyInstaller 33 | # Usually these files are written by a python script from a template 34 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 35 | *.manifest 36 | *.spec 37 | 38 | # Installer logs 39 | pip-log.txt 40 | pip-delete-this-directory.txt 41 | 42 | # Unit test / coverage reports 43 | htmlcov/ 44 | .tox/ 45 | .nox/ 46 | .coverage 47 | .coverage.* 48 | .cache 49 | nosetests.xml 50 | coverage.xml 51 | *.cover 52 | *.py,cover 53 | .hypothesis/ 54 | .pytest_cache/ 55 | cover/ 56 | 57 | # Translations 58 | *.mo 59 | *.pot 60 | 61 | # Django stuff: 62 | *.log 63 | local_settings.py 64 | db.sqlite3 65 | db.sqlite3-journal 66 | 67 | # Flask stuff: 68 | instance/ 69 | .webassets-cache 70 | 71 | # Scrapy stuff: 72 | .scrapy 73 | 74 | # Sphinx documentation 75 | docs/_build/ 76 | 77 | # PyBuilder 78 | .pybuilder/ 79 | target/ 80 | 81 | # Jupyter Notebook 82 | .ipynb_checkpoints 83 | 84 | # IPython 85 | profile_default/ 86 | ipython_config.py 87 | 88 | # pyenv 89 | # For a library or package, you might want to ignore these files since the code is 90 | # intended to run in multiple environments; otherwise, check them in: 91 | # .python-version 92 | 93 | # pipenv 94 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 95 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 96 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 97 | # install all needed dependencies. 98 | #Pipfile.lock 99 | 100 | # poetry 101 | # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. 102 | # This is especially recommended for binary packages to ensure reproducibility, and is more 103 | # commonly ignored for libraries. 104 | # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control 105 | #poetry.lock 106 | 107 | # pdm 108 | # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. 109 | #pdm.lock 110 | # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it 111 | # in version control. 112 | # https://pdm.fming.dev/#use-with-ide 113 | .pdm.toml 114 | 115 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm 116 | __pypackages__/ 117 | 118 | # Celery stuff 119 | celerybeat-schedule 120 | celerybeat.pid 121 | 122 | # SageMath parsed files 123 | *.sage.py 124 | 125 | # Environments 126 | .env 127 | .venv 128 | env/ 129 | venv/ 130 | ENV/ 131 | env.bak/ 132 | venv.bak/ 133 | 134 | # Spyder project settings 135 | .spyderproject 136 | .spyproject 137 | 138 | # Rope project settings 139 | .ropeproject 140 | 141 | # mkdocs documentation 142 | /site 143 | 144 | # mypy 145 | .mypy_cache/ 146 | .dmypy.json 147 | dmypy.json 148 | 149 | # Pyre type checker 150 | .pyre/ 151 | 152 | # pytype static type analyzer 153 | .pytype/ 154 | 155 | # Cython debug symbols 156 | cython_debug/ 157 | 158 | # PyCharm 159 | # JetBrains specific template is maintained in a separate JetBrains.gitignore that can 160 | # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore 161 | # and can be added to the global gitignore or merged into this file. For a more nuclear 162 | # option (not recommended) you can uncomment the following to ignore the entire idea folder. 163 | #.idea/ 164 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "addr2line" 7 | version = "0.21.0" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" 10 | dependencies = [ 11 | "gimli 0.28.1", 12 | ] 13 | 14 | [[package]] 15 | name = "adler" 16 | version = "1.0.2" 17 | source = "registry+https://github.com/rust-lang/crates.io-index" 18 | checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 19 | 20 | [[package]] 21 | name = "ahash" 22 | version = "0.7.7" 23 | source = "registry+https://github.com/rust-lang/crates.io-index" 24 | checksum = "5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd" 25 | dependencies = [ 26 | "getrandom 0.2.12", 27 | "once_cell", 28 | "version_check", 29 | ] 30 | 31 | [[package]] 32 | name = "ahash" 33 | version = "0.8.7" 34 | source = "registry+https://github.com/rust-lang/crates.io-index" 35 | checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01" 36 | dependencies = [ 37 | "cfg-if 1.0.0", 38 | "once_cell", 39 | "version_check", 40 | "zerocopy", 41 | ] 42 | 43 | [[package]] 44 | name = "aho-corasick" 45 | version = "1.1.2" 46 | source = "registry+https://github.com/rust-lang/crates.io-index" 47 | checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" 48 | dependencies = [ 49 | "memchr", 50 | ] 51 | 52 | [[package]] 53 | name = "allocator-api2" 54 | version = "0.2.16" 55 | source = "registry+https://github.com/rust-lang/crates.io-index" 56 | checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" 57 | 58 | [[package]] 59 | name = "android-tzdata" 60 | version = "0.1.1" 61 | source = "registry+https://github.com/rust-lang/crates.io-index" 62 | checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" 63 | 64 | [[package]] 65 | name = "android_system_properties" 66 | version = "0.1.5" 67 | source = "registry+https://github.com/rust-lang/crates.io-index" 68 | checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" 69 | dependencies = [ 70 | "libc", 71 | ] 72 | 73 | [[package]] 74 | name = "approx" 75 | version = "0.5.1" 76 | source = "registry+https://github.com/rust-lang/crates.io-index" 77 | checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" 78 | dependencies = [ 79 | "num-traits", 80 | ] 81 | 82 | [[package]] 83 | name = "arbitrary" 84 | version = "1.3.2" 85 | source = "registry+https://github.com/rust-lang/crates.io-index" 86 | checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110" 87 | dependencies = [ 88 | "derive_arbitrary", 89 | ] 90 | 91 | [[package]] 92 | name = "arrayref" 93 | version = "0.3.7" 94 | source = "registry+https://github.com/rust-lang/crates.io-index" 95 | checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" 96 | 97 | [[package]] 98 | name = "arrayvec" 99 | version = "0.5.2" 100 | source = "registry+https://github.com/rust-lang/crates.io-index" 101 | checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" 102 | 103 | [[package]] 104 | name = "arrayvec" 105 | version = "0.7.4" 106 | source = "registry+https://github.com/rust-lang/crates.io-index" 107 | checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" 108 | 109 | [[package]] 110 | name = "autocfg" 111 | version = "0.1.8" 112 | source = "registry+https://github.com/rust-lang/crates.io-index" 113 | checksum = "0dde43e75fd43e8a1bf86103336bc699aa8d17ad1be60c76c0bdfd4828e19b78" 114 | dependencies = [ 115 | "autocfg 1.1.0", 116 | ] 117 | 118 | [[package]] 119 | name = "autocfg" 120 | version = "1.1.0" 121 | source = "registry+https://github.com/rust-lang/crates.io-index" 122 | checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" 123 | 124 | [[package]] 125 | name = "backtrace" 126 | version = "0.3.69" 127 | source = "registry+https://github.com/rust-lang/crates.io-index" 128 | checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" 129 | dependencies = [ 130 | "addr2line", 131 | "cc", 132 | "cfg-if 1.0.0", 133 | "libc", 134 | "miniz_oxide", 135 | "object", 136 | "rustc-demangle", 137 | ] 138 | 139 | [[package]] 140 | name = "base64" 141 | version = "0.13.1" 142 | source = "registry+https://github.com/rust-lang/crates.io-index" 143 | checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" 144 | 145 | [[package]] 146 | name = "bincode" 147 | version = "1.3.3" 148 | source = "registry+https://github.com/rust-lang/crates.io-index" 149 | checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" 150 | dependencies = [ 151 | "serde", 152 | ] 153 | 154 | [[package]] 155 | name = "bit-set" 156 | version = "0.5.3" 157 | source = "registry+https://github.com/rust-lang/crates.io-index" 158 | checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" 159 | dependencies = [ 160 | "bit-vec", 161 | ] 162 | 163 | [[package]] 164 | name = "bit-vec" 165 | version = "0.6.3" 166 | source = "registry+https://github.com/rust-lang/crates.io-index" 167 | checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" 168 | 169 | [[package]] 170 | name = "bitflags" 171 | version = "1.3.2" 172 | source = "registry+https://github.com/rust-lang/crates.io-index" 173 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 174 | 175 | [[package]] 176 | name = "bitflags" 177 | version = "2.4.2" 178 | source = "registry+https://github.com/rust-lang/crates.io-index" 179 | checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" 180 | 181 | [[package]] 182 | name = "bitvec" 183 | version = "1.0.1" 184 | source = "registry+https://github.com/rust-lang/crates.io-index" 185 | checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" 186 | dependencies = [ 187 | "funty", 188 | "radium", 189 | "tap", 190 | "wyz", 191 | ] 192 | 193 | [[package]] 194 | name = "blake2b_simd" 195 | version = "0.5.11" 196 | source = "registry+https://github.com/rust-lang/crates.io-index" 197 | checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587" 198 | dependencies = [ 199 | "arrayref", 200 | "arrayvec 0.5.2", 201 | "constant_time_eq", 202 | ] 203 | 204 | [[package]] 205 | name = "block-buffer" 206 | version = "0.10.4" 207 | source = "registry+https://github.com/rust-lang/crates.io-index" 208 | checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" 209 | dependencies = [ 210 | "generic-array", 211 | ] 212 | 213 | [[package]] 214 | name = "bumpalo" 215 | version = "3.14.0" 216 | source = "registry+https://github.com/rust-lang/crates.io-index" 217 | checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" 218 | 219 | [[package]] 220 | name = "bytecheck" 221 | version = "0.6.12" 222 | source = "registry+https://github.com/rust-lang/crates.io-index" 223 | checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" 224 | dependencies = [ 225 | "bytecheck_derive", 226 | "ptr_meta", 227 | "simdutf8", 228 | ] 229 | 230 | [[package]] 231 | name = "bytecheck_derive" 232 | version = "0.6.12" 233 | source = "registry+https://github.com/rust-lang/crates.io-index" 234 | checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" 235 | dependencies = [ 236 | "proc-macro2", 237 | "quote", 238 | "syn 1.0.109", 239 | ] 240 | 241 | [[package]] 242 | name = "byteorder" 243 | version = "1.5.0" 244 | source = "registry+https://github.com/rust-lang/crates.io-index" 245 | checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" 246 | 247 | [[package]] 248 | name = "bytes" 249 | version = "1.5.0" 250 | source = "registry+https://github.com/rust-lang/crates.io-index" 251 | checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" 252 | 253 | [[package]] 254 | name = "camino" 255 | version = "1.1.6" 256 | source = "registry+https://github.com/rust-lang/crates.io-index" 257 | checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" 258 | dependencies = [ 259 | "serde", 260 | ] 261 | 262 | [[package]] 263 | name = "cargo-platform" 264 | version = "0.1.3" 265 | source = "registry+https://github.com/rust-lang/crates.io-index" 266 | checksum = "2cfa25e60aea747ec7e1124f238816749faa93759c6ff5b31f1ccdda137f4479" 267 | dependencies = [ 268 | "serde", 269 | ] 270 | 271 | [[package]] 272 | name = "cargo_metadata" 273 | version = "0.15.4" 274 | source = "registry+https://github.com/rust-lang/crates.io-index" 275 | checksum = "eee4243f1f26fc7a42710e7439c149e2b10b05472f88090acce52632f231a73a" 276 | dependencies = [ 277 | "camino", 278 | "cargo-platform", 279 | "semver 1.0.20", 280 | "serde", 281 | "serde_json", 282 | "thiserror", 283 | ] 284 | 285 | [[package]] 286 | name = "cc" 287 | version = "1.0.83" 288 | source = "registry+https://github.com/rust-lang/crates.io-index" 289 | checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" 290 | dependencies = [ 291 | "libc", 292 | ] 293 | 294 | [[package]] 295 | name = "cfg-if" 296 | version = "0.1.10" 297 | source = "registry+https://github.com/rust-lang/crates.io-index" 298 | checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" 299 | 300 | [[package]] 301 | name = "cfg-if" 302 | version = "1.0.0" 303 | source = "registry+https://github.com/rust-lang/crates.io-index" 304 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 305 | 306 | [[package]] 307 | name = "chrono" 308 | version = "0.4.33" 309 | source = "registry+https://github.com/rust-lang/crates.io-index" 310 | checksum = "9f13690e35a5e4ace198e7beea2895d29f3a9cc55015fcebe6336bd2010af9eb" 311 | dependencies = [ 312 | "android-tzdata", 313 | "iana-time-zone", 314 | "num-traits", 315 | "serde", 316 | "windows-targets 0.52.0", 317 | ] 318 | 319 | [[package]] 320 | name = "cloudabi" 321 | version = "0.0.3" 322 | source = "registry+https://github.com/rust-lang/crates.io-index" 323 | checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" 324 | dependencies = [ 325 | "bitflags 1.3.2", 326 | ] 327 | 328 | [[package]] 329 | name = "colored" 330 | version = "1.9.4" 331 | source = "registry+https://github.com/rust-lang/crates.io-index" 332 | checksum = "5a5f741c91823341bebf717d4c71bda820630ce065443b58bd1b7451af008355" 333 | dependencies = [ 334 | "is-terminal", 335 | "lazy_static", 336 | "winapi", 337 | ] 338 | 339 | [[package]] 340 | name = "constant_time_eq" 341 | version = "0.1.5" 342 | source = "registry+https://github.com/rust-lang/crates.io-index" 343 | checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" 344 | 345 | [[package]] 346 | name = "contrafact" 347 | version = "0.2.0-rc.1" 348 | source = "registry+https://github.com/rust-lang/crates.io-index" 349 | checksum = "65bfae7a2ef93841d7e9e5ef69e387b26e70f7b156434b6b95714006cc00e1f9" 350 | dependencies = [ 351 | "arbitrary", 352 | "derive_more", 353 | "either", 354 | "itertools 0.10.5", 355 | "num", 356 | "once_cell", 357 | "rand 0.7.3", 358 | "tracing", 359 | ] 360 | 361 | [[package]] 362 | name = "convert_case" 363 | version = "0.4.0" 364 | source = "registry+https://github.com/rust-lang/crates.io-index" 365 | checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" 366 | 367 | [[package]] 368 | name = "core-foundation-sys" 369 | version = "0.8.6" 370 | source = "registry+https://github.com/rust-lang/crates.io-index" 371 | checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" 372 | 373 | [[package]] 374 | name = "corosensei" 375 | version = "0.1.4" 376 | source = "registry+https://github.com/rust-lang/crates.io-index" 377 | checksum = "80128832c58ea9cbd041d2a759ec449224487b2c1e400453d99d244eead87a8e" 378 | dependencies = [ 379 | "autocfg 1.1.0", 380 | "cfg-if 1.0.0", 381 | "libc", 382 | "scopeguard", 383 | "windows-sys 0.33.0", 384 | ] 385 | 386 | [[package]] 387 | name = "cpufeatures" 388 | version = "0.2.12" 389 | source = "registry+https://github.com/rust-lang/crates.io-index" 390 | checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" 391 | dependencies = [ 392 | "libc", 393 | ] 394 | 395 | [[package]] 396 | name = "cranelift-bforest" 397 | version = "0.91.1" 398 | source = "registry+https://github.com/rust-lang/crates.io-index" 399 | checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" 400 | dependencies = [ 401 | "cranelift-entity", 402 | ] 403 | 404 | [[package]] 405 | name = "cranelift-codegen" 406 | version = "0.91.1" 407 | source = "registry+https://github.com/rust-lang/crates.io-index" 408 | checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" 409 | dependencies = [ 410 | "arrayvec 0.7.4", 411 | "bumpalo", 412 | "cranelift-bforest", 413 | "cranelift-codegen-meta", 414 | "cranelift-codegen-shared", 415 | "cranelift-egraph", 416 | "cranelift-entity", 417 | "cranelift-isle", 418 | "gimli 0.26.2", 419 | "log", 420 | "regalloc2", 421 | "smallvec", 422 | "target-lexicon", 423 | ] 424 | 425 | [[package]] 426 | name = "cranelift-codegen-meta" 427 | version = "0.91.1" 428 | source = "registry+https://github.com/rust-lang/crates.io-index" 429 | checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" 430 | dependencies = [ 431 | "cranelift-codegen-shared", 432 | ] 433 | 434 | [[package]] 435 | name = "cranelift-codegen-shared" 436 | version = "0.91.1" 437 | source = "registry+https://github.com/rust-lang/crates.io-index" 438 | checksum = "278e52e29c53fcf32431ef08406c295699a70306d05a0715c5b1bf50e33a9ab7" 439 | 440 | [[package]] 441 | name = "cranelift-egraph" 442 | version = "0.91.1" 443 | source = "registry+https://github.com/rust-lang/crates.io-index" 444 | checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" 445 | dependencies = [ 446 | "cranelift-entity", 447 | "fxhash", 448 | "hashbrown 0.12.3", 449 | "indexmap 1.9.3", 450 | "log", 451 | "smallvec", 452 | ] 453 | 454 | [[package]] 455 | name = "cranelift-entity" 456 | version = "0.91.1" 457 | source = "registry+https://github.com/rust-lang/crates.io-index" 458 | checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" 459 | 460 | [[package]] 461 | name = "cranelift-frontend" 462 | version = "0.91.1" 463 | source = "registry+https://github.com/rust-lang/crates.io-index" 464 | checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" 465 | dependencies = [ 466 | "cranelift-codegen", 467 | "log", 468 | "smallvec", 469 | "target-lexicon", 470 | ] 471 | 472 | [[package]] 473 | name = "cranelift-isle" 474 | version = "0.91.1" 475 | source = "registry+https://github.com/rust-lang/crates.io-index" 476 | checksum = "393bc73c451830ff8dbb3a07f61843d6cb41a084f9996319917c0b291ed785bb" 477 | 478 | [[package]] 479 | name = "crossbeam-deque" 480 | version = "0.8.5" 481 | source = "registry+https://github.com/rust-lang/crates.io-index" 482 | checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" 483 | dependencies = [ 484 | "crossbeam-epoch", 485 | "crossbeam-utils", 486 | ] 487 | 488 | [[package]] 489 | name = "crossbeam-epoch" 490 | version = "0.9.18" 491 | source = "registry+https://github.com/rust-lang/crates.io-index" 492 | checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" 493 | dependencies = [ 494 | "crossbeam-utils", 495 | ] 496 | 497 | [[package]] 498 | name = "crossbeam-queue" 499 | version = "0.3.11" 500 | source = "registry+https://github.com/rust-lang/crates.io-index" 501 | checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35" 502 | dependencies = [ 503 | "crossbeam-utils", 504 | ] 505 | 506 | [[package]] 507 | name = "crossbeam-utils" 508 | version = "0.8.19" 509 | source = "registry+https://github.com/rust-lang/crates.io-index" 510 | checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" 511 | 512 | [[package]] 513 | name = "crypto-common" 514 | version = "0.1.6" 515 | source = "registry+https://github.com/rust-lang/crates.io-index" 516 | checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" 517 | dependencies = [ 518 | "generic-array", 519 | "typenum", 520 | ] 521 | 522 | [[package]] 523 | name = "darling" 524 | version = "0.10.2" 525 | source = "registry+https://github.com/rust-lang/crates.io-index" 526 | checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858" 527 | dependencies = [ 528 | "darling_core 0.10.2", 529 | "darling_macro 0.10.2", 530 | ] 531 | 532 | [[package]] 533 | name = "darling" 534 | version = "0.14.4" 535 | source = "registry+https://github.com/rust-lang/crates.io-index" 536 | checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" 537 | dependencies = [ 538 | "darling_core 0.14.4", 539 | "darling_macro 0.14.4", 540 | ] 541 | 542 | [[package]] 543 | name = "darling" 544 | version = "0.20.5" 545 | source = "registry+https://github.com/rust-lang/crates.io-index" 546 | checksum = "fc5d6b04b3fd0ba9926f945895de7d806260a2d7431ba82e7edaecb043c4c6b8" 547 | dependencies = [ 548 | "darling_core 0.20.5", 549 | "darling_macro 0.20.5", 550 | ] 551 | 552 | [[package]] 553 | name = "darling_core" 554 | version = "0.10.2" 555 | source = "registry+https://github.com/rust-lang/crates.io-index" 556 | checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b" 557 | dependencies = [ 558 | "fnv", 559 | "ident_case", 560 | "proc-macro2", 561 | "quote", 562 | "strsim 0.9.3", 563 | "syn 1.0.109", 564 | ] 565 | 566 | [[package]] 567 | name = "darling_core" 568 | version = "0.14.4" 569 | source = "registry+https://github.com/rust-lang/crates.io-index" 570 | checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" 571 | dependencies = [ 572 | "fnv", 573 | "ident_case", 574 | "proc-macro2", 575 | "quote", 576 | "strsim 0.10.0", 577 | "syn 1.0.109", 578 | ] 579 | 580 | [[package]] 581 | name = "darling_core" 582 | version = "0.20.5" 583 | source = "registry+https://github.com/rust-lang/crates.io-index" 584 | checksum = "04e48a959bcd5c761246f5d090ebc2fbf7b9cd527a492b07a67510c108f1e7e3" 585 | dependencies = [ 586 | "fnv", 587 | "ident_case", 588 | "proc-macro2", 589 | "quote", 590 | "syn 2.0.48", 591 | ] 592 | 593 | [[package]] 594 | name = "darling_macro" 595 | version = "0.10.2" 596 | source = "registry+https://github.com/rust-lang/crates.io-index" 597 | checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72" 598 | dependencies = [ 599 | "darling_core 0.10.2", 600 | "quote", 601 | "syn 1.0.109", 602 | ] 603 | 604 | [[package]] 605 | name = "darling_macro" 606 | version = "0.14.4" 607 | source = "registry+https://github.com/rust-lang/crates.io-index" 608 | checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" 609 | dependencies = [ 610 | "darling_core 0.14.4", 611 | "quote", 612 | "syn 1.0.109", 613 | ] 614 | 615 | [[package]] 616 | name = "darling_macro" 617 | version = "0.20.5" 618 | source = "registry+https://github.com/rust-lang/crates.io-index" 619 | checksum = "1d1545d67a2149e1d93b7e5c7752dce5a7426eb5d1357ddcfd89336b94444f77" 620 | dependencies = [ 621 | "darling_core 0.20.5", 622 | "quote", 623 | "syn 2.0.48", 624 | ] 625 | 626 | [[package]] 627 | name = "dashmap" 628 | version = "5.5.3" 629 | source = "registry+https://github.com/rust-lang/crates.io-index" 630 | checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" 631 | dependencies = [ 632 | "cfg-if 1.0.0", 633 | "hashbrown 0.14.3", 634 | "lock_api 0.4.11", 635 | "once_cell", 636 | "parking_lot_core 0.9.9", 637 | ] 638 | 639 | [[package]] 640 | name = "derivative" 641 | version = "2.2.0" 642 | source = "registry+https://github.com/rust-lang/crates.io-index" 643 | checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" 644 | dependencies = [ 645 | "proc-macro2", 646 | "quote", 647 | "syn 1.0.109", 648 | ] 649 | 650 | [[package]] 651 | name = "derive_arbitrary" 652 | version = "1.3.2" 653 | source = "registry+https://github.com/rust-lang/crates.io-index" 654 | checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" 655 | dependencies = [ 656 | "proc-macro2", 657 | "quote", 658 | "syn 2.0.48", 659 | ] 660 | 661 | [[package]] 662 | name = "derive_builder" 663 | version = "0.9.0" 664 | source = "registry+https://github.com/rust-lang/crates.io-index" 665 | checksum = "a2658621297f2cf68762a6f7dc0bb7e1ff2cfd6583daef8ee0fed6f7ec468ec0" 666 | dependencies = [ 667 | "darling 0.10.2", 668 | "derive_builder_core", 669 | "proc-macro2", 670 | "quote", 671 | "syn 1.0.109", 672 | ] 673 | 674 | [[package]] 675 | name = "derive_builder_core" 676 | version = "0.9.0" 677 | source = "registry+https://github.com/rust-lang/crates.io-index" 678 | checksum = "2791ea3e372c8495c0bc2033991d76b512cd799d07491fbd6890124db9458bef" 679 | dependencies = [ 680 | "darling 0.10.2", 681 | "proc-macro2", 682 | "quote", 683 | "syn 1.0.109", 684 | ] 685 | 686 | [[package]] 687 | name = "derive_more" 688 | version = "0.99.17" 689 | source = "registry+https://github.com/rust-lang/crates.io-index" 690 | checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" 691 | dependencies = [ 692 | "convert_case", 693 | "proc-macro2", 694 | "quote", 695 | "rustc_version", 696 | "syn 1.0.109", 697 | ] 698 | 699 | [[package]] 700 | name = "digest" 701 | version = "0.10.7" 702 | source = "registry+https://github.com/rust-lang/crates.io-index" 703 | checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" 704 | dependencies = [ 705 | "block-buffer", 706 | "crypto-common", 707 | ] 708 | 709 | [[package]] 710 | name = "dunce" 711 | version = "1.0.4" 712 | source = "registry+https://github.com/rust-lang/crates.io-index" 713 | checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" 714 | 715 | [[package]] 716 | name = "either" 717 | version = "1.9.0" 718 | source = "registry+https://github.com/rust-lang/crates.io-index" 719 | checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" 720 | 721 | [[package]] 722 | name = "enum-iterator" 723 | version = "0.7.0" 724 | source = "registry+https://github.com/rust-lang/crates.io-index" 725 | checksum = "4eeac5c5edb79e4e39fe8439ef35207780a11f69c52cbe424ce3dfad4cb78de6" 726 | dependencies = [ 727 | "enum-iterator-derive", 728 | ] 729 | 730 | [[package]] 731 | name = "enum-iterator-derive" 732 | version = "0.7.0" 733 | source = "registry+https://github.com/rust-lang/crates.io-index" 734 | checksum = "c134c37760b27a871ba422106eedbb8247da973a09e82558bf26d619c882b159" 735 | dependencies = [ 736 | "proc-macro2", 737 | "quote", 738 | "syn 1.0.109", 739 | ] 740 | 741 | [[package]] 742 | name = "enumset" 743 | version = "1.1.3" 744 | source = "registry+https://github.com/rust-lang/crates.io-index" 745 | checksum = "226c0da7462c13fb57e5cc9e0dc8f0635e7d27f276a3a7fd30054647f669007d" 746 | dependencies = [ 747 | "enumset_derive", 748 | ] 749 | 750 | [[package]] 751 | name = "enumset_derive" 752 | version = "0.8.1" 753 | source = "registry+https://github.com/rust-lang/crates.io-index" 754 | checksum = "e08b6c6ab82d70f08844964ba10c7babb716de2ecaeab9be5717918a5177d3af" 755 | dependencies = [ 756 | "darling 0.20.5", 757 | "proc-macro2", 758 | "quote", 759 | "syn 2.0.48", 760 | ] 761 | 762 | [[package]] 763 | name = "equivalent" 764 | version = "1.0.1" 765 | source = "registry+https://github.com/rust-lang/crates.io-index" 766 | checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" 767 | 768 | [[package]] 769 | name = "errno" 770 | version = "0.3.8" 771 | source = "registry+https://github.com/rust-lang/crates.io-index" 772 | checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" 773 | dependencies = [ 774 | "libc", 775 | "windows-sys 0.52.0", 776 | ] 777 | 778 | [[package]] 779 | name = "fallible-iterator" 780 | version = "0.2.0" 781 | source = "registry+https://github.com/rust-lang/crates.io-index" 782 | checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" 783 | 784 | [[package]] 785 | name = "fallible-streaming-iterator" 786 | version = "0.1.9" 787 | source = "registry+https://github.com/rust-lang/crates.io-index" 788 | checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" 789 | 790 | [[package]] 791 | name = "fixt" 792 | version = "0.2.6" 793 | source = "registry+https://github.com/rust-lang/crates.io-index" 794 | checksum = "2aaad35b31fc5ead40ecc31c10819e4a0662a33504da208ccd309376e06d8564" 795 | dependencies = [ 796 | "holochain_serialized_bytes", 797 | "lazy_static", 798 | "parking_lot 0.10.2", 799 | "paste", 800 | "rand 0.8.5", 801 | "rand_core 0.6.4", 802 | "serde", 803 | "strum", 804 | "strum_macros 0.18.0", 805 | ] 806 | 807 | [[package]] 808 | name = "fnv" 809 | version = "1.0.7" 810 | source = "registry+https://github.com/rust-lang/crates.io-index" 811 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 812 | 813 | [[package]] 814 | name = "form_urlencoded" 815 | version = "1.2.1" 816 | source = "registry+https://github.com/rust-lang/crates.io-index" 817 | checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" 818 | dependencies = [ 819 | "percent-encoding", 820 | ] 821 | 822 | [[package]] 823 | name = "fuchsia-cprng" 824 | version = "0.1.1" 825 | source = "registry+https://github.com/rust-lang/crates.io-index" 826 | checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" 827 | 828 | [[package]] 829 | name = "funty" 830 | version = "2.0.0" 831 | source = "registry+https://github.com/rust-lang/crates.io-index" 832 | checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" 833 | 834 | [[package]] 835 | name = "futures" 836 | version = "0.3.30" 837 | source = "registry+https://github.com/rust-lang/crates.io-index" 838 | checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" 839 | dependencies = [ 840 | "futures-channel", 841 | "futures-core", 842 | "futures-executor", 843 | "futures-io", 844 | "futures-sink", 845 | "futures-task", 846 | "futures-util", 847 | ] 848 | 849 | [[package]] 850 | name = "futures-channel" 851 | version = "0.3.30" 852 | source = "registry+https://github.com/rust-lang/crates.io-index" 853 | checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" 854 | dependencies = [ 855 | "futures-core", 856 | "futures-sink", 857 | ] 858 | 859 | [[package]] 860 | name = "futures-core" 861 | version = "0.3.30" 862 | source = "registry+https://github.com/rust-lang/crates.io-index" 863 | checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" 864 | 865 | [[package]] 866 | name = "futures-executor" 867 | version = "0.3.30" 868 | source = "registry+https://github.com/rust-lang/crates.io-index" 869 | checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" 870 | dependencies = [ 871 | "futures-core", 872 | "futures-task", 873 | "futures-util", 874 | ] 875 | 876 | [[package]] 877 | name = "futures-io" 878 | version = "0.3.30" 879 | source = "registry+https://github.com/rust-lang/crates.io-index" 880 | checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" 881 | 882 | [[package]] 883 | name = "futures-macro" 884 | version = "0.3.30" 885 | source = "registry+https://github.com/rust-lang/crates.io-index" 886 | checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" 887 | dependencies = [ 888 | "proc-macro2", 889 | "quote", 890 | "syn 2.0.48", 891 | ] 892 | 893 | [[package]] 894 | name = "futures-sink" 895 | version = "0.3.30" 896 | source = "registry+https://github.com/rust-lang/crates.io-index" 897 | checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" 898 | 899 | [[package]] 900 | name = "futures-task" 901 | version = "0.3.30" 902 | source = "registry+https://github.com/rust-lang/crates.io-index" 903 | checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" 904 | 905 | [[package]] 906 | name = "futures-util" 907 | version = "0.3.30" 908 | source = "registry+https://github.com/rust-lang/crates.io-index" 909 | checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" 910 | dependencies = [ 911 | "futures-channel", 912 | "futures-core", 913 | "futures-io", 914 | "futures-macro", 915 | "futures-sink", 916 | "futures-task", 917 | "memchr", 918 | "pin-project-lite", 919 | "pin-utils", 920 | "slab", 921 | ] 922 | 923 | [[package]] 924 | name = "fxhash" 925 | version = "0.2.1" 926 | source = "registry+https://github.com/rust-lang/crates.io-index" 927 | checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" 928 | dependencies = [ 929 | "byteorder", 930 | ] 931 | 932 | [[package]] 933 | name = "gcollections" 934 | version = "1.5.0" 935 | source = "registry+https://github.com/rust-lang/crates.io-index" 936 | checksum = "2f551fdf23ef80329f754919669147a71c67b6cfe3569cd93b6fabdd62044377" 937 | dependencies = [ 938 | "bit-set", 939 | "num-integer", 940 | "num-traits", 941 | "trilean", 942 | ] 943 | 944 | [[package]] 945 | name = "generic-array" 946 | version = "0.14.7" 947 | source = "registry+https://github.com/rust-lang/crates.io-index" 948 | checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" 949 | dependencies = [ 950 | "typenum", 951 | "version_check", 952 | ] 953 | 954 | [[package]] 955 | name = "getrandom" 956 | version = "0.1.16" 957 | source = "registry+https://github.com/rust-lang/crates.io-index" 958 | checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" 959 | dependencies = [ 960 | "cfg-if 1.0.0", 961 | "libc", 962 | "wasi 0.9.0+wasi-snapshot-preview1", 963 | ] 964 | 965 | [[package]] 966 | name = "getrandom" 967 | version = "0.2.12" 968 | source = "registry+https://github.com/rust-lang/crates.io-index" 969 | checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" 970 | dependencies = [ 971 | "cfg-if 1.0.0", 972 | "libc", 973 | "wasi 0.11.0+wasi-snapshot-preview1", 974 | ] 975 | 976 | [[package]] 977 | name = "gimli" 978 | version = "0.26.2" 979 | source = "registry+https://github.com/rust-lang/crates.io-index" 980 | checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" 981 | dependencies = [ 982 | "fallible-iterator", 983 | "indexmap 1.9.3", 984 | "stable_deref_trait", 985 | ] 986 | 987 | [[package]] 988 | name = "gimli" 989 | version = "0.28.1" 990 | source = "registry+https://github.com/rust-lang/crates.io-index" 991 | checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" 992 | 993 | [[package]] 994 | name = "hashbrown" 995 | version = "0.12.3" 996 | source = "registry+https://github.com/rust-lang/crates.io-index" 997 | checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" 998 | dependencies = [ 999 | "ahash 0.7.7", 1000 | ] 1001 | 1002 | [[package]] 1003 | name = "hashbrown" 1004 | version = "0.14.3" 1005 | source = "registry+https://github.com/rust-lang/crates.io-index" 1006 | checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" 1007 | dependencies = [ 1008 | "ahash 0.8.7", 1009 | "allocator-api2", 1010 | ] 1011 | 1012 | [[package]] 1013 | name = "hashlink" 1014 | version = "0.8.4" 1015 | source = "registry+https://github.com/rust-lang/crates.io-index" 1016 | checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" 1017 | dependencies = [ 1018 | "hashbrown 0.14.3", 1019 | ] 1020 | 1021 | [[package]] 1022 | name = "heck" 1023 | version = "0.3.3" 1024 | source = "registry+https://github.com/rust-lang/crates.io-index" 1025 | checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" 1026 | dependencies = [ 1027 | "unicode-segmentation", 1028 | ] 1029 | 1030 | [[package]] 1031 | name = "heck" 1032 | version = "0.4.1" 1033 | source = "registry+https://github.com/rust-lang/crates.io-index" 1034 | checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" 1035 | 1036 | [[package]] 1037 | name = "hermit-abi" 1038 | version = "0.3.5" 1039 | source = "registry+https://github.com/rust-lang/crates.io-index" 1040 | checksum = "d0c62115964e08cb8039170eb33c1d0e2388a256930279edca206fff675f82c3" 1041 | 1042 | [[package]] 1043 | name = "hex" 1044 | version = "0.4.3" 1045 | source = "registry+https://github.com/rust-lang/crates.io-index" 1046 | checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 1047 | 1048 | [[package]] 1049 | name = "holo_hash" 1050 | version = "0.2.6" 1051 | source = "registry+https://github.com/rust-lang/crates.io-index" 1052 | checksum = "637db043b0aca5379f35f76aaff545b76fa47b387e450bee981558e2bd660a60" 1053 | dependencies = [ 1054 | "arbitrary", 1055 | "base64", 1056 | "blake2b_simd", 1057 | "derive_more", 1058 | "fixt", 1059 | "futures", 1060 | "holochain_serialized_bytes", 1061 | "holochain_util", 1062 | "holochain_wasmer_common", 1063 | "kitsune_p2p_dht_arc", 1064 | "must_future", 1065 | "rand 0.8.5", 1066 | "serde", 1067 | "serde_bytes", 1068 | "thiserror", 1069 | ] 1070 | 1071 | [[package]] 1072 | name = "holochain-serialization" 1073 | version = "0.1.0" 1074 | dependencies = [ 1075 | "holo_hash", 1076 | "holochain_zome_types", 1077 | "pyo3", 1078 | ] 1079 | 1080 | [[package]] 1081 | name = "holochain_integrity_types" 1082 | version = "0.2.6" 1083 | source = "registry+https://github.com/rust-lang/crates.io-index" 1084 | checksum = "70b5c8ca714c39344038db71a4ecd3b12e0857472f0d563d9792d5bc9de9cdcd" 1085 | dependencies = [ 1086 | "derive_builder", 1087 | "holo_hash", 1088 | "holochain_serialized_bytes", 1089 | "holochain_util", 1090 | "kitsune_p2p_dht", 1091 | "kitsune_p2p_timestamp", 1092 | "paste", 1093 | "serde", 1094 | "serde_bytes", 1095 | "subtle", 1096 | "subtle-encoding", 1097 | "tracing", 1098 | ] 1099 | 1100 | [[package]] 1101 | name = "holochain_serialized_bytes" 1102 | version = "0.0.53" 1103 | source = "registry+https://github.com/rust-lang/crates.io-index" 1104 | checksum = "5f7a5fc7c745a107f8ebcb04caab7a6b7a8463e2811f07ced19c281977583de7" 1105 | dependencies = [ 1106 | "holochain_serialized_bytes_derive", 1107 | "rmp-serde", 1108 | "serde", 1109 | "serde-transcode", 1110 | "serde_bytes", 1111 | "serde_json", 1112 | "thiserror", 1113 | ] 1114 | 1115 | [[package]] 1116 | name = "holochain_serialized_bytes_derive" 1117 | version = "0.0.53" 1118 | source = "registry+https://github.com/rust-lang/crates.io-index" 1119 | checksum = "ec3e0cf02005cbf0f514476d40e02125b26df6d4922d7a2c48a84fc588539d71" 1120 | dependencies = [ 1121 | "quote", 1122 | "syn 1.0.109", 1123 | ] 1124 | 1125 | [[package]] 1126 | name = "holochain_util" 1127 | version = "0.2.6" 1128 | source = "registry+https://github.com/rust-lang/crates.io-index" 1129 | checksum = "dfcdd3287c349f0db8e6fe2990fb6ce013ca63be4d76f5f42cf8a31196a5b690" 1130 | dependencies = [ 1131 | "cfg-if 0.1.10", 1132 | "derive_more", 1133 | "dunce", 1134 | "futures", 1135 | "num_cpus", 1136 | "once_cell", 1137 | ] 1138 | 1139 | [[package]] 1140 | name = "holochain_wasmer_common" 1141 | version = "0.0.92" 1142 | source = "registry+https://github.com/rust-lang/crates.io-index" 1143 | checksum = "72007fd2a72d77e76ffa494e5847bf6e893e25e73fe1d1de902e1b8d5033a64e" 1144 | dependencies = [ 1145 | "holochain_serialized_bytes", 1146 | "serde", 1147 | "serde_bytes", 1148 | "test-fuzz", 1149 | "thiserror", 1150 | "wasmer", 1151 | ] 1152 | 1153 | [[package]] 1154 | name = "holochain_zome_types" 1155 | version = "0.2.6" 1156 | source = "registry+https://github.com/rust-lang/crates.io-index" 1157 | checksum = "b70b60a9d3757ec2d48b956f747e7545e692a7bc0f8cf61db46be6cef53b0dbb" 1158 | dependencies = [ 1159 | "contrafact", 1160 | "derive_builder", 1161 | "fixt", 1162 | "holo_hash", 1163 | "holochain_integrity_types", 1164 | "holochain_serialized_bytes", 1165 | "holochain_wasmer_common", 1166 | "kitsune_p2p_bin_data", 1167 | "kitsune_p2p_block", 1168 | "kitsune_p2p_dht", 1169 | "kitsune_p2p_timestamp", 1170 | "nanoid", 1171 | "once_cell", 1172 | "paste", 1173 | "rand 0.8.5", 1174 | "serde", 1175 | "serde_bytes", 1176 | "shrinkwraprs", 1177 | "strum", 1178 | "subtle", 1179 | "subtle-encoding", 1180 | "thiserror", 1181 | "tracing", 1182 | ] 1183 | 1184 | [[package]] 1185 | name = "home" 1186 | version = "0.5.9" 1187 | source = "registry+https://github.com/rust-lang/crates.io-index" 1188 | checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" 1189 | dependencies = [ 1190 | "windows-sys 0.52.0", 1191 | ] 1192 | 1193 | [[package]] 1194 | name = "iana-time-zone" 1195 | version = "0.1.60" 1196 | source = "registry+https://github.com/rust-lang/crates.io-index" 1197 | checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" 1198 | dependencies = [ 1199 | "android_system_properties", 1200 | "core-foundation-sys", 1201 | "iana-time-zone-haiku", 1202 | "js-sys", 1203 | "wasm-bindgen", 1204 | "windows-core", 1205 | ] 1206 | 1207 | [[package]] 1208 | name = "iana-time-zone-haiku" 1209 | version = "0.1.2" 1210 | source = "registry+https://github.com/rust-lang/crates.io-index" 1211 | checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" 1212 | dependencies = [ 1213 | "cc", 1214 | ] 1215 | 1216 | [[package]] 1217 | name = "ident_case" 1218 | version = "1.0.1" 1219 | source = "registry+https://github.com/rust-lang/crates.io-index" 1220 | checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 1221 | 1222 | [[package]] 1223 | name = "idna" 1224 | version = "0.5.0" 1225 | source = "registry+https://github.com/rust-lang/crates.io-index" 1226 | checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" 1227 | dependencies = [ 1228 | "unicode-bidi", 1229 | "unicode-normalization", 1230 | ] 1231 | 1232 | [[package]] 1233 | name = "if_chain" 1234 | version = "1.0.2" 1235 | source = "registry+https://github.com/rust-lang/crates.io-index" 1236 | checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed" 1237 | 1238 | [[package]] 1239 | name = "indexmap" 1240 | version = "1.9.3" 1241 | source = "registry+https://github.com/rust-lang/crates.io-index" 1242 | checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" 1243 | dependencies = [ 1244 | "autocfg 1.1.0", 1245 | "hashbrown 0.12.3", 1246 | ] 1247 | 1248 | [[package]] 1249 | name = "indexmap" 1250 | version = "2.2.2" 1251 | source = "registry+https://github.com/rust-lang/crates.io-index" 1252 | checksum = "824b2ae422412366ba479e8111fd301f7b5faece8149317bb81925979a53f520" 1253 | dependencies = [ 1254 | "equivalent", 1255 | "hashbrown 0.14.3", 1256 | ] 1257 | 1258 | [[package]] 1259 | name = "indoc" 1260 | version = "1.0.9" 1261 | source = "registry+https://github.com/rust-lang/crates.io-index" 1262 | checksum = "bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306" 1263 | 1264 | [[package]] 1265 | name = "intervallum" 1266 | version = "1.4.1" 1267 | source = "registry+https://github.com/rust-lang/crates.io-index" 1268 | checksum = "18bfda24d3930aa647f90044d5ef87d0c8120f13b86b2d60e8aade66e656e659" 1269 | dependencies = [ 1270 | "bit-set", 1271 | "gcollections", 1272 | "num-integer", 1273 | "num-traits", 1274 | "trilean", 1275 | ] 1276 | 1277 | [[package]] 1278 | name = "is-terminal" 1279 | version = "0.4.10" 1280 | source = "registry+https://github.com/rust-lang/crates.io-index" 1281 | checksum = "0bad00257d07be169d870ab665980b06cdb366d792ad690bf2e76876dc503455" 1282 | dependencies = [ 1283 | "hermit-abi", 1284 | "rustix", 1285 | "windows-sys 0.52.0", 1286 | ] 1287 | 1288 | [[package]] 1289 | name = "itertools" 1290 | version = "0.8.2" 1291 | source = "registry+https://github.com/rust-lang/crates.io-index" 1292 | checksum = "f56a2d0bc861f9165be4eb3442afd3c236d8a98afd426f65d92324ae1091a484" 1293 | dependencies = [ 1294 | "either", 1295 | ] 1296 | 1297 | [[package]] 1298 | name = "itertools" 1299 | version = "0.10.5" 1300 | source = "registry+https://github.com/rust-lang/crates.io-index" 1301 | checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" 1302 | dependencies = [ 1303 | "either", 1304 | ] 1305 | 1306 | [[package]] 1307 | name = "itoa" 1308 | version = "1.0.10" 1309 | source = "registry+https://github.com/rust-lang/crates.io-index" 1310 | checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" 1311 | 1312 | [[package]] 1313 | name = "js-sys" 1314 | version = "0.3.68" 1315 | source = "registry+https://github.com/rust-lang/crates.io-index" 1316 | checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee" 1317 | dependencies = [ 1318 | "wasm-bindgen", 1319 | ] 1320 | 1321 | [[package]] 1322 | name = "kitsune_p2p_bin_data" 1323 | version = "0.2.6" 1324 | source = "registry+https://github.com/rust-lang/crates.io-index" 1325 | checksum = "a3abdb726a36e4720ad8edf60ba36823f068a87770bde4b88e9a85067ec03a2e" 1326 | dependencies = [ 1327 | "base64", 1328 | "derive_more", 1329 | "holochain_util", 1330 | "kitsune_p2p_dht_arc", 1331 | "serde", 1332 | "serde_bytes", 1333 | "shrinkwraprs", 1334 | ] 1335 | 1336 | [[package]] 1337 | name = "kitsune_p2p_block" 1338 | version = "0.2.6" 1339 | source = "registry+https://github.com/rust-lang/crates.io-index" 1340 | checksum = "b7f25a72f6ab95dabe5a3e1659f8c694d39cd2a6aea5cd98c57730e0f251aaa2" 1341 | dependencies = [ 1342 | "kitsune_p2p_bin_data", 1343 | "kitsune_p2p_timestamp", 1344 | "serde", 1345 | "serde_bytes", 1346 | ] 1347 | 1348 | [[package]] 1349 | name = "kitsune_p2p_dht" 1350 | version = "0.2.6" 1351 | source = "registry+https://github.com/rust-lang/crates.io-index" 1352 | checksum = "04545623fd699179c8ec93f3347ce21e4c34d8999ef2c71985df2c24d3897116" 1353 | dependencies = [ 1354 | "colored", 1355 | "derivative", 1356 | "derive_more", 1357 | "futures", 1358 | "gcollections", 1359 | "intervallum", 1360 | "kitsune_p2p_dht_arc", 1361 | "kitsune_p2p_timestamp", 1362 | "must_future", 1363 | "num-traits", 1364 | "once_cell", 1365 | "rand 0.8.5", 1366 | "serde", 1367 | "statrs", 1368 | "thiserror", 1369 | "tracing", 1370 | ] 1371 | 1372 | [[package]] 1373 | name = "kitsune_p2p_dht_arc" 1374 | version = "0.2.6" 1375 | source = "registry+https://github.com/rust-lang/crates.io-index" 1376 | checksum = "b59a03b2b6d27f3b62838923e10b60f792f7ab36b242f1eb0f5911e4e589f658" 1377 | dependencies = [ 1378 | "derive_more", 1379 | "gcollections", 1380 | "intervallum", 1381 | "num-traits", 1382 | "rusqlite", 1383 | "serde", 1384 | ] 1385 | 1386 | [[package]] 1387 | name = "kitsune_p2p_timestamp" 1388 | version = "0.2.6" 1389 | source = "registry+https://github.com/rust-lang/crates.io-index" 1390 | checksum = "e444a98f1e99097654b8bed11a571fa9df94849b47cd452e9ffcb9f535ca80ad" 1391 | dependencies = [ 1392 | "arbitrary", 1393 | "chrono", 1394 | "derive_more", 1395 | "rusqlite", 1396 | "serde", 1397 | ] 1398 | 1399 | [[package]] 1400 | name = "lazy_static" 1401 | version = "1.4.0" 1402 | source = "registry+https://github.com/rust-lang/crates.io-index" 1403 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 1404 | 1405 | [[package]] 1406 | name = "leb128" 1407 | version = "0.2.5" 1408 | source = "registry+https://github.com/rust-lang/crates.io-index" 1409 | checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" 1410 | 1411 | [[package]] 1412 | name = "libc" 1413 | version = "0.2.153" 1414 | source = "registry+https://github.com/rust-lang/crates.io-index" 1415 | checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" 1416 | 1417 | [[package]] 1418 | name = "libm" 1419 | version = "0.2.8" 1420 | source = "registry+https://github.com/rust-lang/crates.io-index" 1421 | checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" 1422 | 1423 | [[package]] 1424 | name = "libsqlite3-sys" 1425 | version = "0.26.0" 1426 | source = "registry+https://github.com/rust-lang/crates.io-index" 1427 | checksum = "afc22eff61b133b115c6e8c74e818c628d6d5e7a502afea6f64dee076dd94326" 1428 | dependencies = [ 1429 | "cc", 1430 | "pkg-config", 1431 | "vcpkg", 1432 | ] 1433 | 1434 | [[package]] 1435 | name = "linux-raw-sys" 1436 | version = "0.4.13" 1437 | source = "registry+https://github.com/rust-lang/crates.io-index" 1438 | checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" 1439 | 1440 | [[package]] 1441 | name = "lock_api" 1442 | version = "0.3.4" 1443 | source = "registry+https://github.com/rust-lang/crates.io-index" 1444 | checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75" 1445 | dependencies = [ 1446 | "scopeguard", 1447 | ] 1448 | 1449 | [[package]] 1450 | name = "lock_api" 1451 | version = "0.4.11" 1452 | source = "registry+https://github.com/rust-lang/crates.io-index" 1453 | checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" 1454 | dependencies = [ 1455 | "autocfg 1.1.0", 1456 | "scopeguard", 1457 | ] 1458 | 1459 | [[package]] 1460 | name = "log" 1461 | version = "0.4.20" 1462 | source = "registry+https://github.com/rust-lang/crates.io-index" 1463 | checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" 1464 | 1465 | [[package]] 1466 | name = "mach" 1467 | version = "0.3.2" 1468 | source = "registry+https://github.com/rust-lang/crates.io-index" 1469 | checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" 1470 | dependencies = [ 1471 | "libc", 1472 | ] 1473 | 1474 | [[package]] 1475 | name = "matrixmultiply" 1476 | version = "0.3.8" 1477 | source = "registry+https://github.com/rust-lang/crates.io-index" 1478 | checksum = "7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2" 1479 | dependencies = [ 1480 | "autocfg 1.1.0", 1481 | "rawpointer", 1482 | ] 1483 | 1484 | [[package]] 1485 | name = "memchr" 1486 | version = "2.7.1" 1487 | source = "registry+https://github.com/rust-lang/crates.io-index" 1488 | checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" 1489 | 1490 | [[package]] 1491 | name = "memmap2" 1492 | version = "0.5.10" 1493 | source = "registry+https://github.com/rust-lang/crates.io-index" 1494 | checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" 1495 | dependencies = [ 1496 | "libc", 1497 | ] 1498 | 1499 | [[package]] 1500 | name = "memmap2" 1501 | version = "0.6.2" 1502 | source = "registry+https://github.com/rust-lang/crates.io-index" 1503 | checksum = "6d28bba84adfe6646737845bc5ebbfa2c08424eb1c37e94a1fd2a82adb56a872" 1504 | dependencies = [ 1505 | "libc", 1506 | ] 1507 | 1508 | [[package]] 1509 | name = "memoffset" 1510 | version = "0.9.0" 1511 | source = "registry+https://github.com/rust-lang/crates.io-index" 1512 | checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" 1513 | dependencies = [ 1514 | "autocfg 1.1.0", 1515 | ] 1516 | 1517 | [[package]] 1518 | name = "miniz_oxide" 1519 | version = "0.7.2" 1520 | source = "registry+https://github.com/rust-lang/crates.io-index" 1521 | checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" 1522 | dependencies = [ 1523 | "adler", 1524 | ] 1525 | 1526 | [[package]] 1527 | name = "more-asserts" 1528 | version = "0.2.2" 1529 | source = "registry+https://github.com/rust-lang/crates.io-index" 1530 | checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" 1531 | 1532 | [[package]] 1533 | name = "must_future" 1534 | version = "0.1.2" 1535 | source = "registry+https://github.com/rust-lang/crates.io-index" 1536 | checksum = "a160ffed3c2f98d2906c67a9b6e4e1f09cca7e17e3f780286a349061459eeebe" 1537 | dependencies = [ 1538 | "futures", 1539 | "pin-utils", 1540 | ] 1541 | 1542 | [[package]] 1543 | name = "nalgebra" 1544 | version = "0.27.1" 1545 | source = "registry+https://github.com/rust-lang/crates.io-index" 1546 | checksum = "462fffe4002f4f2e1f6a9dcf12cc1a6fc0e15989014efc02a941d3e0f5dc2120" 1547 | dependencies = [ 1548 | "approx", 1549 | "matrixmultiply", 1550 | "nalgebra-macros", 1551 | "num-complex", 1552 | "num-rational", 1553 | "num-traits", 1554 | "rand 0.8.5", 1555 | "rand_distr", 1556 | "simba", 1557 | "typenum", 1558 | ] 1559 | 1560 | [[package]] 1561 | name = "nalgebra-macros" 1562 | version = "0.1.0" 1563 | source = "registry+https://github.com/rust-lang/crates.io-index" 1564 | checksum = "01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218" 1565 | dependencies = [ 1566 | "proc-macro2", 1567 | "quote", 1568 | "syn 1.0.109", 1569 | ] 1570 | 1571 | [[package]] 1572 | name = "nanoid" 1573 | version = "0.3.0" 1574 | source = "registry+https://github.com/rust-lang/crates.io-index" 1575 | checksum = "a6226bc4e142124cb44e309a37a04cd9bb10e740d8642855441d3b14808f635e" 1576 | dependencies = [ 1577 | "rand 0.6.5", 1578 | ] 1579 | 1580 | [[package]] 1581 | name = "num" 1582 | version = "0.4.1" 1583 | source = "registry+https://github.com/rust-lang/crates.io-index" 1584 | checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" 1585 | dependencies = [ 1586 | "num-bigint", 1587 | "num-complex", 1588 | "num-integer", 1589 | "num-iter", 1590 | "num-rational", 1591 | "num-traits", 1592 | ] 1593 | 1594 | [[package]] 1595 | name = "num-bigint" 1596 | version = "0.4.4" 1597 | source = "registry+https://github.com/rust-lang/crates.io-index" 1598 | checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" 1599 | dependencies = [ 1600 | "autocfg 1.1.0", 1601 | "num-integer", 1602 | "num-traits", 1603 | ] 1604 | 1605 | [[package]] 1606 | name = "num-complex" 1607 | version = "0.4.5" 1608 | source = "registry+https://github.com/rust-lang/crates.io-index" 1609 | checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6" 1610 | dependencies = [ 1611 | "num-traits", 1612 | ] 1613 | 1614 | [[package]] 1615 | name = "num-integer" 1616 | version = "0.1.45" 1617 | source = "registry+https://github.com/rust-lang/crates.io-index" 1618 | checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" 1619 | dependencies = [ 1620 | "autocfg 1.1.0", 1621 | "num-traits", 1622 | ] 1623 | 1624 | [[package]] 1625 | name = "num-iter" 1626 | version = "0.1.43" 1627 | source = "registry+https://github.com/rust-lang/crates.io-index" 1628 | checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" 1629 | dependencies = [ 1630 | "autocfg 1.1.0", 1631 | "num-integer", 1632 | "num-traits", 1633 | ] 1634 | 1635 | [[package]] 1636 | name = "num-rational" 1637 | version = "0.4.1" 1638 | source = "registry+https://github.com/rust-lang/crates.io-index" 1639 | checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" 1640 | dependencies = [ 1641 | "autocfg 1.1.0", 1642 | "num-bigint", 1643 | "num-integer", 1644 | "num-traits", 1645 | ] 1646 | 1647 | [[package]] 1648 | name = "num-traits" 1649 | version = "0.2.17" 1650 | source = "registry+https://github.com/rust-lang/crates.io-index" 1651 | checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" 1652 | dependencies = [ 1653 | "autocfg 1.1.0", 1654 | "libm", 1655 | ] 1656 | 1657 | [[package]] 1658 | name = "num_cpus" 1659 | version = "1.16.0" 1660 | source = "registry+https://github.com/rust-lang/crates.io-index" 1661 | checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" 1662 | dependencies = [ 1663 | "hermit-abi", 1664 | "libc", 1665 | ] 1666 | 1667 | [[package]] 1668 | name = "object" 1669 | version = "0.32.2" 1670 | source = "registry+https://github.com/rust-lang/crates.io-index" 1671 | checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" 1672 | dependencies = [ 1673 | "memchr", 1674 | ] 1675 | 1676 | [[package]] 1677 | name = "once_cell" 1678 | version = "1.19.0" 1679 | source = "registry+https://github.com/rust-lang/crates.io-index" 1680 | checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" 1681 | 1682 | [[package]] 1683 | name = "parking_lot" 1684 | version = "0.10.2" 1685 | source = "registry+https://github.com/rust-lang/crates.io-index" 1686 | checksum = "d3a704eb390aafdc107b0e392f56a82b668e3a71366993b5340f5833fd62505e" 1687 | dependencies = [ 1688 | "lock_api 0.3.4", 1689 | "parking_lot_core 0.7.3", 1690 | ] 1691 | 1692 | [[package]] 1693 | name = "parking_lot" 1694 | version = "0.12.1" 1695 | source = "registry+https://github.com/rust-lang/crates.io-index" 1696 | checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" 1697 | dependencies = [ 1698 | "lock_api 0.4.11", 1699 | "parking_lot_core 0.9.9", 1700 | ] 1701 | 1702 | [[package]] 1703 | name = "parking_lot_core" 1704 | version = "0.7.3" 1705 | source = "registry+https://github.com/rust-lang/crates.io-index" 1706 | checksum = "b93f386bb233083c799e6e642a9d73db98c24a5deeb95ffc85bf281255dffc98" 1707 | dependencies = [ 1708 | "cfg-if 0.1.10", 1709 | "cloudabi", 1710 | "libc", 1711 | "redox_syscall 0.1.57", 1712 | "smallvec", 1713 | "winapi", 1714 | ] 1715 | 1716 | [[package]] 1717 | name = "parking_lot_core" 1718 | version = "0.9.9" 1719 | source = "registry+https://github.com/rust-lang/crates.io-index" 1720 | checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" 1721 | dependencies = [ 1722 | "cfg-if 1.0.0", 1723 | "libc", 1724 | "redox_syscall 0.4.1", 1725 | "smallvec", 1726 | "windows-targets 0.48.5", 1727 | ] 1728 | 1729 | [[package]] 1730 | name = "paste" 1731 | version = "1.0.14" 1732 | source = "registry+https://github.com/rust-lang/crates.io-index" 1733 | checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" 1734 | 1735 | [[package]] 1736 | name = "percent-encoding" 1737 | version = "2.3.1" 1738 | source = "registry+https://github.com/rust-lang/crates.io-index" 1739 | checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" 1740 | 1741 | [[package]] 1742 | name = "pest" 1743 | version = "2.7.7" 1744 | source = "registry+https://github.com/rust-lang/crates.io-index" 1745 | checksum = "219c0dcc30b6a27553f9cc242972b67f75b60eb0db71f0b5462f38b058c41546" 1746 | dependencies = [ 1747 | "memchr", 1748 | "thiserror", 1749 | "ucd-trie", 1750 | ] 1751 | 1752 | [[package]] 1753 | name = "pin-project-lite" 1754 | version = "0.2.13" 1755 | source = "registry+https://github.com/rust-lang/crates.io-index" 1756 | checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" 1757 | 1758 | [[package]] 1759 | name = "pin-utils" 1760 | version = "0.1.0" 1761 | source = "registry+https://github.com/rust-lang/crates.io-index" 1762 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 1763 | 1764 | [[package]] 1765 | name = "pkg-config" 1766 | version = "0.3.29" 1767 | source = "registry+https://github.com/rust-lang/crates.io-index" 1768 | checksum = "2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb" 1769 | 1770 | [[package]] 1771 | name = "ppv-lite86" 1772 | version = "0.2.17" 1773 | source = "registry+https://github.com/rust-lang/crates.io-index" 1774 | checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" 1775 | 1776 | [[package]] 1777 | name = "proc-macro-error" 1778 | version = "1.0.4" 1779 | source = "registry+https://github.com/rust-lang/crates.io-index" 1780 | checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" 1781 | dependencies = [ 1782 | "proc-macro-error-attr", 1783 | "proc-macro2", 1784 | "quote", 1785 | "syn 1.0.109", 1786 | "version_check", 1787 | ] 1788 | 1789 | [[package]] 1790 | name = "proc-macro-error-attr" 1791 | version = "1.0.4" 1792 | source = "registry+https://github.com/rust-lang/crates.io-index" 1793 | checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" 1794 | dependencies = [ 1795 | "proc-macro2", 1796 | "quote", 1797 | "version_check", 1798 | ] 1799 | 1800 | [[package]] 1801 | name = "proc-macro2" 1802 | version = "1.0.78" 1803 | source = "registry+https://github.com/rust-lang/crates.io-index" 1804 | checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" 1805 | dependencies = [ 1806 | "unicode-ident", 1807 | ] 1808 | 1809 | [[package]] 1810 | name = "ptr_meta" 1811 | version = "0.1.4" 1812 | source = "registry+https://github.com/rust-lang/crates.io-index" 1813 | checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" 1814 | dependencies = [ 1815 | "ptr_meta_derive", 1816 | ] 1817 | 1818 | [[package]] 1819 | name = "ptr_meta_derive" 1820 | version = "0.1.4" 1821 | source = "registry+https://github.com/rust-lang/crates.io-index" 1822 | checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" 1823 | dependencies = [ 1824 | "proc-macro2", 1825 | "quote", 1826 | "syn 1.0.109", 1827 | ] 1828 | 1829 | [[package]] 1830 | name = "pyo3" 1831 | version = "0.19.2" 1832 | source = "registry+https://github.com/rust-lang/crates.io-index" 1833 | checksum = "e681a6cfdc4adcc93b4d3cf993749a4552018ee0a9b65fc0ccfad74352c72a38" 1834 | dependencies = [ 1835 | "cfg-if 1.0.0", 1836 | "indoc", 1837 | "libc", 1838 | "memoffset", 1839 | "parking_lot 0.12.1", 1840 | "pyo3-build-config", 1841 | "pyo3-ffi", 1842 | "pyo3-macros", 1843 | "unindent", 1844 | ] 1845 | 1846 | [[package]] 1847 | name = "pyo3-build-config" 1848 | version = "0.19.2" 1849 | source = "registry+https://github.com/rust-lang/crates.io-index" 1850 | checksum = "076c73d0bc438f7a4ef6fdd0c3bb4732149136abd952b110ac93e4edb13a6ba5" 1851 | dependencies = [ 1852 | "once_cell", 1853 | "target-lexicon", 1854 | ] 1855 | 1856 | [[package]] 1857 | name = "pyo3-ffi" 1858 | version = "0.19.2" 1859 | source = "registry+https://github.com/rust-lang/crates.io-index" 1860 | checksum = "e53cee42e77ebe256066ba8aa77eff722b3bb91f3419177cf4cd0f304d3284d9" 1861 | dependencies = [ 1862 | "libc", 1863 | "pyo3-build-config", 1864 | ] 1865 | 1866 | [[package]] 1867 | name = "pyo3-macros" 1868 | version = "0.19.2" 1869 | source = "registry+https://github.com/rust-lang/crates.io-index" 1870 | checksum = "dfeb4c99597e136528c6dd7d5e3de5434d1ceaf487436a3f03b2d56b6fc9efd1" 1871 | dependencies = [ 1872 | "proc-macro2", 1873 | "pyo3-macros-backend", 1874 | "quote", 1875 | "syn 1.0.109", 1876 | ] 1877 | 1878 | [[package]] 1879 | name = "pyo3-macros-backend" 1880 | version = "0.19.2" 1881 | source = "registry+https://github.com/rust-lang/crates.io-index" 1882 | checksum = "947dc12175c254889edc0c02e399476c2f652b4b9ebd123aa655c224de259536" 1883 | dependencies = [ 1884 | "proc-macro2", 1885 | "quote", 1886 | "syn 1.0.109", 1887 | ] 1888 | 1889 | [[package]] 1890 | name = "quote" 1891 | version = "1.0.35" 1892 | source = "registry+https://github.com/rust-lang/crates.io-index" 1893 | checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" 1894 | dependencies = [ 1895 | "proc-macro2", 1896 | ] 1897 | 1898 | [[package]] 1899 | name = "radium" 1900 | version = "0.7.0" 1901 | source = "registry+https://github.com/rust-lang/crates.io-index" 1902 | checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" 1903 | 1904 | [[package]] 1905 | name = "rand" 1906 | version = "0.6.5" 1907 | source = "registry+https://github.com/rust-lang/crates.io-index" 1908 | checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" 1909 | dependencies = [ 1910 | "autocfg 0.1.8", 1911 | "libc", 1912 | "rand_chacha 0.1.1", 1913 | "rand_core 0.4.2", 1914 | "rand_hc 0.1.0", 1915 | "rand_isaac", 1916 | "rand_jitter", 1917 | "rand_os", 1918 | "rand_pcg", 1919 | "rand_xorshift", 1920 | "winapi", 1921 | ] 1922 | 1923 | [[package]] 1924 | name = "rand" 1925 | version = "0.7.3" 1926 | source = "registry+https://github.com/rust-lang/crates.io-index" 1927 | checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" 1928 | dependencies = [ 1929 | "getrandom 0.1.16", 1930 | "libc", 1931 | "rand_chacha 0.2.2", 1932 | "rand_core 0.5.1", 1933 | "rand_hc 0.2.0", 1934 | ] 1935 | 1936 | [[package]] 1937 | name = "rand" 1938 | version = "0.8.5" 1939 | source = "registry+https://github.com/rust-lang/crates.io-index" 1940 | checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 1941 | dependencies = [ 1942 | "libc", 1943 | "rand_chacha 0.3.1", 1944 | "rand_core 0.6.4", 1945 | ] 1946 | 1947 | [[package]] 1948 | name = "rand_chacha" 1949 | version = "0.1.1" 1950 | source = "registry+https://github.com/rust-lang/crates.io-index" 1951 | checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" 1952 | dependencies = [ 1953 | "autocfg 0.1.8", 1954 | "rand_core 0.3.1", 1955 | ] 1956 | 1957 | [[package]] 1958 | name = "rand_chacha" 1959 | version = "0.2.2" 1960 | source = "registry+https://github.com/rust-lang/crates.io-index" 1961 | checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" 1962 | dependencies = [ 1963 | "ppv-lite86", 1964 | "rand_core 0.5.1", 1965 | ] 1966 | 1967 | [[package]] 1968 | name = "rand_chacha" 1969 | version = "0.3.1" 1970 | source = "registry+https://github.com/rust-lang/crates.io-index" 1971 | checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 1972 | dependencies = [ 1973 | "ppv-lite86", 1974 | "rand_core 0.6.4", 1975 | ] 1976 | 1977 | [[package]] 1978 | name = "rand_core" 1979 | version = "0.3.1" 1980 | source = "registry+https://github.com/rust-lang/crates.io-index" 1981 | checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" 1982 | dependencies = [ 1983 | "rand_core 0.4.2", 1984 | ] 1985 | 1986 | [[package]] 1987 | name = "rand_core" 1988 | version = "0.4.2" 1989 | source = "registry+https://github.com/rust-lang/crates.io-index" 1990 | checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc" 1991 | 1992 | [[package]] 1993 | name = "rand_core" 1994 | version = "0.5.1" 1995 | source = "registry+https://github.com/rust-lang/crates.io-index" 1996 | checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" 1997 | dependencies = [ 1998 | "getrandom 0.1.16", 1999 | ] 2000 | 2001 | [[package]] 2002 | name = "rand_core" 2003 | version = "0.6.4" 2004 | source = "registry+https://github.com/rust-lang/crates.io-index" 2005 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 2006 | dependencies = [ 2007 | "getrandom 0.2.12", 2008 | ] 2009 | 2010 | [[package]] 2011 | name = "rand_distr" 2012 | version = "0.4.3" 2013 | source = "registry+https://github.com/rust-lang/crates.io-index" 2014 | checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" 2015 | dependencies = [ 2016 | "num-traits", 2017 | "rand 0.8.5", 2018 | ] 2019 | 2020 | [[package]] 2021 | name = "rand_hc" 2022 | version = "0.1.0" 2023 | source = "registry+https://github.com/rust-lang/crates.io-index" 2024 | checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" 2025 | dependencies = [ 2026 | "rand_core 0.3.1", 2027 | ] 2028 | 2029 | [[package]] 2030 | name = "rand_hc" 2031 | version = "0.2.0" 2032 | source = "registry+https://github.com/rust-lang/crates.io-index" 2033 | checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" 2034 | dependencies = [ 2035 | "rand_core 0.5.1", 2036 | ] 2037 | 2038 | [[package]] 2039 | name = "rand_isaac" 2040 | version = "0.1.1" 2041 | source = "registry+https://github.com/rust-lang/crates.io-index" 2042 | checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" 2043 | dependencies = [ 2044 | "rand_core 0.3.1", 2045 | ] 2046 | 2047 | [[package]] 2048 | name = "rand_jitter" 2049 | version = "0.1.4" 2050 | source = "registry+https://github.com/rust-lang/crates.io-index" 2051 | checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b" 2052 | dependencies = [ 2053 | "libc", 2054 | "rand_core 0.4.2", 2055 | "winapi", 2056 | ] 2057 | 2058 | [[package]] 2059 | name = "rand_os" 2060 | version = "0.1.3" 2061 | source = "registry+https://github.com/rust-lang/crates.io-index" 2062 | checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" 2063 | dependencies = [ 2064 | "cloudabi", 2065 | "fuchsia-cprng", 2066 | "libc", 2067 | "rand_core 0.4.2", 2068 | "rdrand", 2069 | "winapi", 2070 | ] 2071 | 2072 | [[package]] 2073 | name = "rand_pcg" 2074 | version = "0.1.2" 2075 | source = "registry+https://github.com/rust-lang/crates.io-index" 2076 | checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" 2077 | dependencies = [ 2078 | "autocfg 0.1.8", 2079 | "rand_core 0.4.2", 2080 | ] 2081 | 2082 | [[package]] 2083 | name = "rand_xorshift" 2084 | version = "0.1.1" 2085 | source = "registry+https://github.com/rust-lang/crates.io-index" 2086 | checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" 2087 | dependencies = [ 2088 | "rand_core 0.3.1", 2089 | ] 2090 | 2091 | [[package]] 2092 | name = "rawpointer" 2093 | version = "0.2.1" 2094 | source = "registry+https://github.com/rust-lang/crates.io-index" 2095 | checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" 2096 | 2097 | [[package]] 2098 | name = "rayon" 2099 | version = "1.8.1" 2100 | source = "registry+https://github.com/rust-lang/crates.io-index" 2101 | checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051" 2102 | dependencies = [ 2103 | "either", 2104 | "rayon-core", 2105 | ] 2106 | 2107 | [[package]] 2108 | name = "rayon-core" 2109 | version = "1.12.1" 2110 | source = "registry+https://github.com/rust-lang/crates.io-index" 2111 | checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" 2112 | dependencies = [ 2113 | "crossbeam-deque", 2114 | "crossbeam-utils", 2115 | ] 2116 | 2117 | [[package]] 2118 | name = "rdrand" 2119 | version = "0.4.0" 2120 | source = "registry+https://github.com/rust-lang/crates.io-index" 2121 | checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" 2122 | dependencies = [ 2123 | "rand_core 0.3.1", 2124 | ] 2125 | 2126 | [[package]] 2127 | name = "redox_syscall" 2128 | version = "0.1.57" 2129 | source = "registry+https://github.com/rust-lang/crates.io-index" 2130 | checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" 2131 | 2132 | [[package]] 2133 | name = "redox_syscall" 2134 | version = "0.4.1" 2135 | source = "registry+https://github.com/rust-lang/crates.io-index" 2136 | checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" 2137 | dependencies = [ 2138 | "bitflags 1.3.2", 2139 | ] 2140 | 2141 | [[package]] 2142 | name = "regalloc2" 2143 | version = "0.5.1" 2144 | source = "registry+https://github.com/rust-lang/crates.io-index" 2145 | checksum = "300d4fbfb40c1c66a78ba3ddd41c1110247cf52f97b87d0f2fc9209bd49b030c" 2146 | dependencies = [ 2147 | "fxhash", 2148 | "log", 2149 | "slice-group-by", 2150 | "smallvec", 2151 | ] 2152 | 2153 | [[package]] 2154 | name = "regex" 2155 | version = "1.10.3" 2156 | source = "registry+https://github.com/rust-lang/crates.io-index" 2157 | checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15" 2158 | dependencies = [ 2159 | "aho-corasick", 2160 | "memchr", 2161 | "regex-automata", 2162 | "regex-syntax", 2163 | ] 2164 | 2165 | [[package]] 2166 | name = "regex-automata" 2167 | version = "0.4.5" 2168 | source = "registry+https://github.com/rust-lang/crates.io-index" 2169 | checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd" 2170 | dependencies = [ 2171 | "aho-corasick", 2172 | "memchr", 2173 | "regex-syntax", 2174 | ] 2175 | 2176 | [[package]] 2177 | name = "regex-syntax" 2178 | version = "0.8.2" 2179 | source = "registry+https://github.com/rust-lang/crates.io-index" 2180 | checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" 2181 | 2182 | [[package]] 2183 | name = "region" 2184 | version = "3.0.0" 2185 | source = "registry+https://github.com/rust-lang/crates.io-index" 2186 | checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" 2187 | dependencies = [ 2188 | "bitflags 1.3.2", 2189 | "libc", 2190 | "mach", 2191 | "winapi", 2192 | ] 2193 | 2194 | [[package]] 2195 | name = "rend" 2196 | version = "0.4.2" 2197 | source = "registry+https://github.com/rust-lang/crates.io-index" 2198 | checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" 2199 | dependencies = [ 2200 | "bytecheck", 2201 | ] 2202 | 2203 | [[package]] 2204 | name = "rkyv" 2205 | version = "0.7.44" 2206 | source = "registry+https://github.com/rust-lang/crates.io-index" 2207 | checksum = "5cba464629b3394fc4dbc6f940ff8f5b4ff5c7aef40f29166fd4ad12acbc99c0" 2208 | dependencies = [ 2209 | "bitvec", 2210 | "bytecheck", 2211 | "bytes", 2212 | "hashbrown 0.12.3", 2213 | "indexmap 1.9.3", 2214 | "ptr_meta", 2215 | "rend", 2216 | "rkyv_derive", 2217 | "seahash", 2218 | "tinyvec", 2219 | "uuid", 2220 | ] 2221 | 2222 | [[package]] 2223 | name = "rkyv_derive" 2224 | version = "0.7.44" 2225 | source = "registry+https://github.com/rust-lang/crates.io-index" 2226 | checksum = "a7dddfff8de25e6f62b9d64e6e432bf1c6736c57d20323e15ee10435fbda7c65" 2227 | dependencies = [ 2228 | "proc-macro2", 2229 | "quote", 2230 | "syn 1.0.109", 2231 | ] 2232 | 2233 | [[package]] 2234 | name = "rmp" 2235 | version = "0.8.12" 2236 | source = "registry+https://github.com/rust-lang/crates.io-index" 2237 | checksum = "7f9860a6cc38ed1da53456442089b4dfa35e7cedaa326df63017af88385e6b20" 2238 | dependencies = [ 2239 | "byteorder", 2240 | "num-traits", 2241 | "paste", 2242 | ] 2243 | 2244 | [[package]] 2245 | name = "rmp-serde" 2246 | version = "0.15.5" 2247 | source = "registry+https://github.com/rust-lang/crates.io-index" 2248 | checksum = "723ecff9ad04f4ad92fe1c8ca6c20d2196d9286e9c60727c4cb5511629260e9d" 2249 | dependencies = [ 2250 | "byteorder", 2251 | "rmp", 2252 | "serde", 2253 | ] 2254 | 2255 | [[package]] 2256 | name = "rusqlite" 2257 | version = "0.29.0" 2258 | source = "registry+https://github.com/rust-lang/crates.io-index" 2259 | checksum = "549b9d036d571d42e6e85d1c1425e2ac83491075078ca9a15be021c56b1641f2" 2260 | dependencies = [ 2261 | "bitflags 2.4.2", 2262 | "fallible-iterator", 2263 | "fallible-streaming-iterator", 2264 | "hashlink", 2265 | "libsqlite3-sys", 2266 | "smallvec", 2267 | ] 2268 | 2269 | [[package]] 2270 | name = "rustc-demangle" 2271 | version = "0.1.23" 2272 | source = "registry+https://github.com/rust-lang/crates.io-index" 2273 | checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" 2274 | 2275 | [[package]] 2276 | name = "rustc_version" 2277 | version = "0.4.0" 2278 | source = "registry+https://github.com/rust-lang/crates.io-index" 2279 | checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" 2280 | dependencies = [ 2281 | "semver 1.0.20", 2282 | ] 2283 | 2284 | [[package]] 2285 | name = "rustix" 2286 | version = "0.38.31" 2287 | source = "registry+https://github.com/rust-lang/crates.io-index" 2288 | checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949" 2289 | dependencies = [ 2290 | "bitflags 2.4.2", 2291 | "errno", 2292 | "libc", 2293 | "linux-raw-sys", 2294 | "windows-sys 0.52.0", 2295 | ] 2296 | 2297 | [[package]] 2298 | name = "rustversion" 2299 | version = "1.0.14" 2300 | source = "registry+https://github.com/rust-lang/crates.io-index" 2301 | checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" 2302 | 2303 | [[package]] 2304 | name = "ryu" 2305 | version = "1.0.16" 2306 | source = "registry+https://github.com/rust-lang/crates.io-index" 2307 | checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" 2308 | 2309 | [[package]] 2310 | name = "same-file" 2311 | version = "1.0.6" 2312 | source = "registry+https://github.com/rust-lang/crates.io-index" 2313 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 2314 | dependencies = [ 2315 | "winapi-util", 2316 | ] 2317 | 2318 | [[package]] 2319 | name = "scopeguard" 2320 | version = "1.2.0" 2321 | source = "registry+https://github.com/rust-lang/crates.io-index" 2322 | checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 2323 | 2324 | [[package]] 2325 | name = "seahash" 2326 | version = "4.1.0" 2327 | source = "registry+https://github.com/rust-lang/crates.io-index" 2328 | checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" 2329 | 2330 | [[package]] 2331 | name = "self_cell" 2332 | version = "1.0.3" 2333 | source = "registry+https://github.com/rust-lang/crates.io-index" 2334 | checksum = "58bf37232d3bb9a2c4e641ca2a11d83b5062066f88df7fed36c28772046d65ba" 2335 | 2336 | [[package]] 2337 | name = "semver" 2338 | version = "0.11.0" 2339 | source = "registry+https://github.com/rust-lang/crates.io-index" 2340 | checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" 2341 | dependencies = [ 2342 | "semver-parser", 2343 | ] 2344 | 2345 | [[package]] 2346 | name = "semver" 2347 | version = "1.0.20" 2348 | source = "registry+https://github.com/rust-lang/crates.io-index" 2349 | checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090" 2350 | dependencies = [ 2351 | "serde", 2352 | ] 2353 | 2354 | [[package]] 2355 | name = "semver-parser" 2356 | version = "0.10.2" 2357 | source = "registry+https://github.com/rust-lang/crates.io-index" 2358 | checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" 2359 | dependencies = [ 2360 | "pest", 2361 | ] 2362 | 2363 | [[package]] 2364 | name = "serde" 2365 | version = "1.0.166" 2366 | source = "registry+https://github.com/rust-lang/crates.io-index" 2367 | checksum = "d01b7404f9d441d3ad40e6a636a7782c377d2abdbe4fa2440e2edcc2f4f10db8" 2368 | dependencies = [ 2369 | "serde_derive", 2370 | ] 2371 | 2372 | [[package]] 2373 | name = "serde-transcode" 2374 | version = "1.1.1" 2375 | source = "registry+https://github.com/rust-lang/crates.io-index" 2376 | checksum = "590c0e25c2a5bb6e85bf5c1bce768ceb86b316e7a01bdf07d2cb4ec2271990e2" 2377 | dependencies = [ 2378 | "serde", 2379 | ] 2380 | 2381 | [[package]] 2382 | name = "serde-wasm-bindgen" 2383 | version = "0.4.5" 2384 | source = "registry+https://github.com/rust-lang/crates.io-index" 2385 | checksum = "e3b4c031cd0d9014307d82b8abf653c0290fbdaeb4c02d00c63cf52f728628bf" 2386 | dependencies = [ 2387 | "js-sys", 2388 | "serde", 2389 | "wasm-bindgen", 2390 | ] 2391 | 2392 | [[package]] 2393 | name = "serde_bytes" 2394 | version = "0.11.14" 2395 | source = "registry+https://github.com/rust-lang/crates.io-index" 2396 | checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" 2397 | dependencies = [ 2398 | "serde", 2399 | ] 2400 | 2401 | [[package]] 2402 | name = "serde_derive" 2403 | version = "1.0.166" 2404 | source = "registry+https://github.com/rust-lang/crates.io-index" 2405 | checksum = "5dd83d6dde2b6b2d466e14d9d1acce8816dedee94f735eac6395808b3483c6d6" 2406 | dependencies = [ 2407 | "proc-macro2", 2408 | "quote", 2409 | "syn 2.0.48", 2410 | ] 2411 | 2412 | [[package]] 2413 | name = "serde_json" 2414 | version = "1.0.109" 2415 | source = "registry+https://github.com/rust-lang/crates.io-index" 2416 | checksum = "cb0652c533506ad7a2e353cce269330d6afd8bdfb6d75e0ace5b35aacbd7b9e9" 2417 | dependencies = [ 2418 | "indexmap 2.2.2", 2419 | "itoa", 2420 | "ryu", 2421 | "serde", 2422 | ] 2423 | 2424 | [[package]] 2425 | name = "sha-1" 2426 | version = "0.10.1" 2427 | source = "registry+https://github.com/rust-lang/crates.io-index" 2428 | checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c" 2429 | dependencies = [ 2430 | "cfg-if 1.0.0", 2431 | "cpufeatures", 2432 | "digest", 2433 | ] 2434 | 2435 | [[package]] 2436 | name = "shared-buffer" 2437 | version = "0.1.4" 2438 | source = "registry+https://github.com/rust-lang/crates.io-index" 2439 | checksum = "f6c99835bad52957e7aa241d3975ed17c1e5f8c92026377d117a606f36b84b16" 2440 | dependencies = [ 2441 | "bytes", 2442 | "memmap2 0.6.2", 2443 | ] 2444 | 2445 | [[package]] 2446 | name = "shrinkwraprs" 2447 | version = "0.3.0" 2448 | source = "registry+https://github.com/rust-lang/crates.io-index" 2449 | checksum = "e63e6744142336dfb606fe2b068afa2e1cca1ee6a5d8377277a92945d81fa331" 2450 | dependencies = [ 2451 | "bitflags 1.3.2", 2452 | "itertools 0.8.2", 2453 | "proc-macro2", 2454 | "quote", 2455 | "syn 1.0.109", 2456 | ] 2457 | 2458 | [[package]] 2459 | name = "simba" 2460 | version = "0.5.1" 2461 | source = "registry+https://github.com/rust-lang/crates.io-index" 2462 | checksum = "8e82063457853d00243beda9952e910b82593e4b07ae9f721b9278a99a0d3d5c" 2463 | dependencies = [ 2464 | "approx", 2465 | "num-complex", 2466 | "num-traits", 2467 | "paste", 2468 | ] 2469 | 2470 | [[package]] 2471 | name = "simdutf8" 2472 | version = "0.1.4" 2473 | source = "registry+https://github.com/rust-lang/crates.io-index" 2474 | checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" 2475 | 2476 | [[package]] 2477 | name = "slab" 2478 | version = "0.4.9" 2479 | source = "registry+https://github.com/rust-lang/crates.io-index" 2480 | checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" 2481 | dependencies = [ 2482 | "autocfg 1.1.0", 2483 | ] 2484 | 2485 | [[package]] 2486 | name = "slice-group-by" 2487 | version = "0.3.1" 2488 | source = "registry+https://github.com/rust-lang/crates.io-index" 2489 | checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" 2490 | 2491 | [[package]] 2492 | name = "smallvec" 2493 | version = "1.13.1" 2494 | source = "registry+https://github.com/rust-lang/crates.io-index" 2495 | checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7" 2496 | 2497 | [[package]] 2498 | name = "stable_deref_trait" 2499 | version = "1.2.0" 2500 | source = "registry+https://github.com/rust-lang/crates.io-index" 2501 | checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" 2502 | 2503 | [[package]] 2504 | name = "statrs" 2505 | version = "0.15.0" 2506 | source = "registry+https://github.com/rust-lang/crates.io-index" 2507 | checksum = "05bdbb8e4e78216a85785a85d3ec3183144f98d0097b9281802c019bb07a6f05" 2508 | dependencies = [ 2509 | "approx", 2510 | "lazy_static", 2511 | "nalgebra", 2512 | "num-traits", 2513 | "rand 0.8.5", 2514 | ] 2515 | 2516 | [[package]] 2517 | name = "strsim" 2518 | version = "0.9.3" 2519 | source = "registry+https://github.com/rust-lang/crates.io-index" 2520 | checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" 2521 | 2522 | [[package]] 2523 | name = "strsim" 2524 | version = "0.10.0" 2525 | source = "registry+https://github.com/rust-lang/crates.io-index" 2526 | checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" 2527 | 2528 | [[package]] 2529 | name = "strum" 2530 | version = "0.18.0" 2531 | source = "registry+https://github.com/rust-lang/crates.io-index" 2532 | checksum = "57bd81eb48f4c437cadc685403cad539345bf703d78e63707418431cecd4522b" 2533 | 2534 | [[package]] 2535 | name = "strum_macros" 2536 | version = "0.18.0" 2537 | source = "registry+https://github.com/rust-lang/crates.io-index" 2538 | checksum = "87c85aa3f8ea653bfd3ddf25f7ee357ee4d204731f6aa9ad04002306f6e2774c" 2539 | dependencies = [ 2540 | "heck 0.3.3", 2541 | "proc-macro2", 2542 | "quote", 2543 | "syn 1.0.109", 2544 | ] 2545 | 2546 | [[package]] 2547 | name = "strum_macros" 2548 | version = "0.24.3" 2549 | source = "registry+https://github.com/rust-lang/crates.io-index" 2550 | checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" 2551 | dependencies = [ 2552 | "heck 0.4.1", 2553 | "proc-macro2", 2554 | "quote", 2555 | "rustversion", 2556 | "syn 1.0.109", 2557 | ] 2558 | 2559 | [[package]] 2560 | name = "subprocess" 2561 | version = "0.2.9" 2562 | source = "registry+https://github.com/rust-lang/crates.io-index" 2563 | checksum = "0c2e86926081dda636c546d8c5e641661049d7562a68f5488be4a1f7f66f6086" 2564 | dependencies = [ 2565 | "libc", 2566 | "winapi", 2567 | ] 2568 | 2569 | [[package]] 2570 | name = "subtle" 2571 | version = "2.5.0" 2572 | source = "registry+https://github.com/rust-lang/crates.io-index" 2573 | checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" 2574 | 2575 | [[package]] 2576 | name = "subtle-encoding" 2577 | version = "0.5.1" 2578 | source = "registry+https://github.com/rust-lang/crates.io-index" 2579 | checksum = "7dcb1ed7b8330c5eed5441052651dd7a12c75e2ed88f2ec024ae1fa3a5e59945" 2580 | dependencies = [ 2581 | "zeroize", 2582 | ] 2583 | 2584 | [[package]] 2585 | name = "syn" 2586 | version = "1.0.109" 2587 | source = "registry+https://github.com/rust-lang/crates.io-index" 2588 | checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" 2589 | dependencies = [ 2590 | "proc-macro2", 2591 | "quote", 2592 | "unicode-ident", 2593 | ] 2594 | 2595 | [[package]] 2596 | name = "syn" 2597 | version = "2.0.48" 2598 | source = "registry+https://github.com/rust-lang/crates.io-index" 2599 | checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" 2600 | dependencies = [ 2601 | "proc-macro2", 2602 | "quote", 2603 | "unicode-ident", 2604 | ] 2605 | 2606 | [[package]] 2607 | name = "tap" 2608 | version = "1.0.1" 2609 | source = "registry+https://github.com/rust-lang/crates.io-index" 2610 | checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" 2611 | 2612 | [[package]] 2613 | name = "target-lexicon" 2614 | version = "0.12.13" 2615 | source = "registry+https://github.com/rust-lang/crates.io-index" 2616 | checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" 2617 | 2618 | [[package]] 2619 | name = "test-fuzz" 2620 | version = "3.0.4" 2621 | source = "registry+https://github.com/rust-lang/crates.io-index" 2622 | checksum = "125df852011c4f8f31df5620f4aea38ecddb5dfb4d9bc569b30485b15ffc3d4e" 2623 | dependencies = [ 2624 | "serde", 2625 | "test-fuzz-internal", 2626 | "test-fuzz-macro", 2627 | "test-fuzz-runtime", 2628 | ] 2629 | 2630 | [[package]] 2631 | name = "test-fuzz-internal" 2632 | version = "3.0.4" 2633 | source = "registry+https://github.com/rust-lang/crates.io-index" 2634 | checksum = "58071dc2471840e9f374eeb0f6e405a31bccb3cc5d59bb4598f02cafc274b5c4" 2635 | dependencies = [ 2636 | "cargo_metadata", 2637 | "proc-macro2", 2638 | "quote", 2639 | "serde", 2640 | "strum_macros 0.24.3", 2641 | ] 2642 | 2643 | [[package]] 2644 | name = "test-fuzz-macro" 2645 | version = "3.0.4" 2646 | source = "registry+https://github.com/rust-lang/crates.io-index" 2647 | checksum = "856bbca0314c328004691b9c0639fb198ca764d1ce0e20d4dd8b78f2697c2a6f" 2648 | dependencies = [ 2649 | "darling 0.14.4", 2650 | "if_chain", 2651 | "lazy_static", 2652 | "proc-macro2", 2653 | "quote", 2654 | "subprocess", 2655 | "syn 1.0.109", 2656 | "test-fuzz-internal", 2657 | "toolchain_find", 2658 | "unzip-n", 2659 | ] 2660 | 2661 | [[package]] 2662 | name = "test-fuzz-runtime" 2663 | version = "3.0.4" 2664 | source = "registry+https://github.com/rust-lang/crates.io-index" 2665 | checksum = "303774eb17994c2ddb59c460369f4c3a55496f013380278d78eeebd2deb896ac" 2666 | dependencies = [ 2667 | "bincode", 2668 | "hex", 2669 | "num-traits", 2670 | "serde", 2671 | "sha-1", 2672 | "test-fuzz-internal", 2673 | ] 2674 | 2675 | [[package]] 2676 | name = "thiserror" 2677 | version = "1.0.56" 2678 | source = "registry+https://github.com/rust-lang/crates.io-index" 2679 | checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" 2680 | dependencies = [ 2681 | "thiserror-impl", 2682 | ] 2683 | 2684 | [[package]] 2685 | name = "thiserror-impl" 2686 | version = "1.0.56" 2687 | source = "registry+https://github.com/rust-lang/crates.io-index" 2688 | checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" 2689 | dependencies = [ 2690 | "proc-macro2", 2691 | "quote", 2692 | "syn 2.0.48", 2693 | ] 2694 | 2695 | [[package]] 2696 | name = "tinyvec" 2697 | version = "1.6.0" 2698 | source = "registry+https://github.com/rust-lang/crates.io-index" 2699 | checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" 2700 | dependencies = [ 2701 | "tinyvec_macros", 2702 | ] 2703 | 2704 | [[package]] 2705 | name = "tinyvec_macros" 2706 | version = "0.1.1" 2707 | source = "registry+https://github.com/rust-lang/crates.io-index" 2708 | checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" 2709 | 2710 | [[package]] 2711 | name = "toolchain_find" 2712 | version = "0.2.0" 2713 | source = "registry+https://github.com/rust-lang/crates.io-index" 2714 | checksum = "5e85654a10e7a07a47c6f19d93818f3f343e22927f2fa280c84f7c8042743413" 2715 | dependencies = [ 2716 | "home", 2717 | "lazy_static", 2718 | "regex", 2719 | "semver 0.11.0", 2720 | "walkdir", 2721 | ] 2722 | 2723 | [[package]] 2724 | name = "tracing" 2725 | version = "0.1.40" 2726 | source = "registry+https://github.com/rust-lang/crates.io-index" 2727 | checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" 2728 | dependencies = [ 2729 | "pin-project-lite", 2730 | "tracing-attributes", 2731 | "tracing-core", 2732 | ] 2733 | 2734 | [[package]] 2735 | name = "tracing-attributes" 2736 | version = "0.1.27" 2737 | source = "registry+https://github.com/rust-lang/crates.io-index" 2738 | checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" 2739 | dependencies = [ 2740 | "proc-macro2", 2741 | "quote", 2742 | "syn 2.0.48", 2743 | ] 2744 | 2745 | [[package]] 2746 | name = "tracing-core" 2747 | version = "0.1.32" 2748 | source = "registry+https://github.com/rust-lang/crates.io-index" 2749 | checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" 2750 | dependencies = [ 2751 | "once_cell", 2752 | ] 2753 | 2754 | [[package]] 2755 | name = "trilean" 2756 | version = "1.1.0" 2757 | source = "registry+https://github.com/rust-lang/crates.io-index" 2758 | checksum = "683ba5022fe6dbd7133cad150478ccf51bdb6d861515181e5fc6b4323d4fa424" 2759 | 2760 | [[package]] 2761 | name = "typenum" 2762 | version = "1.17.0" 2763 | source = "registry+https://github.com/rust-lang/crates.io-index" 2764 | checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" 2765 | 2766 | [[package]] 2767 | name = "ucd-trie" 2768 | version = "0.1.6" 2769 | source = "registry+https://github.com/rust-lang/crates.io-index" 2770 | checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" 2771 | 2772 | [[package]] 2773 | name = "unicode-bidi" 2774 | version = "0.3.15" 2775 | source = "registry+https://github.com/rust-lang/crates.io-index" 2776 | checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" 2777 | 2778 | [[package]] 2779 | name = "unicode-ident" 2780 | version = "1.0.12" 2781 | source = "registry+https://github.com/rust-lang/crates.io-index" 2782 | checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" 2783 | 2784 | [[package]] 2785 | name = "unicode-normalization" 2786 | version = "0.1.22" 2787 | source = "registry+https://github.com/rust-lang/crates.io-index" 2788 | checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" 2789 | dependencies = [ 2790 | "tinyvec", 2791 | ] 2792 | 2793 | [[package]] 2794 | name = "unicode-segmentation" 2795 | version = "1.11.0" 2796 | source = "registry+https://github.com/rust-lang/crates.io-index" 2797 | checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" 2798 | 2799 | [[package]] 2800 | name = "unicode-width" 2801 | version = "0.1.11" 2802 | source = "registry+https://github.com/rust-lang/crates.io-index" 2803 | checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" 2804 | 2805 | [[package]] 2806 | name = "unindent" 2807 | version = "0.1.11" 2808 | source = "registry+https://github.com/rust-lang/crates.io-index" 2809 | checksum = "e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c" 2810 | 2811 | [[package]] 2812 | name = "unzip-n" 2813 | version = "0.1.2" 2814 | source = "registry+https://github.com/rust-lang/crates.io-index" 2815 | checksum = "c2e7e85a0596447f0f2ac090e16bc4c516c6fe91771fb0c0ccf7fa3dae896b9c" 2816 | dependencies = [ 2817 | "proc-macro2", 2818 | "quote", 2819 | "syn 1.0.109", 2820 | ] 2821 | 2822 | [[package]] 2823 | name = "url" 2824 | version = "2.5.0" 2825 | source = "registry+https://github.com/rust-lang/crates.io-index" 2826 | checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" 2827 | dependencies = [ 2828 | "form_urlencoded", 2829 | "idna", 2830 | "percent-encoding", 2831 | ] 2832 | 2833 | [[package]] 2834 | name = "uuid" 2835 | version = "1.7.0" 2836 | source = "registry+https://github.com/rust-lang/crates.io-index" 2837 | checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" 2838 | 2839 | [[package]] 2840 | name = "vcpkg" 2841 | version = "0.2.15" 2842 | source = "registry+https://github.com/rust-lang/crates.io-index" 2843 | checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" 2844 | 2845 | [[package]] 2846 | name = "version_check" 2847 | version = "0.9.4" 2848 | source = "registry+https://github.com/rust-lang/crates.io-index" 2849 | checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" 2850 | 2851 | [[package]] 2852 | name = "walkdir" 2853 | version = "2.4.0" 2854 | source = "registry+https://github.com/rust-lang/crates.io-index" 2855 | checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" 2856 | dependencies = [ 2857 | "same-file", 2858 | "winapi-util", 2859 | ] 2860 | 2861 | [[package]] 2862 | name = "wasi" 2863 | version = "0.9.0+wasi-snapshot-preview1" 2864 | source = "registry+https://github.com/rust-lang/crates.io-index" 2865 | checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" 2866 | 2867 | [[package]] 2868 | name = "wasi" 2869 | version = "0.11.0+wasi-snapshot-preview1" 2870 | source = "registry+https://github.com/rust-lang/crates.io-index" 2871 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 2872 | 2873 | [[package]] 2874 | name = "wasm-bindgen" 2875 | version = "0.2.91" 2876 | source = "registry+https://github.com/rust-lang/crates.io-index" 2877 | checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f" 2878 | dependencies = [ 2879 | "cfg-if 1.0.0", 2880 | "wasm-bindgen-macro", 2881 | ] 2882 | 2883 | [[package]] 2884 | name = "wasm-bindgen-backend" 2885 | version = "0.2.91" 2886 | source = "registry+https://github.com/rust-lang/crates.io-index" 2887 | checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b" 2888 | dependencies = [ 2889 | "bumpalo", 2890 | "log", 2891 | "once_cell", 2892 | "proc-macro2", 2893 | "quote", 2894 | "syn 2.0.48", 2895 | "wasm-bindgen-shared", 2896 | ] 2897 | 2898 | [[package]] 2899 | name = "wasm-bindgen-macro" 2900 | version = "0.2.91" 2901 | source = "registry+https://github.com/rust-lang/crates.io-index" 2902 | checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed" 2903 | dependencies = [ 2904 | "quote", 2905 | "wasm-bindgen-macro-support", 2906 | ] 2907 | 2908 | [[package]] 2909 | name = "wasm-bindgen-macro-support" 2910 | version = "0.2.91" 2911 | source = "registry+https://github.com/rust-lang/crates.io-index" 2912 | checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66" 2913 | dependencies = [ 2914 | "proc-macro2", 2915 | "quote", 2916 | "syn 2.0.48", 2917 | "wasm-bindgen-backend", 2918 | "wasm-bindgen-shared", 2919 | ] 2920 | 2921 | [[package]] 2922 | name = "wasm-bindgen-shared" 2923 | version = "0.2.91" 2924 | source = "registry+https://github.com/rust-lang/crates.io-index" 2925 | checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838" 2926 | 2927 | [[package]] 2928 | name = "wasm-encoder" 2929 | version = "0.32.0" 2930 | source = "registry+https://github.com/rust-lang/crates.io-index" 2931 | checksum = "1ba64e81215916eaeb48fee292f29401d69235d62d8b8fd92a7b2844ec5ae5f7" 2932 | dependencies = [ 2933 | "leb128", 2934 | ] 2935 | 2936 | [[package]] 2937 | name = "wasmer" 2938 | version = "4.2.4" 2939 | source = "registry+https://github.com/rust-lang/crates.io-index" 2940 | checksum = "ce45cc009177ca345a6d041f9062305ad467d15e7d41494f5b81ab46d62d7a58" 2941 | dependencies = [ 2942 | "bytes", 2943 | "cfg-if 1.0.0", 2944 | "derivative", 2945 | "indexmap 1.9.3", 2946 | "js-sys", 2947 | "more-asserts", 2948 | "rustc-demangle", 2949 | "serde", 2950 | "serde-wasm-bindgen", 2951 | "shared-buffer", 2952 | "target-lexicon", 2953 | "thiserror", 2954 | "wasm-bindgen", 2955 | "wasmer-compiler", 2956 | "wasmer-compiler-cranelift", 2957 | "wasmer-derive", 2958 | "wasmer-types", 2959 | "wasmer-vm", 2960 | "wat", 2961 | "winapi", 2962 | ] 2963 | 2964 | [[package]] 2965 | name = "wasmer-compiler" 2966 | version = "4.2.4" 2967 | source = "registry+https://github.com/rust-lang/crates.io-index" 2968 | checksum = "e044f6140c844602b920deb4526aea3cc9c0d7cf23f00730bb9b2034669f522a" 2969 | dependencies = [ 2970 | "backtrace", 2971 | "bytes", 2972 | "cfg-if 1.0.0", 2973 | "enum-iterator", 2974 | "enumset", 2975 | "lazy_static", 2976 | "leb128", 2977 | "memmap2 0.5.10", 2978 | "more-asserts", 2979 | "region", 2980 | "rkyv", 2981 | "self_cell", 2982 | "shared-buffer", 2983 | "smallvec", 2984 | "thiserror", 2985 | "wasmer-types", 2986 | "wasmer-vm", 2987 | "wasmparser", 2988 | "winapi", 2989 | ] 2990 | 2991 | [[package]] 2992 | name = "wasmer-compiler-cranelift" 2993 | version = "4.2.4" 2994 | source = "registry+https://github.com/rust-lang/crates.io-index" 2995 | checksum = "32ce02358eb44a149d791c1d6648fb7f8b2f99cd55e3c4eef0474653ec8cc889" 2996 | dependencies = [ 2997 | "cranelift-codegen", 2998 | "cranelift-entity", 2999 | "cranelift-frontend", 3000 | "gimli 0.26.2", 3001 | "more-asserts", 3002 | "rayon", 3003 | "smallvec", 3004 | "target-lexicon", 3005 | "tracing", 3006 | "wasmer-compiler", 3007 | "wasmer-types", 3008 | ] 3009 | 3010 | [[package]] 3011 | name = "wasmer-derive" 3012 | version = "4.2.4" 3013 | source = "registry+https://github.com/rust-lang/crates.io-index" 3014 | checksum = "c782d80401edb08e1eba206733f7859db6c997fc5a7f5fb44edc3ecd801468f6" 3015 | dependencies = [ 3016 | "proc-macro-error", 3017 | "proc-macro2", 3018 | "quote", 3019 | "syn 1.0.109", 3020 | ] 3021 | 3022 | [[package]] 3023 | name = "wasmer-types" 3024 | version = "4.2.4" 3025 | source = "registry+https://github.com/rust-lang/crates.io-index" 3026 | checksum = "fd09e80d4d74bb9fd0ce6c3c106b1ceba1a050f9948db9d9b78ae53c172d6157" 3027 | dependencies = [ 3028 | "bytecheck", 3029 | "enum-iterator", 3030 | "enumset", 3031 | "indexmap 1.9.3", 3032 | "more-asserts", 3033 | "rkyv", 3034 | "target-lexicon", 3035 | "thiserror", 3036 | ] 3037 | 3038 | [[package]] 3039 | name = "wasmer-vm" 3040 | version = "4.2.4" 3041 | source = "registry+https://github.com/rust-lang/crates.io-index" 3042 | checksum = "bdcd8a4fd36414a7b6a003dbfbd32393bce3e155d715dd877c05c1b7a41d224d" 3043 | dependencies = [ 3044 | "backtrace", 3045 | "cc", 3046 | "cfg-if 1.0.0", 3047 | "corosensei", 3048 | "crossbeam-queue", 3049 | "dashmap", 3050 | "derivative", 3051 | "enum-iterator", 3052 | "fnv", 3053 | "indexmap 1.9.3", 3054 | "lazy_static", 3055 | "libc", 3056 | "mach", 3057 | "memoffset", 3058 | "more-asserts", 3059 | "region", 3060 | "scopeguard", 3061 | "thiserror", 3062 | "wasmer-types", 3063 | "winapi", 3064 | ] 3065 | 3066 | [[package]] 3067 | name = "wasmparser" 3068 | version = "0.95.0" 3069 | source = "registry+https://github.com/rust-lang/crates.io-index" 3070 | checksum = "f2ea896273ea99b15132414be1da01ab0d8836415083298ecaffbe308eaac87a" 3071 | dependencies = [ 3072 | "indexmap 1.9.3", 3073 | "url", 3074 | ] 3075 | 3076 | [[package]] 3077 | name = "wast" 3078 | version = "64.0.0" 3079 | source = "registry+https://github.com/rust-lang/crates.io-index" 3080 | checksum = "a259b226fd6910225aa7baeba82f9d9933b6d00f2ce1b49b80fa4214328237cc" 3081 | dependencies = [ 3082 | "leb128", 3083 | "memchr", 3084 | "unicode-width", 3085 | "wasm-encoder", 3086 | ] 3087 | 3088 | [[package]] 3089 | name = "wat" 3090 | version = "1.0.71" 3091 | source = "registry+https://github.com/rust-lang/crates.io-index" 3092 | checksum = "53253d920ab413fca1c7dc2161d601c79b4fdf631d0ba51dd4343bf9b556c3f6" 3093 | dependencies = [ 3094 | "wast", 3095 | ] 3096 | 3097 | [[package]] 3098 | name = "winapi" 3099 | version = "0.3.9" 3100 | source = "registry+https://github.com/rust-lang/crates.io-index" 3101 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 3102 | dependencies = [ 3103 | "winapi-i686-pc-windows-gnu", 3104 | "winapi-x86_64-pc-windows-gnu", 3105 | ] 3106 | 3107 | [[package]] 3108 | name = "winapi-i686-pc-windows-gnu" 3109 | version = "0.4.0" 3110 | source = "registry+https://github.com/rust-lang/crates.io-index" 3111 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 3112 | 3113 | [[package]] 3114 | name = "winapi-util" 3115 | version = "0.1.6" 3116 | source = "registry+https://github.com/rust-lang/crates.io-index" 3117 | checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" 3118 | dependencies = [ 3119 | "winapi", 3120 | ] 3121 | 3122 | [[package]] 3123 | name = "winapi-x86_64-pc-windows-gnu" 3124 | version = "0.4.0" 3125 | source = "registry+https://github.com/rust-lang/crates.io-index" 3126 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 3127 | 3128 | [[package]] 3129 | name = "windows-core" 3130 | version = "0.52.0" 3131 | source = "registry+https://github.com/rust-lang/crates.io-index" 3132 | checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" 3133 | dependencies = [ 3134 | "windows-targets 0.52.0", 3135 | ] 3136 | 3137 | [[package]] 3138 | name = "windows-sys" 3139 | version = "0.33.0" 3140 | source = "registry+https://github.com/rust-lang/crates.io-index" 3141 | checksum = "43dbb096663629518eb1dfa72d80243ca5a6aca764cae62a2df70af760a9be75" 3142 | dependencies = [ 3143 | "windows_aarch64_msvc 0.33.0", 3144 | "windows_i686_gnu 0.33.0", 3145 | "windows_i686_msvc 0.33.0", 3146 | "windows_x86_64_gnu 0.33.0", 3147 | "windows_x86_64_msvc 0.33.0", 3148 | ] 3149 | 3150 | [[package]] 3151 | name = "windows-sys" 3152 | version = "0.52.0" 3153 | source = "registry+https://github.com/rust-lang/crates.io-index" 3154 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" 3155 | dependencies = [ 3156 | "windows-targets 0.52.0", 3157 | ] 3158 | 3159 | [[package]] 3160 | name = "windows-targets" 3161 | version = "0.48.5" 3162 | source = "registry+https://github.com/rust-lang/crates.io-index" 3163 | checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" 3164 | dependencies = [ 3165 | "windows_aarch64_gnullvm 0.48.5", 3166 | "windows_aarch64_msvc 0.48.5", 3167 | "windows_i686_gnu 0.48.5", 3168 | "windows_i686_msvc 0.48.5", 3169 | "windows_x86_64_gnu 0.48.5", 3170 | "windows_x86_64_gnullvm 0.48.5", 3171 | "windows_x86_64_msvc 0.48.5", 3172 | ] 3173 | 3174 | [[package]] 3175 | name = "windows-targets" 3176 | version = "0.52.0" 3177 | source = "registry+https://github.com/rust-lang/crates.io-index" 3178 | checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" 3179 | dependencies = [ 3180 | "windows_aarch64_gnullvm 0.52.0", 3181 | "windows_aarch64_msvc 0.52.0", 3182 | "windows_i686_gnu 0.52.0", 3183 | "windows_i686_msvc 0.52.0", 3184 | "windows_x86_64_gnu 0.52.0", 3185 | "windows_x86_64_gnullvm 0.52.0", 3186 | "windows_x86_64_msvc 0.52.0", 3187 | ] 3188 | 3189 | [[package]] 3190 | name = "windows_aarch64_gnullvm" 3191 | version = "0.48.5" 3192 | source = "registry+https://github.com/rust-lang/crates.io-index" 3193 | checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" 3194 | 3195 | [[package]] 3196 | name = "windows_aarch64_gnullvm" 3197 | version = "0.52.0" 3198 | source = "registry+https://github.com/rust-lang/crates.io-index" 3199 | checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" 3200 | 3201 | [[package]] 3202 | name = "windows_aarch64_msvc" 3203 | version = "0.33.0" 3204 | source = "registry+https://github.com/rust-lang/crates.io-index" 3205 | checksum = "cd761fd3eb9ab8cc1ed81e56e567f02dd82c4c837e48ac3b2181b9ffc5060807" 3206 | 3207 | [[package]] 3208 | name = "windows_aarch64_msvc" 3209 | version = "0.48.5" 3210 | source = "registry+https://github.com/rust-lang/crates.io-index" 3211 | checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" 3212 | 3213 | [[package]] 3214 | name = "windows_aarch64_msvc" 3215 | version = "0.52.0" 3216 | source = "registry+https://github.com/rust-lang/crates.io-index" 3217 | checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" 3218 | 3219 | [[package]] 3220 | name = "windows_i686_gnu" 3221 | version = "0.33.0" 3222 | source = "registry+https://github.com/rust-lang/crates.io-index" 3223 | checksum = "cab0cf703a96bab2dc0c02c0fa748491294bf9b7feb27e1f4f96340f208ada0e" 3224 | 3225 | [[package]] 3226 | name = "windows_i686_gnu" 3227 | version = "0.48.5" 3228 | source = "registry+https://github.com/rust-lang/crates.io-index" 3229 | checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" 3230 | 3231 | [[package]] 3232 | name = "windows_i686_gnu" 3233 | version = "0.52.0" 3234 | source = "registry+https://github.com/rust-lang/crates.io-index" 3235 | checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" 3236 | 3237 | [[package]] 3238 | name = "windows_i686_msvc" 3239 | version = "0.33.0" 3240 | source = "registry+https://github.com/rust-lang/crates.io-index" 3241 | checksum = "8cfdbe89cc9ad7ce618ba34abc34bbb6c36d99e96cae2245b7943cd75ee773d0" 3242 | 3243 | [[package]] 3244 | name = "windows_i686_msvc" 3245 | version = "0.48.5" 3246 | source = "registry+https://github.com/rust-lang/crates.io-index" 3247 | checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" 3248 | 3249 | [[package]] 3250 | name = "windows_i686_msvc" 3251 | version = "0.52.0" 3252 | source = "registry+https://github.com/rust-lang/crates.io-index" 3253 | checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" 3254 | 3255 | [[package]] 3256 | name = "windows_x86_64_gnu" 3257 | version = "0.33.0" 3258 | source = "registry+https://github.com/rust-lang/crates.io-index" 3259 | checksum = "b4dd9b0c0e9ece7bb22e84d70d01b71c6d6248b81a3c60d11869451b4cb24784" 3260 | 3261 | [[package]] 3262 | name = "windows_x86_64_gnu" 3263 | version = "0.48.5" 3264 | source = "registry+https://github.com/rust-lang/crates.io-index" 3265 | checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" 3266 | 3267 | [[package]] 3268 | name = "windows_x86_64_gnu" 3269 | version = "0.52.0" 3270 | source = "registry+https://github.com/rust-lang/crates.io-index" 3271 | checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" 3272 | 3273 | [[package]] 3274 | name = "windows_x86_64_gnullvm" 3275 | version = "0.48.5" 3276 | source = "registry+https://github.com/rust-lang/crates.io-index" 3277 | checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" 3278 | 3279 | [[package]] 3280 | name = "windows_x86_64_gnullvm" 3281 | version = "0.52.0" 3282 | source = "registry+https://github.com/rust-lang/crates.io-index" 3283 | checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" 3284 | 3285 | [[package]] 3286 | name = "windows_x86_64_msvc" 3287 | version = "0.33.0" 3288 | source = "registry+https://github.com/rust-lang/crates.io-index" 3289 | checksum = "ff1e4aa646495048ec7f3ffddc411e1d829c026a2ec62b39da15c1055e406eaa" 3290 | 3291 | [[package]] 3292 | name = "windows_x86_64_msvc" 3293 | version = "0.48.5" 3294 | source = "registry+https://github.com/rust-lang/crates.io-index" 3295 | checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" 3296 | 3297 | [[package]] 3298 | name = "windows_x86_64_msvc" 3299 | version = "0.52.0" 3300 | source = "registry+https://github.com/rust-lang/crates.io-index" 3301 | checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" 3302 | 3303 | [[package]] 3304 | name = "wyz" 3305 | version = "0.5.1" 3306 | source = "registry+https://github.com/rust-lang/crates.io-index" 3307 | checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" 3308 | dependencies = [ 3309 | "tap", 3310 | ] 3311 | 3312 | [[package]] 3313 | name = "zerocopy" 3314 | version = "0.7.32" 3315 | source = "registry+https://github.com/rust-lang/crates.io-index" 3316 | checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" 3317 | dependencies = [ 3318 | "zerocopy-derive", 3319 | ] 3320 | 3321 | [[package]] 3322 | name = "zerocopy-derive" 3323 | version = "0.7.32" 3324 | source = "registry+https://github.com/rust-lang/crates.io-index" 3325 | checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" 3326 | dependencies = [ 3327 | "proc-macro2", 3328 | "quote", 3329 | "syn 2.0.48", 3330 | ] 3331 | 3332 | [[package]] 3333 | name = "zeroize" 3334 | version = "1.7.0" 3335 | source = "registry+https://github.com/rust-lang/crates.io-index" 3336 | checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" 3337 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "holochain-serialization" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | [lib] 7 | name = "holochain_serialization" 8 | crate-type = ["cdylib"] 9 | 10 | [dependencies] 11 | pyo3 = "0.19.0" 12 | holo_hash = "0.2.6" 13 | holochain_zome_types = "0.2.6" 14 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![Project](https://img.shields.io/badge/Project-Holochain-blue.svg?style=flat-square)](http://holochain.org/) 2 | [![Discord](https://img.shields.io/badge/Discord-DEV.HC-blue.svg?style=flat-square)](https://discord.gg/k55DS5dmPH) 3 | [![License: CAL 1.0](https://img.shields.io/badge/License-CAL%201.0-blue.svg)](https://github.com/holochain/cryptographic-autonomy-license) 4 | [![Twitter Follow](https://img.shields.io/twitter/follow/holochain.svg?style=social&label=Follow)](https://twitter.com/holochain) 5 | 6 | # Holochain Serialization - Python 7 | 8 | This project was generated using `maturin`, following the instructions given by [`Pyo3`](https://github.com/PyO3/pyo3). 9 | 10 | ### Set up a development environment 11 | 12 | The developer environment for this project relies on Holonix, which you can find out more about in the Holochain [getting started guide](https://developer.holochain.org/get-started/). Once you have Nix installed, you can create a new development environment by entering the following command into your shell at the root of this project: 13 | 14 | ```bash 15 | nix develop 16 | ``` 17 | 18 | Then once the Nix shell has spawned, create a virtual environment and install dependencies: 19 | 20 | ```bash 21 | python -m venv .venv 22 | source .venv/bin/activate 23 | pip install . 24 | ``` 25 | 26 | ### Verify changes 27 | 28 | You can compile this Python module and the Rust code in one step with: 29 | 30 | ```bash 31 | maturin develop 32 | ``` 33 | 34 | This will end up placing the module in your `.venv`'s site_packages (something like `.venv/lib/python3.11/site-packages/holochain_serialization`). You can then run the test script to verify that you haven't broken anything with: 35 | 36 | ```bash 37 | python test.py 38 | ``` 39 | 40 | You may of course have broken that check because if you change the input in any way, you will change the hashes that being output and checked against the currently expected values. 41 | -------------------------------------------------------------------------------- /flake.lock: -------------------------------------------------------------------------------- 1 | { 2 | "nodes": { 3 | "cargo-chef": { 4 | "flake": false, 5 | "locked": { 6 | "lastModified": 1672901199, 7 | "narHash": "sha256-MHTuR4aQ1rQaBKx1vWDy2wbvcT0ZAzpkVB2zylSC+k0=", 8 | "owner": "LukeMathWalker", 9 | "repo": "cargo-chef", 10 | "rev": "5c9f11578a2e0783cce27666737d50f84510b8b5", 11 | "type": "github" 12 | }, 13 | "original": { 14 | "owner": "LukeMathWalker", 15 | "ref": "main", 16 | "repo": "cargo-chef", 17 | "type": "github" 18 | } 19 | }, 20 | "cargo-rdme": { 21 | "flake": false, 22 | "locked": { 23 | "lastModified": 1675118998, 24 | "narHash": "sha256-lrYWqu3h88fr8gG3Yo5GbFGYaq5/1Os7UtM+Af0Bg4k=", 25 | "owner": "orium", 26 | "repo": "cargo-rdme", 27 | "rev": "f9dbb6bccc078f4869f45ae270a2890ac9a75877", 28 | "type": "github" 29 | }, 30 | "original": { 31 | "owner": "orium", 32 | "ref": "v1.1.0", 33 | "repo": "cargo-rdme", 34 | "type": "github" 35 | } 36 | }, 37 | "crane": { 38 | "inputs": { 39 | "flake-compat": "flake-compat", 40 | "flake-utils": "flake-utils", 41 | "nixpkgs": [ 42 | "holochain", 43 | "nixpkgs" 44 | ], 45 | "rust-overlay": "rust-overlay" 46 | }, 47 | "locked": { 48 | "lastModified": 1675475924, 49 | "narHash": "sha256-KWdfV9a6+zG6Ij/7PZYLnomjBZZUu8gdRy+hfjGrrJQ=", 50 | "owner": "ipetkov", 51 | "repo": "crane", 52 | "rev": "1bde9c762ebf26de9f8ecf502357c92105bc4577", 53 | "type": "github" 54 | }, 55 | "original": { 56 | "owner": "ipetkov", 57 | "repo": "crane", 58 | "type": "github" 59 | } 60 | }, 61 | "crate2nix": { 62 | "flake": false, 63 | "locked": { 64 | "lastModified": 1693149153, 65 | "narHash": "sha256-HUszQcnIal1FFRAWraODDbxTp0HECwczRTD+Zf0v9o0=", 66 | "owner": "kolloch", 67 | "repo": "crate2nix", 68 | "rev": "8749f46953b46d44fd181b002399e4a20371f323", 69 | "type": "github" 70 | }, 71 | "original": { 72 | "owner": "kolloch", 73 | "repo": "crate2nix", 74 | "type": "github" 75 | } 76 | }, 77 | "empty": { 78 | "flake": false, 79 | "locked": { 80 | "lastModified": 1683792623, 81 | "narHash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=", 82 | "owner": "steveej", 83 | "repo": "empty", 84 | "rev": "8e328e450e4cd32e072eba9e99fe92cf2a1ef5cf", 85 | "type": "github" 86 | }, 87 | "original": { 88 | "owner": "steveej", 89 | "repo": "empty", 90 | "type": "github" 91 | } 92 | }, 93 | "flake-compat": { 94 | "flake": false, 95 | "locked": { 96 | "lastModified": 1673956053, 97 | "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", 98 | "owner": "edolstra", 99 | "repo": "flake-compat", 100 | "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", 101 | "type": "github" 102 | }, 103 | "original": { 104 | "owner": "edolstra", 105 | "repo": "flake-compat", 106 | "type": "github" 107 | } 108 | }, 109 | "flake-compat_2": { 110 | "flake": false, 111 | "locked": { 112 | "lastModified": 1673956053, 113 | "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", 114 | "owner": "edolstra", 115 | "repo": "flake-compat", 116 | "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", 117 | "type": "github" 118 | }, 119 | "original": { 120 | "owner": "edolstra", 121 | "repo": "flake-compat", 122 | "type": "github" 123 | } 124 | }, 125 | "flake-parts": { 126 | "inputs": { 127 | "nixpkgs-lib": "nixpkgs-lib" 128 | }, 129 | "locked": { 130 | "lastModified": 1675295133, 131 | "narHash": "sha256-dU8fuLL98WFXG0VnRgM00bqKX6CEPBLybhiIDIgO45o=", 132 | "owner": "hercules-ci", 133 | "repo": "flake-parts", 134 | "rev": "bf53492df08f3178ce85e0c9df8ed8d03c030c9f", 135 | "type": "github" 136 | }, 137 | "original": { 138 | "id": "flake-parts", 139 | "type": "indirect" 140 | } 141 | }, 142 | "flake-utils": { 143 | "locked": { 144 | "lastModified": 1667395993, 145 | "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", 146 | "owner": "numtide", 147 | "repo": "flake-utils", 148 | "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", 149 | "type": "github" 150 | }, 151 | "original": { 152 | "owner": "numtide", 153 | "repo": "flake-utils", 154 | "type": "github" 155 | } 156 | }, 157 | "flake-utils_2": { 158 | "inputs": { 159 | "systems": "systems" 160 | }, 161 | "locked": { 162 | "lastModified": 1705309234, 163 | "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", 164 | "owner": "numtide", 165 | "repo": "flake-utils", 166 | "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", 167 | "type": "github" 168 | }, 169 | "original": { 170 | "owner": "numtide", 171 | "repo": "flake-utils", 172 | "type": "github" 173 | } 174 | }, 175 | "holochain": { 176 | "inputs": { 177 | "cargo-chef": "cargo-chef", 178 | "cargo-rdme": "cargo-rdme", 179 | "crane": "crane", 180 | "crate2nix": "crate2nix", 181 | "empty": "empty", 182 | "flake-compat": "flake-compat_2", 183 | "flake-parts": "flake-parts", 184 | "holochain": [ 185 | "holochain", 186 | "empty" 187 | ], 188 | "lair": [ 189 | "holochain", 190 | "empty" 191 | ], 192 | "launcher": [ 193 | "holochain", 194 | "empty" 195 | ], 196 | "nix-filter": "nix-filter", 197 | "nixpkgs": "nixpkgs", 198 | "pre-commit-hooks-nix": "pre-commit-hooks-nix", 199 | "repo-git": "repo-git", 200 | "rust-overlay": "rust-overlay_2", 201 | "scaffolding": [ 202 | "holochain", 203 | "empty" 204 | ], 205 | "versions": [ 206 | "versions" 207 | ] 208 | }, 209 | "locked": { 210 | "lastModified": 1707287589, 211 | "narHash": "sha256-5+PKdLExrZS31F5gcm0HxKt82g2rAuEkGEJz6vGOwaw=", 212 | "owner": "holochain", 213 | "repo": "holochain", 214 | "rev": "5d75871802ff96ca0404c71ee330098f5d2fe38f", 215 | "type": "github" 216 | }, 217 | "original": { 218 | "owner": "holochain", 219 | "repo": "holochain", 220 | "type": "github" 221 | } 222 | }, 223 | "holochain_2": { 224 | "flake": false, 225 | "locked": { 226 | "lastModified": 1706706193, 227 | "narHash": "sha256-7C7+Jx5J7jmSw6RMMvFqq/2ArrzKkxSUWX3bUxyXI7s=", 228 | "owner": "holochain", 229 | "repo": "holochain", 230 | "rev": "ae7db8f93f768d93dbb64d8650ce17eb5371251d", 231 | "type": "github" 232 | }, 233 | "original": { 234 | "owner": "holochain", 235 | "ref": "holochain-0.2.6", 236 | "repo": "holochain", 237 | "type": "github" 238 | } 239 | }, 240 | "lair": { 241 | "flake": false, 242 | "locked": { 243 | "lastModified": 1706550351, 244 | "narHash": "sha256-psVjtb+zj0pZnHTj1xNP2pGBd5Ua1cSwdOAdYdUe3yQ=", 245 | "owner": "holochain", 246 | "repo": "lair", 247 | "rev": "b11e65eff11c8ac3bf938607946f5c7201298a65", 248 | "type": "github" 249 | }, 250 | "original": { 251 | "owner": "holochain", 252 | "ref": "lair_keystore-v0.4.2", 253 | "repo": "lair", 254 | "type": "github" 255 | } 256 | }, 257 | "launcher": { 258 | "flake": false, 259 | "locked": { 260 | "lastModified": 1684183666, 261 | "narHash": "sha256-rOE/W/BBYyZKOyypKb8X9Vpc4ty1TNRoI/fV5+01JPw=", 262 | "owner": "holochain", 263 | "repo": "launcher", 264 | "rev": "75ecdd0aa191ed830cc209a984a6030e656042ff", 265 | "type": "github" 266 | }, 267 | "original": { 268 | "owner": "holochain", 269 | "ref": "holochain-0.2", 270 | "repo": "launcher", 271 | "type": "github" 272 | } 273 | }, 274 | "nix-filter": { 275 | "locked": { 276 | "lastModified": 1675361037, 277 | "narHash": "sha256-CTbDuDxFD3U3g/dWUB+r+B/snIe+qqP1R+1myuFGe2I=", 278 | "owner": "numtide", 279 | "repo": "nix-filter", 280 | "rev": "e1b2f96c2a31415f362268bc48c3fccf47dff6eb", 281 | "type": "github" 282 | }, 283 | "original": { 284 | "owner": "numtide", 285 | "repo": "nix-filter", 286 | "type": "github" 287 | } 288 | }, 289 | "nixpkgs": { 290 | "locked": { 291 | "lastModified": 1707092692, 292 | "narHash": "sha256-ZbHsm+mGk/izkWtT4xwwqz38fdlwu7nUUKXTOmm4SyE=", 293 | "owner": "NixOS", 294 | "repo": "nixpkgs", 295 | "rev": "faf912b086576fd1a15fca610166c98d47bc667e", 296 | "type": "github" 297 | }, 298 | "original": { 299 | "id": "nixpkgs", 300 | "ref": "nixos-unstable", 301 | "type": "indirect" 302 | } 303 | }, 304 | "nixpkgs-lib": { 305 | "locked": { 306 | "dir": "lib", 307 | "lastModified": 1675183161, 308 | "narHash": "sha256-Zq8sNgAxDckpn7tJo7V1afRSk2eoVbu3OjI1QklGLNg=", 309 | "owner": "NixOS", 310 | "repo": "nixpkgs", 311 | "rev": "e1e1b192c1a5aab2960bf0a0bd53a2e8124fa18e", 312 | "type": "github" 313 | }, 314 | "original": { 315 | "dir": "lib", 316 | "owner": "NixOS", 317 | "ref": "nixos-unstable", 318 | "repo": "nixpkgs", 319 | "type": "github" 320 | } 321 | }, 322 | "pre-commit-hooks-nix": { 323 | "flake": false, 324 | "locked": { 325 | "lastModified": 1676513100, 326 | "narHash": "sha256-MK39nQV86L2ag4TmcK5/+r1ULpzRLPbbfvWbPvIoYJE=", 327 | "owner": "cachix", 328 | "repo": "pre-commit-hooks.nix", 329 | "rev": "5f0cba88ac4d6dd8cad5c6f6f1540b3d6a21a798", 330 | "type": "github" 331 | }, 332 | "original": { 333 | "owner": "cachix", 334 | "repo": "pre-commit-hooks.nix", 335 | "type": "github" 336 | } 337 | }, 338 | "repo-git": { 339 | "flake": false, 340 | "locked": { 341 | "narHash": "sha256-d6xi4mKdjkX2JFicDIv5niSzpyI0m/Hnm8GGAIU04kY=", 342 | "type": "file", 343 | "url": "file:/dev/null" 344 | }, 345 | "original": { 346 | "type": "file", 347 | "url": "file:/dev/null" 348 | } 349 | }, 350 | "root": { 351 | "inputs": { 352 | "holochain": "holochain", 353 | "nixpkgs": [ 354 | "holochain", 355 | "nixpkgs" 356 | ], 357 | "versions": "versions" 358 | } 359 | }, 360 | "rust-overlay": { 361 | "inputs": { 362 | "flake-utils": [ 363 | "holochain", 364 | "crane", 365 | "flake-utils" 366 | ], 367 | "nixpkgs": [ 368 | "holochain", 369 | "crane", 370 | "nixpkgs" 371 | ] 372 | }, 373 | "locked": { 374 | "lastModified": 1675391458, 375 | "narHash": "sha256-ukDKZw922BnK5ohL9LhwtaDAdCsJL7L6ScNEyF1lO9w=", 376 | "owner": "oxalica", 377 | "repo": "rust-overlay", 378 | "rev": "383a4acfd11d778d5c2efcf28376cbd845eeaedf", 379 | "type": "github" 380 | }, 381 | "original": { 382 | "owner": "oxalica", 383 | "repo": "rust-overlay", 384 | "type": "github" 385 | } 386 | }, 387 | "rust-overlay_2": { 388 | "inputs": { 389 | "flake-utils": "flake-utils_2", 390 | "nixpkgs": [ 391 | "holochain", 392 | "nixpkgs" 393 | ] 394 | }, 395 | "locked": { 396 | "lastModified": 1707271822, 397 | "narHash": "sha256-/DZsoPH5GBzOpVEGz5PgJ7vh8Q6TcrJq5u8FcBjqAfI=", 398 | "owner": "oxalica", 399 | "repo": "rust-overlay", 400 | "rev": "7a94fe7690d2bdfe1aab475382a505e14dc114a6", 401 | "type": "github" 402 | }, 403 | "original": { 404 | "owner": "oxalica", 405 | "repo": "rust-overlay", 406 | "type": "github" 407 | } 408 | }, 409 | "scaffolding": { 410 | "flake": false, 411 | "locked": { 412 | "lastModified": 1705076186, 413 | "narHash": "sha256-O914XeBuFulky5RqTOvsog+fbO12v0ppW+mIdO6lvKU=", 414 | "owner": "holochain", 415 | "repo": "scaffolding", 416 | "rev": "42e025fe23ac0b4cd659d95e6752d2d300a8d076", 417 | "type": "github" 418 | }, 419 | "original": { 420 | "owner": "holochain", 421 | "ref": "holochain-0.2", 422 | "repo": "scaffolding", 423 | "type": "github" 424 | } 425 | }, 426 | "systems": { 427 | "locked": { 428 | "lastModified": 1681028828, 429 | "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 430 | "owner": "nix-systems", 431 | "repo": "default", 432 | "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 433 | "type": "github" 434 | }, 435 | "original": { 436 | "owner": "nix-systems", 437 | "repo": "default", 438 | "type": "github" 439 | } 440 | }, 441 | "versions": { 442 | "inputs": { 443 | "holochain": "holochain_2", 444 | "lair": "lair", 445 | "launcher": "launcher", 446 | "scaffolding": "scaffolding" 447 | }, 448 | "locked": { 449 | "dir": "versions/0_2", 450 | "lastModified": 1707287589, 451 | "narHash": "sha256-5+PKdLExrZS31F5gcm0HxKt82g2rAuEkGEJz6vGOwaw=", 452 | "owner": "holochain", 453 | "repo": "holochain", 454 | "rev": "5d75871802ff96ca0404c71ee330098f5d2fe38f", 455 | "type": "github" 456 | }, 457 | "original": { 458 | "dir": "versions/0_2", 459 | "owner": "holochain", 460 | "repo": "holochain", 461 | "type": "github" 462 | } 463 | } 464 | }, 465 | "root": "root", 466 | "version": 7 467 | } 468 | -------------------------------------------------------------------------------- /flake.nix: -------------------------------------------------------------------------------- 1 | { 2 | description = "Flake for Holochain library development"; 3 | 4 | inputs = { 5 | versions.url = "github:holochain/holochain?dir=versions/0_2"; 6 | 7 | versions.inputs.holochain.url = "github:holochain/holochain/holochain-0.2.5"; 8 | 9 | holochain = { 10 | url = "github:holochain/holochain"; 11 | inputs.versions.follows = "versions"; 12 | }; 13 | 14 | nixpkgs.follows = "holochain/nixpkgs"; 15 | }; 16 | 17 | outputs = inputs @ { ... }: 18 | inputs.holochain.inputs.flake-parts.lib.mkFlake { inherit inputs; } 19 | { 20 | systems = builtins.attrNames inputs.holochain.devShells; 21 | perSystem = { config, pkgs, system, ... }: { 22 | devShells.default = pkgs.mkShell { 23 | inputsFrom = [ 24 | inputs.holochain.devShells.${system}.holonix 25 | ]; 26 | packages = [ 27 | (pkgs.python3.withPackages (python-pkgs: [ 28 | python-pkgs.pip 29 | ])) 30 | ]; 31 | }; 32 | }; 33 | }; 34 | } 35 | -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- 1 | [build-system] 2 | requires = ["maturin>=1.4,<2.0"] 3 | build-backend = "maturin" 4 | 5 | [project] 6 | name = "holochain-serialization" 7 | requires-python = ">=3.8" 8 | classifiers = [ 9 | "Programming Language :: Rust", 10 | "Programming Language :: Python :: Implementation :: CPython", 11 | "Programming Language :: Python :: Implementation :: PyPy", 12 | ] 13 | dynamic = ["version"] 14 | 15 | [tool.maturin] 16 | features = ["pyo3/extension-module"] 17 | 18 | [dependencies] 19 | maturin = "^1.4.0" 20 | -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- 1 | use holo_hash::{AgentPubKey, DnaHash}; 2 | use holochain_zome_types::{prelude::ZomeCallUnsigned, CapSecret, CellId, ExternIO, Nonce256Bits, Timestamp, CAP_SECRET_BYTES}; 3 | use pyo3::prelude::*; 4 | 5 | // A Python class to represent holochain_zome_types::ZomeCallUnsigned but with types that can be passed from Python to Rust easily. There is 6 | // a TryFrom implementation to convert this struct to the real ZomeCallUnsigned struct. 7 | #[pyclass] 8 | #[derive(Clone)] 9 | struct ZomeCallUnsignedPy { 10 | provenance: Vec, 11 | cell_id_dna_hash: Vec, 12 | cell_id_agent_pub_key: Vec, 13 | zome_name: String, 14 | fn_name: String, 15 | cap_secret: Option>, 16 | payload: Vec, 17 | nonce: Vec, 18 | expires_at: i64, 19 | } 20 | 21 | #[pymethods] 22 | impl ZomeCallUnsignedPy { 23 | /// Constructor for ZomeCallUnsignedPy that can be called like __init__ from Python. 24 | #[new] 25 | fn new( 26 | provenance: Vec, 27 | cell_id_dna_hash: Vec, 28 | cell_id_agent_pub_key: Vec, 29 | zome_name: String, 30 | fn_name: String, 31 | payload: Vec, 32 | nonce: Vec, 33 | expires_at: i64, 34 | cap_secret: Option>, 35 | ) -> Self { 36 | ZomeCallUnsignedPy { 37 | provenance, 38 | cell_id_dna_hash, 39 | cell_id_agent_pub_key, 40 | zome_name, 41 | fn_name, 42 | cap_secret, 43 | payload, 44 | nonce, 45 | expires_at, 46 | } 47 | } 48 | } 49 | 50 | impl TryFrom for ZomeCallUnsigned { 51 | type Error = PyErr; 52 | 53 | fn try_from(zome_call_unsigned_py: ZomeCallUnsignedPy) -> PyResult { 54 | let provenance: holo_hash::HoloHash = 55 | AgentPubKey::from_raw_39(zome_call_unsigned_py.provenance.into()) 56 | .map_err(|e| { 57 | PyErr::new::(format!("Error converting agent key for provenance: {:?}", e)) 58 | })?; 59 | 60 | let dna_hash = DnaHash::from_raw_39(zome_call_unsigned_py.cell_id_dna_hash.into()) 61 | .map_err(|e| PyErr::new::(format!("Error converting dna hash for cell id: {:?}", e)))?; 62 | 63 | let agent_pubkey = 64 | AgentPubKey::from_raw_39(zome_call_unsigned_py.cell_id_agent_pub_key.into()) 65 | .map_err(|e| { 66 | PyErr::new::(format!("Error converting agent pub key for cell id: {:?}", e)) 67 | })?; 68 | 69 | let cap_secret: Option = match zome_call_unsigned_py.cap_secret { 70 | None => None, 71 | Some(cap_secret_bytes) => { 72 | let sized_cap_secret: [u8; CAP_SECRET_BYTES] = cap_secret_bytes.as_slice().try_into().map_err(|e| { 73 | PyErr::new::(format!("Error converting cap secret: {:?}", e)) 74 | })?; 75 | Some(sized_cap_secret.into()) 76 | } 77 | }; 78 | 79 | let sized_nonce: [u8; 32] = zome_call_unsigned_py.nonce.try_into().map_err(|e| { 80 | PyErr::new::(format!("Error converting nonce: {:?}", e)) 81 | })?; 82 | let nonce: Nonce256Bits = sized_nonce.into(); 83 | 84 | Ok(ZomeCallUnsigned { 85 | provenance, 86 | cell_id: CellId::new(dna_hash, agent_pubkey), 87 | zome_name: zome_call_unsigned_py.zome_name.into(), 88 | fn_name: zome_call_unsigned_py.fn_name.into(), 89 | cap_secret, 90 | payload: ExternIO(zome_call_unsigned_py.payload), 91 | nonce, 92 | expires_at: Timestamp(zome_call_unsigned_py.expires_at), 93 | }) 94 | } 95 | } 96 | 97 | /// Serialize the contents of a ZomeCallUnsigned to a byte array and then compute a hash of the result. The resulting byte array is returned. 98 | /// 99 | /// You can find the Holochain implementation [here](https://github.com/holochain/holochain/blob/develop/crates/holochain_zome_types/src/zome_io.rs#L260) 100 | /// which is what this code is calling. 101 | #[pyfunction] 102 | fn get_data_to_sign(zome_call_unsigned: ZomeCallUnsignedPy) -> PyResult> { 103 | let zome_call_unsigned: ZomeCallUnsigned = zome_call_unsigned.try_into()?; 104 | let data_to_sign = zome_call_unsigned 105 | .data_to_sign() 106 | .map_err(|e| PyErr::new::(format!("Error: {:?}", e)))?; 107 | Ok(data_to_sign.into_iter().cloned().collect()) 108 | } 109 | 110 | /// Holochain serialization exposed as a Python module. 111 | #[pymodule] 112 | fn holochain_serialization(_py: Python, m: &PyModule) -> PyResult<()> { 113 | m.add_class::()?; 114 | m.add_function(wrap_pyfunction!(get_data_to_sign, m)?)?; 115 | Ok(()) 116 | } 117 | -------------------------------------------------------------------------------- /test.py: -------------------------------------------------------------------------------- 1 | import holochain_serialization 2 | 3 | if __name__ == "__main__": 4 | provenance = [132, 32, 36,] + [0] * 36 5 | dna_hash = [132, 45, 36] + [0] * 36 6 | agent_pub_key = [132, 32, 36,] + [0] * 36 7 | zome_name = "test" 8 | fn_name = "test" 9 | payload = [0] * 10 10 | nonce = [0] * 32 11 | expires_at = int(55) # Not valid, but want a predictable value for the hash 12 | 13 | zome_call_unsigned = holochain_serialization.ZomeCallUnsignedPy(provenance, dna_hash, agent_pub_key, zome_name, fn_name, payload, nonce, expires_at) 14 | data = holochain_serialization.get_data_to_sign(zome_call_unsigned) 15 | assert data == [16, 212, 254, 166, 94, 173, 226, 249, 219, 188, 104, 154, 154, 224, 156, 247, 195, 147, 157, 55, 16, 132, 51, 102, 178, 72, 130, 57, 125, 214, 200, 27] 16 | 17 | cap_secret = [0] * 64 18 | zome_call_unsigned = holochain_serialization.ZomeCallUnsignedPy(provenance, dna_hash, agent_pub_key, zome_name, fn_name, payload, nonce, expires_at, cap_secret=cap_secret) 19 | data = holochain_serialization.get_data_to_sign(zome_call_unsigned) 20 | assert data == [19, 82, 166, 180, 255, 212, 169, 179, 198, 226, 103, 225, 97, 67, 249, 4, 168, 8, 216, 29, 244, 79, 142, 141, 126, 57, 135, 6, 73, 75, 102, 250], f"got {data}" 21 | 22 | print("Passed!") 23 | 24 | --------------------------------------------------------------------------------