-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Moved ORDEREDDICT define to central location #3554
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
Conversation
I am getting a merge error I think in the test unix build. Digging through all the make files it seems the end of the test calls a custom make command including This coverage file defines: The one (and only) function this define includes references the ORDEREDDICT define that was moved to a central area. I am sure if I include a define in I am not familiar enough with the whole build setup to want to make that choice on my own though. So any thoughts? If this isn't clear just ping me on discord. |
Ya, that's a weird thing to define. Maybe just remove it and replace the uses with checking if ordereddict is enabled? |
New problem, on a small number of boards, for certain translations the build is failing. These are all M0 builds that were not set to By moving ORDEREDDICT to a central location it was using the FULL_BUILD define. I could introduce a new define but then we are almost back to where we started from, except instead of per port build specifications it would not be per board. Also for some reason this compiles on my PC in all these configurations but not in github actions. |
So basically it's failing on SAMD21 express builds with a few translations. We can try to squeeze those particular translations by setting |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
25 for CFLAGS_INLINE_LIMIT
is unfortunately too small.
So I'd say let's just not implement ordered dicts for SAMD21's. @tannewt How do you feel about that? |
Overall, I'm ok with that. We only need it for the BLE library as far as I know: adafruit/Adafruit_CircuitPython_BLE#97 |
I'll undo those changes. Is there a pattern to use to exclude a feature only from SAMD21 I can copy? |
a5cba16
to
e6d0b20
Compare
In #ifndef MICROPY_PY_COLLECTIONS_ORDEREDDIRECT
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (CIRCUITPY_FULL_BUILD)
#endif
Thanks for your patience in working throgh this! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Go ahead and turn it off in all SAMD21 boards; making the change inside #ifdef SAMD21
in the atmel-samd/mpconfigport.h
d042c9f
to
0a9bcc5
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! This kind of progression, where we run out of space after adding a feature, and have to figure out how to compensate, is completely typical.
Resolving issue #3278 Unify ORDEREDDICT setting. Removed the setting from all the ports. Added it to
circuitpy_mpconifg.h
based on theCIRCUITPY_FULL_BUILD
. As noted in the issue this will now include this feature in the mimxrt10xx port.