Skip to content

Latest commit

 

History

History
464 lines (375 loc) · 42.9 KB

CHANGELOG.md

File metadata and controls

464 lines (375 loc) · 42.9 KB

Changelog

All notable changes to this project will be documented in this file.

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

A list of unreleased changes can be found here.

4.0.2 - 2023-05-06

Features

  • option to choose source for contour lines: view1 (standard) and srtm1 (#204) 400dfc4

4.0.1 - 2023-05-05

Bug Fixes

  • use srtm1 data to see even more contour lines + upgrade GDAL from 3.4 to 3.6 (#203) 5eec788

4.0.0 - 2023-05-05

Breaking Changes

  • Upgrade required Python version to 3.11, upgrade packages GDAL to 3.6 and autopep8 to 2.0 (#166) afb3d1e
  • X/Y input via geofabrik .json + only support processing maps via geofabrik .json, delete wahoomc/resources/json/ files, constants and related coding (#183) 0d62840
  • Downgrade required Python version to 3.10 (#187) 70c0395

Features

  • update documentation (#175) 008e0b5
  • macOS: Download mapwriter plugin during usage instead of manually copying during setup (#177) 1119db5
  • Add a FAQ entry about routing tiles for device routing (#191) ca0261a
  • Allow processing of multiple countries via CLI (#190) ddbe61e
  • Integrate contour lines (elevation) into generated maps with argument -con (#188) 0078845
  • Include waterway/canal in tag-wahoo-poi.xml (#199) d7b771b
  • Include waterway/stream in tags-to-keep.json (#201) f6a4b99

Bug Fixes

  • default to BOLT_2 in VTM theme. With new firmware-releases BOLTv1 act asl BOLT_2 16a1586
  • Do not use geofabrik .json file before geofabrik .json file has been downloaded (#192) badef50
  • install shapely and requests via conda instead of pip. For processing geofabrik.json with shapely on Windows (#193) c84c3e0

Development/Infrastructure/Test/CI

  • macOS: Check .osm.pbf files in unittests with osmium diff (due to osmium-tool upgrade) (#176) 2906a56
  • enable Github action to update latest release (#178) f4143fc
  • Fix unittest, add v3 to v4 migration to FAQ, delete unused class attribute (seen during implementation of release v4.0.0) (#180) 99ed025
  • adjust dependencies by implementing pydeps adjustments (#184) 2e66c50
  • Use geofabrik .json for countries and regions for internal processing (from former constants.py and wahoomc/resources/json) (#182) 8632fbf
  • unittests: compare map files with osmium in Windows, park static files, have static geofabrik .json (#186) f400f89
  • refactor osm_maps_functions.py like geofabrik.py - using a interface and two implementing classes (#194) aa5b541
  • detail logging of subsprocesses, unify logging (tile progress, country config file) (#195) 97b4da6
  • refactor coding: do/remove checks, adjust exceptions, cleanup coding (#196) 0474978

BREAKING CHANGE

Processing is now only based on Geofabrik .json file which is downloaded both for country and X/Y input. The static country .json files and the whole implementation has been removed. -gt input argument was also removed because there is only one processing method implemented. Input should now be in Geofabrik style. The hardcoded translation to geofabrik countries has been removed. The size of generated maps for X/Y coordinates should remain exactly the same as before. The size of generated maps for countries should roughly be the same as before.

You need to create a new Anaconda environment with Python v3.10 for this version. These are the steps:

  1. Remove existing environment: conda env remove -n gdal-user
  2. Create new environment and install wahoomc:
conda create -n gdal-user python=3.10 geojson=2.5 gdal=3.6 requests=2.28 shapely=1.8 bs4=4.11 lxml=4.9 matplotlib=3.4.3 pip --channel conda-forge --override-channels
conda activate gdal-user
pip install wahoomc

3.2.0 - 2022-11-29

Features

  • install: Download Osmosis and Osmfilter on Windows during first run instead of shipping with the tool (#167) ae4eb1f
  • install: Check installed version against latest published version on PyPI (#173) 08e00c3

Bug Fixes

  • Raise max. memory for Osmosis in Windows to 3GB (#171) 2be33bd

3.1.1 - 2022-11-15

Bug Fixes

  • publish device themes as zip a5afd6e
  • Include wahoomc.init module in published PyPI version (#172) b4da480

3.1.0 - 2022-11-14

Features

  • correctly integrate tunnels to maps in macOS (in the same way as in Windows) (#165) 7d5520b
  • possibility to verbose output with -v in CLI and GUI 9075b43
  • save timestamp of last-changed of raw map files being processed a29fd99
  • Read tag-wahoo.xml and tags-to-keep.json from user directory first (from python module as fallback) (#170) fd23b8a

Bug Fixes

  • write tags per OS & include name-tags 4ec269e
  • Enable canary islands processing. Mapping in constants.py and movement of .json content (#169) 88a51ec
  • Enable ukraine processing. Mapping in constants.py a4f94ea
  • harmonize logging of "merging splitted tiles" with the rest 5ba0c22
  • correctly compare the version of last run. fix for #161 d9893d7

Development/Infrastructure/Test/CI

  • remove copying and remove deprecated files #148 3472a25
  • remove argument -om 60e0019
  • don't publish wahooMapsCreator as .zip and don't mention in docs 24bfef9
  • Fix unittests & update unittest files after changes of release v3.0.0 (#164) b473a97

BREAKING CHANGE

Users who downloaded the .zip files from the release page should migrate to the PyPI version and update the python module accordingly.

3.0.0 - 2022-11-01

Breaking Changes

  • Remove argument -km (keep_map_folders) (#140) b6157ab
  • Process coding that can be influenced by user-input without -fp - speeds up playing with tags (#150) 71161c1
  • By default include POI's into generated maps (#151) 15b9e26

Features

  • Check for required programs at wahooMapsCreator start (#127) bcb2dc0

Features

  • Use python instead of python3 to call shape2osm.py to be macOS Monterey/M1 compatible (#131) c73bd8a
  • Write v17 map tile indicator (#138) 58b7a12
  • Refactor getting tag-wahoo xml file, distinguish Osmosis errors, reset default logging level to INFO (#141) 1b5f89f
  • Refactor a lot to decouple and make maintenance easier (focus osm_maps_functions.py) (#152) 9810b6d
  • Rename variable names to make them more understandable. Restructure one for-loop (#153) 60c1c6c
  • Make logging uniformly and include variables into the message correctly (#154) f59c138
  • Filter country file if new new tags are being used // introduce country config file .config.json (#162) 9157286
  • Add shop/bicycle POIs, show also "ways" POIs (#158) 30ee102

Bug Fixes

  • handle USA json country names via conversion of _ to - (#137) f235b8c
  • Set timeout for file downloads to 30 minutes per file (pylint finding) (#149) ce48d55
  • handle threads as int and use f-typing to append it to cmd (#147) 3cdb75d

Development/Infrastructure/Test/CI

  • delete cruiser tooling and do not publish as .zip in a release a252202
  • Update unittest files after changes of release v2.0.0 (#124) e39f984
  • Refactor generated_files unittests (#125) 0bab7a9
  • Refactor constants and setup functions (#126) ce7d7a4
  • add FEAT commits to changelog ccbe03c
  • Run pylint tests also on pull requests 450073b
  • install: Update python packages to latest minor release and delete unused environment files (#148) 47e0fb7
  • CI/CD: only run tests at push onto develop or PR's beee898
  • docu: of copy-to-wahoo, installation, contribution (#157) 6ad9d6f
  • install: introduce config file .config.json // store python module version (#161) 00a9b92
  • Correct unittests of generated files for v3.0.0 changes (#163) 4aaf161

BREAKING CHANGE

As most of the people use wahooMapsCreator to create maps including POI's, this is now golden standard without any arguments.

Coding that can be influenced by user-input is now processed without giving -fp and coding that can not be influenced is only re-procecced when issuing -fp. That speeds up playing with tags.

  • argument -km, keep_map_folders does no longer exist
  • either start the tool without the -zip argument or unzip the conpressed output after processing

2.0.2 - 2022-06-06

Bug Fixes

  • Use latin-1 encoding as fallback if UnicodeDecodeError with utf-8 (#133) 3d23b01

2.0.1 - 2022-05-09

Bug Fixes

  • Correctly include directory tooling_win in .zip and via PyPI package (#122) 5779d73

2.0.0 - 2022-05-08

Breaking Changes

  • X/Y coordinates can be given as input parameters (e.g. for testing!) & refactoring of GUI & CLI processing (#99) dabe117
  • Remove primary CLI input option -fi, that is giving a json-file with tile(s). It is replaced by #99 (#105) 1ca469c
  • default "process border countries" to yes in GUI and CLI (#104) 631b47d

Features

  • restructure logging using logging-object, correct unittests & unittest-files (#101) 6026893
  • update documentation (#110) b09ba71
  • adjust BOLT device theme (#111) f2337b5
  • Introduce PyPI setup to distribute python package (#117) a947b9f
  • Include POIs into generated maps and diplay them with VTM rendering (#106) b32fd86

Features

  • Do not zip folders with generated files by default (#118) a4feb92
  • install: move work-directories to the user directory (prerequisite for PyPI setup) (#119) 0dd582b

Bug Fixes

Development/Infrastructure/Test/CI

  • correct pylint findings (#103) cd8be6d
  • multiple small corrections & unifications. pylint findings, logging, comments, unittests (#107) c8ecf44
  • Refactor tags constants, have universal tags and unittest it (#108) df80946
  • CI/CD: Introduce pylint via GitHub Actions on each push (#112) d50479c
  • Change structure of repository to python module (#115) e87ce45
  • correct pylint findings (#116) d85bd01

BREAKING CHANGE

The GUI and CLI of wahooMapsCreator will now be called differently than before:

  • python wahoomc gui and
  • python wahoomc cli -co malta

Für CLI and GUI, the default is now to calculate border countries. The CLI option -bc was therefore replaced by -nbc, "do not calculate border countries".

Anaconda .yml files have now a different name for creating new environments. Existing Anaconda environments can still be used without adjustments!

The GUI and CLI of wahooMapsCreator will now be called differently than before:

  • python wahoo_map_creator.py gui and
  • python wahoo_map_creator.py cli -co malta

This will ensure better control over the CLI input parameters, help messages and is more consistent now!

1.1.1 - 2022-05-02

Bug Fixes

  • country & regions constants and mapping (#113) e45d89c

1.1.0 - 2022-03-18

Features

  • CI/CD: create OS-specific .zip files during build for release .zip files, separate cruiser.zip Asset and delete unused files (#90) c3cd530
  • install: move work-directories common_download and output to level of wahooMapsCreator to be release independent (#93) c33fefe

Bug Fixes

  • copy version files to map archive (#92) e50c1b7
  • Release all dist/*.zip files as Assets (also cruiser!) and include moved files (corrects #90) (#97) 4fb49f6
  • Windows: use (official) 32bit or 64bit osmconvert.exe (#91) 187e4ac

Development/Infrastructure/Test/CI

  • docu: remove not needed install steps and clarify installation (macOS/ Windows) 9e1a00b
  • docu: Anaconde outside of repo, do not collapse in QUICKSTART_ANACONDA.md (#98) ea732f7

1.0.0 - 2022-01-19

Features

  • install: Make Anaconda environment very easy to setup (#82) 14b9161
  • docu: Update & refactor README and install-docu for setting up Anaconda environment (#84) 07dbeea

Development/Infrastructure/Test/CI

  • unittest: Update unittest files for Windows and macOS after sharpening Anaconda environment (#83) 5ed0375

BREAKING CHANGE

The recommendation for the initial setup is now to create a virtual Python environment via Anaconda on Windows, macOS or Linux. Installing multiple programs manually with all setup details and problems now belongs to the past.

wahooMapsCreator can now be used much quicker and easier!

0.12.0 - 2022-01-16

Bug Fixes

  • macOS: Support osmosis-tool v1.13.2 by sorting land* osm files before merging (#78) e599294
  • Make paths for zip files identical on different OS: macOS and Windows (#79) 85c8a36

Development/Infrastructure/Test/CI

  • Update and clarify README & documentation & git files (#81) 9d1c40d
  • CI/CD: update Pre-Release workflow to create unreleased "latest" release on commit on "release-*" 99d9102
  • CI/CD: Add requirements.txt to build .zip aaf6a40

0.11.0 - 2021-12-10

Features

  • Refactor downloader.py (#66) 4bb80a1
  • Calculation of tiles using Geofabrik-URL instead of static json (#68) cee0089
  • Add Dataline checks and checks for (sub-) regions (#69) e0773c5
  • Enhance GUI with tabs for all possible arguments (#74) 243aa53
  • Create one function make_and_zip_files from two existing ones (#76) 4223dc1

Bug Fixes

  • Reflect #44 also in Github Release .zip file c03abea
  • make "filter_tags" overwrite existing files on macOS bc7f2c3
  • Prevent initialisation of the graphical GUI on WSL (#72) 2a64a17
  • Process GUI / tk coding only if running in GUI mode (#73) 3c5cbe3

Development/Infrastructure/Test/CI

  • Update unittest files for Windows and macOS / use defined static land_polygons / refactor unittest (#65) 8845173
  • Setup Dev/Run environment using Anaconda (#67) 858d890

0.10.0 - 2021-10-30

Features

  • Add check for required input parameter for CLI and GUI (#41) 4994f13
  • Enhance check for existing (already downloaded) polygons and .osm.pbf files (#43) bbdedd1
  • Create Wahoo tile present/version indicator files like 84.map.lzma.v12 (#49) 2b4adb0
  • Performance improvement for .osm.pbf creation and splitting. Use 'v12' tag (keep) filters (#46) cef537b
  • Change creation of tiles.zip and maps.zip to support very large countries (#47) 2e20d51

Bug Fixes

  • Storing and interpretation of CLI arguments (#48) 81fe795
  • Update osmosis distribution with official 0.48.3 version to fix osmosis permissions (#42) 9379fb1
  • Clean-up and unify output logging (#52) 6a0b9eb
  • Fix keep_map_folders CLI argument handling (#57) b8f187c
  • uniform Windows and macOS processing in filter_tags_from_country_osm_pbf_files (#63) 1a87ce1

Development/Infrastructure/Test/CI

  • Automate CHANGELOG.md creation using git-chglog (#45) 23b8927
  • gitignore any work directories and create them during processing if necessary (#44) 33d5821
  • Update Github templates for issues and pull requests (#50) b68fbd2
  • Define sort-sequence of CHANGELOG entries (#54) e47947e
  • Unittests for malta and liechtenstein. Check output per tile for files in tests/resources (#56) 55c47db
  • Unify zipping & integrate last bits of PR-40 (#55) 7f2108c
  • Have separate files for Windows and macOS for unittests output per tile / malta and liechtenstein (#62) 28787b3

0.9.0 - 2021-10-19

Added

  • have more different tag-wahoo-xml files and move them to folders. Modify tag-wahoo.xml to differently display some "place"-tags PR34
  • tag-wahoo-v12.xml which is a updated version of the current tag-wahoo-hidrive2.xml. Bus_guideways have been removed and the zoom-appear levels are copied from the original wahoo maps. This really should replace tag-wahoo.xml eventually when v12 maps are created. PR38
  • Howto doc for manually adding routing tiles PR32

Changed

  • move "central" download functions from downloader to file_directory_functions
  • move files from common_resources into two new folders: common_download & common_python and into tooling PR33
  • format python files in directory common_python using "autopep8" PR35 PR37
  • Replaced the publicly available osmconvert.exe (https://wiki.openstreetmap.org/wiki/Osmconvert) 0.8.8 with a special newer version 0.8.10. This version does NOT include the zlib library which enables processing of .osm.pbf files larger then 4GB on windows. The old version did have zlib which prevented processing of > 4Gb .osm.pbf files on windows. PR38

Fixed

  • fix bug in download handling of land polygons file which was introduced with PR33. PR35

0.8.1 - 2021-09-10

Fixed

  • change dynamic access to constants-values to prevent console-errors #29 PR30

0.8.0 - 2021-08-11

Added

  • download a geofabrik file only once if more countries are in the same geofabrik-country #11 PR28

Fixed

  • -h and --help works again

0.7.1 - 2021-07-26

Fixed

  • Release .zip file without doubled subfolder. Directly zip content

0.7.0 - 2021-07-25

Added

  • GUI functionality with all relevant settings (equals CLI arguments) #21 PR24
    • start gui via python3 wahoo_map_creator.py or python wahoo_map_creator.py
  • Release .zip file will only contain relevant files for execution PR25

Fixed

  • When running without calculation of border countries, ignore border countries in all steps PR24

Changed

  • move contents into the correct directory PR23

Removed

  • doubled / not needed files and folders PR23

0.6.0 - 2021-07-10

Added

  • CLI arguments for relevant settings. No more editing of python files needed #15 PR19
    • see python3 wahoo_map_creator.py -h or python wahoo_map_creator.py -h for possible arguments

Changed

  • pylint findings corrected

Removed

  • settings for processing should no longer be made in the file wahoo_map_creator.py. --> Use CLI arguments

Fixed

  • unittests run also on windows (paths are now OS-independent)

0.5.0 - 2021-07-04

Added

  • Parameter to control download and processing of border countries or not PR18
  • unittests for downloader.py and osm_maps_functions.py files PR16

Changed

  • pylint findings corrected
  • a lot of refactored (focus methods, constructors)
  • refactor downloader-methods for testing with unittests
  • correctly check force_download and force_processing against boolean
  • fix pylint findings (focus documentation and imports)
  • reduce (double) imported standard modules & delete unused imports
  • move call of empty directories-creation

0.4.0 - 2021-07-01

Added

  • parameter force_download to differentiate between forcing download of new maps and force of processing maps
  • enable selective download of .osm.pdf files. Only download out-of-date files

Changed

  • correct pylint findings
  • unify macOS and Windows python file into one
    • the new file is: wahoo_mapcreator.py in root folder
    • deletion of tooling_mac/mac_wahoo_map_creator.py
  • a lot of refactoring: move coding to class FileDir and Downloader

Deprecated

  • the tooling_mac/ and tooling_windows python files will be removed in the future

0.3.1 - 2021-06-17

Added

  • configuration for virtual python environment (venv)

Changed

  • correct import path for custom python package

Removed

  • unused official and custom python packages

0.3.0 - 2021-06-16

Added

  • README, Quick Start Guides & documentation written
  • Refactoring & Renaming of .py files

0.2.0 - 2021-06-10

Added

  • bat file with GUI for Windows (with corresponding python file)
  • automatic creation of Releases when pushing a tag with semantic version (eg. v.1.1)
  • docs directory

Changed

  • deleted one directory level in tooling_windows
  • move leftover common-files to common_resources directory
  • README with picture and changed text

Removed

  • existing "single-file" program files & bat callers, mainly:
    • macOS/Unix: tooling_mac/wahoo-map-creator-osmium-working.py
    • Windows: tooling_windows/Windows-Wahoo-Map-Creator-Osmosis/wahoo-map-creator-osmosis.py
  • doubled files

0.1.0 - 2021-06-08

Added

  • created two files which use mainly the coding from common_resources:
    • macOS/Unix: tooling_mac/wahoo-map-creator-osmium-using-common.py
    • Windows: tooling_windows/Windows-Wahoo-Map-Creator-Osmosis/wahoo-map-creator-osmosis-using-common.py
  • common_resources: directory for common coding & resources #8
    • with folders for resources and files generally needed
    • with extracted common coding from these two files
      • macOS/Unix: tooling_mac/wahoo-map-creator-osmium-working.py
      • Windows: tooling_windows/Windows-Wahoo-Map-Creator-Osmosis/wahoo-map-creator-osmosis.py