source: josm

Revision Log Mode:


Legend:

Added
Modified
Copied or renamed
Diff Rev Age Author
(edit) @19240   12 months stoecker

add some more script variants, fix #23964

(edit) @19239   12 months Klumbumbus

see #23184 - Change color of bus in busway icon from black to blue to be more consistent with similar icons, e.g. steps, bicycle_road, living_street or pedestrian

(edit) @19238   12 months taylor.smock

See #23926: Fix new coverity issues

Coverity doesn't like null checks when a previous statement would have thrown
a NullPointerException on the object being checked for null. This fixes the
"defect" by removing the null checks and adding a null check in
ColorScale#addTitle.

(edit) @19237   12 months taylor.smock

See #23948: Fix url type (faq to help for /wiki/Help) and add a link for contribute

This additionally adds system requirements (both required and recommended).
The memory requirements comes from downloading
39.0642941;-108.5662508;39.0654645;-108.5642928
and displaying the Mesa County GIS Valleywide 2024 imagery. This was after a GC
was triggered manually; as such, JOSM is technically usable.

(edit) @19236   12 months taylor.smock

Fix #23926: Extend GPS legend for time information, improve design (patch by Pauline, modified)

Modifications are as follows:

  • Reduction of code duplication
  • Addition of functions in ColorHelper to calculate contrast ratios
(edit) @19235   12 months taylor.smock

Fix #23956: JsonParsingException when the destination server returns 200 and a malformed document

In this case, the destination server performed a redirect via javascript in the
response.

(edit) @19234   12 months taylor.smock

Fix #23951: Fix free in startup linux scripts when it is in a localized environment

(edit) @19233   12 months stoecker

drop list url, see #23948

(edit) @19232   12 months taylor.smock

Fix #23948: Update AppStream metadata (patch by sebastic, modified)

Modifications are as follows:

  • Addition of caption to screenshot
  • Addition of various supplementary URLs
(edit) @19231   12 months taylor.smock

ShortcutTest: Determine if HTML is supported before asserting against an HTML string

This does a few things:

  • Ensures that the test will work properly if the default LaF is *not* Aqua (the default macOS LaF)
  • If Aqua ever supports HTML in menu tooltips, we will only have to change one location
  • Fewer locations to worry about in unit tests if we change the default LaF for mac to something else
(edit) @19230   12 months taylor.smock

i18n updates

(edit) @19229   12 months taylor.smock

remove TLD from IANA

(edit) @19228   12 months taylor.smock

Fix #23930: Merging duplicated layers with little differences stalls JOSM

This is fixed by keeping the "last" conflict in the problem if statement body.

(edit) @19227   12 months taylor.smock

Fix #20908: IllegalStateException: JOSM expected to find primitive in dataset after undoing a Parallel mode action

The test acts (roughly) like a user would, and performs click and drags via a new
utility class (MapModeUtils) which has various methods for performing mouse
actions on the map view.

(edit) @19226   12 months taylor.smock

Update tests for r19225

(edit) @19225   12 months taylor.smock

Fix #23925: Indicate/link to alternative download methods when the user attempts to download too much data

(edit) @19224   12 months taylor.smock

Add/ignore popular tags

Add:

  • flood_prone=yes: This is mostly used to indicate that a highway may be flooded after a heavy rain.
(edit) @19223   12 months taylor.smock

Add JUnit5 tags to integration tests, functional tests, and performance tests

This should allow contributors to filter out integration tests inside the standard
test directory. Of specific note, this should reduce test runtime for contributors
by a non-trivial amount if contributors filter out the tagged tests.

For consistencies’ sake, tests in functional and performance were also
annotated. As such, if we ever merge the test directories, this will let us
filter which tests are run in CI.

Note that many functional tests don't have the annotation. This is because they
are manual tests.

(edit) @19222   13 months taylor.smock

Add/ignore popular tags

Ignore:

  • admin_type:PH: Highly localized to the Philippines
  • residential:condominium: Deprecated -- wiki suggests residential=apartments + condo=*
  • sidewalk: This is replaced by sidewalk:both, but is still valid tagging.

Add:

  • managed (to wetland, wood, fell, and heath)
  • sidewalk:{both|left|right}: We already had validator rules for these, this just adds them to presets. Note that sidewalk and sidewalk:both are similar, but sidewalk=separate is unspecific as to the side of the sidewalk.
(edit) @19221   13 months taylor.smock

Fix failing build due to putting unit test for renderer in unit instead of functional

This was done by fixing a TODO comment ("move to separate class ImageTestUtils")
in the MapCSSRendererTest.

(edit) @19220   13 months taylor.smock

