diff --git a/.github/workflows/test_backend.yml b/.github/workflows/test_backend.yml index f85fdfa4c..4098e8ae6 100644 --- a/.github/workflows/test_backend.yml +++ b/.github/workflows/test_backend.yml @@ -51,8 +51,8 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - - name: docker-compose mariadb - run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach --no-deps mariadb + - name: docker-compose mariadb redis + run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach --no-deps mariadb redis - name: install bun uses: oven-sh/setup-bun@v2 diff --git a/.github/workflows/test_database.yml b/.github/workflows/test_database.yml index 7c573d208..51bad45dc 100644 --- a/.github/workflows/test_database.yml +++ b/.github/workflows/test_database.yml @@ -49,7 +49,7 @@ jobs: node-version: '18.20.7' - name: Database | docker-compose - run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach mariadb + run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach mariadb redis - name: install bun uses: oven-sh/setup-bun@v2 diff --git a/.github/workflows/test_dht_node.yml b/.github/workflows/test_dht_node.yml index cbfbd2041..f2288f82c 100644 --- a/.github/workflows/test_dht_node.yml +++ b/.github/workflows/test_dht_node.yml @@ -48,8 +48,8 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - - name: docker-compose mariadb - run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach --no-deps mariadb + - name: docker-compose mariadb redis + run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach --no-deps mariadb redis - name: install bun uses: oven-sh/setup-bun@v2 diff --git a/.github/workflows/test_e2e.yml b/.github/workflows/test_e2e.yml index a670e485d..249523c41 100644 --- a/.github/workflows/test_e2e.yml +++ b/.github/workflows/test_e2e.yml @@ -20,8 +20,8 @@ jobs: with: bun-version-file: '.bun-version' - - name: Boot up test system | docker-compose mariadb mailserver - run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach mariadb mailserver + - name: Boot up test system | docker-compose mariadb mailserver redis + run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach mariadb mailserver redis - name: Prepare test system run: | @@ -63,10 +63,11 @@ jobs: sudo nginx -t sudo systemctl start nginx - - name: wait for nginx and mailserver to be ready + - name: wait for nginx, mailserver and redis to be ready run: | until nc -z 127.0.0.1 80; do echo waiting for nginx; sleep 1; done; until nc -z 127.0.0.1 1025; do echo waiting for mailserver; sleep 1; done; + until nc -z 127.0.0.1 6379; do echo waiting for redis; sleep 1; done; - name: End-to-end tests | run tests id: e2e-tests @@ -125,8 +126,8 @@ jobs: with: bun-version-file: '.bun-version' - - name: Boot up test system | docker-compose mariadb mailserver - run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach mariadb mailserver + - name: Boot up test system | docker-compose mariadb mailserver redis + run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach mariadb mailserver redis - name: Prepare test system run: | @@ -169,10 +170,11 @@ jobs: sudo nginx -t sudo systemctl start nginx - - name: wait for nginx and mailserver to be ready + - name: wait for nginx, mailserver and redis to be ready run: | until nc -z 127.0.0.1 80; do echo waiting for nginx; sleep 1; done; until nc -z 127.0.0.1 1025; do echo waiting for mailserver; sleep 1; done; + until nc -z 127.0.0.1 6379; do echo waiting for redis; sleep 1; done; - name: End-to-end tests | run tests id: e2e-tests @@ -210,8 +212,8 @@ jobs: with: bun-version-file: '.bun-version' - - name: Boot up test system | docker-compose mariadb mailserver - run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach mariadb mailserver + - name: Boot up test system | docker-compose mariadb mailserver redis + run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach mariadb mailserver redis - name: Prepare test system run: | @@ -250,10 +252,11 @@ jobs: sudo nginx -t sudo systemctl start nginx - - name: wait for nginx and mailserver to be ready + - name: wait for nginx, mailserver and redis to be ready run: | until nc -z 127.0.0.1 80; do echo waiting for nginx; sleep 1; done; until nc -z 127.0.0.1 1025; do echo waiting for mailserver; sleep 1; done; + until nc -z 127.0.0.1 6379; do echo waiting for redis; sleep 1; done; - name: End-to-end tests | run tests id: e2e-tests diff --git a/.github/workflows/test_federation.yml b/.github/workflows/test_federation.yml index 6b461f215..b462151e7 100644 --- a/.github/workflows/test_federation.yml +++ b/.github/workflows/test_federation.yml @@ -48,8 +48,8 @@ jobs: - name: Checkout code uses: actions/checkout@v3 - - name: docker-compose mariadb - run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach --no-deps mariadb + - name: docker-compose mariadb redis + run: docker compose -f docker-compose.yml -f docker-compose.test.yml up --detach --no-deps mariadb redis - name: install bun uses: oven-sh/setup-bun@v2 diff --git a/dht-node/src/dht_node/@types/@hyperswarm__dht/index.d.ts b/@types/@hyperswarm__dht/index.d.ts similarity index 100% rename from dht-node/src/dht_node/@types/@hyperswarm__dht/index.d.ts rename to @types/@hyperswarm__dht/index.d.ts diff --git a/backend/@types/klicktipp-api/index.d.ts b/@types/klicktipp-api/index.d.ts similarity index 100% rename from backend/@types/klicktipp-api/index.d.ts rename to @types/klicktipp-api/index.d.ts diff --git a/backend/@types/random-bigint/index.d.ts b/@types/random-bigint/index.d.ts similarity index 100% rename from backend/@types/random-bigint/index.d.ts rename to @types/random-bigint/index.d.ts diff --git a/backend/@types/sodium-native/index.d.ts b/@types/sodium-native/index.d.ts similarity index 100% rename from backend/@types/sodium-native/index.d.ts rename to @types/sodium-native/index.d.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index 9d8683db1..0cca591bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,25 @@ All notable changes to this project will be documented in this file. Dates are d Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). -#### [v2.7.1](https://github.com/gradido/gradido/compare/v2.7.0...v2.7.1) +#### [v2.7.3](https://github.com/gradido/gradido/compare/v2.7.2...v2.7.3) +- feat(admin): show user registered at in admin [`#3589`](https://github.com/gradido/gradido/pull/3589) +- feat(backend): 3573 feature introduce distributed semaphore base on redis [`#3580`](https://github.com/gradido/gradido/pull/3580) +- fix(workflow): make deployment install script more robust [`#3588`](https://github.com/gradido/gradido/pull/3588) +- chore(release): v2.7.2 [`#3587`](https://github.com/gradido/gradido/pull/3587) + +#### [v2.7.2](https://github.com/gradido/gradido/compare/v2.7.0...v2.7.2) + +> 2 December 2025 + +- feat(frontend): success message on create contribution like on send [`#3583`](https://github.com/gradido/gradido/pull/3583) +- refactor(backend): rewrite seeding in database [`#3586`](https://github.com/gradido/gradido/pull/3586) +- fix(other): complete email tests and move localization complete into core [`#3585`](https://github.com/gradido/gradido/pull/3585) +- fix(workflow): editor warnings [`#3584`](https://github.com/gradido/gradido/pull/3584) +- fix(other): fix code which lead to biome linting errors [`#3582`](https://github.com/gradido/gradido/pull/3582) +- refactor(backend): moved email to core [`#3579`](https://github.com/gradido/gradido/pull/3579) +- refactor(database): stabilize entity loading across runtimes by introducing deferred relation resolution [`#3578`](https://github.com/gradido/gradido/pull/3578) +- chore(release): v2.7.1 [`#3577`](https://github.com/gradido/gradido/pull/3577) - feat(frontend): new startpage images [`#3576`](https://github.com/gradido/gradido/pull/3576) - feat(frontend): update login subtitle [`#3574`](https://github.com/gradido/gradido/pull/3574) - feat(frontend): update copy symbol and change link order [`#3575`](https://github.com/gradido/gradido/pull/3575) diff --git a/README.md b/README.md index 2bc9c6a32..a36be6e19 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,7 @@ Clone the Gradido repository to your local machine. ```bash git clone https://github.com/gradido/gradido.git cd gradido +git submodule update --init --recursive ``` For local development, you can run Gradido with **Docker** or **natively**, depending on your preferences and system setup. If you don't have a native MariaDB or MySQL installation, Docker can be used to handle the database as well. @@ -105,6 +106,22 @@ turbo start [More Infos for using turbo](./working-native.md) +### Dependencies & Bundling +This project uses esbuild to bundle the main modules (backend, dht-node, federation) into single JavaScript files for optimized deployment. To ensure a minimal and reliable Docker image, dependencies are intentionally split: + +- dependencies: Only packages that cannot be bundled by esbuild into the output files. +Examples include: + - Native modules (sodium-native) + - Packages incompatible with bundling (email-templates) + - Runtime helpers (cross-env) +- devDependencies: All other packages that are fully bundled into the build output by esbuild. + +This setup ensures that: +- The production Docker image contains only the minimal set of necessary runtime modules. +- Native or runtime-sensitive packages are included in node_modules for proper execution. + +Note: Even if Docker is not used in all environments, this organization ensures consistent and predictable builds across different platforms. + ### For Windows @@ -211,6 +228,16 @@ In root folder calling `bun clear` will clear all turbo caches, node_modules and bun clear ``` +### git Submodule +The new Module `inspector` was added as git submodule. +So after +- `git clone` +- `git checkout` +- `git pull` + +you have to run `git submodule update --init` to get the correct submodule version. + +[Read More](https://git-scm.com/book/en/v2/Git-Tools-Submodules) ## Services defined in this package diff --git a/admin/package.json b/admin/package.json index 463162667..062594ccc 100644 --- a/admin/package.json +++ b/admin/package.json @@ -3,7 +3,7 @@ "description": "Administration Interface for Gradido", "main": "index.js", "author": "Gradido Academy - https://www.gradido.net", - "version": "2.7.1", + "version": "2.7.3", "license": "Apache-2.0", "scripts": { "dev": "vite", diff --git a/admin/src/components/Tables/SearchUserTable.vue b/admin/src/components/Tables/SearchUserTable.vue index 1a92962e3..9bca3745b 100644 --- a/admin/src/components/Tables/SearchUserTable.vue +++ b/admin/src/components/Tables/SearchUserTable.vue @@ -16,6 +16,10 @@
+ +