Skip to content

Commit

Permalink
Merge pull request #185 from TheAxelander/pre-release
Browse files Browse the repository at this point in the history
Merge changes for version 1.7
  • Loading branch information
TheAxelander authored Oct 3, 2023
2 parents e7f1152 + 3ccfa9e commit 6cbba41
Show file tree
Hide file tree
Showing 239 changed files with 12,019 additions and 12,416 deletions.
14 changes: 13 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,16 @@
**/secrets.dev.yaml
**/values.dev.yaml
LICENSE
README.md
README.md
# directories
**/bin/
**/obj/
**/out/

# files
Dockerfile*
**/*.trx
**/*.md
**/*.ps1
**/*.cmd
**/*.sh
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
name: Bug report
about: Create a report for things that not work as expected
title: ''
labels: bug
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Additional helpful details**
- Used version [e.g. v1.6.3, pre-release]
- Database [e.g. MySql, PostgreSQL]
14 changes: 14 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: suggestion
assignees: ''

---

**Describe the solution you'd like**
A clear and concise description of what you would like to request or the idea that you have.

**Additional context**
Add any other context or screenshots about the feature request here.
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/support.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: Support
about: In case you need help or if you don't understand something
title: ''
labels: support
assignees: ''

---

**Describe the issue where you need some support**
A clear and concise description of the context where you need some help.
38 changes: 32 additions & 6 deletions .github/workflows/docker-image-master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,53 @@ on:
push:
branches: [ master ]

env:
DOTNET_VERSION: '7.0.103' # The .NET SDK version to use

jobs:
build:
test:
runs-on: ubuntu-latest
name: Run Test Cases
steps:
- name: Check out repo
uses: actions/checkout@v3

- name: Setup dotnet
uses: actions/setup-dotnet@v3
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Install Blazor dependencies
run: dotnet restore OpenBudgeteer.Blazor

- name: Build Blazor
run: dotnet build OpenBudgeteer.Blazor --configuration Release --no-restore

- name: Run Core Test Cases
run: dotnet test OpenBudgeteer.Core.Test
deploy-docker:
runs-on: ubuntu-latest
name: Build and Push Docker Image
needs: test
if: success()
steps:
- name: Check out repo
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Docker Login
uses: docker/login-action@v1.10.0
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Set up QEMU
uses: docker/setup-qemu-action@v1
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
uses: docker/setup-buildx-action@v2

- name: Build and push Docker image
uses: docker/build-push-action@v2
uses: docker/build-push-action@v4
with:
context: .
push: true
Expand Down
41 changes: 32 additions & 9 deletions .github/workflows/docker-image-pre-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,55 @@ on:
branches: [ pre-release ]

env:
DOTNET_VERSION: '6.0' # The .NET SDK version to use
DOTNET_VERSION: '7.0.103' # The .NET SDK version to use

jobs:
deploy:
test:
runs-on: ubuntu-latest
name: Run Test Cases
steps:
- name: Check out repo
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Setup dotnet
uses: actions/setup-dotnet@v3
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Install Blazor dependencies
run: dotnet restore OpenBudgeteer.Blazor

- name: Build Blazor
run: dotnet build OpenBudgeteer.Blazor --configuration Release --no-restore

- name: Run Core Test Cases
run: dotnet test OpenBudgeteer.Core.Test
deploy-docker:
runs-on: ubuntu-latest
name: Build and Push Docker Image
needs: test
if: success()
steps:
- name: Check out repo
uses: actions/checkout@v3

- name: Docker Login
uses: docker/login-action@v1.10.0
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Set up QEMU
uses: docker/setup-qemu-action@v1
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
uses: docker/setup-buildx-action@v2

- name: Build and push Docker image
uses: docker/build-push-action@v2
uses: docker/build-push-action@v4
with:
context: .
push: true
tags: axelander/openbudgeteer:pre-release
file: OpenBudgeteer.Blazor/Dockerfile
platforms: linux/arm64,linux/amd64
# file: OpenBudgeteer.Blazor/Dockerfile
platforms: linux/amd64
30 changes: 0 additions & 30 deletions .github/workflows/test-cases.yml

This file was deleted.

31 changes: 29 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,30 @@
### 1.7 (2023-10-03)

* [Add] PostgreSQL support [#81](https://github.com/TheAxelander/OpenBudgeteer/issues/81) Thanks [csillaggyujto](https://github.com/csillaggyujto)
* [Add] Confirmation Dialog before setting a Bucket inactive [#119](https://github.com/TheAxelander/OpenBudgeteer/issues/119)
* [Add] Some validations for creating and changing Rules
* [Breaking Change] Specific characters are no longer allowed for database names (SQL injection prevention)
* [Breaking Change] For database type `sqlite` the parameter `CONNECTION_DATABASE` can now include a full path (no longer defaulted in `/app/database`). Consider updating your volume mapping.
* [Changed] Migrated to .Net 7
* [Changed] Integer based IDs in database have been migrated to Guid
* [Changed] Overall refactoring of database backend including SQL injection protection. Thanks [csillaggyujto](https://github.com/csillaggyujto)
* [Changed] Blazor Docker Image based on Alpine [#143](https://github.com/TheAxelander/OpenBudgeteer/issues/143) Thanks [csillaggyujto](https://github.com/csillaggyujto)
* [Changed] Prevent any kind of interaction with Buckets marked as inactive [#111](https://github.com/TheAxelander/OpenBudgeteer/issues/111)
* [Changed] Bucket selection on Transaction and Rules Page now happens in a separate dialog which shows a similar overview like on Bucket page [#112](https://github.com/TheAxelander/OpenBudgeteer/issues/112)
* [Changed] Replaced custom solution to fix [#114](https://github.com/TheAxelander/OpenBudgeteer/issues/114) with new `bind:get` and `bind:set` feature from .Net 7
* [Changed] Improved performance for duplicate check on Import Page
* [Changed] Improved visibility of some reports on Report Page [#137](https://github.com/TheAxelander/OpenBudgeteer/issues/137)
* [Changed] Improved Bucket Type handling for Create/Edit Bucket [#184](https://github.com/TheAxelander/OpenBudgeteer/issues/184) [#160](https://github.com/TheAxelander/OpenBudgeteer/issues/160)
* [Fixed] Enable de-selection of Payee on Import Page [#148](https://github.com/TheAxelander/OpenBudgeteer/issues/148)
* [Fixed] Duplicate matching on Import Page [#151](https://github.com/TheAxelander/OpenBudgeteer/issues/151) Thanks [Lucaber](https://github.com/Lucaber)
* [Fixed] Negative progress for Buckets with type "Expenses every X months" [#158](https://github.com/TheAxelander/OpenBudgeteer/issues/158)
* [Fixed] Sqlite Database locked while using "Distribute Budget" [#171](https://github.com/TheAxelander/OpenBudgeteer/issues/171)
* [Fixed] Missing Unicode support for Import [#163](https://github.com/TheAxelander/OpenBudgeteer/issues/163)
* [Fixed] Error message closes Modal Dialog for Create/Edit Bucket [#170](https://github.com/TheAxelander/OpenBudgeteer/issues/170)
* [Fixed] Wrong selection after saving an Import Profile [#172](https://github.com/TheAxelander/OpenBudgeteer/issues/172)
* [Fixed] Allow selection of default system buckets in rules [#191](https://github.com/TheAxelander/OpenBudgeteer/pull/191) Thanks [Lucaber](https://github.com/Lucaber)
* [Fixed] Fix navbar in portrait mode [#190](https://github.com/TheAxelander/OpenBudgeteer/pull/190) Thanks [Lucaber](https://github.com/Lucaber)

### 1.6.3 (2023-01-27)

* [Add] Several Confirmation Dialogs for Import Profile handling [#124](https://github.com/TheAxelander/OpenBudgeteer/issues/124)
Expand All @@ -7,11 +34,11 @@
### 1.6.2 (2023-01-11)

* [Fixed] Due to implemented fix for [#114](https://github.com/TheAxelander/OpenBudgeteer/issues/114) Column mapping on Import Page was not working properly [#121](https://github.com/TheAxelander/OpenBudgeteer/issues/121) [#122](https://github.com/TheAxelander/OpenBudgeteer/issues/122)

### 1.6.1 (2022-12-31)

* [Changed] Slight visual changes for Mapping Rule modification
* [Fixed] Rendering of correct Drop-down selection element for Firefox browser [#114](https://github.com/TheAxelander/OpenBudgeteer/issues/114)
* [Fixed] Rendering of Drop-down selection element for Firefox browser [#114](https://github.com/TheAxelander/OpenBudgeteer/issues/114)

### 1.6 (2022-12-03)

Expand Down
23 changes: 23 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.

FROM mcr.microsoft.com/dotnet/aspnet:7.0-alpine AS base
WORKDIR /app
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
ENV DOTNET_RUNNING_IN_CONTAINER=true
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false
EXPOSE 80
EXPOSE 443
RUN apk add --no-cache icu-libs icu-data-full

FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
WORKDIR /src
COPY . .
RUN dotnet restore -r linux-musl-x64
WORKDIR "/src/OpenBudgeteer.Blazor"
RUN dotnet publish "OpenBudgeteer.Blazor.csproj" -r linux-musl-x64 --no-self-contained -c Release -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=build /app/publish .
ENTRYPOINT ["dotnet", "OpenBudgeteer.dll"]
42 changes: 32 additions & 10 deletions LICENSE-3RD-PARTY
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,14 @@
The MIT License (MIT)
applies to:
- BlazorFileReader, Copyright (c) 2018 Tor
- ChartJs.Blazor, Copyright (c) 2019 Marius Muntean
- ChartJs.Blazor, Copyright (c) 2019 Marius Muntean
- efcore, Copyright (c) .NET Foundation and Contributors
- Pomelo.EntityFrameworkCore.MySql, Copyright (c) 2017 Pomelo Foundation
- TinyCsvParser, Copyright (c) Philipp Wagner
- .NET Core, Copyright (c) .NET Foundation and Contributors
- Bootstrap, Copyright (c) 2011-2022 Twitter, Inc.
Copyright (c) 2011-2022 The Bootstrap Authors
- Bootstrap Icons, Copyright (c) 2019-2021 The Bootstrap Authors
- TinyCsvParser, Copyright (c) Philipp Wagner and Contributors
- .NET runtime, Copyright (c) .NET Foundation and Contributors
- Bootstrap, Copyright (c) 2011-2018 Twitter, Inc.
Copyright (c) 2011-2018 The Bootstrap Authors
- Bootstrap Icons, Copyright (c) 2019-2023 The Bootstrap Authors
-----------------------------------------------------------------------------

Permission is hereby granted, free of charge, to any person obtaining a copy
Expand All @@ -30,10 +31,9 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

-----------------------------------------------------------------------------
Apache License
Version 2.0, January 2004
Apache-2.0
applies to:
- Microsoft.EntityFrameworkCore, Copyright Microsoft Corporation
- xunit, Copyright (c) .NET Foundation and Contributors
-----------------------------------------------------------------------------

Licensed under the Apache License, Version 2.0 (the "License");
Expand All @@ -46,4 +46,26 @@ Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
limitations under the License.

-----------------------------------------------------------------------------
PostgreSQL License
applies to:
- efcore.pg, Copyright (c) 2002-2021, Npgsql
-----------------------------------------------------------------------------

Permission to use, copy, modify, and distribute this software and its
documentation for any purpose, without fee, and without a written agreement
is hereby granted, provided that the above copyright notice and this
paragraph and the following two paragraphs appear in all copies.

IN NO EVENT SHALL NPGSQL BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS,
ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
Npgsql HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

NPGSQL SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND Npgsql
HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
OR MODIFICATIONS.
23 changes: 0 additions & 23 deletions OpenBudgeteer.Blazor/Dockerfile

This file was deleted.

Loading

0 comments on commit 6cbba41

Please sign in to comment.