See #11487: Have josm render data to tiles

Start adding basic rendering tests for tiled rendering.
Right now, the test only looks at a point in the center of the tile; there seems
to be some positioning/stretching issues at the edges that I need to debug and
fix.

(edit) @19219   13 months taylor.smock

See #23837: Set -XX:MaxRAMPercentage to >25% of system memory

Drop RAM arguments since it causes issues with OWS.

(edit) @19218   13 months stoecker

fix a PMD warning

(edit) @19217   13 months taylor.smock

Fix #23911: wireframe was not properly highlighting relations

This was a regression from r19166.

(edit) @19216   13 months taylor.smock

Fix #23866: java.io.UncheckedIOException: java.nio.file.FileSystemException: The device is not ready

This does two things:

  1. Unwrap an unchecked exception in ImagesLoader so that we are throwing a checked exception
  2. Explain some IO exceptions (specifically "the device is not ready")

This is not the "best" solution, but it should mean that we are not ignoring
issues related to JOSM.

(edit) @19215   13 months taylor.smock

Fix #23837: Set -XX:MaxRAMPercentage to >25% of system memory

This does not currently work for WebStart, see
https://github.com/AdoptOpenJDK/IcedTea-Web/pull/954 .

As noted in the ticket, all supported MS Windows and Apple macOS machines have
4G+ of RAM. Linux machines don't have a baseline, and some have 1G or less. Where
we detect that a machine has <8G of memory in the linux start scripts, we don't
add the JVM parameters.

As a reminder to everyone reading the changelog: just because we ask for the
ability to use 75% of the system memory doesn't mean we will use all of that
memory. The JVM will free up unused memory for the rest of the system.

We additionally set the minimum memory allocation to 256m; while this can be
lower, that is for minimal amounts of data loaded. A clean JOSM install will use
99mb, for example. But once we add a minimal amount of data and a background
layer, static memory usage goes up to 161mb.

(edit) @19214   13 months taylor.smock

Fix #23908: Significantly improve the performance of copy/paste when dealing with large amounts of data

From #23908, at least one valid workflow involves copy/pasting large amounts of
data (specifically updating boundaries). The relation for Terwolde in the
sample data had 2206 objects. This took >5 minutes to copy between layers. With
this change, it takes <1 second.

This is a performance regression from r19176. The primary culprit from r19176 is
when we check the size of the dataset. The problem is that we check to see if the
size of the primitives being changed is greater than or equal to the non-deleted
complete primitives in the dataset. We get a new filtered collection each time
we get those primitives, and therefore the size of that is not cached. The size
calculation for the filtered collection is where almost all the expense is. We
fix that by wrapping the work from AddPrimitivesCommand in DataSet#update to
have a single large update at the end of the copy operation. This ensures that
we do not have many spurious fired event calls when a mass operation is going on.

(edit) @19213   13 months stoecker

fix SyncEditorLayerIndex script

(edit) @19212   13 months taylor.smock

Fix #23770: Deprecate cycleway=opposite* family (patch by Famlam)

The cycleway=opposite* family was deprecated in
osmwiki:Proposal:Deprecate_cycleway=opposite_family on 2024-06-22.

This removes the opposite* values from the cycleway tags in defaultpresets.xml
and adds a deprecation warning for them.

(edit) @19211   13 months stoecker

make cache file length configurable, ensure it's below 140 - encrypted ext4 seems to have a 143 byte limit, see #23850

(edit) @19210   13 months taylor.smock

Add/ignore popular tags

Ignore:

  • motor_vehicle=agricultural;forestry: This is covered by standard access tagging. I am uncertain why someone decided to create a page for a tag consisting of a list of values.
(edit) @19209   13 months taylor.smock

Add @Plugins annotation to clean up after plugins have been loaded in tests

This should help reduce the issues related to plugins not being unloaded after
PluginHandlerTestIT when tests are run locally with a UI -- the primary cause
of problems is the SDS plugin though.

(edit) @19208   13 months taylor.smock

Dependency updates:

