Skip to content

v2.3.0

Choose a tag to compare

@github-actions github-actions released this 09 Dec 02:08
e23ee09

2.3.0 (2023-12-09)

Features

  • all schemas retrieved via the .schema or .pickled_schema property allow for loading dicts without 'dtype' key by assuming their own dtype as default (9ff060e)
  • new category of objects: Filters. They extend any Grouper by adding the init args 'keep_values', 'drop_values', and 'drop_level' to it. They use these arguments to post-process any resource first processed by the corresponding grouper. This required renaming the relatively new HasCadenceAnnotations and HasHarmonyLabels to HasCadenceAnnotationsGrouper and HasHarmonyLabelsGrouper, to differentiate them from the new HasCadenceAnnotationsFilter and HasHarmonyLabelsFilter. The other two filters that have been implemented so far are the CorpusFilter and the PieceFilter. As an aside, Groupers do not complain anymore when they are applied to a resource that has already been grouped by a Grouper of the same type. If the grouping level exists but isn't the first one, it is systematically made the first one. This applies, by extension, to the Filters (for now) (ec3d1f7)

Bug Fixes

  • adapts NgramAnalyzer's init args & schema (3e51f97)
  • align_with_grouping() did not work for NgramTables because pandas prevents merge with diverging column nlevels, even if one of the sides has no columns (e51625f)
  • allows passing a list of list (instead of a list of tuples) to DimcatIndex.from_tuples(), useful for de-serializing from JSON (0cff3c1)
  • extends app_tests.test_analyze() to the actual plotting; warns about non-Analyzer PipelineSteps applied after an Analyzer (72ef210)
  • facet titles be strings (ed185f7)
  • improves (de-)serialization of DimcatIndex and, by extension, the MappingGroupers' 'grouped_units' field (f59673d)
  • parses music21.key.KeySignature the same way as usic21.key.Key (5aa7902)
  • the frictionless workaround for copying a resource with no path specified is now complete (5d1426d)
  • the frictionless workaround for copying a resource with no path specified is now complete (98ee01d)