CHANGELOG

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

1.14.0 - 2025-02-10

Changed

  • IGNGPF-3736: add function to validate wkt string

1.13.4 - 2025-02-10

Fixed

  • Add doc: add missing commands for test running

  • IGNGPF-3720: increase buffer distance

1.13.3 - 2025-01-23

Fixed

  • EXPLGPF-64: fix GDAL log handler

1.13.2 - 2025-01-22

Changed

  • EXPLGPF-64: add GDAL log handler

1.13.1 - 2024-12-04

Changed

  • IGNGPF-4367: set SRS to default or upload SRS if stored_data has no geometry

1.13.0 - 2024-11-12

Added

  • IGNGPF-4356: parameter add method to check if previous step fail

1.12.2 - 2024-10-21

Added

  • IGNGPF-3722: simplification and computation for extents

Changed

  • IGNGPF-4381: allow json asserts to truncate floating point values, and manage lists

1.12.1 - 2024-10-18

Added

  • IGNGPF-4381: add coordinates to 4326 method

1.12.0 - 2024-10-07

Added

  • IGNGPF-4046: parameter to disable extent calculation in update_stored_data (database_inspection)

Changed

  • IGNGPF-4014: clean GpfOrchestratorParameters class

1.11.8 - 2024-09-11

Changed

  • allow to ignore field(s) when asserting JSON files equality in test case

1.11.7 - 2024-09-10

Added

  • map from list function

Changed

  • don’t download stored data from S3 when retrieving the input data of a process

  • improve s3_client logs

1.11.6 - 2024-08-27

Changed

  • log error to user when fail and exit

1.11.5 - 2024-08-21

Changed

  • add os_utils module, creating symbolic links

1.11.4 - 2024-08-01

Changed

  • logs and refacto for extent and bbox models

1.11.3 - 2024-07-31

Changed

  • renaming GpfTestCase methods, change on json assert and set maxDiff

1.11.2 - 2024-07-29

Added

  • Base unittest for GPF

1.11.1 - 2024-07-26

Added

  • Check type function for upload and stored data

  • Simplify extent function

  • S3 client: get size and files numbers

1.11.0 - 2024-07-17

Added

  • IGNGPF-3684 - WKT utils

Changed

  • Simplified local setting with conda

  • Use template for Gitlab pypi job

1.10.0 - 2024-05-28

Changed

  • fix(update_stored_data): IGNGPF-3699 correcting get_schema_extent default SRID value

1.9.0 - 2024-03-20

Changed

  • IGNGPF-3103 remove global_variables. Get database user/pass from environment variables

1.8.2 - 2024-02-13

Changed

  • fix get_size_schema by using pg_total_relation_size

1.8.1 - 2024-01-12

Changed

  • Calculate SRS before Extend when updating database

  • Rename get_schema_srid (deprecated) to get_schema_srs

1.8.0 - 2024-01-11

Added

  • Add IGNGPF-2939: Add SRID parameter to get extent with different projection

Changed

  • Fix limit cases for extent computing :

    • Empty schema

    • Empty tables

    • SRID different from 4326

    • Etc.

  • check-path log

1.7.2 - 2023-01-08

Changed

  • Fix IGNGPF-3112: change log level from debug to info in PgDatabaseInspector

1.7.1 - 2023-12-12

Changed

  • Allow import file from FILESYSTEM without signature change

1.7.0 - 2023-12-05

Changed

  • Allow usage of FILESYSTEM storage for uploads and stored data

1.6.1 - 2023-11-28

Changed

  • SQL compute extent : count exact number of rows in table and output an empty multipolygon extent if there is no data

  • Update base dependencies: boto3

1.6.0 - 2023-11-28

Changed

  • IGNGPF-2745 Optimize SQL functions to compute PostgreSQL schema extent

  • GpfExtent logs are more explicit when it comes to old format coordinates

Removed

  • PgDatabaseInspector.get_table_extent function as been deleted as it is no more used in PgDatabaseInspector.get_schema_extent function

1.5.3 - 2023-10-24

Added

  • S3 client: add delete objects methods

1.5.2 - 2023-10-11

  • IGNGPF-2656 Set size to 0 if table size return None value

1.5.1 - 2023-09-18

Added

  • Add a file filtering function according to a set of extensions

1.5.0 - 2023-08-29

  • Add minimalist HTTP client (pure standard library)

1.4.2 - 2023-07-26

  • Restore explicit boto3 dependency since it’s not included by stubs

1.4.1 - 2023-07-26

  • S3 client check if an Object is a file (based on size==0 and trailing slash in key)

  • Add a strict mode in high-level methods to download input and stored data, checking if every file has been correctly downloaded. Enabled by default.

  • Improve type hint on S3 client

  • Upgrade boto3 version

1.4.0 - 2023-07-20

Added

  • Util to retrieve installed PROJ’s version

Removed

  • Support of Swift storage API has been removed

1.3.1 - 2023-07-18

  • Fix extent bug on a single point geometry

1.3.0 - 2023-07-13

  • Add util and related cli sub command to execute an SQL file

1.2.0 - 2023-07-13

  • Add a set of utils to manipulate embedded SQL files

  • Add a gpf-sql-utils, a minimalist cli to use related utils from command-line

  • Add related documentation

  • Upgrade development dependencies

1.1.0 - 2023-07-10

  • Add util to check if a file exists with a different extension

1.0.0 - 2023-07-07

  • Changed extent computation from bbox to multipolygon

  • Add SQL function to compute extent

0.19.5 - 2023-07-05

  • Add custom argparse custom types

