diff --git a/CHANGELOG.md b/CHANGELOG.md index 98b3a24c19e..59545f15c4e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -34,10 +34,14 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve - We improved group expansion arrow that prevent it from activating group when expanding or collapsing. [#7982](https://github.com/JabRef/jabref/issues/7982), [#3176](https://github.com/JabRef/jabref/issues/3176) - When configured SSL certificates changed, JabRef warns the user to restart to apply the configuration. - We improved the appearances and logic of the "Manage field names & content" dialog, and renamed it to "Automatic field editor". [#6536](https://github.com/JabRef/jabref/issues/6536) -- We fixed an issue that caused JabRef to sometimes open multiple instances when "Remote Operation" is enabled. [#8653](https://github.com/JabRef/jabref/issues/8653) +- We improved the message explaining the options when modifying an automatic keyword group [#8911](https://github.com/JabRef/jabref/issues/8911) +- We moved the preferences option "Warn about duplicates on import" option from the tab "File" to the tab "Import and Export". [koppor#570](https://github.com/koppor/jabref/issues/570) +- When JabRef encounters `% Encoding: UTF-8` header, it is kept during writing (and not removed). [#8964](https://github.com/JabRef/jabref/pull/8964) +- We replace characters which cannot be decoded using the specified encoding by a (probably another) valid character. This happens if JabRef detects the wrong charset (e.g., UTF-8 instead of Windows 1252). One can use the [Integrity Check](https://docs.jabref.org/finding-sorting-and-cleaning-entries/checkintegrity) to find those characters. ### Fixed +- We fixed an issue that caused JabRef to sometimes open multiple instances when "Remote Operation" is enabled. [#8653](https://github.com/JabRef/jabref/issues/8653) - We fixed an issue where linked files with the filetype "application/pdf" in an entry were not shown with the correct PDF-Icon in the main table [8930](https://github.com/JabRef/jabref/issues/8930) - We fixed an issue where "open folder" for linked files did not open the folder and did not select the file unter certain Linux desktop environments [#8679](https://github.com/JabRef/jabref/issues/8679), [#8849](https://github.com/JabRef/jabref/issues/8849) - We fixed an issue where the content of a big shared database library is not shown [#8788](https://github.com/JabRef/jabref/issues/8788) @@ -50,6 +54,10 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve - We fixed an issue where the exception that there are invalid characters in filename. [#8786](https://github.com/JabRef/jabref/issues/8786) - When the proxy configuration removed the proxy user/password, this change is applied immediately. - We fixed an issue where removing several groups deletes only one of them. [#8390](https://github.com/JabRef/jabref/issues/8390) +- We fixed an issue where the Sidepane (groups, web search and open office) width is not remembered after restarting JabRef. [#8907](https://github.com/JabRef/jabref/issues/8907) +- We fixed a bug where switching between themes will cause an error/exception. [#8939](https://github.com/JabRef/jabref/pull/8939) +- We fixed a bug where files that were deleted in the source bibtex file were kept in the index. [#8962](https://github.com/JabRef/jabref/pull/8962) +- We fixed "Error while sending to JabRef" when the browser extension interacts with JabRef. [JabRef-Browser-Extension#479](https://github.com/JabRef/JabRef-Browser-Extension/issues/479) ### Removed diff --git a/build.gradle b/build.gradle index 8e56620aca1..e088688f87a 100644 --- a/build.gradle +++ b/build.gradle @@ -100,7 +100,7 @@ dependencyLocking { } javafx { - version = "18" + version = "18.0.1" modules = [ 'javafx.controls', 'javafx.fxml', 'javafx.web', 'javafx.swing' ] } @@ -127,7 +127,6 @@ dependencies { implementation 'com.h2database:h2-mvstore:2.1.214' implementation group: 'org.apache.tika', name: 'tika-core', version: '2.4.1' - implementation 'com.ibm.icu:icu4j-charset:71.1' // required for reading write-protected PDFs - see https://github.com/JabRef/jabref/pull/942#issuecomment-209252635 implementation 'org.bouncycastle:bcprov-jdk18on:1.71' @@ -151,7 +150,7 @@ dependencies { implementation group: 'com.fasterxml.jackson.dataformat', name: 'jackson-dataformat-yaml', version: '2.13.3' implementation group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jsr310', version: '2.13.3' - implementation group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.7.5' + implementation group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.7.6' implementation 'org.postgresql:postgresql:42.4.0' @@ -208,7 +207,7 @@ dependencies { implementation group: 'net.harawata', name: 'appdirs', version: '1.2.1' - testImplementation 'io.github.classgraph:classgraph:4.8.147' + testImplementation 'io.github.classgraph:classgraph:4.8.149' testImplementation 'org.junit.jupiter:junit-jupiter:5.8.2' testImplementation 'org.junit.platform:junit-platform-launcher:1.8.2' @@ -221,7 +220,7 @@ dependencies { testImplementation "org.testfx:testfx-junit5:4.0.16-alpha" testImplementation "org.hamcrest:hamcrest-library:2.2" - checkstyle 'com.puppycrawl.tools:checkstyle:10.1' + checkstyle 'com.puppycrawl.tools:checkstyle:10.3.1' // xjc needs the runtime as well for the ant task, otherwise it fails xjc group: 'org.glassfish.jaxb', name: 'jaxb-xjc', version: '3.0.2' xjc group: 'org.glassfish.jaxb', name: 'jaxb-runtime', version: '3.0.2' diff --git a/buildres/csl/csl-locales/.github/workflows/merge.yaml b/buildres/csl/csl-locales/.github/workflows/merge.yaml index 4c9a02df776..7e5736cc960 100644 --- a/buildres/csl/csl-locales/.github/workflows/merge.yaml +++ b/buildres/csl/csl-locales/.github/workflows/merge.yaml @@ -19,9 +19,9 @@ jobs: GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" DISTRIBUTION_UPDATER_TOKEN: "${{ secrets.DISTRIBUTION_UPDATER_TOKEN }}" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 if: github.event_name == 'push' - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 if: github.event_name == 'workflow_dispatch' with: fetch-depth: 0 @@ -30,7 +30,7 @@ jobs: id: release run: echo ::set-output name=branch::v1.0.2 - name: Checkout release branch - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: ref: ${{ steps.release.outputs.branch }} path: './release' @@ -48,6 +48,10 @@ jobs: - deleted: [ '*.csl', 'dependent/*.csl', '*.xml' ] workflows: - added|modified: .github/workflows/*.yaml + updated_composer: + - added|modified: composer.json + deleted_composer: + - deleted: composer.json - name: Changed files if: github.event_name == 'push' @@ -63,7 +67,7 @@ jobs: ruby-version: 3.0.2 - name: but use cache to speed that up if: github.event_name == 'workflow_dispatch' || (github.event_name == 'push' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true')) - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: vendor/bundle key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }} @@ -87,11 +91,24 @@ jobs: run: cd release && git rm ${{ steps.update.outputs.deleted_files }} if: github.event_name == 'push' && steps.update.outputs.deleted == 'true' + - name: Update composer.json + if: steps.update.outputs.updated_composer == 'true' + run: | + cp composer.json release/composer.json + cd release + git add composer.json + + - name: Delete composer.json + if: steps.update.outputs.deleted_composer == 'true' + run: | + cd release + git rm composer.json + - uses: stefanzweifel/git-auto-commit-action@v4 with: repository: 'release' - commit_message: Releasing ${{ steps.update.outputs.updated_files }} ${{ steps.update.outputs.deleted_files }} - if: github.event_name == 'push' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true') + commit_message: Releasing ${{ steps.update.outputs.updated_files }} ${{ steps.update.outputs.deleted_files }} ${{ steps.update.outputs.updated_composer_files }} ${{ steps.update.outputs.deleted_composer_files }} + if: github.event_name == 'push' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true' || steps.update.outputs.updated_composer == 'true' || steps.update.outputs.deleted_composer == 'true') - uses: stefanzweifel/git-auto-commit-action@v4 with: @@ -116,3 +133,21 @@ jobs: git-user: "csl-bot" git-user-email: github@citationstyles.org git-commit-message: copied ${{ steps.update.outputs.workflows_files }} from styles + + - name: Bump version and push tag + id: tag_version + uses: mathieudutour/github-tag-action@v5.6 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + default_bump: patch + if: github.event_name == 'push' && hashFiles('composer.json') != '' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true') + + - name: Create a GitHub release + uses: softprops/action-gh-release@v0.1.14 + env: + github_token: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ steps.tag_version.outputs.new_tag }} + name: Release ${{ steps.tag_version.outputs.new_tag }} + body: Released ${{ steps.update.outputs.updated_files }} ${{ steps.update.outputs.deleted_files }} ${{ steps.update.outputs.updated_composer_files }} ${{ steps.update.outputs.deleted_composer_files }} + if: github.event_name == 'push' && hashFiles('composer.json') != '' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true') diff --git a/buildres/csl/csl-locales/.github/workflows/sheldon.yaml b/buildres/csl/csl-locales/.github/workflows/sheldon.yaml index eef83fd496c..9bf525949f1 100644 --- a/buildres/csl/csl-locales/.github/workflows/sheldon.yaml +++ b/buildres/csl/csl-locales/.github/workflows/sheldon.yaml @@ -15,17 +15,17 @@ jobs: # labels to a PR # https://securitylab.github.com/research/github-actions-preventing-pwn-requests - name: Checkout repo for OWNER TEST - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: contains(github.event.pull_request.labels.*.name, 'safe to test') with: ref: ${{ github.event.pull_request.head.ref }} # otherwise, checkout the current master, and the pr to the subdirectory 'pull-request' - name: Checkout base repo for pull-request test - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: "! contains(github.event.pull_request.labels.*.name, 'safe to test')" - name: Checkout pull-request - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: "! contains(github.event.pull_request.labels.*.name, 'safe to test')" with: repository: ${{ github.event.pull_request.head.repo.full_name }} @@ -54,7 +54,7 @@ jobs: with: ruby-version: 3.0.2 - name: but use cache to speed that up - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: vendor/bundle key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }} diff --git a/buildres/csl/csl-locales/Gemfile.lock b/buildres/csl/csl-locales/Gemfile.lock index 3dfefe1a56a..a15585eddab 100644 --- a/buildres/csl/csl-locales/Gemfile.lock +++ b/buildres/csl/csl-locales/Gemfile.lock @@ -33,7 +33,7 @@ GEM csl-styles (2.0.0) csl (~> 2.0) diff-lcs (1.5.0) - diffy (3.4.0) + diffy (3.4.2) dotenv (2.7.6) erubis (2.7.0) faraday (1.8.0) diff --git a/buildres/csl/csl-styles/.github/dependabot.yml b/buildres/csl/csl-styles/.github/dependabot.yml new file mode 100644 index 00000000000..5ace4600a1f --- /dev/null +++ b/buildres/csl/csl-styles/.github/dependabot.yml @@ -0,0 +1,6 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" diff --git a/buildres/csl/csl-styles/.github/workflows/merge.yaml b/buildres/csl/csl-styles/.github/workflows/merge.yaml index 4c9a02df776..7e5736cc960 100644 --- a/buildres/csl/csl-styles/.github/workflows/merge.yaml +++ b/buildres/csl/csl-styles/.github/workflows/merge.yaml @@ -19,9 +19,9 @@ jobs: GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" DISTRIBUTION_UPDATER_TOKEN: "${{ secrets.DISTRIBUTION_UPDATER_TOKEN }}" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 if: github.event_name == 'push' - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 if: github.event_name == 'workflow_dispatch' with: fetch-depth: 0 @@ -30,7 +30,7 @@ jobs: id: release run: echo ::set-output name=branch::v1.0.2 - name: Checkout release branch - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: ref: ${{ steps.release.outputs.branch }} path: './release' @@ -48,6 +48,10 @@ jobs: - deleted: [ '*.csl', 'dependent/*.csl', '*.xml' ] workflows: - added|modified: .github/workflows/*.yaml + updated_composer: + - added|modified: composer.json + deleted_composer: + - deleted: composer.json - name: Changed files if: github.event_name == 'push' @@ -63,7 +67,7 @@ jobs: ruby-version: 3.0.2 - name: but use cache to speed that up if: github.event_name == 'workflow_dispatch' || (github.event_name == 'push' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true')) - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: vendor/bundle key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }} @@ -87,11 +91,24 @@ jobs: run: cd release && git rm ${{ steps.update.outputs.deleted_files }} if: github.event_name == 'push' && steps.update.outputs.deleted == 'true' + - name: Update composer.json + if: steps.update.outputs.updated_composer == 'true' + run: | + cp composer.json release/composer.json + cd release + git add composer.json + + - name: Delete composer.json + if: steps.update.outputs.deleted_composer == 'true' + run: | + cd release + git rm composer.json + - uses: stefanzweifel/git-auto-commit-action@v4 with: repository: 'release' - commit_message: Releasing ${{ steps.update.outputs.updated_files }} ${{ steps.update.outputs.deleted_files }} - if: github.event_name == 'push' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true') + commit_message: Releasing ${{ steps.update.outputs.updated_files }} ${{ steps.update.outputs.deleted_files }} ${{ steps.update.outputs.updated_composer_files }} ${{ steps.update.outputs.deleted_composer_files }} + if: github.event_name == 'push' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true' || steps.update.outputs.updated_composer == 'true' || steps.update.outputs.deleted_composer == 'true') - uses: stefanzweifel/git-auto-commit-action@v4 with: @@ -116,3 +133,21 @@ jobs: git-user: "csl-bot" git-user-email: github@citationstyles.org git-commit-message: copied ${{ steps.update.outputs.workflows_files }} from styles + + - name: Bump version and push tag + id: tag_version + uses: mathieudutour/github-tag-action@v5.6 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + default_bump: patch + if: github.event_name == 'push' && hashFiles('composer.json') != '' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true') + + - name: Create a GitHub release + uses: softprops/action-gh-release@v0.1.14 + env: + github_token: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ steps.tag_version.outputs.new_tag }} + name: Release ${{ steps.tag_version.outputs.new_tag }} + body: Released ${{ steps.update.outputs.updated_files }} ${{ steps.update.outputs.deleted_files }} ${{ steps.update.outputs.updated_composer_files }} ${{ steps.update.outputs.deleted_composer_files }} + if: github.event_name == 'push' && hashFiles('composer.json') != '' && (steps.update.outputs.updated == 'true' || steps.update.outputs.deleted == 'true') diff --git a/buildres/csl/csl-styles/.github/workflows/sheldon.yaml b/buildres/csl/csl-styles/.github/workflows/sheldon.yaml index eef83fd496c..9bf525949f1 100644 --- a/buildres/csl/csl-styles/.github/workflows/sheldon.yaml +++ b/buildres/csl/csl-styles/.github/workflows/sheldon.yaml @@ -15,17 +15,17 @@ jobs: # labels to a PR # https://securitylab.github.com/research/github-actions-preventing-pwn-requests - name: Checkout repo for OWNER TEST - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: contains(github.event.pull_request.labels.*.name, 'safe to test') with: ref: ${{ github.event.pull_request.head.ref }} # otherwise, checkout the current master, and the pr to the subdirectory 'pull-request' - name: Checkout base repo for pull-request test - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: "! contains(github.event.pull_request.labels.*.name, 'safe to test')" - name: Checkout pull-request - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: "! contains(github.event.pull_request.labels.*.name, 'safe to test')" with: repository: ${{ github.event.pull_request.head.repo.full_name }} @@ -54,7 +54,7 @@ jobs: with: ruby-version: 3.0.2 - name: but use cache to speed that up - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: vendor/bundle key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }} diff --git a/buildres/csl/csl-styles/Gemfile.lock b/buildres/csl/csl-styles/Gemfile.lock index e7c7f102fa9..dde35577b7f 100644 --- a/buildres/csl/csl-styles/Gemfile.lock +++ b/buildres/csl/csl-styles/Gemfile.lock @@ -33,7 +33,7 @@ GEM csl-styles (2.0.0) csl (~> 2.0) diff-lcs (1.5.0) - diffy (3.4.0) + diffy (3.4.2) dotenv (2.7.6) erubis (2.7.0) faraday (1.8.0) diff --git a/buildres/csl/csl-styles/advanced-materials.csl b/buildres/csl/csl-styles/advanced-materials.csl index 621c6d9d34b..8ade35d119e 100644 --- a/buildres/csl/csl-styles/advanced-materials.csl +++ b/buildres/csl/csl-styles/advanced-materials.csl @@ -5,7 +5,7 @@ http://www.zotero.org/styles/advanced-materials - + Jimmy Lawrence jimmymisc@gmail.com @@ -16,13 +16,13 @@ 0935-9648 1521-4095 A style for Wiley's Advanced Materials - 2012-09-27T22:06:38+00:00 + 2022-06-22T14:43:19+00:00 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License - - - - - - - - - + @@ -106,10 +101,6 @@ - - - - @@ -173,13 +164,13 @@ + + + - - - @@ -188,15 +179,21 @@ + + + + + + - + - - + + @@ -217,7 +214,6 @@ - diff --git a/buildres/csl/csl-styles/annals-of-allergy-asthma-and-immunology.csl b/buildres/csl/csl-styles/annals-of-allergy-asthma-and-immunology.csl new file mode 100644 index 00000000000..b612c5ff55f --- /dev/null +++ b/buildres/csl/csl-styles/annals-of-allergy-asthma-and-immunology.csl @@ -0,0 +1,267 @@ + + diff --git a/buildres/csl/csl-styles/archaeonautica.csl b/buildres/csl/csl-styles/archaeonautica.csl index 1340f1c0021..9c1e0ff16d5 100644 --- a/buildres/csl/csl-styles/archaeonautica.csl +++ b/buildres/csl/csl-styles/archaeonautica.csl @@ -16,8 +16,7 @@ 0154-1854 2117-6973 - Style conçu pour la revue Archaeonautica. L’archéologie maritime et navale de la - préhistoire à l’époque contemporaine. Centre Camille Jullian, CNRS + Style conçu pour la revue Archaeonautica. L’archéologie maritime et navale de la préhistoire à l’époque contemporaine. Centre Camille Jullian, CNRS 2020-05-10T04:06:42+00:00 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License @@ -80,7 +79,7 @@ -