diff --git a/dev-lua/basexx/Manifest b/dev-lua/basexx/Manifest
new file mode 100644
index 0000000000..a4985fb7fa
--- /dev/null
+++ b/dev-lua/basexx/Manifest
@@ -0,0 +1 @@
+DIST basexx-0.4.1.tar.gz 8100 BLAKE2B 9a3e09eb4ddc7c9158096f50d52735711ee63618ada0175af8aac4ba906e95cbf3fe2750f3d0fff821e34b71b4a414f39a13313e9aac0960fc4f06d24c5e0422 SHA512 b52ac9573196129e5af3f6d4fdc69b26d77ed3c114cf95c3dc46aa58e5f288a3212a91e8ee48257609607a71088c24205ca79c5512f077a6e9cef6ad7f136ba0
diff --git a/dev-lua/basexx/basexx-0.4.1.ebuild b/dev-lua/basexx/basexx-0.4.1.ebuild
new file mode 100644
index 0000000000..ffe460be90
--- /dev/null
+++ b/dev-lua/basexx/basexx-0.4.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit lua
+
+DESCRIPTION="A base2, base16, base32, base64 and base85 library for Lua"
+HOMEPAGE="https://github.com/aiq/basexx/"
+SRC_URI="https://github.com/aiq/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="${LUA_DEPS}"
+RDEPEND="${DEPEND}"
+
+lua_enable_tests busted test
+
+lua_src_install() {
+ insinto $(lua_get_lmod_dir)
+ doins lib/${PN}.lua
+}
+
+src_install() {
+ lua_foreach_impl lua_src_install
+ einstalldocs
+}
diff --git a/dev-lua/basexx/metadata.xml b/dev-lua/basexx/metadata.xml
new file mode 100644
index 0000000000..d3e0cd0b86
--- /dev/null
+++ b/dev-lua/basexx/metadata.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ nicolas.parlant@parhuet.fr
+ Nicolas PARLANT
+
+
+ aiq/basexx
+
+
diff --git a/dev-lua/binaryheap/Manifest b/dev-lua/binaryheap/Manifest
new file mode 100644
index 0000000000..251f87d005
--- /dev/null
+++ b/dev-lua/binaryheap/Manifest
@@ -0,0 +1 @@
+DIST binaryheap.lua-version_0v4.tar.gz 13556 BLAKE2B 92b7d7a54b5f1e1988a865842e80600852df0d03e566ca0075f59c521462632bc54dedcf0e67db71f1d6f29c2c932afc44fab4604eb0c386039c9528021276f1 SHA512 2d26108af024f6de5873d9ad2a10dc2fec5b603770c5ff3b3b36289c73261ad6952ed790caad6886bd313a41f9bd42a8257585dd653508d7f1bcd5d1236d2e12
diff --git a/dev-lua/binaryheap/binaryheap-0.4.ebuild b/dev-lua/binaryheap/binaryheap-0.4.ebuild
new file mode 100644
index 0000000000..b3b85c7209
--- /dev/null
+++ b/dev-lua/binaryheap/binaryheap-0.4.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit lua
+
+MY_PN="${PN}.lua"
+MY_PV="version_$(ver_rs 1 v)"
+MY_P="${MY_PN}-${MY_PV}"
+
+DESCRIPTION="Binary heap implementation in pure Lua"
+HOMEPAGE="http://tieske.github.io/binaryheap.lua"
+SRC_URI="https://github.com/Tieske/${MY_PN}/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+DEPEND="${LUA_DEPS}"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ test? (
+ dev-lua/busted[${LUA_USEDEP}]
+ dev-lua/luacov[${LUA_USEDEP}]
+ )
+"
+
+src_prepare() {
+ default
+ lua_copy_sources
+}
+
+lua_src_test() {
+ if [[ ${ELUA} == "lua5.3" ]]; then
+ # this test failed only with 5.3
+ rm "${BUILD_DIR}"/spec/dijkstras_algorithm_spec.lua || die
+ fi
+ busted --lua="${ELUA}" --output="plainTerminal" "${BUILD_DIR}"/spec || die "Tests fail with ${ELUA}"
+}
+
+src_test() {
+ lua_foreach_impl lua_src_test
+}
+
+lua_src_install() {
+ insinto $(lua_get_lmod_dir)
+ doins src/${PN}.lua
+}
+
+src_install() {
+ lua_foreach_impl lua_src_install
+ einstalldocs
+}
diff --git a/dev-lua/binaryheap/metadata.xml b/dev-lua/binaryheap/metadata.xml
new file mode 100644
index 0000000000..d9ad9d6354
--- /dev/null
+++ b/dev-lua/binaryheap/metadata.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ nicolas.parlant@parhuet.fr
+ Nicolas PARLANT
+
+
+ Tieske/binaryheap.lua
+
+
diff --git a/dev-lua/compat53/Manifest b/dev-lua/compat53/Manifest
new file mode 100644
index 0000000000..fd97281a90
--- /dev/null
+++ b/dev-lua/compat53/Manifest
@@ -0,0 +1 @@
+DIST lua-compat-5.3-0.14.3.tar.gz 61873 BLAKE2B 056a6f3ea4239821d616bff50eef12427745a06d0992e0b2abbcfb311eace583ca47312f8a6d3770b2526da09e47ac1a4fb3352c06c49c53b8d205b418f47d9e SHA512 9e355df0d1a165b7bbdc69c39fe49467ae5a7d93e02b875ade5863e2d44ba80955287210376fccbc5f2370970f5552774d84c812a9681d49a78b8eceeab37442
diff --git a/dev-lua/compat53/compat53-0.14.3.ebuild b/dev-lua/compat53/compat53-0.14.3.ebuild
new file mode 100644
index 0000000000..3a986a4942
--- /dev/null
+++ b/dev-lua/compat53/compat53-0.14.3.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-1 luajit )
+
+inherit edo lua toolchain-funcs
+
+MY_PN="lua-${PN/53/-5.3}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Compatibility module providing Lua-5.3-style APIs for Lua 5.2 and 5.1"
+HOMEPAGE="https://github.com/lunarmodules/lua-compat-5.3/"
+SRC_URI="https://github.com/lunarmodules/${MY_PN}/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="${LUA_DEPS}"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ mv liolib.c io.c || die
+ mv lstrlib.c string.c || die
+ mv ltablib.c table.c || die
+ mv lutf8lib.c utf8.c || die
+ lua_copy_sources
+}
+
+lua_src_compile() {
+ cd "${BUILD_DIR}" || die
+ local u=""
+ for u in *.c; do
+ edo $(tc-getCC) -shared -fPIC \
+ ${CPPFLAGS} -DCOMPAT53_PREFIX="compat53" \
+ ${CFLAGS} $(lua_get_CFLAGS) -Ic-api \
+ ${SOFLAGS} \
+ ${LDFLAGS} $(lua_get_LIBS) \
+ -o "${u/.c/.so}" ${u} c-api/compat-5.3.c
+ done
+}
+
+src_compile() {
+ lua_foreach_impl lua_src_compile
+}
+
+lua_src_install() {
+ cd "${BUILD_DIR}" || die
+ insinto $(lua_get_lmod_dir)/${PN}
+ doins compat53/*.lua
+ exeinto $(lua_get_cmod_dir)/${PN}
+ doexe *.so
+}
+
+src_install() {
+ lua_foreach_impl lua_src_install
+ einstalldocs
+}
diff --git a/dev-lua/compat53/metadata.xml b/dev-lua/compat53/metadata.xml
new file mode 100644
index 0000000000..fb956c84c1
--- /dev/null
+++ b/dev-lua/compat53/metadata.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ nicolas.parlant@parhuet.fr
+ Nicolas PARLANT
+
+
+ lunarmodules/lua-compat-5.3
+
+
diff --git a/dev-lua/fifo/Manifest b/dev-lua/fifo/Manifest
new file mode 100644
index 0000000000..0a56c4fa36
--- /dev/null
+++ b/dev-lua/fifo/Manifest
@@ -0,0 +1 @@
+DIST fifo-0.2.tar.gz 5210 BLAKE2B 08d4df04b49d2edddddb966320baf751b873a1e833af9da83375e02e36e55f40a544de1fc287f994692bfcfd1494574908deb5f5a6a4adea309639174d6e246b SHA512 db2e0d2117c70ab0daa6e83141b95f198689e6568aab51e8300ca5577c1a517de249b9514ad8a3476239da3d9bceb699726ead913126817c0801f7ec5d419306
diff --git a/dev-lua/fifo/fifo-0.2.ebuild b/dev-lua/fifo/fifo-0.2.ebuild
new file mode 100644
index 0000000000..af574a13cb
--- /dev/null
+++ b/dev-lua/fifo/fifo-0.2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit lua
+
+MY_PN="${PN}.lua"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Fifo library for Lua"
+HOMEPAGE="https://github.com/daurnimator/fifo.lua"
+SRC_URI="https://github.com/daurnimator/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="${LUA_DEPS}"
+RDEPEND="${DEPEND}"
+
+lua_enable_tests busted
+
+lua_src_install() {
+ insinto $(lua_get_lmod_dir)
+ doins ${PN}.lua
+}
+
+src_install() {
+ lua_foreach_impl lua_src_install
+ einstalldocs
+}
diff --git a/dev-lua/fifo/metadata.xml b/dev-lua/fifo/metadata.xml
new file mode 100644
index 0000000000..97eea74e7e
--- /dev/null
+++ b/dev-lua/fifo/metadata.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ nicolas.parlant@parhuet.fr
+ Nicolas PARLANT
+
+
+ daurnimator/fifo.lua
+
+
diff --git a/dev-lua/lpeg-patterns/Manifest b/dev-lua/lpeg-patterns/Manifest
new file mode 100644
index 0000000000..246f4f51cc
--- /dev/null
+++ b/dev-lua/lpeg-patterns/Manifest
@@ -0,0 +1 @@
+DIST lpeg-patterns-0.5.tar.gz 26183 BLAKE2B 005ca2d99710f4b3c6eddb6d07f89d65dd0450ca522fac9717318388d86b24b57b7a4460e6a10f35b0c1cbc7446f21ff0b4438e0a41ae7f5fdbcc839eeac1025 SHA512 74e36083872cfa7ff8bb03927d075680b490b4d7ba55cee0cad7e1e27e6744809b05286a80967a19cd79f526168f53d362efa2b87c318efad726fa1ba3708f80
diff --git a/dev-lua/lpeg-patterns/lpeg-patterns-0.5.ebuild b/dev-lua/lpeg-patterns/lpeg-patterns-0.5.ebuild
new file mode 100644
index 0000000000..7e137fb913
--- /dev/null
+++ b/dev-lua/lpeg-patterns/lpeg-patterns-0.5.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit lua
+
+MY_PN="${PN/-/_}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="A collection of LPEG patterns"
+HOMEPAGE="https://github.com/daurnimator/lpeg_patterns"
+SRC_URI="https://github.com/daurnimator/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="
+ ${LUA_DEPS}
+ dev-lua/lpeg[${LUA_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+
+lua_enable_tests busted
+
+lua_src_install() {
+ insinto $(lua_get_lmod_dir)/${MY_PN}/
+ doins ${MY_PN}/*.lua
+}
+
+src_install() {
+ lua_foreach_impl lua_src_install
+ einstalldocs
+}
diff --git a/dev-lua/lpeg-patterns/metadata.xml b/dev-lua/lpeg-patterns/metadata.xml
new file mode 100644
index 0000000000..1abfb9266d
--- /dev/null
+++ b/dev-lua/lpeg-patterns/metadata.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ nicolas.parlant@parhuet.fr
+ Nicolas PARLANT
+
+
+ daurnimator/lpeg_patterns
+
+
diff --git a/dev-lua/lua-http/Manifest b/dev-lua/lua-http/Manifest
new file mode 100644
index 0000000000..c32ca2fbe0
--- /dev/null
+++ b/dev-lua/lua-http/Manifest
@@ -0,0 +1 @@
+DIST lua-http-20240908.tar.gz 142897 BLAKE2B 2c68b11ffa8e579ba2be9db08c65f8f28b1eb96079a8d1b71c245ff516a7249cee86317aca3e0635b2e612120aedfa6f4e3bbe9392919835502845567cb2100f SHA512 579db298e901c555bfabd09d375d83ec1be0b45e37c9c55a779620c720a18392fdee3dc971a2ded7b0804f1fcdfc9f69863510a5823b1a0b2637b8195a42cae1
diff --git a/dev-lua/lua-http/lua-http-20240908.ebuild b/dev-lua/lua-http/lua-http-20240908.ebuild
new file mode 100644
index 0000000000..c0e49196e4
--- /dev/null
+++ b/dev-lua/lua-http/lua-http-20240908.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit lua
+
+DESCRIPTION="HTTP Library for Lua. Supports HTTP(S) 1.0, 1.1 and 2.0; client and server."
+HOMEPAGE="https://daurnimator.github.io/lua-http/"
+EGIT_COMMIT="ee3cf4b4992479b8ebfb39b530694af3bbd1d1eb"
+SRC_URI="https://github.com/daurnimator/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="
+ ${LUA_DEPS}
+ lua_targets_luajit? ( dev-lua/compat53[lua_targets_luajit(-)] )
+ lua_targets_lua5-1? ( dev-lua/compat53[lua_targets_lua5-1(-)] )
+ dev-lua/basexx[${LUA_USEDEP}]
+ dev-lua/binaryheap[${LUA_USEDEP}]
+ dev-lua/cqueues[${LUA_USEDEP}]
+ dev-lua/fifo[${LUA_USEDEP}]
+ dev-lua/lpeg[${LUA_USEDEP}]
+ dev-lua/lpeg-patterns[${LUA_USEDEP}]
+ dev-lua/LuaBitOp[${LUA_USEDEP}]
+ dev-lua/luaossl[${LUA_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+
+lua_enable_tests busted
+
+lua_src_install() {
+ insinto $(lua_get_lmod_dir)/http/
+ doins http/*.lua http/compat/*.lua
+}
+
+src_install() {
+ lua_foreach_impl lua_src_install
+ einstalldocs
+}
diff --git a/dev-lua/lua-http/metadata.xml b/dev-lua/lua-http/metadata.xml
new file mode 100644
index 0000000000..a8fee6db0e
--- /dev/null
+++ b/dev-lua/lua-http/metadata.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ nicolas.parlant@parhuet.fr
+ Nicolas PARLANT
+
+
+ daurnimator/lua-http
+
+
diff --git a/dev-python/rich-click/Manifest b/dev-python/rich-click/Manifest
index b6eb24ca5a..3719fb2142 100644
--- a/dev-python/rich-click/Manifest
+++ b/dev-python/rich-click/Manifest
@@ -1,2 +1,2 @@
-DIST rich-click-1.8.3.gh.tar.gz 325306 BLAKE2B a98f5a7a6c6a43a53b4366afe335509b57632299935c8e47431b16e11984317059dea6e75df6b571efdd6e793575c7c9004bfa087c2a1dd386e30b70635daefa SHA512 714d5d3c4b32529323f2944964e5a08479a19d6b54071750f5ccaab6ceadc5035e1d9fde4c4bc0756baef0f3e5f974a78a514fe7a35ccb621d231d5e96ec0290
DIST rich-click-1.8.4.gh.tar.gz 375081 BLAKE2B f69491a9b5b0321783d0ce0225ae49d91bc38962a866ea85d438940860fc11f22662f242a85621b156d3143245c544c63947d260cc817ae3da96cbc15e9683c5 SHA512 34d650cf47becef15cb0ad32b6fe87b534e4d56de42106baacbcc3721c39297d383050118e57bb85a18332d28b52ba93f989141c8acc5c142953248c8e9e6a95
+DIST rich-click-1.8.5.gh.tar.gz 8135268 BLAKE2B 84e9fe895d70a4357ea49d383822b6f50d9c89b3788e0ef60200c2a67807ac1e77df2dba8d1fafc9a78f4174d12241c7f3faf53177bfa64d031da673c67ce4e8 SHA512 ccb309f05593c55edc097a199eb07f4c260217751e3bc5a27a6f11cfa5d6f98125086729639f0a5d6b476c17c18ef1b9cc29a26ac24dacb84754feed4291af3d
diff --git a/dev-python/rich-click/rich-click-1.8.3.ebuild b/dev-python/rich-click/rich-click-1.8.5.ebuild
similarity index 84%
rename from dev-python/rich-click/rich-click-1.8.3.ebuild
rename to dev-python/rich-click/rich-click-1.8.5.ebuild
index bbf75dcaa2..923a7332dc 100644
--- a/dev-python/rich-click/rich-click-1.8.3.ebuild
+++ b/dev-python/rich-click/rich-click-1.8.5.ebuild
@@ -6,7 +6,7 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{11..13} )
-inherit distutils-r1
+inherit click-app distutils-r1
DESCRIPTION="Format click help output nicely with rich"
HOMEPAGE="
@@ -22,11 +22,13 @@ KEYWORDS="~amd64"
RDEPEND="
>=dev-python/click-7[${PYTHON_USEDEP}]
>=dev-python/rich-10.7[${PYTHON_USEDEP}]
- dev-python/typing-extensions[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4[${PYTHON_USEDEP}]
"
distutils_enable_tests pytest
+click-app_enable_completions rich-click
+
src_prepare() {
distutils-r1_src_prepare
diff --git a/dev-util/find-work-bugzilla/Manifest b/dev-util/find-work-bugzilla/Manifest
index 0c5b8bb1cb..cd7d02cee1 100644
--- a/dev-util/find-work-bugzilla/Manifest
+++ b/dev-util/find-work-bugzilla/Manifest
@@ -1,2 +1,2 @@
-DIST find_work_bugzilla-0.2.2.tar.gz 5801 BLAKE2B 760f95853987ffaeedbc1b8ea32bcb7b2e943506bf3e7ccb708da1f7f990837843bdeeabc3789382eeea98f9db20265761e31321a935809794316df19d0e36d1 SHA512 7ab50d90e24d3f6d18565c02ceaeaea938a6e3ac2f39e56a0b6b19c4bd2667366de4b811d457bdb02d41c20d7ae2d4505b032fa7c02a981e94f858be30a30d2b
DIST find_work_bugzilla-0.3.0.tar.gz 6098 BLAKE2B 433302126bfe54925ec1d7b0808238d17970ab866b88dfe22d0376619f8bcd4fc7803f5829062644fa9aa1c93814f7dc9e82630bdca88f6c235378cce5953c43 SHA512 5e6625cc80c25bd53778012e0331ddb52870299ce48eea751308b14576217043e708d7006b1a903d333a2e66f0b1b9f8178745e32c976c13c84a36c3dd0e59f6
+DIST find_work_bugzilla-1.0.0.tar.gz 6317 BLAKE2B 7cae7fea9090877bf81cb0c0d0c043a0a530c9c295e895aeaa793f3e35701609d9d5817c50092650c58af8b2b4f535192e2a5f3401cc4f3dbf479bbd533621a1 SHA512 12b3ae347aeea5134e3fa79da3c9e1e94e07b8e1574d292faf262ec833111c7c079b1f6d9dec72f67b73c0d83c8e165672a8ae9885ed4c0ff9a24976906addd2
diff --git a/dev-util/find-work-bugzilla/find-work-bugzilla-0.2.2.ebuild b/dev-util/find-work-bugzilla/find-work-bugzilla-1.0.0.ebuild
similarity index 81%
rename from dev-util/find-work-bugzilla/find-work-bugzilla-0.2.2.ebuild
rename to dev-util/find-work-bugzilla/find-work-bugzilla-1.0.0.ebuild
index 8955469bd4..cf98ec67ed 100644
--- a/dev-util/find-work-bugzilla/find-work-bugzilla-0.2.2.ebuild
+++ b/dev-util/find-work-bugzilla/find-work-bugzilla-1.0.0.ebuild
@@ -26,8 +26,8 @@ RDEPEND="
>=dev-python/pydantic-core-2[${PYTHON_USEDEP}]
=dev-util/find-work-0.91[${PYTHON_USEDEP}]
+ >=dev-util/find-work-1[${PYTHON_USEDEP}]
+