Closed Josverl closed 1 year ago
Note that recently micropython-lib has been made a submodule of the micropython repository, so theoretically this is now a non-issue and the micropython-lib submodule version which comes with a certain micropython tag should be the correct one for that micropython version.
@stinos , thanks for pointing that out. at least that should mean that my list should not need to grow longer 🤞 ( and I need to validate my build model for versions >1.19.1)
That still means that practically there is still an issue for people to find the correct version for all published versions even for a submodule I would say the version tags are a simple way of documenting the dependencies between the two
Thanks @Josverl
I did actually propose this (versioning micropython-lib to the MicroPython release) but it was pointed out that often we want to release libraries on a different interval. I also considered not just versioning the micropython-lib repo but also all of the individual libraries (in their package metadata) to match the MicroPython release. e.g. urequests v1.19.1.x
but I'm not sure this makes sense.
As @stinos mentioned our plan going forward is that micropython-lib is now a submodule of the main repo. This is to faciliate the growing number of boards that depend on libraries from micropython-lib. (We're also making this easier via some improvements to the manifest system). So yes, to get the micropython-lib for a given version you can get this from the main repo's submodule.
That said... it might still make sense to tag this repo anyway as part of that process. i.e. the process for making a MicroPython release goes:
vX.Y
vX.Y
In other words, a release tag of main repo has the micropython-lib submodule always pointing to a tagged commit of micropython-lib. That makes sense to me. I think there'll still be situations where we update the submodule between releases though.
And in that case, retrospectively applying the tags that you've listed here wouldn't be an issue. I'll discuss with @dpgeorge and get back to you.
By the way @Josverl -- I have seen your stubs project, it's very impressive. It did strike me that you've done a lot of work and that perhaps if we did a few simple things in MicroPython we could make your life easier. If you want to jump on discord (https://discord.gg/zHgfNMgR) or slack (https://slack-micropython.herokuapp.com) sometime and discuss, we might be able to help you.
That said... it might still make sense to tag this repo anyway as part of that process. i.e. the process for making a MicroPython release goes
That would make a lot of sense indeed
With the release of v1.20.0 I still see no tags. To avoid any confusion they could be named micropython vX.Y.Z
.
For now I've added another line to my matching table
The v1.20 tag was added here a few days ago https://github.com/micropython/micropython-lib/tags
Also, since micropython-lib
is now a submodule of micropython
, going forward, checking out micropython
and updating submodules will check out the correct version of micropython-lib
.
Happy to see the V1.20.0 tag.
What works well for a computer interface is often hard to remember and communicate for humans.
In the interest of being able to build a version of micropython that is not the
latest
, this requires both themicropython
andmicropython-lib
to be checked out.they should be checked out to the same state/date for that target version of micropython
for the micropython repo this is simple, just check out the tag
for the micropython repo this is more complex , as only a few tags added to the repo ( last one on 2017)
The reason I want to be able to build older versions of micropython is to be able to create stubs that can be used for static-type-checking.
Over time the code to generate and fine-tune these stubs evolves, and it would be a waste to only do that for the latest and greatest (unstable) version. rather I want to be able to generate stubs for the last few minor versions of MicroPython.
As my git-fu is limited, in practice I found it simpler to just create a simple lookup-list in a csv instead.
It would be appreciated if the current and future MicroPython's version tags were also applied to the Micropython-lib repo. I would gladly submit a PR , but AFAIK tags cannot be part of a CR
I can offer the CSV I'm currently using,
or in the form of a script