-
Notifications
You must be signed in to change notification settings - Fork 121
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: update DocumentSelector definition #1068
fix: update DocumentSelector definition #1068
Conversation
224f200
to
14e9b23
Compare
Signed-off-by: Rudi Grinberg <[email protected]> <!-- ps-id: 9cc794e7-034d-4ad0-938f-a25e59406651 -->
14e9b23
to
76a01b7
Compare
@@ -4878,85 +4878,19 @@ module DocumentFilter = struct | |||
end | |||
|
|||
module DocumentSelector = struct | |||
type t = [ `String of string | `DocumentFilter of DocumentFilter.t ] list | |||
[@@deriving_inline yojson] | |||
type t = DocumentFilter.t list [@@deriving_inline yojson] | |||
|
|||
let _ = fun (_ : t) -> () | |||
|
|||
let t_of_yojson = | |||
(let _tp_loc = "lsp/src/types.ml.DocumentSelector.t" in |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this let binding seems no longer needed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not, but this part of the file is generated. So we would need to modify the code generator to make this cleaner.
_tp_loc | ||
yojson) | ||
t | ||
fun t -> list_of_yojson DocumentFilter.t_of_yojson t |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit:
I guess we can eta reduce to shorter version:
let t_of_yojson =
(list_of_yojson DocumentFilter.t_of_yojson
: Ppx_yojson_conv_lib.Yojson.Safe.t -> t)
similarly with yojson_of_t
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, but this would require tweaking the code generator which is a lot more work. Feel free to do it though.
This PR works well but when I attempt to generate types.ml from the metamodel on my own I don’t get the same output |
The code generation process is a bit janky at the moment. You need to run |
CHANGES: ## Fixes - Disable code lens by default. The support can be re-enabled by explicitly setting it in the configuration. (ocaml/ocaml-lsp#1134) - Fix initilization of `ocamlformat-rpc` in some edge cases when ocamlformat is initialized concurrently (ocaml/ocaml-lsp#1132) - Kill unnecessary `$ dune ocaml-merlin` with SIGTERM rather than SIGKILL (ocaml/ocaml-lsp#1124) - Refactor comment parsing to use `odoc-parser` and `cmarkit` instead of `octavius` and `omd` (ocaml/ocaml-lsp#1088) This allows users who migrated to omd 2.X to install ocaml-lsp-server in the same opam switch. We also slightly improved markdown generation support and fixed a couple in the generation of inline heading and module types. - Allow opening documents that were already open. This is a workaround for neovim's lsp client (ocaml/ocaml-lsp#1067) - Disable type annotation for functions (ocaml/ocaml-lsp#1054) - Respect codeActionLiteralSupport capability (ocaml/ocaml-lsp#1046) - Fix a document syncing issue when utf-16 is the position encoding (ocaml/ocaml-lsp#1004) - Disable "Type-annotate" action for code that is already annotated. ([ocaml/ocaml-lsp#1037](ocaml/ocaml-lsp#1037)), fixes [ocaml/ocaml-lsp#1036](ocaml/ocaml-lsp#1036) - Fix semantic highlighting of long identifiers when using preprocessors ([ocaml/ocaml-lsp#1049](ocaml/ocaml-lsp#1049), fixes [ocaml/ocaml-lsp#1034](ocaml/ocaml-lsp#1034)) - Fix the type of DocumentSelector in cram document registration (ocaml/ocaml-lsp#1068) - Accept the `--clientProcessId` command line argument. (ocaml/ocaml-lsp#1074) - Accept `--port` as a synonym for `--socket`. (ocaml/ocaml-lsp#1075) - Fix connecting to dune rpc on Windows. (ocaml/ocaml-lsp#1080) ## Features - Add "Remove type annotation" code action. (ocaml/ocaml-lsp#1039) - Support settings through `didChangeConfiguration` notification (ocaml/ocaml-lsp#1103) - Add "Extract local" and "Extract function" code actions. (ocaml/ocaml-lsp#870) - Depend directly on `merlin-lib` 4.9 (ocaml/ocaml-lsp#1070)
Signed-off-by: Rudi Grinberg [email protected]
cc @qua3k