Skip to content

0.4.0

Compare
Choose a tag to compare
@CagtayFabry CagtayFabry released this 13 Jul 15:25
· 382 commits to master since this release
426ad3a

0.4.0 (13.07.2021)

Release 0.4.0 brings many new major features to weldx

Highlights

  • Quality Standards:
    Users can now create and integrate their own quality standards by defining new ASDF schema definitions and loading
    them into weldx. It is possible to add new definitions or modify existing schemas to create your own flavour of the
    weldx standard.
  • WeldxFile:
    Create/Load/Modify asdf files directly using WeldxFile with many helpful utility functions included.
  • TimeSeries support
    for LocalCoordinateSystem:
    It is now possible to define a time-dependent LocalCoordinateSystem with a simple function by passing
    a TimeSeries
    object with a MathematicalExpression as coordinates. For an example, click the link above.
  • MeasurementChain
    The MeasurementChain has been reworked to be easier and more flexible to use.

full changelog below:

added

  • add support for quality standards. Further information can be found in the corresponding new tutorial.
    [#211]
  • added asdf.util.get_schema_path helper function [#325]
  • added util.compare_nested to check equality of two nested data
    structures. [#328]
  • added WeldxFile wrapper to handle asdf files with history and schemas more
    easily. [#341].
  • add "step" as additional method to util.xr_interp_like [#363]
  • add util.compare_nested_eq decorator for dataclasses with array-like
    fields [#378]
  • adds a dataclass_serialization_class utility function that automatically generates the asdf serialization class for
    python dataclasses. [#380]
  • Added method to set the interpolation method to the TimeSeries [#353]
  • Add is_discrete and is_expression properties to TimeSeries [#366]
  • Add MeasurementChain.output_signal property that returns the output signal of the MeasurementChain
    [#394]

changes

  • WXRotation.from_euler() now accepts a pint.Quantity as input. [#318]
  • move tests folder to weldx/tests [#323]
  • get_yaml_header received a new option parse, which optionally returns the parsed YAML header
    as asdf.tagged.TaggedDict. [#338]
  • refactor asdf_json_repr into view_tree [#339]
  • TimeSeries.interp_time [#353]
    • now returns a new TimeSeries instead of a xarray.DataArray
    • if the data has already been interpolated before, a warning is emitted
    • TimeSeries supports now all interpolation methods supported by xarray
  • The MeasurementChain is now internally based on a networkx.DiGraph. New functions are also added to the class to
    simplify its usage. [#326]
    The following additional changes were applied during the update of the MeasurementChain:
    • renamed DataTransformation class to SignalTransformation
    • renamed Source to SignalSource
    • Added additional functionality to Signal, SignalTransformation and GenericEquipment
    • Removed Data class
    • Updated asdf schemas of all modified classes and the ones that contained references to those classes
  • allow input of string quantities in MathematicalExpression parameters and a few other
    places [#402] [#416]
  • LocalCoordinateSystem.__init__ now accepts a TimeSeries as input. All methods of the CoordinateSystemManager
    also support this new behavior [#366]
  • During the creation of a WeldxFile the path of a passed custom schema is resolved automatically
    [#412].

documentation

  • Add new tutorial about the MeasurementChain [#326]
  • Updated the measurement tutorial [#326]

ASDF

  • fix inline array serialization for new 64bit inline limit [#218]
  • add yaml_tag_handles to WeldxExtension [#218]
  • add uuid-1.0.0.yaml schema as basic version 4 UUID
    implementation [#330]
  • add core/graph/di_node, core/graph/di_edge & core/graph/di_graph for implementing a
    generic networkx.DiGraph [#330]
  • compatibility with ASDF-2.8 [#355]
  • data attached to an instance of the CoordinateSystemManger is now also stored in a WelDX file
    [#364]
  • replace references to base asdf tags with -1.* version wildcard [#373]
  • update single-pass-weldx.1.0.0.schema to allow groove types by
    wildcard [#373]
  • fix attributes serialization of DataSet children [#384].
  • update wx_shape syntax in local_coordinate_system-1.0.0 [#366]
  • add custom wx_shape validation to variable-1.0.0 [#366]
  • remove outdated TimeSeries shape validation code [#399]
  • use asdf tag validation pattern for wx_property_tag [#410]
  • update MathematicalExpression schema [#410]

fixes

  • added check for symmetric key difference for mappings
    with util.compare_nested [#377]

deprecations

  • deprecate wx_tag validator (use default asdf uri pattern
    matching) [#410]

Merged PRs

Full Changelog: v0.3.3...v0.4.0