diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 5a1700bf3..d3f446029 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,11 +1,11 @@ -# To get started with Dependabot version updates, you'll need to specify which -# package ecosystems to update and where the package manifests are located. -# Please see the documentation for all configuration options: -# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates - version: 2 updates: - package-ecosystem: "nuget" - directory: "/" # Find the .sln file + directory: "/" schedule: interval: "monthly" + + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "monthly" \ No newline at end of file diff --git a/.github/workflows/build-and-push-web.yml b/.github/workflows/build-and-push-web.yml index a9b62cd0a..5558a4fef 100644 --- a/.github/workflows/build-and-push-web.yml +++ b/.github/workflows/build-and-push-web.yml @@ -31,7 +31,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + uses: actions/checkout@v4 - name: Replace tokens in configuration working-directory: ${{ env.project_root }} @@ -39,10 +39,10 @@ jobs: sed -i 's|${API_BASE_URL}|${{ vars.API_BASE_URL }}|g' wwwroot/appsettings.json - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 + uses: docker/setup-buildx-action@v3 - name: Log in to the Container registry - uses: docker/login-action@v2 + uses: docker/login-action@v3 with: registry: ${{ env.registry }} username: ${{ github.actor }} @@ -50,14 +50,14 @@ jobs: - name: Extract metadata (tags, labels) for Docker id: meta - uses: docker/metadata-action@v4 + uses: docker/metadata-action@v5 with: flavor: | latest=${{ (github.event_name == 'workflow_dispatch' && 'true') || 'auto' }} images: ${{ env.registry }}/${{ vars.WEB_IMAGE_NAME }} - name: Build and push Docker image - uses: docker/build-push-action@v4 + uses: docker/build-push-action@v6 with: context: . file: ./Crypter.Web/Dockerfile diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 9d443b790..8df792ad3 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -24,7 +24,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + uses: actions/checkout@v4 # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL @@ -36,15 +36,15 @@ jobs: # Prefix the list here with "+" to use these queries and those in the config file. # queries: ./path/to/local/query, your-org/your-repo/queries@main - - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + - uses: actions/checkout@v4 - name: Setup .NET - uses: actions/setup-dotnet@v3 + uses: actions/setup-dotnet@v4 with: dotnet-version: 9.0.x - - uses: pnpm/action-setup@a3252b78c470c02df07e9d59298aecedc3ccdd6d #v3 + - uses: pnpm/action-setup@v4 with: - version: 8 + version: 9 - name: Install wasm-tools run: dotnet workload install wasm-tools diff --git a/.github/workflows/deploy-to-environment.yml b/.github/workflows/deploy-to-environment.yml index 15109a990..60b3aec78 100644 --- a/.github/workflows/deploy-to-environment.yml +++ b/.github/workflows/deploy-to-environment.yml @@ -22,10 +22,10 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + uses: actions/checkout@v4 - name: Stop service - uses: appleboy/ssh-action@029f5b4aeeeb58fdfe1410a5d17f967dacf36262 # v1.0.3 + uses: appleboy/ssh-action@v1.2.0 with: host: ${{ secrets.APPSERVER_SSH_HOST }} port: ${{ secrets.APPSERVER_SSH_PORT }} @@ -39,7 +39,7 @@ jobs: script_stop: true - name: Push latest systemctl service file - uses: appleboy/scp-action@v0.1.4 + uses: appleboy/scp-action@v0.1.7 with: host: ${{ secrets.APPSERVER_SSH_HOST }} port: ${{ secrets.APPSERVER_SSH_PORT }} @@ -50,7 +50,7 @@ jobs: strip_components: 2 - name: Reload systemctl daemon - uses: appleboy/ssh-action@029f5b4aeeeb58fdfe1410a5d17f967dacf36262 # v1.0.3 + uses: appleboy/ssh-action@v1.2.0 with: host: ${{ secrets.APPSERVER_SSH_HOST }} port: ${{ secrets.APPSERVER_SSH_PORT }} @@ -59,7 +59,7 @@ jobs: script: systemctl --user daemon-reload - name: Push latest Docker Compose file - uses: appleboy/scp-action@v0.1.4 + uses: appleboy/scp-action@v0.1.7 with: host: ${{ secrets.APPSERVER_SSH_HOST }} port: ${{ secrets.APPSERVER_SSH_PORT }} @@ -70,7 +70,7 @@ jobs: - name: Push latest Docker Compose override file if deploying to Development server if: github.event.inputs.environment == 'development' - uses: appleboy/scp-action@v0.1.4 + uses: appleboy/scp-action@v0.1.7 with: host: ${{ secrets.APPSERVER_SSH_HOST }} port: ${{ secrets.APPSERVER_SSH_PORT }} @@ -80,7 +80,7 @@ jobs: target: crypter-web-container/ - name: Pull latest images - uses: appleboy/ssh-action@029f5b4aeeeb58fdfe1410a5d17f967dacf36262 # v1.0.3 + uses: appleboy/ssh-action@v1.2.0 with: host: ${{ secrets.APPSERVER_SSH_HOST }} port: ${{ secrets.APPSERVER_SSH_PORT }} @@ -90,7 +90,7 @@ jobs: script_stop: true - name: Migrate database - uses: appleboy/ssh-action@029f5b4aeeeb58fdfe1410a5d17f967dacf36262 # v1.0.3 + uses: appleboy/ssh-action@v1.2.0 with: host: ${{ secrets.APPSERVER_SSH_HOST }} port: ${{ secrets.APPSERVER_SSH_PORT }} @@ -100,7 +100,7 @@ jobs: script_stop: true - name: Start service - uses: appleboy/ssh-action@029f5b4aeeeb58fdfe1410a5d17f967dacf36262 # v1.0.3 + uses: appleboy/ssh-action@v1.2.0 with: host: ${{ secrets.APPSERVER_SSH_HOST }} port: ${{ secrets.APPSERVER_SSH_PORT }} diff --git a/.github/workflows/pr-build-api.yml b/.github/workflows/pr-build-api.yml index 773f6c524..317a8f78a 100644 --- a/.github/workflows/pr-build-api.yml +++ b/.github/workflows/pr-build-api.yml @@ -11,13 +11,13 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + uses: actions/checkout@v4 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 + uses: docker/setup-buildx-action@v3 - name: Build image - uses: docker/build-push-action@v4 + uses: docker/build-push-action@v6 with: context: . file: ./Crypter.API/Dockerfile diff --git a/.github/workflows/pr-build-web.yml b/.github/workflows/pr-build-web.yml index 78b7a815d..cfe37750e 100644 --- a/.github/workflows/pr-build-web.yml +++ b/.github/workflows/pr-build-web.yml @@ -11,13 +11,13 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + uses: actions/checkout@v4 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 + uses: docker/setup-buildx-action@v3 - name: Build image - uses: docker/build-push-action@v4 + uses: docker/build-push-action@v6 with: context: . file: ./Crypter.Web/Dockerfile diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 3bd41356e..60f927307 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -9,16 +9,16 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + - uses: actions/checkout@v4 - - uses: pnpm/action-setup@a3252b78c470c02df07e9d59298aecedc3ccdd6d #v3 + - uses: pnpm/action-setup@v4 with: - version: 8 + version: 9 - name: Setup .NET - uses: actions/setup-dotnet@v3 + uses: actions/setup-dotnet@v4 with: - dotnet-version: 8.0.x + dotnet-version: 9.0.x - name: Restore dependencies run: dotnet restore Crypter.Test @@ -33,14 +33,14 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + - uses: actions/checkout@v4 - - uses: pnpm/action-setup@a3252b78c470c02df07e9d59298aecedc3ccdd6d #v3 + - uses: pnpm/action-setup@v4 with: - version: 8 + version: 9 - name: Setup .NET - uses: actions/setup-dotnet@v3 + uses: actions/setup-dotnet@v4 with: dotnet-version: 9.0.x diff --git a/Crypter.API/Crypter.API.csproj b/Crypter.API/Crypter.API.csproj index 8603f7f6f..a49b6b8e0 100644 --- a/Crypter.API/Crypter.API.csproj +++ b/Crypter.API/Crypter.API.csproj @@ -1,6 +1,6 @@  - net8.0 + net9.0 enable disable true @@ -18,16 +18,11 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - + + diff --git a/Crypter.API/Dockerfile b/Crypter.API/Dockerfile index 2ecb09e67..66564658a 100644 --- a/Crypter.API/Dockerfile +++ b/Crypter.API/Dockerfile @@ -1,7 +1,7 @@ -FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build +FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build WORKDIR /source/ -RUN dotnet tool install --global dotnet-ef --version 8.0.* +RUN dotnet tool install --global dotnet-ef --version 9.0.* ENV PATH="${PATH}:/root/.dotnet/tools" COPY ../*.sln ./ @@ -24,7 +24,7 @@ COPY Crypter.DataAccess/. ./Crypter.DataAccess/ RUN dotnet publish Crypter.API --configuration release --no-self-contained /p:TreatWarningsAsErrors=true /warnaserror --output /app/ RUN dotnet-ef migrations bundle --project Crypter.DataAccess --startup-project Crypter.API --configuration release --no-build --target-runtime linux-x64 --output /app/efbundle --verbose -FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS runtime +FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS runtime WORKDIR /app COPY --from=build /app ./ CMD ["dotnet", "Crypter.API.dll"] diff --git a/Crypter.API/README.md b/Crypter.API/README.md index e1c6b2490..d311cd056 100644 --- a/Crypter.API/README.md +++ b/Crypter.API/README.md @@ -53,7 +53,7 @@ This should also aid developers in deciding where to add a new API endpoint or w * PUT /api/user/key/private * User Recovery - * GET /api/user/recovery?email={emailAdress} + * GET /api/user/recovery?email={emailAddress} * POST /api/user/recovery * User Settings diff --git a/Crypter.Benchmarks/Crypter.Benchmarks.csproj b/Crypter.Benchmarks/Crypter.Benchmarks.csproj index 9e9038672..018728733 100644 --- a/Crypter.Benchmarks/Crypter.Benchmarks.csproj +++ b/Crypter.Benchmarks/Crypter.Benchmarks.csproj @@ -2,7 +2,7 @@ Exe - net8.0 + net9.0 disable enable true diff --git a/Crypter.Common.Client/Crypter.Common.Client.csproj b/Crypter.Common.Client/Crypter.Common.Client.csproj index 1d71aab4e..63a66ca97 100644 --- a/Crypter.Common.Client/Crypter.Common.Client.csproj +++ b/Crypter.Common.Client/Crypter.Common.Client.csproj @@ -1,7 +1,7 @@  - net8.0 + net9.0 disable enable true diff --git a/Crypter.Common/Crypter.Common.csproj b/Crypter.Common/Crypter.Common.csproj index a60b20116..a20d7d4e5 100644 --- a/Crypter.Common/Crypter.Common.csproj +++ b/Crypter.Common/Crypter.Common.csproj @@ -1,13 +1,13 @@ - net8.0 + net9.0 true enable 12 - + diff --git a/Crypter.Core/Crypter.Core.csproj b/Crypter.Core/Crypter.Core.csproj index 05c25f46a..26617c98b 100644 --- a/Crypter.Core/Crypter.Core.csproj +++ b/Crypter.Core/Crypter.Core.csproj @@ -1,7 +1,7 @@  - net8.0 + net9.0 enable disable true @@ -9,16 +9,14 @@ - - - + + - + - - + - + diff --git a/Crypter.Crypto.Common/Crypter.Crypto.Common.csproj b/Crypter.Crypto.Common/Crypter.Crypto.Common.csproj index d9d1412ab..b5f949874 100644 --- a/Crypter.Crypto.Common/Crypter.Crypto.Common.csproj +++ b/Crypter.Crypto.Common/Crypter.Crypto.Common.csproj @@ -1,7 +1,7 @@ - net8.0 + net9.0 disable enable true diff --git a/Crypter.Crypto.Providers.Browser/Crypter.Crypto.Providers.Browser.csproj b/Crypter.Crypto.Providers.Browser/Crypter.Crypto.Providers.Browser.csproj index 01f4cb133..5b5dd9c5f 100644 --- a/Crypter.Crypto.Providers.Browser/Crypter.Crypto.Providers.Browser.csproj +++ b/Crypter.Crypto.Providers.Browser/Crypter.Crypto.Providers.Browser.csproj @@ -1,7 +1,7 @@  - net8.0 + net9.0 disable enable true @@ -17,7 +17,7 @@ - + diff --git a/Crypter.Crypto.Providers.Default/Crypter.Crypto.Providers.Default.csproj b/Crypter.Crypto.Providers.Default/Crypter.Crypto.Providers.Default.csproj index d1e3340f4..3c648699f 100644 --- a/Crypter.Crypto.Providers.Default/Crypter.Crypto.Providers.Default.csproj +++ b/Crypter.Crypto.Providers.Default/Crypter.Crypto.Providers.Default.csproj @@ -1,7 +1,7 @@ - net8.0 + net9.0 disable enable true @@ -9,7 +9,7 @@ - + diff --git a/Crypter.DataAccess/Crypter.DataAccess.csproj b/Crypter.DataAccess/Crypter.DataAccess.csproj index d1753e899..afb05bdd2 100644 --- a/Crypter.DataAccess/Crypter.DataAccess.csproj +++ b/Crypter.DataAccess/Crypter.DataAccess.csproj @@ -1,17 +1,15 @@ - net8.0 + net9.0 enable enable 12 - - - - + + diff --git a/Crypter.Test.Web/Crypter.Test.Web.csproj b/Crypter.Test.Web/Crypter.Test.Web.csproj index 86ceb3145..0467340e5 100644 --- a/Crypter.Test.Web/Crypter.Test.Web.csproj +++ b/Crypter.Test.Web/Crypter.Test.Web.csproj @@ -9,10 +9,10 @@ - - + + - + diff --git a/Crypter.Test/Crypter.Test.csproj b/Crypter.Test/Crypter.Test.csproj index d7fa90113..88591a181 100644 --- a/Crypter.Test/Crypter.Test.csproj +++ b/Crypter.Test/Crypter.Test.csproj @@ -1,7 +1,7 @@  - net8.0 + net9.0 true false 12 @@ -13,17 +13,17 @@ - - + + - + - + + - - + diff --git a/Crypter.Test/appsettings.Test.json b/Crypter.Test/appsettings.Test.json index 96b9111b2..65978ac8d 100644 --- a/Crypter.Test/appsettings.Test.json +++ b/Crypter.Test/appsettings.Test.json @@ -68,7 +68,7 @@ "Linux": "/home/runner/work/Crypter/crypter_files" }, "PostgresContainer": { - "Image": "postgres:15.2", + "Image": "postgres:15.10", "ContainerPort": 5432, "SuperPassword": "DEFAULT_PASSWORD", "CrypterDatabaseName": "crypter", diff --git a/Crypter.Web/Crypter.Web.csproj b/Crypter.Web/Crypter.Web.csproj index 6c448b3de..7ba41c3a5 100644 --- a/Crypter.Web/Crypter.Web.csproj +++ b/Crypter.Web/Crypter.Web.csproj @@ -27,9 +27,9 @@ - - - + + + diff --git a/Crypter.Web/Dockerfile b/Crypter.Web/Dockerfile index 6d307553a..4415a9b65 100644 --- a/Crypter.Web/Dockerfile +++ b/Crypter.Web/Dockerfile @@ -1,4 +1,4 @@ -FROM mcr.microsoft.com/dotnet/sdk:9.0-preview AS build +FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build WORKDIR /source/ SHELL ["/bin/bash", "-c"] @@ -27,7 +27,7 @@ COPY Crypter.Web/. ./Crypter.Web/ RUN dotnet workload install wasm-tools RUN dotnet publish Crypter.Web --no-restore --configuration release /p:TreatWarningsAsErrors=true /warnaserror --output /app/ -FROM caddy:2.8-alpine AS webhost +FROM caddy:2.9-alpine AS webhost COPY Crypter.Web/Caddyfile /etc/caddy/Caddyfile COPY --from=build /app/wwwroot/ /srv/ EXPOSE 80 diff --git a/Crypter.Web/Npm/src/browser.ts b/Crypter.Web/Npm/src/browser.ts index 9dbed568b..0cfc2dcb6 100644 --- a/Crypter.Web/Npm/src/browser.ts +++ b/Crypter.Web/Npm/src/browser.ts @@ -4,10 +4,10 @@ * Original license: GPLv3 * * Modified by: Jack Edwards - * Modified date: May 2024 + * Modified date: May 2024, December 2024 */ -import UAParser from 'ua-parser-js'; +import { UAParser } from 'ua-parser-js'; const uaParser = new UAParser(); const ua = uaParser.getResult(); diff --git a/Crypter.Web/package.json b/Crypter.Web/package.json index 64c0519fb..cad4e94a0 100644 --- a/Crypter.Web/package.json +++ b/Crypter.Web/package.json @@ -13,12 +13,12 @@ }, "devDependencies": { "path": "^0.12.7", - "vite": "^4.4.9" + "vite": "^6.0.5" }, "dependencies": { "@types/file-saver": "^2.0.7", "@types/ua-parser-js": "^0.7.39", "file-saver": "^2.0.5", - "ua-parser-js": "^1.0.37" + "ua-parser-js": "^2.0.0" } } \ No newline at end of file diff --git a/docker-compose.override.yml b/docker-compose.override.yml index 2794b63e4..c310f3a7c 100644 --- a/docker-compose.override.yml +++ b/docker-compose.override.yml @@ -7,7 +7,7 @@ services: profiles: - db - local - image: postgres:15.2 + image: postgres:15.10 expose: - "5432" ports: