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
4.0.1 - 2023-05-05
4.0.0 - 2023-05-05
- 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
- 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
- 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
- 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
andwahoomc/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
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:
- Remove existing environment:
conda env remove -n gdal-user
- 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
- 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
3.1.1 - 2022-11-15
- publish device themes as zip
a5afd6e
- Include wahoomc.init module in published PyPI version (#172)
b4da480
3.1.0 - 2022-11-14
- 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
- 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
- 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
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
- 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
- Use
python
instead ofpython3
to callshape2osm.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
- 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
- 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
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
2.0.1 - 2022-05-09
2.0.0 - 2022-05-08
- 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
- 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
- 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
- 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
The GUI and CLI of wahooMapsCreator will now be called differently than before:
python wahoomc gui
andpython 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
andpython 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
1.1.0 - 2022-03-18
- 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
andoutput
to level of wahooMapsCreator to be release independent (#93)c33fefe
- 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
- 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
- install: Make Anaconda environment very easy to setup (#82)
14b9161
- docu: Update & refactor README and install-docu for setting up Anaconda environment (#84)
07dbeea
- unittest: Update unittest files for Windows and macOS after sharpening Anaconda environment (#83)
5ed0375
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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
0.8.1 - 2021-09-10
0.8.0 - 2021-08-11
-h
and--help
works again
0.7.1 - 2021-07-26
- Release .zip file without doubled subfolder. Directly zip content
0.7.0 - 2021-07-25
- GUI functionality with all relevant settings (equals CLI arguments) #21 PR24
- start gui via
python3 wahoo_map_creator.py
orpython wahoo_map_creator.py
- start gui via
- Release .zip file will only contain relevant files for execution PR25
- When running without calculation of border countries, ignore border countries in all steps PR24
- move contents into the correct directory PR23
- doubled / not needed files and folders PR23
0.6.0 - 2021-07-10
- CLI arguments for relevant settings. No more editing of python files needed #15 PR19
- see
python3 wahoo_map_creator.py -h
orpython wahoo_map_creator.py -h
for possible arguments
- see
- pylint findings corrected
- settings for processing should no longer be made in the file wahoo_map_creator.py. --> Use CLI arguments
- unittests run also on windows (paths are now OS-independent)
0.5.0 - 2021-07-04
- Parameter to control download and processing of border countries or not PR18
- unittests for downloader.py and osm_maps_functions.py files PR16
- 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
- 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
- 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
- the tooling_mac/ and tooling_windows python files will be removed in the future
0.3.1 - 2021-06-17
- configuration for virtual python environment (venv)
- correct import path for custom python package
- unused official and custom python packages
0.3.0 - 2021-06-16
- README, Quick Start Guides & documentation written
- Refactoring & Renaming of .py files
0.2.0 - 2021-06-10
- 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
- deleted one directory level in
tooling_windows
- move leftover common-files to
common_resources
directory - README with picture and changed text
- 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
- macOS/Unix:
- doubled files
0.1.0 - 2021-06-08
- 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
- macOS/Unix:
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
- macOS/Unix: