Skip to content

Ignore unknown tags from dune configuration reader#1486

Merged
voodoos merged 3 commits intoocaml:masterfrom
voodoos:unknown-tags-in-dune-config
Jun 28, 2022
Merged

Ignore unknown tags from dune configuration reader#1486
voodoos merged 3 commits intoocaml:masterfrom
voodoos:unknown-tags-in-dune-config

Conversation

@voodoos
Copy link
Copy Markdown
Collaborator

@voodoos voodoos commented Jun 24, 2022

Dune configuration provider should never send unknown tags unless they have been meaningfully introduced.
In comparison unknown tag in an handwritten .merlin can result from a user's error.

This PR ignores unknown tags when Dune is used as a configuration provider. Since the protocol can only (so far) be grown additively this allow Merlin version that does not support a newer directive to simply ignore it.

@voodoos voodoos added this to the 4.6 / 3.8 milestone Jun 24, 2022
@voodoos voodoos requested a review from trefis June 24, 2022 10:02
@voodoos voodoos force-pushed the unknown-tags-in-dune-config branch from 5833b90 to 4a218a0 Compare June 28, 2022 13:31
@voodoos voodoos merged commit 278e6c8 into ocaml:master Jun 28, 2022
voodoos added a commit to voodoos/opam-repository that referenced this pull request Jun 30, 2022
CHANGES:

Thu Jun 30 14:51:42 CEST 2022

  + merlin binary
    - make most library public and split merlin in two packages: the
      `merlin-lib` package that exposes merlin's internals and the `merlin`
      package with the frontend. (ocaml/merlin#1448, ocaml/merlin#1455, ocaml/merlin#1457, ocaml/merlin#1497, @rgrinberg,
      @tmattio, @kit-ty-kate)
    - Type printing: use best_module_path for paths from Mty_alias (ocaml/merlin#1470)
    - Attempt at finding the 'real' capitalization of files on windows (ocaml/merlin#1462 by
      @mlasson)
    - Use newer `Seq`-based API of Yojson 2.0, avoiding the need for the
      deprecated `Stream` module (ocaml/merlin#1475 by @Leonidas-from-XIV)
    - unify parsing of `MERLIN_LOG` (ocaml/merlin#1480 by @ulugbekna)
    - Fix type deduplication in `type-enclosing` results (ocaml/merlin#1483, fixes ocaml/merlin#1477)
    - Only weakly reduce the shapes to speed up the new Merlin locate
      implementation. (ocaml/merlin#1488)
    - Ignore unknown configuration tags from dune configuration provider but not
      from dot-merlin-reader (ocaml/merlin#1486)
    - typing recovery: recover at the granularity of `core_type` (ocaml/merlin#1484)
  + editor modes
    - add method imenu items for emacs (ocaml/merlin#1481, @mndrix)
    - emacs: Make the prefix argument to `merlin-locate` optional, both for
      consistency with Emacs convention and for backwards compatibility. (ocaml/merlin#1476,
      @antalsz)
    - emacs: fix duplicated prefix path in imenu entries (ocaml/merlin#1495, @bcc32)
voodoos added a commit to voodoos/opam-repository that referenced this pull request Jul 1, 2022
CHANGES:

Fri Jul  1 12:51:42 CEST 2022

  + merlin binary
    - Type printing: use `best_module_path` for paths from `Mty_alias` (ocaml/merlin#1470)
    - Attempt at finding the 'real' capitalization of files on windows (ocaml/merlin#1462 by
      @mlasson)
    - Use newer `Seq`-based API of Yojson 2.0, avoiding the need for the
      deprecated `Stream` module (ocaml/merlin#1475 by @Leonidas-from-XIV)
    - unify parsing of `MERLIN_LOG` (ocaml/merlin#1480 by @ulugbekna)
    - Fix type deduplication in `type-enclosing` results (ocaml/merlin#1483, fixes ocaml/merlin#1477)
    - Ignore unknown configuration tags from dune configuration provider but not
      from dot-merlin-reader (ocaml/merlin#1486)
    - typing recovery: recover at the granularity of `core_type` (ocaml/merlin#1484)
  + editor modes
    - Fix `merlin-locate-in-new-window` is ignored (ocaml/merlin#1461 by @emturner,
      fixes ocaml/merlin#1460)
    - add method imenu items for emacs (ocaml/merlin#1481, @mndrix)
    - emacs: Make the prefix argument to `merlin-locate` optional, both for
      consistency with Emacs convention and for backwards compatibility. (ocaml/merlin#1476,
      @antalsz)
voodoos added a commit to voodoos/opam-repository that referenced this pull request Jul 1, 2022
CHANGES:

Fri Jul  1 12:51:42 CEST 2022

  + merlin binary
    - Type printing: use `best_module_path` for paths from `Mty_alias` (ocaml/merlin#1470)
    - Attempt at finding the 'real' capitalization of files on windows (ocaml/merlin#1462 by
      @mlasson)
    - Use newer `Seq`-based API of Yojson 2.0, avoiding the need for the
      deprecated `Stream` module (ocaml/merlin#1475 by @Leonidas-from-XIV)
    - unify parsing of `MERLIN_LOG` (ocaml/merlin#1480 by @ulugbekna)
    - Fix type deduplication in `type-enclosing` results (ocaml/merlin#1483, fixes ocaml/merlin#1477)
    - Ignore unknown configuration tags from dune configuration provider but not
      from dot-merlin-reader (ocaml/merlin#1486)
    - typing recovery: recover at the granularity of `core_type` (ocaml/merlin#1484)
  + editor modes
    - Fix `merlin-locate-in-new-window` is ignored (ocaml/merlin#1461 by @emturner,
      fixes ocaml/merlin#1460)
    - add method imenu items for emacs (ocaml/merlin#1481, @mndrix)
    - emacs: Make the prefix argument to `merlin-locate` optional, both for
      consistency with Emacs convention and for backwards compatibility. (ocaml/merlin#1476,
      @antalsz)
    - emacs: fix duplicated prefix path in imenu entries (ocaml/merlin#1495, @bcc32)
voodoos added a commit to voodoos/opam-repository that referenced this pull request Jul 1, 2022
CHANGES:

Fri Jul  1 12:51:42 CEST 2022

  + merlin binary
    - Type printing: use `best_module_path` for paths from `Mty_alias` (ocaml/merlin#1470)
    - Attempt at finding the 'real' capitalization of files on windows (ocaml/merlin#1462 by
      @mlasson)
    - Use newer `Seq`-based API of Yojson 2.0, avoiding the need for the
      deprecated `Stream` module (ocaml/merlin#1475 by @Leonidas-from-XIV)
    - unify parsing of `MERLIN_LOG` (ocaml/merlin#1480 by @ulugbekna)
    - Fix type deduplication in `type-enclosing` results (ocaml/merlin#1483, fixes ocaml/merlin#1477)
    - Ignore unknown configuration tags from dune configuration provider but not
      from dot-merlin-reader (ocaml/merlin#1486)
    - typing recovery: recover at the granularity of `core_type` (ocaml/merlin#1484)
  + editor modes
    - Fix `merlin-locate-in-new-window` is ignored (ocaml/merlin#1461 by @emturner,
      fixes ocaml/merlin#1460)
    - add method imenu items for emacs (ocaml/merlin#1481, @mndrix)
    - emacs: Make the prefix argument to `merlin-locate` optional, both for
      consistency with Emacs convention and for backwards compatibility. (ocaml/merlin#1476,
      @antalsz)
    - emacs: fix duplicated prefix path in imenu entries (ocaml/merlin#1495, @bcc32)
voodoos added a commit to voodoos/opam-repository that referenced this pull request Jul 1, 2022
CHANGES:

Fri Jul  1 12:51:42 CEST 2022

  + merlin binary
    - Type printing: use `best_module_path` for paths from `Mty_alias` (ocaml/merlin#1470)
    - Attempt at finding the 'real' capitalization of files on windows (ocaml/merlin#1462 by
      @mlasson)
    - Use newer `Seq`-based API of Yojson 2.0, avoiding the need for the
      deprecated `Stream` module (ocaml/merlin#1475 by @Leonidas-from-XIV)
    - unify parsing of `MERLIN_LOG` (ocaml/merlin#1480 by @ulugbekna)
    - Fix type deduplication in `type-enclosing` results (ocaml/merlin#1483, fixes ocaml/merlin#1477)
    - Ignore unknown configuration tags from dune configuration provider but not
      from dot-merlin-reader (ocaml/merlin#1486)
    - typing recovery: recover at the granularity of `core_type` (ocaml/merlin#1484)
  + editor modes
    - Fix `merlin-locate-in-new-window` is ignored (ocaml/merlin#1461 by @emturner,
      fixes ocaml/merlin#1460)
    - add method imenu items for emacs (ocaml/merlin#1481, @mndrix)
    - emacs: Make the prefix argument to `merlin-locate` optional, both for
      consistency with Emacs convention and for backwards compatibility. (ocaml/merlin#1476,
      @antalsz)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant