﻿ticket	summary	component	version	type	owner	status	created	_changetime	_description	_reporter
17858	OpenWebStart/Java 17 migration	Core		enhancement	Don-vip	assigned	2019-06-26T21:08:56+02:00	2026-11-10T09:28:28+01:00	"Things are starting to take shape with what comes after Java WebStart (see #16047):

https://openwebstart.com/

Original 2019 plan:

On the current roadmap, the first version will be released end of October. A macro planning for a Java 8 => Java 11 transitions for all JOSM users would roughly look like this:
- September 2019: we start testing OpenWebStart on all platforms. Likely we'll found a lot of bugs
- November 2019 : first OpenWebStart version. Unlikely to fix all bugs we'll find
- Somewhere in 2020: OpenWebStart version without any bug impacting us, we start asking everyone to switch
- End of 2020: End of Java WebStart support by Oracle for Java 8. We force everyone to switch
- Somewhere in 2021: Enough JOSM users have switched to OpenWebStart so we can consider moving the codebase to Java 11.

New 2021 plan:

- 2021-03-28: ask Oracle Java WebStart users to switch to OpenWebStart => r17679
- 2021-08-22: new Windows package that includes Java 16 => r18151:18155
- 2021-08-22: include JavaFX 16 in macOS and Windows packages => r18161
- 2021-08-22: update JNLP files to request Azul JVM from OpenWebStart as it includes JavaFX => r18158:18159
- 2021-08-22: update Debian/Ubuntu launch script to depend on openjfx => r18160
- 2021-09-15: Java 17 is released. Switch macOS / Windows packages to Java 17 and JavaFX 17, update Debian/Ubuntu launch script to prefer 17 over 11 and 8 => r18225
- 2022-04-21: Ubuntu 22.04 LTS is released and ships Java 17 (note: `default-jre` is Java 11)
- 2022-11-25: OpenWebStart [https://github.com/karakun/OpenWebStart/issues/495 adds Java 17] to their [https://download-openwebstart.com/jvms.json JVM list] => [https://github.com/karakun/OpenWebStart/commit/3a259ad0a10ce4b913f30c69bdbffccb340bdd5d done]
- somewhere in 2023/2024: Enough JOSM users are now using Java 17+ so we can consider moving the codebase to Java 17.
- 2024-04-25: Ubuntu 24.04 LTS is released and ships Java 17+ as default; Debian Bookworm already ships Java 17 as default.

Java 21 followup: #23564"	Don-vip
25023	[Patch] Fixed Sonar issues in MapCSSRule and created test cases	Core		task	team	new	2026-11-09T23:12:42+01:00	2026-11-10T07:59:07+01:00	"The 'compareTo(MapCSSRule o)' method has been adjusted, 'equals(Object obj)' and 'hashCode()' have been added, and a class containing appropriate test cases has been created. Furthermore, curly braces have been added to control structures, and fields and variables have been declared as 'final'.
See: https://josm.openstreetmap.de/sonar/project/issues?s=TYPE_SEVERITY&issueStatuses=CONFIRMED%2COPEN&types=BUG&id=josm&open=c2a23554-402b-4047-9dad-69c10d8624e3"	DanProgs <Abenteurer.2901@…>
25022	Cryptic message: placeholder way in relation	Core	latest	defect	osm@…	needinfo	2026-11-09T23:01:43+01:00	2026-11-10T07:57:39+01:00	"The OSM server 'https://api.openstreetmap.org/api/0.6/' reported a bad request.
Error message(untranslated): Placeholder way not found for reference -621 in relation -491"	osm@…
25021	[Patch] Fixed Sonar issues in VectorDataSet and added test cases	Core		task	team	new	2026-11-09T22:25:39+01:00	2026-11-10T07:57:10+01:00	"The synchronization involving 'synchronized (dataMap)' has been revised, and appropriate test cases have been added. Furthermore, curly braces have been included for control structures, and fields and variables have been declared as 'final'.
See: https://josm.openstreetmap.de/sonar/project/issues?s=TYPE_SEVERITY&issueStatuses=CONFIRMED%2COPEN&types=BUG&id=josm&open=AZARtDnKec01mofXP-kU"	DanProgs <Abenteurer.2901@…>
25012	[PATCH] NullPointerException in ParallelWayAction.mouseDragged after JOSM loses focus mid-drag	Core		defect	wangi	assigned	2026-11-08T07:08:44+01:00	2026-11-10T06:43:16+01:00	"==== What steps will reproduce the problem?

1. Switch to Parallel mode (Shift+P), select a way (or several ways forming a branchless path) and start dragging to create a parallel copy. Keep the left mouse button pressed and drag roughly halfway.
2. Without releasing the button, switch to another window (e.g. trigger screenshot tool by Win+Shift+S, or switch window by Alt+Tab) to let JOSM main window loss focus.
3. Return to JOSM. The parallel-way preview stays frozen at the position where dragging was interrupted, and it no longer follows the mouse.
4. Press and drag again.

==== What is the expected result?

The interrupted drag should be discarded: the tool should return to its normal (not dragging) state, the stale preview should disappear, and the next mouse press should start a clean operation. No exception should be thrown.

==== What happens instead?

A NullPointerException is thrown on the AWT event dispatch thread and JOSM reports an internal error. The parallel-way preview also stays visible and frozen, and a subsequent plain click may unexpectedly clear the selection instead of selecting a way.

==== Please provide any additional information below. Attach a screenshot if possible.

This may caused by ""mode"" and ""pWays"" out of sync.

Normally, the two fields ""mode"" and ""pWays"" must always be consistent (i.e. mode == Mode.DRAGGING implies pWays != null). But if JOSM loses focus when dragging:

1. When the window loses focus during a drag, the mouseReleased event is never delivered, so mouseReleased() is not called. The action therefore stays in the ""dragging"" state forever: mode == Mode.DRAGGING, mouseIsDown == true, mouseHasBeenDragged == true, and pWays still points to the preview object.

2. On the next mousePressed(MouseEvent), the existing pWays is discarded:
       if (pWays != null && pWays.getWays() != null) {
           ... clearSelection(ways);
           pWays = null;
       }
   but mode and mouseIsDown/mouseHasBeenDragged are not reset at this point. Normally this is masked because mouseReleased() resets them, but in this scenario mouseReleased() has already been lost.

3. The subsequent mouseDragged(MouseEvent) passes the checks at the top of the method (mouseIsDown is still true, and the INITIAL_MOVE_DELAY of 200 ms has already elapsed), but the block ""if (mode == Mode.NORMAL) { ... initParallelWays(...) }"" is skipped because mode is still DRAGGING. Execution falls through to:

       ParallelWays.ClosestPoint closest = pWays.closestPoint(enp);   // pWays == null

   which throws:

       java.lang.NullPointerException: Cannot invoke
       ""org.openstreetmap.josm.actions.mapmode.ParallelWays.closestPoint(org.openstreetmap.josm.data.coor.EastNorth)""
       because ""this.pWays"" is null
           at org.openstreetmap.josm.actions.mapmode.ParallelWayAction.mouseDragged(ParallelWayAction.java:407)

So the combination ""mode == DRAGGING while pWays == null"" should be what triggers the crash.

The screenshot tool is just one easy way to lose the mouseReleased event; alt-tabbing, a popup window stealing the button release, or a modal dialog appearing mid-drag should have the same effect.

It might be helpful to reset the whole drag state in mousePressed():

    // before starting a new press, discard any drag that did not end properly
    mouseHasBeenDragged = false;
    if (pWays != null) {
        final List<Way> ways = new ArrayList<>(pWays.getWays());
        ways.removeIf(w -> w.getDataSet() == null);
        getLayerManager().getEditDataSet().clearSelection(ways);
        pWays = null;
        setMode(Mode.NORMAL);          // keep mode consistent with pWays == null
        temporaryLayer.invalidate();   // drop the stale preview
    }

Or to validate the state at the start of mouseDragged():

    if (!mouseIsDown)
        return;
    if (mode == Mode.DRAGGING && pWays == null) { // previous drag did not end properly
        setMode(Mode.NORMAL);
        resetMouseTrackingState();
        return;
    }




{{{
Revision:19678
Build-Date:2026-11-05 12:52:25

Identification: JOSM/1.5 (19678 zh_CN) Windows 10 64-Bit
OS Build number: Windows 10 Home China 22H2 (19045)
Memory Usage: 352 MB / 11808 MB (94 MB allocated, but free)
Java version: 21.0.13+9-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920x1080x32bpp@60Hz (scaling 1.00×1.00) \Display1 1080x1920x32bpp@60Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1920
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: GBK
Locale info: zh_CN
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=1.5.19678, -XX:MaxRAMPercentage=75.0, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djpackage.app-path=F:\ExternalAppData\JOSM\JOSM.exe]
Dataset consistency test: No problems found

Plugins:
+ BetterIME (1.2.0)
+ Columbina (1.0.4)
+ FastDraw (36503)
+ MaalausPRO (1.0.0)
+ MakeParallel (v1.1.0)
+ PicLayer (275)
+ RoadRailAlignment (0.2.3)
+ alignways (36493)
+ apache-commons (36483)
+ areaselector (372)
+ austriaaddresshelper (107)
+ buildings_tools (36503)
+ ejml (36483)
+ importvec (36504)
+ laplacian-smooth (4.9.1)
+ log4j (36483)
+ measurement (36503)
+ reverter (36503)
+ shrinkwrap (v1.1.3)
+ splinex (36483)
+ utilsplugin2 (36503)

Tagging presets:
+ https://github.com/OGFlab/name-suggestion-index/raw/main/dist/presets/nsi-josm-presets.xml
+ D:\地图和其它\OGF-Citō\OGF_hx_preset.xml

Map paint styles:
+ https://josm.openstreetmap.de/josmfile?page=Styles/MapWithAI&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/iD&zip=1

Last errors/warnings:
- 00017.077 E: 定位影像“mapmode/maalaus”时失败
- 00069.417 E: Handled by bug report queue: java.lang.NullPointerException: Cannot invoke ""org.openstreetmap.josm.actions.mapmode.ParallelWays.closestPoint(org.openstreetmap.josm.data.coor.EastNorth)"" because ""this.pWays"" is null
- 00069.422 E: Handled by bug report queue: java.lang.NullPointerException: Cannot invoke ""org.openstreetmap.josm.actions.mapmode.ParallelWays.closestPoint(org.openstreetmap.josm.data.coor.EastNorth)"" because ""this.pWays"" is null

OSM API: https://opengeofiction.net/api


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (40) of main
java.lang.NullPointerException: Cannot invoke ""org.openstreetmap.josm.actions.mapmode.ParallelWays.closestPoint(org.openstreetmap.josm.data.coor.EastNorth)"" because ""this.pWays"" is null
	at org.openstreetmap.josm.actions.mapmode.ParallelWayAction.mouseDragged(ParallelWayAction.java:407)
	at java.desktop/java.awt.AWTEventMulticaster.mouseDragged(Unknown Source)
	at java.desktop/java.awt.Component.processMouseMotionEvent(Unknown Source)
	at java.desktop/javax.swing.JComponent.processMouseMotionEvent(Unknown Source)
	at java.desktop/java.awt.Component.processEvent(Unknown Source)
	at java.desktop/java.awt.Container.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
}}}
"	daredemodaisuki
25019	[Patch] AIOOB after double click in TagMerger Dialog	Core		defect	team	new	2026-11-09T17:11:57+01:00	2026-11-10T06:37:01+01:00	"==== What steps will reproduce the problem?
1. 
2. 
3. 

==== What is the expected result?

==== What happens instead?

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Revision:19678
Build-Date:2026-11-05 12:52:25

Identification: JOSM/1.5 (19678 en) Windows 10 64-Bit
OS Build number: Windows 10 Pro 22H2 (19045)
Memory Usage: 492 MB / 6076 MB (111 MB allocated, but free)
Java version: 21.0.13+9-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1366x768x32bpp@60Hz (scaling 1.00×1.00) \Display1 1920x1080x32bpp@59Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1257
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=1.5.19678, -XX:MaxRAMPercentage=75.0, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djpackage.app-path=%UserProfile%\AppData\Local\JOSM\JOSM.exe]
Dataset consistency test: No problems found

Last errors/warnings:
- 68600.173 W: Image not returned for tile: https://geoserver.osm.lat/geoserver/FlyNorth/ows?FORMAT=image/png&TRANSPARENT=TRUE&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=&STYLES=&CRS=EPSG:3857&WIDTH=512&HEIGHT=512&BBOX=-8426494.4351861,534906.3239397,-8426417.9981578,534982.7609679 content type was: text/xml;charset=utf-8
- 68600.184 W: Image not returned for tile: https://geoserver.osm.lat/geoserver/FlyNorth/ows?FORMAT=image/png&TRANSPARENT=TRUE&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=&STYLES=&CRS=EPSG:3857&WIDTH=512&HEIGHT=512&BBOX=-8426341.5611295,534906.3239397,-8426265.1241013,534982.7609679 content type was: text/xml;charset=utf-8
- 68600.184 W: Image not returned for tile: https://geoserver.osm.lat/geoserver/FlyNorth/ows?FORMAT=image/png&TRANSPARENT=TRUE&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=&STYLES=&CRS=EPSG:3857&WIDTH=512&HEIGHT=512&BBOX=-8426341.5611295,534906.3239397,-8426265.1241013,534982.7609679 content type was: text/xml;charset=utf-8
- 141807.397 W: Unknown remote control parameter title, skipping it
- 154685.010 E: Error header: Version mismatch: Provided 2, server had: 3 of Way 806197832
- 154685.211 E: Conflicts detected - <html>Uploading <strong>failed</strong> because the server has a newer version of one<br>of your nodes, ways, or relations.<br>The conflict is caused by the <strong>way</strong> with id <strong>806 197 832</strong>,<br>the server has version 3, your version is 2.<br><br>Click <strong>Synchronize way 806 197 832 only</strong> to synchronize the conflicting primitive only.<br>Click <strong>Synchronize entire dataset</strong> to synchronize the entire local dataset with the server.<br>Click <strong>Cancel</strong> to abort and continue editing.<br></html>
- 154720.486 W: Conflicts detected - <html>There were 6 conflicts detected.</html>
- 154730.731 W: Warning - <html>The data to be uploaded participates in unresolved conflicts of layer 'OSM Data'.<br>You have to resolve them first.</html>
- 154750.095 W: Warning - <html>The data to be uploaded participates in unresolved conflicts of layer 'OSM Data'.<br>You have to resolve them first.</html>
- 154845.525 E: Handled by bug report queue: java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 5



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (31) of main
java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 5
	at java.base/jdk.internal.util.Preconditions.outOfBounds(Unknown Source)
	at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Unknown Source)
	at java.base/jdk.internal.util.Preconditions.checkIndex(Unknown Source)
	at java.base/java.util.Objects.checkIndex(Unknown Source)
	at java.base/java.util.ArrayList.get(Unknown Source)
	at org.openstreetmap.josm.gui.conflict.pair.tags.TagMergeModel.rememberDecision(TagMergeModel.java:133)
	at org.openstreetmap.josm.gui.conflict.pair.tags.TagMergeModel.decide(TagMergeModel.java:145)
	at org.openstreetmap.josm.gui.conflict.pair.tags.TagMerger$DoubleClickAdapter.mouseClicked(TagMerger.java:295)
	at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(Unknown Source)
	at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
	at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.Component.processEvent(Unknown Source)
	at java.desktop/java.awt.Container.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.WaitDispatchSupport$2.run(Unknown Source)
	at java.desktop/java.awt.WaitDispatchSupport$4.run(Unknown Source)
	at java.desktop/java.awt.WaitDispatchSupport$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.desktop/java.awt.WaitDispatchSupport.enter(Unknown Source)
	at java.desktop/java.awt.Dialog.show(Unknown Source)
	at java.desktop/java.awt.Component.show(Unknown Source)
	at java.desktop/java.awt.Component.setVisible(Unknown Source)
	at java.desktop/java.awt.Window.setVisible(Unknown Source)
	at java.desktop/java.awt.Dialog.setVisible(Unknown Source)
	at org.openstreetmap.josm.gui.ExtendedDialog.setVisible(ExtendedDialog.java:468)
	at org.openstreetmap.josm.gui.ExtendedDialog.showDialog(ExtendedDialog.java:260)
	at org.openstreetmap.josm.gui.dialogs.ConflictDialog.resolve(ConflictDialog.java:217)
	at org.openstreetmap.josm.gui.dialogs.ConflictDialog$ResolveAction.actionPerformed(ConflictDialog.java:482)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
	at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
	at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.Component.processEvent(Unknown Source)
	at java.desktop/java.awt.Container.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
}}}
"	anonymous
25017	[patch] Fix Sonar issues in TagChecker	Core		task	team	new	2026-11-08T22:12:16+01:00	2026-11-10T05:49:33+01:00	"The NullPointerException has been fixed. Furthermore, guard clauses have been implemented, curly braces have been added back to control structures, and fields and variables have been declared as ""final"".
See: https://josm.openstreetmap.de/sonar/project/issues?issueStatuses=CONFIRMED%2COPEN&types=BUG&open=AXvWAEXUyP4JTgY8QMT7&id=josm&s=TYPE_SEVERITY"	DanProgs <Abenteurer.2901@…>
25020	JOSM can’t load it	Plugin mapwithai		defect	taylor.smock	new	2026-11-09T17:50:27+01:00	2026-11-09T17:50:27+01:00	“mapwithai.jar v851 from the plugin list has a MANIFEST.MF without Plugin-Class, Plugin-Mainversion and Plugin-Version, so JOSM can’t load it.”	anonymous
25018	na importação de imagem georeferenciada com o QGIS ocorreu erro.	Core		defect	team	new	2026-11-08T23:33:26+01:00	2026-11-08T23:33:26+01:00	"==== What steps will reproduce the problem?
1. 
2. 
3. 

==== What is the expected result?

==== What happens instead?

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Revision:19678
Build-Date:2026-11-05 12:52:21

Identification: JOSM/1.5 (19678 pt_BR) Windows 10 64-Bit
OS Build number: Windows 10 Pro 1703 (15063)
Memory Usage: 364 MB / 6068 MB (66 MB allocated, but free)
Java version: 25.0.5+8-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1366x768x32bpp@60Hz (scaling 1.00×1.00) \Display1 1024x768x32bpp@60Hz (scaling 1.00×1.00)
Maximum Screen Size: 1366×768
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1252
Locale info: pt_BR
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=1.5.19678, -XX:MaxRAMPercentage=75.0, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djpackage.app-path=%UserProfile%\AppData\Local\JOSM\JOSM.exe]

Plugins:
+ AddrInterpolation (36503)
+ FastDraw (36503)
+ MakeParallel (v1.1.0)
+ Mapillary (1822)
+ buildings_tools (36503)
+ contourmerge (v0.2.3)
+ gridify (61)
+ josm_magic_wand (3.0.0)
+ mapathoner (v1.7.4)
+ markseen (184)
+ todo (159)
+ utilsplugin2 (36503)

Last errors/warnings:
- 00000.604 W: extended font config - overriding 'filename.Malgun_Gothic=malgun.ttf' with 'MALGUN.TTF'
- 00000.606 W: extended font config - overriding 'filename.Myanmar_Text=mmrtext.ttf' with 'MMRTEXT.TTF'
- 00000.606 W: extended font config - overriding 'filename.Mongolian_Baiti=monbaiti.ttf' with 'MONBAITI.TTF'
- 00001.229 E: java.security.KeyStoreException: Windows-ROOT not found. Causa: java.security.NoSuchAlgorithmException: Windows-ROOT KeyStore not available
- 00001.481 W: Faltando versão principal do plugin no plugin mapwithai
- 00002.301 W: Faltando versão principal do plugin no plugin mapwithai
- 00123.891 E: Handled by bug report queue: java.lang.NullPointerException: Cannot invoke ""org.openstreetmap.josm.gui.layer.geoimage.SynchronizeTimeFromPhotoDialog$TimeZoneItem.getID()"" because ""selectedTz"" is null



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (33) of main
java.lang.NullPointerException: Cannot invoke ""org.openstreetmap.josm.gui.layer.geoimage.SynchronizeTimeFromPhotoDialog$TimeZoneItem.getID()"" because ""selectedTz"" is null
	at org.openstreetmap.josm.gui.layer.geoimage.CorrelateGpxWithImages$SetOffsetActionListener.actionPerformed(CorrelateGpxWithImages.java:362)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
	at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.Component.processEvent(Unknown Source)
	at java.desktop/java.awt.Container.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)

=== RUNNING THREADS ===
Thread: Signal Dispatcher (13) of system

Thread: AWT-Windows (30) of system
java.desktop@25.0.5/sun.awt.windows.WToolkit.eventLoop(Native Method)
java.desktop@25.0.5/sun.awt.windows.WToolkit.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: Attach Listener (14) of system

Thread: Weak reference cleaner (38) of main
java.base@25.0.5/java.lang.Object.wait0(Native Method)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.ref.ReferenceQueue.remove0(Unknown Source)
java.base@25.0.5/java.lang.ref.ReferenceQueue.remove(Unknown Source)
app//org.openstreetmap.josm.tools.ListenableWeakReference.clean(ListenableWeakReference.java:60)
app//org.openstreetmap.josm.tools.ListenableWeakReference$$Lambda/0x000000003447ed40.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: Finalizer (12) of system
java.base@25.0.5/java.lang.Object.wait0(Native Method)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.ref.ReferenceQueue.remove0(Unknown Source)
java.base@25.0.5/java.lang.ref.ReferenceQueue.remove(Unknown Source)
java.base@25.0.5/java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)

