Changelog — GSTPy documentation

# Changelog

## 3.16.0

- Update GST C++ API to version 3.16.0. Requires gst-server version 3.16.*.

- GSTPy now requires a license check! Call `NetworkInterface.check_license()` once before any server connection is established.

- Expose Geometry Hull API.

  - New methods: `NetworkInterface.has_geometry_hull()`, `NetworkInterface.calculate_geometry_hull()`,

    > `NetworkInterface.upload_geometry_hull()`, `NetworkInterface.get_geometry_hull_geojson()` and `NetworkInterface.delete_geometry_hull()`.

## 3.15.0

- Update GST C++ API to version 3.15.0. Requires gst-server version 3.15.*.

## 3.14.0

- Update GST C++ API to version 3.14.0. Requires gst-server version 3.14.*.

- Changes to GDAL setup. See Setup Gdal.

- Breaking Change: Removal of parameter `owner` from `NetworkInterface.list_elements()`.

  This function now returns all elements accessible to the current user.

- Improve commit handling.

  - New methods: `NetworkInterface.list_commits()`, `NetworkInterface.list_commits_for_feature()` and `NetworkInterface.list_commit_versions()`.

  - Additional optional argument `commit_key` (int) for `NetworkInterface.get_feature()`, `NetworkInterface.save_feature()` and related download methods. Allows to set a specfic commit key, the feature will be downloaded in the latest version up to that commit.

- Update `FileType` and `RequestFormat` with missing formats.

- New optional argument for `AreaLimiter`, `include_overlapping_border_simplexes`.

## 3.13.0

- Update GST C++ API to version 3.13.0. Requires gst-server version 3.13.*.

- Segy2D, Segy3D and ElevationGrid are now feature types.

  - Moved from `FeatureClassTag` to `GeometryTypes`.

- Additional `RequestFormats`: TILES3D, GEOTIFF and KML.

- New function `revision()` to get the build revison of GSTPy.

- Additional arguments for `NetworkInterface.save_feature()` and `NetworkInterface.save_feature_area_limiter()`.

  - `write_object_archive` (bool): Set to `True` to write an additonal XML file containging object information (e.g., attribures, name, SRS). Optional, defaults to `False`.

  - `writer_options` (`WriterOptions`): Set for file type specifc settings.

  - `tiling_parameters TilingParameters` (`TilingParameters`): Set to enable tiling. Optional, defaults to not set.

  - `sgrid_segmentation_colormap_id` (int): Set to write SGrid segmentations with a colormap. Optional, defaults to not set.

  - `shift_parameters` (`ShiftParameters`): Set to shift the geometry. Optional, defaults to not set.

  - `mesh_simplification_parameters` (`MeshSimplificationParameters`): Set to enable mesh simplification. Optional, defaults to not set.

- Setup GDAL environment. See PROJ / GDAL data paths.

## 3.12.0

- Update GST C++ API to version 3.12.0. Requires gst-server version 3.12.*.

## 3.11.0

- Update GST C++ API to version 3.11.0. Requires gst-server version 3.11.*.

- Allow setting alignment for each simplex property individually.

  - New type `NewSimplexProperty` that specifies alignment together with name and type.

  - `NetworkInterface.create_feature_class()` and `NetworkInterface.add_simplex_property()` now take `NewSimplexProperty` in addition to `NewProperty`. The old behavior is still supported.

## 3.10.0

- Update GST C++ API to version 3.10.0. Requires gst-server version 3.10.*.

## 3.9.2

- Add documentation for `GridOrientation`, `GridSize` and `GridDescription`.

- Remove spaces in some of `FeatureClassTag`’s attributes.

## 3.9.1

- Add documentation and example for upload geometry from file.

  - Add documentation for `ParsedGeometry`, `ParsedSimplexPropertyDescription` and `FileType`.

  - Add example Upload a feature from a file that shows how to upload a geometry from a Gocad file.

  - Update example Upload a feature to include setting the SRS.

## 3.9.0

- Breaking Change: Removal of MoMa element levels. All MoMa elements can now be added to an arbritrary depth.

  - Removal of `NetworkInterface.list_levels()`.

  - Removal of `Level`.

  - Removal of fields `level_depth` and `comment` from `Element`.

  - Removal of parameters `level` and `comment` from `NetworkInterface.create_element()`.

  - Removal of parameter `level` from `NetworkInterface.list_elements()`.

  - Updated MoMa examples to reflect these changes.