ivy.xml:

  • jmapviewer: 2.21 -> 2.22: Fix a NumberFormatException (fix #23888)
  • commons-compress: 1.27.0 -> 1.27.1
  • tag2link: 2024.8.12 -> 2024.8.21
  • commons-lang3: 3.16.0 -> 3.17.0
  • classgraph: 4.8.174 -> 4.8.175
  • junit: 5.10.3 -> 5.11.0: Repeatable @..Source annotations for parameterized tests
  • equalsverifier: 3.16.1 -> 3.16.2

tools/ivy.xml:

  • checkstyle: 10.17 -> 10.18: Better support for Java 21
  • pmd: 7.4.0 -> 7.5.0
  • errorprone: 2.30.0 -> 2.31.0: Note: this is the last planned release that supports running on Java 11.
(edit) @19207   13 months taylor.smock

i18n updates

(edit) @19206   13 months taylor.smock

See #23875: Use SNAPSHOT instead of 1.0-SNAPSHOT since that is what our scripts currently publish

This should fix the Jenkins build for plugins.

Note: Maven warns that this may break in the future, in which case we'll have to
change our processes.

(edit) @19205   13 months taylor.smock

Fix keyboard navigation in the mapview on MacOS

This also adds default shortcuts for mission control and showing all windows of
the currently focused application.

See https://web.archive.org/web/20240828134626/https://support.apple.com/en-us/102650 .

(edit) @19204   13 months taylor.smock

Fix #23874: Syntax issue from r19169

It looks like tr issues don't get caught by automated tests.

(edit) @19203   13 months taylor.smock

Add properties to pom.xml to make it easier to synchronize versions with plugins

Also use /public for the repository instead of having one for /central, one
for /releases, and one for /snapshots.

(edit) @19202   13 months taylor.smock

Fix #23251: Crossing preset: Change label for crossing_ref

This is a followup of r19164 to change another crossing_ref reference.

(edit) @19201   13 months taylor.smock

Fix #23290: Exclude incomplete relations from region checks

Also rework TagCheckerTest to use parameterized tests.

(edit) @19200   13 months taylor.smock

Fix #23821: Ensure that remote control commands are processed in order

This reverts or partially reverts r19153 and r19196 in favour of forcing ordering
in the RequestProcessor#run method. This does not block the server thread, but
it can mean that we have a bunch of processor threads that are waiting on the
previous processor thread.

(edit) @19199   13 months stoecker

see #21856, fix typo

(edit) @19198   14 months stoecker

fix checkstyle

(edit) @19197   14 months taylor.smock

Fix #21856: Split way: Wrong position of new member in PTv2 relation splitting a loop

(edit) @19196   14 months taylor.smock

See #23821: Show confirmation dialogs in the order in which the remote control commands were sent to JOSM

(edit) @19195   14 months taylor.smock

Fix #23860: Duplicate key+value in preset causes an ISE in TagChecker

This fixes the actual issue in TagChecker, but also adds a sanity check to
TaggingPresetPreferenceTestIT since it is usually unintended to have
duplicate key/values (and it is always a problem if they are different and are
Key items).

The fix for TagChecker is just keeping whatever value is last. Not ideal, but
it should work 99% of the time since an object won't match the preset if we have
highway=footway and highway=footway2 as Key objects.

(edit) @19194   14 months stoecker

fix #23850 - reduce long cache file names

(edit) @19193   14 months taylor.smock

Add/ignore documented popular tags

Add

(edit) @19192   14 months taylor.smock

Fix #23841: Bing: Automatically reload all tiles with Error: Attribution is not loaded yet after successfully loading the attribution

(edit) @19191   14 months taylor.smock

Dependency updates

ivy.xml

  • org.openstreetmap.jmapviewer:jmapviewer: 2.20 -> 2.21 (see #23841)
  • org.eclipse.parsson:parsson: 1.1.6 -> 1.1.7
  • org.apache.commons:commons-compress: 1.26.2 -> 1.27.0
  • org.tukaani:xz: 1.9 -> 1.10 (PD -> 0BSD)
  • org.webjars.npm:tag2link: 2024.7.8 -> 2024.8.12

tools/ivy.xml

  • net.sourceforge.pmd:pmd: 7.3.0 -> 7.4.0
  • com.google.errorprone:error_prone: 2.29.2 -> 2.30.0
(edit) @19190   14 months stoecker

Java 11 Windows is a bit slow

(edit) @19189   14 months stoecker

nitpicking software...

(edit) @19188   14 months stoecker

Uih, MacOs precision is worse

(edit) @19187   14 months taylor.smock

Remove/fix unused icons

rocket.svg was only used for getting people to update from WebStart to
OpenWebStart. Since we no longer support Oracle WebStart, we can remove
rocket.svg.

(edit) @19186   14 months stoecker

fix debug

(edit) @19185   14 months stoecker

output the ULP factor in case of an error

(edit) @19184   14 months taylor.smock

Fix EnumSet instantiation error

(edit) @19183   14 months taylor.smock

Fix #22852: Add missing area rendering for emergency=lifeguard

(edit) @19182   14 months stoecker

reduce test threshold to get MacOS working

(edit) @19181   14 months stoecker

PMD fixes

(edit) @19180   14 months taylor.smock

Fix some coverity issues

(edit) @19179   14 months taylor.smock

Fix #23802: Backup preferences files get overwritten by bad preference files

This validates a preferences file before copying/moving it to another file.
This should avoid cases where a file is partially written and then copied or
moved over a "good" preferences file.

(edit) @19178   14 months taylor.smock

Add/ignore documented popular tags

Add

(edit) @19177   14 months stoecker

fix #23849 - provide option to reduce loglevel to warnings

(edit) @19176   14 months taylor.smock

Fix #11487: Have josm render data to tiles

This adds a new rendering method that renders async. This avoids blocking the UI.

Where this is useful:

  • Large datasets (think county or country level)

Where this is not useful:

  • Micromapping -- the tiles aren't being rendered exactly where they should be and there are some minor rendering artifacts.

Known issues:

  • Some tiles aren't exactly where they should be (off by a pixel or two -- by default, we use the old render method at z16+)
  • Rendering of tiles is slow -- there is some prework done to render tiles in batches. The primary reason rendering is slow is we are effectively rendering 25 total tiles (to avoid movement of text, we render 2 tiles in each directory and only keep the middle one)
  • Due to the above speed issue, hovering over an object will cause the highlight to render in slowly.

New advanced preferences:

  • mappaint.fast_render.tile_size -- controls the number of pixels in a tile
  • mappaint.fast_render.zlevel -- controls the maximum z level at which tiles are generated
(edit) @19175   14 months taylor.smock

Fix #23846: Setting all referrers downloaded doesn't happen if the target object has been modified

This may also fix (or partially fix) #23808 and #23810.

(edit) @19174   14 months taylor.smock

Add javafx to ignore list for API check (ant check-plugins)

javafx is expected to be provided by the installed Java distribution, be it our
installers, one provided by OpenWebStart, or installed by the user.

(edit) @19173   14 months taylor.smock

Add/ignore documented popular tags

Add

(edit) @19172   14 months taylor.smock

Fix #23290: Use checks in checkgroups when looking for out-of-region tags

Also fix an i18n issue and update a test to use a key that is currently invalid
in a region.

(edit) @19171   14 months taylor.smock

Remove some values from ignoretags.cfg

(edit) @19170   14 months taylor.smock

Fix #23290: When an object is not in the appropriate region based off of the center of its bbox, check all the nodes.

This does not appear to have a significant performance impact; this may change as
more region specific presets are created.

(edit) @19169   14 months taylor.smock

Add/ignore documented popular tags

Add

Ignored tags:

Note:
Most gate barriers were changed to either be a node or a way, as it allows for
people to micromap.

(edit) @19168   14 months taylor.smock

Fix #23772: Fix logging issue which indicated that a dependency was not found

(edit) @19167   14 months taylor.smock

Fix #23830: Slow selection when there is a lot of data

We were previously iterating through all nodes and ways when making a selection.
We don't have to do that since we have a way to efficiently find objects in a
bbox.

(edit) @19166   14 months taylor.smock

Fix #23828: Very slow wireframe view with large data set

This occurred since we were drawing every object in every relation (including
nodes of ways) even if those objects were not in view. We fix that by only
drawing objects that are inside the current viewing area.

(edit) @19165   14 months taylor.smock

Fix #23298: Improper warning for aerialway=zip_line

Exclude aerialway from combinations check and add usage values to aerialway
presets (where someone has already used the key with the aerialway tag).

(edit) @19164   14 months taylor.smock

Fix #23251: Crossing preset: Change label for crossing_ref

The crossing_ref tag is not constrained to the UK.

(edit) @19163   14 months taylor.smock

Fix #21801: Add railway junction check for missing switches and crossings (patch by gaben)

Additional notes:
If a mapper has left non-existent railways in OSM, then this will produce false positives.
With that said, non-existent railways don't belong in OSM.

(edit) @19162   14 months taylor.smock

Fix #21333: Extend SharpAngles test to railways

(edit) @19161   14 months taylor.smock

See #23220: Remove jsr305 from dependencies (patch by sebastic)

I (taylor.smock) didn't remove the dependencies from the sources section in r19148.

(edit) @19160   14 months taylor.smock

Fix #23825: UI appears to freeze when a multi-select option is used

There are two problems fixed here:

  1. The ListSelectionListener gets called twice; this is fixed by waiting for the list value to stop changing.
  2. The act of applyChangeTags clones any primitive that might be affected by the tag change of the primitive. This can get pretty expensive if relations are involved. This is fixed by cloning the primitive in a different thread.
(edit) @19159   14 months taylor.smock

i18n updates

(edit) @19158   14 months taylor.smock

See #14649: Drop certificate amendment for Netherlands

www.nationaalgeoregister.nl is properly setup to have the trust chain and uses
QuoVadis Root CA 2, which is in the default Java trust store.

Furthermore, geodata.nationaalgeoregister.nl is no longer a registered
subdomain. In addition, our map backgrounds make no references to that subdomain.

(edit) @19157   14 months taylor.smock

Fix #23600: Replace macos-14 with macos-latest in GitHub actions for building mac release files

GitHub macos-latest is now equivalent to macos-14.

(edit) @19156   14 months taylor.smock

Fix functional tests broken by r19152

(edit) @19155   14 months taylor.smock

Fix tests broken by r19152

(edit) @19154   14 months taylor.smock

Fix #23822: Remove tofix from plugins

The service hasn't been maintained for years

(edit) @19153   14 months taylor.smock

Fix #23821: Ensure that a new layer is loaded prior to loading additional data to that layer

This occurred due to a race condition, whereby the /load_and_zoom call would
return immediately prior to the download finishing for the new layer and the
next /load_and_zoom call merging onto a pre-existing layer.

This could be fixed in one of two different ways:

  1. Block the RemoteControl thread
  2. Have some method for ensuring that a new layer is loaded first

While we are effectively doing (1), it was easier to do (2) as well for testing
purposes. This means the RemoteControl thread could spin off a thread for each
request to /load_and_zoom and this particular issue should not reappear.

This does not control for cases where a user calls /load_and_zoom like so:

  1. new_layer=true + layer_name=first
  2. new_layer=true + layer_name=second
  3. new_layer=false + layer_name=first
  4. new_layer=false + layer_name=second

Both (1) and (2) will complete before (3) and (4) are run. However, both (3) and
(4) will be loaded into the last layer loaded.

(edit) @19152   14 months taylor.smock

See #23821: Refactor LoadAndZoomHandler and add tests

This fixes some lint issues, specifically in regard to method complexity.

(edit) @19151   14 months stoecker

adapt message, patch by Famlam, see #23621

(edit) @19150   14 months taylor.smock

Bump error prone from 2.29.2 to 2.29.2

This fixes an issue where the utilsplugin2 plugin would fail to build.
For additional details, see https://github.com/google/error-prone/issues/4479 .

(edit) @19149   14 months taylor.smock

Bump error prone from 2.29.0 to 2.29.1

This fixes an issue where the PBF plugin would fail to build.
For additional details, see https://github.com/google/error-prone/issues/4475 .

(edit) @19148   14 months taylor.smock

Dependency updates

ivy.xml

  • Remove old dependencies (javax.json, jsr305 -- fixes #23220)
  • JMapViewer: 2.19 -> 2.20 - fixes deadlock when Bing attribution cannot be loaded (see #23721)
  • Wiremock: 3.6.0 -> 3.8.0
  • Various other minor dependency updates
(edit) @19147   15 months GerdP

fix #23392: JOSM doesn't work well when not maximized

  • use SwingUtilities.invokeLater() for the AlignImageryPanel
(edit) @19146   15 months taylor.smock

Fix #23811: ant jdeps was broken (patch by mfloryan)

(edit) @19145   15 months taylor.smock

Fix #23721: Application hangs indefinitely if Bing API unavailable

This adds a progress monitor that the user can cancel if Bing attribution doesn't
load quickly enough. This additionally removes the need for Thread.sleep calls
by using a timer thread.

This requires an update to the JMapViewer dependency.

(edit) @19144   15 months taylor.smock

Fix #23809: Desktop.getDesktop().browse can throw an UnsupportedOperationException

This probably was never a problem previously because xdg-open was tried first
(see #23804 for why that changed).

(edit) @19143   15 months taylor.smock

Fix #23804: xdg-open can return a 0 exit code when a browser doesn't open

This is alleviated by switching the default order of browser.unix to be
#DESTKOP then xdg-open. #DESKTOP is our magic value for using built-in
Java methods for opening a browser.

It appears that there is a race condition somewhere for the Brave browser.
I suspect that the process returned by the Runtime.exec and xdg-open isn't
actually complete when it says it is, and so the process is cleaned up prior to
Brave actually launching.

(edit) @19142   15 months taylor.smock

Fix OAuth2 tests

(edit) @19141   15 months taylor.smock

See #23804: Try to detect common failures with OpenBrowser.displayUrl

In #23804, the user indicated that the web browser did not open, so they were
unable to go through the automatic authentication flow. This attempts to work
around that problem by detecting caught exceptions and showing the user a dialog
that will allow them to copy the authorization URL.

Note: See TracRevisionLog for help on using the revision log.