From b4afd6d4dc3ff127e3bf10d2c0c80ab8b22d5ff4 Mon Sep 17 00:00:00 2001 From: Lucas Oskorep Date: Fri, 17 Oct 2025 02:38:04 -0400 Subject: [PATCH] feat: gitea pipeline --- .gitea/workflows/build.yaml | 47 +++++++++++++++++++++++++++++++++++++ justfile | 3 +++ src/__tests__/rect.test.ts | 2 +- src/wm/windowManager.ts | 4 ++-- tsconfig.json | 2 ++ 5 files changed, 55 insertions(+), 3 deletions(-) create mode 100644 .gitea/workflows/build.yaml diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml new file mode 100644 index 0000000..284c41c --- /dev/null +++ b/.gitea/workflows/build.yaml @@ -0,0 +1,47 @@ +name: Build and Test + +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + build: + runs-on: docker + container: + image: node:20 + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Install pnpm and TypeScript + run: npm install -g pnpm typescript@5.8.3 + + - name: Install just + run: | + curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to /usr/local/bin + + - name: Install system dependencies + run: | + apt-get update + apt-get install -y libglib2.0-dev glib-networking zip + + - name: Install project dependencies + run: pnpm install + + - name: Run unit tests + run: just test + + - name: Build and package extension + run: just build-package + + - name: Upload extension package + uses: actions/upload-artifact@v4 + with: + name: aerospike-extension + path: aerospike.zip + retention-days: 30 diff --git a/justfile b/justfile index c754174..fd12754 100644 --- a/justfile +++ b/justfile @@ -44,6 +44,9 @@ test-watch: test-coverage: pnpm test:coverage +ci-local: + act -W .gitea/workflows/build.yaml + #pack: build # gnome-extensions pack dist \ # --force \ diff --git a/src/__tests__/rect.test.ts b/src/__tests__/rect.test.ts index 4970418..bafd6ec 100644 --- a/src/__tests__/rect.test.ts +++ b/src/__tests__/rect.test.ts @@ -1,5 +1,5 @@ import { describe, test, expect } from '@jest/globals'; -import type { Rect } from '../utils/rect'; +import type { Rect } from '../utils/rect.js'; describe('Rect Type Tests', () => { test('should create a valid Rect object', () => { diff --git a/src/wm/windowManager.ts b/src/wm/windowManager.ts index c79fbb1..d9ce26d 100644 --- a/src/wm/windowManager.ts +++ b/src/wm/windowManager.ts @@ -230,7 +230,7 @@ export default class WindowManager implements IWindowManager { } _getWrappedWindow(window: Meta.Window): WindowWrapper | undefined { - let wrapped = undefined; + let wrapped: WindowWrapper | undefined = undefined; for (const monitor of this._monitors.values()) { wrapped = monitor.getWindow(window.get_id()); if (wrapped !== undefined) { @@ -241,7 +241,7 @@ export default class WindowManager implements IWindowManager { } _getAndRemoveWrappedWindow(window: Meta.Window): WindowWrapper | undefined { - let wrapped = undefined; + let wrapped: WindowWrapper | undefined = undefined; for (const monitor of this._monitors.values()) { wrapped = monitor.getWindow(window.get_id()); if (wrapped !== undefined) { diff --git a/tsconfig.json b/tsconfig.json index 97f97da..7b19e5b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,6 +5,8 @@ "outDir": "./dist", "sourceMap": false, "strict": true, + "noImplicitAny": false, + "skipLibCheck": true, "target": "ES2022", "lib": [ "ES2022"