diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..8e86ba5 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,69 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [0.1.0-alpha] - 2021-06-23 +### Added + - Code vulnerabilities automatic checks + - Example videos in ``examples/images/`` + +### Changed + - Manny reforms in code style, to make the dynamic part naming conventions consistent with Pymunk. + - Images in the ``README.md``! + +### Fixed + - You can now define linkages with an enormous number of legs. Systems with many should no longer break physics but your CPU instead :) + - + + +## [0.0.3-alpha] - 2021-06-23 +### Added + - Started walktrough demo in ``README.md`` + - Automatic release to PyPi + +### Fixed + - Pymunk version should be at least 6.0.0 in requirement files. + - Some URLs typos in ``README.md`` + - Versionning tests not executing (GitHub action) + +## [0.0.2-alpha] - 2021-06-22 +### Added +- ``requirement.txt`` was absent due to ``.gitignore`` missconfiguration. + +### Changed + - ``.gitignore`` ignore txt file only in leggedsnake folder + - ``environment.yml`` more flexible (versions can be superior to the selected). Added pymunk>5.0.0, pylinkage + - ``leggedsnake/utility.py`` not having zipfile or xml module error encapsulation + +### Fixed + - ``setup.cfg`` was not PyPi compatibl. + Removed mail (use GitHub!), explicitly say that ``README.md`` is markdown (PyPi is conservative) + + +## [0.0.1-alpha] - 2021-06-22 +Basic version, supporting Genetic Algorithm optimization, but with various problems. +### Added + - ``CODE_OF_CONDUCT.md`` to help community + - ``LICENSE`` MIT License + - ``MANIFEST.in`` to include more files + - ``README.md`` as a very minimal version + - ``environment.yml`` with matplotlib, numpy, and pygad requirement + - ``examples/strider.py`` a complete demo with Strider linkage + - ``leggedsnake/__init__.py`` + - ``leggedsnake/dynamiclinkage.py`` + - ``leggedsnake/geneticoptimizer.py`` + - ``leggedsnake/physicsengine.py`` + - ``leggedsnake/show_evolution.py`` just a legacy package, no utility + - ``leggedsnake/tests/test_utility.py`` untested test case + - ``leggedsnake/utility.py`` contain some useful evalution function (``step`` and ``stride``) and a broken GeoGebra interface. + - ``walker.py`` defines the ``Walker`` object. + - ``pyproject.toml`` + - ``setup.cfg`` + - ``setup.py`` empty, for compatibility purposes only + - ``tox.ini`` tox with Python 3.7 and 3.8 + + diff --git a/leggedsnake/dynamiclinkage.py b/leggedsnake/dynamiclinkage.py index 41d019d..75dc322 100644 --- a/leggedsnake/dynamiclinkage.py +++ b/leggedsnake/dynamiclinkage.py @@ -17,9 +17,6 @@ class DynamicJoint(abc.ABC): """Dynamic, pymunk compatible equivalent of kinematic Joint.""" - #__slots__ = ['_a', '_anchor_a'] - - @abc.abstractmethod def __init__(self, body0=None, body1=None, space=None, radius=.3, density=1, shape_filter=None): if isinstance(body0, pm.Body): diff --git a/setup.cfg b/setup.cfg index e1094ab..b5cd536 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,6 @@ [metadata] name = leggedsnake -version = 0.0.3 +version = 0.1.0 author = Hugo Farajallah description = Simulate and ptimize planar leg mechanisms using PSO and GA license = MIT License