locusts 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.changeset/README.md +8 -0
- data/.changeset/cold-tomatoes-prove.md +5 -0
- data/.changeset/config.json +15 -0
- data/.changeset/purple-trainers-wash.md +5 -0
- data/.clang-format +270 -0
- data/.editorconfig +364 -0
- data/.eslintrc.js +9 -0
- data/.formatter.exs +4 -0
- data/.standard.yml +3 -0
- data/.syncpackrc +14 -0
- data/.vscode/settings.json +19 -0
- data/CMakeLists.txt +41 -0
- data/CONTRIBUTING.md +35 -0
- data/Cargo.lock +7 -0
- data/Cargo.toml +11 -0
- data/Dockerfile +15 -0
- data/GNUmakefile.am +11 -0
- data/LICENSE +12 -0
- data/Locusts.sln +28 -0
- data/README.md +69 -0
- data/Rakefile +15 -0
- data/build.gradle.kts +99 -0
- data/configure.ac +10 -0
- data/contrib/tag-repo +8 -0
- data/contrib/version-bump +23 -0
- data/deno.json +5 -0
- data/deno.lock +71 -0
- data/docs/.NET.md +29 -0
- data/docs/BEAM.md +25 -0
- data/docs/C.md +51 -0
- data/docs/Docker.md +14 -0
- data/docs/Go.md +33 -0
- data/docs/JVM.md +5 -0
- data/docs/JavaScript.md +8 -0
- data/docs/Python.md +34 -0
- data/docs/Rust.md +41 -0
- data/go.mod +3 -0
- data/gradle/libs.versions.toml +13 -0
- data/gradle/wrapper/gradle-wrapper.jar +0 -0
- data/gradle/wrapper/gradle-wrapper.properties +7 -0
- data/gradle.properties +7 -0
- data/gradlew +252 -0
- data/gradlew.bat +94 -0
- data/include/locusts.go +10 -0
- data/include/locusts.h +21 -0
- data/locusts.go +9 -0
- data/locusts_test.go +13 -0
- data/meson.build +21 -0
- data/mix.exs +44 -0
- data/mix.lock +8 -0
- data/ocusts.pc.in +9 -0
- data/package.json +25 -0
- data/pnpm-lock.yaml +5825 -0
- data/pnpm-workspace.yaml +2 -0
- data/pyproject.toml +17 -0
- data/requirements.txt +1 -0
- data/settings.gradle.kts +13 -0
- data/src/Locusts.cs +20 -0
- data/src/Locusts.csproj +37 -0
- data/src/__init__.py +0 -0
- data/src/lib.rs +23 -0
- data/src/locusts.c +3 -0
- data/src/locusts.ex +19 -0
- data/src/locusts.py +6 -0
- data/src/locusts.rb +14 -0
- data/src/main/kotlin/io/github/Locusts.kt +12 -0
- data/src/packages/eslint-config/README.md +3 -0
- data/src/packages/eslint-config/library.js +34 -0
- data/src/packages/eslint-config/package.json +17 -0
- data/src/packages/locusts/.eslintrc.js +9 -0
- data/src/packages/locusts/README.md +1 -0
- data/src/packages/locusts/deno.json +14 -0
- data/src/packages/locusts/mod.ts +15 -0
- data/src/packages/locusts/mod_test.ts +11 -0
- data/src/packages/locusts/package.json +35 -0
- data/src/packages/locusts/src/index.ts +17 -0
- data/src/packages/locusts/tests/locusts.test.ts +9 -0
- data/src/packages/locusts/tsconfig.json +13 -0
- data/src/packages/typescript-config/base.json +20 -0
- data/src/packages/typescript-config/package.json +9 -0
- data/src/test/kotlin/io/github/LocustsTest.kt +14 -0
- data/src/test_locusts.py +9 -0
- data/tests/GlobalUsings.cs +1 -0
- data/tests/Locusts.Testing.csproj +23 -0
- data/tests/Locusts.cs +12 -0
- data/tests/locusts_test.exs +8 -0
- data/tests/test_helper.exs +1 -0
- data/tests/test_helper.rb +7 -0
- data/tests/test_locusts.c +6 -0
- data/tests/test_locusts.rb +10 -0
- data/turbo.json +28 -0
- metadata +138 -0
data/.standard.yml
ADDED
data/.syncpackrc
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"python.testing.unittestArgs": [
|
|
3
|
+
"-v",
|
|
4
|
+
"-s",
|
|
5
|
+
"./src",
|
|
6
|
+
"-p",
|
|
7
|
+
"test_*.py"
|
|
8
|
+
],
|
|
9
|
+
"python.testing.pytestEnabled": false,
|
|
10
|
+
"python.testing.unittestEnabled": true,
|
|
11
|
+
"eslint.workingDirectories": [
|
|
12
|
+
{
|
|
13
|
+
"mode": "auto"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"java.compile.nullAnalysis.mode": "automatic",
|
|
17
|
+
"C_Cpp.default.compileCommands": "/home/user/src/github.com/locusts/builddir/compile_commands.json",
|
|
18
|
+
"C_Cpp.default.configurationProvider": "mesonbuild.mesonbuild"
|
|
19
|
+
}
|
data/CMakeLists.txt
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
cmake_minimum_required(VERSION 3.14)
|
|
2
|
+
project(libocusts VERSION 0.0.0 DESCRIPTION "A C library that introduces locusts into your codebase" LANGUAGES C)
|
|
3
|
+
|
|
4
|
+
include(GNUInstallDirs)
|
|
5
|
+
|
|
6
|
+
add_library(objlib OBJECT src/locusts.c)
|
|
7
|
+
target_include_directories(objlib PUBLIC include)
|
|
8
|
+
set_target_properties(objlib PROPERTIES LINKER_LANGUAGE C)
|
|
9
|
+
|
|
10
|
+
add_library(ocusts SHARED $<TARGET_OBJECTS:objlib> include/locusts.h)
|
|
11
|
+
target_link_libraries(ocusts PUBLIC objlib)
|
|
12
|
+
set_target_properties(ocusts PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
|
|
13
|
+
set_target_properties(ocusts PROPERTIES PUBLIC_HEADER include/locusts.h)
|
|
14
|
+
|
|
15
|
+
add_library(ocusts_static STATIC $<TARGET_OBJECTS:objlib> include/locusts.h)
|
|
16
|
+
target_link_libraries(ocusts_static PUBLIC objlib)
|
|
17
|
+
set_target_properties(ocusts_static PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
|
|
18
|
+
set_target_properties(ocusts_static PROPERTIES OUTPUT_NAME ocusts)
|
|
19
|
+
|
|
20
|
+
# Make autoconf and cmake agree with each other
|
|
21
|
+
set(prefix ${CMAKE_INSTALL_PREFIX})
|
|
22
|
+
set(libdir \${prefix}/${CMAKE_INSTALL_LIBDIR})
|
|
23
|
+
set(includedir \${prefix}/${CMAKE_INSTALL_INCLUDEDIR})
|
|
24
|
+
set(VERSION ${PROJECT_VERSION})
|
|
25
|
+
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/ocusts.pc.in ${CMAKE_CURRENT_BINARY_DIR}/ocusts.pc @ONLY)
|
|
26
|
+
install(
|
|
27
|
+
FILES ${CMAKE_CURRENT_BINARY_DIR}/ocusts.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
|
|
28
|
+
)
|
|
29
|
+
install(
|
|
30
|
+
TARGETS ocusts ocusts_static
|
|
31
|
+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
32
|
+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
33
|
+
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
add_executable(test_locusts tests/test_locusts.c)
|
|
37
|
+
target_link_libraries(test_locusts PRIVATE ocusts)
|
|
38
|
+
|
|
39
|
+
enable_testing()
|
|
40
|
+
|
|
41
|
+
add_test(NAME test_locusts COMMAND test_locusts)
|
data/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
First off, thanks for taking the time to contribute! 🎉
|
|
4
|
+
We welcome all sorts of contributions, from bug reports to feature requests to code contributions.
|
|
5
|
+
|
|
6
|
+
## How to contribute
|
|
7
|
+
|
|
8
|
+
The main ways to can contribute are:
|
|
9
|
+
|
|
10
|
+
- [Requesting a new language](#requesting-a-new-language)
|
|
11
|
+
- [Adding a new language](#adding-a-new-language)
|
|
12
|
+
|
|
13
|
+
### Requesting a new language
|
|
14
|
+
|
|
15
|
+
If you'd like to request a new language to be added to the repository, please open an issue with the `new language` label.
|
|
16
|
+
Please include the following information:
|
|
17
|
+
|
|
18
|
+
- The name of the language
|
|
19
|
+
- A brief description of the language
|
|
20
|
+
- The language's website, if any exist
|
|
21
|
+
- Any relevant documentation on how to build, test, and publish libraries in the language
|
|
22
|
+
- Any CI information
|
|
23
|
+
- Any other relevant information
|
|
24
|
+
|
|
25
|
+
### Adding a new language
|
|
26
|
+
|
|
27
|
+
If you'd like to add a new language to the repository, please follow these guidelines:
|
|
28
|
+
|
|
29
|
+
- The language **MUST** have some way of publishing and consuming libraries (ie. a package manager).
|
|
30
|
+
- Your PR **MUST** include a GitHub Actions pipeline to build, run tests, and potentially publish the library to the library location.
|
|
31
|
+
- See any of the existing language workflows for examples.
|
|
32
|
+
- Your PR **MUST** include a `LANGUAGE`.md file in the `docs` directory with the following information:
|
|
33
|
+
- A basic way to add the library as a dependency
|
|
34
|
+
- An example of how to use the library
|
|
35
|
+
- A link on the README.md to the new language documentation
|
data/Cargo.lock
ADDED
data/Cargo.toml
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
[package]
|
|
2
|
+
name = "locusts"
|
|
3
|
+
version = "0.0.0"
|
|
4
|
+
description = "A Rust library that introduces locusts into your codebase"
|
|
5
|
+
authors = ["Matt Strapp <matt+locusts@mattstrapp.net>"]
|
|
6
|
+
readme = "docs/Rust.md"
|
|
7
|
+
license = "0BSD"
|
|
8
|
+
edition = "2015"
|
|
9
|
+
repository = "https://github.com/locusts-r-us/locusts"
|
|
10
|
+
|
|
11
|
+
[dependencies]
|
data/Dockerfile
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
FROM --platform=$BUILDPLATFORM tinygo/tinygo:0.33.0 AS build
|
|
2
|
+
ARG TARGETOS
|
|
3
|
+
ARG TARGETARCH
|
|
4
|
+
WORKDIR /app
|
|
5
|
+
COPY . .
|
|
6
|
+
RUN CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} GOFLAGS=-buildvcs=false tinygo build -o locusts ./include
|
|
7
|
+
|
|
8
|
+
FROM scratch
|
|
9
|
+
LABEL org.opencontainers.image.licenses=0BSD
|
|
10
|
+
LABEL org.opencontainers.image.source=https://github.com/locusts-r-us/locusts
|
|
11
|
+
LABEL org.opencontainers.image.title=Locusts
|
|
12
|
+
LABEL org.opencontainers.image.description="A container that contains locusts"
|
|
13
|
+
HEALTHCHECK NONE
|
|
14
|
+
COPY --from=build /app/locusts /
|
|
15
|
+
ENTRYPOINT ["/locusts"]
|
data/GNUmakefile.am
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
lib_LTLIBRARIES = libocusts.la
|
|
2
|
+
libocusts_la_LDFLAGS = -version-info 1:0:0
|
|
3
|
+
libocusts_la_SOURCES = include/locusts.h
|
|
4
|
+
lib_LIBRARIES = libocusts.a
|
|
5
|
+
libocusts_a_SOURCES = include/locusts.h
|
|
6
|
+
include_HEADERS = include/locusts.h
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
install-data-local:
|
|
10
|
+
mkdir -p $(libdir)/pkgconfig
|
|
11
|
+
cp ocusts.pc $(libdir)/pkgconfig/ocusts.pc
|
data/LICENSE
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
Copyright (c) 2024 Matt Strapp <matt+locusts@mattstrapp.net>
|
|
2
|
+
|
|
3
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
4
|
+
purpose with or without fee is hereby granted.
|
|
5
|
+
|
|
6
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
7
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
8
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
9
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
10
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
11
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
12
|
+
PERFORMANCE OF THIS SOFTWARE.
|
data/Locusts.sln
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
|
|
2
|
+
Microsoft Visual Studio Solution File, Format Version 12.00
|
|
3
|
+
# Visual Studio Version 17
|
|
4
|
+
VisualStudioVersion = 17.0.31903.59
|
|
5
|
+
MinimumVisualStudioVersion = 10.0.40219.1
|
|
6
|
+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Locusts", "src\Locusts.csproj", "{D673881C-7095-4652-AFB5-AD51F4AA075B}"
|
|
7
|
+
EndProject
|
|
8
|
+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Locusts.Testing", "tests\Locusts.Testing.csproj", "{863697BA-0B39-4949-95E4-B6BE770A81F7}"
|
|
9
|
+
EndProject
|
|
10
|
+
Global
|
|
11
|
+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
12
|
+
Debug|Any CPU = Debug|Any CPU
|
|
13
|
+
Release|Any CPU = Release|Any CPU
|
|
14
|
+
EndGlobalSection
|
|
15
|
+
GlobalSection(SolutionProperties) = preSolution
|
|
16
|
+
HideSolutionNode = FALSE
|
|
17
|
+
EndGlobalSection
|
|
18
|
+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
19
|
+
{D673881C-7095-4652-AFB5-AD51F4AA075B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
20
|
+
{D673881C-7095-4652-AFB5-AD51F4AA075B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
21
|
+
{D673881C-7095-4652-AFB5-AD51F4AA075B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
22
|
+
{D673881C-7095-4652-AFB5-AD51F4AA075B}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
23
|
+
{863697BA-0B39-4949-95E4-B6BE770A81F7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
24
|
+
{863697BA-0B39-4949-95E4-B6BE770A81F7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
25
|
+
{863697BA-0B39-4949-95E4-B6BE770A81F7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
26
|
+
{863697BA-0B39-4949-95E4-B6BE770A81F7}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
27
|
+
EndGlobalSection
|
|
28
|
+
EndGlobal
|
data/README.md
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Locusts: A universal library
|
|
2
|
+
|
|
3
|
+
We here at Locusts-R-Us have developed a series of libraries for all sorts of programming languages to introduce locusts in all sorts of codebases.
|
|
4
|
+
|
|
5
|
+
## CI
|
|
6
|
+
|
|
7
|
+
[)](https://github.com/locusts-r-us/locusts/actions/workflows/beam.yml)
|
|
8
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/c.yml)
|
|
9
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/deno.yml)
|
|
10
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/docker.yml)
|
|
11
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/dotnet.yml)
|
|
12
|
+
[)](https://github.com/locusts-r-us/locusts/actions/workflows/jvm.yml)
|
|
13
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/go.yml)
|
|
14
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/node.yml)
|
|
15
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/python.yml)
|
|
16
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/rust.yml)
|
|
17
|
+
|
|
18
|
+
## Packages
|
|
19
|
+
|
|
20
|
+
[](https://crates.io/crates/locusts)
|
|
21
|
+
[](https://pkg.go.dev/github.com/locusts-r-us/locusts)
|
|
22
|
+
[](https://hex.pm/packages/locusts)
|
|
23
|
+
[](https://jsr.io/@locusts-r-us/locusts)
|
|
24
|
+
[](https://github.com/locusts-r-us/locusts/issues/32)
|
|
25
|
+
[](https://www.npmjs.com/package/locusts)
|
|
26
|
+
[](https://www.nuget.org/packages/locusts)
|
|
27
|
+
[](https://pypi.org/project/locusts-r-us/)
|
|
28
|
+
|
|
29
|
+
## FAQ
|
|
30
|
+
|
|
31
|
+
### Why the name `Locusts`?
|
|
32
|
+
|
|
33
|
+
[: subprocess pre-removal script returned error exit 163: OH_GOD_THEYRE_INSIDE_MY_CLOTHES")](https://xkcd.com/797/)
|
|
34
|
+
|
|
35
|
+
### Why would you do this?
|
|
36
|
+
|
|
37
|
+
It's funny.
|
|
38
|
+
|
|
39
|
+
### Do any of these libraries serve any purpose?
|
|
40
|
+
|
|
41
|
+
No.
|
|
42
|
+
|
|
43
|
+
### How do I add these to my projects?
|
|
44
|
+
|
|
45
|
+
See the documentation below.
|
|
46
|
+
|
|
47
|
+
### Can I contribute?
|
|
48
|
+
|
|
49
|
+
Yes! Please do! We welcome all contributions.
|
|
50
|
+
See the [CONTRIBUTING.md](./CONTRIBUTING.md) file for more information.
|
|
51
|
+
|
|
52
|
+
## Currently Supported Languages
|
|
53
|
+
|
|
54
|
+
- [C/C++](./docs/C.md)
|
|
55
|
+
- [Go](./docs/Go.md)
|
|
56
|
+
- [Rust](./docs/Rust.md)
|
|
57
|
+
- [Python](./docs/Python.md)
|
|
58
|
+
- [C#/F#](./docs/.NET.md)
|
|
59
|
+
- [JavaScript/TypeScript](./docs/JavaScript.md)
|
|
60
|
+
- [BEAM](./docs/BEAM.md)
|
|
61
|
+
- [JVM](./docs/JVM.md)
|
|
62
|
+
|
|
63
|
+
### Not a language but still supported
|
|
64
|
+
|
|
65
|
+
- [Docker](./docs/Docker.md)
|
|
66
|
+
|
|
67
|
+
## License
|
|
68
|
+
|
|
69
|
+
Every locust library in this repository is licensed under the [BSD 0 Clause License](./LICENSE).
|
data/Rakefile
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "bundler/gem_tasks"
|
|
4
|
+
require "minitest/test_task"
|
|
5
|
+
|
|
6
|
+
Minitest::TestTask.create(:test) do |t|
|
|
7
|
+
t.libs << "tests"
|
|
8
|
+
t.libs << "src"
|
|
9
|
+
t.warning = false
|
|
10
|
+
t.test_globs = ["tests/**/test_*.rb"]
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
require "standard/rake"
|
|
14
|
+
|
|
15
|
+
task default: %i[test standard]
|
data/build.gradle.kts
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This file was generated by the Gradle 'init' task.
|
|
3
|
+
*
|
|
4
|
+
* This generated file contains a sample Kotlin library project to get you started.
|
|
5
|
+
* For more details on building Java & JVM projects, please refer to https://docs.gradle.org/8.10.2/userguide/building_java_projects.html in the Gradle documentation.
|
|
6
|
+
* This project uses @Incubating APIs which are subject to change.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
plugins {
|
|
10
|
+
// Apply the org.jetbrains.kotlin.jvm Plugin to add support for Kotlin.
|
|
11
|
+
alias(libs.plugins.kotlin.jvm)
|
|
12
|
+
|
|
13
|
+
// Apply the java-library plugin for API and implementation separation.
|
|
14
|
+
`java-library`
|
|
15
|
+
id("maven-publish")
|
|
16
|
+
id("net.researchgate.release") version "3.0.2"
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
repositories {
|
|
20
|
+
// Use Maven Central for resolving dependencies.
|
|
21
|
+
mavenCentral()
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
dependencies {
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
testing {
|
|
28
|
+
suites {
|
|
29
|
+
// Configure the built-in test suite
|
|
30
|
+
val test by getting(JvmTestSuite::class) {
|
|
31
|
+
// Use Kotlin Test test framework
|
|
32
|
+
useKotlinTest("2.0.0")
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// Apply a specific Java toolchain to ease working on different environments.
|
|
38
|
+
java {
|
|
39
|
+
toolchain {
|
|
40
|
+
languageVersion = JavaLanguageVersion.of(11)
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
publishing {
|
|
45
|
+
publications {
|
|
46
|
+
create<MavenPublication>("maven") {
|
|
47
|
+
from(components["java"])
|
|
48
|
+
groupId = "io.github.locusts-r-us"
|
|
49
|
+
artifactId = "locusts"
|
|
50
|
+
version = "$version"
|
|
51
|
+
pom {
|
|
52
|
+
name = "Locusts"
|
|
53
|
+
description = "A JVM library that introduces locusts into your codebase."
|
|
54
|
+
licenses {
|
|
55
|
+
license {
|
|
56
|
+
name = "Zero-Clause BSD"
|
|
57
|
+
url = "https://spdx.org/licenses/0BSD.html"
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
developers {
|
|
61
|
+
developer {
|
|
62
|
+
id = "rosstheross"
|
|
63
|
+
name = "Matt Strapp"
|
|
64
|
+
email = "matt@mattstrapp.net"
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
scm {
|
|
68
|
+
connection = "scm:git:https://github.com/locusts-r-us/locusts.git"
|
|
69
|
+
developerConnection = "scm:git:ssh://github.com/locusts-r-us/locusts.git"
|
|
70
|
+
url = "https://github.com/locusts-r-us/locusts"
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
repositories {
|
|
76
|
+
maven {
|
|
77
|
+
name = "GitHubPackages"
|
|
78
|
+
url = uri("https://maven.pkg.github.com/locusts-r-us/locusts")
|
|
79
|
+
credentials {
|
|
80
|
+
username = System.getenv("GITHUB_ACTOR")
|
|
81
|
+
password = System.getenv("GITHUB_TOKEN")
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
maven {
|
|
85
|
+
name = "OSSRH"
|
|
86
|
+
url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/")
|
|
87
|
+
credentials {
|
|
88
|
+
username = System.getenv("MAVEN_USERNAME")
|
|
89
|
+
password = System.getenv("MAVEN_PASSWORD")
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
release {
|
|
96
|
+
git {
|
|
97
|
+
requireBranch = "master"
|
|
98
|
+
}
|
|
99
|
+
}
|
data/configure.ac
ADDED
data/contrib/tag-repo
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
if [ -z "$GIT_TAG" ]; then
|
|
4
|
+
echo "GIT_TAG is not set, pulling from changeset"
|
|
5
|
+
GIT_TAG=$(jq -r '.version' src/packages/locusts/package.json)
|
|
6
|
+
fi
|
|
7
|
+
|
|
8
|
+
OLD_TAG=$(jq -r '.version' package.json)
|
|
9
|
+
echo "Bumping version from $OLD_TAG to $GIT_TAG"
|
|
10
|
+
|
|
11
|
+
rg "$OLD_TAG" --files-with-matches --iglob \!\*lock\* --iglob \!go.mod --iglob \!deno.json --iglob \!package.json --iglob \!\*.md "$(pwd)" | xargs sed -i "s/$OLD_TAG/$GIT_TAG/g"
|
|
12
|
+
|
|
13
|
+
# fiddle with autotools
|
|
14
|
+
AUTOTOOLS_TAG=${GIT_TAG//\./:}
|
|
15
|
+
OLD_TAG=${OLD_TAG//\./:}
|
|
16
|
+
|
|
17
|
+
sed -i "s/$GIT_TAG/$AUTOTOOLS_TAG/g" GNUmakefile.am
|
|
18
|
+
|
|
19
|
+
# remove the snapshot from gradle
|
|
20
|
+
sed -i "s/-SNAPSHOT//g" gradle.properties
|
|
21
|
+
|
|
22
|
+
# bump the main package.json too
|
|
23
|
+
jq ".version = \"$GIT_TAG\"" package.json | sponge package.json
|
data/deno.json
ADDED
data/deno.lock
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "3",
|
|
3
|
+
"packages": {
|
|
4
|
+
"specifiers": {
|
|
5
|
+
"jsr:@std/assert@^1.0.6": "jsr:@std/assert@1.0.6",
|
|
6
|
+
"jsr:@std/expect": "jsr:@std/expect@1.0.6",
|
|
7
|
+
"jsr:@std/internal@^1.0.4": "jsr:@std/internal@1.0.4",
|
|
8
|
+
"jsr:@std/testing": "jsr:@std/testing@1.0.3",
|
|
9
|
+
"npm:@types/node": "npm:@types/node@18.16.19"
|
|
10
|
+
},
|
|
11
|
+
"jsr": {
|
|
12
|
+
"@std/assert@1.0.6": {
|
|
13
|
+
"integrity": "1904c05806a25d94fe791d6d883b685c9e2dcd60e4f9fc30f4fc5cf010c72207",
|
|
14
|
+
"dependencies": [
|
|
15
|
+
"jsr:@std/internal@^1.0.4"
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
"@std/expect@1.0.6": {
|
|
19
|
+
"integrity": "dffba969ca5ea6d7c39338d4985c9af2bfa6e080c710cc2b77756dd7657c369c",
|
|
20
|
+
"dependencies": [
|
|
21
|
+
"jsr:@std/assert@^1.0.6",
|
|
22
|
+
"jsr:@std/internal@^1.0.4"
|
|
23
|
+
]
|
|
24
|
+
},
|
|
25
|
+
"@std/internal@1.0.4": {
|
|
26
|
+
"integrity": "62e8e4911527e5e4f307741a795c0b0a9e6958d0b3790716ae71ce085f755422"
|
|
27
|
+
},
|
|
28
|
+
"@std/testing@1.0.3": {
|
|
29
|
+
"integrity": "f98c2bee53860a5916727d7e7d3abe920dd6f9edace022e2d059f00d05c2cf42",
|
|
30
|
+
"dependencies": [
|
|
31
|
+
"jsr:@std/assert@^1.0.6",
|
|
32
|
+
"jsr:@std/internal@^1.0.4"
|
|
33
|
+
]
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
"npm": {
|
|
37
|
+
"@types/node@18.16.19": {
|
|
38
|
+
"integrity": "sha512-IXl7o+R9iti9eBW4Wg2hx1xQDig183jj7YLn8F7udNceyfkbn1ZxmzZXuak20gR40D7pIkIY1kYGx5VIGbaHKA==",
|
|
39
|
+
"dependencies": {}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"remote": {},
|
|
44
|
+
"workspace": {
|
|
45
|
+
"packageJson": {
|
|
46
|
+
"dependencies": [
|
|
47
|
+
"npm:prettier@^3.2.5",
|
|
48
|
+
"npm:syncpack@13.0.0",
|
|
49
|
+
"npm:turbo@^2.2.3",
|
|
50
|
+
"npm:typescript@^5.6.3"
|
|
51
|
+
]
|
|
52
|
+
},
|
|
53
|
+
"members": {
|
|
54
|
+
"src/packages/locusts": {
|
|
55
|
+
"dependencies": [
|
|
56
|
+
"jsr:@std/expect@1",
|
|
57
|
+
"jsr:@std/testing@1",
|
|
58
|
+
"npm:locusts"
|
|
59
|
+
],
|
|
60
|
+
"packageJson": {
|
|
61
|
+
"dependencies": [
|
|
62
|
+
"npm:@types/node@^22.8.2",
|
|
63
|
+
"npm:tsup@^8.3.5",
|
|
64
|
+
"npm:tsx@^4.19.2",
|
|
65
|
+
"npm:typescript@^5.6.3"
|
|
66
|
+
]
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
data/docs/.NET.md
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Locusts
|
|
2
|
+
|
|
3
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/dotnet.yml)
|
|
4
|
+

|
|
5
|
+
|
|
6
|
+
## Description
|
|
7
|
+
|
|
8
|
+
Locusts is a library that provides a way to introduce locusts into your code.
|
|
9
|
+
|
|
10
|
+
Why would you want to do that? I don't know.
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
```sh
|
|
15
|
+
dotnet add package Locusts
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Example
|
|
19
|
+
|
|
20
|
+
```cs
|
|
21
|
+
using Locusts;
|
|
22
|
+
|
|
23
|
+
Locusts.Introduce();
|
|
24
|
+
// Locusts are now in your codebase!
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## License
|
|
28
|
+
|
|
29
|
+
This project is licensed under the BSD Zero Clause License. See the [LICENSE](../LICENSE) file for details.
|
data/docs/BEAM.md
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Locusts
|
|
2
|
+
|
|
3
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/beam.yml)
|
|
4
|
+

|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**TODO: Add description**
|
|
9
|
+
|
|
10
|
+
## Installation
|
|
11
|
+
|
|
12
|
+
If [available in Hex](https://hex.pm/docs/publish), the package can be installed
|
|
13
|
+
by adding `locusts` to your list of dependencies in `mix.exs`:
|
|
14
|
+
|
|
15
|
+
```elixir
|
|
16
|
+
def deps do
|
|
17
|
+
[
|
|
18
|
+
{:locusts, ">= 0.0.0"}
|
|
19
|
+
]
|
|
20
|
+
end
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Documentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc)
|
|
24
|
+
and published on [HexDocs](https://hexdocs.pm). Once published, the docs can
|
|
25
|
+
be found at <https://hexdocs.pm/locusts>.
|
data/docs/C.md
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# liboCusts
|
|
2
|
+
|
|
3
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/c.yml)
|
|
4
|
+
|
|
5
|
+
## Description
|
|
6
|
+
|
|
7
|
+
liboCusts is a library that provides a way to introduce locusts into your code.
|
|
8
|
+
|
|
9
|
+
Why would you want to do that? I don't know.
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```c
|
|
14
|
+
#include "locusts.h"
|
|
15
|
+
|
|
16
|
+
int main(void) {
|
|
17
|
+
introduce_locusts();
|
|
18
|
+
/* Locusts are now in your codebase! */
|
|
19
|
+
return 0;
|
|
20
|
+
}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Building
|
|
24
|
+
|
|
25
|
+
Multiple build systems are supported.
|
|
26
|
+
|
|
27
|
+
### Meson
|
|
28
|
+
|
|
29
|
+
```sh
|
|
30
|
+
meson setup builddir --buildtype=release
|
|
31
|
+
meson compile -C builddir
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### CMake
|
|
35
|
+
|
|
36
|
+
```sh
|
|
37
|
+
cmake -S . -B build
|
|
38
|
+
cmake --build build
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Autoconf
|
|
42
|
+
|
|
43
|
+
```sh
|
|
44
|
+
autoreconf -fi
|
|
45
|
+
./configure
|
|
46
|
+
make
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## License
|
|
50
|
+
|
|
51
|
+
This project is licensed under the BSD Zero Clause License. See the [LICENSE](../LICENSE) file for details.
|
data/docs/Docker.md
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Locusts
|
|
2
|
+
|
|
3
|
+
[](https://github.com/locusts-r-us/locusts/actions/workflows/docker.yml)
|
|
4
|
+
|
|
5
|
+
A docker container containing locusts also exist.
|
|
6
|
+
|
|
7
|
+
If you would like to add locusts to your company's servers, you can use the following command:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
docker run --rm ghcr.io/locusts-r-us/locusts:master
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
That's it. There are locusts now in your computer.
|
|
14
|
+
What those locusts do is up to the reader.
|