### Version 0.8.12 (2026-02-01)

#### Main changes

- Client-side
  - Added support for QGIS 3.44 LTR
  - Minor updates to the documentation
  - Updates to the references
- Minor code edits

### Version 0.8.11 (2025-01-23)

#### Main changes

- QGIS Package (version 0.10.6)
  - Adapted functions to work with PostgreSQL 17
  - Fixed: Bug in Bridge module layers generation
- Minor code edits

### Version 0.8.10 (2024-12-23)

#### Main changes

- Client-side
  - Added support for QGIS 3.40 LTR
  - Minor updates to the documentation
  - Updates to the references
- QGIS Package (version 0.10.5)
  - Fixed: Bug in PlantCover layer generation
  - Fixed: Bugs in Transportation module layers generation
- Minor code edits

### Version 0.8.9 (2024-07-23)

#### Main changes

- Client-side
  - Removed links to local copies of Manual/Installation Guide. Now point only to GitHub
- Minor code edits

### Version 0.8.8 (2024-07-04)

#### Main changes

- Client-side
  - Minor updates to references
- Documentation
  - Minor updates to Installation and user guide (e.g. about QGIS 3.36 and 3.38)
  - Added install guide for PostgreSQL and 3DCityDB on Ubuntu
- Minor code edits

### Version 0.8.7 (2023-11-24)

#### Main changes

- Client-side
  - Minor improvements to the behaviour of the dialogs
  - Fixed: Error when adding a new connection but not storing it
  - Fixed: Error in qml form file for Tunnel thematic surfaces
  - Fixed: Renamed qml forms file for Building/Bridge/Tunnel Furniture
  - Fixed: Error when uninstalling QGIS Package
- QGIS Package (version 0.10.4)
  - Adjusted behaviour of function to compute the 3DCityDB extents
  - Fixed: Error in delete trigger function for Solitary Vegetation Object and Plant Cover
  - Fixed: Error in delete and update trigger functions for WaterSurface
- Documentation
  - Added install guide for PostgreSQL and 3DCityDB on macOS
- Code refactoring and clean-up

### Version 0.8.6 (2023-11-15)

#### Main changes

- Client-side
  - Added support for QGIS v. 3.34 (soon to become LTR)
  - Added plug-in About dialog (NEW)
  - Added shortcut to open Installation and User manual (as PDF)
  - Added check whether QGIS version is supported upon first run of a dialog
  - Layer Loader: Dropping layers forces now automatic removal of corresponding layers loaded in QGIS Layer tab
  - Fixed: Users without password can now connect and store connection parameters
  - Fixed: Button to import selected layers in Layer Loader is now properly activated/deactivated
- QGIS Package (version 0.10.3)
  - Fixed bug in function to set privileges
- Other minor bug fixes, code clean-up, added/reworked Python type hints

### Version 0.8.5 (2023-09-06)

#### Main changes

- Layer Loader
  - Fixed: Option to force creation of all layers would not work
  - Fixed: Settings tab should be activated as soon as connection to citydb is successful
- Minor bug fixes and code clean-up

### Version 0.8.4 (2023-08-28)

#### Main changes

- Layer Loader
  - Corrected new connections not being updated in Layer Loader dialog
- QGIS Package (version 0.10.2)
  - WaterBody module: Added support for MultiCurve LoD0 1 layers
  - Transportation and Vegetation modules: Corrected minor bugs
  - Added CityGML 2.0 Codelists for WaterBody module
  - Some code refactoring
- Test datasets
  - Updated Railway dataset to contain WaterBody LoD1 MultiCurve
- Installation and user guide
  - QGIS Package: Corrected/enhanced examples with functions to set user's privileges
- Minor bug fixes

### Version 0.8.3 (2023-08-11)

#### Notes

- The plug-in status is not "experimental" anymore: now it can be installed by anybody from within QGIS

#### Main changes

- Minor edits to the Layer Loader dialog GUI
  - Moved Codelist selection combo box from Settings tab to Layers tab
- Installation and user guide
  - Added installation from QGIS Plugins repository
  - Updated figures with new Layer Loader dialog GUI
  - Corrected some typos and other minor errors
  - QGIS Package: Corrected SQL examples to refresh views
  - QGIS Package: Added SQL examples for detail views
  - QGIS Package: Added SQL examples to upsert the user defined bounding box extents
- Some code refactoring

### Version 0.8.2 (2023-06-05)

#### Main changes

- Minor internal changes to comply with the QGIS Plugin online repository

### Version 0.8.1 (2023-03-29)

#### Main changes

- Layer Loader: Detail View layers are now ro rw depending on user privileges
- QGIS Package: New version 0.10.1
- QGIS Package: Fixed bug to set user privileges

### Version 0.8.0 (2023-03-21)

#### Client side: Layer Loader

- Added support for Address features as layers
- Added support for LoD independent layers (i.e., "LoDx")
- Redesigned and extended attribute forms to support:
  - External References (per type)
  - Generic Attributes (per type)
  - Addresses
  - All subforms allow insert, update and delete operations
- Added support for CodeLists selection via GUI
- Improved support of datasets with geographic coordinates (bbox)

#### Client side: Bulk Deleter

- Improved support of datasets with geographic coordinates (bbox)
- Renamed root-class to top-level features

#### Client side: QGIS Package Administration

- Renamed root-class to top-level features
- Minor bug fixes and code clean-up

#### Server side: QGIS Package

- New version 0.10
- Renamed root-class to top-level features
- Updates to layer_metadata table
- Updates to layer creation functions
- Added support for (updatable) Detail Views
- Added support for look up tables metadata
- Improved support to datasets with geographic coordinates (bbox precision)
- Improved speed to compute the bbox and list cdb_schemas
- Minor bug fixes and code clean-up

### Version 0.7.1 (2023-02-20)

#### Main changes

- Code restructuring to allow for better modularization of current (and future) modules
- Allow for concurrent dialogs, but added logic to:
  - Prevent having user dialogs (and connections) open when using the "QGIS Package Administration"
  - Prevent having user dialogs connected to the same database and citydb schema at the same time
- QGIS Package: new version 0.9.1
- Fixed: When cleaning up the database, sequences are now correctly restarted

### Version 0.7.0 (2023-02-13)

#### Notes

- The 3DCityDB Loader is growing and gets therefore a new name: "3DCityDB Tools"!

#### Client side: Layer Loader

- Connection tab:
  - Added Feature Type selection in layer generation
  - Added Geocoding function (based on Nominatim API)
  - Creating and dropping layers is now faster
  - Minor redesign of the GUI
- Settings tab (NEW)
- Editing of layers from read-only citydb schemas is now blocked in QGIS
- QML files are split and loaded separately for forms, 2D styles and (optionally) 3D styles, respectively
- Rewritten all SQL queries to follow psycopg2 syntax
- Major code refactoring and clean-up

#### Client side: Bulk Deleter (NEW)

- A user with rw privileges can delete features selecting them:
  - via a spatial filter
  - and/or via a Feature Type/Root-class feature filters
- A user with rw privileges can delete ALL DATA from the selected citydb schema (i.e., truncate all tables)
- Geocoding function (based on Nominatim API)

#### Client side: QGIS Package Administration

- QGIS Package Installation tab: Major rework, added user management
- Installation settings tab (NEW)
- Minor GUI improvements to the New connection dialog
- QGIS Package uninstall procedure is now much faster
- User schema uninstall procedure is now much faster
- Rewritten all SQL queries to follow psycopg2 syntax
- Minor code refactoring and clean-up

#### Server side: QGIS Package

- New version 0.9.0
- Each 3DCityDB instance gets not its own database group
- Added support for new client-side functionalities:
  - Refactored layer_metadata table
  - Added functions to manage groups
  - Added functions to check Feature Types availability
- Minor bug fixes and code clean-up

### Version 0.6.0 (2022-11-24)

#### Client side: Layer Loader

- Added support for QGIS v. 3.28 LTR
- Reworked the series of checks carried out upon connection:
  - Added check and warning for outdated QGIS Package versions
  - Added check and warning in case there are no accessible citydb schemas
  - Added check and warning in case there are only empty citydb schemas
- Added functionality to update the cdb_extents in case data are added/removed to/from the citydb schemas
- Fixed: bboxes being wrongly resized (enlarged) after canvases are set/changed
- Improved function to import layers
  - Drop QGIS spatial filter if QGIS bbox = Layers bbox
  - Added check to avoid loading multiple times the same layer
- Changes to the GUI dialog, forms, etc.
  - Reshaped connection buttons
  - Added button "Refresh {sch} extents"
  - In the "Layer" tab, the Feature types in the combo box are now ordered alphabetically
  - Minor other visual improvements (labels, tooltips, etc.)
  - Added forms for new Relief Features, etc.
- Further major code refactoring and clean-up

#### Client side: QGIS Package Administration

- Reworked the series of checks carried out upon connection
  - Added check and warning if PostgreSQL < 10
  - Added check and warning if QGIS Package < 0.8.0
- Changes to the GUI dialog
  - Reshaped connection buttons
  - Minor other visual improvements (labels, tooltips, etc.)
- Minor code refactoring and clean-up

#### Server side: QGIS Package

- New version 0.8.0
- Fixed bug in delete trigger functions to extract the name of the cdb_schema
- Rewritten functions to compute and upsert the extents
- Added support for:
  - Terrain Intersection Curve geometries (bridge, building, tunnel, generics, city_furniture
  - MultiCurve geometries (bridge, building, tunnel)
  - MasspointRelief, BreaklinesRelief Features
- Minor bug fixes and code clean-up

### Version 0.5.0 (2022-09-02)

#### Notes

- First public release of the 3DCityDB Loader plug-in for QGIS

#### Main changes

- Switched to TUD GitHub repository
- Added user guide
- Major code refactoring and clean-up

### Version 0.4.0 (2022-06-29)

#### Notes

- Konstantinos' MSc thesis code release