What's Changed
- Qgis spatialiteUse QGIS utils' spatialite_connect to remove reliance on Windows-only shipped DLL by @nirvn in #1
- Fix one more hard-coded use of spatialite Windows DLLs by @nirvn in #3
- Fix loading of custom editor UI form on non-Windows systems by @nirvn in #2
- Improve ALAQS project properties + bye bye static .py sidecar to .ui in favor of loadUiType by @nirvn in #5
- Revamp of the emission inventory creation dialog by @nirvn in #6
- Use an enum name that's compatible with older versions of QGIS by @nirvn in #7
- Re-architect the emission inventory analysis dialog & dispersion calculation dialog by @nirvn in #8
- Quick and simple clean up of the about dialog by @nirvn in #9
- Follow up to review call by @nirvn in #10
- Improve ALAQS project properties airport selection, heal auto pan to airport by @nirvn in #14
- Refresh the create ALAQS project dialog by @nirvn in #13
- Get rid of last remaining non-layout profiles dialog UI by @nirvn in #12
- Some more follow ups from the review call by @nirvn in #11
- Fix AUSTAL2000 output module by @nirvn in #15
- Initial tracks support by @nirvn in #4
- Add initial pre-commit hook and config by @suricactus in #16
- QGIS2 API usage and some more formatting errors fixed by @suricactus in #17
- Added pre-commit CI action by @suricactus in #18
- Bump CI dependencies by @suricactus in #21
- [UI] Project Properties Roadways tab - fix alignments and spacing by @suricactus in #19
- [UI] Simplify creating project by using native Qt file dialog by @suricactus in #20
- [BUGFIX] Clicking on export CSV in emissions dialog caused unhandled exception by @suricactus in #22
- Project properties UI fixes by @suricactus in #23
- Move all layer configuration out of the code as a static config file by @suricactus in #26
- When loading a new ALAQS project, automatically add basemap layer group by @suricactus in #28
- Fix toolbar title case to harmonize with the rest of QGIS by @nirvn in #32
- AUSTAL execution improvements by @nirvn in #33
- Reorganize the repo so the open_alaqs is a proper python module by @suricactus in #31
- When importing qt stuff, use qgis.pyqt, instead of pyqt5 directly by @suricactus in #35
- Fix Qt cursor, turns out the
PyQt.Qt
is different fromPyQt.QtCore.Qt
by @suricactus in #36 - Make sql connection via context manager and add sql_execute method by @suricactus in #37
- Simplify queries that create and load ALAQS project by @suricactus in #38
- Download and import OSM data on new project creation by @suricactus in #41
- Fix further python 3.9 typings by @suricactus in #46
- Remove dead code that also fails in pylint by @suricactus in #45
- Fix usage of "now", this is not postgresql by @suricactus in #47
- Prefer bymode over BFFM2 method by @suricactus in #51
- Add a bit more logging what is going on wrong by @suricactus in #50
- Fix calling non-existant function NOW in sqlite by @suricactus in #53
- Simple gitignore by @suricactus in #54
- Bump and simplify dependencies by @suricactus in #56
- Restore the original schema of the template databases by @suricactus in #57
- Fix type conversion, as some values might be NULL by @suricactus in #58
- Improve DB template generation with more logs by @suricactus in #59
- Fix setting zoom when a project is opened by @suricactus in #60
- Fix templates, drop sqlalchemy, improve logging by @suricactus in #61
- Simplify input value validation by @suricactus in #62
- Refactor Grid3D and related modules by @suricactus in #65
- Search OSM within the airport by @suricactus in #66
- Also recreate the shapes_* layers by @suricactus in #67
- Add more logs and actually overwrite the base_template when --full-recreate is passed by @suricactus in #68
- Simplify Aircraft instance creation by @suricactus in #72
- Search for helicopter engines by name by @suricactus in #73
- Fix SQL serializable by @suricactus in #74
- Remove parking method by @suricactus in #75
- Fix malformed datetime strings by @suricactus in #76
- Fix typing as old Python does not support
| None
by @suricactus in #77 - Use QgsNetworkAccessManager for external connections by @suricactus in #78
- Fix deprecation warning for
load_module
by @suricactus in #79 - Fix geometry loading by @suricactus in #80
- Fix load modules having deprecation warning, see 3be8e39 by @suricactus in #81
- No need to raise if the file is invalid by @suricactus in #82
- Better logs with the full exception via QgsMessageLog by @suricactus in #83
- Fix dataframe with missing columns by @suricactus in #84
- Fix typing for conversion and make less reliant on exceptions by @suricactus in #86
- Fix pandas assignment by @suricactus in #85
- Fix setting the aircraft name and group by @suricactus in #87
- Fix pandas deprecation warning by @suricactus in #88
- Fixed the
shape_*
layers primary key frompkuid
tooid
by @suricactus in #89 - Further improvements in the logs by @suricactus in #91
- Make pandas 2.0 fix with the assignment by @suricactus in #90
- Make sure the formatted error traceback is compatible with pre-3.10 Python by @suricactus in #92
- Revert "Fix all comparison to
True
(flake8 E712)" by @suricactus in #93 - Shapely expect the call to be .wkt not .to_wkt() by @suricactus in #95
- Fix calling an instance method without self by @suricactus in #94
- Fix CSV export by @suricactus in #96
- Rename
pmnonvolatilenumber_kg
topmnonvolatile_number
as expected… by @suricactus in #97 - Fixes in SQL table inserts by @suricactus in #98
- Give indication that export actually happened in SQLite case by @suricactus in #99
- Fix
ix
toiloc
as new pandas require by @suricactus in #100 - Resurrect the grid visualization by @suricactus in #101
- Save filename of the last .alaqs file used by @suricactus in #102
- Simplify movements calculation by @suricactus in #103
- Use vertical limit from the Emission Inventory Analysis dialog by @suricactus in #104
- Big delete of commented code by @suricactus in #105
- Add SourceModuleRegistry by @suricactus in #106
- Replace
InventoryTime
class with simple datetime object by @suricactus in #107 - Make it possible to have time intervals smaller than 1h by @suricactus in #108
- Fix intersection returning (0, 0) coords instead of null geometry by @suricactus in #111
- Handle
QgsFileWidget
settings widget get and set values by @suricactus in #112 - Calculate emissions with smaller time intervals by @suricactus in #113
- Retire stuff not used by @suricactus in #114
- Cleanup and document SQL related stuff by @suricactus in #115
- Bump the
pre-commit-config.yml
so it can be run on Ubuntu 24.04 by @suricactus in #117 - Make
black
happy again by @suricactus in #118 - Add typing to the base OutputModule by @suricactus in #119
- Fix types in SQLSerializable by @suricactus in #120
- Do not make
beginJob
orendJob
mandatory by @suricactus in #121 - Fix
runOutputModule
by @suricactus in #122 - Fix crash due to wrong constructor of QgsFillSymbol by @suricactus in #123
- Simplify
EmissionsQGISVectorLayerOutputModule
by @suricactus in #124 - Add TabularOutputModule and simplify CSV export by @suricactus in #125
- Add the ability to export geometries of the emission sources by @suricactus in #126
- Pollutants enum by @suricactus in #127
- Fix Emission typing after sum-ing them by @suricactus in #128
- Remove obsolete check for vector layer rendering by @suricactus in #129
- Add the ability to export a CSV with the grid information by @suricactus in #130
- Make older Python happy with
f"{d['']}
instead off"{d[""]}
by @suricactus in #137 - Fix
db_update_table
missing WHERE in the query by @suricactus in #136 - Fix modern Python - the plugin should work on Python 3.8 too by @suricactus in #138
- Fix unit conversion when one is present and the other is not by @suricactus in #140
- Fix typing by @suricactus in #139
- [ci] Release workflow: add ZIP file asset to GitHub release by @gacarrillor in #145
- Fix taxi routes creation by @suricactus in #146
- Fix import meteo by @suricactus in #148
- Added license by @suricactus in #150
- Fix date validation issue by @suricactus in #152
- Fix missing db_path when serializing 3dgrid by @suricactus in #151
- Operational fixes by @luipir in #154
- Correct visualization of data source movements into Emission Inventory Analysis GUI: Fixes #161 by @luipir in #162
- merging from main-luipir and remove it by @luipir in #163
- Fix FetchGateEmissions when there are no results by @suricactus in #166
- emission calculation sources issue. Fixes #164 by @luipir in #167
- Faster and simplified code to check for relevant movements by @suricactus in #168
- only gate emissions issue. Fixes 169 by @luipir in #170
- removed some % formatting in favour of f-string by @luipir in #171
- fix issue if Engine values are integer that are 0ed getting default values by @luipir in #173
- 174 aircraft default profile fix by @luipir in #175
- Updated docs how to recreate the template database and new engines by @suricactus in #177
- Rename the shortened
prof_id
toprofile_id
by @suricactus in #180 - Fix an error when the aircraft has no profile available because of missing
oid
by @suricactus in #181 - correctly read emissions from APU store by @luipir in #182
- Updated database with new aircraft information by @suricactus in #184
- Fix user tables having records in the inventory db template by @suricactus in #185
- Updated
default_aircraft_profiles.csv
by @suricactus in #187 - Improved warnings by @suricactus in #186
- Fix problem when exporting AUSTAL files with x and y swapped by @suricactus in #193
- Update README.md by @suricactus in #191
- Update about dialog with some links by @suricactus in #195
- Partly revert "Swap coordinates" by @suricactus in #198
- Remove confusing logging regarding the zero emissions by @suricactus in #188
- The fleet mix can be
None
, so we need to make sure it is real float by @suricactus in #199 - Rename AUSTAL2000 to AUSTAL by @suricactus in #203
- Drop lib_alaqs_method by @suricactus in #204
- Open-ALAQS User Guide by @sstromat in #196
- Simplify all UI files by @suricactus in #210
- Fix importing OSM data by setting default values by @suricactus in #209
- Simplify validation by removing code duplication by @suricactus in #211
- Remove park time by @suricactus in #212
- Replace the light/medium/heavy vehicle concrete fields for each vehicle by @suricactus in #213
- Fix AUSTAL output module config by @suricactus in #216
- Rename
typing.py
toopenalaqs_typing.py
to not confuse it with Python's typing std lib by @suricactus in #217 - Update Movement.py - removed obsolete code by @sstromat in #220
- Fix import of openalaqs_typing module by @suricactus in #221
- Fix
BFFM2
calculation by using pollutants enum values instead of hardcoded strings by @suricactus in #222 - Fix trajectory distance calculation by @suricactus in #223
- Fix issues related to running AUSTAL by @suricactus in #224
- Fix various deprecation warnings by @suricactus in #225
- Fix movement calculation by @suricactus in #226
- Added propeller to the aicraft groups options by @suricactus in #228
- Improve taxiways routes dialog by @suricactus in #229
- Fix
IndexError: single positional indexer is out-of-bounds
by @suricactus in #231 - [WIP] Fix source dynamics calculation when not "none" is selected by @suricactus in #232
- Add files via upload by @sstromat in #237
- Update Movement.py by @sstromat in #238
- Update Movement.py by @sstromat in #239
- Update Movement.py by @sstromat in #240
- Fix dispersion module by @suricactus in #233
- The values to be shown on the map are on the Q column instead of the current pollutant one. Move them there. by @suricactus in #241
- Move the concentration grid factor to a global constant instead of two local variables by @suricactus in #242
- Remove some outdated text in the about dialog by @suricactus in #243
- Replace all opengisch GH org references to eurocontrol-asu by @suricactus in #244
- Add sample AUSTAL settings by @suricactus in #245
- Update release.yaml with the correct envvars from secrets by @suricactus in #246
New Contributors
- @nirvn made their first contribution in #1
- @gacarrillor made their first contribution in #145
- @luipir made their first contribution in #154
- @sstromat made their first contribution in #196
Full Changelog: /~https://github.com/eurocontrol-asu/open_alaqs/commits/v4.0.0