Weldx

Latest version: v0.6.7

Safety actively analyzes 630094 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 4

0.4.1

Added

- `closed_mesh` parameter to `Geometry.spatial_data` and
`SpatialData.from_geometry_raster` \[{pull}`414`\]
- `TimeSeries.plot` and `measurement.Signal.plot` \[{pull}`420`\]
- abstract base class `time.TimeDependent` \[{pull}`460`\]

Changes

- `TimeSeries` `__init__` accepts `xarray.DataArray` as `data`
parameter \[{pull}`429`\]
- The `LocalCoordinateSystem.time` and `TimeSeries.time` now return an
instance of `Time` \[{pull}`464`\]
- Fix wrong and incomplete type-hints \[{pull}`435`\]

ASDF

- sort `List[str]` before serialization of most `weldx` classes to
avoid random reordering in the same file and enforce consistency.
\[{pull}`430`\]

deprecations

- `lcs_coords_from_ts` will be removed in version 0.5.0 \[{pull}`426`\]

0.4.0

Highlights

- [Quality Standards](https://weldx.readthedocs.io/en/latest/tutorials/quality_standards.html):
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](https://weldx.readthedocs.io/en/latest/tutorials/weldxfile.html):
Create/Load/Modify asdf files directly using `WeldxFile` with many
helpful utility functions included.
- [TimeSeries support](https://weldx.readthedocs.io/en/latest/tutorials/welding_example_02_weaving.html#add-a-sine-wave-to-the-TCP-movement)
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](https://weldx.readthedocs.io/en/latest/tutorials/measurement_chain.html)
The `measurement.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. \[{pull}`211`\]
- added `asdf.util.get_schema_path` helper function \[{pull}`325`\]
- added `util.compare_nested` to check equality of two nested data
structures. \[{pull}`328`\]
- added `WeldxFile` wrapper to handle asdf files with history and
schemas more easily. \[{pull}`341`\].
- add `"step"` as additional method to `util.xr_interp_like` \[{pull}`363`\]
- add `util.dataclass_nested_eq` decorator for dataclasses with
array-like fields \[{pull}`378`\]
- adds a `asdf.util.dataclass_serialization_class` utility function
that automatically generates the asdf serialization class for python
dataclasses. \[{pull}`380`\]
- Added method to set the interpolation method to the `TimeSeries`
\[{pull}`353`\]
- Add `TimeSeries.is_discrete` and `TimeSeries.is_expression`
properties to `TimeSeries` \[{pull}`366`\]
- Add `measurement.MeasurementChain.output_signal` property that
returns the output signal of the `measurement.MeasurementChain`
\[{pull}`394`\]

Changes

- `WXRotation.from_euler` now accepts a `pint.Quantity` as input.
\[{pull}`318`\]

- move tests folder to `weldx/tests` \[{pull}`323`\]

- `asdf.util.get_yaml_header` received a new option parse, which
optionally returns the parsed YAML header as
`asdf.tagged.TaggedDict`. \[{pull}`338`\]

- refactor `asdf_json_repr` into `asdf.util.view_tree` \[{pull}`339`\]

- `TimeSeries.interp_time` \[{pull}`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 `measurement.MeasurementChain` is now internally based on a
`networkx.DiGraph`. New functions are also added to the class to
simplify its usage. \[{pull}`326`\] The following
additional changes were applied during the update of the
`measurement.MeasurementChain`:

- renamed `DataTransformation` class to
`measurement.SignalTransformation`
- renamed `Source` to `measurement.SignalSource`
- Added additional functionality to `measurement.Signal`,
`measurement.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 \[{pull}`402`\] \[{pull}`416`\]

- `LocalCoordinateSystem` `__init__` now accepts a `TimeSeries` as
input. All methods of the `CoordinateSystemManager` also support this
new behavior \[{pull}`366`\]

- During the creation of a `WeldxFile` the path of a passed custom
schema is resolved automatically \[{pull}`412`\].

Documentation

- Add new tutorial about the `measurement.MeasurementChain` \[{pull}`326`\]
- Updated the measurement tutorial \[{pull}`326`\]

ASDF

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

Fixes

- added check for symmetric key difference for mappings with
`util.compare_nested` \[{pull}`377`\]

deprecations

- deprecate `wx_tag` validator (use default asdf uri pattern
matching) \[{pull}`410`\]

0.3.3

This is a bugfix release to correctly include the asdf schema files in
conda builds. \[{pull}`314`\]

ASDF

- fix required welding wire metadata in
`single-pass-weldx.1.0.0.schema` \[{pull}`316`\]

0.3.2

Added

- `util.deprecated` decorator \[{pull}`295`\]

Removed

- `rotation_matrix_x`, `rotation_matrix_y` and
`rotation_matrix_z` \[{pull}`317`\]

Dependencies

- restrict `scipy!=1.6.0,scipy!=1.6.1` \[{pull}`300`\]

ASDF

- add validators to `rotation-1.0.0.yaml` &
`gas_component-1.0.0.yaml` \[{pull}`303`\]
- update descriptions in `single-pass-weldx.1.0.0.schema` \[{pull}`308`\]

Fixes

- prevent creation of `welding.groove.iso_9692_1.IsoBaseGroove` with
negative parameters \[{pull}`306`\]

0.3.1

Added

- plot function for `measurement.MeasurementChain` \[{pull}`288`\]

ASDF

- remove the `additionalProperties` restriction from
`single_pass_weld-1.0.0.schema.yaml` \[{pull}`283`\]
- allow scalar `integer` value in `anyOf` of
`time_series-1.0.0.yaml` to fix \[{pull}`282`, {pull}`286`\]
- add examples to schema files \[{pull}`274`\]

Changes

- `CoordinateSystemManager.plot_graph` now renders static and
time-dependent edges differently \[{pull}`291`\]
- use `pint` compatible array syntax in
`welding.groove.iso_9692_1.IsoBaseGroove.to_profile` methods \[{pull}`189`\]
- CSM and LCS plot function get a `scale_vectors` parameter. It
scales the plotted coordinate system vectors when using matplotlib as
backend \[{pull}`293`\]

Fixes

- A warning is now emitted if a `LocalCoordinateSystem` drops a
provided time during construction. This usually happens if the
coordinates and orientation only contain a single data point. \[{pull}`285`\]

0.3.0

Added

- add `CoordinateSystemManager.relabel` function \[{pull}`219`\]
- add `SpatialData` class for storing 3D point data with optional
triangulation \[{pull}`234`\]
- add `plot` function to `SpatialData` \[{pull}`251`\]
- add `plot` function to visualize `LocalCoordinateSystem` and
`CoordinateSystemManager` instances in 3d space \[{pull}`231`\]
- add `weldx.welding.groove.iso_9692_1.IsoBaseGroove.cross_sect_area`
property to compute cross sectional area between the workpieces
\[{pull}`248`\].
- add `weldx.welding.util.compute_welding_speed` function \[{pull}`248`\].

ASDF

- Add possibility to store meta data and content of an external file in
an ASDF file \[{pull}`215`\]

- Python class: `asdf.ExternalFile`
- Schema: `core/file-1.0.0.yaml`

- Added support for serializing generic metadata and userdata
attributes for weldx classes. \[{pull}`209`\]

- the provisional attribute names are `wx_metadata` and
`wx_user`

- `None` values are removed from the asdf tree for all `weldx` classes.
\[{pull}`212`\]

- add `datamodels` directory and example
`http://weldx.bam.de/schemas/weldx/datamodels/single_pass_weld-1.0.0.schema`
schema \[{pull}`190`\]

- schemas in the `datamodels` directory do not define any tags and
can be referenced in other schemas and as `custom_schema` when
reading/writing `ASDF`-files
- the `single_pass_weld-1.0.0.schema` is an example schema for a
simple, linear, single pass GMAW application
- add `core/geometry/point_cloud-1.0.0.yaml` schema \[{pull}`234`\]

- add file schema describing a simple linear welding application
`datamodels/single_pass_weld-1.0.0.schema` \[{pull}`256`\]

Documentation

- Simplify tutorial code and enhance plots by using newly implemented
plot functions \[{pull}`231`\] \[{pull}`251`\]
- add AWS shielding gas descriptions to documentation \[{pull}`270`\]

Changes

- pass variable names as tuple to `sympy.lambdify` in
`MathematicalExpression` to prevent sympy deprecation \[{pull}`214`\]
- set `conda-forge` as primary channel in `environment.yaml` and
`build_env.yaml` \[{pull}`214`\]
- set minimum Python version to 3.7 \[{pull}`220`\]
- `geometry.Profile.rasterize` can return list of rasterized shapes
instead of flat ndarray (with setting `stack=False`) \[{pull}`223`\]
- `geometry.Profile.plot` plots individual line objects for each shape
(instead of a single line object) \[{pull}`223`\]
- remove jinja templates and related code \[{pull}`228`\]
- add `stack` option to most `geometry` classes for rasterization
\[{pull}`234`\]
- The graph of a `CoordinateSystemManager` is now plotted with
`CoordinateSystemManager.plot_graph` instead of
`CoordinateSystemManager.plot`. \[{pull}`231`\]
- add custom `wx_shape` validation for `TimeSeries` and
`pint.Quantity` \[{pull}`256`\]
- refactor the `transformations` and `visualization` module into
smaller files \[{pull}`247`\]
- refactor `weldx.utility` into `util` \[{pull}`247`\]
- refactor `weldx.asdf.utils` into `asdf.util` \[{pull}`247`\]
- it is now allowed to merge a time-dependent `timedelta` subsystem
into another `CoordinateSystemManager` instance if the parent
instance has set an explicit reference time \[{pull}`268`\]

Fixes

- don not inline time dependent `LocalCoordinateSystem.coordinates`
\[{pull}`222`\]
- fix "datetime64" passing for "timedelta64" in `util.xr_check_coords`
\[{pull}`221`\]
- fix `util.WeldxAccessor.time_ref_restore` not working correctly if no
`time_ref` was set \[{pull}`221`\]
- fix deprecated signature in `WXRotation` \[{pull}`224`\]
- fix a bug with singleton dimensions in xarray interpolation/matmul
\[{pull}`243`\]
- update some documentation formatting and links \[{pull}`247`\]
- fix `wx_shape` validation for scalar `pint.Quantity` and
`TimeSeries` objects \[{pull}`256`\]
- fix a case where `CoordinateSystemManager.time_union` would return
with mixed `pandas.DatetimeIndex` and `pandas.TimedeltaIndex` types
\[{pull}`268`\]

Dependencies

- Add [PyFilesystem](https://docs.pyfilesystem.org/en/latest/)
(`fs`) as new dependency
- Add [k3d](https://github.com/K3D-tools/K3D-jupyter) as new
dependency
- restrict `scipy<1.6` pending [ASDF 916](https://github.com/asdf-format/asdf/issues/916) \[{pull}`224`\]
- set minimum Python version to 3.8 \[{pull}`229`\]\[{pull}`255`\]
- only import some packages upon first use \[{pull}`247`\]
- Add [meshio](https://pypi.org/project/meshio/) as new dependency
\[{pull}`265`\]

Page 3 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.