Releases: benmoran56/esper
Unicorn
This release contains a few small but important improvements. Calls to super() are no longer necessary in your Processor subclasses, which should eliminate a fair amount of boilerplate. The README has also been updated with more usage examples - all methods should now have at least one example. And finally, wheels are now uploaded to PyPi. This should help with packaging systems that only support wheels. Addresses issue #38.
Shiva
Finally, version 1.0! I'm pretty happy with the library, and want to give thanks to everyone who has contributed. Also, thanks to all the users who have given feedback.
Esper is now using simple lru_caching internally by default.
The cache is currently flushed when adding or deleting Entities or Components from the
World, but Component queries are much faster generally. This will likely be improved in a
Future version. In addition to caching, Esper now supports passing kwargs to Processors.
Continuous Integration testing is now being done for all currently supported Python versions, including 3.7.
Sraphim
Esper is now a single file! Just take esper.py, and drop it right into your project folder. No need to clutter your project with additional folders that weren't really necessary.
Ifrit
This release contains a new timer that can be enabled to profile Processor execution time. Simply pass the "timed=True" parameter to the World on instantiation, and a new World.process_times dictionary will be available. This contains the total execution time of each Processor in milliseconds, and can be logged, printed, or displayed on screen as is useful. It's useful to see a quick profile of which processors are using the most cpu time, without fully profiling your game. This release also contains some consolidations and cleanups for the benchmarks.
Siren
In this new point release, Entities are now lazily deleted by default. You can now delete entities even while iterating over components in your processors, without raising "dict size changed during iteration" errors, and avoiding the need to manually track and delete "dead" entities after iteration.
Stray
A minor maintenance release. A new method: World.get_processor has been added.
Kirin
There is a new method: World.components_for_entity() which may be useful in some limited situations. There is also other minor documentation changes and cleanups.
Ramuh
There is a new method: World.has_component() in this release, as well as some minor refactoring a bug fix. The new method returns a boolean (True/False), and is a simple convenience for certain types of systems. In addition, test coverage is better and now covers esper.CachedWorld.
Initial release
v0.9.2 Temporarily commented out "credits" in meta.py