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>
