Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
caf1381
allow string replacements to use callback functions
tyrasd Aug 25, 2025
6f89fd1
refactor modules to avoid t.html
tyrasd Sep 1, 2025
b6646eb
also support replacement callbacks in `addOrUpdate`
tyrasd Sep 1, 2025
519dade
migrate modules away from t.html
tyrasd Sep 1, 2025
afbcc5d
add ability to trim strings, refactor restrictions editor
tyrasd Sep 1, 2025
b72da6d
migrate more modules away from t.html
tyrasd Sep 1, 2025
d3938e3
fix addOrUpdate
tyrasd Sep 1, 2025
a2a6a39
migrate remaining modules away from t.html
tyrasd Sep 1, 2025
2cac19f
Merge branch 'develop' into localizer-tokenize-replacements
tyrasd Sep 1, 2025
ffe978b
lint
tyrasd Sep 1, 2025
3daee18
make use of nestable t.append method
tyrasd Sep 1, 2025
4a14f46
bump roentgen icon set to v0.14
tyrasd Mar 19, 2026
00826b5
Bump netlify-cli from 24.0.1 to 24.1.0 (#12045)
dependabot[bot] Mar 19, 2026
0090650
update link and name of Röntgen icon set
tyrasd Mar 19, 2026
dce4f99
Prevent unused slots in the recent preset list. (#11810)
Razen04 Mar 19, 2026
1a0f1e0
fix typo in changelog for last release
tyrasd Mar 19, 2026
54e78f3
add missing username link
tyrasd Mar 19, 2026
1d7d860
Merge branch 'develop' into localizer-tokenize-replacements
tyrasd Mar 19, 2026
6100f45
Merge pull request #11347 from openstreetmap/localizer-tokenize-repla…
tyrasd Mar 19, 2026
02c0353
add #11347 to changelog
tyrasd Mar 19, 2026
7555ff8
permanently remove keepright QA layer code
tyrasd Jun 25, 2025
7a6ec0b
npm run imagery
tyrasd Mar 19, 2026
66174f2
npm run translations
tyrasd Mar 19, 2026
41a07bb
v2.39.0
tyrasd Mar 19, 2026
c9f0132
Update npm commands for releasing
tyrasd Mar 19, 2026
7dbb0bd
Set development version number
tyrasd Mar 19, 2026
0241c76
fix typo
tyrasd Mar 19, 2026
676560c
v2.39.1
tyrasd Mar 19, 2026
c7c7689
Check in build
tyrasd Mar 19, 2026
76adbb7
Check in build
tyrasd Mar 21, 2026
5fdd07a
v2.39.4: backported bugfixes
bhavyaKhatri2703 Mar 20, 2026
b9b1750
v2.39.5: backport fix regression causing strings with replacement str…
tyrasd Mar 23, 2026
0db73c0
Upstream merge
erictheise Mar 30, 2026
9460e34
Fix failing preset test by incorporating later upstream modifications.
erictheise Mar 31, 2026
f40a802
Results of npm run build
erictheise Mar 31, 2026
6429530
Update the build action
erictheise Mar 31, 2026
d81b5fc
Update the build action
erictheise Mar 31, 2026
562cb48
Update the build action
erictheise Mar 31, 2026
91f14b0
Update the build action
erictheise Mar 31, 2026
789ddab
Results of npm run build
erictheise Mar 31, 2026
d257137
Try pinning vitest in order to get around new rollup/android platform…
erictheise Mar 31, 2026
801e4c1
See if https://github.com/openstreetmap/iD/pull/12021#discussion_r298…
erictheise Mar 31, 2026
c43f5f0
Fixed tests failing due to sinon & chai issues in this upstream release.
erictheise Mar 31, 2026
75a43fe
It's all just whack-a-mole.
erictheise Mar 31, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@ jobs:
- { v: 24, isLatest: yes }

steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Use Node.js ${{ matrix.node-version.v }}
uses: actions/setup-node@v6
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ matrix.node-version.v }}
- run: npm clean-install
Expand All @@ -37,7 +37,7 @@ jobs:

- name: '[PR Preview] Upload dist folder'
if: ${{github.event_name == 'pull_request' && matrix.node-version.isLatest}}
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: dist
path: |
Expand All @@ -52,7 +52,7 @@ jobs:

- name: '[PR Preview] Upload PR metadata'
if: ${{github.event_name == 'pull_request' && matrix.node-version.isLatest}}
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: pr_metadata
path: ./pr_metadata.ini
1 change: 0 additions & 1 deletion ACCESSIBILITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,6 @@ translated to one or more languages.
| 🟠 | Locator overlay | This layer shows feature labels in their local languages | [#7737](https://github.com/openstreetmap/iD/issues/7737) |
| ✅ | OSM community index | | |
| ✅ | iD validation issues | | |
| ✅ | KeepRight issues | | |
| ✅ | Osmose issues | Translated strings are [provided by Osmose](https://app.transifex.com/openstreetmap-france/osmose/) itself, not iD | |

### Language Coverage
Expand Down
48 changes: 44 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,44 @@ _Breaking developer changes, which may affect downstream projects or sites that
-->


# Unreleased (2.39.0-dev)
# 2.39.4
##### 2026-03-23

* Fix regression where some strings (like some section headings) are not rendered correctly ([#12083])

[#12083]: https://github.com/openstreetmap/iD/issues/12083


# 2.39.4
##### 2026-03-23

* Fix title of preset search results not updating correctly ([#12050], thanks [@bhavyaKhatri2703])
* Fix user images and upload help text from showing up as duplicates in upload dialog ([#12063])
* Fix crash when a checkbox-field is rendered using a custom (non-`yes/no`) value ([#12078])

[#12050]: https://github.com/openstreetmap/iD/issues/12050
[#12063]: https://github.com/openstreetmap/iD/issues/12063
[#12078]: https://github.com/openstreetmap/iD/issues/12078


# 2.39.3
##### 2026-03-21

* Revert: When changing presets, delete tags from the old preset which are not in the new preset ([#12068])

[#12068]: https://github.com/openstreetmap/iD/issues/12068


# 2.39.2
##### 2026-03-19

* Fix a bug where iD would crash when the "Style Options" submenu is expanded during startup ([0241c765])

[0241c765]: https://github.com/openstreetmap/iD/commit/0241c7653d4a93692f59b7aa1021242e63a3de72)


# 2.39.0
##### 2026-03-19

#### :sparkles: Usability & Accessibility
* Increase number of displayed _recently used presets_ to 8 (from 4) ([#9545], thanks [@k-yle])
Expand Down Expand Up @@ -67,8 +104,6 @@ _Breaking developer changes, which may affect downstream projects or sites that
#### :earth_asia: Localization
* Support territory-level phone hints ([#10904], thanks [@Vectorial1024])
* Add phone and address format for Moldova ([#11965], [#11976], thanks [@Oni-DOS])
#### :hourglass: Performance
#### :mortar_board: Walkthrough / Help
#### :rocket: Presets
* When changing presets, delete tags from the old preset which are not in the new preset ([#11696], thanks [@k-yle])
#### :hammer: Development
Expand All @@ -77,6 +112,7 @@ _Breaking developer changes, which may affect downstream projects or sites that
* Replace `lodash` with `es-toolkit` ([#12016], thanks [@tordans])
* Replace `fast-deep-equals` with `fast-equals` ([#12021], thanks [@tordans])
* Add type definitions to some util functions ([#11993], thanks [@k-yle])
* Localizer module: allow string replacements to use callback functions ([#11347])


[#8265]: https://github.com/openstreetmap/iD/issues/8265
Expand All @@ -93,6 +129,7 @@ _Breaking developer changes, which may affect downstream projects or sites that
[#11017]: https://github.com/openstreetmap/iD/issues/11017
[#11052]: https://github.com/openstreetmap/iD/pull/11052
[#11329]: https://github.com/openstreetmap/iD/issues/11329
[#11347]: https://github.com/openstreetmap/iD/pull/11347
[#11388]: https://github.com/openstreetmap/iD/pull/11388
[#11645]: https://github.com/openstreetmap/iD/pull/11645
[#11661]: https://github.com/openstreetmap/iD/pull/11661
Expand All @@ -115,9 +152,10 @@ _Breaking developer changes, which may affect downstream projects or sites that
[@Oni-DOS]: https://github.com/Oni-DOS
[@sezerbozbiyik]: https://github.com/sezerbozbiyik
[@mykh-hailo]: https://github.com/mykh-hailo
[@Sembauke]: https://github.com/Sembauke


# 2.38.0-dev
# 2.38.0
##### 2026-03-02

#### :sparkles: Usability & Accessibility
Expand Down Expand Up @@ -166,6 +204,7 @@ _Breaking developer changes, which may affect downstream projects or sites that
* Replace deprecated `document.createEvent`/`initEvent` with modern Event constructor ([#11871], thanks [@JaiswalShivang])
* Fix crash in country combo field when entering unrecognized ISO country codes ([#11904], thanks [@JaiswalShivang])
* Upgrade clipboard functionality with modern Clipboard API ([#11869], thanks [@tulavamsidheeraj])
* Ensure the recent presets list is always full by filtering for location before limiting the count. ([#11405], thanks [@Razen04])


[#8464]: https://github.com/openstreetmap/iD/issues/8464
Expand Down Expand Up @@ -205,6 +244,7 @@ _Breaking developer changes, which may affect downstream projects or sites that
[ffc7e2135]: https://github.com/openstreetmap/iD/commit/ffc7e2135
[be0a20e59]: https://github.com/openstreetmap/iD/commit/be0a20e59
[b06496780]: https://github.com/openstreetmap/iD/commit/b06496780
[#11405]: https://github.com/openstreetmap/iD/issues/11405
[#id-tagging-schema/pull/1507]: https://github.com/openstreetmap/id-tagging-schema/pull/1507
[@ilias52730]: https://github.com/ilias52730
[@Razen04]: https://github.com/Razen04
Expand Down
3 changes: 2 additions & 1 deletion RELEASING.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ on the iD project, and then create this file with contents like

```bash
git checkout develop
npm install --save-dev editor-layer-index --omit=dev
npm clean-install
npm install editor-layer-index
npm run imagery
npm run all
git add . && git commit -m 'npm run imagery'
Expand Down Expand Up @@ -56,6 +56,7 @@ git push origin -f release "v$ID_VERSION"
#### Push release to npm

```bash
npm login
npm publish
```

Expand Down
3 changes: 1 addition & 2 deletions css/20_map.css
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,7 @@

/* No interactivity except what we specifically allow */
.data-layer.osm *,
.data-layer.notes *,
.data-layer.keepRight * {
.data-layer.notes * {
pointer-events: none;
}

Expand Down
74 changes: 0 additions & 74 deletions css/65_data.css
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
/* OSM Notes and QA Layers */

.qa-header-icon .qaItem-fill,
.layer-keepRight .qaItem .qaItem-fill,
.layer-osmose .qaItem .qaItem-fill {
stroke: #333;
stroke-width: 1.3px; /* NOTE: likely a better way to scale the icon stroke */
Expand Down Expand Up @@ -53,79 +52,6 @@
justify-content: center;
}

/* Keep Right Issues
------------------------------------------------------- */
.keepRight.itemType-20, /* multiple nodes on same spot */
.keepRight.itemType-40, /* impossible oneways */
.keepRight.itemType-210, /* self intersecting ways */
.keepRight.itemType-270, /* unusual motorway connection */
.keepRight.itemType-310, /* roundabout issues */
.keepRight.itemType-320, /* improper _link */
.keepRight.itemType-350 { /* improper bridge tag */
color: #ff9;
}

.keepRight.itemType-50 { /* almost junctions */
color: #88f;
}

.keepRight.itemType-60, /* deprecated tags */
.keepRight.itemType-70, /* tagging issues */
.keepRight.itemType-90, /* motorway without ref */
.keepRight.itemType-100, /* place of worship without religion */
.keepRight.itemType-110, /* poi without name */
.keepRight.itemType-150, /* railway crossing without tag */
.keepRight.itemType-220, /* misspelled tag */
.keepRight.itemType-380 { /* non-physical sport tag */
color: #5d0;
}

.keepRight.itemType-130 { /* disconnected ways */
color: #fa3;
}

.keepRight.itemType-170 { /* FIXME tag */
color: #ff0;
}

.keepRight.itemType-190 { /* intersection without junction */
color: #f33;
}

.keepRight.itemType-200 { /* overlapping ways */
color: #fdbf6f;
}

.keepRight.itemType-160, /* railway layer conflict */
.keepRight.itemType-230 { /* layer conflict */
color: #b60;
}

.keepRight.itemType-280 { /* boundary issues */
color: #5f47a0;
}

.keepRight.itemType-180, /* relation without type */
.keepRight.itemType-290 { /* turn restriction issues */
color: #ace;
}

.keepRight.itemType-300, /* missing maxspeed */
.keepRight.itemType-390 { /* missing tracktype */
color: #090;
}

.keepRight.itemType-360, /* language unknown */
.keepRight.itemType-370, /* doubled places */
.keepRight.itemType-410 { /* website issues */
color: #f9b;
}

.keepRight.itemType-120, /* way without nodes */
.keepRight.itemType-400 { /* geometry / turn angles */
color: #c35;
}

/* Custom Map Data (geojson, gpx, kml, vector tile) */
.layer-mapdata {
pointer-events: none;
Expand Down
7 changes: 2 additions & 5 deletions css/80_app.css
Original file line number Diff line number Diff line change
Expand Up @@ -2406,11 +2406,8 @@ input.date-selector {
user-select: none;
}

.restriction-help span {
margin: 2px;
}

.restriction-help .qualifier {
margin: 2px;
color: #666;
font-weight: bold;
}
Expand Down Expand Up @@ -5062,7 +5059,7 @@ img.tile-debug {
margin-left: 5px;
}

.user-list a:not(:last-child):after {
.user-list a:not(:last-of-type):after {
content: ', ';
}

Expand Down
Loading