cpwood / Pico-Stub

MicroPython stubs for the Raspberry Pi Pico
Apache License 2.0
32 stars 6 forks source link

micropy add stub command fails on Mac #1

Closed deeteeakl closed 3 years ago

deeteeakl commented 3 years ago

Hi,

Mac OS 11.2 Big Sur VS Code 1.53 Python 3.7 (Anaconda) pip 19.1.1 (Anaconda)

I have followed the steps on your "Getting Started" web page and hit an issue when trying to add the stub:

micropy stubs add stubs/micropython-rp2-1_13-290

Here is the text of the output.

MicroPy Loading Project

MicroPy Resolving stub... Traceback (most recent call last): File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/utils/helpers.py", line 101, in ensure_existing_dir raise NotADirectoryError(f"{_path} does not exist!") NotADirectoryError: rp2-micropython-1.13.0 does not exist!

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/stubs/source.py", line 260, in get_source utils.ensure_existing_dir(location) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/utils/helpers.py", line 105, in ensure_existing_dir raise NotADirectoryError(f"{_path} is not a valid path!") NotADirectoryError: rp2-micropython-1.13.0 is not a valid path!

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/stubs/source.py", line 108, in resolve_package repo = next(results) StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/Applications/anaconda3/bin/micropy", line 10, in sys.exit(cli()) File "/Applications/anaconda3/lib/python3.7/site-packages/click/core.py", line 764, in call return self.main(args, kwargs) File "/Applications/anaconda3/lib/python3.7/site-packages/click/core.py", line 717, in main rv = self.invoke(ctx) File "/Applications/anaconda3/lib/python3.7/site-packages/click/core.py", line 1137, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/Applications/anaconda3/lib/python3.7/site-packages/click/core.py", line 1137, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/Applications/anaconda3/lib/python3.7/site-packages/click/core.py", line 956, in invoke return ctx.invoke(self.callback, ctx.params) File "/Applications/anaconda3/lib/python3.7/site-packages/click/core.py", line 555, in invoke return callback(args, kwargs) File "/Applications/anaconda3/lib/python3.7/site-packages/click/decorators.py", line 64, in new_func return ctx.invoke(f, obj, *args, *kwargs) File "/Applications/anaconda3/lib/python3.7/site-packages/click/core.py", line 555, in invoke return callback(args, kwargs) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/cli.py", line 203, in add proj = mpy.project File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/utils/decorators.py", line 20, in _lazy_property setattr(self, attr, fn(self)) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/main.py", line 54, in project proj = self.resolve_project('.', verbose=self.verbose) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/main.py", line 77, in resolve_project proj.load() File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/project/project.py", line 136, in load child.load(kwargs) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/project/modules/stubs.py", line 121, in load stubs = list(self._load_stub_data(stub_data=self.config.get('stubs'))) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/project/modules/stubs.py", line 111, in _load_stub_data yield self.stub_manager.add(name) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/stubs/stubs.py", line 308, in add stub_source = source.get_source(location, log=self.log) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/stubs/source.py", line 262, in get_source return RemoteStubSource(location, kwargs) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/stubs/source.py", line 205, in init location = StubRepo.resolve_package(name) File "/Applications/anaconda3/lib/python3.7/site-packages/micropy/stubs/source.py", line 110, in resolve_package raise exc.StubNotFound(name) micropy.exceptions.StubNotFound: rp2-micropython-1.13.0 is not available!

cpwood commented 3 years ago

Hi @deeteeakl !

That's odd; I've used those two commands so many times and have never run into that until now. I just tried it and got the same thing!

Thankfully, it's really easy to get it working with a subtle change:

cd Pico-Stub-main/stubs
micropy stubs add micropython-rp2-1_13-290

I've updated the article on Medium.

deeteeakl commented 3 years ago

Yes that worked. Thanks so much. I really appreciate what you are doing here.