Thread: message-notifier-0 (57) of main
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
java.base@25.0.5/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.base@25.0.5/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: DestroyJavaVM (60) of main

Thread: AWT-EventQueue-0 (33) of main
Stacktrace see above.

Thread: AWT-Shutdown (29) of system
java.base@25.0.5/java.lang.Object.wait0(Native Method)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.desktop@25.0.5/sun.awt.AWTAutoShutdown.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: File Watcher (37) of main
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.unmanagedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.managedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.base@25.0.5/java.util.concurrent.LinkedBlockingDeque.takeFirst(Unknown Source)
java.base@25.0.5/java.util.concurrent.LinkedBlockingDeque.take(Unknown Source)
java.base@25.0.5/sun.nio.fs.AbstractWatchService.take(Unknown Source)
app//org.openstreetmap.josm.io.FileWatcher.processEvents(FileWatcher.java:120)
app//org.openstreetmap.josm.io.FileWatcher$$Lambda/0x0000000034443390.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: RemoteControl HTTP Server (56) of main
java.base@25.0.5/sun.nio.ch.Net.accept(Native Method)
java.base@25.0.5/sun.nio.ch.NioSocketImpl.accept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.implAccept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.platformImplAccept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.implAccept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.implAccept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.accept(Unknown Source)
app//org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104)

Thread: ForkJoinPool.commonPool-worker-4 (79) of InnocuousForkJoinWorkerThreadGroup
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.deactivate(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: image-fetcher-0 (50) of main
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.unmanagedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.managedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.base@25.0.5/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: RemoteControl HTTP Server (55) of main
java.base@25.0.5/sun.nio.ch.Net.accept(Native Method)
java.base@25.0.5/sun.nio.ch.NioSocketImpl.accept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.implAccept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.platformImplAccept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.implAccept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.implAccept(Unknown Source)
java.base@25.0.5/java.net.ServerSocket.accept(Unknown Source)
app//org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104)

Thread: main-worker-0 (32) of main
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.unmanagedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.managedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.base@25.0.5/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: CacheEventQueue.QProcessor-TMS_BLOCK_v2Thread-2 (53) of main
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.unmanagedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.managedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.base@25.0.5/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: ForkJoinPool.commonPool-worker-6 (81) of InnocuousForkJoinWorkerThreadGroup
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.deactivate(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: TimerQueue (34) of system
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
java.base@25.0.5/java.util.concurrent.DelayQueue.take(Unknown Source)
java.desktop@25.0.5/javax.swing.TimerQueue.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: Timer-2 (71) of main
java.base@25.0.5/java.lang.Object.wait0(Native Method)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.util.TimerThread.mainLoop(Unknown Source)
java.base@25.0.5/java.util.TimerThread.run(Unknown Source)

Thread: Map Status Collector (78) of main
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.unmanagedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.managedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.base@25.0.5/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
app//org.openstreetmap.josm.gui.MapStatus$Collector.run(MapStatus.java:441)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: JCS-ElementEventQueue-Thread-1 (52) of main
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.unmanagedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.managedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.base@25.0.5/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: Swing-Shell (73) of system
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.park(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.unmanagedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.managedBlock(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
java.base@25.0.5/java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.desktop@25.0.5/sun.awt.shell.Win32ShellFolderManager2$ComInvoker$1.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: Notification Thread (20) of system

Thread: Timer-1 (65) of main
java.base@25.0.5/java.lang.Object.wait0(Native Method)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.util.TimerThread.mainLoop(Unknown Source)
java.base@25.0.5/java.util.TimerThread.run(Unknown Source)

Thread: changeset-updater-0 (58) of main
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
java.base@25.0.5/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
java.base@25.0.5/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.base@25.0.5/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: Reference Handler (11) of system
java.base@25.0.5/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
java.base@25.0.5/java.lang.ref.Reference.processPendingReferences(Unknown Source)
java.base@25.0.5/java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)

Thread: Java2D Disposer (27) of system
java.base@25.0.5/java.lang.Object.wait0(Native Method)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.ref.ReferenceQueue.remove0(Unknown Source)
java.base@25.0.5/java.lang.ref.ReferenceQueue.remove(Unknown Source)
java.desktop@25.0.5/sun.java2d.Disposer.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)

Thread: FileSystemWatchService (36) of InnocuousThreadGroup
java.base@25.0.5/sun.nio.fs.WindowsNativeDispatcher.GetQueuedCompletionStatus0(Native Method)
java.base@25.0.5/sun.nio.fs.WindowsNativeDispatcher.GetQueuedCompletionStatus(Unknown Source)
java.base@25.0.5/sun.nio.fs.WindowsWatchService$Poller.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)
java.base@25.0.5/jdk.internal.misc.InnocuousThread.run(Unknown Source)

Thread: Common-Cleaner (21) of InnocuousThreadGroup
java.base@25.0.5/java.lang.Object.wait0(Native Method)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.lang.ref.ReferenceQueue.remove0(Unknown Source)
java.base@25.0.5/java.lang.ref.ReferenceQueue.remove(Unknown Source)
java.base@25.0.5/jdk.internal.ref.CleanerImpl.run(Unknown Source)
java.base@25.0.5/java.lang.Thread.runWith(Unknown Source)
java.base@25.0.5/java.lang.Thread.run(Unknown Source)
java.base@25.0.5/jdk.internal.misc.InnocuousThread.run(Unknown Source)

Thread: ForkJoinPool.commonPool-worker-5 (80) of InnocuousForkJoinWorkerThreadGroup
java.base@25.0.5/jdk.internal.misc.Unsafe.park(Native Method)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.deactivate(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
java.base@25.0.5/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

Thread: Timer-0 (62) of main
java.base@25.0.5/java.lang.Object.wait0(Native Method)
java.base@25.0.5/java.lang.Object.wait(Unknown Source)
java.base@25.0.5/java.util.TimerThread.mainLoop(Unknown Source)
java.base@25.0.5/java.util.TimerThread.run(Unknown Source)
}}}
"	anonymous
25016	ImageIO crashes Imagery Preferences	Plugin ImageIO		defect	team	new	2026-11-08T22:00:48+01:00	2026-11-08T22:26:09+01:00	"==== What steps will reproduce the problem?
1. Open Imagery Preferences
2. Click OK (no changes are needed)
3. You'll get an unhandled exception alert. You may choose either Update or Keep this plugin but you'll get the error report window anyway.

==== What is the expected result?

No crash, imagery preferences saved.

==== What happens instead?

The plugin crashes, imagery preferences aren't saved.

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2026-11-04 14:01:56 +0100 (Wed, 04 Nov 2026)
Revision:19678
Build-Date:2026-11-07 02:30:57
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19678 hu) Windows 10 64-Bit
OS Build number: Windows 10 Pro 22H2 (19045)
Memory Usage: 438 MB / 4050 MB (209 MB allocated, but free)
Java version: 25.0.4.1+1-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: \Display0 1920x1080x32bpp@60Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1250
Locale info: hu_US
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [--module-path=<josm.pref>\graaljs-25.0.2\lib, --add-modules=org.graalvm.polyglot,org.graalvm.word,org.graalvm.collections]

Plugins:
+ FastDraw (36503)
+ ImageIO (36483)
+ PicLayer (275)
+ apache-commons (36483)
+ auto_tools (90)
+ buildings_tools (36503)
+ ejml (36483)
+ geotools (36483)
+ http2 (36483)
+ imagery-xml-bounds (36483)
+ imagery_offset_db (36503)
+ jackson (36502)
+ jaxb (36483)
+ jts (36483)
+ measurement (36503)
+ opendata (36503)
+ pbf (36493)
+ pdfimport (36503)
+ photo_geotagging (36503)
+ photoadjust (36503)
+ reverter (36503)
+ scripting (v0.4.3)
+ turnrestrictions (36503)
+ utilsplugin2 (36503)

Tagging presets:
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/HU.zip
+ https://josm.openstreetmap.de/josmfile?page=Presets/Turistautkapcsolat&zip=1

Map paint styles:
+ https://josm.openstreetmap.de/josmfile?page=Styles/iD&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/HU-HighlightHikingTrailSigns&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Osmc&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Enhanced_Lane_and_Road_Attributes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Maxspeed&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/MaxspeedIcons&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Modified&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Lit&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Noname&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Fixme&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Cycleways&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Landcover&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/AddressValidator&zip=1

Validator rules:
+ https://josm.openstreetmap.de/josmfile?page=Rules/SuspiciousSwimming_Pool&zip=1

Last errors/warnings:
- 00000.634 W: extended font config - overriding 'filename.Malgun_Gothic=malgun.ttf' with 'MALGUN.TTF'
- 00000.635 W: extended font config - overriding 'filename.Myanmar_Text=mmrtext.ttf' with 'MMRTEXT.TTF'
- 00000.635 W: extended font config - overriding 'filename.Mongolian_Baiti=monbaiti.ttf' with 'MONBAITI.TTF'
- 00001.721 W: A bővítményből hiányzik a fő verziószám mapwithai
- 00002.341 W: A bővítményből hiányzik a fő verziószám mapwithai
- 00008.629 E: A kép nem található 'traffic_signs/HU/HU_C-031.png.png'
- 00010.622 W:  No overtaking: Could not get presets icon traffic_signs/HU/HU_C-031.png.png
- 00023.642 W: A bővítményből hiányzik a fő verziószám mapwithai
- 00033.111 W: A bővítményből hiányzik a fő verziószám mapwithai
- 00038.648 E: Handled by bug report queue: org.openstreetmap.josm.tools.JosmRuntimeException: org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 10; DOCTYPE is disallowed when the feature ""http://apache.org/xml/features/disallow-doctype-decl"" set to true.. Indok: org.xml.sax.SAXParseException: DOCTYPE is disallowed when the feature ""http://apache.org/xml/features/disallow-doctype-decl"" set to true.



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (40) of main
org.openstreetmap.josm.tools.JosmRuntimeException: org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 10; DOCTYPE is disallowed when the feature ""http://apache.org/xml/features/disallow-doctype-decl"" set to true.
	at org.openstreetmap.josm.plugins.imageio.NexusDownloader.getLatest(NexusDownloader.java:238)
	at org.openstreetmap.josm.plugins.imageio.NexusDownloader.download(NexusDownloader.java:78)
	at org.openstreetmap.josm.plugins.imageio.ImageIOPreferenceSetting.ok(ImageIOPreferenceSetting.java:78)
	at org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane$PluginDownloadAfterTask.run(PreferenceTabbedPane.java:105)
	at org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane.savePreferences(PreferenceTabbedPane.java:457)
	at org.openstreetmap.josm.gui.preferences.PreferenceDialog$OKAction.actionPerformed(PreferenceDialog.java:217)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)
	at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2314)
	at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:407)
	at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
	at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
	at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:299)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6576)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3404)
	at java.desktop/java.awt.Component.processEvent(Component.java:6341)
	at java.desktop/java.awt.Container.processEvent(Container.java:2260)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4958)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2318)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4790)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4917)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4560)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4501)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2304)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2671)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4790)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:725)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:702)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
	at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:187)
	at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:229)
	at java.desktop/java.awt.Dialog.show(Dialog.java:1051)
	at java.desktop/java.awt.Component.show(Component.java:1690)
	at java.desktop/java.awt.Component.setVisible(Component.java:1637)
	at java.desktop/java.awt.Window.setVisible(Window.java:982)
	at java.desktop/java.awt.Dialog.setVisible(Dialog.java:989)
	at org.openstreetmap.josm.gui.preferences.PreferenceDialog.setVisible(PreferenceDialog.java:145)
	at org.openstreetmap.josm.actions.PreferencesAction.run(PreferencesAction.java:119)
	at org.openstreetmap.josm.actions.PreferencesAction.actionPerformed(PreferencesAction.java:104)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)
	at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2314)
	at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:407)
	at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
	at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:374)
	at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:982)
	at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.menuDragMouseReleased(BasicMenuItemUI.java:1094)
	at java.desktop/javax.swing.JMenuItem.fireMenuDragMouseReleased(JMenuItem.java:587)
	at java.desktop/javax.swing.JMenuItem.processMenuDragMouseEvent(JMenuItem.java:484)
	at java.desktop/javax.swing.JMenuItem.processMouseEvent(JMenuItem.java:429)
	at java.desktop/javax.swing.MenuSelectionManager.processMouseEvent(MenuSelectionManager.java:347)
	at java.desktop/javax.swing.plaf.basic.BasicPopupMenuUI$MouseGrabber.eventDispatched(BasicPopupMenuUI.java:888)
	at java.desktop/java.awt.Toolkit$SelectiveAWTEventListener.eventDispatched(Toolkit.java:2019)
	at java.desktop/java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:1911)
	at java.desktop/java.awt.Toolkit.notifyAWTEventListeners(Toolkit.java:1867)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4864)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2318)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4790)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4917)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4560)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4501)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2304)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2671)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4790)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:725)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:702)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 10; DOCTYPE is disallowed when the feature ""http://apache.org/xml/features/disallow-doctype-decl"" set to true.
	at java.xml/com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:204)
	at java.xml/com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:178)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:400)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:327)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1465)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:928)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:635)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:113)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:551)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:890)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:826)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:137)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1225)
	at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:629)
	at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:328)
	at java.xml/javax.xml.parsers.SAXParser.parse(SAXParser.java:197)
	at org.openstreetmap.josm.plugins.imageio.NexusDownloader.getLatest(NexusDownloader.java:231)
	... 71 more
}}}
"	anonymous
25014	cycleway:both:lane=advisory impliziert laut Wiki cycleway:both=lane. Darstellung in JOSM	Core		enhancement	team	new	2026-11-08T18:35:40+01:00	2026-11-08T18:35:40+01:00	"cycleway:both:lane=advisory impliziert laut Wiki cycleway:both=lane.

Wenn ich aber nur ersteres tagge, wird bildlich neben der Strasse aber nicht gestrichelt der Schutzstreifen dargestellt.
Nur wenn ich zusätzlich letzteres tagge.

Quelle:
https://wiki.openstreetmap.org/wiki/Tag%3Acycleway%3Aboth%3Alane%3Dadvisory"	anonymous
24164	Consider Migrating translations to self-hosted Weblate	Core		task	team	new	2025-02-21T10:32:21+01:00	2026-11-08T12:58:03+01:00	"See comment:170:ticket:8645

Over the years Weblate became much better. A new attempt to switch from Launchpad to a better translation plattform should be considered.

* Modern interface, but still easy to use
* No more errors
* Git or SVN instead of Bazaar for translations
* Internal checks for translation errors (missing XML, dots at the end, ...)
* Self-hostable

Test instance by Woazboat: https://translate.codeberg.org/projects/josm_translate_test/"	stoecker
25013	The certificate “Telekom_Security_TLS_RSA_Root_2023.cer” is missing from the certificate store.	Core imagery	tested	task	team	new	2026-11-08T10:38:55+01:00	2026-11-08T12:54:46+01:00	This is the current certificate for the City of Berlin's imagery. 	Berlin53
24955	Memory leaks, performance issues across core	Core		enhancement	team	new	2026-10-16T21:51:18+02:00	2026-11-08T12:47:51+01:00	"I've done some profiling and found some issues around many common code paths, which affect every user.

While I don't currently have exact numbers, the memory gains should be significant, especially during long editing sessions, ranging from few hundred megabytes to ''possibly'' gigabytes. Also, many listeners were left registered after deleted layers, thousands of them.

There are also some performance issues; funniest for me, the selection performance is held back by the conflict manager panel, which checks every object, even when there is no conflict. Only if the panel is visible.

I'll be publishing the patch soon as well."	gaben
25009	Angle snapping mode potential regression	Core		defect	MrFox	needinfo	2026-11-07T19:09:51+01:00	2026-11-08T12:31:58+01:00	"If I hold ctrl and select a way, and draw perpendicular to it, it should show those snapping lines which I drew and snap to the same level as the perpendicular way.
It doesn't do that anymore, at least not for these cases. 

[[Image(https://i.postimg.cc/yYWRFTTM/image.png)]]"	MrFox
24750	Inactive layer icon rendering stopped working	Core		defect	team	new	2026-05-28T08:40:19+02:00	2026-11-08T08:22:51+01:00	"==== What steps will reproduce the problem?
1. Download some data, where the data contains POIs with a mappaint icon
2. Move one of POIs around just a bit
3. Download the same area again onto a new layer

==== What is the expected result?
JOSM should show the inactive layer's POI icon grayed out.

==== What happens instead?
No icon rendering on the inactive layer. Introduced in r19461 with the `if(disabledImgCache != null)` check:
{{{#!java
// This should fix #21919: NPE due to disabledImgCache being null (race condition with #loadImage())
synchronized (this) {
    if(disabledImgCache != null) {
        Image disImg = GuiHelper.getDisabledImage(img);
        if (disImg instanceof BufferedImage) {
            disabledImgCache = (BufferedImage) disImg;
        } else {
            disabledImgCache = new BufferedImage(getWidth(), getHeight(), BufferedImage.TYPE_INT_ARGB);
            Graphics g = disabledImgCache.getGraphics();
            g.drawImage(disImg, 0, 0, null);
            g.dispose();
        }
    }
}
}}}

I'm not being too helpful here, sorry. Once I'll have some time (soon), I can invest more also in JOSM development."	gaben
23834	Sidebar sometimes cannot be hidden	Core		defect	team	new	2024-08-04T19:26:47+02:00	2026-11-08T08:21:23+01:00	"==== What steps will reproduce the problem?
1. Launch a new instance of JOSM
2. Download some data, do not click anywhere just yet
3. Bash the tab button until the sidebar finally does something

==== What is the expected result?
The sidebar can be hidden anytime.

==== What happens instead?
It can be hidden ''after'' some time. I reproduced it on both Windows and Linux.

==== Please provide any additional information below. Attach a screenshot if possible.
I suspect it's a focus issue because if I click on the map view, the sidebar immediately starts to work as expected.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2024-08-02 13:28:03 +0200 (Fri, 02 Aug 2024)
Revision:19161
Build-Date:2024-08-03 01:30:30
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19161 hu) Windows 10 64-Bit
OS Build number: Windows 10 Pro for Workstations 22H2 (19045)
Memory Usage: 476 MB / 8176 MB (148 MB allocated, but free)
Java version: 21.0.4+7-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920x1200x32bpp@59Hz (scaling 1.25×1.25)
Maximum Screen Size: 1920×1200
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1250
Locale info: hu_HU
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Dicedtea-web.bin.location=%UserProfile%\AppData\Local\Programs\OpenWebStart\javaws, --add-reads=java.base=ALL-UNNAMED,java.desktop, --add-reads=java.desktop=ALL-UNNAMED,java.naming, --add-reads=java.naming=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.awt=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/javax.jnlp=ALL-UNNAMED,java.desktop, --add-exports=java.base/com.sun.net.ssl.internal.ssl=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.net.www.protocol.jar=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.action=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.provider=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.util=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.validator=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.x509=ALL-UNNAMED,java.desktop, --add-exports=java.base/jdk.internal.util.jar=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.net.www.protocol.http=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.awt.X11=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.applet=ALL-UNNAMED,java.desktop,jdk.jsobject, --add-exports=java.naming/com.sun.jndi.toolkit.url=ALL-UNNAMED,java.desktop, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=javafx.graphics/com.sun.javafx.application=ALL-UNNAMED, --add-exports=jdk.deploy/com.sun.deploy.config=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djava.security.manager=allow]
Dataset consistency test: No problems found
}}}
"	gaben
22491	EDT violation in PluginHandler	Core		defect	team	new	2022-11-07T20:27:57+01:00	2026-11-08T08:19:37+01:00	"==== What steps will reproduce the problem?
1. Just jumped around the plugin tab in the settings. Cannot reproduce :(

==== What is the expected result?
No EDT violations.

==== What happens instead?
Multiple EDT violations.

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Revision:18585
Is-Local-Build:true
Build-Date:2022-11-06 23:52:18

Identification: JOSM/1.5 (18585 SVN hu) Linux Ubuntu 20.04.5 LTS
Memory Usage: 191 MB / 2480 MB (82 MB allocated, but free)
Java version: 11.0.16+8-post-Ubuntu-0ubuntu120.04, Ubuntu, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 1914×1016 (scaling 1.00×1.00)
Maximum Screen Size: 1914×1016
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: hu_HU.UTF-8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: hu_HU
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: ubuntu:GNOME
Java package: openjdk-11-jre:amd64-11.0.16+8-0ubuntu1~20.04
Java ATK Wrapper package: libatk-wrapper-java:all-0.37.1-1
fonts-noto: fonts-noto:-
VM arguments: [-javaagent:/home/<username>/progs/idea/plugins/java/lib/rt/debugger-agent.jar, -Dfile.encoding=UTF-8]
}}}

