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

View file

@ -175,14 +175,6 @@
"old": {"amenity": "vending_machine", "vending": "news_papers"},
"replace": {"amenity": "vending_machine", "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", "vending": "parcel_pickup"},
"replace": {"amenity": "parcel_locker"}
@ -191,6 +183,10 @@
"old": {"amenity": "vending_machine", "vending": "parcel_mail_in;parcel_pickup"},
"replace": {"amenity": "parcel_locker", "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"},
"replace": {"amenity": "weighbridge"}
@ -1735,10 +1731,6 @@
"old": {"unnamed": "*"},
"replace": {"noname": "$1"}
},
{
"old": {"vending": "parcel_mail_in;parcel_pickup"},
"replace": {"vending": "parcel_pickup;parcel_mail_in"}
},
{
"old": {"vhf_channel": "*"},
"replace": {"vhf": "$1"}