PursuedPyBear

Logo

Sprite game engine for teaching and fun

7 July 2019

Summer 2019 Release: PPB v0.6 and Vector v1.0

by Jamie

Good news, everyone! A release cycle has come to a close, resulting in ppb v0.6 and (drumroll please), ppb-vector v1.0, a stable release!

[party horn noises]

I am not going to get into the full changelogs here, they are both quite long. You can find them on GitHub (ppb, ppb-vector). I’m just going to list some highlights.

ppb-vector

(changelog)

Between the refactorings, the renamings, the immense amount of testing, a lot has happend. A lot. Far and away the most significant change is that Vector is now immutable. While this makes a lot of things inconvenient, we think it will improve maintainability for everything in the long term.

Other than that, all of the computations and methods have remained the same.

I would like to call out @nbraud for their immense help with the hypothesis-based test suite and improving the numerical algorithms. This literally would not have happened without their help and the software is dramatically better for it.

As a stable release, the PursuedPyBear team is commiting to Semantic Versioning going forward. That means that 1.0.1 should contain only fixes, no API improvements, 1.1 will be the first version with new methods and features, and it will be backwards compatible all the way to 2.0. So if you want to be paranoid, specify ppb-vector>=1.0,<2 in your dependencies.

ppb

(changelog)

The Summer 2019 release! :beach_umbrella: (See our release schedule) This comes with our usual smattering of features, rebuilds, and changes, but I would like to highlight a few things.

First, we now have online docs, hosted by ReadTheDocs! You can find them next to Binny (that would be the blue binary bear in our logo) or at https://ppb.readthedocs.io/.

Second, I would like to highlight a significant breaking change: We flipped the Y-axis. Postive Y now points up, towards the top of the window. Why? Because that is what is taught in most mathematics classes.

Third and finally, there are impending releases of Python 3.8 and PyGame 2. Do not install these if you are using PursuedPyBear v0.6. PPB is not compatible with PyGame 2, and PyGame 1 is not compatible with Python 3.8. Use Python 3.7 and PyGame 1.9 until an updated version of PPB is released. These requirements are encoded in our various metadata files, so hopefully your tools will honor this or warn you if not. And we will get an updated release out as soon as PyGame 2 is out to fix this problem.

tags: ppb - ppb-vector - releases