JOSM printed this error message 21 times in the debugger's log.
{{{
2022-11-06 23:52:42.686 SEVERE: EDT violation detected
2022-11-06 23:52:42.710 SEVERE: javax.swing.JPanel[,0,0,0x0,invalid,layout=java.awt.GridBagLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=9,maximumSize=,minimumSize=,preferredSize=]
2022-11-06 23:52:42.710 SEVERE: 	at java.base/java.lang.Thread.getStackTrace(Thread.java:1602)
2022-11-06 23:52:42.710 SEVERE: 	at org.openstreetmap.josm.gui.util.CheckThreadViolationRepaintManager.checkThreadViolations(CheckThreadViolationRepaintManager.java:54)
2022-11-06 23:52:42.710 SEVERE: 	at org.openstreetmap.josm.gui.util.CheckThreadViolationRepaintManager.addDirtyRegion(CheckThreadViolationRepaintManager.java:45)
2022-11-06 23:52:42.710 SEVERE: 	at java.desktop/javax.swing.JComponent.repaint(JComponent.java:4836)
2022-11-06 23:52:42.711 SEVERE: 	at java.desktop/java.awt.Component.repaint(Component.java:3393)
2022-11-06 23:52:42.711 SEVERE: 	at java.desktop/javax.swing.JComponent.setFont(JComponent.java:2773)
2022-11-06 23:52:42.711 SEVERE: 	at java.desktop/javax.swing.LookAndFeel.installColorsAndFont(LookAndFeel.java:209)
2022-11-06 23:52:42.711 SEVERE: 	at java.desktop/javax.swing.plaf.basic.BasicPanelUI.installDefaults(BasicPanelUI.java:77)
2022-11-06 23:52:42.711 SEVERE: 	at java.desktop/javax.swing.plaf.basic.BasicPanelUI.installUI(BasicPanelUI.java:62)
2022-11-06 23:52:42.711 SEVERE: 	at java.desktop/javax.swing.JComponent.setUI(JComponent.java:685)
2022-11-06 23:52:42.712 SEVERE: 	at java.desktop/javax.swing.JPanel.setUI(JPanel.java:150)
2022-11-06 23:52:42.712 SEVERE: 	at java.desktop/javax.swing.JPanel.updateUI(JPanel.java:126)
2022-11-06 23:52:42.712 SEVERE: 	at java.desktop/javax.swing.JPanel.<init>(JPanel.java:86)
2022-11-06 23:52:42.712 SEVERE: 	at java.desktop/javax.swing.JPanel.<init>(JPanel.java:95)
2022-11-06 23:52:42.712 SEVERE: 	at org.openstreetmap.josm.plugins.PluginHandler.getInfoPanel(PluginHandler.java:1608)
2022-11-06 23:52:42.712 SEVERE: 	at org.openstreetmap.josm.plugins.PluginHandler.installDownloadedPlugins(PluginHandler.java:1371)
2022-11-06 23:52:42.712 SEVERE: 	at org.openstreetmap.josm.plugins.PluginDownloadTask.realRun(PluginDownloadTask.java:184)
2022-11-06 23:52:42.713 SEVERE: 	at org.openstreetmap.josm.gui.PleaseWaitRunnable.doRealRun(PleaseWaitRunnable.java:94)
2022-11-06 23:52:42.713 SEVERE: 	at org.openstreetmap.josm.gui.PleaseWaitRunnable.run(PleaseWaitRunnable.java:142)
2022-11-06 23:52:42.713 SEVERE: 	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
2022-11-06 23:52:42.713 SEVERE: 	at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264)
2022-11-06 23:52:42.713 SEVERE: 	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java)
2022-11-06 23:52:42.713 SEVERE: 	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
2022-11-06 23:52:42.714 SEVERE: 	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
2022-11-06 23:52:42.714 SEVERE: 	at java.base/java.lang.Thread.run(Thread.java:829)
}}}
"	gaben
17533	Check waterway flow direction	Plugin	latest	enhancement	team	reopened	2019-03-27T15:22:38+01:00	2026-11-08T08:16:23+01:00	"==== What steps will reproduce the problem?
1. Recreate the following as on the picture
2. Run the validator

==== What is the expected result?
JOSM should warn about the middle drain because it has drawn in the wrong direction (also see #12646).

==== What happens instead?
Nothing.

[[Image(flow direction.png)]]

{{{
URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2019-03-26 22:46:08 +0100 (Tue, 26 Mar 2019)
Build-Date:2019-03-27 02:30:53
Revision:14936
Relative:URL: ^/trunk

Identification: JOSM/1.5 (14936 hu) Windows 10 64-Bit
OS Build number: Windows 10 Pro 1809 (17763)
Memory Usage: 718 MB / 1820 MB (516 MB allocated, but free)
Java version: 1.8.0_201-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Screen: \Display0 1920x1200
Maximum Screen Size: 1920x1200
VM arguments: [-Djava.security.manager, -Djava.security.policy=file:<java.home>\lib\security\javaws.policy, -DtrustProxy=true, -Djnlpx.home=<java.home>\bin, -Djnlpx.origFilenameArg=%UserProfile%\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\31\583aa85f-6f9da138, -Djnlpx.remove=false, -Djava.util.Arrays.useLegacyMergeSort=true, -Djnlpx.heapsize=NULL,2048m, -Djnlpx.splashport=50584, -Djnlp.application.href=https://josm.openstreetmap.de/download/josm-latest.jnlp, -Djnlpx.jvm=<java.home>\bin\javaw.exe]
Dataset consistency test: No problems found

Plugins:
+ OpeningHoursEditor (34867)
+ apache-commons (34506)
+ continuosDownload (82)
+ ejml (34389)
+ geotools (34513)
+ jaxb (34678)
+ jts (34524)
+ opendata (34911)
+ reverter (34946)
+ tag2link (34867)
+ tageditor (34867)
+ turnlanes-tagging (280)
+ utilsplugin2 (34932)
+ wikipedia (v1.1.1)

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Maxspeed&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1

Validator rules:
+ https://josm.openstreetmap.de/josmfile?page=Rules/OsmoseValidations&zip=1

Last errors/warnings:
- W: No configuration settings found.  Using hardcoded default values for all pools.
}}}
"	gaben
25008	Improve the tagging preset schema	Internal preset		enhancement	team	new	2026-11-06T22:15:02+01:00	2026-11-07T22:24:22+01:00	"I plan to add a new description to the XSD fields, as well as some extra validation, if possible (e.g. object types [node, way, relation]). While the schema is designed to be flexible, it is also error-prone. For almost 15 years, the fact that it contains unused parameters went unnoticed. Examples:
- `delete_if_empty` was removed in 2012 (r5155): https://github.com/JOSM/josm/blob/bdc651ba9185db66d751a9f81922a2a89ac486dc/resources/data/defaultpresets.xml#L3006-L3038
- `values_i18n=""false""` never did anything? https://github.com/JOSM/josm/blob/bdc651ba9185db66d751a9f81922a2a89ac486dc/resources/data/defaultpresets.xml#L295
- and more

More stringent validation enabled me to fix r19563, which had also gone unnoticed for some time.

The patch will follow soon, hopefully."	gaben
17012	JMockit : Cannot execute JUnit test MultipolygonTest from Eclipse	Unit tests		defect	team	new	2018-11-20T17:11:43+01:00	2026-11-07T22:23:37+01:00	"When I try to execute MultipolygonTestTest in Eclipse I see the dump below. What do I have to do to make this work again?
{{{
MultipolygonTestTest
org.openstreetmap.josm.data.validation.tests.MultipolygonTestTest
testTicket10469(org.openstreetmap.josm.data.validation.tests.MultipolygonTestTest)
java.lang.ExceptionInInitializerError
	at org.openstreetmap.josm.testutils.JOSMTestRules.before(JOSMTestRules.java:543)
	at org.openstreetmap.josm.testutils.JOSMTestRules$CreateJosmEnvironment.evaluate(JOSMTestRules.java:640)
	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48)
	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Caused by: java.lang.IllegalStateException: JMockit didn't get initialized; please check the -javaagent JVM initialization parameter was used
	at mockit.internal.startup.Startup.verifyInitialization(Startup.java:91)
	at mockit.MockUp.<clinit>(MockUp.java:56)

	... 19 more

}}}
"	GerdP
25010	Improve unit tests	Unit tests		enhancement	team	new	2026-11-07T20:34:49+01:00	2026-11-07T20:36:26+01:00	"This is also a task that I have wanted to do for a long time.

There are no functional changes; it's just a case of fixing the existing ones. The changes include:
- Correct argument order so that the correct message appears when the test errors out. For example, see https://github.com/JOSM/josm/blob/bdc651ba9185db66d751a9f81922a2a89ac486dc/test/unit/org/openstreetmap/josm/gui/layer/GpxLayerTest.java#L97
- Use better asserts. For example, see https://github.com/JOSM/josm/blob/bdc651ba9185db66d751a9f81922a2a89ac486dc/test/unit/org/openstreetmap/josm/actions/mapmode/ParallelWaysTest.java#L94
- Fix obvious typos. For example, see https://github.com/JOSM/josm/blob/bdc651ba9185db66d751a9f81922a2a89ac486dc/test/unit/org/openstreetmap/josm/data/validation/tests/CrossingWaysTest.java#L177
- Fix duplicates. For example, see https://github.com/JOSM/josm/blob/bdc651ba9185db66d751a9f81922a2a89ac486dc/test/unit/org/openstreetmap/josm/data/coor/conversion/LatLonParserTest.java#L35-L36


The first group is a JUnit 4 legacy; see https://docs.junit.org/6.1.3/migrating-from-junit4.html#failure-message-arguments.

I already have a patch, the examples are just teasers :)"	gaben
24921	Upgrade to JUnit 6	Unit tests		enhancement	team	new	2026-09-29T20:36:34+02:00	2026-11-07T18:09:25+01:00	"JUnit 6 was released on 27 June 2025, and now requires Java 17 as a minimum. Following the Java update (#17858), it should be a straightforward drop-in replacement.

There is still some dependency on JUnit 4 in the build (`junit-vintage-engine` and `junit-jupiter-migrationsupport`), I will clean this up in a separate ticket, see #24924."	gaben
23705	Add unit test for save/upload layer preconditions check	Unit tests		enhancement	team	new	2024-06-03T10:30:37+02:00	2026-11-07T18:08:49+01:00	"It was fixed in #23506 after a regression, but currently there is no test for it.

See also: #23648, #23408 and #22817."	gaben
21059	JDK16 - IllegalAccessError: cannot access class [...] because module java.base does not export sun.security.action to unnamed module	Core		defect	Don-vip	reopened	2021-07-01T04:18:56+02:00	2026-11-07T12:54:24+01:00	"==== What steps will reproduce the problem?

Crash came 'out of the blue' - my last GUI action was to double-click on the route relation to which way 618324884 belongs.

==== What is the expected result?

Uhm, open the relation editor.

==== What happens instead?

Crash.

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2021-06-02 22:03:39 +0200 (Wed, 02 Jun 2021)
Revision:17919
Build-Date:2021-06-02 20:11:30
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (17919 en) Linux Ubuntu 20.04.2 LTS
Memory Usage: 3572 MB / 24576 MB (1150 MB allocated, but free)
Java version: 16.0.1+9-24, Oracle Corporation, OpenJDK 64-Bit Server VM
Look and Feel: com.formdev.flatlaf.FlatDarkLaf
Screen: :0.0 3840×2160 (scaling 1.00×1.00)
Maximum Screen Size: 3840×2160
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: en_US.UTF-8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: XFCE
Java ATK Wrapper package: libatk-wrapper-java:all-0.37.1-1
libcommons-compress-java: libcommons-compress-java:all-1.19-1
libcommons-logging-java: libcommons-logging-java:all-1.2-2
fonts-noto: fonts-noto:-
VM arguments: [-Dsun.java2d.uiScale=1]
Dataset consistency test: No problems found

Plugins:
+ ImportImagePlugin (35567)
+ OpeningHoursEditor (35640)
+ PicLayer (1.0.1)
+ PolygonCutOut (v0.7)
+ apache-commons (35524)
+ buildings_tools (35756)
+ ejml (35458)
+ flatlaf (35734)
+ geotools (35458)
+ jaxb (35543)
+ jts (35458)
+ log4j (35458)
+ opendata (35640)
+ pbf (35720)
+ reverter (35732)
+ todo (30306)
+ utilsplugin2 (35691)
+ wikipedia (1.1.4)

Tagging presets:
+ ${HOME}/josm/stateParkPreset.xml

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/TigerReviewedNo&zip=1

Last errors/warnings:
- 04978.898 E: Failed to locate image 'peak'
- 04978.898 E: Failed to locate image 'peak'
- 04978.898 E: Failed to locate image 'peak'
- 04978.899 E: Failed to locate image 'peak'
- 04978.899 E: Failed to locate image 'peak'
- 04978.899 E: Failed to locate image 'peak'
- 04978.899 E: Failed to locate image 'peak'
- 04978.899 E: Failed to locate image 'peak'
- 04978.899 E: Failed to locate image 'peak'
- 15988.137 E: Handled by bug report queue: java.lang.IllegalAccessError: class com.sun.media.imageioimpl.plugins.pnm.PNMImageWriter (in unnamed module @0x6fbf5db2) cannot access class sun.security.action.GetPropertyAction (in module java.base) because module java.base does not export sun.security.action to unnamed module @0x6fbf5db2



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (22) of main
java.lang.IllegalAccessError: class com.sun.media.imageioimpl.plugins.pnm.PNMImageWriter (in unnamed module @0x6fbf5db2) cannot access class sun.security.action.GetPropertyAction (in module java.base) because module java.base does not export sun.security.action to unnamed module @0x6fbf5db2
	at com.sun.media.imageioimpl.plugins.pnm.PNMImageWriter.<clinit>(PNMImageWriter.java:111)
	at com.sun.media.imageioimpl.plugins.pnm.PNMImageWriterSpi.createWriterInstance(PNMImageWriterSpi.java:117)
	at java.desktop/javax.imageio.spi.ImageWriterSpi.createWriterInstance(ImageWriterSpi.java:351)
	at java.desktop/javax.imageio.ImageIO$ImageWriterIterator.next(ImageIO.java:849)
	at java.desktop/javax.imageio.ImageIO$ImageWriterIterator.next(ImageIO.java:833)
	at java.desktop/sun.awt.X11.XDataTransferer.getPlatformMappingsForFlavor(XDataTransferer.java:412)
	at java.desktop/sun.awt.datatransfer.DesktopDatatransferServiceImpl.getPlatformMappingsForFlavor(DesktopDatatransferServiceImpl.java:87)
	at java.datatransfer/java.awt.datatransfer.SystemFlavorMap.flavorToNativeLookup(SystemFlavorMap.java:446)
	at java.datatransfer/java.awt.datatransfer.SystemFlavorMap.getNativesForFlavor(SystemFlavorMap.java:560)
	at java.desktop/sun.awt.datatransfer.DataTransferer.getFlavorsForFormats(DataTransferer.java:458)
	at java.desktop/sun.awt.datatransfer.ClipboardTransferable.<init>(ClipboardTransferable.java:88)
	at java.desktop/sun.awt.X11.XClipboard.getContents(XClipboard.java:108)
	at org.openstreetmap.josm.gui.datatransfer.ClipboardUtils.getClipboardContent(ClipboardUtils.java:107)
	at org.openstreetmap.josm.gui.datatransfer.ClipboardUtils.getClipboardContent(ClipboardUtils.java:95)
	at org.openstreetmap.josm.gui.dialogs.relation.actions.PasteMembersAction.getSupport(PasteMembersAction.java:41)
	at org.openstreetmap.josm.gui.dialogs.relation.actions.PasteMembersAction.updateEnabledState(PasteMembersAction.java:48)
	at org.openstreetmap.josm.gui.dialogs.relation.actions.PasteMembersAction.<init>(PasteMembersAction.java:28)
	at org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor$3.<init>(GenericRelationEditor.java:307)
	at org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor.<init>(GenericRelationEditor.java:307)
	at org.openstreetmap.josm.gui.dialogs.relation.RelationEditor.getEditor(RelationEditor.java:83)
	at org.openstreetmap.josm.gui.dialogs.properties.PropertiesDialog.editMembership(PropertiesDialog.java:568)
	at org.openstreetmap.josm.gui.dialogs.properties.PropertiesDialog.access$1300(PropertiesDialog.java:140)
	at org.openstreetmap.josm.gui.dialogs.properties.PropertiesDialog$MouseClickWatch.mouseClicked(PropertiesDialog.java:1000)
	at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:278)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6620)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
	at java.desktop/java.awt.Component.processEvent(Component.java:6382)
	at java.desktop/java.awt.Container.processEvent(Container.java:2264)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4993)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2322)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4825)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4934)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4572)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4504)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2308)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2773)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4825)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
}}}
"	kennykb
25007	Add Java runtime information to the properties of the MSI and EXE packages	Installer Windows		enhancement	team	new	2026-11-06T21:41:03+01:00	2026-11-06T21:41:03+01:00	Currently it's hard to tell what is the bundled runtime in those packages. Add it as a property, so anyone can check without programing skills.	gaben
22285	DataIntegrityProblemException: Primitive cannot be modified in read-only dataset	Core	tested	defect	team	reopened	2022-08-12T20:04:20+02:00	2026-11-06T21:36:38+01:00	"==== What steps will reproduce the problem?
1. 
2. 
3. 

==== What is the expected result?

==== What happens instead?

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2022-08-01 20:38:58 +0200 (Mon, 01 Aug 2022)
Build-Date:2022-08-02 01:30:56
Revision:18531
Relative:URL: ^/trunk

Identification: JOSM/1.5 (18531 en_GB) Windows 11 64-Bit
OS Build number: Windows 10 Home 2009 (22000)
Memory Usage: 247 MB / 247 MB (62 MB allocated, but free)
Java version: 1.8.0_341-b10, Oracle Corporation, Java HotSpot(TM) Client VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1080 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: Cp1252
System property sun.jnu.encoding: Cp1252
Locale info: en_GB
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djava.security.manager, -Djava.security.policy=file:<java.home>\lib\security\javaws.policy, -DtrustProxy=true, -Djnlpx.home=<java.home>\bin, -Djnlpx.origFilenameArg=%UserProfile%\Downloads\josm.jnlp, -Djnlpx.remove=false, -Djava.util.Arrays.useLegacyMergeSort=true, -Djnlpx.splashport=56708, -Djnlpx.jvm=<java.home>\bin\javaw.exe]
Dataset consistency test: No problems found

Last errors/warnings:
- 00003.787 W: Unable to request certificate of https://roottest-g3.pkioverheid.nl
- 00004.790 W: Unable to request certificate of https://roottest-g3.pkioverheid.nl
- 00176.897 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive cannot be modified in read-only dataset: {Way id=611679012 version=1 VT nodes=[{Node id=5790831720 version=1 V lat=53.1249548,lon=-2.7682584}, {Node id=5790831721 version=1 V lat=53.1249927,lon=-2.768213}, {Node id=5790831722 version=1 V lat=53.1250003,lon=-2.7682307}, {Node id=5790831723 version=1 V lat=53.1250366,lon=-2.7681867}, {Node id=5790831724 version=1 V lat=53.125029,lon=-2.7681696}, {Node id=5790831725 version=1 V lat=53.1250544,lon=-2.7681394}, {Node id=5790831726 version=1 V lat=53.1250162,lon=-2.7680548}, {Node id=5790831727 version=1 V lat=53.124917,lon=-2.7681744}, {Node id=5790831720 version=1 V lat=53.1249548,lon=-2.7682584}]}
- 00211.561 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive cannot be modified in read-only dataset: {Way id=611679012 version=1 VT nodes=[{Node id=5790831720 version=1 V lat=53.1249548,lon=-2.7682584}, {Node id=5790831721 version=1 V lat=53.1249927,lon=-2.768213}, {Node id=5790831722 version=1 V lat=53.1250003,lon=-2.7682307}, {Node id=5790831723 version=1 V lat=53.1250366,lon=-2.7681867}, {Node id=5790831724 version=1 V lat=53.125029,lon=-2.7681696}, {Node id=5790831725 version=1 V lat=53.1250544,lon=-2.7681394}, {Node id=5790831726 version=1 V lat=53.1250162,lon=-2.7680548}, {Node id=5790831727 version=1 V lat=53.124917,lon=-2.7681744}, {Node id=5790831720 version=1 V lat=53.1249548,lon=-2.7682584}]}



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-2 (55) of javawsApplicationThreadGroup
org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Primitive cannot be modified in read-only dataset: {Way id=611679012 version=1 VT nodes=[{Node id=5790831720 version=1 V lat=53.1249548,lon=-2.7682584}, {Node id=5790831721 version=1 V lat=53.1249927,lon=-2.768213}, {Node id=5790831722 version=1 V lat=53.1250003,lon=-2.7682307}, {Node id=5790831723 version=1 V lat=53.1250366,lon=-2.7681867}, {Node id=5790831724 version=1 V lat=53.125029,lon=-2.7681696}, {Node id=5790831725 version=1 V lat=53.1250544,lon=-2.7681394}, {Node id=5790831726 version=1 V lat=53.1250162,lon=-2.7680548}, {Node id=5790831727 version=1 V lat=53.124917,lon=-2.7681744}, {Node id=5790831720 version=1 V lat=53.1249548,lon=-2.7682584}]}
	at org.openstreetmap.josm.data.osm.OsmPrimitive.checkDatasetNotReadOnly(OsmPrimitive.java:206)
	at org.openstreetmap.josm.data.osm.OsmPrimitive.put(OsmPrimitive.java:592)
	at org.openstreetmap.josm.command.ChangePropertyCommand.executeCommand(ChangePropertyCommand.java:180)
	at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:300)
	at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:354)
	at org.openstreetmap.josm.gui.dialogs.properties.TagEditHelper$EditTagDialog.performTagEdit(TagEditHelper.java:591)
	at org.openstreetmap.josm.gui.dialogs.properties.TagEditHelper.editTag(TagEditHelper.java:321)
	at org.openstreetmap.josm.gui.dialogs.properties.PropertiesDialog$MouseClickWatch.mouseClicked(PropertiesDialog.java:1014)
	at java.awt.AWTEventMulticaster.mouseClicked(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
}}}
"	anonymous
24967	DataIntegrityProblemException: Deleted node referenced: (ChangePropertyCommand)	Core	latest	defect	team	new	2026-10-22T09:57:41+02:00	2026-11-06T21:35:26+01:00	"What steps will reproduce the problem?
1. Dragged a node quite a long way then it appeared to stop existing - just the lines between where it should have been and the adjacent 2 nodes in that way. Then came up with error messages. When I changed the tagging it wouldn't let me undo changes with ctrl+Y anymore. I have a screenshot though not sure how to upload it here.
2. 
3. 

