Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
197 commits
Select commit Hold shift + click to select a range
999ae3a
added javafx-graphics with mac classifier
Death111 Jan 13, 2023
91d24aa
Update pom.xml
Death111 Jan 13, 2023
75b81e9
skip tests
Death111 Jan 13, 2023
1d64a14
test java 17
Death111 Jan 13, 2023
3028b59
try with classifier mac-aarch64
Death111 Jan 13, 2023
58405c7
changed logic to not check if "linux" but check "not windows" to fix …
Death111 Jan 13, 2023
eb31bda
Merge pull request #160 from doubleSlashde/release/v1.3
Death111 Mar 7, 2023
f646331
removed manual .bat file download from readme
Death111 Mar 7, 2023
420eb18
Merge pull request #161 from doubleSlashde/feature/removeBatDownloadR…
Death111 Mar 7, 2023
c2a6bbe
Merge branch 'develop' into feature/macSupport
Death111 Apr 24, 2023
ca48f01
Update to 17 and SpringBoot 3
sesturm May 2, 2023
2320dca
added openjfx-monocle
sesturm May 2, 2023
a983ef2
added openjfx-monocle
sesturm May 2, 2023
ef4b07a
removed workaround
sesturm May 3, 2023
9163834
cleanup
sesturm May 4, 2023
8241426
#165: Include REST API
mairKi Jul 28, 2023
f567ddd
#165_REST-API: Include Swagger
mairKi Jul 31, 2023
d2416da
#165_Zwischen Commit auslagerung in module
mairKi Aug 4, 2023
f04c9df
#165: Swagger v3 not working
mairKi Aug 7, 2023
19ad014
Revert "#165: Swagger v3 not working"
mairKi Aug 7, 2023
128be9c
Revert "#165_Zwischen Commit auslagerung in module"
mairKi Aug 7, 2023
930e4f8
Revert "#165_REST-API: Include Swagger"
mairKi Aug 7, 2023
9439929
#165: include GetMappig
mairKi Aug 7, 2023
5964cae
#165: include post ang get Mapping
mairKi Aug 8, 2023
58107d5
#165: Include PutMapping and code Refactoring
mairKi Aug 9, 2023
871cb7a
#165: include updateWork and Refactoring
mairKi Aug 9, 2023
05b369c
#165: Refactoring
mairKi Aug 17, 2023
672bfad
#165: Include REST API Authentication
mairKi Sep 13, 2023
96b3a16
#165: include authentication Flyway
mairKi Sep 14, 2023
cd8adbc
#165: Add UserRepository
mairKi Sep 14, 2023
350b384
#165: Add AuthoritiesRepository
mairKi Sep 14, 2023
ba6e6e4
#165: Get all Works with api
mairKi Sep 14, 2023
9c33ee5
add new button to copy Project name change some variables names
Sep 18, 2023
5cceec3
change textfield behavior to only lose focus when clicked outside of …
Sep 19, 2023
019ae92
upgrade Spring Boot to 3.1.3
Sep 19, 2023
af2760d
Merge pull request #167 from doubleSlashde/feature/select_notfield_wh…
Death111 Sep 22, 2023
5621f1c
#165: Include authentikation with GUI
mairKi Sep 27, 2023
26d46d0
#165: ON and OFF but OFF not Correct
mairKi Sep 29, 2023
b2d0e51
#165: include API AuthTest
mairKi Sep 29, 2023
cbe6a9f
#165: API Auth
mairKi Sep 29, 2023
0d42f3c
#165: include Auth on Gui
mairKi Sep 29, 2023
6d57a4a
#165: Zwischen Speicher
mairKi Sep 29, 2023
07b1863
fix inconsistent naming
Oct 13, 2023
64bb287
checks imported h2 version is 1 oder newer
Oct 17, 2023
02fb53d
get name direktly from Project
DavidDamke Oct 24, 2023
c7e18ad
IPTE-165: Authentikation freigabe für Post, PUT, ...
mairKi Nov 2, 2023
76ccb87
IPTE-165: Include Deletmapping for Work ,Project and edit Work
mairKi Nov 3, 2023
7cf6fd8
switch clipboard svgs for better usability
Nov 3, 2023
1553be9
change svg name to match displayed svg
Nov 3, 2023
2278df0
Merge pull request #166 from doubleSlashde/feature/copy_project_name_…
Death111 Nov 6, 2023
fff79d1
IPTE-156: Get Curret Project ID and Delete Mapping with default query
mairKi Nov 8, 2023
cc804ea
add log statement when option is used
Nov 10, 2023
ed4b4ca
IPTE-165: Include Change API Port
mairKi Nov 13, 2023
0bfa224
IPTE-165: in clude Rest API Port, Current
mairKi Nov 16, 2023
2b06ec8
IPTE-156: ON OFF
mairKi Nov 19, 2023
584f2df
IPTE-165: Code Refactoring
mairKi Nov 20, 2023
2e83a1d
IPTE-165: include DTO
mairKi Nov 22, 2023
bed209c
IPTE-165: Include ColorDTO
mairKi Nov 23, 2023
6a99f80
IPTE-165: Refactoring Transfer to own packages
mairKi Nov 23, 2023
8562439
IPTE-165: Clean Code
mairKi Nov 23, 2023
36b93e7
IPTE-165: Refactoring WorksController
mairKi Nov 23, 2023
bb4ba0b
IPTE-165: Refactoring ProjectController and Transfer ProjectColorDTO …
mairKi Nov 24, 2023
49a3db6
IPTE-165: Remove Button in GUI
mairKi Nov 24, 2023
3fcb8aa
IPTE-165: Port Default OFF
mairKi Nov 24, 2023
bea1723
IPTE-165: Code Refactoring
mairKi Nov 27, 2023
49428b1
IPTE-165: Code Refactoring
mairKi Nov 27, 2023
f94c978
IPTE-165: Pull Request
mairKi Dec 6, 2023
4480dc8
IPTE-165: Test Refactoring
mairKi Dec 6, 2023
49630a3
IPTE-165: ON-OFF API Status
mairKi Dec 7, 2023
2555d54
Revert "IPTE-165: ON-OFF API Status"
mairKi Dec 7, 2023
1dcf40d
IPTE-165: Code Refactoring ON OFF Username
mairKi Dec 14, 2023
e875ab4
IPTE-165: Code Refatoring include getUser
mairKi Dec 11, 2023
007a337
IPTE-165: Clean pom.xml
mairKi Dec 11, 2023
fb2535f
IPTE-165: Clean Code
mairKi Dec 14, 2023
8a51e63
Merge branch 'feature/update_dependencies' into feature/#165_Rest-API…
mairKi Feb 5, 2024
e0ac484
#165Rest-API-New: Fix User Bug
mairKi Feb 5, 2024
0c80e5c
#165Rest-API-New: Include license header
mairKi Feb 5, 2024
ed66096
#165Rest-API-New: Clean Code
mairKi Feb 5, 2024
0e340ac
#165_Rest-API-New: Merge Request
mairKi Feb 5, 2024
4afbc5e
IPTE-165: Clean Code
mairKi Feb 15, 2024
4fa51be
#165: Zwischen Kommit mit funktionality Login
mairKi Apr 2, 2024
07df243
#165: Clean Code
mairKi Apr 3, 2024
1c600bd
update to latest spring patch release
Death111 Apr 7, 2024
f3bd78e
Merge pull request #168 from doubleSlashde/feature/update_dependencies
Death111 Apr 7, 2024
ab2f4f0
update to javafx 22
Death111 Apr 7, 2024
39cd801
update git-commit plugin coordinates
Death111 Apr 7, 2024
7e113b0
start auto save separately to fix unit test
Death111 Apr 7, 2024
3c19ba2
update dependencies and move finalname to build
Death111 Apr 7, 2024
9fb21c4
update github actions to latest version
Death111 Apr 7, 2024
8a6a6e4
#165: Code Refactoring
mairKi Apr 8, 2024
d2c9b19
Include a new Class LoginController and LoginControllerTest
mairKi Apr 10, 2024
284b278
#165: Code Refactoring
mairKi Apr 11, 2024
6f752e0
#165 Pull Request
mairKi Jun 11, 2024
484bc3b
#165: Pull Request
mairKi Jul 2, 2024
498047f
Merge branch 'develop' into feature/#165_Rest-API-New
mairKi Jul 2, 2024
75b2bf9
Merge branch 'master' into feature/#165_Rest-API-New
mairKi Jul 2, 2024
a40c11f
adapted logging statements to be more accurate. reverted pom version …
Death111 Jan 8, 2025
2209928
Implement support for opening URLs on macOS in BrowserHelper; add isM…
sesturm Jan 8, 2025
109af13
Remove TODO comment for macOS support in FileOpenHelper
sesturm Jan 8, 2025
5cee4bb
Refactor OS class to optimize OS name retrieval
sesturm Jan 8, 2025
a783b27
Upgrade Spring Boot and Maven Dependency Check versions in pom.xml
sesturm Jan 8, 2025
e87b12d
undo version change
sesturm Jan 9, 2025
eab713c
Merge pull request #138 from doubleSlashde/feature/macSupport
Death111 Jan 9, 2025
820e5f6
Merge branch 'develop' into feature/#165_Rest-API-New
Death111 Jan 9, 2025
310bffc
#165: fix test. use string to transfer color instead of double rgba v…
Death111 Jan 9, 2025
884c060
#165: add openapi + swagger ui
Death111 Jan 9, 2025
20b8444
#165: switched some if statements to be easier redable. started to ma…
Death111 Jan 9, 2025
f8c9dac
#165: fix issue where all application.properties were persisted in se…
Death111 Jan 9, 2025
0a67fb3
#165: wrapping writting calls from api in a wrapper. adapted rest calls
Death111 Jan 19, 2025
1fd80c2
#165: migrate SecurityConfiguration
Death111 Jan 19, 2025
d747c50
#165: format code
Death111 Jan 19, 2025
e62878b
#178: update spring dependency
Death111 Jan 25, 2025
e18e3bb
#178: start of api client
Death111 Jan 25, 2025
0abf2de
#178: transform settings table to key-value table for easier extesion…
Death111 Jan 25, 2025
c8ec6ff
#178: add heimat settings in settings layout. add heimat settings to …
Death111 Jan 25, 2025
71cf0ea
#178: fix/restore settings handling
Death111 Jan 26, 2025
ce597b4
#178: remove VARCHAR limit - check how it looks in db
Death111 Jan 26, 2025
03610d9
#178: allow to map projects in settings view
Death111 Jan 26, 2025
f8bef51
#178: start sync to heimat dialog
Death111 Jan 28, 2025
71e5ffb
#178: show times from heimat in sync view for conflict resolution. ad…
Death111 Jan 29, 2025
9152072
#178: show color of project
Death111 Jan 29, 2025
eee8ff7
#165: using close instead of stop to properly close application with …
Death111 Jan 30, 2025
e73b6dc
#178: add initial sync functionality
Death111 Jan 30, 2025
9185624
#178: add red border if not a valid time or note
Death111 Feb 16, 2025
f0bd7af
Merge branch 'feature/#165_Rest-API-New' into feature/#178_heimatInte…
Death111 Feb 24, 2025
9283c66
#178: refactor logic and add tests for conversion for UI. improve ui.
Death111 Mar 2, 2025
84fb254
#178: close map projects dialog on button. allow project creation in …
Death111 Mar 6, 2025
276632d
#178: show sync loading screen success/failure message
Death111 Mar 6, 2025
336a2f8
#178: show error dialog if something goes wrong when opening stages
Death111 Mar 7, 2025
bf62fa9
#178: implement shouldShowHeimatTimeWhenProjectIsNotMappedInKeeptime
Death111 Mar 7, 2025
3461ce2
#178: show current heimat + keeptime times. add copy button. add hype…
Death111 Mar 7, 2025
96ecef5
#178: show project of heimat for not mapped keeptime project
Death111 Mar 8, 2025
4c3817e
#178: improve layouts
Death111 Mar 8, 2025
ec823f7
#165: added filter options for get work
Death111 Mar 8, 2025
19d794e
Merge branch 'feature/#165_Rest-API-New' into feature/#178_heimatInte…
Death111 Mar 8, 2025
f3f10e6
#178: move keeptime work time to bottom
Death111 Mar 8, 2025
87778f7
#178: rename projectName to taskHolderName. show warnings to the user.
Death111 Mar 9, 2025
36b5443
#178: only save changed mappings
Death111 Mar 9, 2025
3920b06
#178: add icons for restapi+heimat. move heimat tab up
Death111 Mar 9, 2025
010976d
#178: cleanup static code analysis
Death111 Mar 9, 2025
c96c09b
#178: in 'new heimat time' consider "shouldBeSynced" status
Death111 Mar 10, 2025
37c6fa0
#178: update dependencies
Death111 Mar 10, 2025
6005b6a
#178: adapt param name
Death111 Mar 10, 2025
ab010d0
#178: update migration steps
Death111 Mar 10, 2025
27235ed
#178: adapt report background color to white
Death111 Mar 10, 2025
7319ecd
#178: handle edge case where project was mapped but no work exist for…
Death111 Mar 10, 2025
e10f1b6
try fix dependency check
Death111 Mar 10, 2025
3c44d96
remove java
Death111 Mar 10, 2025
8823dd0
v4
Death111 Mar 10, 2025
28cad6a
test
Death111 Mar 10, 2025
61eafbc
always
Death111 Mar 10, 2025
42e7eba
reenable normal checks
Death111 Mar 10, 2025
dbed3d6
Merge pull request #180 from doubleSlashde/bugfix/fix_dependency_check
Death111 Mar 10, 2025
6724b38
Merge branch 'develop' into feature/#178_heimatIntegration
Death111 Mar 10, 2025
58c27d5
#178: sort by projectName + taskName
Death111 Mar 11, 2025
bb121b3
#178: refresh heimatapi connection (to use latest credentials) when v…
Death111 Mar 11, 2025
0bd2583
Merge branch 'feature/#178_heimatIntegration' of https://github.com/d…
Death111 Mar 11, 2025
44366e2
#178: show project name which had sync errors (if present). shorter d…
Death111 Mar 11, 2025
01557cf
#178: remove mappings of deleted keeptime projects. add tests. move u…
Death111 Mar 11, 2025
5e2e79a
#178: make heimat controller handle all 'database' object logic.
Death111 Mar 11, 2025
2a496db
#178: use random color when importing projects
Death111 Mar 11, 2025
bf4478b
#178: fix tests
Death111 Mar 11, 2025
b741010
#178: fix heimat button not visible in report without restart
Death111 Mar 12, 2025
c5e3863
#178: add "random" button in project dialog
Death111 Mar 12, 2025
0e6a284
#178: disable save button when invalid projects exist
Death111 Mar 15, 2025
c2034f0
#178: add tests for save times
Death111 Mar 15, 2025
6711ac8
#178: add dialog to import multiple projects at once. change project …
Death111 Mar 16, 2025
dcd2e94
#178: save metadata as json
Death111 Mar 16, 2025
8062049
#178: add icon to sync button in report
Death111 Mar 16, 2025
692983d
#178: make validation logic consistent
Death111 Mar 16, 2025
85eb0ba
#178: add option to add unmapped tasks to sync
Death111 Mar 17, 2025
887fa97
#178: use styling for buttons
Death111 Mar 17, 2025
c001e94
#178: add hint to rest api port
Death111 Mar 17, 2025
4332f61
#178: adapt more styles
Death111 Mar 18, 2025
f90b9e2
#178: set icon color. change button text for sync
Death111 Mar 18, 2025
9078865
#178: use tableview instead of listview for import dialog. to show ma…
Death111 Mar 18, 2025
ed5eb29
#178: add combobox-styling
Death111 Mar 19, 2025
66aaf9c
#178: uncheck sync when already present. fix issue that present heima…
Death111 Mar 21, 2025
ddf735a
#178: improve syncing dialog while syncing. show link to heimat to co…
Death111 Mar 21, 2025
1d788ba
#178: style tableView. tertiary-buttons
Death111 Mar 21, 2025
632b926
#178: fix treetableview selected style
Death111 Mar 22, 2025
1ef4b19
Merge pull request #173 from doubleSlashde/feature/#165_Rest-API-New
Death111 Mar 22, 2025
58366d7
#178: layouts. add invalid mappings again to list
Death111 Mar 22, 2025
a0b1c79
#178: add license header to new files
Death111 Mar 22, 2025
772e63f
#178: rename controller to be consistent
Death111 Mar 22, 2025
7c5cb40
#178: update spring patch version
Death111 Mar 22, 2025
8def475
#178: report fix selected arrow disappear
Death111 Mar 24, 2025
d986d51
#178: fix spelling
Death111 Mar 25, 2025
1b6761c
#178: add quick fix for #170
Death111 Mar 25, 2025
04b6fed
#178: fix issue where stoping loading spinner rotation did not reset …
Death111 Mar 25, 2025
849fbbf
#178: check for time diff >= 15minutes instead of > to also sync when…
Death111 Mar 26, 2025
58aefe3
#178: rename variables
Death111 Mar 26, 2025
f675c1a
#178: fix bug where manually added row was creating inconsistent vali…
Death111 Mar 27, 2025
3c9ff46
#178: center sync checkbox horiztonal
Death111 Mar 27, 2025
2a07293
#178: add hint for unexpected exception to be reported to a developer
Death111 Mar 27, 2025
e755888
#178: adding "Sync to" prefix now consistently. scrolling to newly ad…
Death111 Mar 30, 2025
8d0cd21
Merge pull request #179 from doubleSlashde/feature/#178_heimatIntegra…
Death111 Mar 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 41 additions & 30 deletions .github/workflows/mavenCi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,32 +15,31 @@ on:
jobs:

