Commit Graph

71 Commits

Author SHA1 Message Date
Quincy Morgan 24c72b64d1 Load issue fixes dynamically instead of cacheing them (close #7037) 2019-11-13 14:35:01 -05:00
Quincy Morgan 56f31adcf1 Always sort the entity issues list deterministically
Don't skip validations just because a different validation produced issues
2019-10-12 17:01:03 +02:00
Quincy Morgan 7251a2ab90 Make "edited issues" mean "issues the user created" instead of "issues for features edited by the user"
Only include issues created by the user in the "warnings" changeset tags
Include counts of issues resolved by the user in the changeset tags (close #6459)
Don't include "fixme" issue counts in "warnings" changeset tags since they're not created by the user (close #6658)
Don't cache crossing ways issues at the rule level
2019-10-04 16:50:44 +02:00
Quincy Morgan 6a515576f1 Add an "Extract this point" quick fix for points-as-vertices validation warnings (re: #6319) 2019-10-01 18:21:03 +02:00
Quincy Morgan 525916da74 Recategorize tags_suggests_area validation rule into mismatched_geometry rule
Warn about points tagged as vertices and vertices tagged as points (close #6319)
2019-09-26 10:56:30 +02:00
Quincy Morgan d5da5a601c Fix error upon revalidating after changing unsquare building threshold (close #6690) 2019-07-26 14:11:15 -04:00
Quincy Morgan 1ed73b6531 Convert validation rules to validate against a specific graph, not always the current graph (re: #6459) 2019-06-06 16:27:31 -04:00
Bryan Housel 511f8ecc82 Allow user to adjust the threshold for the unsquare building warning 2019-05-18 15:44:29 -04:00
Bryan Housel bdb454e1b3 Remove utilCallWhenIdle, use requestIdleCallback/cancelIdleCallback
Places where a reset or connection switch would be problematic,
we can now cancel the callbacks.
2019-05-16 22:28:56 -04:00
Quincy Morgan b4b91dcb9e Revalidate the related entities of deleted entities when revalidating (close #6345) 2019-05-10 15:46:04 -04:00
Quincy Morgan 7a6949aa2e Account for the width of open panes when centering the map on issues 2019-05-10 11:33:59 -04:00
Quincy Morgan 1bbd496dfe When selecting an issue in the Issues pane, highlight the issue after selecting the feature
Use the same behavior when selecting an issue in the commit sidebar as in the issues pane
2019-05-10 10:18:46 -04:00
Quincy Morgan f264cc47f0 Don't flag almost junctions when endpoint is building or parking entrance
Include issues for disabled rules in entity issues
2019-05-09 14:38:19 -04:00
Quincy Morgan 1d797b8fc6 Validate connected ways when validating a way to avoid stale connectivity issues (close #6335) 2019-05-08 14:56:49 -04:00
Bryan Housel 86c6805cf7 Optionally include ids members of modified relations in extantIDs
(closes #6273)
2019-05-08 13:53:48 -04:00
Quincy Morgan bfc944e30a Fix two potential exceptions and one lint warning 2019-05-02 16:26:33 -07:00
Quincy Morgan 424f6ca72d Don't skip other validations even if there are missing tag issues 2019-05-02 11:51:01 -07:00
Quincy Morgan b4dacdad2a Reduce very close nodes validation threshold (close #6292)
Use spherical distances for very close nodes validation
Don't flag very close nodes from different ways
Don't flag very close nodes if both have interesting tags
Update very close nodes validation reference string
2019-05-02 11:39:12 -07:00
Quincy Morgan d061ec6b61 Don't add ignore fix more than once
Tweak hidden issues text
2019-05-01 20:21:47 -07:00
Quincy Morgan eeaad79cb1 Display info about hidden issues in the "no issues" UI 2019-05-01 14:50:56 -07:00
Quincy Morgan 52d92f125c Add button to reset ignored issues
Don't cache issue extent
2019-04-30 16:32:36 -07:00
Quincy Morgan 375779882d Add ability to ignore warnings
Replace issue's array of entities with array of entity IDs
Improve issue ID hashing
2019-04-29 17:52:32 -07:00
Quincy Morgan ecc217f5d8 Add validation rule to flag impossible oneway highways and waterways (close #6216) 2019-04-26 12:04:43 -07:00
Quincy Morgan aa91c2d768 Move old multipolygon warning into Outdated Tags rule (close #6218) 2019-04-24 15:46:50 -07:00
Quincy Morgan d01bb78707 Reduce circular dependencies caused by importing from indexes, the location of the validation models, and the location of areaKeys (close #6237) 2019-04-24 13:45:59 -07:00
Bryan Housel 7e04175559 Add Enable All / Disable All validation rules links
(closes #5986)
2019-04-23 13:01:15 -04:00
Bryan Housel 3fe9d75f35 Fix issues with issue cache for entities that no longer exist 2019-04-22 19:35:23 -04:00
Bryan Housel b5c5a00abc Get rid of the many_deletions validation 🔪
It just doesn't fit in with all of the other validations that work on
entities, and it's not an actionable warning anyway.
https://github.com/openstreetmap/iD/pull/6140#issuecomment-483014618
2019-04-19 13:33:29 -04:00
Bryan Housel ca02f7ed06 Must use context.graph to validate entities instead of validatedgraph
This is because all the validators use it, and it's the right thing to do.
As entites load from the OSM or are restored from history, the most
updated version of them will be in context.graph, not validatedGraph
2019-04-19 10:00:38 -04:00
Bryan Housel a56c1af725 pacify eslint 2019-04-18 19:26:05 -04:00
Bryan Housel 0eed80e1d2 Persist disabled rules in localStorage 2019-04-18 17:30:55 -04:00
Bryan Housel 7c8a6eac9d Reintroduce disabled rules
- They still run, but results are excluded from lists
- Also make sure to revalidate/dispatch/update when toggling rules
2019-04-18 17:05:33 -04:00
Bryan Housel 9c4881cade Change autofix to accept arguments to perform, implement "fix all" 2019-04-17 17:51:29 -04:00
Bryan Housel d6327aec56 Make reference function optional
Now it shows the "No documentation available" message if there is not one
2019-04-17 09:05:05 -04:00
Bryan Housel 01d2e3eaf3 Replace validator tooltip with reference function, add tag diff 2019-04-16 17:07:53 -04:00
Bryan Housel 294ce00211 substitute 'info' for 'data' (so I can use 'info' for an info drawer) 2019-04-15 16:56:21 -04:00
Bryan Housel 5a0f21fa7a Add ability for a fix to be auto, and add auto fix buttons
This also changes some of the list items that were previously buttons to divs,
since we can't nest buttons.
2019-04-13 10:50:47 -04:00
Bryan Housel ce89d7359b Sort issues list by dist from the map center, cutoff at 1000 items 2019-04-12 14:26:05 -04:00
Bryan Housel efcd6b6bc2 Consolidate idle functions into idle.js, defer validation after merge 2019-04-12 10:49:21 -04:00
Bryan Housel 35049ab40a Replace getErrors/getWarnings with getIssues/getIssuesBySeverity
The idea here is that the validator will now hold onto lots of issues,
but the calling code will only want some small subset of them
(edited/everything) (inview/everywhere) and can pass these as options
so that we don't need filtering code spread throughtout the app.
2019-04-11 14:48:23 -04:00
Bryan Housel df1a2ea361 Prevent some actions on features that extend beyond the loaded map
(closes #2248)
2019-04-08 21:26:58 -04:00
Bryan Housel 8d66289cba Run validation when switching fields, or when applying an issue fix 2019-04-07 23:10:20 -04:00
Bryan Housel e377270372 WIP: introduce validatedGraph, try on mode change not history change 2019-04-06 13:39:19 -04:00
Bryan Housel 1bcc0f613c WIP: fix caches, replace id() function with plain id property 2019-04-05 17:41:04 -04:00
Bryan Housel 78acd999c8 WIP: switch from validating everything to validating differences 2019-04-05 13:29:57 -04:00
Bryan Housel 6508edf820 Avoid anonymous functions as validators
Givnig them names makes it easier to understand in the profiler
2019-04-05 09:50:22 -04:00
Bryan Housel 8b1c0551cc WIP: understand state held by the validator, avoid translations
- Make sure all state variables prefixed with `_`
- Add explicit `init`/`reset` methods
  (graph/entity refs should never persist through a save to OSM)
- Thinking of how best cache validation results
2019-04-05 09:28:36 -04:00
Bryan Housel d18b951c67 Remove lodash flatten and flattenDeep
(re: #6087)
2019-03-28 10:04:46 -04:00
Bryan Housel 5b4aa529de Replace lodash uniq
(re: 6087)
2019-03-27 02:43:25 -04:00
Bryan Housel 76e0d13729 Remove lodash every and filter
(re: #6087)
2019-03-23 01:22:56 -04:00