Manim: v0.1.0 Roadmap

Created on 7 Jun 2020  路  14Comments  路  Source: ManimCommunity/manim

There seems to be enough activity on this repo to try and move forward with a release version of the community version of manim. For this, let's use this issue to keep track of what needs to be done and when. Logistically, this should be the last issue to be closed in the v1.0.0 milestone, and once this one is closed, we should be able to push to pypi.

Things that need to be discussed

  1. I think there is a sense among @ManimCommunity/core devs that v1.0.0 should be fully backwards compatible. This has not been fully discussed, however.
  2. For full backwards compatibility, we need to determmine a timeline for deprecation.
  3. It has been decided that this repo will have both manim and manimcm as entrypoints. Some of us have started calling it manim CE (for Community Edition). Personally, I like "manim CE" as a name (and the accompanying manimce entrypoint) more than "manimcm". Though I don't ultimately care either way...
  4. I think it would be nice to have a logo at the time of release #106

Things that need to be implemented

~Get rid of CONFIG dicts in each class and migrate to dataclasses #7~

  • [x] Add extensive tests #133
  • [x] Add documentation #103 #38 #104 with sphinix on ReadTheDocs #38, including a quickstart #120
  • [x] Migrate configuration to configparser and cascading .cfg files #98.
  • [x] Clean up constants.py #98.
  • [x] Make a logo #106
  • [ ] There are a bunch of things that depend on #7, #98, and #133, so we have to determine whether each one of those are required for a v1.0.0.
  • [x] Add a Scene Cacher #166
  • [x] Additional documentation examples #458
  • [x] Various small improvements #489, #490, #492, #496, #498
  • [x] Automate publishing to pypi #500
  • [ ] Update the README image containing an example command #572

Please feel free to edit this issue to add/remove/check off things as you see fit.

After the release

  • [ ] make PangoText the default backend of Text (#487)
  • [ ] invite developers of other manim-related projects to become part of the organization (or at least ask them to support manim CE). For example: https://github.com/krassowski/jupyter-manim
enhancement help wanted refactor release

Most helpful comment

Folks, it seems we have completed every item on the list except for the logo, which should be decided upon by Tuesday Oct 20th noon GMT. I suggest we add the logo and also fix #407 and then release this bad boi. Objections? Comments? @ManimCommunity/core

If there are no objections, I move we put a freeze on PRs right now.

All 14 comments

To be clear, new features like the improved SVG parser and more GraphScene configuration are not slated for the 1.0.0 release?

Yeah this is exactly what we should discuss here. My personal opinion is that v1.0.0 should be fully backwards compatible, as well as documented and tested, and some of the major problems with the code should be addressed. If that's the case, then a v1.0.0 could be ready in perhaps a couple of months. We could then leave new features for v1.1 release.

Now, if there are new features ready for a v1.0.0 I guess there's no hurt in adding them as long as they are fully backwards compatible. But the intent of this versioning is that most focus should be put into finishing v1.0.0 (i.e. in testing and documenting) before spending our efforts in new features.

Happy to hear different opinions here.

7 and #98 are must-haves for this new version. Is #98 backwards compatible?

Argh, good question. It does support all the same flags (and fixes some of them too), but many variables from constants.py are removed. So no, it's not compatible.

by thursday I should open the draft PR on attrs, typings and docs

@leotrs Could you update this with you work on #98 ?

Just updated the check list at the top. Please refer to it for what to do next.

Update: the main thing between us and a release version of ManimCE is the attrs branch. A logo would be nice-to-have but not strictly necessary I think.

As far as I can tell from yesterday's Discord call, we will try to have the following ready for a 1.0 release:

  1. [x] documentation up on RTD (#381 )
  2. [x] pypi package (#202 #202 )
  3. [x] logo
  4. [x] set up poetry #165

@leotrs We are using poetry for releasing and stuff. So do add it in list also.

Good call

(There is a milestone for the release, let's use it ;) )

Another thing is we need to change manimlib to manim in pyproject.toml #165
Fixed in #534

Folks, it seems we have completed every item on the list except for the logo, which should be decided upon by Tuesday Oct 20th noon GMT. I suggest we add the logo and also fix #407 and then release this bad boi. Objections? Comments? @ManimCommunity/core

If there are no objections, I move we put a freeze on PRs right now.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

naveen521kk picture naveen521kk  路  5Comments

huguesdevimeux picture huguesdevimeux  路  4Comments

ChristianCoenen picture ChristianCoenen  路  5Comments

nilaybhatia picture nilaybhatia  路  6Comments

naveen521kk picture naveen521kk  路  5Comments