build-analyze:

runs-on: ubuntu-latest

env:
version: 1.3.${{ github.run_number }}
version: 2.0.${{ github.run_number }}

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Set up JDK 11
uses: actions/setup-java@v3
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '11'
java-version: '17'
distribution: 'corretto'
cache: maven

- name: Initialize CodeQL
uses: github/codeql-action/init@v2
uses: github/codeql-action/init@v3
with:
languages: 'java'

- name: Build
run: mvn -V -B clean package org.jacoco:jacoco-maven-plugin:0.8.7:prepare-agent org.jacoco:jacoco-maven-plugin:0.8.7:report -Pcoverage -Dproject.version=${{ env.version }}-SNAPSHOT

- name: Upload Build Artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: KeepTime-${{ env.version }}
path: /home/runner/work/KeepTime/KeepTime/target/*-bin.zip
Expand All @@ -49,29 +48,41 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: mvn -V -B sonar:sonar
-Dsonar.host.url=${{ secrets.HOST_URL }}
-Dsonar.organization=${{ secrets.ORGANIZATION_NAME }}
-Dsonar.projectKey=${{ secrets.PROJECT_KEY }}
-Dsonar.java.binaries=.
-Dsonar.qualitygate.wait=false
run: mvn -V -B sonar:sonar -Dsonar.host.url=${{ secrets.HOST_URL }} -Dsonar.organization=${{ secrets.ORGANIZATION_NAME }} -Dsonar.projectKey=${{ secrets.PROJECT_KEY }} -Dsonar.java.binaries=. -Dsonar.qualitygate.wait=false

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@v3

dependency-check:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: '11'
distribution: 'corretto'
cache: maven

- name: dependencyCheck
run: mvn dependency-check:check
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'corretto'
cache: maven
- name: Build
run: mvn -V -B clean package
- name: Depcheck
uses: dependency-check/Dependency-Check_Action@main
id: Depcheck
env:
# actions/setup-java@v1 changes JAVA_HOME so it needs to be reset to match the depcheck image
JAVA_HOME: /opt/jdk
with:
project: 'KeepTime'
path: '.'
format: 'HTML'
out: 'reports' # this is the default, no need to specify unless you wish to override it
args: >
--failOnCVSS 8.9
--enableRetired
- name: Upload Test results
if: always()
uses: actions/upload-artifact@v4
with:
name: Depcheck report
path: ${{github.workspace}}/reports
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,4 @@ logs/

config.xml
/db/
application.properties
40 changes: 24 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Create projects and choose if they are counted as 'work time'. Select the projec

## Install

* Download keeptime.bat and keeptime-<version>-bin.zip (see [releases](https://github.com/doubleSlashde/KeepTime/releases))
* Download keeptime-\<version\>.zip (see [releases](https://github.com/doubleSlashde/KeepTime/releases))
* Extract the downloaded .zip
* Try starting the application by executing the *keeptime.bat* file. The start may take up to one minute.

Expand All @@ -45,26 +45,34 @@ It is recommended to run the application at computer start, so you do not forget

You should put the .jar in an extra folder as a *logs* and a *db* folder will be created next to it.\

### Migrate from older version than v1.2.0
## Update KeepTime
1. Start your current version of KeepTime
1. Open `Settings` -> `Import/Export` -> `Export` to export your data to an .sql file (Backup data)
1. Stop KeepTime
1. Download new version of KeepTime and extract it
1. Start new version of KeepTime
1. If your projects are available you are already done. But most likely your projects are missing. In this case follow the [Migrate](#Migrate) chapter
- Missing data is expected behavior with most updates as updates often include database version update which require an import of data

### Migrate data
1. Notice that your old data is not available after an update
1. Open the new version of KeepTime
1. Open `Settings` -> `Import/Export` -> `Import` and import the previously exported .sql file
1. After the import KeepTime closes automatically
1. Start KeepTime
1. Your data is restored in the new version now

### Migrate from version older than v1.2.0

1. Download new version and replace the .jar file.
2. Start new version of KeepTime. Notice that your old data is not available.
3. Stop KeepTime
4. Copy the files (not directories) of directory `db` (next to the .jar file) into `db/1.4.197/` (path now includes the database version).
5. Start KeepTime again. Notice that your data is available again.

### Migrate from KeepTime v1.2.0

1. Start your current version of KeepTime (v1.2.0)
2. Go to the settings and export your KeepTime data
3. Download new version and replace the .jar file.
4. Start new version of KeepTime. Notice that your old data is not available.
5. Open the new version and import the exported sql script
6. After the import KeepTime closes automatically
7. To see the changes just start the new KeepTime again

## Requirements

* Windows 7, 10
* Linux (tested on Ubuntu 18.04)
* Java 11
* Operating System
* Windows 7, 10, 11
* Linux (tested on Ubuntu 18.04)
* Mac (tested on MacBook M2 Pro (ARM based CPU))
* Java >= 17
Loading
Loading