───────────────────────────────────────── Installa...
# meltano-plugin-development
n
───────────────────────────────────────── Installation error ─────────────────────────────────────────────────╮ │ Using Python 3.12.3 environment at: .meltano/loaders/target-bigquery/venv │ │ Resolved 57 packages in 1.53s │ │ Building pendulum==2.1.2 │ │ Downloading pyarrow (46.6MiB) │ │ × Failed to build
pendulum==2.1.2
│ │ ├─▶️ The build backend returned an error │ │ ╰─▶️ Call to
poetry.core.masonry.api.build_wheel
failed (exit status: 1) │ │ │ │ [stderr] │ │ The "poetry.dev-dependencies" section is deprecated and will be removed in a future version. Use │ │ "poetry.group.dev.dependencies" instead. │ │ Traceback (most recent call last): │ │ File "/home/niraj/.cache/uv/sdists-v9/pypi/pendulum/2.1.2/2ZdQfm6-LIvjIM4D/src/build.py", line 5, in │ │ <module> │ │ from distutils.command.build_ext import build_ext │ │ ModuleNotFoundError: No module named 'distutils' │ │ Traceback (most recent call last): │ │ File "<string>", line 11, in <module> │ │ File "/home/niraj/.cache/uv/builds-v0/.tmppjKwQF/lib/python3.12/site-packages/poetry/core/masonry/api.py", │ │ line 58, in build_wheel │ │ return WheelBuilder.make_in( │ │ ^^^^^^^^^^^^^^^^^^^^^ │ │ File │ │ "/home/niraj/.cache/uv/builds-v0/.tmppjKwQF/lib/python3.12/site-packages/poetry/core/masonry/builders/wheel.py │ │ ", │ │ line 95, in make_in │ │ wb.build(target_dir=directory) │ │ File │ │ "/home/niraj/.cache/uv/builds-v0/.tmppjKwQF/lib/python3.12/site-packages/poetry/core/masonry/builders/wheel.py │ │ ", │ │ line 134, in build │ │ self._build(zip_file) │ │ File │ │ "/home/niraj/.cache/uv/builds-v0/.tmppjKwQF/lib/python3.12/site-packages/poetry/core/masonry/builders/wheel.py │ │ ", │ │ line 183, in _build │ │ self._run_build_script(self._package.build_script) │ │ File │ │ "/home/niraj/.cache/uv/builds-v0/.tmppjKwQF/lib/python3.12/site-packages/poetry/core/masonry/builders/wheel.py │ │ ", │ │ line 304, in _run_build_script │ │ subprocess.check_call([self.executable.as_posix(), build_script]) │ │ File "/usr/lib/python3.12/subprocess.py", line 413, in check_call │ │ raise CalledProcessError(retcode, cmd) │ │ subprocess.CalledProcessError: Command '['/home/niraj/.cache/uv/builds-v0/.tmppjKwQF/bin/python', 'build.py']' │ │ returned non-zero exit status 1. │ │ │ │ │ │ hint:
pendulum
(v2.1.2) was included because
z3-target-bigquery
(v0.7.2) depends on
singer-sdk
(v0.22.1) which │ │ depends on
pendulum
│ │ hint: Build failures usually indicate a problem with the package or the build environment
r
Using Python 3.12.3 environment
ModuleNotFoundError: No module named 'distutils'
pendulum==2.1.2
has no wheel for Python 3.12, so it is being built from source which requires
distutils
, but this was removed in Python 3.12. You have a couple of options: 1. Use Python 3.11 (https://docs.meltano.com/reference/settings/#python) and append
setuptools<81
to the
pip_url
to workaround the subsequent
ModuleNotFoundError: No module named 'pkg_resources'
error (https://github.com/pypa/setuptools/issues/5174 for more context) 2. Keep using Python 3.12 and add
poetry-core setuptools<81 --no-build-isolation
to the
pip_url
to ensure all required dependency are present at build-time 3. Reference a fork like https://github.com/Matatika/target-bigquery that has updated the SDK version, which removes the dependency on
pendulum
entirely
👍 2