==== What is the expected result?

==== What happens instead?

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2026-08-11 15:36:21 +0200 (Tue, 11 Aug 2026)
Revision:19613
Build-Date:2026-08-12 01:30:51
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19613 en_GB) Windows 11 64-Bit
OS Build number: Windows 10 Home 26H2 (26300)
Memory Usage: 644 MB / 4022 MB (113 MB allocated, but free)
Java version: 26.0.1+8-34, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920x1200x32bpp@60Hz (scaling 1.50×1.50)
Maximum Screen Size: 1920×1200
Best cursor sizes: 16×16→48×48, 32×32→48×48
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1252
Locale info: en_GB
Numbers with default locale: 1234567890 -> 1234567890

Dataset consistency test:
[DELETED REFERENCED] {Way id=1501173639 version=1 MV nodes=[{Node id=13743435399 version=1 V lat=50.791873,lon=0.2733158}, {Node id=-26188 version=0 MV lat=50.7911924,lon=0.273732}, {Node id=13743436504 version=1 V lat=50.7910903,lon=0.2739315}, {Node id=13743436505 version=1 VD lat=50.79184973049332,lon=0.27348533173828127}, {Node id=13743436506 version=1 V lat=50.7918059,lon=0.2763254}, {Node id=13743436507 version=1 V lat=50.7920764,lon=0.2773402}]} refers to deleted primitive {Node id=13743436505 version=1 VD lat=50.79184973049332,lon=0.27348533173828127}


Plugins:
+ buildings_tools (36503)
+ reverter (36503)
+ terracer (36503)
+ utilsplugin2 (36503)

Last errors/warnings:
- 00608.993 W: Not downloading all tiles because there are more than 40 tiles on an axis!
- 00608.994 W: Not downloading all tiles because there are more than 40 tiles on an axis!
- 00609.083 W: Not downloading all tiles because there are more than 40 tiles on an axis!
- 00609.083 W: Not downloading all tiles because there are more than 40 tiles on an axis!
- 00609.187 W: Not downloading all tiles because there are more than 40 tiles on an axis!
- 00609.187 W: Not downloading all tiles because there are more than 40 tiles on an axis!
- 00633.564 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=1501173639 version=1 MV nodes=[{Node id=13743435399 version=1 V lat=50.791873,lon=0.2733158}, {Node id=-26188 version=0 MV lat=50.7911924,lon=0.273732}, {Node id=13743436504 version=1 V lat=50.7910903,lon=0.2739315}, {Node id=13743436505 version=1 VD lat=50.79184973049332,lon=0.27348533173828127}, {Node id=13743436506 version=1 V lat=50.7918059,lon=0.2763254}, {Node id=13743436507 version=1 V lat=50.7920764,lon=0.2773402}]} (changed by the following commands: [Sequence: Dupe into 3 nodes], [Move 1 node], [Sequence: Merge 2 nodes], [Sequence: Dupe into 2 nodes])
- 00638.010 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=1501173639 version=1 MV nodes=[{Node id=13743435399 version=1 V lat=50.791873,lon=0.2733158}, {Node id=-26188 version=0 MV lat=50.7911924,lon=0.273732}, {Node id=13743436504 version=1 V lat=50.7910903,lon=0.2739315}, {Node id=13743436505 version=1 VD lat=50.79184973049332,lon=0.27348533173828127}, {Node id=13743436506 version=1 V lat=50.7918059,lon=0.2763254}, {Node id=13743436507 version=1 V lat=50.7920764,lon=0.2773402}]} (changed by the following commands: [Sequence: Dupe into 3 nodes], [Move 1 node], [Sequence: Merge 2 nodes], [Sequence: Dupe into 2 nodes])
- 00641.984 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=1501173639 version=1 MV nodes=[{Node id=13743435399 version=1 V lat=50.791873,lon=0.2733158}, {Node id=-26188 version=0 MV lat=50.7911924,lon=0.273732}, {Node id=13743436504 version=1 V lat=50.7910903,lon=0.2739315}, {Node id=13743436505 version=1 VD lat=50.79184973049332,lon=0.27348533173828127}, {Node id=13743436506 version=1 V lat=50.7918059,lon=0.2763254}, {Node id=13743436507 version=1 V lat=50.7920764,lon=0.2773402}]} (changed by the following commands: [Sequence: Dupe into 3 nodes], [Move 1 node], [Sequence: Merge 2 nodes], [Sequence: Dupe into 2 nodes])
- 00646.889 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=1501173639 version=1 MV nodes=[{Node id=13743435399 version=1 V lat=50.791873,lon=0.2733158}, {Node id=-26188 version=0 MV lat=50.7911924,lon=0.273732}, {Node id=13743436504 version=1 V lat=50.7910903,lon=0.2739315}, {Node id=13743436505 version=1 VD lat=50.79184973049332,lon=0.27348533173828127}, {Node id=13743436506 version=1 V lat=50.7918059,lon=0.2763254}, {Node id=13743436507 version=1 V lat=50.7920764,lon=0.2773402}]} (changed by the following commands: [Sequence: Dupe into 3 nodes], [Move 1 node], [Sequence: Merge 2 nodes], [Sequence: Dupe into 2 nodes])



=== REPORTED CRASH DATA ===
sequence_information:
 - sequence_name: Sequence: Change properties of up to 1 object
 - sequence_command: Set natural=tree_row for way '‎1501173639‎ (6 nodes)‌'
 - sequence_index: 1
 - sequence_commands: [org.openstreetmap.josm.command.ChangePropertyCommand;org.openstreetmap.josm.command.ChangePropertyCommand]
 - sequence_commands_descriptions: [Remove ""barrier"" for way '‎1501173639‎ (6 nodes)‌';Set natural=tree_row for way '‎1501173639‎ (6 nodes)‌']

BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (42) of main
org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted node referenced: {Way id=1501173639 version=1 MV nodes=[{Node id=13743435399 version=1 V lat=50.791873,lon=0.2733158}, {Node id=-26188 version=0 MV lat=50.7911924,lon=0.273732}, {Node id=13743436504 version=1 V lat=50.7910903,lon=0.2739315}, {Node id=13743436505 version=1 VD lat=50.79184973049332,lon=0.27348533173828127}, {Node id=13743436506 version=1 V lat=50.7918059,lon=0.2763254}, {Node id=13743436507 version=1 V lat=50.7920764,lon=0.2773402}]} (changed by the following commands: [Sequence: Dupe into 3 nodes], [Move 1 node], [Sequence: Merge 2 nodes], [Sequence: Dupe into 2 nodes])
	at org.openstreetmap.josm.data.osm.Way.checkNodes(Way.java:555)
	at org.openstreetmap.josm.data.osm.Way.fireNodesChanged(Way.java:573)
	at org.openstreetmap.josm.data.osm.Way.setDeleted(Way.java:475)
	at org.openstreetmap.josm.data.osm.OsmPrimitive.load(OsmPrimitive.java:882)
	at org.openstreetmap.josm.data.osm.Way.load(Way.java:267)
	at org.openstreetmap.josm.command.Command.undoCommand(Command.java:171)
	at org.openstreetmap.josm.command.SequenceCommand.undoCommands(SequenceCommand.java:138)
	at org.openstreetmap.josm.command.SequenceCommand.undoCommand(SequenceCommand.java:167)
	at org.openstreetmap.josm.data.UndoRedoHandler.lambda$undo$0(UndoRedoHandler.java:381)
	at org.openstreetmap.josm.gui.util.GuiHelper.runInEDTAndWait(GuiHelper.java:225)
	at org.openstreetmap.josm.data.UndoRedoHandler.undo(UndoRedoHandler.java:372)
	at org.openstreetmap.josm.data.UndoRedoHandler.undo(UndoRedoHandler.java:362)
	at org.openstreetmap.josm.actions.UndoAction.actionPerformed(UndoAction.java:39)
	at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1787)
	at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2949)
	at java.desktop/javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:295)
	at java.desktop/javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:254)
	at java.desktop/javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:3041)
	at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:3033)
	at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2911)
	at java.desktop/java.awt.Component.processEvent(Component.java:6347)
	at java.desktop/java.awt.Container.processEvent(Container.java:2260)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4952)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2318)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4784)
	at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1819)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:874)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1136)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1011)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:839)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4833)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2318)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2667)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4784)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:716)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:693)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
}}}
"	anonymous
24912	"Cannot run program ""dpkg-query"	Core		defect	thomas.finteis@…	needinfo	2026-09-24T08:41:04+02:00	2026-11-06T21:32:22+01:00	"==== What steps will reproduce the problem?
1. 
2. 
3. 

==== What is the expected result?

==== What happens instead?

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2026-08-11 15:36:21 +0200 (Tue, 11 Aug 2026)
Revision:19613
Build-Date:2026-08-12 01:30:51
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19613 de) Linux Ubuntu 22.04.5 LTS
Memory Usage: 1488 MB / 11904 MB (920 MB allocated, but free)
Java version: 21.0.12+8-1-22.04-Ubuntu, Ubuntu, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 1920x1080x[Multi depth]@60Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: de_DE.UTF-8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: de_DE
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: Unity:Unity7:ubuntu
VM arguments: [--module-path=/usr/share/openjfx/lib, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, -Djosm.restart=true, -Djava.net.useSystemProxies=true, -XX:MaxRAMPercentage=75.0, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED]
Dataset consistency test: No problems found

Plugins:
+ DirectDownload (36503)
+ DirectUpload (36503)
+ Elevation (0.17.6)
+ ElevationProfile (36503)
+ Mapillary (1822)
+ PicLayer (275)
+ RelationDissolve (0.2.0)
+ SeaChart (36483)
+ SeaMapEditor (36483)
+ apache-commons (36483)
+ changeset-viewer (61)
+ editgpx (36483)
+ graphview (36503)
+ merge-overlap (36483)
+ notesolver (0.5.0)
+ photo_geotagging (36503)
+ photoadjust (36503)
+ reltoolbox (36493)
+ reverter (36503)
+ routing (36493)
+ tageditor (36503)
+ utilsplugin2 (36503)

Tagging presets:
+ https://raw.githubusercontent.com/OpenNauticalChart/josm/master/Presets_Hafen.xml
+ https://raw.githubusercontent.com/OpenNauticalChart/josm/master/INT-1-preset.xml
+ https://josm.openstreetmap.de/josmfile?page=Presets/OpenSeaMap-PresetForSeamarks&zip=1

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Modified&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/Direction&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/ParkingLanes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/NewParkingFeatures&zip=1

Last errors/warnings:
- 56273.557 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059433, exit code: 1, error: 0 (none) 
- 56273.558 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059434, exit code: 1, error: 0 (none) 
- 56273.559 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059435, exit code: 1, error: 0 (none) 
- 56273.560 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059436, exit code: 1, error: 0 (none) 
- 56273.561 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059437, exit code: 1, error: 0 (none) 
- 56273.563 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059438, exit code: 1, error: 0 (none) 
- 56273.564 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059439, exit code: 1, error: 0 (none) 
- 56273.565 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059440, exit code: 1, error: 0 (none) 
- 56273.566 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059441, exit code: 1, error: 0 (none) 
- 56273.567 W: java.io.IOException: Cannot run program ""dpkg-query"": Failed to exec spawn helper: pid: 2059442, exit code: 1, error: 0 (none) 



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (34) of main
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
	at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2113)
	at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2087)
	at java.desktop/javax.swing.plaf.basic.BasicToolBarUI$Handler.mouseDragged(BasicToolBarUI.java:1366)
	at java.desktop/javax.swing.plaf.basic.BasicToolBarUI$DockingListener.mouseDragged(BasicToolBarUI.java:1583)
	at java.desktop/javax.swing.plaf.metal.MetalToolBarUI$MetalDockingListener.mouseDragged(MetalToolBarUI.java:429)
	at java.desktop/java.awt.Component.processMouseMotionEvent(Component.java:6669)
	at java.desktop/javax.swing.JComponent.processMouseMotionEvent(JComponent.java:3416)
	at java.desktop/java.awt.Component.processEvent(Component.java:6390)
	at java.desktop/java.awt.Container.processEvent(Container.java:2266)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4996)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4592)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:98)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
}}}
"	thomas.finteis@…
24427	NullPointerException	Core		defect	team	new	2025-08-02T23:27:16+02:00	2026-11-06T21:30:30+01:00	"Installed via homebrew, running on MacMini M2 Pro.

--


{{{
Revision:19423
Build-Date:2025-07-12 12:05:40

Identification: JOSM/1.5 (19423 de) Mac OS X 15.5
OS Build number: macOS 15.5 (24F74)
Memory Usage: 2976 MB / 12288 MB (1517 MB allocated, but free)
Java version: 24.0.1+9, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.apple.laf.AquaLookAndFeel
Screen: Display 1 2560x1440x32bpp@60Hz (scaling 2.00×2.00)
Maximum Screen Size: 2560×1440
Best cursor sizes: 16×16→16×16, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: de_DE
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=19423, -XX:MaxRAMPercentage=75.0, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djpackage.app-path=/Applications/JOSM_24_arm64.app/Contents/MacOS/JOSM]
Dataset consistency test: No problems found

Plugins:
+ CustomizePublicTransportStop (36438)
+ ImproveWay (38)
+ OpeningHoursEditor (36438)
+ Review.Changes (1.1.1)
+ buildings_tools (36438)
+ changessum (v0.1.1)
+ continuosDownload (127)
+ imagery_offset_db (36438)
+ measurement (36438)
+ utilsplugin2 (36438)

Tagging presets:
+ https://www.openrailwaymap.org/josm-presets/de-signals-bostrab.zip
+ https://www.openrailwaymap.org/josm-presets/de.zip
+ https://www.openrailwaymap.org/josm-presets/de-signals-eso.zip
+ https://www.openrailwaymap.org/josm-presets/de-avg-signals.zip
+ https://josm.openstreetmap.de/josmfile?page=Presets/BuildingPreset&zip=1
+ https://raw.githubusercontent.com/species/josm-preset-wheelchair/master/sidewalks_kerbs.xml
+ https://josm.openstreetmap.de/josmfile?page=Presets/Historical_Objects&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Light_sources&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/MappingAccessibility&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/MobilePhoneBaseStations&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/OpenStationMap&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/PublicTransportOneClick&zip=1
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/DE.zip
+ https://osmtools.de/josm/steps.xml
+ https://josm.openstreetmap.de/josmfile?page=Presets/MastAndTower&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Windrad&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Surveillance&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/OneClick&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/ParcelLockers&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Stolpersteine&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Transdev-Entwerter_im_VRR&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Transdev-Fahrkartenautomat_im_VRR&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/WifiHotspots&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/pedestrian_crossings_in_DE&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/NewTags&zip=1
+ https://openrailwaymap.fly.dev/preset.zip

Map paint styles:
+ https://www.openrailwaymap.org/styles/signals.zip
+ https://www.openrailwaymap.org/styles/josm-additional.zip
- https://www.openrailwaymap.org/styles/electrified.zip
+ https://www.openrailwaymap.org/styles/standard.zip
- https://www.openrailwaymap.org/styles/maxspeed.zip
+ https://josm.openstreetmap.de/josmfile?page=Styles/FixmeAndNote&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/LayerChecker&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/LessObtrusiveNodes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Direction&zip=1

Validator rules:
+ https://josm.openstreetmap.de/josmfile?page=Rules/GermanySpecific&zip=1
+ https://www.openrailwaymap.org/validator/de-openrailwaymap.validator.mapcss
+ https://www.openrailwaymap.org/validator/openrailwaymap.validator.mapcss

Last errors/warnings:
- 02763.557 E: Cannot add MapCSS rule: Cannot add instruction assertNoMatch: way railway=rail operator=DB!
- 02763.557 E: Cannot add MapCSS rule: Cannot add instruction assertNoMatch: way railway=rail operator=DB!
- 02764.036 E: Cannot add MapCSS rule: Cannot add instruction assertNoMatch: node railway=signal railway:signal:combined=DE-KVB:hp railway:signal:combined:form=light!
- 02764.039 E: Cannot add MapCSS rule: Cannot add instruction assertNoMatch: way railway=rail operator=DB!
- 02764.039 E: Cannot add MapCSS rule: Cannot add instruction assertNoMatch: way railway=rail operator=DB!
- 02764.693 E: Cannot add MapCSS rule: Cannot add instruction assertNoMatch: node railway=signal railway:signal:combined=DE-KVB:hp railway:signal:combined:form=light!
- 02764.695 E: Cannot add MapCSS rule: Cannot add instruction assertNoMatch: way railway=rail operator=DB!
- 02764.695 E: Cannot add MapCSS rule: Cannot add instruction assertNoMatch: way railway=rail operator=DB!
- 02765.210 E: Thread main-worker-0 raised java.lang.NullPointerException: Cannot invoke ""org.openstreetmap.josm.data.osm.Node.addReferrer(org.openstreetmap.josm.data.osm.OsmPrimitive)"" because ""node"" is null
- 02765.212 E: Handled by bug report queue: java.lang.NullPointerException: Cannot invoke ""org.openstreetmap.josm.data.osm.Node.addReferrer(org.openstreetmap.josm.data.osm.OsmPrimitive)"" because ""node"" is null



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: main-worker-0 (40)
java.lang.NullPointerException: Cannot invoke ""org.openstreetmap.josm.data.osm.Node.addReferrer(org.openstreetmap.josm.data.osm.OsmPrimitive)"" because ""node"" is null
	at org.openstreetmap.josm.data.osm.Way.setNodes(Way.java:63)
	at org.openstreetmap.josm.data.osm.DataSet.clonePrimitives(DataSet.java:257)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetValidation.applyChangedTags(TaggingPresetValidation.java:93)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetValidation.lambda$validateAsync$0(TaggingPresetValidation.java:50)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)

=== ADDITIONAL EXCEPTIONS ===
==== Exception at 1754169806379 ====
java.lang.NullPointerException: Cannot invoke ""org.openstreetmap.josm.data.osm.Node.addReferrer(org.openstreetmap.josm.data.osm.OsmPrimitive)"" because ""node"" is null
	at org.openstreetmap.josm.data.osm.Way.setNodes(Way.java:63)
	at org.openstreetmap.josm.data.osm.DataSet.clonePrimitives(DataSet.java:257)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetValidation.applyChangedTags(TaggingPresetValidation.java:93)
	at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetValidation.lambda$validateAsync$0(TaggingPresetValidation.java:50)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)
}}}
"	politik_rebe7j@…
24414	Deleting multiple ways fails	Core		defect	gaben	new	2025-07-21T19:05:24+02:00	2026-11-06T21:29:52+01:00	"==== What steps will reproduce the problem?
1. downloading ways from OSM
2. Selecting multiple ways or sections of ways
3. clicking delete

==== What is the expected result?

The ways and nodes are deleted

==== What happens instead?

Nothing gets deleted and an unexpected exception pop-up appears

==== Please provide any additional information below. Attach a screenshot if possible.

I select multiple (sections of) ways and their nodes with the select tool then delete them, the operation fails and pop-up appears. This only happens with ways and relations imported from OSM. This has happened sporadically today and trying again usually works, it did not happen at all when i last worked on this project (5/12/2024)


{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2025-07-11 10:12:51 +0200 (Fri, 11 Jul 2025)
Revision:19423
Build-Date:2025-07-12 01:30:35
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19423 en) Windows 10 64-Bit
OS Build number: Windows 10 IoT Enterprise LTSC 2021 21H2 (19044)
Memory Usage: 475 MB / 1984 MB (272 MB allocated, but free)
Java version: 21.0.5+11-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920x1080x32bpp@60Hz (scaling 1.25×1.25)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1252
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Dicedtea-web.bin.location=%UserProfile%\AppData\Local\OpenWebStart\javaws, -Djava.util.Arrays.useLegacyMergeSort=true, --add-reads=java.base=ALL-UNNAMED,java.desktop, --add-reads=java.desktop=ALL-UNNAMED,java.naming, --add-reads=java.naming=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.awt=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/javax.jnlp=ALL-UNNAMED,java.desktop, --add-exports=java.base/com.sun.net.ssl.internal.ssl=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.net.www.protocol.jar=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.action=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.provider=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.util=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.validator=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.x509=ALL-UNNAMED,java.desktop, --add-exports=java.base/jdk.internal.util.jar=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.net.www.protocol.http=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.awt.X11=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.applet=ALL-UNNAMED,java.desktop,jdk.jsobject, --add-exports=java.naming/com.sun.jndi.toolkit.url=ALL-UNNAMED,java.desktop, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=javafx.graphics/com.sun.javafx.application=ALL-UNNAMED, --add-exports=jdk.deploy/com.sun.deploy.config=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djava.security.manager=allow]

