Skip to content

[ES|QL] Fix autocomplete when cursor is not at the end of the statement#172060

Merged
dej611 merged 7 commits intoelastic:feature/esql-validationfrom
dej611:fix/autocomplete-position
Nov 29, 2023
Merged

[ES|QL] Fix autocomplete when cursor is not at the end of the statement#172060
dej611 merged 7 commits intoelastic:feature/esql-validationfrom
dej611:fix/autocomplete-position

Conversation

@dej611
Copy link
Contributor

@dej611 dej611 commented Nov 28, 2023

Summary

Fix suggestion if the cursor is not positioned at the end.
Added also a unit test to check for regressions in the future.

esql_suggest_within

Checklist

@dej611 dej611 added Team:Visualizations Team label for Lens, elastic-charts, Graph, legacy editors (TSVB, Visualize, Timelion) t// release_note:skip Skip the PR/issue when compiling release notes Feature:ES|QL ES|QL related features in Kibana v8.12.0 labels Nov 28, 2023
@dej611 dej611 requested a review from a team as a code owner November 28, 2023 13:31
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-visualizations (Team:Visualizations)

@kibana-ci
Copy link

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] Serverless Osquery Cypress Tests #3 / Alert Event Details - Cases Case creation runs osquery against alert and creates a new case runs osquery against alert and creates a new case
  • [job] [logs] Investigations - Security Solution Cypress Tests #5 / Save Timeline Prompts "before each" hook for "Changed and unsaved timeline should NOT prompt when user navigates from the page where timeline is disabled" "before each" hook for "Changed and unsaved timeline should NOT prompt when user navigates from the page where timeline is disabled"

Metrics [docs]

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
kbnUiSharedDeps-srcJs 2.3MB 2.3MB +67.0B

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

@stratoula
Copy link
Contributor

This works fine but when playing with it:

  • I went to from and changed the pattern
  • I went to avg and changed the field

the validation tells me there are 2 errors while the query is valid

image

@dej611
Copy link
Contributor Author

dej611 commented Nov 29, 2023

That's a separate bug from this PR. I can look into that.

@stratoula
Copy link
Contributor

ok if this is irrelevant with this PR then we can merge this in the feature branch

@dej611 dej611 merged commit 90699c8 into elastic:feature/esql-validation Nov 29, 2023
dej611 added a commit that referenced this pull request Dec 7, 2023
## Summary

Fixes #166242 , #166876, #166173
, part of #166092, #166084

List of tasks:

* [x] AST work ( #166185 )
* [x] Basic validate work ( #166185 )
* [x] Hover feature ( #166185 )
* [x] Initial autocomplete work with new AST ( #166185 )
* Complete validation feature for MVP
  * [x] wildcards support ( #170014 )
  * [x] remote index validation support ( #171996 )
  * [x] wildcard support as `count` argument  ( #172054 )
  * [x] Aggressive caching for field queries:
* cache as much as possible the `FROM` queries - possible clear the
cache every 10/15 minutes?
    * do not fire a query when code == submitted code
* cache as much as possible the custom `FROM` built from `ENRICH`
policies - same clear policy as above
  * [x] Add unsupported fields warning messages
  * [x] Notify usage of `project` command with deprecation `warning`
* Complete autocomplete work ( #171664 )
  * [x] `stats`
  * [x] `where`
  * [x] `eval`
    * `math syntax`
  * [x] Aggressive cache for fields queries? ( #171866 )
  * [x] Fix when cursor is not at the end position ( #172060 ) 
* [x] Revisit copy messages
  * Label Kibana-only messages
* [x] Extend hover feature ( #171940 )
* [x] Disable editor query highlight for warnings ( #171968 )
* Fix editor highlight with new grammar
  * [x] on multi-line ( #172080 )
  * [x] for functions ( #172287 )

## Release notes

Enhance ES|QL query editing experience with client side validation.
Enhance ES|QL suggestions experience with more in context suggestions
leveraging field and variable types.
Show meta informations on ES|QL query hover on policy names.
Show function signature on ES|QL query hover on function text.


### Checklist

Delete any items that are not applicable to this PR.

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [x] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
Co-authored-by: Abdon Pijpelink <abdon.pijpelink@elastic.co>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature:ES|QL ES|QL related features in Kibana release_note:skip Skip the PR/issue when compiling release notes Team:Visualizations Team label for Lens, elastic-charts, Graph, legacy editors (TSVB, Visualize, Timelion) t// v8.12.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants