← Back to team overview

zim-wiki team mailing list archive

Re: plans for python3?

 

Hello Jaap,

> I'm still planning a release to be made in April, prefer to start on that
> code base. Current status here:
> https://code.launchpad.net/~jaap.karssenberg/zim/zim-refactor will make it
> pass test suite again next week, after that smaller patches until release.
> Will do an export to github when I reach the point all tests pass again.
>
> Also I will take the task to further untangle the main gui modules such that
> it becomes easier to port module by module. Basically will move out more
> core functions to plugins that can be loaded ad hoc. And I should probably
> help cleaning up the code documentation: current API docs do not compile, so
> want to convert to spinx and get them back online.

I totally agree with the proposed steps.

> With respect to type hints I have no experience, but willing to give it a
> go. My tooling is pretty basic, just a code editor and a unix shell :)

I used to develop with only geany and shell, but then I tried PyCharm
Community Edition and fell in love immediately. The mypy checker can
be used from shell, so we could try it and discard the annotations if
you don't like it.

> For the last phase there is also a pygtk to gi script available. Not even
> close to full conversion, but handles the basic search and replace to start
> with. Could be helpful.

That's a good idea.

> Per phase we should probably keep track of who-is-doing-what to avoid
> difficult merges. And we need to set up a smaller mail group to coordinate
> the work with a low threshold of asking detail questions on the code base.
> Maybe both can be facilitated through the github issue tracker ?

Who-is-doing-what could be tracked via GitHub issues:
* Each task is one issue
* Issues can be assigned
* It is possible to create a "project", which is a board that contains
only a subset of issues related to a particular topic (e.g. [1],
columns are editable).

We could create one master issue (e.g. "Port to Python3") for general
discussion and questions.

[1]: https://github.com/tiliado/nuvolaplayer/projects

Best regards,

Jiri Janousek


References