Dataset consistency test:
[DELETED REFERENCED] {Relation id=2105648 version=25 MVT [node 292556046, way 157452301, way 157562899, way 258945469, way 157562881, relation 17147852, relation 17147868, relation 17147909]} refers to deleted primitive {Relation id=17147909 version=2 MVDT]}


Last errors/warnings:
- 00000.663 W: extended font config - overriding 'filename.Malgun_Gothic=malgun.ttf' with 'MALGUN.TTF'
- 00000.664 W: extended font config - overriding 'filename.Myanmar_Text=mmrtext.ttf' with 'MMRTEXT.TTF'
- 00000.664 W: extended font config - overriding 'filename.Mongolian_Baiti=monbaiti.ttf' with 'MONBAITI.TTF'
- 01365.686 E: Handled by bug report queue: org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted member referenced: {Relation id=2105648 version=25 MVT [node 292556046, way 157452301, way 157562899, way 258945469, way 157562881, relation 17147852, relation 17147868, relation 17147909]} (changed by the following commands: [Sequence: Delete], [Sequence: Split way ‎Brabant Wallon - Namur‎ (75 nodes)‌ into 2 parts], [Sequence: Split way ‎1246045508‎ (53 nodes)‌ into 2 parts], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Split way ‎1245462800‎ (107 nodes)‌ into 2 parts], [Sequence: Split way ‎1246048725‎ (102 nodes)‌ into 2 parts], [Sequence: Split way ‎1246048725‎ (75 nodes)‌ into 2 parts], [Sequence: Split way ‎Brabant Wallon - Namur‎ (120 nodes)‌ into 2 parts], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Combine 7 ways], [Sequence: Delete])



=== REPORTED CRASH DATA ===
sequence_information:
 - sequence_name: Sequence: Delete
 - sequence_command: Change members of boundary[8] (""Walhain"", 8 members, incomplete)
 - sequence_index: 0
 - sequence_commands: [org.openstreetmap.josm.command.ChangeMembersCommand;org.openstreetmap.josm.command.ChangeMembersCommand;org.openstreetmap.josm.command.DeleteCommand]
 - sequence_commands_descriptions: [Change members of boundary[8] (""Walhain"", 8 members, incomplete);Change members of boundary[9] (""Tourinnes-Saint-Lambert"", 3 members);Delete 129 objects]

BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-1 (64) of JOSM
org.openstreetmap.josm.data.osm.DataIntegrityProblemException: Deleted member referenced: {Relation id=2105648 version=25 MVT [node 292556046, way 157452301, way 157562899, way 258945469, way 157562881, relation 17147852, relation 17147868, relation 17147909]} (changed by the following commands: [Sequence: Delete], [Sequence: Split way ‎Brabant Wallon - Namur‎ (75 nodes)‌ into 2 parts], [Sequence: Split way ‎1246045508‎ (53 nodes)‌ into 2 parts], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Split way ‎1245462800‎ (107 nodes)‌ into 2 parts], [Sequence: Split way ‎1246048725‎ (102 nodes)‌ into 2 parts], [Sequence: Split way ‎1246048725‎ (75 nodes)‌ into 2 parts], [Sequence: Split way ‎Brabant Wallon - Namur‎ (120 nodes)‌ into 2 parts], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Delete], [Sequence: Combine 7 ways], [Sequence: Delete])
	at org.openstreetmap.josm.data.osm.Relation.checkMembers(Relation.java:501)
	at org.openstreetmap.josm.data.osm.Relation.fireMembersChanged(Relation.java:513)
	at org.openstreetmap.josm.data.osm.Relation.setMembers(Relation.java:61)
	at org.openstreetmap.josm.command.ChangeMembersCommand.executeCommand(ChangeMembersCommand.java:52)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:112)
	at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:300)
	at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:354)
	at org.openstreetmap.josm.actions.mapmode.DeleteAction.doActionPerformed(DeleteAction.java:164)
	at org.openstreetmap.josm.actions.DeleteAction.actionPerformed(DeleteAction.java:86)
	at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810)
	at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2956)
	at java.desktop/javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:309)
	at java.desktop/javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:264)
	at java.desktop/javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:3049)
	at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:3041)
	at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2918)
	at java.desktop/java.awt.Component.processEvent(Component.java:6398)
	at java.desktop/java.awt.Container.processEvent(Container.java:2266)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4996)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)
	at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1952)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:883)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1146)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1020)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:848)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4877)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:98)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
}}}
"	anonymous
22376	PC crashed and lost all my preferences	Core		defect	team	new	2022-09-15T19:55:06+02:00	2026-11-06T21:29:03+01:00	"==== What steps will reproduce the problem?
1. I was editing in JOSM and it just crashed, don't know why...
2. The only instability i noticed since several versions ago is that parts of the interface disappear or get mixed up. In order to get them back i have to switch to another app and come back (like going to desktop and back) or pass my mouse pointer on the interface. This happens often and doesn't make me crash each time.
3. I'm not sure but it seemed that this happens when i try to check the historic of elements.

==== What is the expected result?

==== What happens instead?

==== Please provide any additional information below. Attach a screenshot if possible.
I lost all my preferences, loads of presets, the map paint style, imagery sources, plugins , etc... I really need all that back. When i launched JOSM after the crash, the backup file only brought the default preferences not ""my backup""... or is the default the backup?

{{{
Revision:18543
Build-Date:2022-08-30 13:34:09

Identification: JOSM/1.5 (18543 en) Windows 7 64-Bit
OS Build number: Windows 7 Professional (7601)
Memory Usage: 162 MB / 4092 MB (42 MB allocated, but free)
Java version: 17.0.4+8-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1280×1024 (scaling 1.00×1.00) \Display1 1280×1024 (scaling 1.00×1.00)
Maximum Screen Size: 1280×1024
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: Cp1252
System property sun.jnu.encoding: Cp1252
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=1.5.18543, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djpackage.app-path=C:\Program Files (x86)\JOSM\josm.exe]

Last errors/warnings:
- 00000.584 W: extended font config - overriding 'filename.Mongolian_Baiti=monbaiti.ttf' with 'MONBAITI.TTF'
- 00000.585 W: extended font config - overriding 'filename.Kalinga=kalinga.ttf' with 'KALINGA.TTF'
- 00000.585 W: extended font config - overriding 'filename.Iskoola_Pota=iskpota.ttf' with 'ISKPOTA.TTF'
- 00000.585 W: extended font config - overriding 'filename.Shruti=shruti.ttf' with 'SHRUTI.TTF'
- 00000.586 W: extended font config - overriding 'filename.Raavi=raavi.ttf' with 'RAAVI.TTF'
- 00000.586 W: extended font config - overriding 'filename.Gautami=gautami.ttf' with 'GAUTAMI.TTF'
- 00000.587 W: extended font config - overriding 'filename.Vrinda=vrinda.ttf' with 'VRINDA.TTF'
- 00000.587 W: extended font config - overriding 'filename.Kartika=kartika.ttf' with 'KARTIKA.TTF'
- 00000.588 W: extended font config - overriding 'filename.Latha=latha.ttf' with 'LATHA.TTF'
- 00002.321 E: java.security.KeyStoreException: Windows-ROOT not found. Cause: java.security.NoSuchAlgorithmException: Windows-ROOT KeyStore not available
}}}
"	sharcrash
21362	better navigation of change history	Core	tested	defect	team	new	2021-09-21T18:19:25+02:00	2026-11-06T21:22:10+01:00	"==== What steps will reproduce the problem?
1. edit one existing object
2. select it
3. hit Ctrl-H
4. be happy about the current representation of change data, differences between last changeset and current uncommitted edit \\
 [[Image(2021-09-21_11-12.png,link=,50%)]]
5. press the cursor-up key to view the previous change
6. be perplex why it's only showing one changeset, the one before the last. \\
 [[Image(2021-09-21_11-12_1.png,link=,50%)]]
7. press the cursor-down key to go back to the initial representation
8. be perplex why you're now looking at the last changeset, not the difference to your edits \\
 [[Image(2021-09-21_11-12_2.png,link=,50%)]]

==== What is the expected result?

keep showing a difference between subsequent changes (committed or not).

==== Please provide any additional information below. Attach a screenshot if possible.


{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2021-09-03 03:12:33 +0200 (Fri, 03 Sep 2021)
Revision:18193
Build-Date:2021-09-03 01:31:19
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (18193 fr) Linux Debian GNU/Linux 10 (buster)
Memory Usage: 415 MB / 1446 MB (111 MB allocated, but free)
Java version: 11.0.12+7-post-Debian-2deb10u1, Debian, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 1366×768 (scaling 1.00×1.00)
Maximum Screen Size: 1366×768
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: en_GB.UTF-8
Environment variable LC_ALL: fr_FR.utf8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: fr_FR
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: GNOME
Java package: openjdk-11-jre:amd64-11.0.12+7-2~deb10u1
Java ATK Wrapper package: libatk-wrapper-java:all-0.33.3-22
fonts-noto: fonts-noto:all-20181227-1
VM arguments: [-Djava.net.useSystemProxies=true]
Dataset consistency test: No problems found

Plugins:
+ buildings_tools (35756)
+ gridify (1606242219)
+ measurement (35640)
+ reverter (35732)
+ utilsplugin2 (35792)

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Enhanced_Lane_and_Road_Attributes&zip=1

Last errors/warnings:
- 08004.040 W: java.net.ConnectException: Le réseau n'est pas accessible (connect failed)
- 08004.040 E: Connexion au proxy '/192.168.43.1:3128' pour lʼURI 'https://b.tile.openstreetmap.org/17/36350/62404.png' impossible. Lʼexception était: java.net.ConnectException: Le réseau n'est pas accessible (connect failed)
- 08004.040 W: Already here java.net.ConnectException: Le réseau n'est pas accessible (connect failed)
- 08004.041 W: Already here java.net.ConnectException: Le réseau n'est pas accessible (connect failed)
- 08004.041 W: java.net.ConnectException: Le réseau n'est pas accessible (connect failed)
- 08004.041 W: Already here java.net.ConnectException: Le réseau n'est pas accessible (connect failed)
- 08004.041 W: java.net.ConnectException: Le réseau n'est pas accessible (connect failed)
- 09265.470 W: JCS - Silent failure during download: https://tile.openstreetmap.org/15/9142/15546.png
- 10810.918 W: JCS - Silent failure during download: https://tile.openstreetmap.org/19/146330/248707.png
- 20361.508 W: JCS - Silent failure during download: https://tile.openstreetmap.org/19/145927/249209.png
}}}
"	mariotomo
18697	"IAE: ""Failed to set current primitive. Current version not available in history"" after conflicts"	Core		defect	team	new	2020-02-11T00:11:03+01:00	2026-11-06T21:21:40+01:00	"==== What steps will reproduce the problem?
1. Edit something
2. Upload the changes
3. Open the edited object's history, then in the diff view click on the latest version

==== What is the expected result?
After changeset upload, JOSM should update the object versions as it did before the regression.

==== What happens instead?
JOSM throwing exception.

==== Please provide any additional information below. Attach a screenshot if possible.
Some time ago I noticed after uploading changes the diff tool sometimes became out of sync. I mean changes don't make a new entry in the history.

{{{
URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-02-01 01:10:57 +0100 (Sat, 01 Feb 2020)
Build-Date:2020-02-01 00:12:46
Revision:15806
Relative:URL: ^/trunk

Identification: JOSM/1.5 (15806 en) Mac OS X 10.14.6
OS Build number: Mac OS X 10.14.6 (18G3020)
Memory Usage: 1850 MB / 1850 MB (265 MB allocated, but free)
Java version: 1.8.0_201-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Screen: Display 188945226 1920x1080, Display 69969284 2048x1152
Maximum Screen Size: 2048x1152
VM arguments: [-Djava.security.policy=file:<java.home>/lib/security/javaws.policy, -DtrustProxy=true, -Djnlpx.home=<java.home>/bin, -Djava.security.manager, -Djnlpx.origFilenameArg=${HOME}/Desktop/josm.jnlp, -Djnlpx.remove=false, -Dsun.awt.warmup=true, -Djava.util.Arrays.useLegacyMergeSort=true, -Djnlpx.heapsize=NULL,2048m, -Dmacosx.jnlpx.dock.name=JOSM, -Dmacosx.jnlpx.dock.icon=${HOME}/Library/Application Support/Oracle/Java/Deployment/cache/6.0/25/4c122699-6f5f907a.icns, -Djnlpx.jvm=""<java.home>/bin/java""]
Dataset consistency test: No problems found

Plugins:
+ EasyPresets (1537621333)
+ Mapillary (1.5.20)
+ OpenStreetCam (280)
+ apache-commons (35092)
+ apache-http (35092)
+ auto_tools (73)
+ buildings_tools (35248)
+ graphview (35313)
+ intersection (0.0.7)
+ jna (35092)
+ osm-obj-info (56)
+ reverter (35313)
+ rex (53)
+ tageditor (35258)
+ turnlanes-tagging (283)
+ turnrestrictions (35313)
+ utilsplugin2 (35248)

Tagging presets:
+ https://raw.githubusercontent.com/osmlab/name-suggestion-index/master/dist/name-suggestions.presets.xml

Map paint styles:
+ https://raw.githubusercontent.com/KaartGroup/Kaart-Styles/master/Kaart-Styles.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
+ https://raw.githubusercontent.com/KaartGroup/Kaart-Styles/master/Overlapping%20Ways.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Streets&zip=1
- https://raw.githubusercontent.com/species/josm-preset-traffic_sign_direction/master/direction.mapcss

Validator rules:
+ https://raw.githubusercontent.com/KaartGroup/KaartValidator/master/kaart.clingstone.validator.mapcss

Last errors/warnings:
- E: Conflicts detected - <html>Uploading <strong>failed</strong> because the server has a newer version of one<br>of your nodes, ways, or relations.<br>The conflict is caused by the <strong>way</strong> with id <strong>767,597,312</strong>,<br>the server has version 4, your version is 3.<br><br>Click <strong>Synchronize way 767,597,312 only</strong> to synchronize the conflicting primitive only.<br>Click <strong>Synchronize entire dataset</strong> to synchronize the entire local dataset with the server.<br>Click <strong>Cancel</strong> to abort and continue editing.<br></html>
- W: Deleted or moved objects - <html>There are 6 objects in your local dataset which might be deleted on the server.<br>If you later try to delete or update them the server is likely to report a conflict.<br>Click <strong>Check on the server</strong> to check the state of these objects on the server.<br>Click <strong>Ignore</strong> to ignore.</html>
- E: Error header: Version mismatch: Provided 3, server had: 4 of Way 767597312
- E: Conflicts detected - <html>Uploading <strong>failed</strong> because the server has a newer version of one<br>of your nodes, ways, or relations.<br>The conflict is caused by the <strong>way</strong> with id <strong>767,597,312</strong>,<br>the server has version 4, your version is 3.<br><br>Click <strong>Synchronize way 767,597,312 only</strong> to synchronize the conflicting primitive only.<br>Click <strong>Synchronize entire dataset</strong> to synchronize the entire local dataset with the server.<br>Click <strong>Cancel</strong> to abort and continue editing.<br></html>
- W: Conflicts detected - <html>There was 1 conflict detected.</html>
- W: Deleted or moved objects - <html>There are 6 objects in your local dataset which might be deleted on the server.<br>If you later try to delete or update them the server is likely to report a conflict.<br>Click <strong>Check on the server</strong> to check the state of these objects on the server.<br>Click <strong>Ignore</strong> to ignore.</html>
- W: java.net.ConnectException: Operation timed out (Connection timed out)
- W: java.net.ConnectException: Operation timed out (Connection timed out)
- W: Deleted or moved objects - <html>There are 3 objects in your local dataset which might be deleted on the server.<br>If you later try to delete or update them the server is likely to report a conflict.<br>Click <strong>Check on the server</strong> to check the state of these objects on the server.<br>Click <strong>Ignore</strong> to ignore.</html>
- E: Handled by bug report queue: java.lang.IllegalArgumentException: Failed to set current primitive. Current version 5 not available in history.


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-2 (45) of javawsApplicationThreadGroup
java.lang.IllegalArgumentException: Failed to set current primitive. Current version 5 not available in history.
	at org.openstreetmap.josm.gui.history.HistoryBrowserModel.setCurrentPointInTime(HistoryBrowserModel.java:334)
	at org.openstreetmap.josm.gui.history.HistoryBrowserModel.setCurrentPointInTime(HistoryBrowserModel.java:416)
	at org.openstreetmap.josm.gui.history.VersionTable$MouseListener.mousePressed(VersionTable.java:137)
	at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:280)
	at java.awt.Component.processMouseEvent(Component.java:6536)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4532)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
}}}
"	anonymous
23940	History Dialog: No new version listed if the object is deleted	Core		defect	team	new	2024-09-24T15:55:37+02:00	2026-11-06T21:11:47+01:00	"==== What steps will reproduce the problem?
1. Download some data
1. Delete a node
1. Select the deleted node through search: `type:node deleted` with option ""all objects""
1. Open the History Dialog

==== What is the expected result?
A new version without a corresponding CS and the deleted state and therefore without coordinates

==== What happens instead?
No new version and no information about your modification

==== Please provide any additional information below. Attach a screenshot if possible.
This is also relevant in case of conflicts, as the incorrect version is used, a wrong CS is listed under ""Properties"" at least when a layer with a locally deleted node is merged to a copy of the layer without the deletion, see #23930

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2024-09-20 14:06:54 +0200 (Fri, 20 Sep 2024)
Revision:19228
Build-Date:2024-09-21 01:30:55
URL:https://josm.openstreetmap.de/svn/trunk
}}}
"	skyper
25002	OpenQA Osmose reports have invisible markers	Plugin openqa		defect	taylor.smock	reopened	2026-11-03T16:45:04+01:00	2026-11-06T18:45:32+01:00	"OpenQA version is 116.

I try to do:
1. Enable Osmose item 0, ""overlapping building.""
2. Download an area with Osmose issues.
3. Select Data → OpenQA layer.
4. Look for Osmose issue: there is none.

The Osmose API returns the issues, but OpenQA does not draw a visible marker. I notice OpenQA requests 
https://osmose.openstreetmap.fr/images/markers/marker-b-0.png

That address returns HTTP 404. ImageIO.read returns null, and OsmoseInformation.realGetIcon creates a blank icon.

I would like OpenQA shows a visible fallback icon when the Osmose marker image is unavailable.

Thanks"	anonymous
24842	[patch] Reuse the previous frame when panning at constant zoom	Core mappaint		enhancement	team	new	2026-08-12T13:05:21+02:00	2026-11-05T13:50:39+01:00	"Marked as `priority: major` due to being a massive improvement to the responsiveness of the panning action. 

Right-button dragging currently re-renders the whole map on every mouse move. On dense, low-zoom views one frame takes 200–300 ms to render even on my powerful gaming computer, and because the render happens on the UI thread, panning stutters and the editor freezes while a frame is drawn.

The map view already keeps the unchanged layers nonChangedLayersBuffer and reuses it while the view stays the same (lastViewID). The idea is to also reuse it for a panned view, by shifting the old pixels by the pan distance and only redrawing the strip that was exposed. Copying pixels is much cheaper than re-rasterizing the whole map.

The buffer is kept as a complete composite of all visible layers, so a panned view can always be built by shifting it. The reuse has to be skipped, falling back to the current full redraw, in situations such as a zoom, resize,
layer changes, paint preference changes, or a pan larger than the viewport.

One limitation is that while panning, layers invalidated mid-drag (for example freshly loaded imagery tiles) are only redrawn in the exposed strip, so their changes show up once the pan stops. When the view is still, each tile arrival still causes a full redraw of the layer, as before.

The main change is in `MapView.drawMapContent`. The imagery attribution is fixed to the viewport and would smear if it stayed in the reused composite, so it needs to be painted on top per frame instead.

Related: #11487 ""added an optional asynchronous tiled renderer"". This proposal targets the default synchronous renderer (used when tiled rendering is disabled and at zoom levels above `mappaint.fast_render.zlevel`), reducing per-frame work by reusing the previous frame instead of re-rasterizing the whole map. The two approaches are complementary.

=== Summary of attached patch (implementation example against r19616) ===

The map view already keeps a composite of the unchanged layers and reuses it while the view stays the same. This patch extends that to panned views. During a drag at constant zoom, it copies the previous frame shifted by the pan distance and redraws only the strip that was exposed (which I will refer to as pan-reuse). Copying pixels is far cheaper than re-rasterizing the whole map, so pan frames drop from roughly 200-300 ms to 1-20 ms (on my setup), depending on the complexity of the frame.

Changes by file:

