pfalcon / pycopy

Pycopy - a minimalist and memory-efficient Python dialect. Good for desktop, cloud, constrained systems, microcontrollers, and just everything.
http://pycopy.readthedocs.io
MIT License
805 stars 78 forks source link

Webrepl missing in ESP8266 port from v3.2.3 #50

Open iBobik opened 4 years ago

iBobik commented 4 years ago

In build firmware for ESP8266 generic board I miss modules webrepl and webrepl_setup. (ImportError)

In v3.2.2 version it is ok, could be related to changes here:

If not the bug has to be introduced somewhere here: https://github.com/pfalcon/pycopy/compare/v3.2.2...v3.2.3

I use this builder: https://gitlab.com/janpoboril/micropython-docker-build/-/tree/pycopy

pfalcon commented 4 years ago

Thanks for the report.

The story here would be: I initially was skeptical about "manifest" feature from upstream, IMHO it's just complexity-rising and security-questionable feature, so I kinda skipped it, preferring to use old good modules/ dir with symlinks. However, manifests become more pervasive in upstream, so I have little choice but to follow with their proliferation. (Another choice would be to formally "drop" support for baremetal ports using it, which I'm kinda not ready yet, hoping that baremetal ports maintainers interested in them will surface).

So, for 3.2.3, I went over upstream history, and pulled whatever was missing from "manifest" support code. Thus, that part was indeed touched, and it may have led to some regressions (either not everything was pulled in, or there're conflicts with older code used).

As I mentioned a few times, I concentrate on "finishing" Pycopy, and working on the reference port, the Unix port. If there's interest in running Pycopy on baremetal targets in the meantime, I welcome contributions (like, testing and investigating cases like this). If not, it goes into backlog, and I'll look into it when have time.