Matthew Yoshida
07/17/2025, 12:51 AMtarget-gcs
it is failing due to a dependency mismatch between python 3.13, singer-sdk, and pendulum. Even when I specify the python version it still attempts to use python 3.13.3. Is there a way to resolve this?
(venv) matthewyoshida@Mac demo % meltano add target-gcs --python python3.12
Loader 'target-gcs' already exists in your Meltano project
To add it to your project another time so that each can be configured differently,
add a new plugin inheriting from the existing one with its own unique name:
meltano add loader target-gcs--new --inherit-from target-gcs
2025-07-17T00:48:27.963244Z [info ] Installing loader 'target-gcs'
2025-07-17T00:48:28.768004Z [error ] Loader 'target-gcs' could not be installed: Failed to install plugin 'target-gcs'. details='Using Python 3.13.3 environment at: .meltano/loaders/target-gcs/venv\nResolved 61 packages in 277ms\n Building simplejson==3.11.1\n Building pendulum==2.1.2\n Building ciso8601==2.3.2\nDownloading google-api-python-client (13.0MiB)\n × Failed to build `pendulum==2.1.2`\n ├─▶ The build backend returned an error\n ╰─▶ Call to `poetry.core.masonry.api.build_wheel` failed (exit status: 1)\n\n [stderr]\n The "poetry.dev-dependencies" section is deprecated and will be removed\n in a future version. Use "poetry.group.dev.dependencies" instead.\n Traceback (most recent call last):\n File\n "/Users/matthewyoshida/.cache/uv/sdists-v9/pypi/pendulum/2.1.2/ijtc7moTATOlH6ASYhOpQ/src/build.py",\n line 5, in <module>\n from distutils.command.build_ext import build_ext\n ModuleNotFoundError: No module named \'distutils\'\n Traceback (most recent call last):\n File "<string>", line 11, in <module>\n wheel_filename =\n backend.build_wheel("/Users/matthewyoshida/.cache/uv/builds-v0/.tmpERwHEI",\n {}, None)\n File\n "/Users/matthewyoshida/.cache/uv/builds-v0/.tmp2MF2JY/lib/python3.13/site-packages/poetry/core/masonry/api.py",\n line 58, in build_wheel\n return WheelBuilder.make_in(\n ~~~~~~~~~~~~~~~~~~~~^\n poetry,\n ^^^^^^^\n ...<2 lines>...\n config_settings=config_settings,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n )\n ^\n File\n "/Users/matthewyoshida/.cache/uv/builds-v0/.tmp2MF2JY/lib/python3.13/site-packages/poetry/core/masonry/builders/wheel.py",\n line 95, in make_in\n wb.build(target_dir=directory)\n ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^\n File\n "/Users/matthewyoshida/.cache/uv/builds-v0/.tmp2MF2JY/lib/python3.13/site-packages/poetry/core/masonry/builders/wheel.py",\n line 134, in build\n self._build(zip_file)\n ~~~~~~~~~~~^^^^^^^^^^\n File\n "/Users/matthewyoshida/.cache/uv/builds-v0/.tmp2MF2JY/lib/python3.13/site-packages/poetry/core/masonry/builders/wheel.py",\n line 183, in _build\n self._run_build_script(self._package.build_script)\n ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File\n "/Users/matthewyoshida/.cache/uv/builds-v0/.tmp2MF2JY/lib/python3.13/site-packages/poetry/core/masonry/builders/wheel.py",\n line 304, in _run_build_script\n subprocess.check_call([self.executable.as_posix(), build_script])\n ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File\n "/opt/homebrew/Cellar/python@3.13/3.13.3/Frameworks/Python.framework/Versions/3.13/lib/python3.13/subprocess.py",\n line 419, in check_call\n raise CalledProcessError(retcode, cmd)\n subprocess.CalledProcessError: Command\n \'[\'/Users/matthewyoshida/.cache/uv/builds-v0/.tmp2MF2JY/bin/python\',\n \'build.py\']\' returned non-zero exit status 1.\n\n hint: This usually indicates a problem with the package or the build\n environment.\n help: `pendulum` (v2.1.2) was included because `target-gcs` (v1.1.0) depends\n on `singer-sdk` (v0.5.0) which depends on `pendulum`\n'
2025-07-17T00:48:28.769152Z [error ] Need help fixing this problem? Visit <http://melta.no/> for troubleshooting steps, or to join our friendly Slack community.
Failed to install plugin(s)
╭───────────────────── Traceback (most recent call last) ──────────────────────╮
│ /Users/matthewyoshida/.local/pipx/venvs/meltano/lib/python3.13/site-packages │
│ /meltano/cli/__init__.py:105 in _run_cli │
│ │
│ 102 │ """ │
│ 103 │ try: │
│ 104 │ │ try: │
│ ❱ 105 │ │ │ cli(obj={"project": None}) │
│ 106 │ │ except ProjectReadonly as err: │
│ 107 │ │ │ raise CliError( │
│ 108 │ │ │ │ f"The requested action could not be completed: {err}", │
│ │
│ /Users/matthewyoshida/.local/pipx/venvs/meltano/lib/python3.13/site-packages │
│ /click/core.py:1442 in __call__ │
│ │
│ 1439 │ │
│ 1440 │ def __call__(self, *args: t.Any, **kwargs: t.Any) -> t.Any: │
│ 1441 │ │ """Alias for :meth:`main`.""" │
│ ❱ 1442 │ │ return self.main(*args, **kwargs) │
│ 1443 │
│ 1444 │
│ 1445 class _FakeSubclassCheck(type): │
│ │
│ ... 13 frames hidden ... │
│ │
│ /opt/homebrew/Cellar/python@3.13/3.13.3/Frameworks/Python.framework/Versions │
│ /3.13/lib/python3.13/asyncio/base_events.py:719 in run_until_complete │
│ │
│ 716 │ │ if not future.done(): │
│ 717 │ │ │ raise RuntimeError('Event loop stopped before Future comp │
│ 718 │ │ │
│ ❱ 719 │ │ return future.result() │
│ 720 │ │
│ 721 │ def stop(self): │
│ 722 │ │ """Stop running the event loop. │
│ │
│ /Users/matthewyoshida/.local/pipx/venvs/meltano/lib/python3.13/site-packages │
│ /meltano/cli/add.py:231 in add │
│ │
│ 228 │ │
│ 229 │ if success is False: │
│ 230 │ │ tracker.track_command_event(CliEvent.failed) │
│ ❱ 231 │ │ raise CliError("Failed to install plugin(s)") # noqa: EM101 │
│ 232 │ │
│ 233 │ _print_plugins(plugins) │
│ 234 │ tracker.track_command_event(CliEvent.completed) │
╰──────────────────────────────────────────────────────────────────────────────╯
CliError: Failed to install plugin(s)
Edgar Ramírez (Arch.dev)
07/17/2025, 11:09 PMmeltano remove target-gcs
followed by meltano add target-gcs --python python3.11
Edgar Ramírez (Arch.dev)
07/17/2025, 11:14 PMmeltano add target-gcs --python python3.11 --update
will also do itMatthew Yoshida
07/18/2025, 8:40 PM