0.19.4 - 2023-06-27

  • Add line number to log messages

0.19.3 - 2023-06-20

  • bugfix memory alloc for get_extent function

0.19.2 - 2023-06-01

  • Add readonly_database property for GpfStorage and GpfStoredData (use of specific port_read_only attribute if available)

  • lower log for missing swift dependencies

  • lower error to warning for missing keys

0.19.1 - 2023-05-04

  • Add views in output stored_data description

0.19.0 - 2023-05-03

  • Use CI_COMMIT_BRANCH environment variable in output filename in a fail and exit case

0.18.3 - 2023-05-03

  • add a function that checks if a file extension is in a list

0.18.2 - 2023-04-19

  • change check_livraison behavior by disabling if upload_dir exists by default

  • update development, documentation and testing dependencies

0.18.1 - 2023-04-06

  • bugfix GpfExtent from_dict

  • bugfix databaseinspection for tablename with uppercase

0.18.0 - 2023-04-06

  • update GpfExtent to match new specifications

  • add GpFBbox that keep old GpfExtent specifications

0.17.4 - 2023-04-05

  • update gpf_logger_script to define package logger level

0.17.3 - 2023-03-28

  • add get_dir_md5_hash function to get a md5 for a directory with all available files

0.17.2 - 2023-03-24

  • add ancestors to stored_data

0.17.1 - 2023-03-23

  • fix global extent

0.17.0 - 2023-03-23

  • new format for USER logs

0.16.1 - 2023-03-23

  • Add S3 unit tests

  • fix s3 output folder

0.16.0 - 2023-03-22

  • Ajout d’une classe upload

  • deplacement du client object_storage dans la stored_data/upload

  • correction des prefix

0.15.1 - 2023-03-22

Added

  • refactor(slugify): add get_schema_name_from_id in string utils

0.15.0 - 2023-03-21

Removed

  • Remove logger from fail_and_exit function’s pramaters

0.14.0 - 2023-03-17

  • Fix S3 client: passed output folder diretcly to download_objects method was ignored

  • Improve S3 client: accept a GPF_S3_THREADS_OBJECTS environment variable to set the number of threads to use for download operations.

  • Improve S3 client: it’s now possible to customize the prefix directly to download_objects method.

  • Packaging: swift client dependencies (python-swiftclient and python-keystoneclient) are now optional and must be explicitly installed as toolbelt extras

0.13.1 - 2023-03-16

  • Fix schema extent

0.13.0 - 2023-03-16

Added

  • New feature: S3 client

  • Handle output file according to configuration file’s structure version

Changed

  • Fix: check output filepath

0.12.5 - 2023-03-15

  • New feature: create output file for success and failing checks/processings

0.12.4 - 2023-03-08

  • New feature: read table names for database stored data

  • Fix: read of type_infos for stored data

  • New feature: import input file abstraction

0.12.3 - 2023-03-07

  • Add support for database retrieve for expected new stored data GRAPH-DB

  • New feature: add get_geometry_column_names in PgDatabaseInspector class

  • Fix: allow any geometry column name to get table’s extent

0.12.2 - 2023-03-03

  • Fix: typo in output

0.12.1 - 2023-03-02

  • Fix: Table information format and export extent to float

0.12.0 - 2023-03-02

  • New feature: GpfExtent object for extent normalisation

0.11.3 - 2023-02-28

  • Fix : pginspector relations details

0.11.2 - 2023-02-28

  • Fix : dict instanciation

0.11.1 - 2023-02-28

  • Fix : fix requirements

0.11.0 - 2023-02-27

  • New feature: Swift client

  • Improvement: test coverage on utils

  • Tooling: update and minor fixes

0.10.1 - 2023-02-24

  • Fix : Insert only once user level into GpfLogger

0.10.0 - 2023-02-22

  • Feature : introduce GpfLogger for log facility

0.9.0 - 2023-02-21

  • Feature : introduce GpfStoredData object for stored data manipulation

  • Feature : introduce GpfStorage object for storage manipulation

  • Feature : refactor database inspection to use GpfStoredData object

  • Feature : add methods to define pipeline_status for GpfOrchestratorParameters

  • Feature : add md5 hash utilities with python standard library hashlib

  • Documentation : add examples of toolbelt use

0.8.0 - 2023-02-17

  • Feature: add export methods to the parameters object as dict and JSON

  • Feature: add connection URI to PgDatabase object

  • Improve: use modern psycopg syntax instaed of legacy (psycopg2) in tests

0.7.0 - 2023-02-14

  • Feature: add database inspection utilities

0.6.0 - 2023-02-08

  • Feature: get database information from parameters

0.5.0 - 2023-02-03

  • Feature: check livraison with upload directory only when required

0.4.0 - 2023-02-01

  • Add attributes v2 as properties (getters)

0.3.0 - 2023-02-01

  • Feature: determine model version from given attributes

  • Feature: make check livraison never fail

  • Feature: handle parameters.json v2

  • Improvment: get GDAL version now uses gdalinfo befor gdal-config

  • CI: escape from docker hub pull limit

  • CI: automate release notes generation

  • CI: upgrade from templater

0.2.0 - 2022-12-19

  • Rename package folder path from src into gpf_entrepot_toolbelt because one installed, the folder name is used for the imports. So it was too generic and too conflicting.

  • Add licenses job and page (embedded into credits)

  • Global packaging and documentation improvments

0.1.0 - 2022-12-16

  • First functional version

  • Unit tests and coverage

  • Packaging with pip

  • Documentation

  • Tooling : formatter, guidelines, git-hooks, linter…