Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Feb 2026 21:14:41 +0000
From:      Adam Weinberger <adamw@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Cc:        Dave Marker <dave@freedave.net>
Subject:   git: e5b44f14fc84 - main - devel/lua-language-server: Update to 3.17.1
Message-ID:  <698b9fc1.1c18e.4aa5f205@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by adamw:

URL: https://cgit.FreeBSD.org/ports/commit/?id=e5b44f14fc84d510678492bba5135c7357863686

commit e5b44f14fc84d510678492bba5135c7357863686
Author:     Dave Marker <dave@freedave.net>
AuthorDate: 2026-02-10 21:03:44 +0000
Commit:     Adam Weinberger <adamw@FreeBSD.org>
CommitDate: 2026-02-10 21:14:37 +0000

    devel/lua-language-server: Update to 3.17.1
    
    By design, LuaLS wants to create a `.luarc.json` in your project root.
    This file defines important things, like module paths, global symbols,
    etc.
    
    For those of us addicted to Neovim, LuaLS is all about making the most
    of our nvim configs. Operating on the assumption that everybody likes
    the same thing we do, this port now supplies a (STRONGLY) recommended
    luarc in $EXAMPLESDIR, and a pkg-message pointing to it.
    
    Also, testing during build phase has been disabled. There are some flaky
    tests that can lead to failures when the system is under load.
    
    Reported by:    Dave Marker
    Approved by:    maintainer (Dave Marker)
    Differential Revision:  https://reviews.freebsd.org/D54657
---
 devel/lua-language-server/Makefile                 | 53 +++++++++++++---------
 devel/lua-language-server/distinfo                 | 26 +++++------
 .../lua-language-server/files/neovim.luarc.json.in | 20 ++++++++
 .../files/patch-3rd_bee.lua_compile_common.lua     |  8 ++--
 .../patch-3rd_luamake_compile_ninja_freebsd.ninja  |  8 ++--
 devel/lua-language-server/files/pkg-message.in     | 12 +++++
 6 files changed, 85 insertions(+), 42 deletions(-)

diff --git a/devel/lua-language-server/Makefile b/devel/lua-language-server/Makefile
index 032c47e016af..ee3441295a61 100644
--- a/devel/lua-language-server/Makefile
+++ b/devel/lua-language-server/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	lua-language-server
-DISTVERSION=	3.16.1
+DISTVERSION=	3.17.1
 PORTEPOCH=	1
 CATEGORIES=	devel
 
@@ -10,23 +10,23 @@ WWW=		https://luals.github.io
 LICENSE=	MIT
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-USES=		dos2unix lua:build ninja:make
-DOS2UNIX_REGEX=	.*\.(cpp|h|lua|md|obj)
+USES=		dos2unix inotify ninja:make
+DOS2UNIX_REGEX=	.*\.(cpp|h|json|lua|md|obj)
 USE_GITHUB=	yes
 GH_ACCOUNT=	LuaLS
 
 # autogenerated with:
 # submodules2tuple -v -b $DISTVERSION https://github.com/LuaLS/lua-language-server
 # But then you must distinguish the 2 `bee.lua` manually.
-GH_TUPLE=	CppCXY:EmmyLuaCodeStyle:8500f3af:emmyluacodestyle/3rd/EmmyLuaCodeStyle \
-		actboy168:bee.lua:ee7efd07:beelua/3rd/bee.lua \
-		actboy168:json.lua:f94860ef:jsonlua/3rd/json.lua \
+GH_TUPLE=	CppCXY:EmmyLuaCodeStyle:8c4289b7:emmyluacodestyle/3rd/EmmyLuaCodeStyle \
+		actboy168:bee.lua:f55b6988:beelua/3rd/bee.lua \
+		actboy168:json.lua:08095fd2:jsonlua/3rd/json.lua \
 		actboy168:ltest:0d2d81f:ltest/3rd/json.lua/test/ltest \
 		love2d-community:love-api:85363928:loveapi/3rd/love-api \
 		bjornbytes:lovr-docs:e89c753e:lovrdocs/3rd/lovr-api \
 		sqmedeiros:lpeglabel:912b0b9e:lpeglabel/3rd/lpeglabel \
