Page 1 of 2

new port pull request

Posted: Mon Jul 08, 2019 8:38 pm
by ExXec
Hey,
I forked the repo a while ago for a port to the TivaLaunchpad.
I got some things to work so far.
At what point can I consider creating a pull request into the main repo?

Thanks!
-ExXec

Re: new port pull request

Posted: Tue Jul 09, 2019 1:00 am
by jimmo
New ports seem to require some consideration because it adds an ongoing maintenance burden. Is this a popular/common chip? It's unrelated to the TI MSP432 right? I guess there's no harm in raising a bug to start the discussion?

I'd love to see an equivalent of the "external c modules" feature for ports, allowing you to have an "out of tree" port. (i.e. you don't have to fork micropython to maintain your port). See https://docs.micropython.org/en/latest/ ... dules.html

Re: new port pull request

Posted: Tue Jul 09, 2019 12:19 pm
by ExXec
Thanks for your response!

Yes it is unrelated to the MSP432.
I cannot say if the chip is popular, I saw only one forum post asking for it.
I'm doing this port as a project for my masters and because our laboratory gets free TivaBoards every year, its used a lot in other projects.

I would still maintain the port myself, of course, I wanted to do this mainly because I need people to try it out and get feedback on what I can do better etc. And I thought it will get more attention in the main repo.

Or do you mean, that all general updates will be checked for compatibility on every port? How does this work here?

I think I will start a bug as soon as I am confident that my port is at least somewhat reliable.

Thanks again!

Re: new port pull request

Posted: Tue Jul 09, 2019 1:21 pm
by jimmo
ExXec wrote:
Tue Jul 09, 2019 12:19 pm
I would still maintain the port myself, of course
The problem is that if you add this to github.com/micropython/micropython, then you can't be the maintainer any more. You can send PRs of course, but you're not the "maintainer".
ExXec wrote:
Tue Jul 09, 2019 12:19 pm
Or do you mean, that all general updates will be checked for compatibility on every port? How does this work here?
Yeah. The problem is that it's unlikely anyone will have the development toolchain set up for it, so other people won't be able to verify that general changes don't break it.


(This is just my observation of the way the project works, the core project can really only take responsibility in the main repo for boards/toolchains that the maintainers have access to).

But it's still worthwhile to provide a port -- if users can find your github repo, then that's great! (Set a good description and readme.md and Google will take care of the rest!) And there are lots of examples of this. And even better if in the future a port doesn't need to be a full micropython fork (as I described earlier).

Re: new port pull request

Posted: Tue Jul 09, 2019 5:53 pm
by ExXec
You can send PRs of course, but you're not the "maintainer".
Hm, I see. I imagined this would be a lot simpler.
And even better if in the future a port doesn't need to be a full micropython fork
My Port is contained in its folder. (Besides the toolchain)
Someone could download micropython, then my port folder and edit the makefile a bit and it would work.
Or create a submodule for it? I am not 100% on the possibilities and limits of git.
I'd love to see an equivalent of the "external c modules" feature for ports
Instead of adding the port to micropython, you could add micropyhton to the port.
Or did you think about something a bit more sophisticated?

Anyway, thanks for your advice!
-ExXec

Re: new port pull request

Posted: Thu Jan 07, 2021 8:04 pm
by ExXec
Hey,
do you know if the requirements for integrating ports has change since this thread was opened?

Re: new port pull request

Posted: Fri Jan 08, 2021 9:22 am
by pythoncoder
The explanation of @jimmo still makes perfect sense.

Re: new port pull request

Posted: Fri Jan 08, 2021 12:08 pm
by stijn
In the other thread you mention your thesis is finished and don't have time to work on the port anymore, right? In that case it's not very interesting to add it to MicroPython if no one can actively keep it working/tested, I think. Perhaps someone else can though?

Re: new port pull request

Posted: Fri Jan 08, 2021 3:13 pm
by ExXec
Yes, my thesis is finished.
Two other teams are currently expanding the functionality though and they will be merged into my repo.

If there is someone who will keep it updated, be it me or someone else, is there another condition for an inclusion into the main repo?
I guess the workload would be to test the port before/with each release and keep it compatible?
The number of implemented features of the controller is not 100% but could be expanded by future theses or volunteers.

Re: new port pull request

Posted: Fri Jan 08, 2021 3:22 pm
by ExXec
How much work is it to keep the ports up to date with the changes?

If the workload is not too high, I could still do this by myself.