Closed westnordost closed 6 years ago
cc @matkoniecz
The overpass error message says that the date must be in exactly this format: yyyy-mm-ddThh:mm:ssZ
In the Java code, it looks like the date is in the form yyyy-MM-ddThh:mm:ssZ
Not sure if the MM
vs mm
makes a difference? Which of the two, if not both, is correct ISO8601?
I also only got one error report so far. Perhaps it is a problem that only arises on certain locales?
Oh dear, again.
according to https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html lowercase m is for "Minute in hour" and uppercase M is for month, so apparently date format syntax is incompatible here.
I think that I will resurrect #954 - I looked a bit at what is happening here and at this moment I have no idea what went wrong and it would be useful to know what was send to overpass.
Well, that's Java. For example in PHP, the letters stand for something else. So, in any case, the error message might also be imprecise.
https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
Constructs a SimpleDateFormat using the default pattern and date format symbols for the default locale. Note: This constructor may not support all locales. For full coverage, use the factory methods in the DateFormat class.
Is this the problem?
It is reliably reproducable if you change your language to Persian. The query is i.e.
[bbox:37.38761749978395,-122.10205078125,37.43997405227058,-122.080078125];
way[highway=construction](if:!is_date(t['opening_date']) || date(t['opening_date'])<date('۲۰۱۸-۰۵-۱۸T00:00:00Z')) -> .construction_with_unknown_state;
(way[highway=construction](newer: '۲۰۱۸-۰۵-۰۴T00:00:00Z');relation[highway=construction](newer: '۲۰۱۸-۰۵-۰۴T00:00:00Z');) -> .recently_edited_construction;
(.construction_with_unknown_state; - .recently_edited_construction;) -> .roads_for_review;
.roads_for_review out meta geom;
Got this crash report.
Device: samsung on5xfltechn, Android 6.0.1