- Update GST C++ API to version 3.9.0. Requires gst-server version 3.9.*.

## 3.8.0

- Change version scheme to follow the major and minor version (e.g. “3.8”) of the GST API and gst-server

- Update GST C++ API to version 3.8.0. Now requires gst-server version 3.8.*.

## 1.4.1

- Support Area Limiter. This allows to specify a selection area, either a polygon or a bounding box, the condition geometries have to meet in regards to the to be loaded (contained in area or intersecting the area) and how selected geometries will be loaded (full geometry or only the parts inside the area).

  - New method `NetworkInterface.save_feature_area_limiter()`.

  - New enum `GeometryLoadMode`. Defines how a selected geometry will be loaded based on the selection area.

  - New enum `GeometryLoadThreshold`. Defines how a geometry will be selected based on the selection area.

  - New type `GeometryFile`. Defines a reference to a geometry file on the filesystem.

  - New type `PolygonSelection`. Defines a polygon from either a geometry file or an existing feature.

  - New type `BoundingBox`. Box with Srs definition.

  - New type `Area`. Defines the selection area for a feature download.

  - New type `AreaLimiter`. Defines the selection area, selection mode and load threshold for partial feature downloads.

## 1.4.0

- Support for parsing and uploading Segy features.

  - New function `NetworkInterface.ParseSEGYHeader()`. Parses a Segy file to get the header information.

  - New function `NetworkInterface.ParseSEGYHeaderWithOptions()`. Parses a Segy file to get the header information with changes made to the header.

  - New enum `Unit`. Unit of measurement from the Segy specification.

  - New enum `Dimensionality`. Dimension from the Segy specification.

  - New enum `NumberFormat`. Number format from the Segy specification.

  - New type `SEGYInfo`. Information read from the Segy header.

- Feature Class Tag.

  - New enum `FeatureClassTag`. Information how a feature class should be tagged.

  - Update `FeatureClassDesc` and `NetworkInterface.create_feature_class()` to support `FeatureClassTag`.

## 1.3.0

- Manage Feature Classes with Z-Axis Domain Time.

  - New enum `ZAxisDomain`. Specifies the z-axis domain.

  - Update `FeatureClassDesc` and `NetworkInterface.create_feature_class()` to support `ZAxisDomain`.

  - Update `BoreHoleImageParameters`, `SectionImageParameters`, `MapImageParameters` to support `ZAxisDomain`. Setting this to Time, will switch the output to the time mode. This means the unit will be ms (milliseconds) and the z-axis will be inverted (positive values downwards).

    Note: Time only really makes sense if your feature list contains features with a time z-axis. Currently there is no check for this, but that might change.

- New method `NetworkInterface.save_feature()`.

  This allows the download directly to the file system without going through `CrudeFeature`, enabling this use case with a much lower peak memory footprint.

  This method also allows download of binary and multi-file formats, like “Gocad Voxet” or “I3S SLPK”.

- Update GST C++ API to version 3.4.0. Requires gst-server version 3.3.*.

## 1.2.2

- Update GST C++ API to version 3.3.0. Now requires gst-server version 3.3.*.

- Fix small documentation issue in `NetworkInterface.list_srs()`.

## 1.2.1

- Fix for `NetworkInterface.instant_update_feature()`. It now should work again without returning a bad cast error.

- New type `ColorRGBA`. Currently used in conjunction with `NetworkInterface.recolor_feature()`.

- New convince methods to rename and recolor a feature.

  Note: Due to a change within the GST3 backend, you can’t update the single color elements (red, green, blue, transparency) with `NetworkInterface.update_object_property_value()` anymore. Please use `NetworkInterface.recolor_feature()` instead.

  Note: `NetworkInterface.recolor_feature()` uses a color with alpha component. Be aware that `alpha = 1.0 - transparency`.

  See `NetworkInterface.rename_feature()`, `NetworkInterface.recolor_feature()`.

## 1.2.0

- Add GST3 connection.

  > - API reference `get_gst3_connection()`.

- Allow handling of MoMa properties.

  > - Example MoMa Properties and Values.

  > - API reference MoMa Properties.

## 1.1.0

- New functions: `version()` and `client_api_version()`.

- New method `NetworkInterface.lock_feature()`.

- New method `NetworkInterface.instant_update_feature()`.

- Add missing attributes to reference doc `RawPoint3`, `IdxTriangle` and `IdxTetrahedron`.

- New example: How to use a custom format.

- New note: String encoding and unicode.

## 1.0.0

Initital release