You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think I have identified this correctly, but please take it with a pinch of salt. The following gives an error on python 3.10, and not on 3.9. Please also see snowflakedb/snowflake-connector-python#986, I believe this should fix the M1 mac issues.
I was taking a look at dbt 1.0 to see if the new version runs on my M1 Macbook Pro. I did this in a new python 3.10 env: To install it I first installed the development version of snowflake-connector-python, since only master does not give a pyarrow 5.0 error, since it has been bumped to 6.0 on master: pip install https://github.com/snowflakedb/snowflake-connector-python/archive/refs/heads/master.zip
Then I installed dbt-core by pip install dbt-core, and reactivated my environment (and checked which dbt).
Now when I run dbt, I get the following error and traceback:
Traceback (most recent call last):
File "/Users/thomas/mambaforge/envs/py10dbt/bin/dbt", line 33, in<module>
sys.exit(load_entry_point('dbt-core==1.0.0', 'console_scripts', 'dbt')())
File "/Users/thomas/mambaforge/envs/py10dbt/bin/dbt", line 25, in importlib_load_entry_point
returnnext(matches).load()
File "/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/importlib/metadata/__init__.py", line 162, in load
module = import_module(match.group('module'))
File "/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/site-packages/dbt/main.py", line 18, in<module>
import dbt.task.build as build_task
File "/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/site-packages/dbt/task/build.py", line 1, in<module>
from .run import RunTask, ModelRunner as run_model_runner
File "/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/site-packages/dbt/task/run.py", line 8, in<module>
from .compile import CompileRunner, CompileTask
File "/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/site-packages/dbt/task/compile.py", line 3, in<module>
from .runnable import GraphRunnableTask
File "/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/site-packages/dbt/task/runnable.py", line 54, in<module>
from dbt.parser.manifest import ManifestLoader
File "/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/site-packages/dbt/parser/__init__.py", line 8, in<module>
from .models import ModelParser # noqa
File "/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/site-packages/dbt/parser/models.py", line 17, in<module>
from dbt_extractor import ExtractionError, py_extract_from_source # type: ignore
ImportError: dlopen(/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/site-packages/dbt_extractor.cpython-310-darwin.so, 0x0002): tried: '/Users/thomas/mambaforge/envs/py10dbt/lib/python3.10/site-packages/dbt_extractor.cpython-310-darwin.so' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e')), '/usr/local/lib/dbt_extractor.cpython-310-darwin.so' (no such file), '/usr/lib/dbt_extractor.cpython-310-darwin.so' (no such file)
I tried pip install dbt-core --no-binary :all: to not use a wheel, but either that didn't do what I think it does or it didn't work, I still get the same error.
M1 support has been quite desired (see #3239), and people might think this is still an issue if they try on their 3.10 environments.
@thomasaarholt Thanks for the report, as well as the comments on the associated issues!
We're working on building ARM / M1 wheels for the dbt-extractor dependency: dbt-labs/dbt-extractor#41
I believe this is the final step toward true native support for dbt-core on M1s. It sounds like dbt-snowflake will also be supported natively, thanks to updated dependencies in recent versions of snowflake-connector-python (snowflakedb/snowflake-connector-python#986 (comment)).
FWIW Python 3.10 is not yet officially supported by dbt-core, as we aren't running automated tests in py10 environments. I'm glad you've managed to get this working all the same.
Is there an existing issue for this?
Current Behavior
I think I have identified this correctly, but please take it with a pinch of salt. The following gives an error on python 3.10, and not on 3.9. Please also see snowflakedb/snowflake-connector-python#986, I believe this should fix the M1 mac issues.
I was taking a look at dbt 1.0 to see if the new version runs on my M1 Macbook Pro. I did this in a new python 3.10 env: To install it I first installed the development version of snowflake-connector-python, since only master does not give a pyarrow 5.0 error, since it has been bumped to 6.0 on master:
pip install https://github.com/snowflakedb/snowflake-connector-python/archive/refs/heads/master.zip
Then I installed dbt-core by
pip install dbt-core
, and reactivated my environment (and checkedwhich dbt
).Now when I run
dbt
, I get the following error and traceback:I tried
pip install dbt-core --no-binary :all:
to not use a wheel, but either that didn't do what I think it does or it didn't work, I still get the same error.M1 support has been quite desired (see #3239), and people might think this is still an issue if they try on their 3.10 environments.
Expected Behavior
No response
Steps To Reproduce
No response
Relevant log output
No response
Environment
What database are you using dbt with?
snowflake
Additional Context
No response
The text was updated successfully, but these errors were encountered: