Commit Graph

4226 Commits

Author SHA1 Message Date
Milos Brzakovic bc75430528 Merge pull request #8288 from jleedev/preset-debounce
Debounce input events in the preset list.
2021-09-15 11:49:40 +02:00
Milos Brzakovic e495c99102 Merge pull request #8685 from openstreetmap/mapControl-scroll
MapControl scroll
2021-09-14 11:35:42 +02:00
Milos Brzakovic f08b89f4c3 Merge pull request #8663 from openstreetmap/issue_key_8655
More validator fixes
2021-09-14 11:34:58 +02:00
Milos Brzakovic 7e31120ec6 added scrol to mapControl 2021-09-10 15:26:37 +02:00
John Firebaugh 1457759994 Add support for connectivity relations 2021-09-08 20:30:38 -07:00
John Firebaugh a14cf49710 Disable merge operation when it would damage relations
The operation is disabled when attempting to join ways which don't belong to identical sets of relations. Restriction relations are excluded, because they are already handled with slightly different logic.

Fixes #8674
Fixes #8645
Fixes #3825
Fixes #1512
2021-09-04 15:42:07 -07:00
Bryan Housel 78961072a7 We do need to actually validate the head entities, can't skip them
re: the fix for #8632 - we can't actually skip validation on these.
The better solution is to move the check to getIssues() so the user isn't
credited for causing the issues unless it's something they actually touched
2021-08-27 17:43:49 -04:00
Bryan Housel 113f079449 Uncache the entity before starting the work
This fixes a situation where several entities in the queue are involved in a
disconnected crossing, and the first one detects the disconnection, but a
later one clears out that first detection from the cache.  Now we clear
caches one time before starting the validation work.
2021-08-27 17:24:45 -04:00
Bryan Housel b94151396d Expand set of entities to validate to include _related_ to issues
This will catch the situation where an edit or undo affects something related without
actually touching the item - for example an undo can cause a connected way to disconnect
from the main graph.
2021-08-27 17:20:32 -04:00
Bryan Housel 1b5bd4d9c3 Actions performed (e.g. adding midpoint) must trigger validation
(re: #8655)
2021-08-27 17:14:06 -04:00
Bryan Housel 9e3df2c4aa Create an issue key property that changes when data needs refresh
(closes #8655)
2021-08-27 17:13:36 -04:00
Kyle Hensel 416c1af372 add link button next to website tag 2021-08-19 15:17:45 +12:00
Milos Brzakovic (E-Search) 81b7e282c3 Set development version number 2021-08-17 17:14:48 +02:00
Milos Brzakovic (E-Search) fc5d790b0e v2.20.1 2021-08-17 16:52:28 +02:00
Milos Brzakovic 8eb2de93be Merge pull request #8637 from openstreetmap/validation_8632_etc
More validator fixes
2021-08-16 23:44:43 +02:00
Bryan Housel a962c6f96c Can't redraw while transformed 2021-08-13 17:36:45 -04:00
Bryan Housel 1f172d5623 Make the crossing_ways hash less strict
Previously it was including a lot of data about the edge, and a very specific
crossing location.  This meant that any tiny perturbation in the crossing ways
would generate a new issue hash, effectively "fixing" the old crossing issue and
creating a new one.
2021-08-13 16:24:29 -04:00
Bryan Housel 34c3ea472d Credit user with a fix if they touched any involved entity
This can occur if there are several ways disconnected from the graph and
the user fixes these, but then partially undoes their fixes.

The current diff might not contain the entity that fixed the issue
(reconnected the disconnected graph), but they did fix the issue elsewhere.
2021-08-13 15:56:08 -04:00
Bryan Housel 93b868d95f Fix how resolved issues are counted across undo, simplify code
(re: #8632)
2021-08-13 14:47:38 -04:00
Bryan Housel b5d7cdb6fa Use utilHashcode to generate reasonable ids for crossing_ways issues
The ones before were a giant blob of json
2021-08-13 12:56:50 -04:00
Bryan Housel f58ddb21fb Remove old entityIDsToValidate() code 2021-08-13 12:32:13 -04:00
Bryan Housel bb0b5786d9 Use context.graph()/context.hasEntity() here, not cache.graph,
because that is the graph that the calling code will be using.
2021-08-13 12:02:38 -04:00
Bryan Housel 2434e5edaa In the head cache, only validate features that the user is responsible for
(closes #8632)

For example, a user can undo some work and an issue will still present in the
head graph, but we don't want to credit the user for causing that issue.
2021-08-13 11:25:36 -04:00
Milos Brzakovic 1fb42bc852 Merge pull request #8636 from openstreetmap/togeojson_package_switch
Switch to more maintained @tmcw/togeojson
2021-08-13 17:13:45 +02:00
Bryan Housel 3e8d33a668 Use coreDifference.complete() instead of entityIDsToValidate()
From what I can tell, this code is nearly the same as what the "complete"
difference already gives us - combined nodes from both previous and current,
multipolygon members, parents of nodes/relations
2021-08-13 10:53:57 -04:00
Milos Brzakovic 2270b5dd9c fixes mac os firefox scroll. closes #8595 2021-08-13 16:51:02 +02:00
Bryan Housel 96c5dd1c7c Store graph with validation cache, give them names, es6 some things 2021-08-12 11:37:57 -04:00
Milos Brzakovic 25e2050bcb switched to more maintained @tmcw/togeojson
Solves few security issues
2021-08-12 13:38:56 +02:00
Milos Brzakovic b0e3c3c56b Merge pull request #8627 from openstreetmap/nsi_route_master
Treat route_master relations like route relations for matching to NSI
2021-08-09 19:27:38 +02:00
Milos Brzakovic d0577b0364 Merge pull request #8626 from openstreetmap/validator
Validator improvements
2021-08-09 18:07:01 +02:00
Bryan Housel 0f913113c7 Match a 'route_master' as if it were a 'route'
This code just treats `type=route_master` relations as if they were `type=route`
so they will match the transit networks in NSI.

(closes https://github.com/osmlab/name-suggestion-index/issues/5184)
2021-08-05 22:05:11 -04:00
Bryan Housel 15ee63e875 Improve code for keeping only interesting key/value pairs
Before it was not actually checking that the osmvalue was in the vmap,
so we were testing a bunch of pairs like `highway/crossing` and
`highway/residential` that would never match a NSI category.
2021-08-05 16:59:07 -04:00
Bryan Housel a46a345647 Only expand a validation set to include parent multipolygon relations
The previous code was grabbing _all_ parent relations, which is too much.
For example: if a user changed a road, the validator was treating it like
the user had changed bus and highway routes along that road.

(closes #8613)
(helps a lot #8612)
2021-08-05 14:49:14 -04:00
Bryan Housel 3b0a850400 If undo'd back to the base graph, don't show head issues as user issues 2021-08-05 12:47:52 -04:00
Bryan Housel 9f58f1fb5c Improve code for focusing a validation issue on a relation
The "center" of the issue might be a spot of map that doesn't contain the relation.
This code chooses a piece of the relation that has been downloaded and focuses on that.
2021-08-05 12:47:40 -04:00
Milos Brzakovic c8aedcbb79 minor trailing spaces 2021-08-05 18:36:25 +02:00
Milos Brzakovic bc0c1895f7 bing imagery fallback url template update 2021-08-05 18:17:58 +02:00
Milos Brzakovic 3d24736b8f trailing spaces 2021-08-05 17:36:48 +02:00
Milos Brzakovic 750b4e023f crossing_ways fixing - specially handle crossing nodes 2021-08-05 14:50:38 +02:00
Milos Brzakovic 021d777c9d changelog instead of ideditor.blog 2021-08-03 20:02:37 +02:00
Bryan Housel 0085c41876 Store whether a result is provisional before filtering it
Filtering returns a new array, which was clobbering the "provisional" flag.
This was causing provisionally results to not be reprocessed later,
which meant that certain "outdated_tags" results would not be in the baseCache.
(cache of issues _before_ user edits).
2021-08-02 17:15:25 -04:00
Bryan Housel 857b9c9adf Exclude 'fixme'/'help_request' warnings from changeset tags.
They still appear in the issue list and in the entity editor.
(closes #8603)
2021-08-02 14:34:18 -04:00
Bryan Housel 1d5c8253be NSI matcher shouldn't treat old_name like a name tag
(closes #8617)
2021-08-02 12:21:34 -04:00
Bryan Housel bd97df6aac In general, preserve existing values for tags that can be toplevel
We'll only _replace_ the tag value if this tag is the toplevel/defining tag for the matched item (`k`)
(closes #8615)
2021-08-02 12:07:13 -04:00
Milos Brzakovic c6df2a0a6c Set development version number 2021-07-23 16:30:56 +02:00
Milos Brzakovic 33a012e007 v2.20.0 2021-07-23 15:53:43 +02:00
Milos Brzakovic f9804bd1ca Small reverting on bing imagery api
- Reasoning: concern on traffic amount for p2/josm key
- next release will resolve this properly
2021-07-22 19:03:19 +02:00
Milos Brzakovic 416799ceb6 selectChild as standalone.
Keyboard shortcuts new section - way selected
Moved 'help' section to left in keyboard section
2021-07-14 17:43:54 +02:00
Milos Brzakovic c8f162b8f0 select - differentiate parent/child selection
introduce more accessible shortcuts
2021-07-13 19:51:32 +02:00
Milos Brzakovic 49abb78251 bing imagery template to https 2021-07-12 20:29:57 +02:00