* MapView.java: pan-reuse in `drawMapContent`. The buffer is copied back after every frame, so it always holds a complete composite of all visible layers and a pan frame can be built by shifting it and repainting the exposed strips. Reuse requires the layer set to be unchanged, the scale unchanged, the last frame to have covered the whole viewport, and the movement to be between 0.5 px and the viewport size. Layers invalidated during the pan (e.g. imagery tiles arriving) are painted strip-only, and the rest shows up when the pan stops. Also adds `isPanning()` and a per-frame imagery attribution pass. With the config preference `mappaint.debug.pan-reuse=true/false`, panning actions print debug information about which pan-reuse logic triggers into stdout.
* AbstractTileSourceLayer.java: the imagery attribution is fixed to the viewport, so it would smear if left in the reused composite. It is now painted on top of the frame each paint via a new `paintAttribution(Graphics2D, MapView)`.
* SelectAction.java, OsmDataLayer.java: hovering no longer invalidates the data layer. Previously every crossing of a feature caused a full re-render (~200-300 ms) and broke the reuse state. The hover highlight is now drawn by SelectAction as a temporary overlay layer, `OsmDataLayer.primitiveHovered` no longer resets the render cache or invalidates, and `giveUserFeedback` is suppressed while panning.
* MapMover.java: `endMovement` no longer invalidates all layers. A pan changes nothing but the view, so the last composite stays valid; the old invalidation caused a full re-render right after every drag and at the start of the next one.

Reuse falls back to the normal full repaint whenever the view did more than translate, i.e. zoom, resize, layer changes, or a pan larger than the viewport. When the view is still, invalidated layers repaint in full as before.

Testing: set `mappaint.debug.pan-reuse=true` (optionally `mappaint.render.benchmark=true`) and drag at constant zoom on a dense view. each drag frame should log `PANREUSE reuse` and the benchmark's phase 2's render time should drop to a fraction of a full frame render.

I will attach a video demonstrating panning in r19555 vs r19616 with the patch applied."	mistenman
24993	[patch] Update linux packaging files	unspecified		enhancement	team	new	2026-10-30T16:11:55+01:00	2026-11-05T13:50:39+01:00	I noticed the files used on Linux distros are outdated by years and some of the scripts recognizing Java runtime too. Also while doing so, realized a discrepancy in the validator CLI, which is also fixed.	gaben
24448	WARNING: package sun.security.action not in java.base	Core	tested	enhancement	team	new	2025-08-25T21:40:27+02:00	2026-11-05T13:50:39+01:00	"==== What steps will reproduce the problem?
1. Start JOSM in Windows 10 with the following bat file
{{{
java ^
   --module-path ""D:\graaljs-24.1.1\lib"" ^
   --add-modules org.graalvm.polyglot,org.graalvm.word,org.graalvm.collections ^
   --add-opens java.prefs/java.util.prefs=ALL-UNNAMED ^
   --add-exports java.base/sun.security.action=ALL-UNNAMED ^
   --add-exports java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED ^
   --add-exports java.desktop/com.sun.imageio.spi=ALL-UNNAMED ^
   -jar -Xms1g -Xmx8g ^
   josm-tested.jar
}}}
2. 
3. 

==== What is the expected result?
No warnings in console

==== What happens instead?
WARNING: package sun.security.action not in java.base


==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2025-07-11 10:12:51 +0200 (Fri, 11 Jul 2025)
Revision:19423
Build-Date:2025-07-12 01:30:35
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19423 bg) Windows 10 64-Bit
OS Build number: Windows 10 Education 22H2 (19045)
Memory Usage: 1024 MB / 8192 MB (619 MB allocated, but free)
Java version: 24.0.2+11-jvmci-b01, GraalVM Community, OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920x1080x32bpp@59Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1251
Locale info: bg_BG
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-XX:ThreadPriorityPolicy=1, --module-path=D:\graaljs-24.1.1\lib, --add-modules=org.graalvm.polyglot,org.graalvm.word,org.graalvm.collections, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED]

Plugins:
+ Mapillary (1813)
+ apache-commons (36438)
+ conflation (273)
+ ejml (36438)
+ geotools (36438)
+ imagery_offset_db (36438)
+ jackson (36438)
+ jaxb (36438)
+ jts (36438)
+ opendata (36440)
+ pmtiles (36438)
+ reverter (36447)
+ scripting (v0.3.5)
+ splinex (36438)
+ urbaneye3d (1.2.0)
+ utilsplugin2 (36438)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/NewParkingFeatures&zip=1

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/ParkingLanes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/MapWithAI&zip=1

Last errors/warnings:
- 00000.448 W: extended font config - overriding 'filename.Malgun_Gothic=malgun.ttf' with 'MALGUN.TTF'
- 00000.449 W: extended font config - overriding 'filename.Myanmar_Text=mmrtext.ttf' with 'MMRTEXT.TTF'
- 00000.449 W: extended font config - overriding 'filename.Mongolian_Baiti=monbaiti.ttf' with 'MONBAITI.TTF'
}}}

"	pl71
23680	Make jump to coordinates accept unsplit coordinates	Core		enhancement	felagund	needinfo	2024-05-15T20:46:45+02:00	2026-11-05T13:50:39+01:00	"CTRL+J opens a dialog that allows one to put in coordinates. It works but is inefficient:

1) Latitude and Longtitude are separate. However, I usually paste the coordinates from another program, so I have something like “-71.44939,-44.15408” in my clipboard. I need to manually split it, which takes time.

2) Unhelpfully on Linux, when either of the two fields gets focus, there is a prefilled value, which gets selected, causing the prefilled value to get to X clipboard (the one accessed by selecting text, not pressing CTRL+C), erasing the value I just wanted to paste.

It would be great if the dialog just accepted coordinates like ""-71.44939,-44.15408"" directly.

Also see discussion here, I am apparently not the only one trying to get around this: https://community.openstreetmap.org/t/efficient-way-to-jump-to-coordinates-in-josm/113228"	felagund
24956	"[PATCH] Way ""modified"" flag should be based on node IDs, not coordinates"	Core		defect	team	new	2026-10-17T17:09:42+02:00	2026-11-05T13:50:39+01:00	"Generally, if the user changes a primitive and then manually reverts the change (without using ""undo""), JOSM doesn't automatically clear the modified flag, but any command that re-downloads the primitive (such as ""Update modified"") will clear the modified flag (see #3384 and ticket:17983#comment:1).  However, for a way, the decision to clear the modified flag is based on the coordinates of the nodes in the way.  This does not match the OSM data model, which stores only the node IDs.  As a result, if a node has been moved, the way can get stuck in the ""modified"" state.  This is confusing when I'm reviewing my own change by searching for `modified` objects, and a new version can even get uploaded that has no diff from the previous version.  The latter happened to me in [https://www.openstreetmap.org/changeset/184037358 changeset 184037358] ([https://www.openstreetmap.org/way/1155668688/history/3 affected way 1], [https://www.openstreetmap.org/way/1234242974/history/7 affected way 2]).

There's also a reverse scenario in which there are two nodes N1 and N2 at the same coordinates and a way W that contained N1 is modified to contain N2 instead.  An ""Update modified"" will mark W as unmodified because the node coordinates match.  At that point, the history dialog will show no diff and an upload will not upload W because it is marked unmodified.  But internally, W still contains N2!  If the user then makes some other change to W and uploads it, the replacement of N1 with N2 will get uploaded along with the other change.  This is potentially dangerous because a change is uploaded potentially without the user's knowledge.  Fortunately, I think the scenario is rare because duplicate nodes are discouraged.  Also fortunately, if W is updated a second time (""Update modified"" would not do it, but ""Update data"" would, for example), it gets reverted to contain N1.  I'm going to focus on the first scenario in this ticket.

==== What steps will reproduce the problem?
1. Download some data.
2. Move a node that belongs to a way.
3. Search for `modified`.  Only the node is selected.
4. Change a tag of the way, then change it back manually (not using ""undo"").
5. Search for `modified`.  Both the node and the way are selected.
6. Perform the ""Update modified"" command.
7. Search for `modified`.

==== What is the expected result?
In step 7, only the node is selected.

==== What happens instead?
Both the node and the way are selected.

==== Please provide any additional information below. Attach a screenshot if possible.

The behavior is coming from [https://github.com/JOSM/josm/blob/9eace0f57c6ebc551b8012e0cebc6c9b4c63e88c/src/org/openstreetmap/josm/data/osm/Way.java#L329-L330 this code] in `Way.hasEqualSemanticAttributes`.  Changing `Way.hasEqualSemanticAttributes` to compare node IDs instead of coordinates (as [https://github.com/JOSM/josm/blob/9eace0f57c6ebc551b8012e0cebc6c9b4c63e88c/src/org/openstreetmap/josm/data/osm/Relation.java#L324 it does for relations]) fixes the bug.  But I wonder why `Way.hasEqualSemanticAttributes` was written to compare coordinates.  Are there other use cases that rely on it?  A wild guess: do some users rely on that behavior to deduplicate ""new"" ways when merging layers?  If so, a possible compromise might be to have `Way.hasEqualSemanticAttributes` compare the coordinates of a node if it is ""new"" and the ID if it is not ""new"".

To help get things moving, I'll attach a patch that just changes `Way.hasEqualSemanticAttributes` to compare node IDs.  However, even if that approach is acceptable, I think it might help to have at least one unit test of the scenario from this ticket to help ensure that someone doesn't change the code back without being aware of the scenario.  Any advice on how to write such a test would be appreciated.

Side remark: I noticed that the map paint style for ""Modified objects"" shows the way as modified starting from step 2.  I haven't figured out why that's happening, but I think it's a separate issue and I'll file a separate ticket if I care about it.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2026-10-12 17:25:48 +0200 (Mon, 12 Oct 2026)
Revision:19647
Build-Date:2026-10-13 01:30:50
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19647 en) Linux Fedora Linux 44 (Forty Four)
Memory Usage: 240 MB / 4072 MB (38 MB allocated, but free)
Java version: 25.0.4.1+1, Red Hat, Inc., OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 1920x1080x[Multi depth]@46Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: en_US.utf8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: X-QUBES
VM arguments: [--add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, -Djosm.home=<josm.pref>]
Dataset consistency test: No problems found
}}}
"	mattmccutchen
24924	[patch] Remove Junit 4 last remains	Unit tests		enhancement	team	new	2026-09-30T18:32:34+02:00	2026-11-05T13:50:39+01:00	"While working on some patches, I noticed that IntelliJ still has ancient Junit4 files on the classpath. I therefore started removing them completely from the core.

I only focused on the core, the core plugins still have to be checked.

FYI: There is an existing ticket for Junit 6 migration (#24921)."	gaben
24740	[PATCH] support amenity=lounger	Internal preset		enhancement	team	reopened	2026-05-24T08:32:50+02:00	2026-11-05T13:50:39+01:00	"==== What steps will reproduce the problem?
1. create node
2. add `amenity=lounger` to it

==== What is the expected result?

It has an icon

==== What happens instead?

Nothing

==== Please provide any additional information below. Attach a screenshot if possible.

It is in iD presets (that is how I found it, I have also some similar candidates and I can create tickets/patches if that would be welcome) - see https://github.com/openstreetmap/id-tagging-schema/blob/main/data/presets/amenity/lounger.json

iD presets have decent icon, using https://rapideditor.github.io/temaki/docs/#icon-temaki-lounger which maybe can be reused

has decent usage, 16k - see https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dlounger

I would add that preset for nodes only, like iD does

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2026-05-22 07:49:37 +0200 (Fri, 22 May 2026)
Revision:19575
Build-Date:2026-05-23 01:30:44
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19575 en) Linux Ubuntu 24.04.4 LTS
Memory Usage: 1148 MB / 7996 MB (127 MB allocated, but free)
Java version: 21.0.10+7-Ubuntu-124.04, Ubuntu, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 1920x1200x[Multi depth]@60Hz (scaling 1.00×1.00) :0.1 1920x1200x[Multi depth]@60Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1200
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: en_US.UTF-8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: LXQt
Java package: openjdk-21-jre:amd64-21.0.10+7-1~24.04
Java ATK Wrapper package: libatk-wrapper-java:all-0.40.0-3build2
libcommons-compress-java: libcommons-compress-java:all-1.25.0-1
libcommons-logging-java: libcommons-logging-java:all-1.3.0-1ubuntu1
fonts-noto: fonts-noto:-
Dataset consistency test: No problems found

Plugins:
+ todo (159)

Last errors/warnings:
- 00003.265 W: Update plugins - You updated your JOSM software. To prevent problems the plugins should be updated as well.  Update plugins now?
- 00055.950 W: java.net.SocketTimeoutException: Connect timed out
- 00060.592 W: java.net.SocketTimeoutException: Connect timed out
- 00060.595 E: java.net.SocketTimeoutException: Connect timed out
- 00060.612 E: org.openstreetmap.josm.io.OsmTransferException: Could not connect to the OSM server. Please check your internet connection.. Cause: java.net.SocketTimeoutException: Connect timed out
- 00060.631 E: IO Exception - <html>Failed to upload data to or download data from<br>'https://api.openstreetmap.org/api/0.6/map?bbox=19.8952103,49.8586814,19.9249077,49.8861187'<br>due to a problem with transferring data.<br>Details (untranslated): Connect timed out</html>
- 00211.908 W: Region [WMS_BLOCK_v2] : Problem verifying disk.
}}}
"	mkoniecz
24972	[patch] Fix Sonar issues in ImageryProvidersPanel	Core		task	team	new	2026-10-24T16:15:00+02:00	2026-11-05T13:50:39+01:00	"The loop has been adjusted to remove the 'outer' label. Furthermore, the deprecated URL constructor has been updated. Finally, curly braces have been added back to control structures, and fields and variables have been declared as `final`.

see: https://josm.openstreetmap.de/sonar/project/issues?files=src%2Forg%2Fopenstreetmap%2Fjosm%2Fgui%2Fpreferences%2Fimagery%2FImageryProvidersPanel.java&issueStatuses=CONFIRMED%2COPEN&open=AWrwiICNtAo_7XrKw1YB&id=josm
see: https://josm.openstreetmap.de/sonar/project/issues?files=src%2Forg%2Fopenstreetmap%2Fjosm%2Fgui%2Fpreferences%2Fimagery%2FImageryProvidersPanel.java&issueStatuses=CONFIRMED%2COPEN&open=94525603-6156-4e94-8801-71c008c580e0&id=josm"	DanProgs <Abenteurer.2901@…>
25000	"[PATCH] ""area=yes is unnecessary for amenity"" doesn't apply to benches, which can be tagged as areas or loops"	Core validator		defect	team	new	2026-11-03T10:12:30+01:00	2026-11-05T13:50:39+01:00	"The ""Unnecessary tags"" validator ruleset emits a warning ""''area=yes is unnecessary for amenity''"" for `way:closed[amenity][area?][!highway]`. This doesn't make sense for `amenity=bench`es, which can be mapped as closed non-area ways when they form a long continuous loop, or as closed area ways, when they're a large platform people can sit on. I suggest we exclude `amenity=bench` from this unnecessary tag warning, and add a new validator rule for `way:closed[amenity=bench][area!=yes][area!=no]` that warns ""''amenity=bench on a closed way is ambiguous. Specify area=yes for a seating platform area or area=no for a linear bench loop''"". I've attached a patch to this effect.

I can see `amenity=bicycle_parking` facing the same issue, but I think mapping them as closed non-area ways is uncommon.

"	mistenman
24974	[patch] Fix Sonar issues in UrlBasedQueryPanel	Core		task	team	new	2026-10-24T19:47:48+02:00	2026-11-05T13:50:39+01:00	"The URL constructor in `UrlBasedQueryPanel`, which was marked as deprecated, has been updated. Furthermore, curly braces have been added to control structures, and fields and variables have been declared as ""final.""

see: https://josm.openstreetmap.de/sonar/project/issues?files=src%2Forg%2Fopenstreetmap%2Fjosm%2Fgui%2Fdialogs%2Fchangeset%2Fquery%2FUrlBasedQueryPanel.java&issueStatuses=CONFIRMED%2COPEN&open=ed3cd1b2-c58d-42b4-96aa-39822d159619&id=josm"	DanProgs <Abenteurer.2901@…>
24973	[patch] Fix Sonar issues in GetCapabilitiesParseHelper and TMSCachedTileLoaderJob	Core		task	team	new	2026-10-24T19:28:33+02:00	2026-11-05T13:50:39+01:00	"The URL constructors in `GetCapabilitiesParseHelper` and `TMSCachedTileLoaderJob`, which were marked as deprecated, have been updated. Furthermore, guard conditions and curly braces for control structures have been added, and fields and variables have been declared as ""final"".

see: https://josm.openstreetmap.de/sonar/project/issues?files=src%2Forg%2Fopenstreetmap%2Fjosm%2Fdata%2Fimagery%2FTMSCachedTileLoaderJob.java&issueStatuses=CONFIRMED%2COPEN&open=d8230e52-0283-4872-b22a-5f0b729215f5&id=josm
see: https://josm.openstreetmap.de/sonar/project/issues?files=src%2Forg%2Fopenstreetmap%2Fjosm%2Fdata%2Fimagery%2FGetCapabilitiesParseHelper.java&issueStatuses=CONFIRMED%2COPEN&open=70de2939-6c2c-4f42-b3a6-0eb317da383d&id=josm
see: https://josm.openstreetmap.de/sonar/project/issues?files=src%2Forg%2Fopenstreetmap%2Fjosm%2Fdata%2Fimagery%2FGetCapabilitiesParseHelper.java&issueStatuses=CONFIRMED%2COPEN&open=06b83a45-1728-4b8e-a342-0408ce36b105&id=josm"	DanProgs <Abenteurer.2901@…>
24975	[patch] Fix Sonar issues in HelpContentReader and HelpContentReaderTest	Core		task	team	new	2026-10-24T20:57:32+02:00	2026-11-05T13:50:39+01:00	"The URL constructor in `HelpContentReader`, previously marked as deprecated, has been updated and the exception handling has been adjusted. Furthermore, curly braces have been added to control structures, and fields and variables have been declared as ""final.""

see: https://josm.openstreetmap.de/sonar/project/issues?files=src%2Forg%2Fopenstreetmap%2Fjosm%2Fgui%2Fhelp%2FHelpContentReader.java&issueStatuses=CONFIRMED%2COPEN&open=dab53830-8cb9-4bd3-979d-e9b4eb160ff0&id=josm"	DanProgs <Abenteurer.2901@…>
24976	[patch] Fix Sonar issues in DownloadFileTask	Core		task	team	new	2026-10-24T21:24:22+02:00	2026-11-05T13:50:39+01:00	"The URL constructor in `DownloadFileTask`, previously marked as deprecated, has been updated, and the exception handling has been adjusted. Furthermore, an integer overflow (in the `count` variable) has been eliminated, and a safeguard against division by zero has been added. Finally, curly braces have been restored to control structures, and fields and variables have been declared as `final`.

see:https://josm.openstreetmap.de/sonar/project/issues?files=src%2Forg%2Fopenstreetmap%2Fjosm%2Fgui%2Fio%2FDownloadFileTask.java&issueStatuses=CONFIRMED%2COPEN&open=8a1eb504-ebdd-4c02-9ea6-7ee6f7d5a6c9&id=josm"	DanProgs <Abenteurer.2901@…>
24977	[patch] Fix Sonar issues in WikimediaCommonsEntry	Core		task	team	new	2026-10-24T22:20:08+02:00	2026-11-05T13:50:39+01:00	"The URL constructor in `WikimediaCommonsEntry`, which was marked as deprecated, has been updated. Furthermore, checks have been adjusted, curly braces have been added to control structures, and fields and variables have been declared as ""final"".

see: https://josm.openstreetmap.de/sonar/project/issues?files=src%2Forg%2Fopenstreetmap%2Fjosm%2Fgui%2Flayer%2Fgeoimage%2FWikimediaCommonsEntry.java&issueStatuses=CONFIRMED%2COPEN&open=3ce45443-aab9-47dc-bc4e-6fb3ab2f62a9&id=josm"	DanProgs <Abenteurer.2901@…>
24978	[Patch] Refactoring of AudioPreferenceTest	Core		task	team	new	2026-10-25T22:00:38+01:00	2026-11-05T13:50:39+01:00	The test cases in 'AudioPreferenceTest' have been optimized.	DanProgs <Abenteurer.2901@…>
24234	Update tag2link component	Core tag2link		task	team	reopened	2025-03-26T18:49:11+01:00	2026-11-05T13:50:39+01:00	"It seems to me that the  [https://github.com/JOSM/tag2link/commit/f31e86c0f680bb12570a4490ef541a1ec4433cae Automatic update for 2025.2.21] has not been taken into account :

My JOSM version is 19342
I can't find the changes to the `Key:ref:UAI`(see screenshot)

