Bug 262610 - new ports for language server support - devel/eglot, devel/rubygem-solargraph and dependencies
Summary: new ports for language server support - devel/eglot, devel/rubygem-solargraph...
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-03-17 04:32 UTC by Sean Champ
Modified: 2022-03-17 23:02 UTC (History)
1 user (show)

See Also:


Attachments
diff for adding devel/eglot, devel/rubygem-solargraph and dependencies plus devel/rubygem-rb-readline (96.80 KB, patch)
2022-03-17 04:32 UTC, Sean Champ
no flags Details | Diff
devel/eglot diff (new) (3.15 KB, patch)
2022-03-17 06:03 UTC, Sean Champ
no flags Details | Diff
devel/rubygem-solargraph diff (new, needs rubygem-backport) (20.46 KB, patch)
2022-03-17 06:05 UTC, Sean Champ
no flags Details | Diff
devel/rubygem-backport diff (dep for rubygem-solargraph) (2.39 KB, patch)
2022-03-17 06:06 UTC, Sean Champ
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sean Champ 2022-03-17 04:32:21 UTC
Created attachment 232496 [details]
diff for adding devel/eglot, devel/rubygem-solargraph and dependencies plus devel/rubygem-rb-readline

The devel/eglot port would add support for the Eglot language server client for Emacs.

The devel/rubygem-solargraph port would add support for the solargraph Ruby language server.

Additional ports added in the following diff would represent dependencies of one of these two ports.

The diff also includes a contribution for an up-to-date devel/rubygem-rb-readline port, such that may be a dependency for some future update to the earlier rubinius port. I'd not expected that that would have been pulled into the diff, from the local git repository - it may have been drawn in with a local rebase/merge. It's not a depdency of either of the two previous ports, was added to a local ports tree at some time previously. I could run a second a diff that would leave that out - the diff here was generated with some scripting on awk and git.

I've tested the eglot and rubygem-solargraph ports locally, with the emacs-devel and ruby30 ports respectively.
Comment 1 Sean Champ 2022-03-17 04:35:08 UTC
More of some cross-over in local contrib branches, the  melpa-package-build port is also not a dependency of the eglot or rubygem-solargraph ports. It would be a dependency for providing all bootstrap dependencies for devel/cask via ports - should be submitted as part of a separate patch.
Comment 2 Sean Champ 2022-03-17 05:00:03 UTC
This patch also drew in the local work-in-progress port for company-mode. This part of the local patch-work is not ready for contribution, the local company-mode port is not complete and the Makefile contains local annotations.
Comment 3 Sean Champ 2022-03-17 05:53:31 UTC
It may be more effective to just send a diff for each individual port. With dependencies there will be a few diffs, for adding eglot and solargraph to the ports tree.

This would not include any additions to each category/Makefile. It might at least serve to provide a diff for each contributed port
Comment 4 Sean Champ 2022-03-17 06:03:15 UTC
Created attachment 232497 [details]
devel/eglot diff (new)
Comment 5 Sean Champ 2022-03-17 06:05:26 UTC
Created attachment 232498 [details]
devel/rubygem-solargraph diff (new, needs rubygem-backport)
Comment 6 Sean Champ 2022-03-17 06:06:16 UTC
Created attachment 232499 [details]
devel/rubygem-backport diff (dep for rubygem-solargraph)
Comment 7 Sean Champ 2022-03-17 06:10:31 UTC
I'll add the diffs sent in the original diff bundle to separate issue pages for a devel/cask update and for adding a company-mode port

The three main diffs here should serve to provide a new port for eglot, solargraph, and castwide's rubygem-backport which is a dep for solargraph
Comment 8 Sean Champ 2022-03-17 06:27:19 UTC
eglot can funcdtion without company mode.

I've sent a contrib for adding a port for company-mode, separately
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262612

For that port, it was a little tricky to figure out how to add modular sections to the pkg-message I've finally settled on just using one pkg-message.in with separate subst sections that may be filled-in per each activated port option. The single-port diff at that page might be a lot more succinct than the bundled thing was attached here, iniitally.
Comment 9 Sean Champ 2022-03-17 06:31:18 UTC
the deps for the cask bootstrap, in the original patch, have also been sent separeately  now
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262611
Comment 10 Fernando Apesteguía freebsd_committer freebsd_triage 2022-03-17 08:12:52 UTC
Hi Sean,

Would you mind creating a PR for every port?

Cheers.
Comment 11 Sean Champ 2022-03-17 23:02:51 UTC
(In reply to Fernando Apesteguía from comment #10)
I'll take a look at that. 

Maybe there's some Ruby tooling available for Bugzilla, to wrap this into something more managable on the contrib side, here. The dashboard here at Bugzilla imo doesn't seem to make it easy to keep track of which issues one has submitted. These three ports, per se, might not be very difficult to track individually.