Tags: mutwo-org/mutwo.core
Tags
Bump to v.2.0.0 This is a new release of 'mutwo.core' with breaking changes (therefore we have a new major version). It's simpler, faster, smaller and easier to comprehend than previous versions of 'mutwo.core'. Due to the amount of breaking changes, it's not compatible with pre v.2.0.0 versions. The v.1.X.Y mutwo.core version family existed for ~1.5 year. The v.2.X.Y version family should be much longer maintained, at least 3 years, but ideally even longer. ------- CHANGES ------- Added ===== - new method `Envelope.curve_shape_at`, see ff3c0d5 - new method `Envelope.point_at`, see 8ae9f40 - new method `Envelope.time_range_to_point_tuple`, see f42c5fa - conciste `__str__` for mutwo events, see 178f0e0 - `MutwoObject` as base class for all mutwo objects, see 64e33e0 and 8343f8e - general `core_parameters.abc.Parameter` class, see c711348 - `core_utilities.str_to_number_parser`, see 9840711 Changed ======= - names of basic event classes: `SequentialEvent` is now `Consecution`, `SimultaneousEvent` is now `Concurrence`, `SimpleEvent` is now `Chronon` and `ComplexEvent` is now `Compound`, see 8c54bb1 and e7567d4 and ed95225 - improved performance of `Envelope.integrate_interval` by a factor of 8, see ae8343c - type of `Duration` value from `fractions.Fraction` to `float`, see 90b0a3f - dropped specific tagged events: instead all events have optional tags from now, see 4e469ad - structure of `Envelope` class (simplifying it), see d85a2a3 - syntactic sugar parser from `???_events.configurations.UNKNOWN_OBJECT_TO_???` to `???_parameters.abc.???.from_any`, see 35e05cd - `DirectTempo` and added dedicated `WesternTempo`, see f8bc9f7 - `Parameter.$PROPERTY` to `Parameter.$UNIT`, see 9f08dca - `TempoPoint` to `Tempo`, see 5972c97 - generalize/simplify dynamic parameters, see 850f22b - `core_converters.TempoToBeathLengthInSeconds` to `core_parameters.Tempo.seconds` parameter, see 0b88789 Dropped ======= - `mutate` parameter in many methods of mutwo events and parameters, see 4aef5e0 - deprecated `Envelope.from_points`, see f22942f - `quicktions` dependency, see 9b6195e - `core_generators` module, see 974aac3 - `core_utilities.NoSolutionFound`, see 11d8adf - `core_constants.DurationType` and `core_constants.ParameterType`, see 0f4f792 - `UndefinedReferenceWarning`, see 0783f90 - `core_events.RelativeEnvelope`, see 2c73955
Bump to v.1.4.0 Added ===== - string parser support for duration definitions in events, see ff3c0d5 This adds support for this: >>> from mutwo import core_events >>> core_events.SimpleEvent("1/1") >>> core_events.SimpleEvent("4.32") >>> ... - `core_utilities.del_nested_item_from_index_sequence`, see be976cb Changed ======= - Use `quicktions` only optionally in the code-base, see e3ee75a Fixed ===== - replace deprecated 'warn' with 'warning', see 0ea79ab
Release v.1.3.0 Added ===== - the `sequentialize` method for `SimultaneousEvent`: Convert a `SimultaneousEvent` to a `SequentialEvent` (see [here](a53952a)) - standardized logging utilities with `core_utilities.get_cls_logger` and `core_configurations.LOGGING_LEVEL` (see [here](12907dc) - 'core_events.TempoEvent' class to be used in 'core_events.TempoEnvelope' (see [here](37b2705) and [here](1179319)) Changed ======= - allow multiple split times in `Event.split_at` (see [here](aa457ae)) - improve performance of `SequentialEvent.split_at` (see [here](3df91e2) and [here](1a8e1d6)) - `SimultaneousEvent.concatenate_by_index` and `SimultaneousEvent.concatenate_by_tag` doesn't copy the added event anymore, but rather behaves like ``list.extend``. This improves the performance of the concatenation methods and avoids unnecessary copying. (see [here](dcb9320)) Fixed ===== - the initialization of the exception `CannotSetDurationOfEmptyComplexEvent` (see [here](4d9d26f)) - tempo envelope concatenation (before this there was an inconsistency how tempo envelopes were treated in the package. Now it's consistent.) (see [here](342e6b6))
Apply few bugfixes on new functions
Fixed
=====
SimultaneousEvent.extend_until:
If 'extend_until' is called on an empty 'SimultaneousEvent' nothing will
happen. This in counter-intuitive and not obvious. It's therefore better
to raise an explicit error that the operation failed.
SimultaneousEvent.concatenate_by_tag and SimultaneousEvent.concatenate_by_index:
Before this patch the concatenate_by* methods added a SimpleEvent with
duration = 0 at the beginning of each sequential event when
concatenating to an empty event. This patch fixes this additional noise.
Release mutwo.core 1.1.0 This new mutwo.core release is mostly a bugfix release. It furthermore adds one more feature which simplifies working with tagged events. Added ===== - get and set items of `ComplexEvent` by tags Before: ``` >>> s = core_events.SequentialEvent( >>> [core_events.TaggedSimpleEvent(1, tag='vl'), core_events.TaggedSimpleEvent(1, tag='va')] >>> ) >>> for ev in s: >>> if ev.tag == "vl" >>> vl_ev = ev ``` After ``` >>> s = core_events.SequentialEvent( >>> [core_events.TaggedSimpleEvent(1, tag='vl'), core_events.TaggedSimpleEvent(1, tag='va')] >>> ) >>> vl_ev = s['vl'] ``` Fixed ===== - `ComplexEvent.set_parameter` and `ComplexEvent.mutate_parameter` calls for `ComplexEvent`s which contained multiple references of the same event. See commit 8c17c27 - math calculations on `mutwo.core_parameters.abc.Duration` for unexpected numbers See commit 2ae8591 and dafdf6c - comparison between builtin `fractions.Fraction` and `mutwo.core_parameters.abc.Duration` objects (worked only with `quicktions.Fraction` objects before)
Release mutwo.core v1.0.0 [1.0.0] - 2022-11-05 ==================== This release improves the performance from various `SequentialEvent` and `Envelope` methods. Added ===== - `SequentialEvent.absolute_time_as_floats_tuple` - `core_parameters.abc.TempoPoint` - `core_events.configurations.DEFAULT_TEMPO_ENVELOPE_PARAMETER_NAME` Changed ======= - `Event.filter` to `Event.remove_by` - `core_parameters.TempoPoint` to `core_parameters.DirectTempoPoint` - `TempoRangeInBeatsPerMinute` from `tuple[float, float]` to `ranges.Range` - allows `TempoPoint` and `float` objects in `TempoEnvelope`
PreviousNext