diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml new file mode 100644 index 0000000..e402122 --- /dev/null +++ b/.github/workflows/docs.yaml @@ -0,0 +1,24 @@ +name: docs +on: + push: + branches: + - docs-support + - main +permissions: + contents: write +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 + with: + python-version: 3.x + - uses: actions/cache@v2 + with: + key: ${{ github.ref }} + path: .cache + - run: pip install mkdocs-material + - run: pip install pillow cairosvg + - run: python ./pre_docs.py + - run: mkdocs gh-deploy --force diff --git a/.gitignore b/.gitignore index e05ca5a..8068cb3 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,8 @@ __pycache__/ # Editors .idea/ *.iml + +# docs +site +.cache +docs/ \ No newline at end of file diff --git a/3rdparty/BUILD b/3rdparty/BUILD index a54718b..4ad25b1 100644 --- a/3rdparty/BUILD +++ b/3rdparty/BUILD @@ -15,8 +15,15 @@ python_requirement( modules=["pydantic", "pydantic_core", "pydantic_settings"], ) python_requirement( - name="pydantic_v2", - requirements=["pydantic==2.1.1", "pydantic-settings==2.0.3"], + name="pydantic_v2_settings", + requirements=["pydantic-settings>=2.0.3"], resolve="python-default", - modules=["pydantic", "pydantic_core", "pydantic_settings"], + modules=["pydantic_settings"], +) + +python_requirement( + name="pydantic_v1_or_later", + requirements=["pydantic>=1.10.2,<3"], + resolve="python-default", + modules=["pydantic", "pydantic_core"], ) diff --git a/3rdparty/python/default.lock b/3rdparty/python/default.lock index 9dd87cd..3642407 100644 --- a/3rdparty/python/default.lock +++ b/3rdparty/python/default.lock @@ -13,8 +13,8 @@ // "PyYAML==6.0.1", // "coverage[toml]==7.2.3", // "orjson==3.6.5", -// "pydantic-settings==2.0.3", -// "pydantic==2.1.1", +// "pydantic-settings>=2.0.3", +// "pydantic<3,>=1.10.2", // "pygments==2.9.0", // "pytest-asyncio==0.15.1", // "pytest-cov==3.0.0", @@ -702,291 +702,301 @@ "artifacts": [ { "algorithm": "sha256", - "hash": "43bdbf359d6304c57afda15c2b95797295b702948082d4c23851ce752f21da70", - "url": "https://files.pythonhosted.org/packages/87/80/52770e747e4bee5012e60b2684db36c8fdf010f8dadb4ded0efec808b07d/pydantic-2.1.1-py3-none-any.whl" + "hash": "a479d511d1337ad091bd1ef90a7aaf707326968cff78a579108bc289b7f5ecdd", + "url": "https://files.pythonhosted.org/packages/82/54/ed9a1005c580b619a4c53c324f472c99c165051b22f8885b09be1882aece/pydantic-2.2.0-py3-none-any.whl" }, { "algorithm": "sha256", - "hash": "22d63db5ce4831afd16e7c58b3192d3faf8f79154980d9397d9867254310ba4b", - "url": "https://files.pythonhosted.org/packages/0f/46/12689d28731c709890361af3414a9d0d04328043beb7c9fc4e4caa580b5c/pydantic-2.1.1.tar.gz" + "hash": "5f30f37a75bca15930e256da6a401f1cb953eb3bc578d454c0876f4e1459a7fa", + "url": "https://files.pythonhosted.org/packages/6f/24/52cdec4dfab6e4b95fb4a77abc8c02cf0620ae44337d6968418a6f2e4df2/pydantic-2.2.0.tar.gz" } ], "project_name": "pydantic", "requires_dists": [ "annotated-types>=0.4.0", "email-validator>=2.0.0; extra == \"email\"", - "pydantic-core==2.4.0", + "pydantic-core==2.6.0", "typing-extensions>=4.6.1" ], "requires_python": ">=3.7", - "version": "2.1.1" + "version": "2.2.0" }, { "artifacts": [ { "algorithm": "sha256", - "hash": "b85778308bf945e9b33ac604e6793df9b07933108d20bdf53811bc7c2798a4af", - "url": "https://files.pythonhosted.org/packages/6b/f8/2f2b606610822a177f4e9fe28a84535e9770e54898bb1cf89826f68e9089/pydantic_core-2.4.0-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl" + "hash": "3d72ebaa6451490ae05d3da858120b395b3bf1bebc8a5238ef803ff0f4f16f38", + "url": "https://files.pythonhosted.org/packages/8d/14/cfb28ef6d65e07ead008a8771ec2ec925f50a1a3b97129095c7edb4a81d1/pydantic_core-2.6.0-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl" }, { "algorithm": "sha256", - "hash": "efff8b6761a1f6e45cebd1b7a6406eb2723d2d5710ff0d1b624fe11313693989", - "url": "https://files.pythonhosted.org/packages/02/45/ebe8db34f7c2fa1652b4e67d5a7a76b31f420f22d8b36409e2a852264c8b/pydantic_core-2.4.0-pp39-pypy39_pp73-macosx_10_7_x86_64.whl" + "hash": "482a20567991170d0b55aa4d73084858ab8d54804ffef8061f254c0f8b9cf668", + "url": "https://files.pythonhosted.org/packages/00/c1/82b8bb8052f70714509b2343b5ccf619bff8a26c04e474fe49350ca38755/pydantic_core-2.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" }, { "algorithm": "sha256", - "hash": "ac2b680de398f293b68183317432b3d67ab3faeba216aec18de0c395cb5e3060", - "url": "https://files.pythonhosted.org/packages/02/bf/a193e0f4a0fa01b8d6791991ecf1500931f8c98ccf81307ade3ad10963d7/pydantic_core-2.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" + "hash": "4118471f4ba0f92fbe84bb6c0f645b423eaa5453e0dc4b6c0a6759da818352ba", + "url": "https://files.pythonhosted.org/packages/07/26/b0bd355b36130778667f3e8ea41414b53d1cfd2217012057328b15e528df/pydantic_core-2.6.0-cp312-cp312-musllinux_1_1_aarch64.whl" }, { "algorithm": "sha256", - "hash": "a027f41c5008571314861744d83aff75a34cf3a07022e0be32b214a5bc93f7f1", - "url": "https://files.pythonhosted.org/packages/02/d0/d91f152a1ab00264ac8ba4c4330755b981a77982644089e4c896f080ccd2/pydantic_core-2.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" + "hash": "582bfd6e7d09f5883f607b7171fcd2010d226497d9dfc9703c8aa8d58431fa84", + "url": "https://files.pythonhosted.org/packages/0b/72/ad9b85b29c8f583a14aa5619a61894ecec4a08625662b68f2f013b0de814/pydantic_core-2.6.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl" }, { "algorithm": "sha256", - "hash": "4b262bbc13022f2097c48a21adcc360a81d83dc1d854c11b94953cd46d7d3c07", - "url": "https://files.pythonhosted.org/packages/04/06/9de95f89bfdcb02b2ec3d703d7a6d3d22152f98d59053afcd6d205ddedbf/pydantic_core-2.4.0-cp312-cp312-manylinux_2_24_ppc64le.whl" + "hash": "bf6cb8b9c23dbb074f2d97b02af4d9d5401bd8015daad3e92fc35f88c5c07ba6", + "url": "https://files.pythonhosted.org/packages/0f/21/a61122863e8a08eb15393992578b7539149b3b44550d4bdd2f4419eead6c/pydantic_core-2.6.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl" }, { "algorithm": "sha256", - "hash": "af24ad4fbaa5e4a2000beae0c3b7fd1c78d7819ab90f9370a1cfd8998e3f8a3c", - "url": "https://files.pythonhosted.org/packages/06/5b/91209bcfc7f0aa97a1fc55c1293aade0c0760927592d0126311e13fb22a7/pydantic_core-2.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl" + "hash": "253d769ce88f6d5b8ae8965f08c486114e30b5e5478f327348b77615a2a543cb", + "url": "https://files.pythonhosted.org/packages/17/e6/59af5c1d593e1ef0d8f8f50ac93c77adf9d81d38a488d5cbdfa7d272cee2/pydantic_core-2.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" }, { "algorithm": "sha256", - "hash": "e953353180bec330c3b830891d260b6f8e576e2d18db3c78d314e56bb2276066", - "url": "https://files.pythonhosted.org/packages/07/5d/75b67fabb17be94e3f61098d11597d11f043c871c8705955fd984f887efb/pydantic_core-2.4.0-cp39-cp39-musllinux_1_1_x86_64.whl" + "hash": "b0b4bcc57b12980b67e5eed09732102b19380f79dcba09444faa7a5c1826a432", + "url": "https://files.pythonhosted.org/packages/18/fd/e1e17ea48b300664c3807b1acfbb64ff3ee0c6855654ad616783cbe0d1aa/pydantic_core-2.6.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl" }, { "algorithm": "sha256", - "hash": "3fcf529382b282a30b466bd7af05be28e22aa620e016135ac414f14e1ee6b9e1", - "url": "https://files.pythonhosted.org/packages/0b/13/eb10befcd2e7111ad4f53d99389b7e872db3d1befb930b80e41ed78d7c28/pydantic_core-2.4.0-pp310-pypy310_pp73-macosx_10_7_x86_64.whl" + "hash": "ac4148c3bede4269f286c7d094e98c717f1101025145e89baacbafc7c5f7f74b", + "url": "https://files.pythonhosted.org/packages/21/dc/7a5f2bf792fd837deb71d4de2c3f00f3250b0de9536d27c25636461c9bf1/pydantic_core-2.6.0-cp39-cp39-musllinux_1_1_x86_64.whl" }, { "algorithm": "sha256", - "hash": "546064c55264156b973b5e65e5fafbe5e62390902ce3cf6b4005765505e8ff56", - "url": "https://files.pythonhosted.org/packages/16/40/dc1591f53e84662767c84da57cb1c77fe163875bebe3244219f3449709d2/pydantic_core-2.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" + "hash": "fe01f83bea0e4715c49449039b3c60a59408f0ceee61bb8c9a64699545e5b786", + "url": "https://files.pythonhosted.org/packages/22/c4/cf7e981d7cac1ac76d23beb59e8838fea44b0f2cac9bd10510d1932edd6f/pydantic_core-2.6.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl" }, { "algorithm": "sha256", - "hash": "2ca4687dd996bde7f3c420def450797feeb20dcee2b9687023e3323c73fc14a2", - "url": "https://files.pythonhosted.org/packages/17/18/0ecf5d5bf4e359dfc06ccae67d3c91b350bfaeeb676e3a60e3325b8968a0/pydantic_core-2.4.0-cp310-cp310-macosx_10_7_x86_64.whl" + "hash": "4e9430096484696a1837f55728c804917ad694f8e965ad0317ff896db21c3a7b", + "url": "https://files.pythonhosted.org/packages/37/9c/816a276234ef3c428525bff3849ec1cd4492a9d8e52681563a0659867a64/pydantic_core-2.6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl" }, { "algorithm": "sha256", - "hash": "54df7df399b777c1fd144f541c95d351b3aa110535a6810a6a569905d106b6f3", - "url": "https://files.pythonhosted.org/packages/17/b5/e12848eeea16e88b857689528c35d8396befb6040e5477f10a206b0a778f/pydantic_core-2.4.0-cp310-cp310-musllinux_1_1_aarch64.whl" + "hash": "775710d825f2b2ffe8a0bfd8d17cb8de6a9e562e78f50171c5afa9c508faa45c", + "url": "https://files.pythonhosted.org/packages/38/c1/177167685437976023869a3843e7452170c027ac27730ebcb788b56b6f18/pydantic_core-2.6.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl" }, { "algorithm": "sha256", - "hash": "7aa82d483d5fb867d4fb10a138ffd57b0f1644e99f2f4f336e48790ada9ada5e", - "url": "https://files.pythonhosted.org/packages/1b/8d/b4011ecd34f5b139fdd9b2c38962ca62128ebbd40e911f277a0720bb3cde/pydantic_core-2.4.0-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl" + "hash": "e50513d8dd8ea67259d45986e314f545f219ebb2496eea52269e457cdc7419f4", + "url": "https://files.pythonhosted.org/packages/3a/13/0a98f6ad59e2aea4ee48e18f21a05c081d3d1b5376c526eda9569a7fa4d2/pydantic_core-2.6.0.tar.gz" }, { "algorithm": "sha256", - "hash": "57a53a75010c635b3ad6499e7721eaa3b450e03f6862afe2dbef9c8f66e46ec8", - "url": "https://files.pythonhosted.org/packages/1c/51/1d219028726087ca0af118179e614bd9cc1eb502db3bf59820d33f4103dc/pydantic_core-2.4.0-cp312-cp312-manylinux_2_24_armv7l.whl" + "hash": "d179b77fff4387a46ed0b63eb87ad6be58bb2a3a3415e69a44e918e8abcbd8c6", + "url": "https://files.pythonhosted.org/packages/3d/8e/b17f678efd435411a9abf9021db45a1f8c0fb2ebf32a64b9ea8cd4dd94a2/pydantic_core-2.6.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" }, { "algorithm": "sha256", - "hash": "6213b471b68146af97b8551294e59e7392c2117e28ffad9c557c65087f4baee3", - "url": "https://files.pythonhosted.org/packages/2c/c9/d321cfaaf7419b78b020d37a34ca43d2f352962848ea8120728fa7995f1e/pydantic_core-2.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" + "hash": "1e89b0a3f05416a7e67ec7257cddcf44263a10cea618cfc89855d46997c13742", + "url": "https://files.pythonhosted.org/packages/46/9b/5829398f99a527ce4638744c67cc30b171e77f43f0472c9ffd51c545c706/pydantic_core-2.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" }, { "algorithm": "sha256", - "hash": "cc086ddb6dc654a15deeed1d1f2bcb1cb924ebd70df9dca738af19f64229b06c", - "url": "https://files.pythonhosted.org/packages/30/d2/7bd8dacdcfb3d6e9d99a28b076dcef342967821739944161af62a7fdc349/pydantic_core-2.4.0-cp39-cp39-musllinux_1_1_aarch64.whl" + "hash": "6265372636a78bc6b8ba92f7d2dafca353c549edc8082a602d00a28f71a9155a", + "url": "https://files.pythonhosted.org/packages/4e/3b/af4eb150c186b453a63c1fe18782ce19d3a57bd6598ed400234fa90e0af1/pydantic_core-2.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" }, { "algorithm": "sha256", - "hash": "b2799c2eaf182769889761d4fb4d78b82bc47dae833799fedbf69fc7de306faa", - "url": "https://files.pythonhosted.org/packages/31/de/fe16c866ba0117a480331ef46f55e703f8126ca793d029d499b67d3647cf/pydantic_core-2.4.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl" + "hash": "358f5d48aa850054ef1b148f4c3000b2ea216db4ab611039080bea294002349c", + "url": "https://files.pythonhosted.org/packages/4f/8a/629b32539c2e46690bca0e89e10b196b84a9317aa01ee3a3c1d013b6ff16/pydantic_core-2.6.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" }, { "algorithm": "sha256", - "hash": "cba5ad5eef02c86a1f3da00544cbc59a510d596b27566479a7cd4d91c6187a11", - "url": "https://files.pythonhosted.org/packages/32/28/8ee7d072e29c7597b139f58a2882dad0f24b1f213996affdfab3564dfe1a/pydantic_core-2.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" + "hash": "cddecc97d923c3fae698820a788d6e7fda61538244dd2a0808d6263115fe5870", + "url": "https://files.pythonhosted.org/packages/50/eb/43fa300bf3976f355e35561c91d6bb7f50a5c1d70482ec6b718e116e75e2/pydantic_core-2.6.0-cp310-cp310-macosx_11_0_arm64.whl" }, { "algorithm": "sha256", - "hash": "16468bd074fa4567592d3255bf25528ed41e6b616d69bf07096bdb5b66f947d1", - "url": "https://files.pythonhosted.org/packages/32/68/324013cf826ad1f09bce46b01259c2d88607d137e297d213fe7ef225a91f/pydantic_core-2.4.0-cp311-cp311-macosx_11_0_arm64.whl" + "hash": "693df3a922d94ba1c42ea732df7ab2f0492d6081b0170e86753a45e8822342a6", + "url": "https://files.pythonhosted.org/packages/54/b6/58a7d47a3f84f65bcbeabc053f2184174b3e8b063496a69470f979742879/pydantic_core-2.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" }, { "algorithm": "sha256", - "hash": "664402ef0c238a7f8a46efb101789d5f2275600fb18114446efec83cfadb5b66", - "url": "https://files.pythonhosted.org/packages/32/c2/b6a91f50e173e71a33dcddceea06f10dfa8278e24f6521a6afda7b14540e/pydantic_core-2.4.0-cp39-cp39-macosx_11_0_arm64.whl" + "hash": "4fd9661a30a370faae9303dfde31d09d5b6f28113f8dace9a63f51d205703a8d", + "url": "https://files.pythonhosted.org/packages/58/67/fad675d33de875987951a9fc9496a0280d9b977cfbe26be391df665ae9b4/pydantic_core-2.6.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl" }, { "algorithm": "sha256", - "hash": "a297c0d6c61963c5c3726840677b798ca5b7dfc71bc9c02b9a4af11d23236008", - "url": "https://files.pythonhosted.org/packages/36/b1/4a6531fcc5f1e3794a08fd7a16b1d620d2cb2b9e611b154301af1ac0e6d0/pydantic_core-2.4.0-cp312-cp312-macosx_11_0_arm64.whl" + "hash": "2ae2d2aa91f442427d5d607f5bc07a6601aea7e9812c158b11dfac4fca28b24a", + "url": "https://files.pythonhosted.org/packages/5b/28/180f46900c51bc95cf764184cee2091afc2032e7550dff3556a8843bb69b/pydantic_core-2.6.0-cp310-cp310-macosx_10_7_x86_64.whl" }, { "algorithm": "sha256", - "hash": "8c938c96294d983dcf419b54dba2d21056959c22911d41788efbf949a29ae30d", - "url": "https://files.pythonhosted.org/packages/39/57/e1f32d0f4415381c2e922b8f480030d1a77ca827875835acbc61e55d825f/pydantic_core-2.4.0-cp310-cp310-manylinux_2_24_ppc64le.whl" + "hash": "42caa59248750573efbce6a74f3e121f9def86dc2087772d51f0907c2ed6dc61", + "url": "https://files.pythonhosted.org/packages/5b/d8/7ff429655ca175921a002ddf6add017185c6baee51595831936ecc9a037e/pydantic_core-2.6.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl" }, { "algorithm": "sha256", - "hash": "e412607ca89a0ced10758dfb8f9adcc365ce4c1c377e637c01989a75e9a9ec8a", - "url": "https://files.pythonhosted.org/packages/40/0d/60b7602f032aaa75b633932a88efe6f9a0fca1897f1e1f0d641e199190e9/pydantic_core-2.4.0-cp310-cp310-musllinux_1_1_x86_64.whl" + "hash": "5d9510004c4db5c683e349905c9700217da10b35d4447c7a1dfff1b6dd26192a", + "url": "https://files.pythonhosted.org/packages/66/a6/128b5ad725bdefb6ab6423d0901f4049af453b1f744e51d712dc1f457a87/pydantic_core-2.6.0-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl" }, { "algorithm": "sha256", - "hash": "bf10963d8aed8bbe0165b41797c9463d4c5c8788ae6a77c68427569be6bead41", - "url": "https://files.pythonhosted.org/packages/42/53/a560fdf35113e18a81ca958bd0bc91d53035937b727a376f9fa740f8533e/pydantic_core-2.4.0-cp311-cp311-musllinux_1_1_aarch64.whl" + "hash": "3b35585d14028c1afa41c1183906ce4128128d1114be9958b5ad0fb3721b50a4", + "url": "https://files.pythonhosted.org/packages/67/74/066f20cd0308e4769bbf03237247d9a1e510ba6a5b12de81733087d642e2/pydantic_core-2.6.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" }, { "algorithm": "sha256", - "hash": "77dadc764cf7c5405e04866181c5bd94a447372a9763e473abb63d1dfe9b7387", - "url": "https://files.pythonhosted.org/packages/44/2b/b74a360ced5d58a8b276eb856e1d903181ac816280493cdbcd7883cdde43/pydantic_core-2.4.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl" + "hash": "179da6a5264d11cf2defba17c0003f6e27922d95f37b4818905115e2c9b8f7ed", + "url": "https://files.pythonhosted.org/packages/73/c9/fdcb5b5e1b83aaa204515c38374f1da94e6ae797447a0f8c8f1892a96c81/pydantic_core-2.6.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl" }, { "algorithm": "sha256", - "hash": "3534118289e33130ed3f1cc487002e8d09b9f359be48b02e9cd3de58ce58fba9", - "url": "https://files.pythonhosted.org/packages/4a/c2/0b5125372ecdc8294262233540f9c0078e1a1e007a8fa19646b3b23a5390/pydantic_core-2.4.0-cp311-cp311-manylinux_2_24_ppc64le.whl" + "hash": "5b3159c893a1d6dc93080b882d7c4fa8651abbb228a4d920066f3f48b7a200ac", + "url": "https://files.pythonhosted.org/packages/7b/cd/47e40ccaf027747118d2f85e8bd34db9fd4950c8f2976fd5adeba8b5cf7e/pydantic_core-2.6.0-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl" }, { "algorithm": "sha256", - "hash": "a8b7acd04896e8f161e1500dc5f218017db05c1d322f054e89cbd089ce5d0071", - "url": "https://files.pythonhosted.org/packages/4b/56/11c2ed5805c5fc8cd800f6e40b246bb2e0c91aff43516b484a6fcc258e31/pydantic_core-2.4.0-cp311-cp311-macosx_10_7_x86_64.whl" + "hash": "04d6de74f91ff1a88975bc5e3c7103b676106af380ce8d9b56649116e0855dc9", + "url": "https://files.pythonhosted.org/packages/7c/67/f9db62541ff54e607a27a434b7f3404265326f6d06bc65d4697c3ca797a3/pydantic_core-2.6.0-cp311-cp311-macosx_11_0_arm64.whl" }, { "algorithm": "sha256", - "hash": "a4ea23b07f29487a7bef2a869f68c7ee0e05424d81375ce3d3de829314c6b5ec", - "url": "https://files.pythonhosted.org/packages/4c/55/7b5b537f2502ec5e15938314f33a0c054ed43dd5aacc220e4cf235a6956f/pydantic_core-2.4.0-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl" + "hash": "892e7de51b8191929bf1246a04c13674a4d4b8dced8a4f86def85a1b0cb1a1e4", + "url": "https://files.pythonhosted.org/packages/81/1f/6a050b253b522a95cc227f35b48600abb8f61bbc478dc693bdc58484126c/pydantic_core-2.6.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl" }, { "algorithm": "sha256", - "hash": "69159afc2f2dc43285725f16143bc5df3c853bc1cb7df6021fce7ef1c69e8171", - "url": "https://files.pythonhosted.org/packages/58/4e/88bea94069c9065b02fdf40081edc3c6b5bdf8c079c14f13abe4807b5297/pydantic_core-2.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl" + "hash": "e4d46cd802c163914f07124735371812e9bed8a39acbebcee5bd06d43f454e1a", + "url": "https://files.pythonhosted.org/packages/86/92/ba32bccaa02ed37d4f099fd3aa893757fef34fa49e830eb51b7ff710662c/pydantic_core-2.6.0-cp311-cp311-musllinux_1_1_x86_64.whl" }, { "algorithm": "sha256", - "hash": "1e8a7c62d15a5c4b307271e4252d76ebb981d6251c6ecea4daf203ef0179ea4f", - "url": "https://files.pythonhosted.org/packages/5a/f6/2824854aa3e04da7692c9ac4dc10f592d888be4ce6e82c48857a24e52c24/pydantic_core-2.4.0-cp312-cp312-musllinux_1_1_x86_64.whl" + "hash": "04b0e91c338536e3e3f77c3ed5354d14c46163f1c6b0706037b0b4be409eb943", + "url": "https://files.pythonhosted.org/packages/88/13/7763cc4802cda486aac7d4d5271c08a2b1eea8485a88700bd2c7e4692a9f/pydantic_core-2.6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl" }, { "algorithm": "sha256", - "hash": "32a1e0352558cd7ccc014ffe818c7d87b15ec6145875e2cc5fa4bb7351a1033d", - "url": "https://files.pythonhosted.org/packages/5d/26/891441b79ea6b620faec8ee1ef4ee9a02c6ac2e9f348fa9c051f8a783783/pydantic_core-2.4.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" + "hash": "c020c5047b25e64c39006fa11f15d93adf4ae85154387f8e10232871ba78e7b2", + "url": "https://files.pythonhosted.org/packages/8a/8b/53d29ee791f30672c7aaf3c35937dd102537cc46fe0910e7710d7a57f225/pydantic_core-2.6.0-pp39-pypy39_pp73-macosx_10_7_x86_64.whl" }, { "algorithm": "sha256", - "hash": "8efc1be43b036c2b6bcfb1451df24ee0ddcf69c31351003daf2699ed93f5687b", - "url": "https://files.pythonhosted.org/packages/71/fb/3cc72976544993e44b6e43cd4343dc30414e4fb51b7cde7daeeda49a660f/pydantic_core-2.4.0-cp39-cp39-manylinux_2_24_armv7l.whl" + "hash": "9c7507d40bd5d055dadba8ae9b6008356f380ce102942e0740228d97e8bd4152", + "url": "https://files.pythonhosted.org/packages/8d/1f/b5024e65448b0d7d72930cabd732ee71719e7be562329d08f15c6c4384ff/pydantic_core-2.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" }, { "algorithm": "sha256", - "hash": "da055a1b0bfa8041bb2ff586b2cb0353ed03944a3472186a02cc44a557a0e661", - "url": "https://files.pythonhosted.org/packages/75/91/87fbc527191a762729b0c86b60c05a9b162c5b2d0d930a67cb5d745614f7/pydantic_core-2.4.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" + "hash": "a7d7b5af9ee32517280228629daca013ecc9a7834075af3d928287539ccd54ec", + "url": "https://files.pythonhosted.org/packages/91/b7/257237dd6cc4b2d904bd50134d6a408ea84119a37b336ba91b58671d447b/pydantic_core-2.6.0-cp312-cp312-macosx_10_7_x86_64.whl" }, { "algorithm": "sha256", - "hash": "a08fd490ba36d1fbb2cd5dcdcfb9f3892deb93bd53456724389135712b5fc735", - "url": "https://files.pythonhosted.org/packages/76/e2/5f5c53234e72be69adff5ed1fee58a23ee63dbce45ef1fb774e60103fb2f/pydantic_core-2.4.0-cp312-cp312-musllinux_1_1_aarch64.whl" + "hash": "f5ca934143857626de2423d65d487687c87931a62044ed5ee0deee55018569f4", + "url": "https://files.pythonhosted.org/packages/93/61/b45ec29149d170423851a0c40e6fb8b67ca6fb6035efd680c39f08f080dd/pydantic_core-2.6.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl" }, { "algorithm": "sha256", - "hash": "94d2b36a74623caab262bf95f0e365c2c058396082bd9d6a9e825657d0c1e7fa", - "url": "https://files.pythonhosted.org/packages/7f/ca/7e04f9f83a3d67149e3e9f449b443d38e5872001f45d32be28fa16558e9a/pydantic_core-2.4.0-cp311-cp311-manylinux_2_24_s390x.whl" + "hash": "a8aee2623180f736fc426925489e84bd244e45de4175dec76f10d4fda775721b", + "url": "https://files.pythonhosted.org/packages/96/f4/5d889719da3a5f61253eb06e13b812abbed53ef3150f7451f649aea6618b/pydantic_core-2.6.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl" }, { "algorithm": "sha256", - "hash": "d93aedbc4614cc21b9ab0d0c4ccd7143354c1f7cffbbe96ae5216ad21d1b21b5", - "url": "https://files.pythonhosted.org/packages/86/8c/c0280138b25bdd4dd69005485f2ff900dfd3209648d5b34a4a1f538fdff6/pydantic_core-2.4.0-cp39-cp39-manylinux_2_24_ppc64le.whl" + "hash": "6798756a5bee9991af64763ee2f3580505932a3f432af9a73bc9fdaca460261f", + "url": "https://files.pythonhosted.org/packages/9d/8b/e108191b41b738d9a5232f00ee28c3784bb8f7fbdd89b11717151674cd5f/pydantic_core-2.6.0-cp39-cp39-macosx_10_7_x86_64.whl" }, { "algorithm": "sha256", - "hash": "ec3473c9789cc00c7260d840c3db2c16dbfc816ca70ec87a00cddfa3e1a1cdd5", - "url": "https://files.pythonhosted.org/packages/8a/6a/2609fb28f3c289eacb2a2ddaceb7ad0d327b4b4678146573295d98f012b8/pydantic_core-2.4.0.tar.gz" + "hash": "7d03de66eda2c3a6eab2c2cf43eeece37e4cf811e891361b1fb8d8d3cd109f3a", + "url": "https://files.pythonhosted.org/packages/9d/b2/73b93f5bbd80302a098032e3a7961acdd9d9ed1747df2e2121b8d40725d9/pydantic_core-2.6.0-cp312-cp312-macosx_11_0_arm64.whl" }, { "algorithm": "sha256", - "hash": "0455876d575a35defc4da7e0a199596d6c773e20d3d42fa1fc29f6aa640369ed", - "url": "https://files.pythonhosted.org/packages/8d/07/426bbb5603168562ffe1222656062327c60c30d737645fea985fbfe87b1b/pydantic_core-2.4.0-cp310-cp310-manylinux_2_24_armv7l.whl" + "hash": "eeb7b4e1dd925db174a410680c846cb7ab7eb1923f556b44cf53cea774dc42fa", + "url": "https://files.pythonhosted.org/packages/a2/ee/6f9e9d9d95f1c0947c16433984de900939ad521f6b1baaeafb2a478a49f7/pydantic_core-2.6.0-pp310-pypy310_pp73-macosx_10_7_x86_64.whl" }, { "algorithm": "sha256", - "hash": "b7206e41e04b443016e930e01685bab7a308113c0b251b3f906942c8d4b48fcb", - "url": "https://files.pythonhosted.org/packages/90/71/fec4ebbf73bec69498550066baad51d737a1af03d99e129aaa02bddd1a75/pydantic_core-2.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" + "hash": "82e34dc040001f50bec1a7a5c09fb6566635078ce91943cd10445a560cb3fe23", + "url": "https://files.pythonhosted.org/packages/ab/73/45ec005b5817efefcffb75049318d73583f2e1d356f312595aac94c3c669/pydantic_core-2.6.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl" }, { "algorithm": "sha256", - "hash": "97c6349c81cee2e69ef59eba6e6c08c5936e6b01c2d50b9e4ac152217845ae09", - "url": "https://files.pythonhosted.org/packages/91/1a/0dae3027d9a0f17fac650d05c994f778ae014c06db8d75bb481ec6ebae85/pydantic_core-2.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl" + "hash": "fd29541fb6f7647f535c0067cabb50ec014f13fa599ac4e34152abb5cb046988", + "url": "https://files.pythonhosted.org/packages/b2/a1/7874d31241b5027a0771b5ace920e273fcfc0e6452b1ce18a4d828d33bd7/pydantic_core-2.6.0-cp311-cp311-musllinux_1_1_aarch64.whl" }, { "algorithm": "sha256", - "hash": "63797499a219d8e81eb4e0c42222d0a4c8ec896f5c76751d4258af95de41fdf1", - "url": "https://files.pythonhosted.org/packages/97/0a/5673dc7f7e232c3421a4c33fd1d261ebe9b963d0f9e9c2c03d5dd7382769/pydantic_core-2.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" + "hash": "959aa63057738b426137d3de99d8da118f5c8ba19a238fdb5e5f0717297e9da4", + "url": "https://files.pythonhosted.org/packages/b2/de/cb962be424b63abbb68b0d267801003533cee6b217dab63d5f118d50bb00/pydantic_core-2.6.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl" }, { "algorithm": "sha256", - "hash": "867d3eea954bea807cabba83cfc939c889a18576d66d197c60025b15269d7cc0", - "url": "https://files.pythonhosted.org/packages/9c/f7/276fa47b9ddccb416cf4406791b3651a14732808f68eccb76cae3eec188c/pydantic_core-2.4.0-cp39-cp39-macosx_10_7_x86_64.whl" + "hash": "11854f12f09d2a108d130645edbca7aecf24756455599b0b19dacd47499ccadc", + "url": "https://files.pythonhosted.org/packages/b3/6a/0e081ca69f571dc83cf95f6569dbdb724a64f57d1de7118061fc273d95d8/pydantic_core-2.6.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl" }, { "algorithm": "sha256", - "hash": "878a5017d93e776c379af4e7b20f173c82594d94fa073059bcc546789ad50bf8", - "url": "https://files.pythonhosted.org/packages/a7/e3/087dbed01491a9028993c927d1e6897a0c1150a8a478b5fb763567922785/pydantic_core-2.4.0-cp310-cp310-manylinux_2_24_s390x.whl" + "hash": "6cc57fb772b48e5fd3691ca82d3756b6e64b885676d27d66bff551d951a18e5c", + "url": "https://files.pythonhosted.org/packages/b3/96/8fbb7240e503b66105080b69ac00a27c2cfa540f3323c7c0f12bc14decb2/pydantic_core-2.6.0-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl" }, { "algorithm": "sha256", - "hash": "68199ada7c310ddb8c76efbb606a0de656b40899388a7498954f423e03fc38be", - "url": "https://files.pythonhosted.org/packages/ad/97/7a6f21d7c29dbce9fbc0e2af0a96ad1abffec4e93f683bf62ecd45d411af/pydantic_core-2.4.0-cp311-cp311-musllinux_1_1_x86_64.whl" + "hash": "49848c89575d7768ea8762cc029f573a3d611452c41d05ae75bdcea8f77a9e5c", + "url": "https://files.pythonhosted.org/packages/b4/0d/b163761628be41713d4966b54983e634f65bfc1616eb58bc7abafe6cda4d/pydantic_core-2.6.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl" }, { "algorithm": "sha256", - "hash": "af788b64e13d52fc3600a68b16d31fa8d8573e3ff2fc9a38f8a60b8d94d1f012", - "url": "https://files.pythonhosted.org/packages/c9/77/a81262c4db2204ad27cd309a4438e8cbb32c8f07e997786ae6cfa763f589/pydantic_core-2.4.0-cp39-cp39-manylinux_2_24_s390x.whl" + "hash": "5464f3d27376739c7fa0af47096ac3696db1d8996d086167b3643f0443a1a976", + "url": "https://files.pythonhosted.org/packages/b6/7c/b7743c68a6d6e670700828bab663351cea40174a01e24841e023e26e3e0d/pydantic_core-2.6.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl" }, { "algorithm": "sha256", - "hash": "782fced7d61469fd1231b184a80e4f2fa7ad54cd7173834651a453f96f29d673", - "url": "https://files.pythonhosted.org/packages/cb/fa/a042aa68fa9df1c41e2f238055c3afb77c7105e6693468db2fa3b7a91093/pydantic_core-2.4.0-cp310-cp310-macosx_11_0_arm64.whl" + "hash": "ffe8b2c8e30a87f6d7c1a78e23b8270a1acde9140cde425fa94688d302c8b2c9", + "url": "https://files.pythonhosted.org/packages/c0/65/802819654baf16a047cb86d63bb05bdaf00c8c1364f584c96421fa6e6bc0/pydantic_core-2.6.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl" }, { "algorithm": "sha256", - "hash": "c1375025f0bfc9155286ebae8eecc65e33e494c90025cda69e247c3ccd2bab00", - "url": "https://files.pythonhosted.org/packages/cc/fd/2c4419bdad0be8d9ce2b20c4a34c29646c5909ee02a19b997715573fce09/pydantic_core-2.4.0-cp311-cp311-manylinux_2_24_armv7l.whl" + "hash": "0ff7df99df6ae485e33afafc7adbfae2e133501b5debea4f0c20cd1f679fa321", + "url": "https://files.pythonhosted.org/packages/c5/82/ce6b7f26307bdb0c296b7e163f7ad9f27861fa50029b006a6496a2f7a4cf/pydantic_core-2.6.0-cp39-cp39-musllinux_1_1_aarch64.whl" }, { "algorithm": "sha256", - "hash": "1927f0e15d190f11f0b8344373731e28fd774c6d676d8a6cfadc95c77214a48b", - "url": "https://files.pythonhosted.org/packages/d3/e2/448bd4949ad4bf6c57046366c04a5d0e2248454f4e594bffb4bed7c855a7/pydantic_core-2.4.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl" + "hash": "fe66139cfdd02ec4a0aad0cecf53bf9933c748097a97beb9042c03f236dd68b9", + "url": "https://files.pythonhosted.org/packages/d9/36/a7c5644f26a25ea915cc1e69d53f97820c226769049176072e41518d5da5/pydantic_core-2.6.0-cp310-cp310-musllinux_1_1_x86_64.whl" }, { "algorithm": "sha256", - "hash": "f773b39780323a0499b53ebd91a28ad11cde6705605d98d999dfa08624caf064", - "url": "https://files.pythonhosted.org/packages/d5/41/dd213a63f6ab1f5974b40f6df0b1512618e984227eecd2e15dc57cd8744c/pydantic_core-2.4.0-cp312-cp312-macosx_10_7_x86_64.whl" + "hash": "afd9d1ef2805729898f580ccde0e76a3edd39cf16778c2139222047c8d25893b", + "url": "https://files.pythonhosted.org/packages/d9/c4/bcbe56d537d09092b52e962dc5ce2797bbadcd2064a24b6ae0070b65857a/pydantic_core-2.6.0-cp312-cp312-musllinux_1_1_x86_64.whl" }, { "algorithm": "sha256", - "hash": "64e8012ad60a5f0da09ed48725e6e923d1be25f2f091a640af6079f874663813", - "url": "https://files.pythonhosted.org/packages/dc/91/6fb3e9db94cbd438491dc700cf7c24abca5d1aad2cf5a20a95c3927bb195/pydantic_core-2.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" + "hash": "51eb518682898df170d3d2ddd9c1f2a9496d79e5bd611b508d1a698e50b13fc6", + "url": "https://files.pythonhosted.org/packages/e1/98/79f75d4d1ddcadeb212f689055dbaad7ae8e93bfabbffe445a96c8795ca1/pydantic_core-2.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" }, { "algorithm": "sha256", - "hash": "36ba9e728588588f0196deaf6751b9222492331b5552f865a8ff120869d372e0", - "url": "https://files.pythonhosted.org/packages/e0/a1/cb4f46488deedd0f1eab5fc20647c068998e5bc950f982a2fd29918712ea/pydantic_core-2.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" + "hash": "3170a13c8cdb564f544ce03a7f26962828cce3456413b325fca49d32ef47ed1f", + "url": "https://files.pythonhosted.org/packages/e3/bb/b85d2080d9a8f157a2740660d34dfbddcf1e92b71a6d812ba260fdaba0cd/pydantic_core-2.6.0-cp39-cp39-macosx_11_0_arm64.whl" }, { "algorithm": "sha256", - "hash": "2edef05b63d82568b877002dc4cb5cc18f8929b59077120192df1e03e0c633f8", - "url": "https://files.pythonhosted.org/packages/e2/e9/36e086f95ec3cdff3421f165e54dd1d0fabaaccf07eebb0555ae12746e68/pydantic_core-2.4.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" + "hash": "a5534040341ac6ad4d133023cd45da3654fff77795481c8e4d4508cafd248ba5", + "url": "https://files.pythonhosted.org/packages/e5/79/7f6d61dada407b558cf97c50f970b0727d17358d569570f2e3acff070d01/pydantic_core-2.6.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl" }, { "algorithm": "sha256", - "hash": "382f0baa044d674ad59455a5eff83d7965572b745cc72df35c52c2ce8c731d37", - "url": "https://files.pythonhosted.org/packages/eb/90/b13e6d8783a8eca1392fd4dcebea953e4c52647cf257c09b37243b595a04/pydantic_core-2.4.0-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl" + "hash": "c2c54ce857d0adb549fc735ffe84b9d1e77d1b460656fb2d3faa9050a85d8d37", + "url": "https://files.pythonhosted.org/packages/ed/74/d87abff0a3eaf5801e58cdb65cfac8d0ec6af8820072905c2438bccbe7aa/pydantic_core-2.6.0-cp310-cp310-musllinux_1_1_aarch64.whl" }, { "algorithm": "sha256", - "hash": "01947ad728f426fa07fcb26457ebf90ce29320259938414bc0edd1476e75addb", - "url": "https://files.pythonhosted.org/packages/fd/e1/a80c4f5ceae5378dba083820ab7a4018b451019a25a1a2add80533f1836d/pydantic_core-2.4.0-cp312-cp312-manylinux_2_24_s390x.whl" + "hash": "2f80f6790e87ec29ba28aab9a66b07ee789ec8fa6ea94aeac47e27f0019a061c", + "url": "https://files.pythonhosted.org/packages/f5/eb/fadd13d960396077d3324ede78a0f13a9a4e5fb5c8a3825ab2e54f4dae88/pydantic_core-2.6.0-cp311-cp311-macosx_10_7_x86_64.whl" + }, + { + "algorithm": "sha256", + "hash": "3b52ce001eacd9906955576c71ee3fad9a442117b86dd84e5ea18e6ce287078d", + "url": "https://files.pythonhosted.org/packages/f7/ef/ebe71acd51b4653880f15aa8e990c46d67eb201336602c66efb87c23a38d/pydantic_core-2.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl" + }, + { + "algorithm": "sha256", + "hash": "16c572a839eb584115185146a04b15986e19e3cbf00e3788f8296b16ec7b3fd5", + "url": "https://files.pythonhosted.org/packages/f8/80/ab983f8aace3add3bbe2dfab478a420bf1a2b1506a0179e40e12d503e046/pydantic_core-2.6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl" } ], "project_name": "pydantic-core", @@ -994,7 +1004,7 @@ "typing-extensions!=4.7.0,>=4.6.0" ], "requires_python": ">=3.7", - "version": "2.4.0" + "version": "2.6.0" }, { "artifacts": [ @@ -1793,8 +1803,8 @@ "PyYAML==6.0.1", "coverage[toml]==7.2.3", "orjson==3.6.5", - "pydantic-settings==2.0.3", - "pydantic==2.1.1", + "pydantic-settings>=2.0.3", + "pydantic<3,>=1.10.2", "pygments==2.9.0", "pytest-asyncio==0.15.1", "pytest-cov==3.0.0", diff --git a/_pants/3rdparty/pydantic-v1 b/3rdparty/python/pydantic-v1.lock similarity index 100% rename from _pants/3rdparty/pydantic-v1 rename to 3rdparty/python/pydantic-v1.lock diff --git a/_pants/3rdparty/lock.txt b/_pants/3rdparty/lock.txt index 77927cb..c862917 100644 --- a/_pants/3rdparty/lock.txt +++ b/_pants/3rdparty/lock.txt @@ -10,16 +10,16 @@ // ], // "generated_with_requirements": [ // "PyYAML==6.0.1", -// "compose-chart-export==0.0.24", -// "docker-compose-parser==0.0.24", -// "model-lib==0.0.24", +// "compose-chart-export==0.0.27", +// "docker-compose-parser==0.0.27", +// "model-lib==0.0.27", // "orjson==3.6.5", // "pantsbuild.pants.testutil<2.17,>=2.16.0a0", // "pantsbuild.pants<2.17,>=2.16.0a0", // "pydantic==1.10.2", // "pydevd-pycharm==231.8109.197", // "typing_extensions>=4.3.0", -// "zero-3rdparty==0.0.24" +// "zero-3rdparty==0.0.27" // ], // "manylinux": "manylinux2014", // "requirement_constraints": [], @@ -218,38 +218,44 @@ "artifacts": [ { "algorithm": "sha256", - "hash": "e2b24bb985fccc0c2d7e4bf4472f338aeb4a34dc42886a3e4c85849f582c2c54", - "url": "https://files.pythonhosted.org/packages/bd/ba/e5372e4008221fb063a05fa687dd61d9112e4f60491afe69e8aaded0da41/compose_chart_export-0.0.24-py3-none-any.whl" + "hash": "26179a0d9736279845e024f2ffe129d4c1ca257adeb297ae568d4e0d1b12457b", + "url": "https://files.pythonhosted.org/packages/21/87/7ff6a874be293823cd9efafb481096eec2796d2ae0f636b44e5b2ee7034d/compose_chart_export-0.0.27-py3-none-any.whl" } ], "project_name": "compose-chart-export", "requires_dists": [ - "docker-compose-parser==0.0.24", - "model-lib==0.0.24", - "pydantic==1.10.2", + "docker-compose-parser==0.0.27", + "model-lib==0.0.27", + "pydantic-settings>=2.0.3; extra == \"pydantic_v2\"", + "pydantic<3,>=1.10.2", + "pydantic<=2,>=1.10.2; extra == \"pydantic_v1\"", + "pydantic<=3,>=2.1.1; extra == \"pydantic_v2\"", "semver==2.13.0", "typing-extensions>=4.3.0", - "zero-3rdparty==0.0.24" + "zero-3rdparty==0.0.27" ], "requires_python": ">=3.9", - "version": "0.0.24" + "version": "0.0.27" }, { "artifacts": [ { "algorithm": "sha256", - "hash": "86688c1a4ceeae1977a1d2110d43aa00a24c2de95e7aab92105643d65df1fcd0", - "url": "https://files.pythonhosted.org/packages/24/a2/644207ea37eb29bdb5d6e52eb17b21452dbac336d0f9b3c13b1cf7c972e9/docker_compose_parser-0.0.24-py3-none-any.whl" + "hash": "c81f3f217e67b668278ffceb71207acee28b006a54bb4c5b3e5af13d6c5eb5d2", + "url": "https://files.pythonhosted.org/packages/7a/13/b33fa8e7d79223ffadb4ec6ad58d297b59d56339ab7c1fd48118b46bc334/docker_compose_parser-0.0.27-py3-none-any.whl" } ], "project_name": "docker-compose-parser", "requires_dists": [ - "model-lib==0.0.24", - "pydantic==1.10.2", - "zero-3rdparty==0.0.24" + "model-lib==0.0.27", + "pydantic-settings>=2.0.3; extra == \"pydantic_v2\"", + "pydantic<3,>=1.10.2", + "pydantic<=2,>=1.10.2; extra == \"pydantic_v1\"", + "pydantic<=3,>=2.1.1; extra == \"pydantic_v2\"", + "zero-3rdparty==0.0.27" ], "requires_python": ">=3.9", - "version": "0.0.24" + "version": "0.0.27" }, { "artifacts": [ @@ -415,20 +421,23 @@ "artifacts": [ { "algorithm": "sha256", - "hash": "de5d5cc875adcacf36e5ff738b01119d261f4c2766d0d03e8a9782cd214d7963", - "url": "https://files.pythonhosted.org/packages/05/e1/de1649bb8281cef96aaf78954b19402765b176dbfd1c26fa0cf9352a0c59/model_lib-0.0.24-py3-none-any.whl" + "hash": "e13d4a56eab00da2abd9d041faffbaee43977ba99befc454e98497c88a756903", + "url": "https://files.pythonhosted.org/packages/c8/9d/550f403267f7121c6b1bc90ff520f86c7c51876b4c4944b1a64533edb595/model_lib-0.0.27-py3-none-any.whl" } ], "project_name": "model-lib", "requires_dists": [ "PyYAML==6.0.1", "orjson>=3.6.5; extra == \"json\"", - "pydantic==1.10.2", + "pydantic-settings>=2.0.3; extra == \"pydantic_v2\"", + "pydantic<3,>=1.10.2", + "pydantic<=2,>=1.10.2; extra == \"pydantic_v1\"", + "pydantic<=3,>=2.1.1; extra == \"pydantic_v2\"", "typing-extensions>=4.3.0", - "zero-3rdparty==0.0.24" + "zero-3rdparty==0.0.27" ], "requires_python": ">=3.9", - "version": "0.0.24" + "version": "0.0.27" }, { "artifacts": [ @@ -1252,16 +1261,19 @@ "artifacts": [ { "algorithm": "sha256", - "hash": "236dd629af46d62fdf6d9fe8e94030b00efd01cbf71d006290daf92ca63faeee", - "url": "https://files.pythonhosted.org/packages/8f/ed/b2555355fed9fdc5c9630ec061f1c9ead152134dda37ee5c5d60a537cf59/zero_3rdparty-0.0.24-py3-none-any.whl" + "hash": "5487b1320b06fd5453c9137563f6058830f4bfb0f7d6154aa95b09395ad4aafb", + "url": "https://files.pythonhosted.org/packages/08/31/9c7bee6f639423f16094fe69d06645d55acc26cc4054d615bfbd0948fbd8/zero_3rdparty-0.0.27-py3-none-any.whl" } ], "project_name": "zero-3rdparty", "requires_dists": [ + "pydantic-settings>=2.0.3; extra == \"pydantic_v2\"", + "pydantic<=2,>=1.10.2; extra == \"pydantic_v1\"", + "pydantic<=3,>=2.1.1; extra == \"pydantic_v2\"", "typing-extensions>=4.3.0" ], "requires_python": ">=3.9", - "version": "0.0.24" + "version": "0.0.27" } ], "platform_tag": null @@ -1273,16 +1285,16 @@ "prefer_older_binary": false, "requirements": [ "PyYAML==6.0.1", - "compose-chart-export==0.0.24", - "docker-compose-parser==0.0.24", - "model-lib==0.0.24", + "compose-chart-export==0.0.27", + "docker-compose-parser==0.0.27", + "model-lib==0.0.27", "orjson==3.6.5", "pantsbuild.pants.testutil<2.17,>=2.16.0a0", "pantsbuild.pants<2.17,>=2.16.0a0", "pydantic==1.10.2", "pydevd-pycharm==231.8109.197", "typing_extensions>=4.3.0", - "zero-3rdparty==0.0.24" + "zero-3rdparty==0.0.27" ], "requires_python": [ "<3.10,>=3.9" diff --git a/_pants/3rdparty/requirements.txt b/_pants/3rdparty/requirements.txt index 8900d4a..391ccdc 100644 --- a/_pants/3rdparty/requirements.txt +++ b/_pants/3rdparty/requirements.txt @@ -2,7 +2,7 @@ PyYAML==6.0.1 pydantic==1.10.2 typing_extensions>=4.3.0 orjson==3.6.5 -model-lib==0.0.24 -docker-compose-parser==0.0.24 -compose-chart-export==0.0.24 -zero-3rdparty==0.0.24 \ No newline at end of file +model-lib==0.0.27 +docker-compose-parser==0.0.27 +compose-chart-export==0.0.27 +zero-3rdparty==0.0.27 \ No newline at end of file diff --git a/_pants/pants_py_deploy/src/pants_py_deploy/BUILD b/_pants/pants_py_deploy/src/pants_py_deploy/BUILD index 0277a21..d9ca326 100644 --- a/_pants/pants_py_deploy/src/pants_py_deploy/BUILD +++ b/_pants/pants_py_deploy/src/pants_py_deploy/BUILD @@ -5,7 +5,7 @@ python_distribution( long_description_path="_pants/pants_py_deploy/readme.md", provides=setup_py( name="pants-py-deploy", - version="0.0.24", + version=VERSION, description="Make it easy to maintain docker-compose files and helm-charts across projects with pants-py-deploy", author="Espen Albert", classifiers=[ diff --git a/_pants/py_package.py b/_pants/py_package.py index 34f50bb..cafb67e 100644 --- a/_pants/py_package.py +++ b/_pants/py_package.py @@ -1,3 +1,4 @@ +VERSION = "0.0.27" def py_package( *, description: str, @@ -11,7 +12,7 @@ def py_package( extra_dependencies = extra_dependencies or [] all_dependencies = [ f":{folder_name}@resolve={resolve}", - f"!!//3rdparty:pydantic_v2", + "!!//3rdparty:pydantic_v2_settings", # settings are optional ] + extra_dependencies resources(name="py-typed", sources=["py.typed"]) python_sources(sources=["*.py"], dependencies=[":py-typed"]) @@ -31,7 +32,7 @@ def py_package( long_description_path=f"{folder_name}/readme.md", provides=setup_py( name=distribution_name, - version="0.0.24", + version=VERSION, description=description, author="Espen Albert", classifiers=[ @@ -41,9 +42,12 @@ def py_package( extras_require=extras_require or {}, long_description_content_type="text/markdown", license="MIT", - url="https://github.com/EspenAlbert/py-libs", + project_urls={ + "Source": f"https://github.com/EspenAlbert/py-libs/tree/main/{folder_name}", + "Documentation": f'https://espenalbert.github.io/py-libs/{folder_name}', + } ), wheel=True, sdist=False, repositories=["@pypi"], - ) + ) \ No newline at end of file diff --git a/compose_chart_export/src/compose_chart_export/py.typed b/compose_chart_export/src/compose_chart_export/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/docker_compose_parser/src/docker_compose_parser/file_models.py b/docker_compose_parser/src/docker_compose_parser/file_models.py index 20c0e69..49fc787 100644 --- a/docker_compose_parser/src/docker_compose_parser/file_models.py +++ b/docker_compose_parser/src/docker_compose_parser/file_models.py @@ -45,8 +45,9 @@ def split_str(cls, value: Any) -> list[str]: @field_validator("default_env", mode="before") def parse_list(cls, value): if isinstance(value, list): - return key_equal_value_to_dict(value) - return value + value = key_equal_value_to_dict(value) + # pydantic v2 will not "convert" values to strings + return {k: str(v) for k, v in value.items()} else: from pydantic import validator # type: ignore diff --git a/docker_compose_parser/src/docker_compose_parser/py.typed b/docker_compose_parser/src/docker_compose_parser/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 0000000..08d7775 --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,65 @@ +site_name: py-libs documentation +site_url: https://espenalbert.github.io/py-libs/ +theme: + name: material + features: + - navigation.tabs + - navigation.sections + - toc.integrate + - navigation.top + - search.suggest + - search.highlight + - content.tabs.link + - content.code.annotation + - content.code.copy + language: en + palette: + - scheme: default + toggle: + icon: material/toggle-switch-off-outline + name: Switch to dark mode + primary: teal + accent: purple + - scheme: slate + toggle: + icon: material/toggle-switch + name: Switch to light mode + primary: teal + accent: lime + +plugins: + - social + - search + +repo_name: EspenAlbert/py-libs +repo_url: https://github.com/EspenAlbert/py-libs +edit_uri: edit/main/docs/ +extra: + social: + - icon: fontawesome/brands/github-alt + link: https://github.com/EspenAlbert + +nav: +- Get Started: index.md +- Model Lib: model_lib +- Compose Chart Export: compose_chart_export +- Docker Compose Parser: docker_compose_parser +- zero-3rdparty: zero_3rdparty + + +markdown_extensions: + - pymdownx.highlight: + anchor_linenums: true + - pymdownx.inlinehilite + - pymdownx.snippets + - admonition + - pymdownx.arithmatex: + generic: true + - footnotes + - pymdownx.details + - pymdownx.superfences + - pymdownx.mark + - attr_list + - pymdownx.emoji: + emoji_index: !!python/name:materialx.emoji.twemoji + emoji_generator: !!python/name:materialx.emoji.to_svg diff --git a/pants.toml b/pants.toml index 34b03b9..4e90415 100644 --- a/pants.toml +++ b/pants.toml @@ -43,7 +43,7 @@ enable_resolves = true [python.resolves] pants-plugins = "_pants/3rdparty/lock.txt" -pydantic-v1 = "_pants/3rdparty/pydantic-v1" +pydantic-v1 = "3rdparty/python/pydantic-v1.lock" python-default = "3rdparty/python/default.lock" [python.resolves_to_interpreter_constraints] @@ -104,5 +104,5 @@ linux_amd = "//:linux_amd" linux_arm = "//:linux_arm" [tailor] -ignore_adding_targets=["_pants:_pants"] +ignore_adding_targets=["_pants:_pants", "//:root"] ignore_paths=["compose_chart_export/tests/test_chart_export/charts/**"] \ No newline at end of file diff --git a/pre_docs.py b/pre_docs.py new file mode 100644 index 0000000..1914af0 --- /dev/null +++ b/pre_docs.py @@ -0,0 +1,34 @@ +import shutil +from pathlib import Path +from typing import Iterable + +SRC = Path(__file__).parent +DOCS_DIR = SRC / "docs" +IGNORED_MD_DIRECTORIES = [".pytest_cache", "test", "dist"] + +FILENAME_RENAME = { + "readme.md": "index.md" +} + +def ignore_md_path(rel_path: str) -> bool: + return any(f"{d}/" in rel_path for d in IGNORED_MD_DIRECTORIES) + + +def add_dest_paths(src_path: Path, md_dest_path: Path) -> Iterable[Path]: + if new_name := FILENAME_RENAME.get(md_dest_path.name): + yield md_dest_path.parent / new_name + yield md_dest_path + +def move_md_files(): + for md_src_path in SRC.rglob("*.md"): + rel_path = str(md_src_path.relative_to(SRC)) + if md_src_path.is_relative_to(DOCS_DIR) or ignore_md_path(rel_path): + continue + md_dest_path = DOCS_DIR / rel_path + for final_dest_path in add_dest_paths(md_src_path, md_dest_path): + final_dest_path.parent.mkdir(parents=True, exist_ok=True) + shutil.copy(md_src_path, final_dest_path) + + +if __name__ == "__main__": + move_md_files() diff --git a/readme.md b/readme.md index 43e5504..8e82a7f 100644 --- a/readme.md +++ b/readme.md @@ -25,6 +25,5 @@ - An experiment for sharing python packages - [model_lib-pydantic base models with convenient dump methods](./model_lib/readme.md) - `pip install model-lib` -- [zero_lib-handy standalone scripts without 3rdparty dependencies](./zero_3rdparty) +- [zero_lib-handy standalone scripts without 3rdparty dependencies](./zero_3rdparty/readme.md) - `pip install zero-3rdparty` -