-		actboy168:luamake:a83fa224:luamake/3rd/luamake \
-		actboy168:bee.lua:973fd8a:beelua_luamake/3rd/luamake/bee.lua \
+		actboy168:luamake:4c4bd16c:luamake/3rd/luamake \
+		actboy168:bee.lua:466c4f0:beelua_luamake/3rd/luamake/bee.lua \
 		LuaCATS:cocos4.0:c0b2259e:cocos40/meta/3rd/Cocos4.0 \
 		LuaCATS:defold:05379b40:defold/meta/3rd/Defold \
 		LuaCATS:jass:80d85cbb:jass/meta/3rd/Jass \
@@ -42,7 +42,7 @@ GH_TUPLE=	CppCXY:EmmyLuaCodeStyle:8500f3af:emmyluacodestyle/3rd/EmmyLuaCodeStyle
 		LuaCATS:luv:3615eb12:luv/meta/3rd/luv \
 		LuaCATS:skynet:afa6717a:skynet/meta/3rd/skynet
 
-SUB_FILES=	lua-language-server
+SUB_FILES=	lua-language-server pkg-message
 
 PLIST_FILES=	bin/lua-language-server \
 		${DATADIR_REL}/bin/lua-language-server \
@@ -52,11 +52,24 @@ PLIST_FILES=	bin/lua-language-server \
 
 PORTDATA=	locale meta script
 
+PORTEXAMPLES=	neovim.luarc.json
+
+OPTIONS_DEFINE=	EXAMPLES
+
+EXAMPLES_SUB_FILES=	neovim.luarc.json
+
+.include <bsd.port.pre.mk>
+
+# `luamake' has its own syntax for linking of inotify library
+.if defined(INOTIFY_PORT)
+LM_INOTIFY_LINK=	links = "inotify",
+.endif
+
 post-patch:
 	${REINPLACE_CMD} -e 's|%LOCALBASE%|${LOCALBASE}|' ${WRKSRC}/3rd/bee.lua/compile/common.lua
-	${REINPLACE_CMD} -e 's|%INOTIFY%|${_INOTIFY_}|' ${WRKSRC}/3rd/bee.lua/compile/common.lua
+	${REINPLACE_CMD} -e 's|%LM_INOTIFY_LINK%|${LM_INOTIFY_LINK}|' ${WRKSRC}/3rd/bee.lua/compile/common.lua
 	${REINPLACE_CMD} -e 's|%LOCALBASE%|${LOCALBASE}|' ${WRKSRC}/3rd/luamake/compile/ninja/freebsd.ninja
-	${REINPLACE_CMD} -e 's|%LINK_INOTIFY%|${_LINK_INOTIFY_}|' ${WRKSRC}/3rd/luamake/compile/ninja/freebsd.ninja
+	${REINPLACE_CMD} -e 's|%INOTIFY_LIB%|${INOTIFY_LIB}|' ${WRKSRC}/3rd/luamake/compile/ninja/freebsd.ninja
 	${REINPLACE_CMD} -e 's|%WRKDIR%|${WRKDIR}|' ${WRKSRC}/3rd/luamake/bee.lua/test/test.lua
 	${REINPLACE_CMD} -e 's|%WRKDIR%|${WRKDIR}|' ${WRKSRC}/3rd/bee.lua/test/test.lua
 	${REINPLACE_CMD} -e 's|%NINJA_CMD%|${NINJA_CMD}|' ${WRKSRC}/3rd/luamake/compile/build.sh
@@ -64,7 +77,7 @@ post-patch:
 
 # `luamake all` instead of `luamake rebuild` because there is a flaky test
 do-build:
-	cd ${WRKSRC}/3rd/luamake && compile/build.sh
+	cd ${WRKSRC}/3rd/luamake && compile/build.sh notest
 	cd ${WRKSRC} && 3rd/luamake/luamake all
 
 do-install:
@@ -76,16 +89,14 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/main.lua ${STAGEDIR}${DATADIR}
 	cd ${WRKSRC} && ${COPYTREE_SHARE} "locale meta script" ${STAGEDIR}${DATADIR}
 
+do-install-EXAMPLES-on:
+	${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+	${INSTALL_DATA} ${WRKDIR}/neovim.luarc.json ${STAGEDIR}${EXAMPLESDIR}
+
 # you may hit https://github.com/LuaLS/lua-language-server/issues/2896
+# also an incorrect test for bee (in both versions) doing thread.sleep
 do-test:
+	cd ${WRKSRC}/3rd/luamake && build/freebsd/bin/luamake bee.lua/test/test.lua
 	cd ${WRKSRC} && 3rd/luamake/luamake unit-test
 
-.include <bsd.port.options.mk>
-
-.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1500050
-LIB_DEPENDS+=	libinotify.so:devel/libinotify
-_INOTIFY_=	links = "inotify",
-_LINK_INOTIFY_=	-linotify
-.endif
-
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/devel/lua-language-server/distinfo b/devel/lua-language-server/distinfo
index 6c6f32a4ff88..4c5344bef4b3 100644
--- a/devel/lua-language-server/distinfo
+++ b/devel/lua-language-server/distinfo
@@ -1,12 +1,12 @@
-TIMESTAMP = 1765405060
-SHA256 (LuaLS-lua-language-server-3.16.1_GH0.tar.gz) = d16d0fa977b6f167fa936f779814335d409658dd5c255f9f9b0fd296fbba4330
-SIZE (LuaLS-lua-language-server-3.16.1_GH0.tar.gz) = 3088143
-SHA256 (CppCXY-EmmyLuaCodeStyle-8500f3af_GH0.tar.gz) = 989a85a7b77077ff723837868e268cf378c81abcf37da95e86b56d9b1aa16739
-SIZE (CppCXY-EmmyLuaCodeStyle-8500f3af_GH0.tar.gz) = 5421604
-SHA256 (actboy168-bee.lua-ee7efd07_GH0.tar.gz) = 4e4eb3fefc17b4ae3237c78e2859f1fb0e7e78767f9940866a92a842620af72d
-SIZE (actboy168-bee.lua-ee7efd07_GH0.tar.gz) = 813240
-SHA256 (actboy168-json.lua-f94860ef_GH0.tar.gz) = aaccd6b09a8b337da6b8c0ee93c4c7ba790bcdbc3b296540e445fc4eb8a9ecb8
-SIZE (actboy168-json.lua-f94860ef_GH0.tar.gz) = 27721
+TIMESTAMP = 1768956693
+SHA256 (LuaLS-lua-language-server-3.17.1_GH0.tar.gz) = 0946c926ba47a7299c4ff9b2dd0a068dd8ebd7697646812f7731176174b4886f
+SIZE (LuaLS-lua-language-server-3.17.1_GH0.tar.gz) = 3101345
+SHA256 (CppCXY-EmmyLuaCodeStyle-8c4289b7_GH0.tar.gz) = b37d54f3f86eaa5fbdf988b756767d3e7cb9628b9e0d3e8598353eed73a19fe4
+SIZE (CppCXY-EmmyLuaCodeStyle-8c4289b7_GH0.tar.gz) = 5424097
+SHA256 (actboy168-bee.lua-f55b6988_GH0.tar.gz) = 0438c3f87b3d81e3443fc64c0a792c4d4453a45f24a18b4d489db2f8ad611dd6
+SIZE (actboy168-bee.lua-f55b6988_GH0.tar.gz) = 814471
+SHA256 (actboy168-json.lua-08095fd2_GH0.tar.gz) = 70f3436ded730def337fb5859fe152cdfe816a9591a137615750229cbf121d32
+SIZE (actboy168-json.lua-08095fd2_GH0.tar.gz) = 27720
 SHA256 (actboy168-ltest-0d2d81f_GH0.tar.gz) = 180c0f0cfbd69211859eb59a9288542ab03bcef447d3bde59b1b06f811c11bbe
 SIZE (actboy168-ltest-0d2d81f_GH0.tar.gz) = 9069
 SHA256 (love2d-community-love-api-85363928_GH0.tar.gz) = 5b21e1e2c1ba6841c2a2865002a4a45890a7d6c146596e502ce0dbea7bbe6919
@@ -15,10 +15,10 @@ SHA256 (bjornbytes-lovr-docs-e89c753e_GH0.tar.gz) = a21fd33355c5518dda1e1e75c2d7
 SIZE (bjornbytes-lovr-docs-e89c753e_GH0.tar.gz) = 18279829
 SHA256 (sqmedeiros-lpeglabel-912b0b9e_GH0.tar.gz) = e1d3784369f895d417d2e2c7f89725ea8a9133e4584f91681bf877aadd71922d
 SIZE (sqmedeiros-lpeglabel-912b0b9e_GH0.tar.gz) = 83079
-SHA256 (actboy168-luamake-a83fa224_GH0.tar.gz) = c101a9d759c6c869a2033ed1249a9df455f1f54d088c8c627c73286ee2212959
-SIZE (actboy168-luamake-a83fa224_GH0.tar.gz) = 78683
-SHA256 (actboy168-bee.lua-973fd8a_GH0.tar.gz) = 302fb5874e69ca9dd20f2a31c2b36468bbd8401c0b92f618b54efb1d27402a4c
-SIZE (actboy168-bee.lua-973fd8a_GH0.tar.gz) = 812356
+SHA256 (actboy168-luamake-4c4bd16c_GH0.tar.gz) = bcfff1713bbcfeaddefe8838c9ff0bc78eb97e90f01fbb1287c6030ebbc91b76
+SIZE (actboy168-luamake-4c4bd16c_GH0.tar.gz) = 78930
+SHA256 (actboy168-bee.lua-466c4f0_GH0.tar.gz) = 1d82a12f1d29724b613fee0eff54ae419aa73930c5733fd5bff3ce8c907796d6
+SIZE (actboy168-bee.lua-466c4f0_GH0.tar.gz) = 813551
 SHA256 (LuaCATS-cocos4.0-c0b2259e_GH0.tar.gz) = 72b03a152e82e8ee08ca6477a52ea98273a4d9f29f2595d47a8d1b878605483e
 SIZE (LuaCATS-cocos4.0-c0b2259e_GH0.tar.gz) = 165303
 SHA256 (LuaCATS-defold-05379b40_GH0.tar.gz) = b8ab1a5043543425c8fe3c9d8e2a42a4ee450fd0322fcdb9f41d0cdfe5461b71
diff --git a/devel/lua-language-server/files/neovim.luarc.json.in b/devel/lua-language-server/files/neovim.luarc.json.in
new file mode 100644
index 000000000000..1cf1f690f693
--- /dev/null
+++ b/devel/lua-language-server/files/neovim.luarc.json.in
@@ -0,0 +1,20 @@
+@comment | Allows editors/neovim, when configured to use lua-language-server,
+@comment | to check against the correct version of lua and find neovim specific
+@comment | symbols for its own lua configuration.
+{
+  "schema": "https://raw.githubusercontent.com/LuaLS/vscode-lua/master/setting/schema.json",
+  "runtime": {
+    "version": "LuaJIT",
+     "path": [
+       "?.lua",
+       "?/init.lua"
+     ],
+  },
+  "workspace": {
+    "library": [
+      "$VIMRUNTIME",
+      "${3rd}/luv/library",
+    ],
+    "checkThirdParty": false
+  }
+}
diff --git a/devel/lua-language-server/files/patch-3rd_bee.lua_compile_common.lua b/devel/lua-language-server/files/patch-3rd_bee.lua_compile_common.lua
index 7a2493f85406..1dee63605160 100644
--- a/devel/lua-language-server/files/patch-3rd_bee.lua_compile_common.lua
+++ b/devel/lua-language-server/files/patch-3rd_bee.lua_compile_common.lua
@@ -1,6 +1,6 @@
---- 3rd/bee.lua/compile/common.lua.orig	2025-12-03 14:18:20 UTC
+--- 3rd/bee.lua/compile/common.lua.orig	2026-01-10 05:26:24 UTC
 +++ 3rd/bee.lua/compile/common.lua
-@@ -207,7 +207,7 @@ lm:source_set "source_bee" {
+@@ -210,7 +210,7 @@ lm:source_set "source_bee" {
          }
      },
      freebsd = {
@@ -9,13 +9,13 @@
          sources = need {
              "bsd",
              "posix",
-@@ -291,8 +291,8 @@ lm:source_set "source_bee" {
+@@ -294,8 +294,8 @@ lm:source_set "source_bee" {
          ldflags = "-pthread"
      },
      freebsd = {
 -        links = "inotify",
 -        linkdirs = "/usr/local/lib",
-+        %INOTIFY%
++        %LM_INOTIFY_LINK%
 +        linkdirs = "%LOCALBASE%/lib",
          ldflags = "-pthread"
      },
diff --git a/devel/lua-language-server/files/patch-3rd_luamake_compile_ninja_freebsd.ninja b/devel/lua-language-server/files/patch-3rd_luamake_compile_ninja_freebsd.ninja
index 99b26383fb2c..65683bf52268 100644
--- a/devel/lua-language-server/files/patch-3rd_luamake_compile_ninja_freebsd.ninja
+++ b/devel/lua-language-server/files/patch-3rd_luamake_compile_ninja_freebsd.ninja
@@ -1,9 +1,9 @@
---- 3rd/luamake/compile/ninja/freebsd.ninja.orig	2025-10-29 08:38:58 UTC
+--- 3rd/luamake/compile/ninja/freebsd.ninja.orig	2026-01-10 05:26:24 UTC
 +++ 3rd/luamake/compile/ninja/freebsd.ninja
 @@ -30,7 +30,7 @@ rule cxx_source_bee_2
  rule cxx_source_bee_2
    command = $cc -MMD -MT $out -MF $out.d -std=c++17 -fno-rtti -O2 -Wall $
-     -fvisibility=hidden -Ibee.lua -Ibee.lua/3rd/lua54 -isystem $
+     -fvisibility=hidden -Ibee.lua -Ibee.lua/3rd/lua55 -isystem $
 -    /usr/local/include -DNDEBUG -o $out -c $in
 +    %LOCALBASE%/include -DNDEBUG -o $out -c $in
    description = Compile C++ $out
@@ -14,7 +14,7 @@
      bee.lua/bootstrap/main.cpp
  rule link_bootstrap
 -  command = $cc $in -o $out -Wl,-E -linotify -L/usr/local/lib -pthread -lm $
-+  command = $cc $in -o $out -Wl,-E %LINK_INOTIFY% -L%LOCALBASE%/lib -pthread -lm $
++  command = $cc $in -o $out -Wl,-E %INOTIFY_LIB% -L%LOCALBASE%/lib -pthread -lm $
      -Wl,--push-state,-Bstatic -lstdc++ -Wl,--pop-state -Wl,-S,-x
    description = Link    Exe $out
  rule copy
@@ -23,7 +23,7 @@
    pool = console
  rule link_luamake
 -  command = $cc $in -o $out -linotify -L/usr/local/lib -pthread -lm $
-+  command = $cc $in -o $out %LINK_INOTIFY% -L%LOCALBASE%/lib -pthread -lm $
++  command = $cc $in -o $out %INOTIFY_LIB% -L%LOCALBASE%/lib -pthread -lm $
      -lstdc++ -Wl,-S,-x
    description = Link    Exe $out
  rule build_luamake_test
diff --git a/devel/lua-language-server/files/pkg-message.in b/devel/lua-language-server/files/pkg-message.in
new file mode 100644
index 000000000000..5cec463c378f
--- /dev/null
+++ b/devel/lua-language-server/files/pkg-message.in
@@ -0,0 +1,12 @@
+[
+{ type: install
+  message: <<EOM
+If you intend to use lua-language-server on your lua configuration of
+editors/neovim, consider:
+	cp %%EXAMPLESDIR%%/neovim.luarc.json ~/.config/nvim/.luarc.json
+
+This will allow lua-language-server to understand the neovim specific
+lua symbols rather than flag them as undefined.
+EOM
+}
+]


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?698b9fc1.1c18e.4aa5f205>