"	leni
24979	[Patch] Refactoring of DisplayPreferenceTest	Core		task	team	new	2026-10-25T22:34:58+01:00	2026-11-05T13:50:39+01:00	The test cases in 'DisplayPreferenceTest' have been optimized.	DanProgs <Abenteurer.2901@…>
24188	[WIP patch] Speed up tagging preset filtering	Core		enhancement	team	new	2025-03-02T14:05:29+01:00	2026-11-05T13:50:39+01:00	"==== What steps will reproduce the problem?
1. Open a large dataset (I'v used bus stops in Hungary, from Overpass)
2. Select all objects (Ctrl+A)
3. Open up the preset search menu (F3)
4. Start typing something, `description` for example

==== What is the expected result?
JOSM is somewhat responsive, even knowing the huge data in memory.

==== What happens instead?
JOSM is barely reaches responsive definition, around 1 char/s input speed.

==== Please provide any additional information below. Attach a screenshot if possible.
The fix makes it 2.5 times faster in my use case and the responsiveness is there.

What is happening is that JOSM is going through all presets with role definitions and then trying to regex match the selected object. Yes, all of them, one by one. Matching takes a lot of time, so prefiltering helps, but I need to make sure nothing broke, therefore marked as WIP.

{{{#!patch
Index: src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSelector.java
===================================================================
--- src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSelector.java	(revision 19342)
+++ src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSelector.java	(working copy)
@@ -369,7 +369,8 @@
                     if (!suitable && preset.types.contains(TaggingPresetType.RELATION)
                             && preset.roles != null && !preset.roles.roles.isEmpty()) {
                         suitable = preset.roles.roles.stream().anyMatch(
-                                object -> object.memberExpression != null && selectedPrimitives.stream().anyMatch(object.memberExpression));
+                                role -> role.memberExpression != null
+                                        && selectedPrimitives.stream().filter(preset::typeMatches).anyMatch(role.memberExpression));
                         // keep the preset to allow the creation of new relations
                     }
                     if (!suitable) {

}}}


{{{
Revision:19342
Is-Local-Build:true
Build-Date:2025-03-02 12:46:28

Identification: JOSM/1.5 (19342 SVN en) Linux Ubuntu 22.04.5 LTS
Memory Usage: 314 MB / 3988 MB (207 MB allocated, but free)
Java version: 21.0.6+7-Ubuntu-122.04.1, Ubuntu, OpenJDK 64-Bit Server VM
}}}
"	gaben
23007	[patch] Show progress on plugin downloads	Core		defect	team	new	2023-06-15T22:42:00+02:00	2026-11-05T13:50:39+01:00	"==== What steps will reproduce the problem?
1. Download a plugin, preferably a large one (MagicWand with around 100 MB is a good candidate)
2. Wait until the download finishes

==== What is the expected result?
The download dialog showing the download progress for each plugin it downloads.

==== What happens instead?
Just an empty progress bar, showing no progress at all.

==== Please provide any additional information below. Attach a screenshot if possible.

I find it hard to utilise the progress monitors in JOSM which could be the reason, that half of the time they are not working as expected.

{{{
URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2023-06-14 22:39:45 +0200 (Wed, 14 Jun 2023)
Build-Date:2023-06-15 01:30:59
Revision:18762
Relative:URL: ^/trunk

Identification: JOSM/1.5 (18762 hu) Windows 10 64-Bit
OS Build number: Windows 10 Pro for Workstations 2009 (19045)
Memory Usage: 1040 MB / 7266 MB (725 MB allocated, but free)
Java version: 1.8.0_371-b11, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1200 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1200
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: Cp1250
System property sun.jnu.encoding: Cp1250
Locale info: hu_HU
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djava.security.manager, -Djava.security.policy=file:<java.home>\lib\security\javaws.policy, -DtrustProxy=true, -Djnlpx.home=<java.home>\bin, -Djnlpx.origFilenameArg=%UserProfile%\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\31\583aa85f-694e407d, -Djnlpx.remove=false, -Djava.util.Arrays.useLegacyMergeSort=true, -Djnlpx.splashport=49405, -Djnlp.application.href=https://josm.openstreetmap.de/download/josm-latest.jnlp, -Djnlpx.jvm=<java.home>\bin\javaw.exe]

Plugins:
+ AddrInterpolation (36079)
+ FastDraw (36066)
+ OpeningHoursEditor (36079)
+ apache-commons (36034)
+ buildings_tools (36011)
+ continuosDownload (1.3.4)
+ ejml (35924)
+ geotools (36068)
+ gridify (1606242219)
+ jackson (36034)
+ jaxb (35952)
+ josm_magic_wand
+ jts (36004)
+ libphonenumber (8.13.14)
+ opendata (36079)
+ pbf (36034)
+ phonenumber (1.0.2)
+ pt_assistant (2.1.15-19-g9aeec3c-SNAPSHOT)
+ reverter (36066)
+ tageditor (36079)
+ turnlanes-tagging (0.0.5)
+ utilsplugin2 (36079)
+ wikipedia (605)

Last errors/warnings:
- 00010.914 W: josm_magic_wand bővítmény Java 11 verziót igényel. A jelenlegi Java verzió: 8. A bővítmény használatához frissítened kell a Javát.
}}}
"	gaben
24635	Fix new PMD warnings	Core		task	team	new	2026-02-12T08:56:04+01:00	2026-11-05T13:50:39+01:00	"After PMD upgrade a bunch of new warnings cam up.

Anyone time to help fixing them?"	stoecker
25003	Tile error message overflows the next tile	Core		defect	team	new	2026-11-04T08:58:53+01:00	2026-11-05T13:50:39+01:00	"As title says. When a tile error is reported, sometimes it overflows to the next tile, making it hard to read. I noticed this issue a while ago, not a new issue.

[[Image(Képernyőkép 2026-11-03 202110.png,width=40%)]]

Test version: 19677."	gaben
24941	[patch] Compile JMapViewer as Java 11 target	JMapViewer		enhancement	team	new	2026-10-07T20:39:27+02:00	2026-11-05T13:50:39+01:00	"I realised that JMapViewer is still being compiled as a Java 8 target. Should I update it to Java 11, given that the Java 17 update is imminent? Or should I leave it as it is and switch to Java 17 once the core switch has been implemented? Or should it stay at Java 8?

This would tidy up the build scripts, as there are some hacks for pre-Java 11. E.g. the two-pass compile in Ant."	gaben
24115	Revert r19307 and use Java 14 switch expressions	Core		defect	team	new	2025-02-03T21:04:26+01:00	2026-11-05T13:50:39+01:00	r19307 is a stop-gap; the better solution uses the newer switch expressions. It probably wouldn't be a bad idea to look at all switch expressions at the same time.	taylor.smock
24755	panoramax plugin crashed when clicking on the picture	Plugin panoramax		defect	taylor.smock	new	2026-05-31T17:51:47+02:00	2026-11-04T19:08:00+01:00	"==== What steps will reproduce the problem?
1. i was browsing several panoramax pictures normally in this sequence: https://panoramax.osm-hr.org/?focus=pic&map=18.9/45.8139799/15.9292149&pic=45725879-4261-4314-b201-53974d914f9a&seq=92b92041-a987-4130-89ed-cc15293243b7&speed=250&theme=default&users=default&xyz=0.00/0.00/30 and notes around it
2. the panoramax plugin ""crash window"" appeared (offering to update, disable, or keep using the plugin)
3. if I keep the plugin and ignore the error, almost all further interactions with Panoramax plugin repeat the crash

==== What is the expected result?
no crash

==== What happens instead?
crash

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2026-03-28 20:28:41 +0100 (Sat, 28 Mar 2026)
Revision:19555
Build-Date:2026-03-29 01:30:57
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19555 en) Linux Debian GNU/Linux 13 (trixie)
Memory Usage: 2736 MB / 2987 MB (219 MB allocated, but free)
Java version: 21.0.11+10-1-deb13u2-Debian, Debian, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 1920x1080x[Multi depth]@60Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: en_US.UTF-8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: ICEWM
Java package: openjdk-21-jre:amd64-21.0.11+10-1~deb13u2
libcommons-logging-java: libcommons-logging-java:all-1.3.0-2
fonts-noto: fonts-noto:all-20201225-2
VM arguments: [-Dsun.java2d.opengl=true, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED]
Dataset consistency test: No problems found

Plugins:
+ DirectUpload (36474)
+ FixAddresses (36474)
+ ImageWayPoint (36474)
+ Mapillary (1819)
+ PicLayer (273)
+ Review.Changes (1.1.1)
+ apache-commons (36474)
+ apache-http (36474)
+ buildings_tools (36474)
+ conflation (279)
+ ejml (36474)
+ geotools (36474)
+ imagery_offset_db (36474)
+ jackson (36474)
+ jaxb (36474)
+ jna (36474)
+ jts (36474)
+ libphonenumber (9.0.31)
+ log4j (36474)
+ mbtiles (v2.8.1)
+ opendata (36474)
+ openqa (116)
+ osmwiki-dataitem (0.0.8)
+ panoramax (8)
+ phonenumber (1.2.0)
+ pmtiles (36474)
+ pt_assistant (682)
+ reverter (36474)
+ todo (159)
+ turnrestrictions (36474)
+ undelete (36474)
+ urbaneye3d (2.2.2)
+ utilsplugin2 (36497)
+ wikipedia (448)

Tagging presets:
+ https://raw.githubusercontent.com/OpenNauticalChart/josm/master/INT-1-preset.xml
+ https://josm.openstreetmap.de/josmfile?page=Presets/Healthcare&zip=1
+ https://<user.name>.com/prezentacije/OpenStreetMap/josm-preset.xml
+ https://josm.openstreetmap.de/josmfile?page=Presets/Xmas&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/GuidepostDirectionsAndDestinations&zip=1
+ https://github.com/simonpoole/beautified-JOSM-preset/releases/latest/download/josm_orig_icons.zip

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/PublicTransport&zip=1
+ http://bezdomni.net/Styles_HighlightedCapesBays-style.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Styles/ColorWays&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Streets&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Modified&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/CyclewaysStylingBNA&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/SidewalksPlus&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/BuildingColors&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/FixmeAndNote&zip=1
+ ${HOME}/tmp/g/1/openaddresses-HR.mapcss

Validator rules:
+ https://josm.openstreetmap.de/josmfile?page=Rules/KeepRight&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/QAToolInspiredValidations&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/OSMLint&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/MissingWeekdays&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/SourceObjectTag&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/IndoorRules&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/Pictures&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/MissingOpeningHours&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/CheckDate&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/FacebookWebsite&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/DuplicateAttributes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/MissingMain&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/OldCovid&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/NotCheck&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/ThisOrThat&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/ChargeRules&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/InvalidWebsiteProtocol&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/AddrFullWarning&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/AddrRelationWarning&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/CountryCodeCheck&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Rules/Geology&zip=1
+ https://raw.githubusercontent.com/stefan-a-bauer/josm-validators/master/mtb.validator.mapcss
+ https://github.com/Jungle-Bus/transport_mapcss/raw/gh-pages/transport.validator.zip
+ https://github.com/open-energy-transition/validate-my-grid/raw/refs/heads/gh-pages/power.validator.zip
+ https://josm.openstreetmap.de/josmfile?page=Rules/PublicTransportGtfs&zip=1
+ https://raw.githubusercontent.com/OpenNauticalChart/josm/master/Seamark.validator.mapcss
+ https://josm.openstreetmap.de/josmfile?page=Rules/UnresolvedFIXMEs&zip=1

Last errors/warnings:
- 19584.166 W: java.net.SocketTimeoutException: Connect timed out
- 19584.166 W: java.net.SocketTimeoutException: Connect timed out
- 19584.166 W: java.net.SocketTimeoutException: Connect timed out
- 19584.170 W: java.net.SocketTimeoutException: Connect timed out
- 19584.170 W: java.net.SocketTimeoutException: Connect timed out
- 19584.178 W: java.net.SocketTimeoutException: Connect timed out
- 19589.199 E: java.io.FileNotFoundException: /tmp/s/5294337_1.jpg (No such file or directory)
- 19758.396 W: java.lang.UnsupportedOperationException: The BROWSE action is not supported on the current platform!
- 19826.882 E: Handled by bug report queue: java.lang.NullPointerException: Cannot invoke ""java.lang.CharSequence.length()"" because ""this.text"" is null
- 19826.934 E: Handled by bug report queue: java.lang.NullPointerException: Cannot invoke ""java.lang.CharSequence.length()"" because ""this.text"" is null



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (25) of main
java.lang.NullPointerException: Cannot invoke ""java.lang.CharSequence.length()"" because ""this.text"" is null
	at java.base/java.util.regex.Matcher.getTextLength(Matcher.java:1808)
	at java.base/java.util.regex.Matcher.reset(Matcher.java:461)
	at java.base/java.util.regex.Matcher.<init>(Matcher.java:256)
	at java.base/java.util.regex.Pattern.matcher(Pattern.java:1180)
	at org.openstreetmap.josm.plugins.panoramax.PanoramaxJosmImage.getExifGpsInstant(PanoramaxJosmImage.java:260)
	at org.openstreetmap.josm.plugins.panoramax.PanoramaxJosmImage.getDisplayName(PanoramaxJosmImage.java:142)
	at org.openstreetmap.josm.gui.layer.geoimage.ImageViewerDialog.updateTitle(ImageViewerDialog.java:1090)
	at org.openstreetmap.josm.gui.layer.geoimage.ImageViewerDialog.updateButtonsNonNullEntry(ImageViewerDialog.java:1019)
	at org.openstreetmap.josm.gui.layer.geoimage.ImageViewerDialog.displayImages(ImageViewerDialog.java:948)
	at org.openstreetmap.josm.plugins.panoramax.PanoramaxLayer.selectionChanged(PanoramaxLayer.java:156)
	at java.base/java.util.Optional.ifPresent(Optional.java:178)
	at org.openstreetmap.josm.plugins.panoramax.PanoramaxLayer.fireClickEvent(PanoramaxLayer.java:216)
	at org.openstreetmap.josm.plugins.panoramax.PanoramaxLayer$DataMouseListener.mouseClicked(PanoramaxLayer.java:253)
	at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:280)
	at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:279)
	at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:279)
	at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:279)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6624)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3398)
	at java.desktop/java.awt.Component.processEvent(Component.java:6386)
	at java.desktop/java.awt.Container.processEvent(Container.java:2266)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4996)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4584)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:98)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
}}}
"	mnalis
25005	Wrong opening_hours with Data Edit Opening_hours	Plugin openinghourseditor	latest	defect	boman	new	2026-11-04T18:08:29+01:00	2026-11-04T18:29:33+01:00	"Import ""Mo-Th 09:00-12:00,14:00-17:30; We,Sa 09:00-12:00"" in the menu Data,  Edit Opening_hours.

The display is Mo-Th 09:00-12:00,14:00-17:30; Sa 09:00-12:00"" instead of ""Mo-Th 09:00-12:00,14:00-17:30; We,Sa 09:00-12:00"".
Note the comma between We and Sa that is noted on the original.

When I fix in this dialogue box with the mouse, I get ""Mo-Th 09:00-12:00,14:00-17:30; We-Sa 09:00-12:00"". Note We-Sa instead of We,Sa.

Perhaps, JOSM does not know the comma in hours.

Regards."	rpnpif@…
23564	Java 21 migration	Core		task	team	new	2024-03-20T14:20:21+01:00	2026-11-04T17:15:30+01:00	"Followup of #17858

Timelines:
* 2023-10-03: Build installer packages with Java 21 => r18848
* 2023-12-21: OpenWebStart supports Java 21
* 2024-03-20: Update Debian/Ubuntu launch script to prefer 21 over 17 and 11 => r19018
* 2025-05-29: Ubuntu LTS switches to Java 21
* 2025-08-09: Debian switches to Java 21 (''bookworm'' LTS til 2028-06-30 only has Java 17)
* ????-??-??: Enough users have switched to Java 21 that we can move codebase to Java 21 after transition phase
* ????-??-??: Start warning users that their version of Java will be unsupported during startup (1 month), then stop allowing JOSM to finish startup (1-3 months), then start compiling JOSM with Java 21 features."	taylor.smock
25001	Broken background image: Zurich, Switzerland	External imagery source		defect	team	new	2026-11-03T13:11:26+01:00	2026-11-04T16:04:33+01:00	"JOSM Version 19613
This is background image is broken because the link has changed:
PHOTO	CH	Kanton Zürich, Orthofoto ZH Frühjahr 2021 RGB 5cm[CH] ('Switzerland) - https://wms.zh.ch/OGDOrthoZH?LAYERS=ortho_w_2021&STYLES=&FORMAT=image/jpeg&CRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap - WMS	wms:https://wms.zh.ch/OGDOrthoZH?LAYERS=ortho_w_2021&STYLES=&FORMAT=image/jpeg&CRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap

The updated link should be:
wms:https://wms.zh.ch/OrthoZHWMS?LAYERS=ortho_w_2021&STYLES=&FORMAT=image/jpeg&CRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap

Moreover, the latest available image is this:
Kanton Zürich, Orthofoto ZH Sommer 2024/25 RGB 5cm	wms:https://wms.zh.ch/OrthoZHWMS?LAYERS=ortho_s_2024&STYLES=&FORMAT=image/jpeg&CRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap

Maybe this could be added to the standard config?

Thanks! 🙏"	Oreg
23819	[Plugin panoviewer] JOSM crashes with ```Inconsistency detected by ld.so: dl-lookup.c: 106: check_match: Assertion `version->filename == NULL || ! _dl_name_match_p (version->filename, map)' failed!```.	Plugin panoviewer	latest	defect	GhostFoxSledgehammer	new	2024-07-23T18:55:07+02:00	2026-11-03T11:24:08+01:00	"Ahoj,

having the [https://github.com/GhostFoxSledgehammer/panoviewer-josm plugin ""panoviewer""] installed, JOSM crashes on startup:

{{{
2024-07-23 18:45:03.795 INFO: loading plugin 'panoviewer' (version 0.9.0)
Inconsistency detected by ld.so: dl-lookup.c: 106: check_match: Assertion `version->filename == NULL || ! _dl_name_match_p (version->filename, map)' failed!
}}}

`josm --version`: `JOSM/1.5 (19149 SVN en) Linux Artix Linux`  
`java --version`:  
{{{
openjdk 22.0.1 2024-04-16
OpenJDK Runtime Environment (build 22.0.1+8)
OpenJDK 64-Bit Server VM (build 22.0.1+8, mixed mode, sharing)
}}}

There is alread [https://github.com/GhostFoxSledgehammer/panoviewer-josm/issues/1 an upstream bug report].

Regards!
"	osmidal
24991	Add LKS-2020 (EPSG:10306) Latvia TM projection	Core imagery		enhancement	MrFox	new	2026-10-30T15:46:02+01:00	2026-11-03T08:39:15+01:00	"Hello,

LKS-2020 released in October 1, 2026 and replaces the old LKS-92 Latvia TM.
More details at https://epsg.io/10306"	MrFox
24998	"[RFC PATCH] Search for ""modified"" objects includes ""new deleted"" objects, which is distracting"	Core		defect	team	new	2026-11-02T21:16:13+01:00	2026-11-03T08:18:23+01:00	"I frequently review my work by searching for `modified` with the ""all objects"" box checked.  I do want to review objects that exist on the server that I've deleted in my layer, but I've noticed that the search also includes objects that I created and then deleted locally without ever uploading them to the server.  This is distracting because such ""new deleted"" objects don't represent a change that would be uploaded and thus don't need to be reviewed.  (The upload dialog correctly filters them out.)  In fact, I was surprised that ""new deleted"" objects are retained in the layer at all, since they have no significance to any workflow I can imagine.

I propose that the `modified` keyword shouldn't match ""new deleted"" objects.  A workaround is to search for `modified -(new deleted)`, and it's easy enough to save that as a toolbar button.

Note that the `modified` keyword correctly does not match objects that are deleted both on the server and in the layer (call them ""already deleted"" objects).  For reference, I know of two ways to generate ""already deleted"" objects: download them from a changeset in the Changeset Manager, or use the undelete plugin to undelete an object and then delete it again.  So I'm proposing that the `modified` keyword should handle ""new deleted"" objects consistently with ""already deleted"" objects.

==== What steps will reproduce the problem?
1. Ensure expert mode is on.
2. Create a new local layer.
3. Create a node and then delete it.
4. Search for `modified` with the ""all objects"" box checked.

==== What is the expected result?
The search has no results.

==== What happens instead?
The search matches the node from step 3.

==== Please provide any additional information below. Attach a screenshot if possible.

According to my analysis, the problem happens because the condition in `SearchCompiler.Modified.match` is `osm.isModified() || osm.isNewOrUndeleted()`, and ''both'' disjuncts are true for ""new deleted"" objects.  FLAG_MODIFIED is true because `AbstractPrimitive.setDeleted` does `setModified(deleted ^ !isVisible())`, and new objects have FLAG_VISIBLE true (a questionable design in my view).  And of course, `osm.isNewOrUndeleted()` is true for all new objects.  

I can imagine a few levels at which the problem could be fixed:
1. Don't retain ""new deleted"" objects in the layer at all; purge them as soon as they are deleted.
2. Handle new objects more uniformly with objects deleted on the server by turning off FLAG_VISIBLE for new objects.  Then ""new deleted"" objects will have FLAG_MODIFIED set to false according to the `AbstractPrimitive.setDeleted` logic above.  Further, instead of having `SearchCompiler.Modified.match` call `osm.isNewOrUndeleted`, which expands to `isNew() || ((flags & (FLAG_VISIBLE + FLAG_DELETED)) == 0)`, just test the second part of the condition, `(flags & (FLAG_VISIBLE + FLAG_DELETED)) == 0` (which could be encapsulated in a new helper method of `AbstractPrimitive`).  With these changes, `SearchCompiler.Modified.match` would no longer match new deleted objects.
3. Just change the condition in `SearchCompiler.Modified.match` somehow so that it doesn't match new deleted objects.

Of course, fixing the problem at a deeper level has the potential benefit of fixing other problems related to new deleted objects and enabling code simplifications, but it presents a much higher risk of breaking other code in JOSM.  So my proposal would be to start with approach 3.  That doesn't preclude implementing a deeper fix later if the benefit is found to outweigh the cost.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2026-10-27 08:20:52 +0100 (Tue, 27 Oct 2026)
Revision:19668
Build-Date:2026-10-28 02:30:40
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19668 en) Linux Fedora Linux 44 (Forty Four)
Memory Usage: 234 MB / 4072 MB (132 MB allocated, but free)
Java version: 25.0.4.1+1, Red Hat, Inc., OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 1920x1080x[Multi depth]@46Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: en_US.utf8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: X-QUBES
VM arguments: [--add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, -Djosm.home=<josm.pref>]
Dataset consistency test: No problems found
}}}
"	mattmccutchen
23941	bicycle:conditional=dismount results in a validation error	Core validator		defect	team	new	2024-09-25T22:56:39+02:00	2026-11-03T08:12:27+01:00	"{{{
bicycle:conditional=dismount @ (Apr 01-30 08:00-18:00)
}}}
this tag  results in the following validation error when it should not
{{{
Error in bicycle:conditional value: dismount is not a valid restriction value (1)
}}}

I believe this is due to ""dismount"" being missing from ""RESTRICTION_VALUES"" in validation/tests/ConditionalKeys.java

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2024-06-03 18:08:14 +0200 (Mon, 03 Jun 2024)
Revision:19096
Build-Date:2024-06-07 01:31:15
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19096 en_GB) Windows 11 64-Bit
OS Build number: Windows 10 Pro 23H2 (22631)
Memory Usage: 1152 MB / 16368 MB (140 MB allocated, but free)
Java version: 22.0.1+8-16, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 2560×1440 (scaling 1.00×1.00) \Display1 2560×1440 (scaling 1.00×1.00) \Display2 1920×1080 (scaling 1.00×1.00)
Maximum Screen Size: 2560×1440
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1252
Locale info: en_GB
Numbers with default locale: 1234567890 -> 1234567890
Dataset consistency test: No problems found

Plugins:
+ HouseNumberTaggingTool (36298)
+ PicLayer (1.0.3)
+ apache-commons (36282)
+ ejml (36176)
+ geotools (36273)
+ gridify (1718663815)
+ jackson (36273)
+ jaxb (36118)
+ jts (36004)
+ measurement (36256)
+ opendata (36327)
+ scripting (v0.3.1)
+ turnlanes (36298)
+ utilsplugin2 (36298)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/Simple_Indoor_Tagging&zip=1
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/GB.zip
+ https://josm.openstreetmap.de/josmfile?page=Presets/ParkingLanes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Post_box_UK&zip=1

Map paint styles:
+ E:\Repos\josm-kits-base\Styles_kits_base.mapcss
- E:\Repos\josm-kits-PT\Styles_Kits-PT.mapcss
+ https://gitlab.com/cartocite/josm-style-traffic-signs-orientation/-/raw/main/traffic_sign_orientation_style.zip
- https://josm.openstreetmap.de/josmfile?page=Styles/SidewalksAndFootways&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Postcode&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Streets&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/FixmeAndNote&zip=1
- %UserProfile%\Desktop\custom bus style\Styles_KitsBusStops-style.mapcss
- E:\Repos\josm-power\Styles_Kits-UK-Power.mapcss
- E:\Repos\josm-street-lights\Styles_KitsStreetLights-style.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/ParkingLanes&zip=1
- %UserProfile%\Desktop\coloured street.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/Enhanced_Lane_and_Road_Attributes&zip=1

Last errors/warnings:
- 00003.308 W: Unable to request certificate of https://roottest-g3.pkioverheid.nl
- 00008.377 E: Failed to locate image 'traffic_signs/A/A_V4a.png'
- 00008.378 W:  No overtaking: Could not get presets icon traffic_signs/A/A_V4a.png
- 00056.228 E: Failed to locate image 'ColouredStreetsIcon.svg'
- 00056.228 W: Mappaint style ""standard"" (Coloured Streets) icon ""ColouredStreetsIcon.svg"" not found.
- 00065.360 E: org.openstreetmap.josm.io.OsmApiException: ResponseCode=400, Error Header=<You requested too many nodes (limit is 50000). Either request a smaller area, or use planet.osm>
- 00065.368 E: Bad Request - <html>The OSM server 'api.openstreetmap.org' reported a bad request.<br><br>The area you tried to download is too big or your request was too large.<br>Either request a smaller area or use an export file provided by the OSM community.</html>
- 00201.815 W: java.net.SocketTimeoutException: Read timed out. Cause: java.net.SocketTimeoutException: Read timed out
- 00203.123 W: java.net.SocketTimeoutException: Read timed out. Cause: java.net.SocketTimeoutException: Read timed out
- 00203.613 W: java.net.SocketTimeoutException: Read timed out. Cause: java.net.SocketTimeoutException: Read timed out
}}}
"	anonymous
12270	[patch] allow modifying note data that has not been uploaded yet	Core notes	tested	enhancement	team	new	2016-01-02T10:22:45+01:00	2026-11-02T23:02:00+01:00	"while editing and adding notes, it could be helpful to modify them - for example, remove new notes completely, edit their content, remove new comments, edit their content

currently there does not seem to be any way to do so short of deleting the note layer, which nukes all modifications"	richlv
24850	parking:*:maxstay:conditional flagged by validator	Core validator		defect	team	new	2026-08-16T13:56:38+02:00	2026-11-02T20:11:14+01:00	"==== What steps will reproduce the problem?
1. tag a highway:residential with parking:left:maxstay:conditional=2 hours @ (08:00-22:00)
2. upload change set
3. Validation results will flag this as wrong syntax

==== What is the expected result?

that the syntax is evaluated and not flagged.
https://wiki.openstreetmap.org/wiki/Street_parking#Time_limits

==== What happens instead?

Syntax is flagged as wrong. I tried
parking:left:maxstay:conditional=2 hours @ (08:00-22:00)
and
parking:left:maxstay:conditional=2 hours @ (Mo-Su 08:00-22:00)



==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2026-08-11 15:36:21 +0200 (Tue, 11 Aug 2026)
Revision:19613
Build-Date:2026-08-12 01:30:51
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19613 en) Linux Ubuntu 26.04 LTS
Memory Usage: 736 MB / 9296 MB (104 MB allocated, but free)
Java version: 25.0.3+9-2-26.04.2-Ubuntu, Ubuntu, OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.gtk.GTKLookAndFeel
Screen: :0.0 2560x1440x[Multi depth]@60Hz (scaling 1.00×1.00)
Maximum Screen Size: 2560×1440
Best cursor sizes: 16×16→16×16, 32×32→32×32
Environment variable LANG: en_US.UTF-8
System property file.encoding: UTF-8
System property sun.jnu.encoding: UTF-8
Locale info: en_US
Numbers with default locale: 1234567890 -> 1234567890
Desktop environment: ubuntu:GNOME
Java package: openjdk-25-jre:amd64-25.0.3+9-2~26.04.2
Java ATK Wrapper package: libatk-wrapper-java:all-0.44.0-1
fonts-noto: fonts-noto:all-20201225-2build1
VM arguments: [--module-path=/usr/share/openjfx/lib, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, -Djosm.restart=true, -Djava.net.useSystemProxies=true, -XX:MaxRAMPercentage=75.0, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED]
Dataset consistency test: No problems found

Plugins:
+ DirectDownload (36503)
+ Mapillary (1822)
+ apache-commons (36483)
+ apache-http (36483)
+ buildings_tools (36503)
+ ejml (36483)
+ imagery_offset_db (36503)
+ jna (36483)
+ jts (36483)
+ log4j (36483)
+ rex (63)
+ scripting (v0.4.2)
+ tageditor (36503)
+ terracer (36503)
+ todo (159)
+ turnlanes-tagging (1786514827)
+ turnrestrictions (36503)
+ utilsplugin2 (36503)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/Bus_lanes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/BuildingPreset&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/LaneAttributes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/ParkingLanes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Industrial&zip=1
+ https://raw.githubusercontent.com/species/josm-preset-wheelchair/master/sidewalks_kerbs.xml
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/AU.zip

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/BesideTheRoad_Speed&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/SlovakiaBicycleRoutes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/Coloured_Streets&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Maxspeed&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/ParkingLanes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/Schools&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/Sidewalks&zip=1
- ${HOME}/Software/osm-nsw-address-import/src/elemstyles.mapcss

Last errors/warnings:
- 00002.374 W: Failed to scan file 'ImproveOsm.jar.new' for plugin information. Skipping.
- 00003.207 W: java.util.zip.ZipException: zip file is empty
- 00003.207 W: PluginException: : org.openstreetmap.josm.plugins.PluginException: Invalid jar file '<josm.pref>/plugins/ImproveOsm.jar.new'
- 00003.208 W: Failed to scan file 'ImproveOsm.jar.new' for plugin information. Skipping.
- 00009.115 W: java.util.zip.ZipException: zip file is empty
- 00009.115 W: PluginException: : org.openstreetmap.josm.plugins.PluginException: Invalid jar file '<josm.pref>/plugins/ImproveOsm.jar.new'
- 00009.116 W: Failed to scan file 'ImproveOsm.jar.new' for plugin information. Skipping.
- 00030.773 W: Failed to install plugin '<josm.pref>/plugins/ImproveOsm.jar' from temporary download file '<josm.pref>/plugins/ImproveOsm.jar.new'. zip file is empty: java.util.zip.ZipException: zip file is empty
- 00042.810 W: Failed to load Mappaint styles from '${HOME}/Software/osm-nsw-address-import/src/elemstyles.mapcss'. Exception was: java.nio.file.NoSuchFileException: ${HOME}/Software/osm-nsw-address-import/src/elemstyles.mapcss
- 00042.810 E: java.nio.file.NoSuchFileException: ${HOME}/Software/osm-nsw-address-import/src/elemstyles.mapcss
}}}
"	mapping@…
24996	Terracer plugin fails to install/download	Plugin terracer	tested	defect	xplorer765@…	needinfo	2026-11-02T14:54:48+01:00	2026-11-02T16:03:31+01:00	"==== What steps will reproduce the problem?
1. Open JOSM
2. Go to Edit → Preferences → Plugins
3. Search for ""terracer"" and click download plugin
4. Update plugin

==== What is the expected result?
The terracer plugin should install successfully and appear in the plugin list.

==== What happens instead?
The plugin fails to download/install. An error occurs during installation.


{{{
Revision:19613
Build-Date:2026-08-12 01:42:58

Identification: JOSM/1.5 (19613 en) Windows 11 64-Bit
OS Build number: Windows 10 Home Single Language 26H2 (26300)
Memory Usage: 428 MB / 6020 MB (157 MB allocated, but free)
Java version: 21.0.12+8-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920x1080x32bpp@60Hz (scaling 1.25×1.25)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1252
Locale info: en_IN
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=1.5.19613, -XX:MaxRAMPercentage=75.0, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djpackage.app-path=%UserProfile%\AppData\Local\JOSM\JOSM.exe]
Dataset consistency test: No problems found

Plugins:
+ FastDraw (36503)
+ buildings_tools (36503)
+ markseen (184)
+ utilsplugin2 (36503)

Last errors/warnings:
- 00000.501 W: extended font config - overriding 'filename.Malgun_Gothic=malgun.ttf' with 'MALGUN.TTF'
- 00000.503 W: extended font config - overriding 'filename.Myanmar_Text=mmrtext.ttf' with 'MMRTEXT.TTF'
- 00000.504 W: extended font config - overriding 'filename.Mongolian_Baiti=monbaiti.ttf' with 'MONBAITI.TTF'
- 00001.085 E: java.security.KeyStoreException: Windows-ROOT not found. Cause: java.security.NoSuchAlgorithmException: Windows-ROOT KeyStore not available
- 00090.917 W: Missing plugin main version in plugin mapwithai
- 00100.351 W: Missing plugin main version in plugin mapwithai
}}}
"	xplorer765@…
16100	Strava Global Heatmap in JOSM	Plugin strava_heatmap		enhancement	allier-osm	new	2018-03-16T21:47:30+01:00	2026-11-02T14:49:40+01:00	With the latest changes to the Global Heatmap, street-level detail is only available when logged into a Strava account. A result of this is unfortunately that the Heatmap has become a more or less useless tool for improving Openstreetmap using JOSM. I guess that this was an unintended result of the changes made to the Heatmap.	anonymous
24534	sometimes using the sidewalks plugin across two ways at once causes an error	Plugin sidewalks		defect	taylor.smock	new	2025-11-09T22:20:20+01:00	2026-11-01T17:59:43+01:00	"==== What steps will reproduce the problem?
1. using the sidewalks plugin, enter sidewalk mode
2. place a node and, crossing two highways, place another node
==== What is the expected result?
for it to add two nodes where it crosses both highways, and tag them with highway=crossing.
==== What happens instead?
it sometimes does not create a node on one or both highways, or sometimes errors
==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2025-08-31 14:19:57 +0200 (Sun, 31 Aug 2025)
Revision:19439
Build-Date:2025-09-02 01:30:58
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (19439 en_CA) Windows 11 64-Bit
OS Build number: Windows 10 Pro 25H2 (26200)
Memory Usage: 656 MB / 8176 MB (150 MB allocated, but free)
Java version: 21.0.5+11-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920x1080x32bpp@75Hz (scaling 1.00×1.00) \Display1 1920x1080x32bpp@165Hz (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: UTF-8
System property sun.jnu.encoding: Cp1252
Locale info: en_CA
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Dicedtea-web.bin.location=%UserProfile%\AppData\Local\Programs\OpenWebStart\javaws, -Djava.util.Arrays.useLegacyMergeSort=true, --add-reads=java.base=ALL-UNNAMED,java.desktop, --add-reads=java.desktop=ALL-UNNAMED,java.naming, --add-reads=java.naming=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.awt=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/javax.jnlp=ALL-UNNAMED,java.desktop, --add-exports=java.base/com.sun.net.ssl.internal.ssl=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.net.www.protocol.jar=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.action=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.provider=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.util=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.validator=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.security.x509=ALL-UNNAMED,java.desktop, --add-exports=java.base/jdk.internal.util.jar=ALL-UNNAMED,java.desktop, --add-exports=java.base/sun.net.www.protocol.http=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.awt.X11=ALL-UNNAMED,java.desktop, --add-exports=java.desktop/sun.applet=ALL-UNNAMED,java.desktop,jdk.jsobject, --add-exports=java.naming/com.sun.jndi.toolkit.url=ALL-UNNAMED,java.desktop, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=javafx.graphics/com.sun.javafx.application=ALL-UNNAMED, --add-exports=jdk.deploy/com.sun.deploy.config=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djava.security.manager=allow]
Dataset consistency test: No problems found

Plugins:
+ FastDraw (36438)
+ Mapillary (1813)
+ RoadSigns (36438)
+ apache-commons (36438)
+ buildings_tools (36438)
+ fastdriveway (v1.0.1)
+ gridify (37)
+ indoor_sweepline (36438)
+ indoorequal (0.0.7)
+ indoorhelper (262)
+ markseen (176)
+ pmtiles (36438)
+ sidewalks (71)
+ turnlanes (36438)
+ utilsplugin2 (36438)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/Simple_Indoor_Tagging&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/ParkingLanes&zip=1
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/US.zip
+ https://raw.githubusercontent.com/yopaseopor/traffic_signs_preset_JOSM/master/CA.zip
+ https://josm.openstreetmap.de/josmfile?page=Presets/TurnLanes&zip=1

Map paint styles:
+ D:\Downloads\style\elemstyles.mapcss
- <josm.pref>\plugins\indoorhelper\resources\sit.mapcss

Last errors/warnings:
- 00175.860 W: java.io.IOException: Attribution is not loaded yet
- 00175.860 W: java.io.IOException: Attribution is not loaded yet
- 00175.860 W: java.io.IOException: Attribution is not loaded yet
- 00175.861 W: java.io.IOException: Attribution is not loaded yet
- 00175.862 W: java.io.IOException: Attribution is not loaded yet
- 00175.862 W: java.io.IOException: Attribution is not loaded yet
- 00175.863 W: java.io.IOException: Attribution is not loaded yet
- 00175.864 W: java.io.IOException: Attribution is not loaded yet
- 00175.865 W: java.io.IOException: Attribution is not loaded yet
- 01862.279 E: Handled by bug report queue: java.lang.IllegalArgumentException: {Way id=-3615 version=0 MVDT nodes=[]} is already deleted



=== REPORTED CRASH DATA ===
sequence_information:
 - sequence_name: Sequence: Create crossing way
 - sequence_command: Delete way ‎footway (highway)‎ (0 nodes)‌
 - sequence_index: 0
 - sequence_commands: [org.openstreetmap.josm.command.DeleteCommand;org.openstreetmap.josm.command.ChangePropertyCommand;org.openstreetmap.josm.command.AddCommand;org.openstreetmap.josm.command.ChangeNodesCommand;org.openstreetmap.josm.command.ChangeNodesCommand;org.openstreetmap.josm.command.AddPrimitivesCommand]
 - sequence_commands_descriptions: [Delete way ‎footway (highway)‎ (0 nodes)‌;Set 1 tags for 0 objects;Add node node;Change nodes of ‎Dolan Avenue‎ (2 nodes)‌;Change nodes of ‎footway (highway)‎ (4 nodes)‌;Added 1 object]

BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-1 (67) of JOSM
java.lang.IllegalArgumentException: {Way id=-3615 version=0 MVDT nodes=[]} is already deleted
	at org.openstreetmap.josm.command.DeleteCommand.lambda$executeCommand$0(DeleteCommand.java:211)
	at org.openstreetmap.josm.data.osm.DataSet.update(DataSet.java:1065)
	at org.openstreetmap.josm.command.DeleteCommand.executeCommand(DeleteCommand.java:207)
	at org.openstreetmap.josm.command.SequenceCommand.executeCommand(SequenceCommand.java:112)
	at org.openstreetmap.josm.data.UndoRedoHandler.addNoRedraw(UndoRedoHandler.java:300)
	at org.openstreetmap.josm.data.UndoRedoHandler.add(UndoRedoHandler.java:354)
	at org.openstreetmap.josm.plugins.mapwithai.street_level.actions.mapmode.SidewalkMode.createCrossingWay(SidewalkMode.java:338)
	at org.openstreetmap.josm.plugins.mapwithai.street_level.actions.mapmode.SidewalkMode.mouseReleased(SidewalkMode.java:251)
	at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:298)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6621)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3398)
	at java.desktop/java.awt.Component.processEvent(Component.java:6386)
	at java.desktop/java.awt.Container.processEvent(Container.java:2266)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4996)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4828)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:98)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
}}}
"	anonymous
24985	New action: create a buffer (area at a given distance) around  selected ways	Core		enhancement	team	new	2026-10-28T00:14:54+01:00	2026-10-31T13:39:41+01:00	"This is a request for comments before any code is written. It follows up the suggestion in #24891 (comments 2 and 4) and the bug in #24983.

==== Use case
From #24891: a GPX track, possibly with excursions, and a GeoJSON file with many thousands of POI. The POI close to the track should be kept and all others removed. The approach is to draw a polygon at e.g. 100 m around the track and then use ""All inside [testing]"" to select the POI inside it. GerdP suggested an action like ""Calculate buffer"" or ""Calculate halo"" for this.

==== Why the Parallel mode is not the tool
Parallel offsets a path to one side. Running it once to the left and once to the right gives something which looks like a buffer, but is not one:
 * The two runs produce two separate sets of ways. They have no round ends at the start and end of the path, and they are not joined into a closed way.
 * Where the path crosses itself or comes back close to itself, each side consists of several pieces (see #24983). The pieces of one side meet those of the other side, but at separate nodes, so they would have to be merged by hand.
 * An area enclosed by the path but further than the distance from it (e.g. inside a loop) is a hole of the buffer, made of pieces from both sides.
Turning that into a closed area is a lot of manual work, and easy to get wrong.

==== Proposal
A new action '''Tools > Create Buffer...''', next to Create Circle:
 * It takes the selected ways, asks for the distance (in the current system of measurement, remembering the last value) and creates the outline of everything within that distance of them.
 * The result is a closed way, or a multipolygon if the outline has holes or several separate parts. It is selected afterwards, so ""All inside"" can be used right away.
 * The outline has round ends and round outer corners, approximated by chords like the arcs of the Parallel mode. Where the ways cross or come close to each other, the outline is simply the outline of the union.
 * The distance is in metres, converted to projected units at the centre of the selection, as the Parallel mode does at the mouse position. Over very large extents the true distance varies with the scale of the projection.

==== Questions
 1. Core, or rather a plugin (utilsplugin2 has many tools of this kind)?
 2. Inputs: ways only, or also nodes (giving circles)? For a closed way: the buffer of the line (a band on both sides) or of the area (grown outwards)?
 3. Several unconnected ways: one result for their union, or one per way?
 4. Tags of the result: none (it is a construction helper), `area=yes`, or chosen by the user?
 5. Menu placement and shortcut.

==== Implementation ideas
Two ways to compute the outline:
 * '''Reuse the engine of the Parallel mode''' (#24891, #24983). A path traversed out and back is a closed ring whose outward offset is exactly the buffer outline, including the round ends. A first experiment gives the right outline (outer ring and the hole) for a path looping round and passing under itself. Two things need work: the corners must stay round (the Parallel mode replaces gentle arcs by mitres), and a path with an out-and-back excursion of its own does not close yet. It handles one branchless path, like the Parallel mode.
 * '''Java2D''': stroke the ways with a `BasicStroke` of width 2 × distance with round caps and joins, and merge the shapes with `java.awt.geom.Area`. Much less code, and several ways or nodes are merged naturally. To check: precision (the stroker works in floats, so the coordinates would have to be shifted to a local origin first) and speed on large inputs such as a long track or a coastline.
"	wangi
