hotfix for wrongly applied tagging upgrade for parcel lockers

The upgrade paths for the old `vending=parcel_pickup` and `vending=parcel_mail_in` tags overlap for the case of a feature tagged as `parcel_pickup;parcel_mail_in`. This casuses all three matching `replacement`s to be applied in iD. The value of the `parcel_mail_in` conflicts in this case. Since for `parcel_pickup` the implied `yes` default should not be set, it is impossible to resolve this ambiguity with the current schema of `deprecated.json`.
This hotfix/workaround solves this by skipping the upgrade path for `vending=parcel_mail_in`-only features. This minimally impacts the functionality, as such parcel lockers are much less common than pickup-only or combined ones (250 vs. 18k features).

closes #364
This commit is contained in:
Martin Raifer 2022-01-24 17:12:43 +01:00
parent 71fa7678d4
commit 609c0178b7
No known key found for this signature in database
GPG key ID: 3CD561F7B1C461BD
5 changed files with 16 additions and 48 deletions

39
dist/deprecated.json vendored
View file

@ -362,27 +362,6 @@
"vending": "newspapers"
}
},
{
"old": {
"amenity": "vending_machine",
"vending": "parcel_pickup;parcel_mail_in"
},
"replace": {
"amenity": "parcel_locker",
"parcel_mail_in": "yes"
}
},
{
"old": {
"amenity": "vending_machine",
"vending": "parcel_mail_in"
},
"replace": {
"amenity": "parcel_locker",
"parcel_mail_in": "yes",
"parcel_pickup": "no"
}
},
{
"old": {
"amenity": "vending_machine",
@ -402,6 +381,16 @@
"parcel_mail_in": "yes"
}
},
{
"old": {
"amenity": "vending_machine",
"vending": "parcel_pickup;parcel_mail_in"
},
"replace": {
"amenity": "parcel_locker",
"parcel_mail_in": "yes"
}
},
{
"old": {
"amenity": "weigh_bridge"
@ -3624,14 +3613,6 @@
"noname": "$1"
}
},
{
"old": {
"vending": "parcel_mail_in;parcel_pickup"
},
"replace": {
"vending": "parcel_pickup;parcel_mail_in"
}
},
{
"old": {
"vhf_channel": "*"

File diff suppressed because one or more lines are too long

5
dist/taginfo.json vendored
View file

@ -18942,11 +18942,6 @@
"key": "unnamed",
"description": "🄳 ➜ noname=*"
},
{
"key": "vending",
"value": "parcel_mail_in;parcel_pickup",
"description": "🄳 ➜ vending=parcel_pickup;parcel_mail_in"
},
{
"key": "vhf_channel",
"description": "🄳 ➜ vhf=*"

File diff suppressed because one or more lines are too long