Make merlin libraries public and wrapped#1455
Conversation
|
This PR is still missing a few that are used by at least
@rgrinberg do you see anything else missing ? @trefis any thoughts about this ? |
Sorry for the oversight, I added the missing |
|
Also I think we should document somewhere that we don't provide any guarantee on the stability of the publicly available libraries. Maybe somewhere in the readme ? |
No, but I also don't see how this PR is better than my original PR. |
It's probably not, actually looking a the diff, this looks very similar 🙂 It differs from your PR by:
|
|
The other changes are unrelated to wrapping so I think they should be done on top of my changes.
Rudi.
…On Apr 11, 2022, 11:36 AM -0500, Thibaut Mattio ***@***.***>, wrote:
> how this PR is better than my original PR
It's probably not, actually looking a the diff, this looks very similar 🙂
It differs from your PR by:
• Making the libraries public and wrapping the libraries at the same time
• Changing the public names to merlin.ocaml_* for everything that is copied from OCaml (e.g. merlin.ocaml_utils)
• Rebasing on top of master
• Fixing some dependency cycles in the test suite to make the CI pass
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
|
@rgrinberg the main thing is that this PR finally introduces Making Merlin libraries public has been in the backlog for quite some time now.. simply adding public names is not as satisfactory as having separate packages but we decided that it will do for now. @tmattio proposed this PR because he had it already done for another project that vendors Merlin. It does overlaps yours but we can still merge them successively if you prefer. |
I've added @rgrinberg as a co-author of the PR. I don't see much value in merging the other PR first since it's also implemented in the present PR, which is already rebased on master and fixes the CI, but I'll go with whatever you prefer 🙂 |
|
It's more of an issue because I'm already using commits from my branch in LSP so it would create extra surgery work. |
Gotcha! Seems like @voodoos merged your branch, so I'll rebase this PR 🙂 |
Co-authored-by: Rudi Grinberg <me@rgrinberg.com>
Co-authored-by: Ulysse <5031221+voodoos@users.noreply.github.com>
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)
Alternative to #1448 and #1172 to make the libraries public and wrap them under a single top-level module.