From c0b80152a563968650cdb1e8309ea6dba50237d8 Mon Sep 17 00:00:00 2001 From: Nico Ritschel Date: Sun, 11 Oct 2026 19:45:00 -0700 Subject: [PATCH 1/3] Require sidequery-pyiceberg 0.12.0.post2 0.12.0.post2 accepts equality-delete merges on tables whose partition spec has evolved once no live data remains under an older spec, so destinations can move a table from daily to monthly partitions without breaking merges. --- pyproject.toml | 2 +- uv.lock | 68 +++++++++++++++++++++++++------------------------- 2 files changed, 35 insertions(+), 35 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index bbfa3d2..6e048e4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -27,7 +27,7 @@ dependencies = [ "pandas>=2.3.3", "pyarrow>=21.0.0", "pydantic<2.11", - "sidequery-pyiceberg[pyiceberg-core]==0.12.0.post1", + "sidequery-pyiceberg[pyiceberg-core]==0.12.0.post2", "requests>=2.32.5", "s3fs>=2024.0.0", # Modern async version required for credential vending compatibility "sqlalchemy>=2.0.44", diff --git a/uv.lock b/uv.lock index 31906f8..e704ab4 100644 --- a/uv.lock +++ b/uv.lock @@ -5,8 +5,8 @@ resolution-markers = [ "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'emscripten'", "(python_full_version >= '3.14' and platform_python_implementation == 'PyPy') or (python_full_version >= '3.14' and sys_platform == 'emscripten')", "python_full_version >= '3.12' and python_full_version < '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'emscripten'", - "python_full_version < '3.12' and platform_python_implementation != 'PyPy' and sys_platform != 'emscripten'", "(python_full_version >= '3.12' and python_full_version < '3.14' and platform_python_implementation == 'PyPy') or (python_full_version >= '3.12' and python_full_version < '3.14' and sys_platform == 'emscripten')", + "python_full_version < '3.12' and platform_python_implementation != 'PyPy' and sys_platform != 'emscripten'", "(python_full_version < '3.12' and platform_python_implementation == 'PyPy') or (python_full_version < '3.12' and sys_platform == 'emscripten')", ] @@ -358,7 +358,7 @@ wheels = [ [[package]] name = "dlt-iceberg" -version = "0.6.2" +version = "0.6.3" source = { editable = "." } dependencies = [ { name = "boto3" }, @@ -389,7 +389,7 @@ requires-dist = [ { name = "pydantic", specifier = "<2.11" }, { name = "requests", specifier = ">=2.32.5" }, { name = "s3fs", specifier = ">=2024.0.0" }, - { name = "sidequery-pyiceberg", extras = ["pyiceberg-core"], specifier = "==0.12.0.post1" }, + { name = "sidequery-pyiceberg", extras = ["pyiceberg-core"], specifier = "==0.12.0.post2" }, { name = "sqlalchemy", specifier = ">=2.0.44" }, ] @@ -1704,7 +1704,7 @@ wheels = [ [[package]] name = "sidequery-pyiceberg" -version = "0.12.0.post1" +version = "0.12.0.post2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "cachetools" }, @@ -1720,36 +1720,36 @@ dependencies = [ { name = "tenacity" }, { name = "zstandard" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/56/6c/44cbeea09caa8f3a23f4ab6f1dfb14de86328785dce82735b5a03a43f534/sidequery_pyiceberg-0.12.0.post1.tar.gz", hash = "sha256:3aa8eea624d8d8bf666264bb45f6dc3fd99faa38e1e549af458b67822dee94eb", size = 1221563, upload-time = "2026-08-18T06:47:49.808Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d1/91/bdead00fe0877846f3b38c024778afb6241c79c6956157169a00221680b2/sidequery_pyiceberg-0.12.0.post1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:396c5eebdfa42cc6e230fdffa7c268c159d8e62ca61e0b6d4a6fb2182b9f4d07", size = 569889, upload-time = "2026-08-18T06:47:04.074Z" }, - { url = "https://files.pythonhosted.org/packages/76/0c/3b435a8b3abf260a10a3f2445b67ca33923eb4d94eb393d3ea125dd72f8c/sidequery_pyiceberg-0.12.0.post1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0ce7bc62456f1edb5cd3232820a03501dd814a209da9e9ecef69e35486b53646", size = 571264, upload-time = "2026-08-18T06:47:05.505Z" }, - { url = "https://files.pythonhosted.org/packages/34/ed/8e10e72894f7adb07073e77b66a2d65b44464c80b0af7503e6513ab619c2/sidequery_pyiceberg-0.12.0.post1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c04ae9bfe2337f8a0074fca3d66412e2701a5f4824cba5d202c3301dece2c93d", size = 765397, upload-time = "2026-08-18T06:47:06.897Z" }, - { url = "https://files.pythonhosted.org/packages/b8/65/9983fbae88a3bfb1edb61ccaf780ffb7b0c53bfd920ab664bc43ea70a58c/sidequery_pyiceberg-0.12.0.post1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b8f8d32ff675a3357fc784b8f0a23e2cef712b99da67f458532ea9765677535a", size = 763792, upload-time = "2026-08-18T06:47:08.381Z" }, - { url = "https://files.pythonhosted.org/packages/3a/3d/e27bafd2082328709f0968dfa37dfa95584388414346aaee8ca145be1b45/sidequery_pyiceberg-0.12.0.post1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:202414c549f18185e4c1e5a6cbcbb6608a8174f4535a7cf8d0ddc58d9d7dbb76", size = 760158, upload-time = "2026-08-18T06:47:10.339Z" }, - { url = "https://files.pythonhosted.org/packages/4c/b9/2660040bc0109b01b1229a656a9b4818730f4bb49ead92a2b6a81a80643a/sidequery_pyiceberg-0.12.0.post1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:e171e1714e34bcd0b8a769e56f9bd1043780fdd43f9db3e6b6853e330f227eca", size = 761470, upload-time = "2026-08-18T06:47:12.083Z" }, - { url = "https://files.pythonhosted.org/packages/ae/1f/d931b5bacc2471d3d978fdd1c7a92799d5d5d6e8bcfc9c1b39ee4b328843/sidequery_pyiceberg-0.12.0.post1-cp311-cp311-win_amd64.whl", hash = "sha256:52214ab7a9290a287ebf6e1d8875309239ef3451b21670586a50f5f857afd504", size = 567991, upload-time = "2026-08-18T06:47:13.531Z" }, - { url = "https://files.pythonhosted.org/packages/24/ea/5a7d947cd36284c5c37ec825d1c32107581cf8b731cf1ecd9cde72556718/sidequery_pyiceberg-0.12.0.post1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:40d61e5aaaf82c97b9f7fe505c20317659ed4bcd3df5e58733b30ca1f7cf67b9", size = 570404, upload-time = "2026-08-18T06:47:15.356Z" }, - { url = "https://files.pythonhosted.org/packages/6b/93/86b8e16f7faf7b653924f6c03a0098a351501309c86c14c236e5cc88cf25/sidequery_pyiceberg-0.12.0.post1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40f8cce7c9a5cbfabec37ab196bf4d27b31afe4a09a2ea6bf2ce2ba9613e5037", size = 571100, upload-time = "2026-08-18T06:47:17.045Z" }, - { url = "https://files.pythonhosted.org/packages/62/d4/24bf787eaad0f9068b80c79b63f8139c7c440499d84aec1374696993aeb6/sidequery_pyiceberg-0.12.0.post1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a96d66adaf8596f3b1b9d5c32449afbe36f4638eddb21183236170ec45eec2d7", size = 773086, upload-time = "2026-08-18T06:47:18.542Z" }, - { url = "https://files.pythonhosted.org/packages/15/0a/ffc7adc11210b21bfd7c5060ce011e6c1133ad4b218d4aa4cfd79ba4e675/sidequery_pyiceberg-0.12.0.post1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4a85f8e2056ab49c29c9a112db94a7900664b177451a25bca03856bb8b813390", size = 774600, upload-time = "2026-08-18T06:47:20.407Z" }, - { url = "https://files.pythonhosted.org/packages/fe/1c/1cac1b53bd59e529ce2fafaab139f4a2cab6179a149ca58d65dd4c113f9d/sidequery_pyiceberg-0.12.0.post1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6d20ca2edea10bf1b13a0dc1aeddafca61896ea0afb0f456a2e63c23e82c7ee5", size = 766441, upload-time = "2026-08-18T06:47:22.09Z" }, - { url = "https://files.pythonhosted.org/packages/33/45/fe67ac8c457ccfc05965555bb975adce0f757c803823ca143a7048148fbc/sidequery_pyiceberg-0.12.0.post1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:bf0de8fe45df84e043d868af6a74c6fb9ebcd7462f264e860aaa6afbc9217501", size = 770726, upload-time = "2026-08-18T06:47:23.665Z" }, - { url = "https://files.pythonhosted.org/packages/bd/4e/d661681b3d264c9a3b539b99146cd0f5e0df289989b1338d32c15583c871/sidequery_pyiceberg-0.12.0.post1-cp312-cp312-win_amd64.whl", hash = "sha256:590145cc4214d0079a419f61fef767062fbaf8c5bc0103ce92fa1abb2e374610", size = 567871, upload-time = "2026-08-18T06:47:25.324Z" }, - { url = "https://files.pythonhosted.org/packages/70/e9/76de2683789e8242407ed44978572436dbcf7b314d26b37f3b5d2f1039a8/sidequery_pyiceberg-0.12.0.post1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8ca9689be79735b096e3252e4710a2d8ba73716cae5a2dd21bb6ee326ba90d54", size = 570084, upload-time = "2026-08-18T06:47:27.061Z" }, - { url = "https://files.pythonhosted.org/packages/79/39/4ba9812effa2da190647f73c6984e101798bc64ad53d387e200bbdeb152e/sidequery_pyiceberg-0.12.0.post1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ff4837baa58c89a6bce5095cf2ef84ddc097f25649f39a5e5b063a2406672264", size = 570669, upload-time = "2026-08-18T06:47:28.743Z" }, - { url = "https://files.pythonhosted.org/packages/f0/69/4944f7f3f20ed03a613c926c00b16ef12ff8fc39bf28ebb59027a53e42ff/sidequery_pyiceberg-0.12.0.post1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:678f4762da2bfa9211ed127a0436fa62de1a5245c111df9ad9b46a95740fcbef", size = 764463, upload-time = "2026-08-18T06:47:30.199Z" }, - { url = "https://files.pythonhosted.org/packages/e8/fb/5ddc9ea2524bf79e1303bcb82532cb72def42a1d9ae36590ca0dfcb723c6/sidequery_pyiceberg-0.12.0.post1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a29adeea88c662959e08da6a87a0e1fd1cca1543c51fc495ce8a18f4490c5ccf", size = 766082, upload-time = "2026-08-18T06:47:31.877Z" }, - { url = "https://files.pythonhosted.org/packages/64/c5/039b209303ab7e812403b3d51d895f72173a89e1bbba7bfe17dc5045b80c/sidequery_pyiceberg-0.12.0.post1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:03e738cf613543505310e09cbebb14a8545fad97431078aadee5f21b7e28c05f", size = 758935, upload-time = "2026-08-18T06:47:33.428Z" }, - { url = "https://files.pythonhosted.org/packages/a8/06/f84b9550c9ff85339a8bd77b45f5dc6465057d0e2f4234f0553ddffdf33e/sidequery_pyiceberg-0.12.0.post1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:1ca542cdbb1ea282653567f499465245c6f08f90833a691c2e212c4cff12a9a6", size = 763178, upload-time = "2026-08-18T06:47:35.031Z" }, - { url = "https://files.pythonhosted.org/packages/88/81/016aadf0a556e44165f876b6ad2cff9da2deb9b4e0bf3e50d9d194ee277a/sidequery_pyiceberg-0.12.0.post1-cp313-cp313-win_amd64.whl", hash = "sha256:17f650166d47e7dfadf3d5864c2b4a7d4848838c09f7242fd9bc0769e574689a", size = 567172, upload-time = "2026-08-18T06:47:36.488Z" }, - { url = "https://files.pythonhosted.org/packages/f3/a2/b3bb6397d1101df172c2f9fae62644878e6b04116ebd7186c2bcef9c34b2/sidequery_pyiceberg-0.12.0.post1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:63c36381bfb9211b6ea879e7c9d967459442759a0c2a9cf4ffe4a57176f328cc", size = 570339, upload-time = "2026-08-18T06:47:37.974Z" }, - { url = "https://files.pythonhosted.org/packages/95/3c/de9dcb0bdbe830d444fd4e740b8c7e9c3958abd2c692cb1c4ad8bd142ecf/sidequery_pyiceberg-0.12.0.post1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:a4519f3cb489d17e16bc8653e8b14b4f62064e5d94abde775acde8ba617704f9", size = 571065, upload-time = "2026-08-18T06:47:39.515Z" }, - { url = "https://files.pythonhosted.org/packages/23/30/94c52de091137e15e2feae5698987cebce1639f0b9ae07a7d291f6078d86/sidequery_pyiceberg-0.12.0.post1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92b557d969e5b93e10c2d1136c8ef9f10cd01e01eb59e2b8e1ca9dabac762c81", size = 764147, upload-time = "2026-08-18T06:47:41.201Z" }, - { url = "https://files.pythonhosted.org/packages/9c/f1/2f2e95a7b1154a89b75fcadd635dcdb8fefce6bce5a047cbb7422b273d99/sidequery_pyiceberg-0.12.0.post1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:25727cae26b2bc80863418dc8a9bda8faefeefc2c08728e4e6f8fcad2150b63a", size = 764327, upload-time = "2026-08-18T06:47:43.277Z" }, - { url = "https://files.pythonhosted.org/packages/99/52/f46632b61fc12fec77c262ae6c8ec78528dcac340fd26285de0f82276368/sidequery_pyiceberg-0.12.0.post1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1cb3a7fb744a1f817497213b32645720e2e9907250c5512adad7599ffa6f43c3", size = 758800, upload-time = "2026-08-18T06:47:44.722Z" }, - { url = "https://files.pythonhosted.org/packages/2f/da/537410df0a6b1761295c295c00ae4d9dd179cdf184f0485bc12a1b57d916/sidequery_pyiceberg-0.12.0.post1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:e11b2c8f0824a6c2ace26a0069896e207e39156489c62a48f7235b87b2b64ed1", size = 762099, upload-time = "2026-08-18T06:47:46.331Z" }, - { url = "https://files.pythonhosted.org/packages/87/02/87b3f2586922b7776fed06da0143936249689fc767e5aff94ffad571ec6c/sidequery_pyiceberg-0.12.0.post1-cp314-cp314-win_amd64.whl", hash = "sha256:48dc7d745bfa2f4a6cd0ab12258d009c0bdf20057edff0cf6d09cdc61e3eda57", size = 564712, upload-time = "2026-08-18T06:47:47.964Z" }, +sdist = { url = "https://files.pythonhosted.org/packages/96/48/113739d641efc324af0bb4963b7ec6dcfc77d0adddc5b1ab4f9c6f52d515/sidequery_pyiceberg-0.12.0.post2.tar.gz", hash = "sha256:8b4550e025a3297910919b502c442f093e582afb332a82c97b91e60be42e695f", size = 1223440, upload-time = "2026-10-12T02:17:42.095Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c9/b5/0989193a514fb6dadb7d359f15b555eee9ea44c0bcbfe9b1400e2e156e7e/sidequery_pyiceberg-0.12.0.post2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:82360d5adf633a68efe9b76e5eafb4dcc62407518dd2a4fe8a09a7545d29772f", size = 572642, upload-time = "2026-10-12T02:16:57.29Z" }, + { url = "https://files.pythonhosted.org/packages/1a/ec/c27e247f52e18f8419fb8b0e84ca29f14aa60409bf40d45dbb3a5d162007/sidequery_pyiceberg-0.12.0.post2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c4b1fe3df6f946a3ebbcc27b0a3e918f171f6e628b0eb6e03b5bb95c598ecb89", size = 573624, upload-time = "2026-10-12T02:16:58.795Z" }, + { url = "https://files.pythonhosted.org/packages/64/9c/81ea557ac1f28a37627f0edb3a02501411324576bd1d6a4be575546cbd54/sidequery_pyiceberg-0.12.0.post2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fe4c197e125309760aac6e2c925fc8a71e747fb1b4eaf95ae2e5df562c66de5b", size = 779648, upload-time = "2026-10-12T02:17:00.209Z" }, + { url = "https://files.pythonhosted.org/packages/48/60/b4912a16fd9e750929bfcc75b755f35c55cbb8de1f4e92c3050770900489/sidequery_pyiceberg-0.12.0.post2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a4cf31de7e284fceaca4c7aeaab9f436bc06fb67540384eda7b66a8211a43787", size = 777670, upload-time = "2026-10-12T02:17:01.657Z" }, + { url = "https://files.pythonhosted.org/packages/8a/75/d1c8ba5bb0b16c4ba42eef663e63518698353a3ab043ae4d4ebbf90c38f7/sidequery_pyiceberg-0.12.0.post2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:34fa2f34c2ac1e446edca9ff11110ae0e7df35895ab8c7174e1d4fef1b07f1b4", size = 775907, upload-time = "2026-10-12T02:17:03.222Z" }, + { url = "https://files.pythonhosted.org/packages/8f/99/77c2b2efd120b15d42af113e078d31a45054c7259ee0bc6bacad5ba443f7/sidequery_pyiceberg-0.12.0.post2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:23dc7bbd8c15250ab0a3dd1847f10aeeb421611a7364d8dcfa2b78ed350aaa2b", size = 775928, upload-time = "2026-10-12T02:17:04.855Z" }, + { url = "https://files.pythonhosted.org/packages/00/f3/51cdd5314f4134fed320175168e79a818b5d13108382ff2a5386f1d01e6f/sidequery_pyiceberg-0.12.0.post2-cp311-cp311-win_amd64.whl", hash = "sha256:b3ac072f4435455726dfcfcd0825638773d8cfe60b4726b71882c9af6646ef3a", size = 569996, upload-time = "2026-10-12T02:17:06.357Z" }, + { url = "https://files.pythonhosted.org/packages/67/f0/5b073258394f3752043a5f1c8cb8ba68ae3b4f05b100fcc844ed79e0288d/sidequery_pyiceberg-0.12.0.post2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:876da0ea131022cbc48f38e0f9f7df95ba114256849776c3190282fd72cc23c2", size = 573327, upload-time = "2026-10-12T02:17:08.093Z" }, + { url = "https://files.pythonhosted.org/packages/ac/40/413e0c73a2b6a274d200fb827c58e101c1c3409e971e567396cc264af558/sidequery_pyiceberg-0.12.0.post2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a03ebc0a85c2a6a15440bb83628f7174f76e5548bcd2455d77f632c11a055d7c", size = 573918, upload-time = "2026-10-12T02:17:09.728Z" }, + { url = "https://files.pythonhosted.org/packages/be/a3/e289520d361d93194329ff908000fb802c8830af378ef8245a62fbb374d4/sidequery_pyiceberg-0.12.0.post2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fce5a9c1c0741b436ad4d2a67aa3fc44fd4bb62132f555ca632422a030cda521", size = 785142, upload-time = "2026-10-12T02:17:11.264Z" }, + { url = "https://files.pythonhosted.org/packages/1e/b2/ad4d5dec9597b6559766d21ecce59f861791226cabd60ec8d1f0779deac9/sidequery_pyiceberg-0.12.0.post2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8103e652b219762571d6daa5b47a1a5653fb39c131829934ad1f245eba50697a", size = 787104, upload-time = "2026-10-12T02:17:12.913Z" }, + { url = "https://files.pythonhosted.org/packages/0a/ff/c8654a961bd51b4a61edbc7cd8f1837d25d65356d2d7040065757d192cc4/sidequery_pyiceberg-0.12.0.post2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:fb664d60f1352eb9161cbbdce18218f354e1d5fb98d3cb2854239af9e3b66fb1", size = 778805, upload-time = "2026-10-12T02:17:14.64Z" }, + { url = "https://files.pythonhosted.org/packages/3e/19/5d1815a9f4b149513a7d4e4a44e2eef7aaa7bfc83e112db25edaa7d3a3c9/sidequery_pyiceberg-0.12.0.post2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8e21ba112ba391800ddeb5b4cddc4c0ba13a8dc1790424a07a8d505bdb97385a", size = 784112, upload-time = "2026-10-12T02:17:16.647Z" }, + { url = "https://files.pythonhosted.org/packages/a2/ad/6b16d003ba19eb8ca4337324b99fda8c93478d2e5d576f00f4e5cc0b6075/sidequery_pyiceberg-0.12.0.post2-cp312-cp312-win_amd64.whl", hash = "sha256:b5a2970a23535033094d1689ff145ddca8a288e0f491b93ee9ba69999349db39", size = 570271, upload-time = "2026-10-12T02:17:18.244Z" }, + { url = "https://files.pythonhosted.org/packages/57/64/4ae3d26a04f058534a77282e6a3d4ff6e44a487ecd5310eb8517802e2b1e/sidequery_pyiceberg-0.12.0.post2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:0189c7eb8142d26df3d8e87c245ee4b7cead6225d88b26816eaf122bc8ff88f9", size = 572952, upload-time = "2026-10-12T02:17:19.645Z" }, + { url = "https://files.pythonhosted.org/packages/30/b6/2b7755c61075867631dd9a609bc752390aed74394e3baef3270e7c1c2752/sidequery_pyiceberg-0.12.0.post2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:bc593b38e8d46fe27c71c9c1f96e0a5a6cf95b53bc5ce817e179bda868195828", size = 573448, upload-time = "2026-10-12T02:17:21.213Z" }, + { url = "https://files.pythonhosted.org/packages/3b/55/83ab051dc3aa20d767345405d5b65700438d864ffed2be2d49cf4be873f2/sidequery_pyiceberg-0.12.0.post2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:07e745b6e65d0149127825fa1e66fef552538eee8bc3c46164709f6be7025325", size = 778996, upload-time = "2026-10-12T02:17:22.841Z" }, + { url = "https://files.pythonhosted.org/packages/64/1d/1cba4dc73fa8fac8f5b2d6ce0e024ecfd0f1fd8f6be81e018079a160f8a0/sidequery_pyiceberg-0.12.0.post2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bc5f68c763323b48547dedeb1741f76ebc3c997626ac74b43160b2697ba8f8d3", size = 781744, upload-time = "2026-10-12T02:17:24.527Z" }, + { url = "https://files.pythonhosted.org/packages/db/fe/d1abd937eec5beb86eb81dca4112f98c0db1d3714221c17eb0b47165e3b3/sidequery_pyiceberg-0.12.0.post2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:300ba9dc3b778990d7fe768d9426263fe9caf419d81db7310965f7a5deb70db0", size = 773821, upload-time = "2026-10-12T02:17:25.977Z" }, + { url = "https://files.pythonhosted.org/packages/f1/88/79e28201f2b9df9f08eda20c7cc06c2796e6dbc78512ef19c0d8c2c035d7/sidequery_pyiceberg-0.12.0.post2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d4380988f5112d380c5b085cbae1d41ae65a7af67f7ea4c9cd6c81a7dd201960", size = 779931, upload-time = "2026-10-12T02:17:27.52Z" }, + { url = "https://files.pythonhosted.org/packages/57/0b/7baf8345157c9c887e26c948115b45e35a8a8ce8e4d7188faf6ff3b644c3/sidequery_pyiceberg-0.12.0.post2-cp313-cp313-win_amd64.whl", hash = "sha256:63e484f2b4a0e82998422837eba09e519bf7907ea3113f537877d2d547cf7661", size = 569503, upload-time = "2026-10-12T02:17:29.087Z" }, + { url = "https://files.pythonhosted.org/packages/30/7b/198ed788251fa5c37c0887dbf42c89ff63a61cc721256cbeef3b60392139/sidequery_pyiceberg-0.12.0.post2-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:fe9864aec7343e2229f816585ab00ddb4bf57f4a2c9776d4a3135c5804b5ab53", size = 573167, upload-time = "2026-10-12T02:17:30.608Z" }, + { url = "https://files.pythonhosted.org/packages/e8/36/f4a06fdb957800152d409097e7b8ddd8b880cd620b31fc7d669f764cb7f3/sidequery_pyiceberg-0.12.0.post2-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:790efec8765542c60c0048e781cca18b4d308cd234de3e1891a88a16f874336c", size = 573758, upload-time = "2026-10-12T02:17:32.325Z" }, + { url = "https://files.pythonhosted.org/packages/d2/82/72e3309ed5ff67b80aceb7b1577f0fb9db9f12ec5caab36f18297d3c7b26/sidequery_pyiceberg-0.12.0.post2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4d21ee78349271edc3db80f362bf9b6ff1060e2d05b7da4949066a9899bbc1ef", size = 778659, upload-time = "2026-10-12T02:17:34.036Z" }, + { url = "https://files.pythonhosted.org/packages/35/6d/aa70bffd0ae2eedbdf4eab70d5d09a9a07271aea15ce648edf913eb1bd8b/sidequery_pyiceberg-0.12.0.post2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d58182e845d51ec802931ceed4563ccef588733625affbd7faf7f5eeece87864", size = 779942, upload-time = "2026-10-12T02:17:35.642Z" }, + { url = "https://files.pythonhosted.org/packages/81/5a/50480aed198acf6974aaed038b66fd8107319abeaca0cc5e2df04155192b/sidequery_pyiceberg-0.12.0.post2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:e6809e716178ccb43005909b0fdbbf04d73c9f74113649c59781f42c1182dff9", size = 774758, upload-time = "2026-10-12T02:17:37.39Z" }, + { url = "https://files.pythonhosted.org/packages/40/f3/2dfea031859e595903aa148b6393018b8a0e7cbe5326ae4be8bc1fc035a7/sidequery_pyiceberg-0.12.0.post2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b31cb8644b12416070de53b22779b6f41c04731180d4105414f25d47177e3993", size = 778302, upload-time = "2026-10-12T02:17:39.143Z" }, + { url = "https://files.pythonhosted.org/packages/fe/9e/88b7d64179b5e568d8244606feef3a835708043cc8e02cfaed1b12008e3d/sidequery_pyiceberg-0.12.0.post2-cp314-cp314-win_amd64.whl", hash = "sha256:4ae665ba3a279493228a188ffea723ba88e99a6e4c4833f2688d12cae2080c1d", size = 567293, upload-time = "2026-10-12T02:17:40.5Z" }, ] [package.optional-dependencies] From 27983ca57f18a3b72836f1583899b93c83e9b40b Mon Sep 17 00:00:00 2001 From: Nico Ritschel Date: Sun, 11 Oct 2026 19:46:45 -0700 Subject: [PATCH 2/3] Create the test bucket with the MinIO server image's mc minio/mc is no longer pullable from Docker Hub, so the integration stack failed before any test ran. The server image ships the same mc binary. --- docker-compose.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 4d827ca..f100141 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -18,9 +18,10 @@ services: volumes: - minio-data:/data - # MinIO client to create bucket + # MinIO client to create bucket. The minio/mc image is no longer pullable; + # the server image bundles the same mc binary. minio-setup: - image: minio/mc:latest + image: minio/minio:latest container_name: minio-setup depends_on: minio: From 3d018225f992da5fdf151cd2d53beacb7c36cde8 Mon Sep 17 00:00:00 2001 From: Nico Ritschel Date: Sun, 11 Oct 2026 19:49:11 -0700 Subject: [PATCH 3/3] Run integration storage on RustFS MinIO stopped publishing images and neither minio/minio nor minio/mc can be pulled any more, so the integration stack never started. Run RustFS under the same service name and credentials and create the bucket with the AWS CLI, matching apache/iceberg-python's switch. --- docker-compose.yml | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index f100141..b6bb016 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,38 +1,42 @@ services: - # MinIO for S3-compatible storage + # S3-compatible storage. MinIO stopped publishing images (minio/minio and + # minio/mc are no longer pullable), so this runs RustFS under the same service + # name and credentials. minio: - image: minio/minio:latest + image: rustfs/rustfs:1.0.0-rc.5 container_name: minio-storage ports: - "9002:9000" - - "9001:9001" environment: - MINIO_ROOT_USER: minioadmin - MINIO_ROOT_PASSWORD: minioadmin - command: server /data --console-address ":9001" + RUSTFS_ACCESS_KEY: minioadmin + RUSTFS_SECRET_KEY: minioadmin + RUSTFS_VOLUMES: /data + RUSTFS_ADDRESS: ":9000" healthcheck: - test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"] + test: ["CMD-SHELL", "curl --fail http://127.0.0.1:9000/health"] interval: 5s - timeout: 3s + timeout: 5s retries: 10 + start_period: 5s volumes: - minio-data:/data - # MinIO client to create bucket. The minio/mc image is no longer pullable; - # the server image bundles the same mc binary. + # Create the warehouse bucket minio-setup: - image: minio/minio:latest + image: amazon/aws-cli:2.36.40 container_name: minio-setup depends_on: minio: condition: service_healthy - entrypoint: > - /bin/sh -c " - /usr/bin/mc alias set myminio http://minio:9000 minioadmin minioadmin; - /usr/bin/mc mb myminio/warehouse || true; - /usr/bin/mc anonymous set public myminio/warehouse; - exit 0; - " + environment: + AWS_ACCESS_KEY_ID: minioadmin + AWS_SECRET_ACCESS_KEY: minioadmin + AWS_REGION: us-east-1 + AWS_ENDPOINT_URL: http://minio:9000 + entrypoint: /bin/sh + command: + - -c + - "aws s3api head-bucket --bucket warehouse 2>/dev/null || aws s3 mb s3://warehouse" # Nessie catalog for Iceberg REST nessie: