New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP: A lot of additions and bug fixes #64
base: master
Are you sure you want to change the base?
Conversation
Thanks, this looks impressive, but...
... such big codedrops really don't scale and aren't sustainable. If you're interested in contributing, I'd suggest to start with a few patches, and work out contribution process suitable for us both. That indeed includes following contribution guidelines, having tests, and in general, having common vision where that all leads us. Note that recently, I try to use following approach: keep "native Pycopy" approach (generic small, unbloated code) in separate namespace (just the same as Pycopy builtin modules), and port CPython stdlib modules for all their bloated glory otherwise (and thus suitable for existing CPython software, and reusing existing CPython tests). Of course, CPython's modules still require some patching (and some tests skipping), but it's more sustainable approach than reimplementing everything from scratch. (Only things which worth being minimal are reimplemented from scratch.) |
Limitation: no positional arguments
required for compatibility
micropython doesn't like that
also TYPE_CHECKING is False by definition for this to actually work, micropython needs to implement __class_getitem__ cf. github.com/smurfix/micropython
useful for quick&dirty getting-code-to-work unfortunately micropython cannot subclass dict, otherwise we'd emit a warning when these are used
The commits in this series are more-or-less standalone, but I didn't exactly feel like submitting 30 PRs.
These changes are either small(ish) bug fixes, or are necessary to more-or-less-seamlessly support (my MicroPython-ized fork of) Trio as a structured alternative to [u]asyncio.
NB: yes I know that many commit messages ignore the contributor guidelines. I'll fix those (and others) soon.