#19316 closed defect (fixed)
Don't show warning when a new empty relation is deleted
Reported by: | GerdP | Owned by: | team |
---|---|---|---|
Priority: | normal | Milestone: | 20.08 |
Component: | Core | Version: | |
Keywords: | template_report | Cc: |
Description
What steps will reproduce the problem?
- Select a closed way tagged building=yes
- Press Ctrl+B accidentially (create a multipolygon relation and remvoes the tags from the way)
- Edit other things so that undoing step 2. is not a nice option
- Try to fix the mistake without undoing all actions by removing the member from the relation and adding the tags again.
- Try to remove the empty relation
What is the expected result?
new empty relation is deleted without warning
What happens instead?
Popup says that "This step is rarely necessary and cannot be undone easily after being uploaded to the server."
Please provide any additional information below. Attach a screenshot if possible.
I wondered why we have > 15.000 empty multipolygon relations with version 1 in OSM and most of them were created by JOSM. I guess the above steps and the wrong warning could be the reason.
URL:https://josm.openstreetmap.de/svn/trunk Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b Last:Changed Date: 2020-04-06 02:17:07 +0200 (Mon, 06 Apr 2020) Build-Date:2020-04-06 00:18:43 Revision:16239 Relative:URL: ^/trunk Identification: JOSM/1.5 (16239 en) Windows 10 64-Bit OS Build number: Windows 10 Home 1903 (18362) Memory Usage: 767 MB / 1820 MB (133 MB allocated, but free) Java version: 1.8.0_221-b11, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM Screen: \Display0 1920x1080 Maximum Screen Size: 1920x1080 VM arguments: [-XX:StartFlightRecording=name=MyRecording2,settings=d:\dbg\gerd.jfc, -XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true,dumponexitpath=e:\ld\perf_20200530_092546.jfr] Dataset consistency test: No problems found Plugins: + OpeningHoursEditor (35414) + PolygonCutOut (v0.7) + apache-commons (35362) + buildings_tools (35474) + continuosDownload (91) + ejml (35313) + geotools (35169) + jaxb (35092) + jts (35122) + merge-overlap (35248) + o5m (35248) + opendata (35405) + pbf (35446) + poly (35248) + reverter (35474) + undelete (35474) + utilsplugin2 (35476) Validator rules: + c:\josm\core\resources\data\validator\geometry.mapcss Last errors/warnings: - E: Region [TMS_BLOCK_v2] Problem loading keys for file TMS_BLOCK_v2
Attachments (1)
Change History (15)
comment:1 by , 4 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:2 by , 4 years ago
comment:3 by , 4 years ago
Milestone: | → 20.06 |
---|
comment:4 by , 4 years ago
Another additonal idea: Should we show a notification when a user creates a multipolygon containing just one member?
Something like A multipolygon relation with just one outer ring is rarely needed
comment:5 by , 4 years ago
The wording needs adjustment but I am not sure about removing the warning for all cases, especially with MPs.
You did copy the tags back but otherwise you will loose the building=yes
and any additional tag which might have come from an object with id > 0. Maybe, have a different handling for relations with tags and/or check the members' tags?
I get errors from validator for relations without type=*
and/or without member.
I am not a fan of the notification, as it is not easy to tell in few words when to use it and when it is only an unneeded level of complexity, see e.g. #19148.
I'd prefer a validator test which checks if a MP has only one member (closed way with role outer
) and if the MP's tags can safely be moved to the way without creating objects with multiple primary tags like leisure=park
and barrier=fence
.
comment:6 by , 4 years ago
OK, let's concentrate on the case that the relation is empty (has no members). Validator says "Error", but when I try to delete the relation the popup says "don't do that". I am not surprised when users prefer to upload the garbage. They might even think nothing was uploaded because when they download the same area the empty relation seems gone.
follow-ups: 8 14 comment:7 by , 4 years ago
- do not upload relations without member!
- Change the message to deleting a relation without member to
- no message for id:0
Deleting a relation without members. You might want to have a look at the relation's history to check if the members were removed by accident.
for id > 0 and offer an additional button "History" if possible (non-blocking?)
follow-up: 9 comment:8 by , 4 years ago
Replying to skyper:
- do not upload relations without member!
What do you mean? Should JOSM silently remove the relation when user tries to upload it? The user already got the warning that the empty relation is an error, still they continued to upload.
- Change the message to deleting a relation without member to
- no message for id:0
Deleting a relation without members. You might want to have a look at the relation's history to check if the members were removed by accident.
for id > 0 and offer an additional button "History" if possible (non-blocking?)
Yes, such a message makes sense, at least when the version > 1. For an empty relation with version 1 the histoy will probably not show much information.
comment:9 by , 4 years ago
Replying to GerdP:
Replying to skyper:
- do not upload relations without member!
What do you mean? Should JOSM silently remove the relation when user tries to upload it? The user already got the warning that the empty relation is an error, still they continued to upload.
No handle it like conflicts and do not upload.
- Change the message to deleting a relation without member to
- no message for id:0
Deleting a relation without members. You might want to have a look at the relation's history to check if the members were removed by accident.
for id > 0 and offer an additional button "History" if possible (non-blocking?)Yes, such a message makes sense, at least when the version > 1. For an empty relation with version 1 the histoy will probably not show much information.
It shows that this relation is a mistake/stub if the changeset is closed or a work in progress if the changeset is still open and it provides all the links to more info like the user's page and the changeset page.
comment:10 by , 4 years ago
Milestone: | 20.06 → 20.07 |
---|
comment:11 by , 4 years ago
Milestone: | 20.07 → 20.08 |
---|
comment:12 by , 4 years ago
Owner: | changed from | to
---|---|
Status: | assigned → new |
Will not have time to work on this before September
by , 4 years ago
Attachment: | 2020-08-03-221623.png added |
---|
We also need a different handling when a non-empty new relation should be deleted.
The warning "This step is rarely necessary and cannot be undone easily after being uploaded to the server." is completely wrong are rather forces a user to upload garbage.
I suggest to suppress the popup when a new relation is deleted and show a notification instead when the relation contained at least one member.