Skip to content
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

Do not return PWO for defs in the current interface file #1781

Merged
merged 4 commits into from
Jun 10, 2024

Conversation

voodoos
Copy link
Collaborator

@voodoos voodoos commented Jun 10, 2024

Uids of the interface and implementation of a module might overlaps.

Until more information can be opbtain from the compiler we simply don't return external occurrences of types that are defined in the current interface file.

@voodoos voodoos mentioned this pull request Jun 10, 2024
21 tasks
voodoos added a commit to voodoos/merlin that referenced this pull request Jun 10, 2024
We don't have a way to identify uids in interfaces with uids in
implementations. This might lead to mixing up results that share
the same uid.
@voodoos voodoos merged commit 33bbcdb into ocaml:master Jun 10, 2024
4 of 6 checks passed
voodoos added a commit to voodoos/merlin that referenced this pull request Jun 11, 2024
voodoos added a commit to voodoos/opam-repository that referenced this pull request Jun 18, 2024
CHANGES:

Tue Jun 18 12:00:42 CEST 2024

  + merlin binary
    - Support project-wide occurrences queries using index files (ocaml/merlin#1766)
      - The file format is described in library `Merlin_lib.index_format`
      - Two new configuration directives are introduced:
        - `SOURCE_ROOT` that is used to resolve relative paths found in the
          indexes.
        - `INDEX` that is used to declare the list of index files Merlin should
          use when looking for occurrences.
    - A new `UNIT_NAME` configuration directive that can be used to tell Merlin
      the correct name of the current unit in the presence of wrapping (ocaml/merlin#1776)
    - Perform incremental indexation of the buffer when typing. (ocaml/merlin#1777)
    - `merlin-lib.commands`: Add a `find_command_opt`` alternative to
      `find_command` that does not raise (ocaml/merlin#1778)
    - Prevent uid clashes by not returning PWO for defs located in the current
      interface file (ocaml/merlin#1781)
    - Reset uid counters when restoring the typer cache so that uids are stable
      across re-typing (ocaml/merlin#1779)
    - Improve the behavior on occurrences when the cursor is on a label /
      constructor declaration (ocaml/merlin#1785)
  + editor modes
    - emacs: add basic support for project-wide occurrences (ocaml/merlin#1766)
    - vim: add basic support for project-wide occurrences (ocaml/merlin#1767, @Julow)
voodoos added a commit to voodoos/opam-repository that referenced this pull request Jun 18, 2024
CHANGES:

Tue Jun 18 12:00:42 CEST 2024

  + merlin binary
    - Support project-wide occurrences queries using index files (ocaml/merlin#1766)
      - The file format is described in library `Merlin_lib.index_format`
      - Two new configuration directives are introduced:
        - `SOURCE_ROOT` that is used to resolve relative paths found in the
          indexes.
        - `INDEX` that is used to declare the list of index files Merlin should
          use when looking for occurrences.
    - A new `UNIT_NAME` configuration directive that can be used to tell Merlin
      the correct name of the current unit in the presence of wrapping (ocaml/merlin#1776)
    - Perform incremental indexation of the buffer when typing. (ocaml/merlin#1777)
    - `merlin-lib.commands`: Add a `find_command_opt`` alternative to
      `find_command` that does not raise (ocaml/merlin#1778)
    - Prevent uid clashes by not returning PWO for defs located in the current
      interface file (ocaml/merlin#1781)
    - Reset uid counters when restoring the typer cache so that uids are stable
      across re-typing (ocaml/merlin#1779)
    - Improve the behavior on occurrences when the cursor is on a label /
      constructor declaration (ocaml/merlin#1785)
  + editor modes
    - emacs: add basic support for project-wide occurrences (ocaml/merlin#1766)
    - vim: add basic support for project-wide occurrences (ocaml/merlin#1767, @Julow)

[new release] ocaml-index (1.0)

CHANGES:

### Added

- Initial release.
- The `aggregate`` command that finishes reduction of shapes in cmt files and
  store the output in a single index file.
- The `stats` command that prints information about an index file.
- The `dump` command that prints all locs of an index.
voodoos added a commit to voodoos/opam-repository that referenced this pull request Jun 18, 2024
CHANGES:

Tue Jun 18 12:00:42 CEST 2024

  + merlin binary
    - Support project-wide occurrences queries using index files (ocaml/merlin#1766)
      - The file format is described in library `Merlin_lib.index_format`
      - Two new configuration directives are introduced:
        - `SOURCE_ROOT` that is used to resolve relative paths found in the
          indexes.
        - `INDEX` that is used to declare the list of index files Merlin should
          use when looking for occurrences.
    - A new `UNIT_NAME` configuration directive that can be used to tell Merlin
      the correct name of the current unit in the presence of wrapping (ocaml/merlin#1776)
    - Perform incremental indexation of the buffer when typing. (ocaml/merlin#1777)
    - `merlin-lib.commands`: Add a `find_command_opt`` alternative to
      `find_command` that does not raise (ocaml/merlin#1778)
    - Prevent uid clashes by not returning PWO for defs located in the current
      interface file (ocaml/merlin#1781)
    - Reset uid counters when restoring the typer cache so that uids are stable
      across re-typing (ocaml/merlin#1779)
    - Improve the behavior on occurrences when the cursor is on a label /
      constructor declaration (ocaml/merlin#1785)
  + editor modes
    - emacs: add basic support for project-wide occurrences (ocaml/merlin#1766)
    - vim: add basic support for project-wide occurrences (ocaml/merlin#1767, @Julow)

[new release] ocaml-index (1.0)

CHANGES:

### Added

- Initial release.
- The `aggregate`` command that finishes reduction of shapes in cmt files and
  store the output in a single index file.
- The `stats` command that prints information about an index file.
- The `dump` command that prints all locs of an index.
avsm pushed a commit to avsm/opam-repository that referenced this pull request Sep 5, 2024
CHANGES:

Tue Jun 18 12:00:42 CEST 2024

  + merlin binary
    - Support project-wide occurrences queries using index files (ocaml/merlin#1766)
      - The file format is described in library `Merlin_lib.index_format`
      - Two new configuration directives are introduced:
        - `SOURCE_ROOT` that is used to resolve relative paths found in the
          indexes.
        - `INDEX` that is used to declare the list of index files Merlin should
          use when looking for occurrences.
    - A new `UNIT_NAME` configuration directive that can be used to tell Merlin
      the correct name of the current unit in the presence of wrapping (ocaml/merlin#1776)
    - Perform incremental indexation of the buffer when typing. (ocaml/merlin#1777)
    - `merlin-lib.commands`: Add a `find_command_opt`` alternative to
      `find_command` that does not raise (ocaml/merlin#1778)
    - Prevent uid clashes by not returning PWO for defs located in the current
      interface file (ocaml/merlin#1781)
    - Reset uid counters when restoring the typer cache so that uids are stable
      across re-typing (ocaml/merlin#1779)
    - Improve the behavior on occurrences when the cursor is on a label /
      constructor declaration (ocaml/merlin#1785)
  + editor modes
    - emacs: add basic support for project-wide occurrences (ocaml/merlin#1766)
    - vim: add basic support for project-wide occurrences (ocaml/merlin#1767, @Julow)

[new release] ocaml-index (1.0)

CHANGES:

### Added

- Initial release.
- The `aggregate`` command that finishes reduction of shapes in cmt files and
  store the output in a single index file.
- The `stats` command that prints information about an index file.
- The `dump` command that prints all locs of an index.
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