From 2831885c220641b3eaacd6bf147ebd04837f6f13 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 13 Dec 2022 17:22:01 +0700 Subject: [PATCH 01/45] Multi-file running changelog strategy --- changelog/README.md | 59 ++++++++++++++++++++++++++++++++++ changelog/example.json | 6 ++++ changelog/unreleased/6540.json | 6 ++++ changelog/unreleased/6687.json | 10 ++++++ changelog/unreleased/6695.json | 4 +++ 5 files changed, 85 insertions(+) create mode 100644 changelog/README.md create mode 100644 changelog/example.json create mode 100644 changelog/unreleased/6540.json create mode 100644 changelog/unreleased/6687.json create mode 100644 changelog/unreleased/6695.json diff --git a/changelog/README.md b/changelog/README.md new file mode 100644 index 00000000000..ba0a63c51ce --- /dev/null +++ b/changelog/README.md @@ -0,0 +1,59 @@ +# Multi-file running changelog + +To avoid merge conflicts in the CHANGELOG.md file we accepted the multi-file running changelog strategy. + +To follow this strategy you should create a `changelog/unreleased/${PR_NUMBER}.json` file for every PR like: + +``` +[ + { + "type": "Features", + "title": "Description of changes" + } +] +``` + +`type` it is a header of changes in the `CHANGELOG.md`. `title` it is a text of changes + +If you have implemented some features or bugfixes you should describe all of them: + +``` +[ + { + "type": "Features", + "title": "Description of changes 1" + }, + { + "type": "Bug fixes and improvements", + "title": "Description of changes 2" + } +] +``` + +Every release the release train app will: + +* collect all files from `changelog/unreleased` +* assemble the changelog with versions of dependencies like: +``` +## Mapbox Navigation SDK 1.1.1 - 13 December, 2022 +### Changelog +[Changes between v1.1.0 and v1.1.1](https://github.com/mapbox/mapbox-navigation-android/compare/v1.1.0...v1.1.1) + +#### Features +- Feature 1 [#1234](https://github.com/mapbox/mapbox-navigation-android/pull/1234) +- Feature 2 [#2345](https://github.com/mapbox/mapbox-navigation-android/pull/2345) + +#### Bug fixes and improvements +- Bugfix 3 [#3456](https://github.com/mapbox/mapbox-navigation-android/pull/3456) +- Bugfix 4 [#4567](https://github.com/mapbox/mapbox-navigation-android/pull/4567) + +### Mapbox dependencies +This release depends on, and has been tested with, the following Mapbox dependencies: +- Mapbox Maps SDK `v10.8.0` ([release notes](https://github.com/mapbox/mapbox-maps-android/releases/tag/v10.8.0)) +- Mapbox Navigation Native `v115.0.1` +- Mapbox Core Common `v23.0.0` +- Mapbox Java `v6.8.0` ([release notes](https://github.com/mapbox/mapbox-java/releases/tag/v6.8.0)) +- Mapbox Android Core `v5.0.2` ([release notes](https://github.com/mapbox/mapbox-events-android/releases/tag/core-5.0.2)) +``` +* write the changelog to the `CHANGELOG.md` file +* delete all files from `changelog/unreleased` diff --git a/changelog/example.json b/changelog/example.json new file mode 100644 index 00000000000..ff0e615b8cf --- /dev/null +++ b/changelog/example.json @@ -0,0 +1,6 @@ +[ + { + "type": "Features", + "title": "Description of changes" + } +] \ No newline at end of file diff --git a/changelog/unreleased/6540.json b/changelog/unreleased/6540.json new file mode 100644 index 00000000000..824376f3d09 --- /dev/null +++ b/changelog/unreleased/6540.json @@ -0,0 +1,6 @@ +[ + { + "type": "Bug fixes and improvements", + "title": "Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list." + } +] \ No newline at end of file diff --git a/changelog/unreleased/6687.json b/changelog/unreleased/6687.json new file mode 100644 index 00000000000..6258492b621 --- /dev/null +++ b/changelog/unreleased/6687.json @@ -0,0 +1,10 @@ +[ + { + "type": "Features", + "title": "Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location." + }, + { + "type": "Features", + "title": ":warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`." + } +] \ No newline at end of file diff --git a/changelog/unreleased/6695.json b/changelog/unreleased/6695.json new file mode 100644 index 00000000000..0ad3096d3e9 --- /dev/null +++ b/changelog/unreleased/6695.json @@ -0,0 +1,4 @@ +{ + "type": "Bug fixes and improvements", + "title": "Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg." +} \ No newline at end of file From e5f6e046a6651920325e12b5a9a3edee15088bae Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 13 Dec 2022 21:01:48 +0700 Subject: [PATCH 02/45] Reformat validate changelog utils file --- scripts/validate_changelog_utils.py | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/scripts/validate_changelog_utils.py b/scripts/validate_changelog_utils.py index 91836f620d3..3e7775f7858 100644 --- a/scripts/validate_changelog_utils.py +++ b/scripts/validate_changelog_utils.py @@ -7,15 +7,19 @@ diff_file_start_regex = "^([\s]*)\@\@(.*)\@\@" pr_link_regex = "\[#\d+]\(https:\/\/github\.com\/mapbox\/mapbox-navigation-android\/pull\/\d+\)" + def is_line_added(line): return line.strip().startswith('+') + def is_line_not_blank(line): return len(line.strip()) > 0 + def remove_plus(line): return line.strip()[1:] + def group_by_versions(lines): groups = {} group = [] @@ -33,12 +37,14 @@ def group_by_versions(lines): groups[group_name] = group return groups + def extract_unreleased_group(versions): for version in versions.keys(): if 'Unreleased' in version: return versions[version] raise Exception("No 'Unreleased' section in CHANGELOG") + def extract_stable_versions(versions): str_before_version = "Mapbox Navigation SDK " str_after_version = " " @@ -57,6 +63,7 @@ def extract_stable_versions(versions): stable_versions[version_name] = versions[version] return stable_versions + def should_skip_changelog(response_json): if "labels" in response_json: pr_labels = response_json["labels"] @@ -65,10 +72,13 @@ def should_skip_changelog(response_json): return True return False + def check_has_changelog_diff(diff): changelog_diff_matches = re.search(changelog_diff_regex, diff, re.MULTILINE) if not changelog_diff_matches: - raise Exception("Add a non-empty changelog entry in a CHANGELOG.md or add a `skip changelog` label if not applicable.") + raise Exception( + "Add a non-empty changelog entry in a CHANGELOG.md or add a `skip changelog` label if not applicable.") + def parse_contents_url(files_response_json): content_urls = {} @@ -80,6 +90,7 @@ def parse_contents_url(files_response_json): raise Exception("No CHANGELOG.md file in PR files") return content_urls + def extract_added_lines(whole_diff): added_lines = {} diff = whole_diff @@ -101,17 +112,21 @@ def extract_added_lines(whole_diff): diff_searchable = diff_starting_at_changelog[first_changelog_diff_index:last_reachable_index] diff_lines = diff_searchable.split('\n') - added_lines[filename] = list(filter(is_line_not_blank, map(remove_plus, list(filter(is_line_added, diff_lines))))) + added_lines[filename] = list( + filter(is_line_not_blank, map(remove_plus, list(filter(is_line_added, diff_lines))))) diff = diff[last_reachable_index:] return added_lines + def check_contains_pr_link(added_lines_by_file): for filename in added_lines_by_file: for added_line in added_lines_by_file[filename]: if len(added_line.strip()) > 0: pr_link_matches = re.search(pr_link_regex, added_line) if not pr_link_matches: - raise Exception("The changelog entry \"" + added_line + "\" in \"" + filename + "\" should contain a link to the original PR that matches `" + pr_link_regex + "`") + raise Exception( + "The changelog entry \"" + added_line + "\" in \"" + filename + "\" should contain a link to the original PR that matches `" + pr_link_regex + "`") + def check_version_section(content, added_lines): lines = content.split("\n") @@ -125,12 +140,14 @@ def check_version_section(content, added_lines): for stable_version in stable_versions: if added_line in stable_versions[stable_version]: - raise Exception("The changelog entry \"" + added_line + "\" is already contained in " + stable_version + " changelog.") + raise Exception( + "The changelog entry \"" + added_line + "\" is already contained in " + stable_version + " changelog.") + def check_for_duplications(added_lines): unique_added_lines = set() for added_line in added_lines: if added_line in unique_added_lines: - raise Exception("\"" + added_line + "\" is added more than once" ) + raise Exception("\"" + added_line + "\" is added more than once") else: unique_added_lines.add(added_line) From e2fbbe83360b7f9aebff43b6989709d07d33fc0d Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Thu, 15 Dec 2022 22:15:43 +0700 Subject: [PATCH 03/45] Use md changelog files and get type from path --- changelog/README.md | 39 +++++++++---------- changelog/example.json | 6 --- changelog/unreleased/6540.json | 6 --- changelog/unreleased/6687.json | 10 ----- changelog/unreleased/6695.json | 4 -- changelog/unreleased/bugfixes/6540.md | 1 + changelog/unreleased/bugfixes/6695.md | 1 + changelog/unreleased/features/6687.md | 2 + .../unreleased/issues/example-known-issues.md | 1 + 9 files changed, 24 insertions(+), 46 deletions(-) delete mode 100644 changelog/example.json delete mode 100644 changelog/unreleased/6540.json delete mode 100644 changelog/unreleased/6687.json delete mode 100644 changelog/unreleased/6695.json create mode 100644 changelog/unreleased/bugfixes/6540.md create mode 100644 changelog/unreleased/bugfixes/6695.md create mode 100644 changelog/unreleased/features/6687.md create mode 100644 changelog/unreleased/issues/example-known-issues.md diff --git a/changelog/README.md b/changelog/README.md index ba0a63c51ce..8d026fb8920 100644 --- a/changelog/README.md +++ b/changelog/README.md @@ -2,38 +2,30 @@ To avoid merge conflicts in the CHANGELOG.md file we accepted the multi-file running changelog strategy. -To follow this strategy you should create a `changelog/unreleased/${PR_NUMBER}.json` file for every PR like: +To follow this strategy you should create a `.md` file for every PR. Choose a directory: -``` -[ - { - "type": "Features", - "title": "Description of changes" - } -] -``` +- `changelog/unreleased/features` for **Features** changes +- `changelog/unreleased/bugfixes` for **Bug fixes and improvements** changes +- `changelog/unreleased/issues` for **Known issues :warning:** changes +- `changelog/unreleased` for other changes -`type` it is a header of changes in the `CHANGELOG.md`. `title` it is a text of changes +You can use anything that allow .md format in changelog files. If you have implemented some features or bugfixes you should describe all of them: ``` -[ - { - "type": "Features", - "title": "Description of changes 1" - }, - { - "type": "Bug fixes and improvements", - "title": "Description of changes 2" - } -] +- Description of changes in md format +- Description of changes in md format also ``` +You can choose any name for your changelog files because the GitHub action will rename files in +`changelog/unreleased/features` and `changelog/unreleased/bugfixes` directories to `${PR_NUMBER}.md` when you open a PR. + Every release the release train app will: * collect all files from `changelog/unreleased` * assemble the changelog with versions of dependencies like: + ``` ## Mapbox Navigation SDK 1.1.1 - 13 December, 2022 ### Changelog @@ -47,6 +39,12 @@ Every release the release train app will: - Bugfix 3 [#3456](https://github.com/mapbox/mapbox-navigation-android/pull/3456) - Bugfix 4 [#4567](https://github.com/mapbox/mapbox-navigation-android/pull/4567) +#### Known issues :warning: +- Issue 1 +- Issue 2 + +Some other changes + ### Mapbox dependencies This release depends on, and has been tested with, the following Mapbox dependencies: - Mapbox Maps SDK `v10.8.0` ([release notes](https://github.com/mapbox/mapbox-maps-android/releases/tag/v10.8.0)) @@ -55,5 +53,6 @@ This release depends on, and has been tested with, the following Mapbox dependen - Mapbox Java `v6.8.0` ([release notes](https://github.com/mapbox/mapbox-java/releases/tag/v6.8.0)) - Mapbox Android Core `v5.0.2` ([release notes](https://github.com/mapbox/mapbox-events-android/releases/tag/core-5.0.2)) ``` + * write the changelog to the `CHANGELOG.md` file * delete all files from `changelog/unreleased` diff --git a/changelog/example.json b/changelog/example.json deleted file mode 100644 index ff0e615b8cf..00000000000 --- a/changelog/example.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - { - "type": "Features", - "title": "Description of changes" - } -] \ No newline at end of file diff --git a/changelog/unreleased/6540.json b/changelog/unreleased/6540.json deleted file mode 100644 index 824376f3d09..00000000000 --- a/changelog/unreleased/6540.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - { - "type": "Bug fixes and improvements", - "title": "Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list." - } -] \ No newline at end of file diff --git a/changelog/unreleased/6687.json b/changelog/unreleased/6687.json deleted file mode 100644 index 6258492b621..00000000000 --- a/changelog/unreleased/6687.json +++ /dev/null @@ -1,10 +0,0 @@ -[ - { - "type": "Features", - "title": "Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location." - }, - { - "type": "Features", - "title": ":warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`." - } -] \ No newline at end of file diff --git a/changelog/unreleased/6695.json b/changelog/unreleased/6695.json deleted file mode 100644 index 0ad3096d3e9..00000000000 --- a/changelog/unreleased/6695.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "Bug fixes and improvements", - "title": "Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg." -} \ No newline at end of file diff --git a/changelog/unreleased/bugfixes/6540.md b/changelog/unreleased/bugfixes/6540.md new file mode 100644 index 00000000000..8cdf2bfc4ee --- /dev/null +++ b/changelog/unreleased/bugfixes/6540.md @@ -0,0 +1 @@ +Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. \ No newline at end of file diff --git a/changelog/unreleased/bugfixes/6695.md b/changelog/unreleased/bugfixes/6695.md new file mode 100644 index 00000000000..cefea5ec2c9 --- /dev/null +++ b/changelog/unreleased/bugfixes/6695.md @@ -0,0 +1 @@ +Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. \ No newline at end of file diff --git a/changelog/unreleased/features/6687.md b/changelog/unreleased/features/6687.md new file mode 100644 index 00000000000..22177bdc67b --- /dev/null +++ b/changelog/unreleased/features/6687.md @@ -0,0 +1,2 @@ +- Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location. +- :warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`. \ No newline at end of file diff --git a/changelog/unreleased/issues/example-known-issues.md b/changelog/unreleased/issues/example-known-issues.md new file mode 100644 index 00000000000..a6b94f5e3be --- /dev/null +++ b/changelog/unreleased/issues/example-known-issues.md @@ -0,0 +1 @@ +It is an example of known issues \ No newline at end of file From 94b2ccffa8af9b19658aad2d4dd051a8e6c575a7 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Mon, 19 Dec 2022 16:48:01 +0700 Subject: [PATCH 04/45] Rename changelog files action --- .github/workflows/rename_changelog_file.yml | 30 ++++++++++++++++++ scripts/changelog/rename_changelog_file.py | 35 +++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 .github/workflows/rename_changelog_file.yml create mode 100644 scripts/changelog/rename_changelog_file.py diff --git a/.github/workflows/rename_changelog_file.yml b/.github/workflows/rename_changelog_file.yml new file mode 100644 index 00000000000..a27acf6c4f4 --- /dev/null +++ b/.github/workflows/rename_changelog_file.yml @@ -0,0 +1,30 @@ +name: Set reviewers +on: + pull_request: + types: [ edited ] +jobs: + process: + permissions: + pull-requests: write + contents: read + runs-on: ubuntu-20.04 + env: + PR_NUMBER: ${{ github.event.pull_request.number }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v3 + with: + ref: ${{github.head_ref}} + + - name: setup python + uses: actions/setup-python@v4 + with: + python-version: '3.7.7' + + - name: install python packages + run: | + python3 -m pip install requests GitPython + + - name: execute py script + run: | + python3 scripts/reviewers/set_reviewers.py diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py new file mode 100644 index 00000000000..e1df1219384 --- /dev/null +++ b/scripts/changelog/rename_changelog_file.py @@ -0,0 +1,35 @@ +import os +import re + +import git + +pr_number = os.environ['PR_NUMBER'] + +pattern = re.compile("^\d*.md") + + +def rename_files(path): + renamed_files_count = 0 + files = os.listdir(path) + + new_md_files = list(filter(lambda file: not pattern.match(file), files)) + + if len(new_md_files) > 1: + raise Exception('More than one new changelog file') + + for file in new_md_files: + if not pattern.match(file): + os.rename(path + file, path + pr_number + '.md') + renamed_files_count += 1 + + return renamed_files_count + + +renamed_bugfixes_count = rename_files('changelog/unreleased/bugfixes/') +renamed_features_count = rename_files('changelog/unreleased/features/') + +if renamed_features_count + renamed_bugfixes_count > 0: + repository = git.Repo('.') + repository.git.add('changelog/unreleased') + repository.index.commit('Rename changelog files') + repository.remotes.origin.push().raise_if_error() From 780f542abc6376daffd158c744189a2507151cde Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Mon, 19 Dec 2022 18:25:18 +0700 Subject: [PATCH 05/45] fix action type --- .github/workflows/rename_changelog_file.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rename_changelog_file.yml b/.github/workflows/rename_changelog_file.yml index a27acf6c4f4..d86e47600b3 100644 --- a/.github/workflows/rename_changelog_file.yml +++ b/.github/workflows/rename_changelog_file.yml @@ -1,7 +1,7 @@ name: Set reviewers on: pull_request: - types: [ edited ] + types: [ opened, reopened, ready_for_review, synchronize ] jobs: process: permissions: From 3813aba36634c395747428ae722c5d9fc5bfb819 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Mon, 19 Dec 2022 18:25:38 +0700 Subject: [PATCH 06/45] rename action --- .github/workflows/rename_changelog_file.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rename_changelog_file.yml b/.github/workflows/rename_changelog_file.yml index d86e47600b3..c19231c1582 100644 --- a/.github/workflows/rename_changelog_file.yml +++ b/.github/workflows/rename_changelog_file.yml @@ -1,4 +1,4 @@ -name: Set reviewers +name: Rename changelog files on: pull_request: types: [ opened, reopened, ready_for_review, synchronize ] From 20386e79fd65a00f6a2b7f47cf735e8bda8f0a13 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Mon, 19 Dec 2022 18:41:28 +0700 Subject: [PATCH 07/45] fix script name --- .github/workflows/rename_changelog_file.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rename_changelog_file.yml b/.github/workflows/rename_changelog_file.yml index c19231c1582..1879f0c164f 100644 --- a/.github/workflows/rename_changelog_file.yml +++ b/.github/workflows/rename_changelog_file.yml @@ -27,4 +27,4 @@ jobs: - name: execute py script run: | - python3 scripts/reviewers/set_reviewers.py + python3 scripts/changelog/rename_changelog_file.py From 8c28e15caf3e9c4a802cb693978d16d9baf25f65 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Mon, 19 Dec 2022 20:25:43 +0700 Subject: [PATCH 08/45] assemble changelog after merge to main and release branches --- .github/workflows/assemble_changelog.yml | 31 +++++++++++++++++++ changelog/unreleased/CHANGELOG.md | 10 ++++++ changelog/unreleased/bugfixes/6540.md | 2 +- changelog/unreleased/bugfixes/6695.md | 2 +- .../unreleased/issues/example-known-issues.md | 2 +- scripts/changelog/assemble_changelog.py | 28 +++++++++++++++++ 6 files changed, 72 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/assemble_changelog.yml create mode 100644 changelog/unreleased/CHANGELOG.md create mode 100644 scripts/changelog/assemble_changelog.py diff --git a/.github/workflows/assemble_changelog.yml b/.github/workflows/assemble_changelog.yml new file mode 100644 index 00000000000..09e7c5777c3 --- /dev/null +++ b/.github/workflows/assemble_changelog.yml @@ -0,0 +1,31 @@ +name: Assemble changelog +on: + push: + branches: + - main + - release-v** +jobs: + process: + permissions: + pull-requests: write + contents: read + runs-on: ubuntu-20.04 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v3 + with: + ref: ${{github.head_ref}} + + - name: setup python + uses: actions/setup-python@v4 + with: + python-version: '3.7.7' + + - name: install python packages + run: | + python3 -m pip install requests GitPython + + - name: execute py script + run: | + python3 scripts/changelog/assemble_changelog.py.py diff --git a/changelog/unreleased/CHANGELOG.md b/changelog/unreleased/CHANGELOG.md new file mode 100644 index 00000000000..18b137808b3 --- /dev/null +++ b/changelog/unreleased/CHANGELOG.md @@ -0,0 +1,10 @@ +#### Features +- Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location. +- :warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`. + +#### Bug fixes and improvements +- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. +- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. + +#### Known issues :warning: +- It is an example of known issues \ No newline at end of file diff --git a/changelog/unreleased/bugfixes/6540.md b/changelog/unreleased/bugfixes/6540.md index 8cdf2bfc4ee..333eaa52b9f 100644 --- a/changelog/unreleased/bugfixes/6540.md +++ b/changelog/unreleased/bugfixes/6540.md @@ -1 +1 @@ -Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. \ No newline at end of file +- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. \ No newline at end of file diff --git a/changelog/unreleased/bugfixes/6695.md b/changelog/unreleased/bugfixes/6695.md index cefea5ec2c9..3f751b16d27 100644 --- a/changelog/unreleased/bugfixes/6695.md +++ b/changelog/unreleased/bugfixes/6695.md @@ -1 +1 @@ -Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. \ No newline at end of file +- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. \ No newline at end of file diff --git a/changelog/unreleased/issues/example-known-issues.md b/changelog/unreleased/issues/example-known-issues.md index a6b94f5e3be..c0505027151 100644 --- a/changelog/unreleased/issues/example-known-issues.md +++ b/changelog/unreleased/issues/example-known-issues.md @@ -1 +1 @@ -It is an example of known issues \ No newline at end of file +- It is an example of known issues \ No newline at end of file diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py new file mode 100644 index 00000000000..4a588339ade --- /dev/null +++ b/scripts/changelog/assemble_changelog.py @@ -0,0 +1,28 @@ +import os + +import git + + +def get_changes(path): + changes = '' + files = os.listdir(path) + for file in files: + changes += open(path + file, 'r').read() + '\n' + return changes.strip() + + +bugfixes = get_changes('changelog/unreleased/bugfixes/') +features = get_changes('changelog/unreleased/features/') +issues = get_changes('changelog/unreleased/issues/') + +changelog = '#### Features\n' + features + '\n\n' + \ + '#### Bug fixes and improvements\n' + bugfixes + '\n\n' + \ + '#### Known issues :warning:\n' + issues + +open('changelog/unreleased/CHANGELOG.md', 'w').write(changelog) + +repository = git.Repo('.') +repository.git.add('changelog/unreleased/CHANGELOG.md') +if len(repository.index.diff(None)) > 0: + repository.index.commit('Assemble changelog file [skip actions]') + repository.remotes.origin.push().raise_if_error() From 2e9ace80130b2dbdefde8110a562bf96c5c3ca2d Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 17:37:34 +0700 Subject: [PATCH 09/45] assemble changelog after merge to main and release branches --- changelog/unreleased/features/test.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog/unreleased/features/test.md diff --git a/changelog/unreleased/features/test.md b/changelog/unreleased/features/test.md new file mode 100644 index 00000000000..4a3f469d9aa --- /dev/null +++ b/changelog/unreleased/features/test.md @@ -0,0 +1 @@ +- Test changes to check renaming \ No newline at end of file From 1f6418317d33e1c4b8e898c573428f1d70b00d8e Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 17:49:26 +0700 Subject: [PATCH 10/45] change remote url --- .github/workflows/rename_changelog_file.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/rename_changelog_file.yml b/.github/workflows/rename_changelog_file.yml index 1879f0c164f..2152d78c4c3 100644 --- a/.github/workflows/rename_changelog_file.yml +++ b/.github/workflows/rename_changelog_file.yml @@ -27,4 +27,5 @@ jobs: - name: execute py script run: | + git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }} python3 scripts/changelog/rename_changelog_file.py From 6daece7a19d761d35d82a4e39ea4da45feb4076a Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 17:59:09 +0700 Subject: [PATCH 11/45] change user --- .github/workflows/rename_changelog_file.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/rename_changelog_file.yml b/.github/workflows/rename_changelog_file.yml index 2152d78c4c3..63d5eb49ebe 100644 --- a/.github/workflows/rename_changelog_file.yml +++ b/.github/workflows/rename_changelog_file.yml @@ -27,5 +27,6 @@ jobs: - name: execute py script run: | - git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }} + git config user.name github-actions + git config user.email github-actions@github.com python3 scripts/changelog/rename_changelog_file.py From 4699a729fe9d555f86ab6a90a4ec73a98085f825 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:00:48 +0700 Subject: [PATCH 12/45] push from actions --- .github/workflows/rename_changelog_file.yml | 1 + scripts/changelog/rename_changelog_file.py | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rename_changelog_file.yml b/.github/workflows/rename_changelog_file.yml index 63d5eb49ebe..62c18419018 100644 --- a/.github/workflows/rename_changelog_file.yml +++ b/.github/workflows/rename_changelog_file.yml @@ -30,3 +30,4 @@ jobs: git config user.name github-actions git config user.email github-actions@github.com python3 scripts/changelog/rename_changelog_file.py + git push diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py index e1df1219384..5d807368ccf 100644 --- a/scripts/changelog/rename_changelog_file.py +++ b/scripts/changelog/rename_changelog_file.py @@ -32,4 +32,3 @@ def rename_files(path): repository = git.Repo('.') repository.git.add('changelog/unreleased') repository.index.commit('Rename changelog files') - repository.remotes.origin.push().raise_if_error() From 8388caac764ea6854981954d3b153a5d9b3904b4 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:09:09 +0700 Subject: [PATCH 13/45] change remote url from script --- .github/workflows/rename_changelog_file.yml | 3 --- scripts/changelog/rename_changelog_file.py | 6 ++++++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/rename_changelog_file.yml b/.github/workflows/rename_changelog_file.yml index 62c18419018..1879f0c164f 100644 --- a/.github/workflows/rename_changelog_file.yml +++ b/.github/workflows/rename_changelog_file.yml @@ -27,7 +27,4 @@ jobs: - name: execute py script run: | - git config user.name github-actions - git config user.email github-actions@github.com python3 scripts/changelog/rename_changelog_file.py - git push diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py index 5d807368ccf..7e55b53d601 100644 --- a/scripts/changelog/rename_changelog_file.py +++ b/scripts/changelog/rename_changelog_file.py @@ -4,6 +4,7 @@ import git pr_number = os.environ['PR_NUMBER'] +token = os.environ['GITHUB_TOKEN'] pattern = re.compile("^\d*.md") @@ -32,3 +33,8 @@ def rename_files(path): repository = git.Repo('.') repository.git.add('changelog/unreleased') repository.index.commit('Rename changelog files') + config = open('.git/config', 'r').read() + updated_config = config.replace('git@github.com:mapbox/mapbox-navigation-android.git', + 'https://x-access-token:' + token + '@github.com/mapbox/test-nav-sdk') + open('.git/config', 'w').write(updated_config) + repository.remotes.origin.push().raise_if_error() From 73cbfbd13d2039cb2fdcb0a71929b1a9d8a8b5ba Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:11:28 +0700 Subject: [PATCH 14/45] debug changing config --- scripts/changelog/rename_changelog_file.py | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py index 7e55b53d601..31a038951f7 100644 --- a/scripts/changelog/rename_changelog_file.py +++ b/scripts/changelog/rename_changelog_file.py @@ -34,6 +34,7 @@ def rename_files(path): repository.git.add('changelog/unreleased') repository.index.commit('Rename changelog files') config = open('.git/config', 'r').read() + print(config) updated_config = config.replace('git@github.com:mapbox/mapbox-navigation-android.git', 'https://x-access-token:' + token + '@github.com/mapbox/test-nav-sdk') open('.git/config', 'w').write(updated_config) From 78a521dd28802e80721cd5f188418779d2324f15 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:12:57 +0700 Subject: [PATCH 15/45] fix --- scripts/changelog/rename_changelog_file.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py index 31a038951f7..4a829d1db87 100644 --- a/scripts/changelog/rename_changelog_file.py +++ b/scripts/changelog/rename_changelog_file.py @@ -34,8 +34,7 @@ def rename_files(path): repository.git.add('changelog/unreleased') repository.index.commit('Rename changelog files') config = open('.git/config', 'r').read() - print(config) - updated_config = config.replace('git@github.com:mapbox/mapbox-navigation-android.git', + updated_config = config.replace('https://github.com/mapbox/mapbox-navigation-android', 'https://x-access-token:' + token + '@github.com/mapbox/test-nav-sdk') open('.git/config', 'w').write(updated_config) repository.remotes.origin.push().raise_if_error() From 8c58767b865194c2ff2f972073ac00c53cf0e844 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:14:08 +0700 Subject: [PATCH 16/45] fix --- scripts/changelog/rename_changelog_file.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py index 4a829d1db87..1879e816c7d 100644 --- a/scripts/changelog/rename_changelog_file.py +++ b/scripts/changelog/rename_changelog_file.py @@ -35,6 +35,6 @@ def rename_files(path): repository.index.commit('Rename changelog files') config = open('.git/config', 'r').read() updated_config = config.replace('https://github.com/mapbox/mapbox-navigation-android', - 'https://x-access-token:' + token + '@github.com/mapbox/test-nav-sdk') + 'https://x-access-token:' + token + '@github.com/mapbox/mapbox-navigation-android') open('.git/config', 'w').write(updated_config) repository.remotes.origin.push().raise_if_error() From 69756b2ef05c06fba3f93ba183eb094b9a98e0b0 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:23:16 +0700 Subject: [PATCH 17/45] debug --- scripts/changelog/rename_changelog_file.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py index 1879e816c7d..b9aa86f2cf1 100644 --- a/scripts/changelog/rename_changelog_file.py +++ b/scripts/changelog/rename_changelog_file.py @@ -35,6 +35,7 @@ def rename_files(path): repository.index.commit('Rename changelog files') config = open('.git/config', 'r').read() updated_config = config.replace('https://github.com/mapbox/mapbox-navigation-android', - 'https://x-access-token:' + token + '@github.com/mapbox/mapbox-navigation-android') + 'https://x-access-token:' + 'test_token' + '@github.com/mapbox/mapbox-navigation-android') + print(updated_config) open('.git/config', 'w').write(updated_config) repository.remotes.origin.push().raise_if_error() From 87ecfe24197fa83ee30e7580bc5be86002b4373b Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:27:15 +0700 Subject: [PATCH 18/45] fix --- .github/workflows/rename_changelog_file.yml | 2 +- scripts/changelog/rename_changelog_file.py | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/rename_changelog_file.yml b/.github/workflows/rename_changelog_file.yml index 1879f0c164f..f32d8de9ff8 100644 --- a/.github/workflows/rename_changelog_file.yml +++ b/.github/workflows/rename_changelog_file.yml @@ -6,7 +6,7 @@ jobs: process: permissions: pull-requests: write - contents: read + contents: write runs-on: ubuntu-20.04 env: PR_NUMBER: ${{ github.event.pull_request.number }} diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py index b9aa86f2cf1..1e8f23f33e1 100644 --- a/scripts/changelog/rename_changelog_file.py +++ b/scripts/changelog/rename_changelog_file.py @@ -33,9 +33,4 @@ def rename_files(path): repository = git.Repo('.') repository.git.add('changelog/unreleased') repository.index.commit('Rename changelog files') - config = open('.git/config', 'r').read() - updated_config = config.replace('https://github.com/mapbox/mapbox-navigation-android', - 'https://x-access-token:' + 'test_token' + '@github.com/mapbox/mapbox-navigation-android') - print(updated_config) - open('.git/config', 'w').write(updated_config) repository.remotes.origin.push().raise_if_error() From e7286d68fc9904aac2f772d48c4a5b086d59cea0 Mon Sep 17 00:00:00 2001 From: runner Date: Tue, 20 Dec 2022 11:27:48 +0000 Subject: [PATCH 19/45] Rename changelog files --- changelog/unreleased/features/{test.md => 6740.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename changelog/unreleased/features/{test.md => 6740.md} (100%) diff --git a/changelog/unreleased/features/test.md b/changelog/unreleased/features/6740.md similarity index 100% rename from changelog/unreleased/features/test.md rename to changelog/unreleased/features/6740.md From 87cbc1b7fa3658d636aef03d57e05082722fa205 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:40:05 +0700 Subject: [PATCH 20/45] test assemble changelog --- .github/workflows/assemble_changelog.yml | 3 ++- changelog/unreleased/CHANGELOG.md | 10 ---------- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/.github/workflows/assemble_changelog.yml b/.github/workflows/assemble_changelog.yml index 09e7c5777c3..3b0877d4741 100644 --- a/.github/workflows/assemble_changelog.yml +++ b/.github/workflows/assemble_changelog.yml @@ -4,11 +4,12 @@ on: branches: - main - release-v** + - NAVSDK-646 jobs: process: permissions: pull-requests: write - contents: read + contents: write runs-on: ubuntu-20.04 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/changelog/unreleased/CHANGELOG.md b/changelog/unreleased/CHANGELOG.md index 18b137808b3..e69de29bb2d 100644 --- a/changelog/unreleased/CHANGELOG.md +++ b/changelog/unreleased/CHANGELOG.md @@ -1,10 +0,0 @@ -#### Features -- Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location. -- :warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`. - -#### Bug fixes and improvements -- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. -- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. - -#### Known issues :warning: -- It is an example of known issues \ No newline at end of file From c83968d43a577288a254f5dcf7cdce022e8659aa Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:41:16 +0700 Subject: [PATCH 21/45] test assemble changelog --- .github/workflows/assemble_changelog.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/assemble_changelog.yml b/.github/workflows/assemble_changelog.yml index 3b0877d4741..c70bb69a579 100644 --- a/.github/workflows/assemble_changelog.yml +++ b/.github/workflows/assemble_changelog.yml @@ -29,4 +29,4 @@ jobs: - name: execute py script run: | - python3 scripts/changelog/assemble_changelog.py.py + python3 scripts/changelog/assemble_changelog.py From 79941ad4275da72ae457ac2184bccfe37768e9e4 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:48:14 +0700 Subject: [PATCH 22/45] test assemble changelog --- scripts/changelog/assemble_changelog.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index 4a588339ade..9446257ab23 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -23,6 +23,8 @@ def get_changes(path): repository = git.Repo('.') repository.git.add('changelog/unreleased/CHANGELOG.md') +for diff in repository.index.diff(None): + print(diff.a_path) if len(repository.index.diff(None)) > 0: repository.index.commit('Assemble changelog file [skip actions]') repository.remotes.origin.push().raise_if_error() From a12a9c8de076459d3e6034a2f84fa7ac8e329231 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:49:37 +0700 Subject: [PATCH 23/45] test assemble changelog --- scripts/changelog/assemble_changelog.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index 9446257ab23..028d3f76eea 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -22,9 +22,7 @@ def get_changes(path): open('changelog/unreleased/CHANGELOG.md', 'w').write(changelog) repository = git.Repo('.') -repository.git.add('changelog/unreleased/CHANGELOG.md') -for diff in repository.index.diff(None): - print(diff.a_path) +repository.git.add('changelog/unreleased') if len(repository.index.diff(None)) > 0: repository.index.commit('Assemble changelog file [skip actions]') repository.remotes.origin.push().raise_if_error() From a8f69b4741a0aa16d78a921e15be5e811a274dde Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:53:22 +0700 Subject: [PATCH 24/45] fix --- scripts/changelog/assemble_changelog.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index 028d3f76eea..8c1ccd9da01 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -19,10 +19,11 @@ def get_changes(path): '#### Bug fixes and improvements\n' + bugfixes + '\n\n' + \ '#### Known issues :warning:\n' + issues -open('changelog/unreleased/CHANGELOG.md', 'w').write(changelog) +old_changelog = open('changelog/unreleased/CHANGELOG.md', 'r').read() -repository = git.Repo('.') -repository.git.add('changelog/unreleased') -if len(repository.index.diff(None)) > 0: +if changelog != old_changelog: + open('changelog/unreleased/CHANGELOG.md', 'w').write(changelog) + repository = git.Repo('.') + repository.git.add('changelog/unreleased') repository.index.commit('Assemble changelog file [skip actions]') repository.remotes.origin.push().raise_if_error() From cc27e5a487fd76e357f1b57ab60c996950dd2a70 Mon Sep 17 00:00:00 2001 From: runner Date: Tue, 20 Dec 2022 11:53:50 +0000 Subject: [PATCH 25/45] Assemble changelog file [skip actions] --- changelog/unreleased/CHANGELOG.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/changelog/unreleased/CHANGELOG.md b/changelog/unreleased/CHANGELOG.md index e69de29bb2d..5ad2a2d345a 100644 --- a/changelog/unreleased/CHANGELOG.md +++ b/changelog/unreleased/CHANGELOG.md @@ -0,0 +1,11 @@ +#### Features +- Test changes to check renaming +- Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location. +- :warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`. + +#### Bug fixes and improvements +- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. +- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. + +#### Known issues :warning: +- It is an example of known issues \ No newline at end of file From 5585d8564f00110f7d5dae6a5924be329f984c11 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 18:55:01 +0700 Subject: [PATCH 26/45] fix conditions for assemble changelog action --- .github/workflows/assemble_changelog.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/assemble_changelog.yml b/.github/workflows/assemble_changelog.yml index c70bb69a579..352de2221b9 100644 --- a/.github/workflows/assemble_changelog.yml +++ b/.github/workflows/assemble_changelog.yml @@ -4,7 +4,6 @@ on: branches: - main - release-v** - - NAVSDK-646 jobs: process: permissions: From 9e48ed83ee6e619ffc52bf9e5bc3451058cb6d59 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 21:17:56 +0700 Subject: [PATCH 27/45] add PR links when assemble changelog --- changelog/unreleased/CHANGELOG.md | 12 ++++++------ scripts/changelog/assemble_changelog.py | 6 +++++- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/changelog/unreleased/CHANGELOG.md b/changelog/unreleased/CHANGELOG.md index 5ad2a2d345a..10c257be526 100644 --- a/changelog/unreleased/CHANGELOG.md +++ b/changelog/unreleased/CHANGELOG.md @@ -1,11 +1,11 @@ #### Features -- Test changes to check renaming -- Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location. -- :warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`. +- Test changes to check renaming [#6740](https://github.com/mapbox/mapbox-navigation-android/pull/6740) +- Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location. [#6687](https://github.com/mapbox/mapbox-navigation-android/pull/6687) +- :warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`. [#6687](https://github.com/mapbox/mapbox-navigation-android/pull/6687) #### Bug fixes and improvements -- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. -- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. +- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. [#6540](https://github.com/mapbox/mapbox-navigation-android/pull/6540) +- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. [#6695](https://github.com/mapbox/mapbox-navigation-android/pull/6695) #### Known issues :warning: -- It is an example of known issues \ No newline at end of file +- It is an example of known issues [#example-known-issues](https://github.com/mapbox/mapbox-navigation-android/pull/example-known-issues) \ No newline at end of file diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index 8c1ccd9da01..5c1365e0b91 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -7,7 +7,11 @@ def get_changes(path): changes = '' files = os.listdir(path) for file in files: - changes += open(path + file, 'r').read() + '\n' + pr_number = file.partition('.')[0] + for line in open(path + file, 'r').readlines(): + line = line.replace('\n', '') + if line.strip(): + changes += line + ' [#' + pr_number + '](https://github.com/mapbox/mapbox-navigation-android/pull/' + pr_number + ')' + '\n' return changes.strip() From 8eb59ddbfe34e3737e000ac0b5254336dc1b7f72 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 21:26:02 +0700 Subject: [PATCH 28/45] update doc --- changelog/README.md | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/changelog/README.md b/changelog/README.md index 8d026fb8920..a850f246fc5 100644 --- a/changelog/README.md +++ b/changelog/README.md @@ -11,7 +11,7 @@ To follow this strategy you should create a `.md` file for every PR. Choose a di You can use anything that allow .md format in changelog files. -If you have implemented some features or bugfixes you should describe all of them: +If you have implemented several features or bugfixes you should describe all of them: ``` - Description of changes in md format @@ -21,16 +21,12 @@ If you have implemented some features or bugfixes you should describe all of the You can choose any name for your changelog files because the GitHub action will rename files in `changelog/unreleased/features` and `changelog/unreleased/bugfixes` directories to `${PR_NUMBER}.md` when you open a PR. -Every release the release train app will: +Every push to the main or release branch Assemble changelog GitHub action will be executed: * collect all files from `changelog/unreleased` -* assemble the changelog with versions of dependencies like: +* assemble the changelog like: ``` -## Mapbox Navigation SDK 1.1.1 - 13 December, 2022 -### Changelog -[Changes between v1.1.0 and v1.1.1](https://github.com/mapbox/mapbox-navigation-android/compare/v1.1.0...v1.1.1) - #### Features - Feature 1 [#1234](https://github.com/mapbox/mapbox-navigation-android/pull/1234) - Feature 2 [#2345](https://github.com/mapbox/mapbox-navigation-android/pull/2345) @@ -44,15 +40,6 @@ Every release the release train app will: - Issue 2 Some other changes - -### Mapbox dependencies -This release depends on, and has been tested with, the following Mapbox dependencies: -- Mapbox Maps SDK `v10.8.0` ([release notes](https://github.com/mapbox/mapbox-maps-android/releases/tag/v10.8.0)) -- Mapbox Navigation Native `v115.0.1` -- Mapbox Core Common `v23.0.0` -- Mapbox Java `v6.8.0` ([release notes](https://github.com/mapbox/mapbox-java/releases/tag/v6.8.0)) -- Mapbox Android Core `v5.0.2` ([release notes](https://github.com/mapbox/mapbox-events-android/releases/tag/core-5.0.2)) ``` -* write the changelog to the `CHANGELOG.md` file -* delete all files from `changelog/unreleased` +* write the changelog to the `changelog/unreleased/CHANGELOG.md` file From daf3a90f51fbb0867600a8932e83aeeddaf7a101 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 20 Dec 2022 21:42:27 +0700 Subject: [PATCH 29/45] fix other and issues parts --- changelog/README.md | 2 +- changelog/unreleased/CHANGELOG.md | 14 +++++++++++++- changelog/unreleased/other/example-other.md | 10 ++++++++++ scripts/changelog/assemble_changelog.py | 15 ++++++++++----- 4 files changed, 34 insertions(+), 7 deletions(-) create mode 100644 changelog/unreleased/other/example-other.md diff --git a/changelog/README.md b/changelog/README.md index a850f246fc5..358ad261198 100644 --- a/changelog/README.md +++ b/changelog/README.md @@ -7,7 +7,7 @@ To follow this strategy you should create a `.md` file for every PR. Choose a di - `changelog/unreleased/features` for **Features** changes - `changelog/unreleased/bugfixes` for **Bug fixes and improvements** changes - `changelog/unreleased/issues` for **Known issues :warning:** changes -- `changelog/unreleased` for other changes +- `changelog/unreleased/other` for other changes You can use anything that allow .md format in changelog files. diff --git a/changelog/unreleased/CHANGELOG.md b/changelog/unreleased/CHANGELOG.md index 10c257be526..f184d96048e 100644 --- a/changelog/unreleased/CHANGELOG.md +++ b/changelog/unreleased/CHANGELOG.md @@ -8,4 +8,16 @@ - Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. [#6695](https://github.com/mapbox/mapbox-navigation-android/pull/6695) #### Known issues :warning: -- It is an example of known issues [#example-known-issues](https://github.com/mapbox/mapbox-navigation-android/pull/example-known-issues) \ No newline at end of file +- It is an example of known issues + +#### Other changes +You can write here anything in .md format + +``` +For example some code +``` + +
+Feel free +to use md features +
\ No newline at end of file diff --git a/changelog/unreleased/other/example-other.md b/changelog/unreleased/other/example-other.md new file mode 100644 index 00000000000..079141c359a --- /dev/null +++ b/changelog/unreleased/other/example-other.md @@ -0,0 +1,10 @@ +You can write here anything in .md format + +``` +For example some code +``` + +
+Feel free +to use md features +
\ No newline at end of file diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index 5c1365e0b91..29bb9ab43e0 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -8,20 +8,25 @@ def get_changes(path): files = os.listdir(path) for file in files: pr_number = file.partition('.')[0] - for line in open(path + file, 'r').readlines(): - line = line.replace('\n', '') - if line.strip(): - changes += line + ' [#' + pr_number + '](https://github.com/mapbox/mapbox-navigation-android/pull/' + pr_number + ')' + '\n' + if path.endswith('bugfixes/') or path.endswith('features/'): + for line in open(path + file, 'r').readlines(): + line = line.replace('\n', '') + if line.strip(): + changes += line + ' [#' + pr_number + '](https://github.com/mapbox/mapbox-navigation-android/pull/' + pr_number + ')' + '\n' + else: + changes += open(path + file, 'r').read() return changes.strip() bugfixes = get_changes('changelog/unreleased/bugfixes/') features = get_changes('changelog/unreleased/features/') issues = get_changes('changelog/unreleased/issues/') +other = get_changes('changelog/unreleased/other/') changelog = '#### Features\n' + features + '\n\n' + \ '#### Bug fixes and improvements\n' + bugfixes + '\n\n' + \ - '#### Known issues :warning:\n' + issues + '#### Known issues :warning:\n' + issues + '\n\n' + \ + '#### Other changes\n' + other old_changelog = open('changelog/unreleased/CHANGELOG.md', 'r').read() From abed7d4b17f46ebc2d3f8b6697ef023165154c4e Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 21 Dec 2022 16:34:51 +0700 Subject: [PATCH 30/45] information about release --- changelog/README.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/changelog/README.md b/changelog/README.md index 358ad261198..57b05ed6e71 100644 --- a/changelog/README.md +++ b/changelog/README.md @@ -43,3 +43,36 @@ Some other changes ``` * write the changelog to the `changelog/unreleased/CHANGELOG.md` file + +Every release the release train app will: + +* get changelog from `changelog/unreleased/CHANGELOG.md` file +* add information about dependencies and compile changelog like: +``` +## Mapbox Navigation SDK 1.1.1 - 13 December, 2022 +### Changelog +[Changes between v1.1.0 and v1.1.1](https://github.com/mapbox/mapbox-navigation-android/compare/v1.1.0...v1.1.1) + +#### Features +- Feature 1 [#1234](https://github.com/mapbox/mapbox-navigation-android/pull/1234) +- Feature 2 [#2345](https://github.com/mapbox/mapbox-navigation-android/pull/2345) + +#### Bug fixes and improvements +- Bugfix 3 [#3456](https://github.com/mapbox/mapbox-navigation-android/pull/3456) +- Bugfix 4 [#4567](https://github.com/mapbox/mapbox-navigation-android/pull/4567) + +#### Known issues :warning: +- Issue 1 +- Issue 2 + +Some other changes + +### Mapbox dependencies +This release depends on, and has been tested with, the following Mapbox dependencies: +- Mapbox Maps SDK `v10.8.0` ([release notes](https://github.com/mapbox/mapbox-maps-android/releases/tag/v10.8.0)) +- Mapbox Navigation Native `v115.0.1` +- Mapbox Core Common `v23.0.0` +- Mapbox Java `v6.8.0` ([release notes](https://github.com/mapbox/mapbox-java/releases/tag/v6.8.0)) +- Mapbox Android Core `v5.0.2` ([release notes](https://github.com/mapbox/mapbox-events-android/releases/tag/core-5.0.2)) +``` +* delete all files in `changelog/unreleased` dir From 1dcc54b0e670b1cfe5ae9a430f1578f2eff82b19 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 21 Dec 2022 16:38:24 +0700 Subject: [PATCH 31/45] information about release --- changelog/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/changelog/README.md b/changelog/README.md index 57b05ed6e71..b57ab23b620 100644 --- a/changelog/README.md +++ b/changelog/README.md @@ -75,4 +75,5 @@ This release depends on, and has been tested with, the following Mapbox dependen - Mapbox Java `v6.8.0` ([release notes](https://github.com/mapbox/mapbox-java/releases/tag/v6.8.0)) - Mapbox Android Core `v5.0.2` ([release notes](https://github.com/mapbox/mapbox-events-android/releases/tag/core-5.0.2)) ``` +* add compiled changelog to `CHANGELOG.md` file * delete all files in `changelog/unreleased` dir From 4357b1de53fb826bd154f9627bd47bdb8ce22fa9 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 21 Dec 2022 17:00:36 +0700 Subject: [PATCH 32/45] add pr links only for lines starts with '- ' --- changelog/unreleased/CHANGELOG.md | 19 ++++++++++++++++++- changelog/unreleased/bugfixes/6678.md | 18 ++++++++++++++++++ scripts/changelog/assemble_changelog.py | 13 ++++++++----- 3 files changed, 44 insertions(+), 6 deletions(-) create mode 100644 changelog/unreleased/bugfixes/6678.md diff --git a/changelog/unreleased/CHANGELOG.md b/changelog/unreleased/CHANGELOG.md index f184d96048e..475a5d9046f 100644 --- a/changelog/unreleased/CHANGELOG.md +++ b/changelog/unreleased/CHANGELOG.md @@ -4,7 +4,24 @@ - :warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`. [#6687](https://github.com/mapbox/mapbox-navigation-android/pull/6687) #### Bug fixes and improvements -- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. [#6540](https://github.com/mapbox/mapbox-navigation-android/pull/6540) +- :warning: Updated the `NavigationView` default navigation puck asset. [#6678](https://github.com/mapbox/mapbox-navigation-android/pull/6678) + + Previous puck can be restored by injecting `LocationPuck2D` with the `bearingImage` set to `com.mapbox.navigation.ui.maps.R.drawable.mapbox_navigation_puck_icon` drawable: + ```kotlin + navigationView.customizeViewStyles { + locationPuckOptions = LocationPuckOptions.Builder(context) + .defaultPuck( + LocationPuck2D( + bearingImage = ContextCompat.getDrawable( + context, + com.mapbox.navigation.ui.maps.R.drawable.mapbox_navigation_puck_icon, + ) + ) + ) + .idlePuck(regularPuck(context)) + .build() + } + ```- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. [#6540](https://github.com/mapbox/mapbox-navigation-android/pull/6540) - Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. [#6695](https://github.com/mapbox/mapbox-navigation-android/pull/6695) #### Known issues :warning: diff --git a/changelog/unreleased/bugfixes/6678.md b/changelog/unreleased/bugfixes/6678.md new file mode 100644 index 00000000000..8b04c8ff4ec --- /dev/null +++ b/changelog/unreleased/bugfixes/6678.md @@ -0,0 +1,18 @@ +- :warning: Updated the `NavigationView` default navigation puck asset. + + Previous puck can be restored by injecting `LocationPuck2D` with the `bearingImage` set to `com.mapbox.navigation.ui.maps.R.drawable.mapbox_navigation_puck_icon` drawable: + ```kotlin + navigationView.customizeViewStyles { + locationPuckOptions = LocationPuckOptions.Builder(context) + .defaultPuck( + LocationPuck2D( + bearingImage = ContextCompat.getDrawable( + context, + com.mapbox.navigation.ui.maps.R.drawable.mapbox_navigation_puck_icon, + ) + ) + ) + .idlePuck(regularPuck(context)) + .build() + } + ``` \ No newline at end of file diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index 29bb9ab43e0..fce3126cbd0 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -8,13 +8,16 @@ def get_changes(path): files = os.listdir(path) for file in files: pr_number = file.partition('.')[0] + pr_changes = open(path + file, 'r').read() if path.endswith('bugfixes/') or path.endswith('features/'): + pr_link = ' [#' + pr_number + '](https://github.com/mapbox/mapbox-navigation-android/pull/' + pr_number + ')' + '\n' + lines_with_description = [] for line in open(path + file, 'r').readlines(): - line = line.replace('\n', '') - if line.strip(): - changes += line + ' [#' + pr_number + '](https://github.com/mapbox/mapbox-navigation-android/pull/' + pr_number + ')' + '\n' - else: - changes += open(path + file, 'r').read() + if line.startswith('- '): + lines_with_description.append(line) + for line in lines_with_description: + pr_changes = pr_changes.replace(line, line.replace('\n', '') + pr_link) + changes += pr_changes return changes.strip() From a9fe948706b7963b104cfabd838f38f8573bf269 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 21 Dec 2022 19:11:40 +0700 Subject: [PATCH 33/45] update validation scripts --- scripts/validate-changelog.py | 15 +++++---------- scripts/validate_changelog_utils.py | 30 ++--------------------------- 2 files changed, 7 insertions(+), 38 deletions(-) diff --git a/scripts/validate-changelog.py b/scripts/validate-changelog.py index 53ab0432673..bd0fb34324b 100644 --- a/scripts/validate-changelog.py +++ b/scripts/validate-changelog.py @@ -1,8 +1,9 @@ #!/usr/bin/python -import requests import sys -import base64 + +import requests + import validate_changelog_utils print("Validating that changelog entry is provided in the CHANGELOG.md...") @@ -25,14 +26,8 @@ diff = diff_response.text validate_changelog_utils.check_has_changelog_diff(diff) added_lines_by_file = validate_changelog_utils.extract_added_lines(diff) - validate_changelog_utils.check_contains_pr_link(added_lines_by_file) - with requests.get(files_url, headers) as files_response: - contents_urls_by_file = validate_changelog_utils.parse_contents_url(files_response.json()) - for (filename, contents_url) in contents_urls_by_file.items(): - validate_changelog_utils.check_for_duplications(added_lines_by_file[filename]) - with requests.get(contents_url, headers) as contents_response: - content = base64.b64decode(contents_response.json()["content"]).decode("utf-8") - validate_changelog_utils.check_version_section(content, added_lines_by_file[filename]) + for lines in added_lines_by_file.values(): + validate_changelog_utils.check_for_duplications(added_lines_by_file) print("Changelog entry validation successful.") else: print("`skip changelog` label present, exiting.") diff --git a/scripts/validate_changelog_utils.py b/scripts/validate_changelog_utils.py index 3e7775f7858..b1025e54157 100644 --- a/scripts/validate_changelog_utils.py +++ b/scripts/validate_changelog_utils.py @@ -1,6 +1,6 @@ import re -changelog_diff_regex = "^([\s]*)diff --git a(.*)\/CHANGELOG.md b(.*)\/CHANGELOG.md" +changelog_diff_regex = "^([\s]*)diff --git a/changelog/unreleased/(features|bugfixes|issues|other)/(.*).md b/changelog/unreleased/(features|bugfixes|issues|other)/(.*).md" changelog_diff_filename_regex = re.compile("([\s]*)diff --git a\/(.*) b\/(.*)") changelog_filename = "CHANGELOG.md" any_diff_substring = "diff --git" @@ -77,7 +77,7 @@ def check_has_changelog_diff(diff): changelog_diff_matches = re.search(changelog_diff_regex, diff, re.MULTILINE) if not changelog_diff_matches: raise Exception( - "Add a non-empty changelog entry in a CHANGELOG.md or add a `skip changelog` label if not applicable.") + "Add a non-empty changelog file in changelog/unreleased/${type of changes} or add a `skip changelog` label if not applicable.") def parse_contents_url(files_response_json): @@ -118,32 +118,6 @@ def extract_added_lines(whole_diff): return added_lines -def check_contains_pr_link(added_lines_by_file): - for filename in added_lines_by_file: - for added_line in added_lines_by_file[filename]: - if len(added_line.strip()) > 0: - pr_link_matches = re.search(pr_link_regex, added_line) - if not pr_link_matches: - raise Exception( - "The changelog entry \"" + added_line + "\" in \"" + filename + "\" should contain a link to the original PR that matches `" + pr_link_regex + "`") - - -def check_version_section(content, added_lines): - lines = content.split("\n") - versions = group_by_versions(lines) - unreleased_group = extract_unreleased_group(versions) - stable_versions = extract_stable_versions(versions) - - for added_line in added_lines: - if added_line not in unreleased_group: - raise Exception("\"" + added_line + "\" should be placed in 'Unreleased' section") - - for stable_version in stable_versions: - if added_line in stable_versions[stable_version]: - raise Exception( - "The changelog entry \"" + added_line + "\" is already contained in " + stable_version + " changelog.") - - def check_for_duplications(added_lines): unique_added_lines = set() for added_line in added_lines: From fb8fa38d05c72cba9a9d3ec9a3598e4b8e002a8c Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 21 Dec 2022 19:11:52 +0700 Subject: [PATCH 34/45] remove not relevant tests --- scripts/validate-changelog-tests.py | 131 ---------------------------- 1 file changed, 131 deletions(-) diff --git a/scripts/validate-changelog-tests.py b/scripts/validate-changelog-tests.py index 92c43f8b4fe..9c7904b76f7 100644 --- a/scripts/validate-changelog-tests.py +++ b/scripts/validate-changelog-tests.py @@ -531,137 +531,6 @@ def test_extract_added_lines_changelog_in_the_middle_has_added(self): ''' self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) - def test_check_contains_pr_link_empty(self): - added_lines = {} - validate_changelog_utils.check_contains_pr_link(added_lines) - - def test_check_contains_pr_link_none_contain(self): - added_lines = { - "CHANGELOG.md" : ['- Added 1.', '- Added 2.'] - } - with self.assertRaises(Exception): - validate_changelog_utils.check_contains_pr_link(added_lines) - - def test_check_contains_pr_link_only_one_contains(self): - added_lines = { - "CHANGELOG.md" : [ - '- Added 1. [#6053](https://github.com/mapbox/mapbox-navigation-android/pull/6053)', - '- Added 2.' - ] - } - with self.assertRaises(Exception): - validate_changelog_utils.check_contains_pr_link(added_lines) - - def test_check_contains_pr_link_all_contain(self): - added_lines = { - "CHANGELOG.md" : [ - '- Added 1. [#6053](https://github.com/mapbox/mapbox-navigation-android/pull/6053)', - '- Added 2. [#6012](https://github.com/mapbox/mapbox-navigation-android/pull/6012)' - ] - } - validate_changelog_utils.check_contains_pr_link(added_lines) - - def test_check_contains_pr_link_not_all_files_contain(self): - added_lines = { - "CHANGELOG.md" : [ - '- Added 1. [#6053](https://github.com/mapbox/mapbox-navigation-android/pull/6053)', - '- Added 2. [#6012](https://github.com/mapbox/mapbox-navigation-android/pull/6012)' - ], - "path/CHANGELOG.md" : [ - '- Added 3.' - ] - } - with self.assertRaises(Exception): - validate_changelog_utils.check_contains_pr_link(added_lines) - - def test_check_contains_pr_link_multiple_files(self): - added_lines = { - "CHANGELOG.md" : [ - '- Added 1. [#6053](https://github.com/mapbox/mapbox-navigation-android/pull/6053)', - '- Added 2. [#6012](https://github.com/mapbox/mapbox-navigation-android/pull/6012)' - ], - "path/CHANGELOG.md" : [ - '- Added 3. [#6052](https://github.com/mapbox/mapbox-navigation-android/pull/6052)' - ] - } - validate_changelog_utils.check_contains_pr_link(added_lines) - - def test_check_contains_pr_link_all_contain_except_empty_line(self): - added_lines = { - "CHANGELOG.md" : [ - '- Added 1. [#6053](https://github.com/mapbox/mapbox-navigation-android/pull/6053)', - '- Added 2. [#6012](https://github.com/mapbox/mapbox-navigation-android/pull/6012)', - '' - ] - } - validate_changelog_utils.check_contains_pr_link(added_lines) - - def test_check_contains_pr_link_all_contain_except_blank_line(self): - added_lines = { - "CHANGELOG.md" : [ - '- Added 1. [#6053](https://github.com/mapbox/mapbox-navigation-android/pull/6053)', - '- Added 2. [#6012](https://github.com/mapbox/mapbox-navigation-android/pull/6012)', - ' ' - ] - } - validate_changelog_utils.check_contains_pr_link(added_lines) - - def test_check_version_section_empty_lines(self): - content = self.read_test_changelog("test_changelog.md") - added_lines = [] - validate_changelog_utils.check_version_section(content, added_lines) - - def test_check_version_section_single_line_not_unreleased(self): - content = self.read_test_changelog("test_changelog.md") - added_lines = ['- Added first feature to 2.7.0-beta1. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)'] - with self.assertRaises(Exception): - validate_changelog_utils.check_version_section(content, added_lines) - - def test_check_version_section_multiple_lines_one_not_unreleased(self): - content = self.read_test_changelog("test_changelog.md") - added_lines = [ - '- Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047)', - '- Added first feature to 2.7.0-beta1. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)', - ] - with self.assertRaises(Exception): - validate_changelog_utils.check_version_section(content, added_lines) - - def test_check_version_section_multiple_lines_all_unreleased(self): - content = self.read_test_changelog("test_changelog.md") - added_lines = [ - '- Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047)', - '- Fixed second unreleased bug. [#6046](https://github.com/mapbox/mapbox-navigation-android/pull/6046)', - ] - validate_changelog_utils.check_version_section(content, added_lines) - - def test_check_version_section_single_line_repeats_stable_version(self): - content = self.read_test_changelog("test_changelog_single_line_repeats_stable_version.md") - added_lines = ['- Added second feature to 2.6.0. [#6013](https://github.com/mapbox/mapbox-navigation-android/pull/6013)'] - with self.assertRaises(Exception): - validate_changelog_utils.check_version_section(content, added_lines) - - def test_check_version_section_multiple_lines_one_repeats_stable_version(self): - content = self.read_test_changelog("test_changelog_single_line_repeats_stable_version.md") - added_lines = [ - '- Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047)', - '- Added second feature to 2.6.0. [#6013](https://github.com/mapbox/mapbox-navigation-android/pull/6013)' - ] - with self.assertRaises(Exception): - validate_changelog_utils.check_version_section(content, added_lines) - - def test_check_version_section_multiple_lines_all_unique(self): - content = self.read_test_changelog("test_changelog.md") - added_lines = [ - '- Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049)', - '- Fixed second unreleased bug. [#6046](https://github.com/mapbox/mapbox-navigation-android/pull/6046)' - ] - validate_changelog_utils.check_version_section(content, added_lines) - - def test_check_version_section_single_line_repeats_unstable_version(self): - content = self.read_test_changelog("test_changelog_single_line_repeats_unstable_version.md") - added_lines = ['- Added first feature to 2.7.0-beta1. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)'] - validate_changelog_utils.check_version_section(content, added_lines) - def test_check_for_duplications_empty_list(self): validate_changelog_utils.check_for_duplications([]) From b8ae89028821431d73f3db4406265c3728e0392b Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 21 Dec 2022 19:27:18 +0700 Subject: [PATCH 35/45] test formatting and fixes --- scripts/validate-changelog-tests.py | 112 ++++++++++++++-------------- 1 file changed, 54 insertions(+), 58 deletions(-) diff --git a/scripts/validate-changelog-tests.py b/scripts/validate-changelog-tests.py index 9c7904b76f7..29656ec3965 100644 --- a/scripts/validate-changelog-tests.py +++ b/scripts/validate-changelog-tests.py @@ -1,6 +1,8 @@ +import os import unittest + import validate_changelog_utils -import os + class TestValidateChangelog(unittest.TestCase): @@ -9,11 +11,11 @@ def test_should_skip_changelog_no_labels(self): self.assertEqual(validate_changelog_utils.should_skip_changelog(json), False) def test_should_skip_changelog_no_skip_changelog_label(self): - json = { "labels": [{ "name": "some label" }] } + json = {"labels": [{"name": "some label"}]} self.assertEqual(validate_changelog_utils.should_skip_changelog(json), False) def test_should_skip_changelog_has_skip_changelog_label(self): - json = { "labels": [{"name": "some label"}, {"name": "skip changelog"}] } + json = {"labels": [{"name": "some label"}, {"name": "skip changelog"}]} self.assertEqual(validate_changelog_utils.should_skip_changelog(json), True) def test_check_has_changelog_diff_no_diff(self): @@ -39,22 +41,14 @@ def test_check_has_changelog_diff_no_diff(self): def test_check_has_changelog_diff_has_diff(self): diff = ''' - Index: CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision d85b11703af7976027073a5e29ec51ffc2164b6e) - +++ b/CHANGELOG.md (date 1659101554037) - @@ -6,6 +6,7 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) + diff --git a/changelog/unreleased/issues/example-known-issues.md b/changelog/unreleased/issues/example-known-issues.md + new file mode 100644 + index 00000000000..c0505027151 + --- /dev/null + +++ b/changelog/unreleased/issues/example-known-issues.md + @@ -0,0 +1 @@ + +- It is an example of known issues + \ No newline at end of file Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP @@ -79,17 +73,17 @@ def test_parse_contents_url_empty_json(self): def test_parse_contents_url_no_changelog(self): with self.assertRaises(Exception): - validate_changelog_utils.parse_contents_url([{ "filename": "not_changelog.md" }]) + validate_changelog_utils.parse_contents_url([{"filename": "not_changelog.md"}]) def test_parse_contents_url_has_changelog_no_url(self): with self.assertRaises(Exception): - validate_changelog_utils.parse_contents_url([{ "filename": "CHANGELOG.md" }]) + validate_changelog_utils.parse_contents_url([{"filename": "CHANGELOG.md"}]) def test_parse_contents_url_has_changelog_and_url(self): filename = "CHANGELOG.md" url = "my url" - actual = validate_changelog_utils.parse_contents_url([{ "filename": filename, "contents_url": url }]) - self.assertEqual(actual, { filename : url }) + actual = validate_changelog_utils.parse_contents_url([{"filename": filename, "contents_url": url}]) + self.assertEqual(actual, {filename: url}) def test_extract_added_lines_only_changelog_nothing_added(self): diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md @@ -104,11 +98,12 @@ def test_extract_added_lines_only_changelog_nothing_added(self): #### Bug fixes and improvements - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), { "CHANGELOG.md" : [] }) + self.assertEqual(validate_changelog_utils.extract_added_lines(diff), {"CHANGELOG.md": []}) def test_extract_added_lines_only_changelog_has_added(self): expected = { - "CHANGELOG.md" : ['- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] + "CHANGELOG.md": [ + '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] } diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md --- a/CHANGELOG.md (revision fca6af9072a1b6cb7263460f7c3270e48bffed07) @@ -126,7 +121,8 @@ def test_extract_added_lines_only_changelog_has_added(self): def test_extract_added_lines_only_changelog_has_added_with_blank_lines(self): expected = { - "CHANGELOG.md" : ['- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] + "CHANGELOG.md": [ + '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] } diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md --- a/CHANGELOG.md (revision fca6af9072a1b6cb7263460f7c3270e48bffed07) @@ -146,7 +142,8 @@ def test_extract_added_lines_only_changelog_has_added_with_blank_lines(self): def test_extract_added_lines_only_changelog_with_path_has_added(self): expected = { - "libnavui-androidauto/CHANGELOG.md" : ['- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] + "libnavui-androidauto/CHANGELOG.md": [ + '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] } diff = '''diff --git a/libnavui-androidauto/CHANGELOG.md b/libnavui-androidauto/CHANGELOG.md --- a/libnavui-androidauto/CHANGELOG.md (revision ee5039502306c1ea6449f57615a2ad0f7f23fd83) @@ -164,8 +161,10 @@ def test_extract_added_lines_only_changelog_with_path_has_added(self): def test_extract_added_lines_several_changelogs_in_a_row_has_added(self): expected = { - "libnavui-androidauto/CHANGELOG.md" : ['- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'], - "CHANGELOG.md" : ['- Added fourth unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] + "libnavui-androidauto/CHANGELOG.md": [ + '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'], + "CHANGELOG.md": [ + '- Added fourth unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] } diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md --- a/CHANGELOG.md (revision e53b37ad3a4540bdb0878b4679a174f9518134b0) @@ -199,8 +198,10 @@ def test_extract_added_lines_several_changelogs_in_a_row_has_added(self): def test_extract_added_lines_several_changelogs_divided_has_added(self): expected = { - "libnavui-androidauto/CHANGELOG.md" : ['- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'], - "CHANGELOG.md" : ['- Added fourth unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] + "libnavui-androidauto/CHANGELOG.md": [ + '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'], + "CHANGELOG.md": [ + '- Added fourth unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] } diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md --- a/CHANGELOG.md (revision e53b37ad3a4540bdb0878b4679a174f9518134b0) @@ -249,8 +250,9 @@ def test_extract_added_lines_several_changelogs_divided_has_added(self): def test_extract_added_lines_several_changelogs_only_one_has_added(self): expected = { - "CHANGELOG.md" : [], - "libnavui-androidauto/CHANGELOG.md" : ['- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] + "CHANGELOG.md": [], + "libnavui-androidauto/CHANGELOG.md": [ + '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] } diff = ''' Index: CHANGELOG.md @@ -322,13 +324,12 @@ def test_extract_added_lines_changelog_in_the_beginning_nothing_added(self): + fun testMethod2(a: Int, b: Int) = a * 10 + b } ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), { "CHANGELOG.md" : [] }) + self.assertEqual(validate_changelog_utils.extract_added_lines(diff), {"CHANGELOG.md": []}) def test_extract_added_lines_changelog_in_the_beginning_has_added(self): expected = { - "CHANGELOG.md" : [ - '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)', - '- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)' + "changelog/unreleased/issues/example-known-issues.md": [ + '- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg.' ] } diff = ''' @@ -337,22 +338,14 @@ def test_extract_added_lines_changelog_in_the_beginning_has_added(self): Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== - diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision 3231aea607a4bc1edc8ee28cf695dfdb06399a30) - +++ b/CHANGELOG.md (date 1659104161551) - @@ -6,10 +6,12 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) - - Fixed second unreleased bug. [#6046](https://github.com/mapbox/mapbox-navigation-android/pull/6046) - +- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045) - - ## Mapbox Navigation SDK 2.7.0-beta.1 - 14 July, 2022 - ### Changelog + diff --git a/changelog/unreleased/issues/example-known-issues.md b/changelog/unreleased/issues/example-known-issues.md + new file mode 100644 + index 00000000000..c0505027151 + --- /dev/null + +++ b/changelog/unreleased/issues/example-known-issues.md + @@ -0,0 +1 @@ + +- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. + \ No newline at end of file Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP @@ -400,11 +393,12 @@ def test_extract_added_lines_changelog_in_the_end_nothing_added(self): ## Mapbox Navigation SDK 2.7.0-beta.1 - 14 July, 2022 ### Changelog ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), { "CHANGELOG.md" : [] }) + self.assertEqual(validate_changelog_utils.extract_added_lines(diff), {"CHANGELOG.md": []}) def test_extract_added_lines_changelog_in_the_end_has_added(self): expected = { - "CHANGELOG.md" : ['- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)'] + "CHANGELOG.md": [ + '- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)'] } diff = ''' Index: .circleci/config2.yml @@ -480,11 +474,12 @@ def test_extract_added_lines_changelog_in_the_middle_nothing_added(self): @@ -1,0 +1,1 @@ +Added line ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), { "CHANGELOG.md" : [] }) + self.assertEqual(validate_changelog_utils.extract_added_lines(diff), {"CHANGELOG.md": []}) def test_extract_added_lines_changelog_in_the_middle_has_added(self): expected = { - "CHANGELOG.md" : ['- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)'] + "CHANGELOG.md": [ + '- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)'] } diff = ''' Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt @@ -560,5 +555,6 @@ def read_test_changelog(self, filename): data = f.read() return data + if __name__ == "__main__": - unittest.main() \ No newline at end of file + unittest.main() From bf79b11b4a3a03da3b0d62acf7ff0911c17ce0dd Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 21 Dec 2022 20:54:41 +0700 Subject: [PATCH 36/45] fix tests --- scripts/validate-changelog-tests.py | 504 ++++------------------------ 1 file changed, 73 insertions(+), 431 deletions(-) diff --git a/scripts/validate-changelog-tests.py b/scripts/validate-changelog-tests.py index 29656ec3965..ebeb4276f29 100644 --- a/scripts/validate-changelog-tests.py +++ b/scripts/validate-changelog-tests.py @@ -20,11 +20,6 @@ def test_should_skip_changelog_has_skip_changelog_label(self): def test_check_has_changelog_diff_no_diff(self): diff = ''' - Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== diff --git a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt --- a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (revision 25782d7748a343b2e4c85954cfa5c22846343f28) +++ b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (date 1659101434632) @@ -41,19 +36,15 @@ def test_check_has_changelog_diff_no_diff(self): def test_check_has_changelog_diff_has_diff(self): diff = ''' - diff --git a/changelog/unreleased/issues/example-known-issues.md b/changelog/unreleased/issues/example-known-issues.md + diff --git a/changelog/unreleased/features/amazing-feature.md b/changelog/unreleased/features/amazing-feature.md new file mode 100644 index 00000000000..c0505027151 --- /dev/null - +++ b/changelog/unreleased/issues/example-known-issues.md + +++ b/changelog/unreleased/features/amazing-feature.md @@ -0,0 +1 @@ - +- It is an example of known issues + +- Definitely amazing feature + +- Nice changes \ No newline at end of file - Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== diff --git a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt --- a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (revision 25782d7748a343b2e4c85954cfa5c22846343f28) +++ b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (date 1659101434632) @@ -67,6 +58,48 @@ def test_check_has_changelog_diff_has_diff(self): ''' validate_changelog_utils.check_has_changelog_diff(diff) + def test_check_has_changelog_diff_has_diff_bugfixes(self): + diff = ''' + diff --git a/changelog/unreleased/bugfixes/amazing-fix.md b/changelog/unreleased/bugfixes/amazing-fix.md + new file mode 100644 + index 00000000000..c0505027151 + --- /dev/null + +++ b/changelog/unreleased/features/amazing-fix.md + @@ -0,0 +1 @@ + +- Definitely amazing fix + +- Nice changes + \ No newline at end of file + ''' + validate_changelog_utils.check_has_changelog_diff(diff) + + def test_check_has_changelog_diff_has_diff_issues(self): + diff = ''' + diff --git a/changelog/unreleased/issues/amazing-issue.md b/changelog/unreleased/issues/amazing-issue.md + new file mode 100644 + index 00000000000..c0505027151 + --- /dev/null + +++ b/changelog/unreleased/issues/amazing-issue.md + @@ -0,0 +1 @@ + +- Definitely amazing issue + +- Nice changes + \ No newline at end of file + ''' + validate_changelog_utils.check_has_changelog_diff(diff) + + def test_check_has_changelog_diff_has_diff_other(self): + diff = ''' + diff --git a/changelog/unreleased/other/amazing-other.md b/changelog/unreleased/other/amazing-other.md + new file mode 100644 + index 00000000000..c0505027151 + --- /dev/null + +++ b/changelog/unreleased/other/amazing-other.md + @@ -0,0 +1 @@ + +- Definitely amazing other + +- Nice changes + \ No newline at end of file + ''' + validate_changelog_utils.check_has_changelog_diff(diff) + def test_parse_contents_url_empty_json(self): with self.assertRaises(Exception): validate_changelog_utils.parse_contents_url([]) @@ -86,443 +119,52 @@ def test_parse_contents_url_has_changelog_and_url(self): self.assertEqual(actual, {filename: url}) def test_extract_added_lines_only_changelog_nothing_added(self): - diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision 145c2d43cb3404f28975538ad440504d5ed74562) - +++ b/CHANGELOG.md (date 1659101646796) - @@ -5,7 +5,6 @@ - ## Unreleased - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - -- Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), {"CHANGELOG.md": []}) - - def test_extract_added_lines_only_changelog_has_added(self): - expected = { - "CHANGELOG.md": [ - '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] - } - diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision fca6af9072a1b6cb7263460f7c3270e48bffed07) - +++ b/CHANGELOG.md (date 1659101777554) - @@ -6,6 +6,7 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) - - def test_extract_added_lines_only_changelog_has_added_with_blank_lines(self): - expected = { - "CHANGELOG.md": [ - '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] - } - diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision fca6af9072a1b6cb7263460f7c3270e48bffed07) - +++ b/CHANGELOG.md (date 1659101777554) - @@ -6,6 +6,7 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - + - + - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) - - def test_extract_added_lines_only_changelog_with_path_has_added(self): - expected = { - "libnavui-androidauto/CHANGELOG.md": [ - '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] - } - diff = '''diff --git a/libnavui-androidauto/CHANGELOG.md b/libnavui-androidauto/CHANGELOG.md - --- a/libnavui-androidauto/CHANGELOG.md (revision ee5039502306c1ea6449f57615a2ad0f7f23fd83) - +++ b/libnavui-androidauto/CHANGELOG.md (date 1661336275515) - @@ -6,6 +6,7 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - - #### Bug fixes and improvements - - Added. [#6165](https://github.com/mapbox/mapbox-navigation-android/pull/6165) - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) - - def test_extract_added_lines_several_changelogs_in_a_row_has_added(self): - expected = { - "libnavui-androidauto/CHANGELOG.md": [ - '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'], - "CHANGELOG.md": [ - '- Added fourth unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] - } - diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision e53b37ad3a4540bdb0878b4679a174f9518134b0) - +++ b/CHANGELOG.md (date 1661336645379) - @@ -6,6 +6,7 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added fourth unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - - #### Bug fixes and improvements - - Added2. [#6145](https://github.com/mapbox/mapbox-navigation-android/pull/6145) - Index: libnavui-androidauto/CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/libnavui-androidauto/CHANGELOG.md b/libnavui-androidauto/CHANGELOG.md - --- a/libnavui-androidauto/CHANGELOG.md (revision 9307f85eaea82470de6f3111ff0218f76e1d9779) - +++ b/libnavui-androidauto/CHANGELOG.md (date 1661336328085) - @@ -6,6 +6,7 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - - #### Bug fixes and improvements - - Added. [#6165](https://github.com/mapbox/mapbox-navigation-android/pull/6165) - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) - - def test_extract_added_lines_several_changelogs_divided_has_added(self): - expected = { - "libnavui-androidauto/CHANGELOG.md": [ - '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'], - "CHANGELOG.md": [ - '- Added fourth unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] - } - diff = '''diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision e53b37ad3a4540bdb0878b4679a174f9518134b0) - +++ b/CHANGELOG.md (date 1661336645379) - @@ -6,6 +6,7 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added fourth unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - - #### Bug fixes and improvements - - Added2. [#6145](https://github.com/mapbox/mapbox-navigation-android/pull/6145) - Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - --- a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (revision 85db37c032b85d89c65f909c65dbf4e36130bc95) - +++ b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (date 1659101643213) - @@ -4,5 +4,5 @@ - - fun testMethod1() {} - - - fun testMethod2(a: Int) = a * 10 - + fun testMethod2(a: Int, b: Int) = a * 10 + b - } - Index: libnavui-androidauto/CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/libnavui-androidauto/CHANGELOG.md b/libnavui-androidauto/CHANGELOG.md - --- a/libnavui-androidauto/CHANGELOG.md (revision 9307f85eaea82470de6f3111ff0218f76e1d9779) - +++ b/libnavui-androidauto/CHANGELOG.md (date 1661336328085) - @@ -6,6 +6,7 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - - #### Bug fixes and improvements - - Added. [#6165](https://github.com/mapbox/mapbox-navigation-android/pull/6165) - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) - - def test_extract_added_lines_several_changelogs_only_one_has_added(self): - expected = { - "CHANGELOG.md": [], - "libnavui-androidauto/CHANGELOG.md": [ - '- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050)'] - } - diff = ''' - Index: CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision 2fed9e01ca0f2e15ce15f104a2175b12f48f15d4) - +++ b/CHANGELOG.md (date 1661341839927) - @@ -5,7 +5,6 @@ - ## Unreleased - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - -- Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - - #### Bug fixes and improvements - - Added2. [#6145](https://github.com/mapbox/mapbox-navigation-android/pull/6145) - Index: libnavui-androidauto/CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/libnavui-androidauto/CHANGELOG.md b/libnavui-androidauto/CHANGELOG.md - --- a/libnavui-androidauto/CHANGELOG.md (revision 4710fa5f28a132f6db42d1d580650a4b14987368) - +++ b/libnavui-androidauto/CHANGELOG.md (date 1661336328085) - @@ -6,6 +6,7 @@ - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - - Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - +- Added third unreleased feature. [#6050](https://github.com/mapbox/mapbox-navigation-android/pull/6050) - - #### Bug fixes and improvements - - Added. [#6165](https://github.com/mapbox/mapbox-navigation-android/pull/6165) - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) - - def test_extract_added_lines_changelog_in_the_beginning_nothing_added(self): - diff = ''' - Index: CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision 85db37c032b85d89c65f909c65dbf4e36130bc95) - +++ b/CHANGELOG.md (date 1659101873752) - @@ -5,7 +5,6 @@ - ## Unreleased - #### Features - - Added first unreleased feature. [#6049](https://github.com/mapbox/mapbox-navigation-android/pull/6049) - -- Added second unreleased feature. [#6048](https://github.com/mapbox/mapbox-navigation-android/pull/6048) - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) - Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - --- a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (revision 85db37c032b85d89c65f909c65dbf4e36130bc95) - +++ b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (date 1659101643213) - @@ -4,5 +4,5 @@ - - fun testMethod1() {} - - - fun testMethod2(a: Int) = a * 10 - + fun testMethod2(a: Int, b: Int) = a * 10 + b - } - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), {"CHANGELOG.md": []}) - - def test_extract_added_lines_changelog_in_the_beginning_has_added(self): - expected = { - "changelog/unreleased/issues/example-known-issues.md": [ - '- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg.' - ] - } diff = ''' - Index: CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== diff --git a/changelog/unreleased/issues/example-known-issues.md b/changelog/unreleased/issues/example-known-issues.md new file mode 100644 index 00000000000..c0505027151 --- /dev/null +++ b/changelog/unreleased/issues/example-known-issues.md @@ -0,0 +1 @@ - +- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. + - It is an example of known issues + -- \ No newline at end of file - Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - --- a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (revision b96eff8c2c354263379ca588a17bbf4df6c802b8) - +++ b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (date 1659104022448) - @@ -4,5 +4,5 @@ - - fun testMethod1() {} - - - fun testMethod2(a: Int) = a * 10 - + fun testMethod2(a: Int, b: Int) = a * 10 + b - } - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) - - def test_extract_added_lines_changelog_in_the_end_nothing_added(self): - diff = ''' - Index: CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/.circleci/config2.yml b/.circleci/config2.yml - --- a/.circleci/config2.yml (revision 2f1ddf175da5069b30d519119c52441f74a46974) - +++ b/.circleci/config2.yml (date 1659105154622) - @@ -1,0 +1,1 @@ - +Added line - Index: .circleci/config2.yml - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision 2f1ddf175da5069b30d519119c52441f74a46974) - +++ b/CHANGELOG.md (date 1659105181666) - @@ -9,7 +9,6 @@ - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) - -- Fixed second unreleased bug. [#6046](https://github.com/mapbox/mapbox-navigation-android/pull/6046) - - ## Mapbox Navigation SDK 2.7.0-beta.1 - 14 July, 2022 - ### Changelog ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), {"CHANGELOG.md": []}) + self.assertEqual(validate_changelog_utils.extract_added_lines(diff), + {"changelog/unreleased/issues/example-known-issues.md": []}) - def test_extract_added_lines_changelog_in_the_end_has_added(self): + def test_extract_added_lines_only_changelog_has_added(self): expected = { - "CHANGELOG.md": [ - '- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)'] + "changelog/unreleased/issues/example-known-issues.md": ['- It is an example of known issues'] } diff = ''' - Index: .circleci/config2.yml - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/.circleci/config2.yml b/.circleci/config2.yml - --- a/.circleci/config2.yml (revision 03d0067b1a8fabbe70ccc9c8017c6c64a4d57cbb) - +++ b/.circleci/config2.yml (date 1659105387306) - @@ -1,0 +1,1 @@ - +Added line - Index: CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision ab3d6d6132f62cca268f5e664aecfc306d5c3fd5) - +++ b/CHANGELOG.md (date 1659105404056) - @@ -9,6 +9,7 @@ - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) - +- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045) - - Fixed second unreleased bug. [#6046](https://github.com/mapbox/mapbox-navigation-android/pull/6046) - - ## Mapbox Navigation SDK 2.7.0-beta.1 - 14 July, 2022 + diff --git a/changelog/unreleased/issues/example-known-issues.md b/changelog/unreleased/issues/example-known-issues.md + new file mode 100644 + index 00000000000..c0505027151 + --- /dev/null + +++ b/changelog/unreleased/issues/example-known-issues.md + @@ -0,0 +1 @@ + +- It is an example of known issues + \ No newline at end of file ''' self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) - def test_extract_added_lines_changelog_in_the_middle_nothing_added(self): - diff = ''' - Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - --- a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (revision 0cf46e4ad84d2d914d1be07ac94401d1eb684ab5) - +++ b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (date 1659105514618) - @@ -4,5 +4,5 @@ - - fun testMethod1() {} - - - fun testMethod2(a: Int) = a * 10 - + fun testMethod2(a: Int, b: Int) = a * 10 + b * 5 - } - Index: CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision 2db5f9ac7a0be448ae6acc9108b722a75a8f1c7a) - +++ b/CHANGELOG.md (date 1659105622366) - @@ -9,7 +9,6 @@ - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) - -- Fixed second unreleased bug. [#6046](https://github.com/mapbox/mapbox-navigation-android/pull/6046) - - ## Mapbox Navigation SDK 2.7.0-beta.1 - 14 July, 2022 - ### Changelog - Index: .circleci/config2.yml - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/.circleci/config2.yml b/.circleci/config2.yml - --- a/.circleci/config2.yml (revision 0cf46e4ad84d2d914d1be07ac94401d1eb684ab5) - +++ b/.circleci/config2.yml (date 1659105387306) - @@ -1,0 +1,1 @@ - +Added line - ''' - self.assertEqual(validate_changelog_utils.extract_added_lines(diff), {"CHANGELOG.md": []}) - - def test_extract_added_lines_changelog_in_the_middle_has_added(self): + def test_extract_added_lines_only_changelog_has_added_with_blank_lines(self): expected = { - "CHANGELOG.md": [ - '- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045)'] + "changelog/unreleased/issues/example-known-issues.md": ['- It is an example of known issues'] } diff = ''' - Index: libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt - --- a/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (revision 0cf46e4ad84d2d914d1be07ac94401d1eb684ab5) - +++ b/libnavigation-core/src/main/java/com/mapbox/navigation/core/TestClass.kt (date 1659105514618) - @@ -4,5 +4,5 @@ - - fun testMethod1() {} - - - fun testMethod2(a: Int) = a * 10 - + fun testMethod2(a: Int, b: Int) = a * 10 + b * 5 - } - Index: CHANGELOG.md - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/CHANGELOG.md b/CHANGELOG.md - --- a/CHANGELOG.md (revision ab3d6d6132f62cca268f5e664aecfc306d5c3fd5) - +++ b/CHANGELOG.md (date 1659105418509) - @@ -9,6 +9,7 @@ - - #### Bug fixes and improvements - - Fixed first unreleased bug. [#6047](https://github.com/mapbox/mapbox-navigation-android/pull/6047) - +- Fixed third unreleased bug. [#6045](https://github.com/mapbox/mapbox-navigation-android/pull/6045) - - Fixed second unreleased bug. [#6046](https://github.com/mapbox/mapbox-navigation-android/pull/6046) - - ## Mapbox Navigation SDK 2.7.0-beta.1 - 14 July, 2022 - Index: .circleci/config2.yml - IDEA additional info: - Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP - <+>UTF-8 - =================================================================== - diff --git a/.circleci/config2.yml b/.circleci/config2.yml - --- a/.circleci/config2.yml (revision ab3d6d6132f62cca268f5e664aecfc306d5c3fd5) - +++ b/.circleci/config2.yml (date 1659105387306) - @@ -1,0 +1,1 @@ - +Added line + diff --git a/changelog/unreleased/issues/example-known-issues.md b/changelog/unreleased/issues/example-known-issues.md + new file mode 100644 + index 00000000000..c0505027151 + --- /dev/null + +++ b/changelog/unreleased/issues/example-known-issues.md + @@ -0,0 +1 @@ + +- It is an example of known issues + + + + + + + \ No newline at end of file ''' self.assertEqual(validate_changelog_utils.extract_added_lines(diff), expected) From ff7a3dde8d4dc6e070a4f38a1e3f70a5205ee8f3 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 21 Dec 2022 21:21:51 +0700 Subject: [PATCH 37/45] actualization changelog --- changelog/unreleased/CHANGELOG.md | 20 ++++--------------- changelog/unreleased/bugfixes/6540.md | 1 - changelog/unreleased/bugfixes/6695.md | 1 - changelog/unreleased/bugfixes/6764.md | 1 + changelog/unreleased/features/6687.md | 2 -- changelog/unreleased/features/6740.md | 1 - .../unreleased/issues/example-known-issues.md | 1 - changelog/unreleased/other/example-other.md | 10 ---------- scripts/changelog/assemble_changelog.py | 2 ++ 9 files changed, 7 insertions(+), 32 deletions(-) delete mode 100644 changelog/unreleased/bugfixes/6540.md delete mode 100644 changelog/unreleased/bugfixes/6695.md create mode 100644 changelog/unreleased/bugfixes/6764.md delete mode 100644 changelog/unreleased/features/6687.md delete mode 100644 changelog/unreleased/features/6740.md delete mode 100644 changelog/unreleased/issues/example-known-issues.md delete mode 100644 changelog/unreleased/other/example-other.md diff --git a/changelog/unreleased/CHANGELOG.md b/changelog/unreleased/CHANGELOG.md index 475a5d9046f..e26a6976c87 100644 --- a/changelog/unreleased/CHANGELOG.md +++ b/changelog/unreleased/CHANGELOG.md @@ -1,9 +1,8 @@ #### Features -- Test changes to check renaming [#6740](https://github.com/mapbox/mapbox-navigation-android/pull/6740) -- Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location. [#6687](https://github.com/mapbox/mapbox-navigation-android/pull/6687) -- :warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`. [#6687](https://github.com/mapbox/mapbox-navigation-android/pull/6687) + #### Bug fixes and improvements +- Added guarantees that route progress with `RouteProgress#currentState == OFF_ROUTE` arrives earlier than `NavigationRerouteController#reroute` is called. [#6764](https://github.com/mapbox/mapbox-navigation-android/pull/6764) - :warning: Updated the `NavigationView` default navigation puck asset. [#6678](https://github.com/mapbox/mapbox-navigation-android/pull/6678) Previous puck can be restored by injecting `LocationPuck2D` with the `bearingImage` set to `com.mapbox.navigation.ui.maps.R.drawable.mapbox_navigation_puck_icon` drawable: @@ -21,20 +20,9 @@ .idlePuck(regularPuck(context)) .build() } - ```- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. [#6540](https://github.com/mapbox/mapbox-navigation-android/pull/6540) -- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. [#6695](https://github.com/mapbox/mapbox-navigation-android/pull/6695) + ``` #### Known issues :warning: -- It is an example of known issues - -#### Other changes -You can write here anything in .md format -``` -For example some code -``` -
-Feel free -to use md features -
\ No newline at end of file +#### Other changes diff --git a/changelog/unreleased/bugfixes/6540.md b/changelog/unreleased/bugfixes/6540.md deleted file mode 100644 index 333eaa52b9f..00000000000 --- a/changelog/unreleased/bugfixes/6540.md +++ /dev/null @@ -1 +0,0 @@ -- Fixed approaches list update in `RouteOptionsUpdater`(uses for reroute). It was putting to the origin approach corresponding approach from legacy approach list. \ No newline at end of file diff --git a/changelog/unreleased/bugfixes/6695.md b/changelog/unreleased/bugfixes/6695.md deleted file mode 100644 index 3f751b16d27..00000000000 --- a/changelog/unreleased/bugfixes/6695.md +++ /dev/null @@ -1 +0,0 @@ -- Updated the `MapboxRestAreaApi` logic to load a SAPA map only if the upcoming rest stop is at the current step of the route leg. \ No newline at end of file diff --git a/changelog/unreleased/bugfixes/6764.md b/changelog/unreleased/bugfixes/6764.md new file mode 100644 index 00000000000..9bb3e126854 --- /dev/null +++ b/changelog/unreleased/bugfixes/6764.md @@ -0,0 +1 @@ +- Added guarantees that route progress with `RouteProgress#currentState == OFF_ROUTE` arrives earlier than `NavigationRerouteController#reroute` is called. \ No newline at end of file diff --git a/changelog/unreleased/features/6687.md b/changelog/unreleased/features/6687.md deleted file mode 100644 index 22177bdc67b..00000000000 --- a/changelog/unreleased/features/6687.md +++ /dev/null @@ -1,2 +0,0 @@ -- Introduced `MapboxSpeedInfoApi` and `MapboxSpeedInfoView`. The combination of API and View can be used to render posted and current speed limit at user's current location. -- :warning: Deprecated `MapboxSpeedLimitApi` and `MapboxSpeedLimitView`. \ No newline at end of file diff --git a/changelog/unreleased/features/6740.md b/changelog/unreleased/features/6740.md deleted file mode 100644 index 4a3f469d9aa..00000000000 --- a/changelog/unreleased/features/6740.md +++ /dev/null @@ -1 +0,0 @@ -- Test changes to check renaming \ No newline at end of file diff --git a/changelog/unreleased/issues/example-known-issues.md b/changelog/unreleased/issues/example-known-issues.md deleted file mode 100644 index c0505027151..00000000000 --- a/changelog/unreleased/issues/example-known-issues.md +++ /dev/null @@ -1 +0,0 @@ -- It is an example of known issues \ No newline at end of file diff --git a/changelog/unreleased/other/example-other.md b/changelog/unreleased/other/example-other.md deleted file mode 100644 index 079141c359a..00000000000 --- a/changelog/unreleased/other/example-other.md +++ /dev/null @@ -1,10 +0,0 @@ -You can write here anything in .md format - -``` -For example some code -``` - -
-Feel free -to use md features -
\ No newline at end of file diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index fce3126cbd0..72b25e23ec1 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -5,6 +5,8 @@ def get_changes(path): changes = '' + if not os.path.isdir(path): + return '' files = os.listdir(path) for file in files: pr_number = file.partition('.')[0] From 64cd1d8c9690e7a02cada536f2ad40afe835d172 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 21 Dec 2022 21:24:05 +0700 Subject: [PATCH 38/45] fix rename changelog script --- scripts/changelog/rename_changelog_file.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py index 1e8f23f33e1..5ee3d0fdaed 100644 --- a/scripts/changelog/rename_changelog_file.py +++ b/scripts/changelog/rename_changelog_file.py @@ -10,6 +10,9 @@ def rename_files(path): + if not os.path.isdir(path): + return 0 + renamed_files_count = 0 files = os.listdir(path) From 8966c79065972aaf5e0f624203cd762e5674ac1d Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 3 Jan 2023 14:40:30 +0700 Subject: [PATCH 39/45] android auto running changelog strategy --- scripts/changelog/assemble_changelog.py | 15 +++++++++++++++ scripts/changelog/rename_changelog_file.py | 6 +++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index 72b25e23ec1..4b98fefbfe8 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -41,3 +41,18 @@ def get_changes(path): repository.git.add('changelog/unreleased') repository.index.commit('Assemble changelog file [skip actions]') repository.remotes.origin.push().raise_if_error() + +auto_bugfixes = get_changes('libnavui-androidauto/changelog/unreleased/bugfixes/') +auto_features = get_changes('libnavui-androidauto/changelog/unreleased/features/') + +auto_changelog = '#### Features\n' + auto_features + '\n\n' + \ + '#### Bug fixes and improvements\n' + auto_bugfixes + +auto_old_changelog = open('libnavui-androidauto/changelog/unreleased/CHANGELOG.md', 'r').read() + +if auto_changelog != auto_old_changelog: + open('libnavui-androidauto/changelog/unreleased/CHANGELOG.md', 'w').write(auto_changelog) + repository = git.Repo('.') + repository.git.add('libnavui-androidauto/changelog/unreleased') + repository.index.commit('Assemble auto changelog file [skip actions]') + repository.remotes.origin.push().raise_if_error() diff --git a/scripts/changelog/rename_changelog_file.py b/scripts/changelog/rename_changelog_file.py index 5ee3d0fdaed..57108f82af4 100644 --- a/scripts/changelog/rename_changelog_file.py +++ b/scripts/changelog/rename_changelog_file.py @@ -32,8 +32,12 @@ def rename_files(path): renamed_bugfixes_count = rename_files('changelog/unreleased/bugfixes/') renamed_features_count = rename_files('changelog/unreleased/features/') -if renamed_features_count + renamed_bugfixes_count > 0: +auto_renamed_bugfixes_count = rename_files('libnavui-androidauto/changelog/unreleased/bugfixes/') +auto_renamed_features_count = rename_files('libnavui-androidauto/changelog/unreleased/features/') + +if renamed_features_count + renamed_bugfixes_count + auto_renamed_bugfixes_count + auto_renamed_features_count > 0: repository = git.Repo('.') repository.git.add('changelog/unreleased') + repository.git.add('libnavui-androidauto/changelog/unreleased') repository.index.commit('Rename changelog files') repository.remotes.origin.push().raise_if_error() From 4b65a3052d31552cee5c5b5d7cb0d3b9c86c4037 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 3 Jan 2023 15:10:30 +0700 Subject: [PATCH 40/45] fix new line symbol --- scripts/changelog/assemble_changelog.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index 4b98fefbfe8..50808872242 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -19,6 +19,8 @@ def get_changes(path): lines_with_description.append(line) for line in lines_with_description: pr_changes = pr_changes.replace(line, line.replace('\n', '') + pr_link) + if not pr_changes.endswith('\n'): + pr_changes += '\n' changes += pr_changes return changes.strip() From 16d5cd6fb6706bfc30414d83bd362880fe19acc9 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 3 Jan 2023 15:22:27 +0700 Subject: [PATCH 41/45] actualize changelogs --- changelog/unreleased/CHANGELOG.md | 28 ------------------- changelog/unreleased/bugfixes/6760.md | 1 + changelog/unreleased/bugfixes/6774.md | 1 + .../changelog/unreleased/CHANGELOG.md | 0 4 files changed, 2 insertions(+), 28 deletions(-) create mode 100644 changelog/unreleased/bugfixes/6760.md create mode 100644 changelog/unreleased/bugfixes/6774.md create mode 100644 libnavui-androidauto/changelog/unreleased/CHANGELOG.md diff --git a/changelog/unreleased/CHANGELOG.md b/changelog/unreleased/CHANGELOG.md index e26a6976c87..e69de29bb2d 100644 --- a/changelog/unreleased/CHANGELOG.md +++ b/changelog/unreleased/CHANGELOG.md @@ -1,28 +0,0 @@ -#### Features - - -#### Bug fixes and improvements -- Added guarantees that route progress with `RouteProgress#currentState == OFF_ROUTE` arrives earlier than `NavigationRerouteController#reroute` is called. [#6764](https://github.com/mapbox/mapbox-navigation-android/pull/6764) -- :warning: Updated the `NavigationView` default navigation puck asset. [#6678](https://github.com/mapbox/mapbox-navigation-android/pull/6678) - - Previous puck can be restored by injecting `LocationPuck2D` with the `bearingImage` set to `com.mapbox.navigation.ui.maps.R.drawable.mapbox_navigation_puck_icon` drawable: - ```kotlin - navigationView.customizeViewStyles { - locationPuckOptions = LocationPuckOptions.Builder(context) - .defaultPuck( - LocationPuck2D( - bearingImage = ContextCompat.getDrawable( - context, - com.mapbox.navigation.ui.maps.R.drawable.mapbox_navigation_puck_icon, - ) - ) - ) - .idlePuck(regularPuck(context)) - .build() - } - ``` - -#### Known issues :warning: - - -#### Other changes diff --git a/changelog/unreleased/bugfixes/6760.md b/changelog/unreleased/bugfixes/6760.md new file mode 100644 index 00000000000..13a3bdac0cf --- /dev/null +++ b/changelog/unreleased/bugfixes/6760.md @@ -0,0 +1 @@ +- Fixed a rare `java.lang.NullPointerException: Attempt to read from field 'SpeechAnnouncement PlayCallback.announcement' on a null object reference` crash in `PlayCallback.getAnnouncement`. \ No newline at end of file diff --git a/changelog/unreleased/bugfixes/6774.md b/changelog/unreleased/bugfixes/6774.md new file mode 100644 index 00000000000..7ad38b72454 --- /dev/null +++ b/changelog/unreleased/bugfixes/6774.md @@ -0,0 +1 @@ +- Fixed standalone `MapboxManeuverView` appearance when the app also integrates Drop-In UI. \ No newline at end of file diff --git a/libnavui-androidauto/changelog/unreleased/CHANGELOG.md b/libnavui-androidauto/changelog/unreleased/CHANGELOG.md new file mode 100644 index 00000000000..e69de29bb2d From b084cfaceccfe4016e9ec5515499b84b77f9adb2 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Tue, 3 Jan 2023 15:27:04 +0700 Subject: [PATCH 42/45] update doc for android auto --- changelog/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/changelog/README.md b/changelog/README.md index b57ab23b620..4c04d116705 100644 --- a/changelog/README.md +++ b/changelog/README.md @@ -2,6 +2,8 @@ To avoid merge conflicts in the CHANGELOG.md file we accepted the multi-file running changelog strategy. +*This strategy works for the libnavui-androidauto project too. It works in the `libnavui-androidauto/changelog` directory* + To follow this strategy you should create a `.md` file for every PR. Choose a directory: - `changelog/unreleased/features` for **Features** changes From ffb7291b4e900d25fdb672e0ba2af30f9c461329 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 4 Jan 2023 16:10:29 +0700 Subject: [PATCH 43/45] fix skip tag --- scripts/changelog/assemble_changelog.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/changelog/assemble_changelog.py b/scripts/changelog/assemble_changelog.py index 50808872242..587c1014050 100644 --- a/scripts/changelog/assemble_changelog.py +++ b/scripts/changelog/assemble_changelog.py @@ -41,7 +41,7 @@ def get_changes(path): open('changelog/unreleased/CHANGELOG.md', 'w').write(changelog) repository = git.Repo('.') repository.git.add('changelog/unreleased') - repository.index.commit('Assemble changelog file [skip actions]') + repository.index.commit('Assemble changelog file [skip ci]') repository.remotes.origin.push().raise_if_error() auto_bugfixes = get_changes('libnavui-androidauto/changelog/unreleased/bugfixes/') @@ -56,5 +56,5 @@ def get_changes(path): open('libnavui-androidauto/changelog/unreleased/CHANGELOG.md', 'w').write(auto_changelog) repository = git.Repo('.') repository.git.add('libnavui-androidauto/changelog/unreleased') - repository.index.commit('Assemble auto changelog file [skip actions]') + repository.index.commit('Assemble auto changelog file [skip ci]') repository.remotes.origin.push().raise_if_error() From 253915e61707f2e67e465486a04515e88673c21c Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 4 Jan 2023 18:42:14 +0700 Subject: [PATCH 44/45] add changelog file script --- changelog/README.md | 3 +++ scripts/changelog/add_changelog.py | 33 ++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 scripts/changelog/add_changelog.py diff --git a/changelog/README.md b/changelog/README.md index 4c04d116705..1b621760894 100644 --- a/changelog/README.md +++ b/changelog/README.md @@ -11,6 +11,9 @@ To follow this strategy you should create a `.md` file for every PR. Choose a di - `changelog/unreleased/issues` for **Known issues :warning:** changes - `changelog/unreleased/other` for other changes +Or you can use the helper script to do it. Just call `python3 scripts/changelog/add_changelog.py -f "I have added something special"` to create a changelog file. +Call `python3 scripts/changelog/add_changelog.py -h` to get more info. + You can use anything that allow .md format in changelog files. If you have implemented several features or bugfixes you should describe all of them: diff --git a/scripts/changelog/add_changelog.py b/scripts/changelog/add_changelog.py new file mode 100644 index 00000000000..3e7b5539077 --- /dev/null +++ b/scripts/changelog/add_changelog.py @@ -0,0 +1,33 @@ +import argparse +import os + +parser = argparse.ArgumentParser(description='Add a new changelog file') + +parser.add_argument('-f', '--feature', nargs='+', help='Features') +parser.add_argument('-b', '--bugfix', nargs='+', help='Bug fixes and improvements') +parser.add_argument('-i', '--issue', nargs='+', help='Known issues :warning:') +parser.add_argument('-o', '--other', nargs='+', help='Other changes') + +args = parser.parse_args() + + +def write_file(changes, dir): + filename = 'changelog/unreleased/' + dir + '/changes.md' + os.makedirs(os.path.dirname(filename), exist_ok=True) + prepared_changes = '' + for change in changes: + prepared_changes += '- ' + change + '\n' + open(filename, 'w').write(prepared_changes) + + +if args.feature: + write_file(args.feature, 'features') + +if args.bugfix: + write_file(args.bugfix, 'bugfixes') + +if args.issue: + write_file(args.issue, 'issues') + +if args.other: + write_file(args.other, 'other') From f8d89a7eb1413c0fe3471125298aa1f45664e599 Mon Sep 17 00:00:00 2001 From: "sevastian.zhukov" Date: Wed, 4 Jan 2023 19:35:38 +0700 Subject: [PATCH 45/45] add changelog files --- changelog/unreleased/bugfixes/6466.md | 1 + changelog/unreleased/bugfixes/6766.md | 1 + changelog/unreleased/bugfixes/6770.md | 1 + 3 files changed, 3 insertions(+) create mode 100644 changelog/unreleased/bugfixes/6466.md create mode 100644 changelog/unreleased/bugfixes/6766.md create mode 100644 changelog/unreleased/bugfixes/6770.md diff --git a/changelog/unreleased/bugfixes/6466.md b/changelog/unreleased/bugfixes/6466.md new file mode 100644 index 00000000000..2c3139467aa --- /dev/null +++ b/changelog/unreleased/bugfixes/6466.md @@ -0,0 +1 @@ +- Each newly instantiated MapboxRouteArrowView class will initialize the layers with the provided options on the first render call. Previously this would only be done if the layers hadn't already been initialized. \ No newline at end of file diff --git a/changelog/unreleased/bugfixes/6766.md b/changelog/unreleased/bugfixes/6766.md new file mode 100644 index 00000000000..9b61219f81a --- /dev/null +++ b/changelog/unreleased/bugfixes/6766.md @@ -0,0 +1 @@ +- Fixed an issue where the first voice instruction might have been played twice. \ No newline at end of file diff --git a/changelog/unreleased/bugfixes/6770.md b/changelog/unreleased/bugfixes/6770.md new file mode 100644 index 00000000000..62cde79b89e --- /dev/null +++ b/changelog/unreleased/bugfixes/6770.md @@ -0,0 +1 @@ +- Introduced `NavigationViewListener.onSpeedInfoClicked` that would be triggered when `MapboxSpeedInfoView` is clicked upon. \ No newline at end of file