4 Commits
Author SHA1 Message Date
tesses50 41e1ac2592 Fix the event loop so it isn't 100% CPU utilization
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-x64:latest, x86_64-linux-gnu, amd64, asrock) (push) Successful in 1m0s
Build and Deploy on Tag / 🔨 Build for PowerPC (push) Successful in 1m0s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-arm64:latest, aarch64-linux-gnu, arm64, asrock) (push) Successful in 1m2s
Build and Deploy on Tag / docker (push) Successful in 1m33s
Build and Deploy on Tag / update-tap (push) Successful in 1m56s
Build and Deploy on Tag / windows (push) Successful in 2m10s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-riscv64:latest, riscv64-linux-gnu, riscv64, msi-walmart) (push) Successful in 2m30s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-x86:latest, i386-linux-gnu, 386, msi-walmart) (push) Successful in 2m36s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-arm:latest, arm-linux-gnueabihf, arm7, msi-walmart) (push) Successful in 2m37s
2026-10-30 01:58:47 -05:00
tesses50 215fde5a78 Fix fetchcontent, add constant time compare for bytearray
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-x86:latest, i386-linux-gnu, 386, asrock) (push) Successful in 43s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-riscv64:latest, riscv64-linux-gnu, riscv64, asrock) (push) Successful in 45s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-arm64:latest, aarch64-linux-gnu, arm64, asrock) (push) Successful in 46s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-x64:latest, x86_64-linux-gnu, amd64, msi-walmart) (push) Successful in 3m5s
Build and Deploy on Tag / 🔨 Build for PowerPC (push) Successful in 3m8s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-arm:latest, arm-linux-gnueabihf, arm7, msi-walmart) (push) Successful in 3m12s
Build and Deploy on Tag / update-tap (push) Successful in 4m53s
2026-10-25 17:56:12 -05:00
tesses50 571e810d44 Fix fetchcontent 2026-10-25 11:05:26 -05:00
tesses50 baeab65186 Fix fetchcontent 2026-10-25 11:04:54 -05:00
7 changed files with 53 additions and 33 deletions
+31 -27
View File
@@ -5,7 +5,7 @@ on:
- 'v*'
env:
TF_VERSION: 0.0.9
TF_VERSION: 0.0.11
PACKAGE_AND_BREW: ${{ secrets.PACKAGE_AND_BREW }}
VERSION: ${{ gitea.ref_name }}
RESULT_IMAGE_NAME: tesses50/crosslang
@@ -22,8 +22,6 @@ jobs:
- uses: actions/checkout@v4
- run: bash build-for-ppc.sh
- uses: akkuman/gitea-release-action@v1
env:
NODE_OPTIONS: '--experimental-fetch' # if nodejs < 18
with:
prerelease: true
files: |-
@@ -32,29 +30,29 @@ jobs:
build-packages:
name: "🔨 Build for everything else"
strategy:
fail-fast: true
fail-fast: false
matrix:
include:
- container: "git.tesses.org/tesses50/linux-x64:latest"
puter: "msi-walmart"
puter: "asrock"
nfpmName: "amd64"
debianName: "x86_64-linux-gnu"
- container: "git.tesses.org/tesses50/linux-x86:latest"
puter: "asrock"
puter: "msi-walmart"
nfpmName: "386"
debianName: "i386-linux-gnu"
- container: "git.tesses.org/tesses50/linux-arm:latest"
puter: "fw13-ubuntu-latest"
puter: "msi-walmart"
nfpmName: "arm7"
debianName: "arm-linux-gnueabihf"
- container: "git.tesses.org/tesses50/linux-arm64:latest"
puter: "msi-walmart"
puter: "asrock"
nfpmName: "arm64"
debianName: "aarch64-linux-gnu"
- container: "git.tesses.org/tesses50/linux-riscv64:latest"
nfpmName: "riscv64"
debianName: "riscv64-linux-gnu"
puter: "asrock"
puter: "msi-walmart"
runs-on: ${{ matrix.puter }}
container:
image: ${{ matrix.container }}
@@ -62,30 +60,15 @@ jobs:
- uses: actions/checkout@v4
- run: bash build-for-nfpm.sh ${{ matrix.nfpmName }} ${{ matrix.debianName }}
- uses: akkuman/gitea-release-action@v1
env:
NODE_OPTIONS: '--experimental-fetch' # if nodejs < 18
with:
prerelease: true
files: |-
artifacts/**
update-tap:
runs-on: msi-walmart
container: git.tesses.org/tesses50/global-containers-mingw:latest
docker:
runs-on: asrock
steps:
- uses: actions/checkout@v4
- run: |
mkdir -p artifacts
env -C Packaging/Windows bash build.sh
- uses: akkuman/gitea-release-action@v1
env:
NODE_OPTIONS: '--experimental-fetch' # if nodejs < 18
with:
prerelease: true
files: |-
artifacts/**
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Log in to registry
@@ -100,7 +83,14 @@ jobs:
context: .
file: ./Dockerfile
push: true
tags: ${{ env.GITEA_DOMAIN }}/${{ env.RESULT_IMAGE_NAME }}:latest
tags: |
${{ env.GITEA_DOMAIN }}/${{ env.RESULT_IMAGE_NAME }}:latest
${{ env.GITEA_DOMAIN }}/${{ env.RESULT_IMAGE_NAME }}:${{ env.VERSION }}
update-tap:
runs-on: r420
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v4
with:
ref: "master"
@@ -115,3 +105,17 @@ jobs:
git add .
git commit -m "Push crosslang=${{ env.VERSION }}"
git push
windows:
runs-on: asrock
container: git.tesses.org/tesses50/global-containers-mingw:latest
steps:
- uses: actions/checkout@v4
- run: |
mkdir -p artifacts
env -C Packaging/Windows bash build.sh
- uses: akkuman/gitea-release-action@v1
with:
prerelease: true
files: |-
artifacts/**
-2
View File
@@ -16,9 +16,7 @@
"CROSSLANG_ENABLE_TERMIOS=1",
"CROSSLANG_ENABLE_MBED=1",
"CROSSLANG_ENABLE_SQLITE=1",
"TESSESFRAMEWORK_ENABLE_SDL2=1",
"CROSSLANG_ENABLE_PROCESS=1",
"CROSSLANG_ENABLE_FFI=1",
"CROSSLANG_ENABLE_SHARED=1"
],
"compilerPath": "/usr/bin/gcc",
+6
View File
@@ -1,5 +1,11 @@
# Changelog
## 0.0.13
Fix the event loop so it isn't 100% CPU utilization
## 0.0.12
Fix fetchcontent, add constant time compare for bytearray
## 0.0.11
Add htmlparser, conditional variables, make alloc_threshold overridable in prefs.json
+1 -1
View File
@@ -5,7 +5,7 @@ set(CROSSLANG_STATIC ${TESSESFRAMEWORK_STATIC} CACHE INTERNAL "For CrossLang" FO
FetchContent_Declare(
TessesFramework
GIT_REPOSITORY https://git.tesses.org/tesses50/tessesframework.git
GIT_TAG e4ca34aa597c9b0955aa23c18c500048af697c92
GIT_TAG 7649a1ad4c4fc230c96bcf044fd36f6cef1671be
)
set(TESSESFRAMEWORK_ENABLE_EXAMPLES OFF)
FetchContent_MakeAvailable(TessesFramework)
+1 -1
View File
@@ -31,7 +31,7 @@ target_include_directories(crosslang
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>"
)
if(TESSESFRAMEWORK_FETCHCONTENT)
if(CROSSLANG_FETCHCONTENT)
target_link_libraries(crosslang PUBLIC tessesframework)
else()
target_link_libraries(crosslang PUBLIC TessesFramework::tessesframework)
+1 -1
View File
@@ -1,3 +1,3 @@
set(CROSSLANG_MAJOR_VERSION 0)
set(CROSSLANG_MINOR_VERSION 0)
set(CROSSLANG_PATCH_VERSION 11)
set(CROSSLANG_PATCH_VERSION 13)
+12
View File
@@ -100,6 +100,15 @@ static TObject Crypto_Base64Decode(GCList &ls, std::vector<TObject> args) {
}
return nullptr;
}
static TObject Crypto_ConstantEquals(GCList &ls, std::vector<TObject> args) {
TByteArray *left;
TByteArray *right;
if (GetArgumentHeap(args, 0, left) && GetArgumentHeap(args, 1, right)) {
return Tesses::Framework::Crypto::ConstantEquals(left->data,
right->data);
}
return false;
}
void TStd::RegisterCrypto(std::shared_ptr<GC> gc, TRootEnvironment *env) {
env->permissions.canRegisterCrypto = true;
@@ -110,6 +119,9 @@ void TStd::RegisterCrypto(std::shared_ptr<GC> gc, TRootEnvironment *env) {
dict->DeclareFunction(gc, "PBKDF2", "Hash passwords with PBKDF2",
{"pass", "salt", "itterations", "keylen", "shanum"},
Crypto_PBKDF2);
dict->DeclareFunction(gc, "ConstantEquals",
"Compare two byte arrays using constant time",
{"array1", "array2"}, Crypto_ConstantEquals);
dict->DeclareFunction(gc, "RandomBytes",
"Create bytearray but with random bytes in it "
"instead of zeros (this uses mbedtls by the way)",