Zu Fuß kannst du in JOSM auf History gehen und in der Mitte der History anfangen. Wenn das Element enthalten ist, schaust du anschließend in der vorderen Hälfte. Sonst in der hinteren Hälfte (Binärsuche). Geht bestimmt, aber vermutlich immernoch mühselig.
Oder man schreibt ein Progrämmchen:
#!/usr/bin/python3
# License: CC0
import requests
from sys import argv
def has_member(el: dict, typ: str, ref: int) -> bool:
for member in el["members"]:
if member["type"] == typ and member["ref"] == ref:
return True
return False
if len(argv) != 4 or argv[2] not in {"node", "way", "relation"}:
exit(f"Usage: {argv[0]} <relation> <node|way|relation> <ref>")
rel_id = int(argv[1])
typ = argv[2]
ref = int(argv[3])
state = False
for el in requests.get(f"https://api.openstreetmap.org/api/0.6/relation/{argv[1]}/history.json").json()["elements"]:
if state and not has_member(el, typ, ref):
print(f"Removed in version {el['version']} by {el['user']} in changeset {el['changeset']}, {el['timestamp']}")
state = False
elif not state and has_member(el, typ, ref):
print(f"Added in version {el['version']} by {el['user']} in changeset {el['changeset']}, {el['timestamp']}")
state = True
Upps, hatte vorher nicht geprüft, ob das Tool noch funktioniert, weil es immer recht stabil lief.
Es wurde repariert, jetzt sollte die Chronik der Memberliste von Relationen wieder angezeigt werden.