Fix [List.uniq] to dedup non-adjacent elmements.#1218
Merged
trefis merged 3 commits intoocaml:masterfrom Dec 1, 2021
Merged
Conversation
Contributor
|
The rename of "uniq" to "dedup_adjancent" seems good. |
Member
|
ping @ddickstein |
[List.uniq] only dedups adjacent duplicates. This is sufficient for [List.sort_uniq], but can be surprising when invoked directly. This commit patches [List.uniq] to dedup the whole list. It is also now used when retrieving source paths, which can be duplicates but for which we might want to preserve ordering.
Member
|
LGTM. @voodoos shall we merge? |
voodoos
added a commit
to voodoos/opam-repository
that referenced
this pull request
Apr 5, 2022
CHANGES:
Tue Apr 5 20:59:42 CEST 2020
+ merlin binary
- don't reset the environment when running merlin in single mode so that the
parent environement is forwarded the the child processes (ocaml/merlin#1425)
- filter dups in source paths (ocaml/merlin#1218)
- improve load path performance (ocaml/merlin#1323)
- fix handlink of ppx's under Windows (ocaml/merlin#1413)
- locate: look for original source files before looking for preprocessed
files (ocaml/merlin#1219 by @ddickstein, fixes ocaml/merlin#894)
- handle `=` syntax in compiler flags (ocaml/merlin#1409)
- expose all destruct exceptions in the api (ocaml/merlin#1437)
- fix superfluous break in error reporting (ocaml/merlin#1432)
- recognise binding operators in locate and occurrences (ocaml/merlin#1398, @mattiase)
- remove dependency on Result (ocaml/merlin#1441, @kit-ty-kate)
+ editor modes
- fix an issue in Neovim where the current line jumps to the top of the
window on repeated calls to `MerlinTypeOf` (ocaml/merlin#1433 by @ddickstein, fixes
ocaml/merlin#1221)
- add module, module type, and class imenu items for emacs (ocaml/merlin#1244, @ivg)
- add prefix argument to force or prevent opening in a new buffer in locate
command (ocaml/merlin#1426, @panglesd)
- add type-on-hover functionality for vim (ocaml/merlin#1439, @nilsbecker)
- add a dedicated buffer `*merlin-errors*` containing the last viewed error
(ocaml/merlin#1414, @panglesd)
+ test suite
- make `merlin-wrapper` create a default `.merlin` file only when there is
no `dune-project` to let tests use `dune ocaml-merlin` reader. (ocaml/merlin#1425)
- cover locate calls on module aliases with and without dune
- Add a test expliciting the interaction between locate and Dune's generated
source files (ocaml/merlin#1444)
voodoos
added a commit
to voodoos/opam-repository
that referenced
this pull request
Apr 5, 2022
CHANGES for 414:
Tue Apr 5 20:51:42 CEST 2022
+ merlin binary
- don't reset the environment when running merlin in single mode so that the
parent environement is forwarded the the child processes (ocaml/merlin#1425)
- filter dups in source paths (ocaml/merlin#1218)
- improve load path performance (ocaml/merlin#1323)
- fix handlink of ppx's under Windows (ocaml/merlin#1413)
- locate: look for original source files before looking for preprocessed
files (ocaml/merlin#1219 by @ddickstein, fixes ocaml/merlin#894)
- handle `=` syntax in compiler flags (ocaml/merlin#1409)
- expose all destruct exceptions in the api (ocaml/merlin#1437)
- fix superfluous break in error reporting (ocaml/merlin#1432)
- recognise binding operators in locate and occurrences (ocaml/merlin#1398, @mattiase)
- remove dependency on Result (ocaml/merlin#1441, @kit-ty-kate)
- use the new "shapes" generated by the compiler to perform precise
jump-to-definition (ocaml/merlin#1431)
+ editor modes
- fix an issue in Neovim where the current line jumps to the top of the
window on repeated calls to `MerlinTypeOf` (ocaml/merlin#1433 by @ddickstein, fixes
ocaml/merlin#1221)
- add module, module type, and class imenu items for emacs (ocaml/merlin#1244, @ivg)
- add prefix argument to force or prevent opening in a new buffer in locate
command (ocaml/merlin#1426, @panglesd)
- add type-on-hover functionality for vim (ocaml/merlin#1439, @nilsbecker)
- add a dedicated buffer `*merlin-errors*` containing the last viewed error
(ocaml/merlin#1414, @panglesd)
+ test suite
- make `merlin-wrapper` create a default `.merlin` file only when there is
no `dune-project` to let tests use `dune ocaml-merlin` reader. (ocaml/merlin#1425)
- cover locate calls on module aliases with and without dune
- Add a test expliciting the interaction between locate and Dune's generated
source files (ocaml/merlin#1444)
CHANGES for 413:
Tue Apr 5 20:59:42 CEST 2022
+ merlin binary
- don't reset the environment when running merlin in single mode so that the
parent environement is forwarded the the child processes (ocaml/merlin#1425)
- filter dups in source paths (ocaml/merlin#1218)
- improve load path performance (ocaml/merlin#1323)
- fix handlink of ppx's under Windows (ocaml/merlin#1413)
- locate: look for original source files before looking for preprocessed
files (ocaml/merlin#1219 by @ddickstein, fixes ocaml/merlin#894)
- handle `=` syntax in compiler flags (ocaml/merlin#1409)
- expose all destruct exceptions in the api (ocaml/merlin#1437)
- fix superfluous break in error reporting (ocaml/merlin#1432)
- recognise binding operators in locate and occurrences (ocaml/merlin#1398, @mattiase)
- remove dependency on Result (ocaml/merlin#1441, @kit-ty-kate)
+ editor modes
- fix an issue in Neovim where the current line jumps to the top of the
window on repeated calls to `MerlinTypeOf` (ocaml/merlin#1433 by @ddickstein, fixes
ocaml/merlin#1221)
- add module, module type, and class imenu items for emacs (ocaml/merlin#1244, @ivg)
- add prefix argument to force or prevent opening in a new buffer in locate
command (ocaml/merlin#1426, @panglesd)
- add type-on-hover functionality for vim (ocaml/merlin#1439, @nilsbecker)
- add a dedicated buffer `*merlin-errors*` containing the last viewed error
(ocaml/merlin#1414, @panglesd)
+ test suite
- make `merlin-wrapper` create a default `.merlin` file only when there is
no `dune-project` to let tests use `dune ocaml-merlin` reader. (ocaml/merlin#1425)
- cover locate calls on module aliases with and without dune
- Add a test expliciting the interaction between locate and Dune's generated
source files (ocaml/merlin#1444)
CHANGES for 412:
Tue Apr 5 21:12:42 CEST 2022
+ merlin binary
- don't reset the environment when running merlin in single mode so that the
parent environement is forwarded the the child processes (ocaml/merlin#1425)
- locate: look for original source files before looking for preprocessed
files (ocaml/merlin#1219 by @ddickstein, fixes ocaml/merlin#894)
- fix handlink of ppx's under Windows (ocaml/merlin#1413)
- handle `=` syntax in compiler flags (ocaml/merlin#1409)
- fix superfluous break in error reporting (ocaml/merlin#1432)
- recognise binding operators in locate and occurrences (ocaml/merlin#1398, @mattiase)
- improve load path performance (ocaml/merlin#1323)
- remove dependency on Result (ocaml/merlin#1441, @kit-ty-kate)
+ editor modes
- fix an issue in Neovim where the current line jumps to the top of the
window on repeated calls to `MerlinTypeOf` (ocaml/merlin#1433 by @ddickstein, fixes
ocaml/merlin#1221)
- add module, module type, and class imenu items for emacs (ocaml/merlin#1244, @ivg)
- add prefix argument to force or prevent opening in a new buffer in locate
command (ocaml/merlin#1426, @panglesd)
- add type-on-hover functionality for vim (ocaml/merlin#1439, @nilsbecker)
- add a dedicated buffer `*merlin-errors*` containing the last viewed error
(ocaml/merlin#1414, @panglesd)
+ test suite
- make `merlin-wrapper` create a default `.merlin` file only when there is
no `dune-project` to let tests use `dune ocaml-merlin` reader. (ocaml/merlin#1425)
CHANGES for 411:
Tue Apr 5 21:17:21 PM CET 2022
+ merlin binary
- don't reset the environment when running merlin in single mode so that the
parent environement is forwarded the the child processes (ocaml/merlin#1425)
- locate: look for original source files before looking for preprocessed
files (ocaml/merlin#1219 by @ddickstein, fixes ocaml/merlin#894)
- fix handling of ppx's under Windows (ocaml/merlin#1413)
- handle `=` syntax in compiler flags (ocaml/merlin#1409)
- fix superfluous break in error reporting (ocaml/merlin#1432)
- recognise binding operators in locate and occurrences (ocaml/merlin#1398, @mattiase)
- remove dependency on Result (ocaml/merlin#1441, @kit-ty-kate)
+ editor modes
- update quick setup instructions for emacs (ocaml/merlin#1380, @ScriptDevil)
- fix an issue in Neovim where the current line jumps to the top of the
window on repeated calls to `MerlinTypeOf` (ocaml/merlin#1433 by @ddickstein, fixes
ocaml/merlin#1221)
- add module, module type, and class imenu items for emacs (ocaml/merlin#1244, @ivg)
- add prefix argument to force or prevent opening in a new buffer in locate
command (ocaml/merlin#1426, @panglesd)
- add type-on-hover functionality for vim (ocaml/merlin#1439, @nilsbecker)
- add a dedicated buffer `*merlin-errors*` containing the last viewed error
(ocaml/merlin#1414, @panglesd)
+ test suite
- make `merlin-wrapper` create a default `.merlin` file only when there is
no `dune-project` to let tests use `dune ocaml-merlin` reader. (ocaml/merlin#1425)
voodoos
added a commit
to voodoos/merlin
that referenced
this pull request
Nov 23, 2022
* Rename uniq dedup_adjacent * Filter dups when retrieving source paths
voodoos
added a commit
that referenced
this pull request
Nov 24, 2022
* Rename uniq dedup_adjacent * Filter dups when retrieving source paths
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
[List.uniq] only dedups adjacent duplicates. This is sufficient for
[List.sort_uniq], but can be surprising when invoked directly. This commit
patches [List.uniq] to dedup the whole list. It is also now used when retrieving
source paths, which can be duplicates but for which we might want to preserve
ordering.