diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000000..9850f404097 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: false +contact_links: + - name: Help + url: https://discourse.jabref.org/c/help/ + about: Questions and requests for help are handled at https://discourse.jabref.org + - name: Feature requests + url: https://discourse.jabref.org/c/features/ + about: If you are missing an important feature? Let us know! diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index d2ae96c562d..00000000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for this project - ---- - -Please use the GitHub issue tracker only for bug reports and suggestions for improvements. -Feature requests, questions and general feedback is now handled at http://discourse.jabref.org. -Thanks! diff --git a/.github/ISSUE_TEMPLATE/question.md b/.github/ISSUE_TEMPLATE/question.md deleted file mode 100644 index 7e9c25fe4b4..00000000000 --- a/.github/ISSUE_TEMPLATE/question.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -name: Question -about: Ask a question about JabRef - ---- - -Please use the GitHub issue tracker only for bug reports and suggestions for improvements. -Feature requests, questions and general feedback is now handled at http://discourse.jabref.org. -Thanks! diff --git a/.github/workflows/automerge.yml b/.github/workflows/automerge.yml index 60cdc796b08..ff5b9df74ef 100644 --- a/.github/workflows/automerge.yml +++ b/.github/workflows/automerge.yml @@ -9,7 +9,7 @@ jobs: steps: - name: 'Wait for status checks' id: waitforstatuschecks - uses: "WyriHaximus/github-action-wait-for-status@v1.2" + uses: "WyriHaximus/github-action-wait-for-status@v1.3" with: ignoreActions: Automerge Dependabot checkInterval: 13 diff --git a/.github/workflows/deployment.yml b/.github/workflows/deployment.yml index 76bcdb2186d..a197d1ed2dc 100644 --- a/.github/workflows/deployment.yml +++ b/.github/workflows/deployment.yml @@ -97,11 +97,11 @@ jobs: if: matrix.os == 'macos-latest' shell: bash run: | - codesign --entitlements buildres/mac/myapp.entitlements --options runtime -vvv -f --sign "Developer ID Application: Tobias Diez (W2PU6LW5U5)" build/distribution/JabRef.app/Contents/runtime/Contents/MacOS/libjli.dylib - codesign --entitlements buildres/mac/myapp.entitlements --options runtime -vvv -f --sign "Developer ID Application: Tobias Diez (W2PU6LW5U5)" build/distribution/JabRef.app/Contents/MacOS/JabRef - codesign --entitlements buildres/mac/myapp.entitlements --options runtime -vvv -f --sign "Developer ID Application: Tobias Diez (W2PU6LW5U5)" build/distribution/JabRef.app + codesign --entitlements buildres/mac/jabref.entitlements --options runtime -vvv -f --sign "Developer ID Application: Tobias Diez (W2PU6LW5U5)" build/distribution/JabRef.app/Contents/runtime/Contents/MacOS/libjli.dylib + codesign --entitlements buildres/mac/jabref.entitlements --options runtime -vvv -f --sign "Developer ID Application: Tobias Diez (W2PU6LW5U5)" build/distribution/JabRef.app/Contents/MacOS/JabRef + codesign --entitlements buildres/mac/jabref.entitlements --options runtime -vvv -f --sign "Developer ID Application: Tobias Diez (W2PU6LW5U5)" build/distribution/JabRef.app jpackage --type pkg --dest build/distribution --name JabRef --app-version "${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}" --app-image build/distribution/JabRef.app --verbose --type dmg --vendor JabRef --app-version "${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}" --file-associations buildres/mac/bibtexAssociations.properties --resource-dir buildres/mac - codesign -s "Developer ID Application: Tobias Diez (W2PU6LW5U5)" --options runtime --entitlements buildres/mac/myapp.entitlements -vvvv --deep "build/distribution/JabRef-${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}.dmg" + codesign -s "Developer ID Application: Tobias Diez (W2PU6LW5U5)" --options runtime --entitlements buildres/mac/jabref.entitlements -vvvv --deep "build/distribution/JabRef-${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}.dmg" jpackage --type pkg --dest build/distribution --name JabRef --mac-package-identifier JabRef --app-version "${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}" --app-image build/distribution/JabRef.app --verbose --type pkg --vendor JabRef --app-version "${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}" --file-associations buildres/mac/bibtexAssociations.properties --resource-dir buildres/mac productsign --sign "Developer ID Installer: Tobias Diez (W2PU6LW5U5)" "build/distribution/JabRef-${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}.pkg" "build/distribution/JabRef-${{ steps.gitversion.outputs.Major }}.${{ steps.gitversion.outputs.Minor }}-signed.pkg" - name: Notarize dmg and pkg installer diff --git a/.github/workflows/refresh-csl-subtrees.yml b/.github/workflows/refresh-csl-subtrees.yml index 17eb8df3486..fa32c615a62 100644 --- a/.github/workflows/refresh-csl-subtrees.yml +++ b/.github/workflows/refresh-csl-subtrees.yml @@ -16,20 +16,27 @@ jobs: with: ref: master fetch-depth: 0 - - name: Add csl-styles remote - run: git remote add -f csl-styles https://github.com/citation-style-language/styles.git - - name: Update csl-styles + - name: Initialize git run: | git checkout master git config --local core.editor /usr/bin/cat git config user.name "github actions" git config user.email "jabrefmail+webfeedback@gmail.com" - git subtree pull --prefix src/main/resources/csl-styles csl-styles master --squash + - name: Add csl-styles remote + run: git remote add -f csl-styles https://github.com/citation-style-language/styles.git + - name: Update csl-styles + run: | + git subtree pull --prefix buildres/csl/csl-styles csl-styles master --squash + cp buildres/csl/csl-styles/acm-siggraph.csl src/main/resources/csl-styles/ + cp buildres/csl/csl-styles/ieee.csl src/main/resources/csl-styles/ + cp buildres/csl/csl-styles/turabian-author-date.csl src/main/resources/csl-styles/ - name: Add csl-locales remote run: git remote add -f csl-locales https://github.com/citation-style-language/locales.git - name: Update csl-locales run: | - git subtree pull --prefix src/main/resources/csl-locales csl-locales master --squash + git subtree pull --prefix buildres/csl/csl-locales csl-locales master --squash + cp buildres/csl/csl-locales/locales.json src/main/resources/csl-locales/ + cp buildres/csl/csl-locales/locales-en-US src/main/resources/csl-locales/ - uses: ad-m/github-push-action@master with: github_token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.mailmap b/.mailmap index 56af5eb0831..9df1d2ee595 100644 --- a/.mailmap +++ b/.mailmap @@ -214,3 +214,4 @@ ZhouSky <11711923@mail.sustech.edu.cn> Vincent Gagnon Tom Warnke Eric Lau <919023+skeric@users.noreply.github.com> +Isabel Beckenbach <68125288+ibe-314@users.noreply.github.com> diff --git a/.sonarcloud.properties b/.sonarcloud.properties deleted file mode 100644 index 8b137891791..00000000000 --- a/.sonarcloud.properties +++ /dev/null @@ -1 +0,0 @@ - diff --git a/AUTHORS b/AUTHORS index 1ea7c309626..c7790f81828 100644 --- a/AUTHORS +++ b/AUTHORS @@ -170,6 +170,7 @@ Igor Steinmacher Illes Solt Ingvar Jackal Isaac Roles +Isabel Beckenbach Jackson Ryan Jan Frederik Maas Jan Kubovy @@ -358,6 +359,7 @@ Scott Pogatetz Scott Townsend Seb Wills Serban Iordache +Shadow Devil Shikun Xiong ShiqingLiu Shitikanth diff --git a/CHANGELOG.md b/CHANGELOG.md index 8ee5078e4fa..faf7f5758a9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,14 +11,20 @@ Note that this project **does not** adhere to [Semantic Versioning](http://semve ### Added +- We added the possibility to add a new entry via its zbMath ID (zbMATH can be chosen as ID type in the "Select entry type" window). [#7202](https://github.com/JabRef/jabref/issues/7202) - We added the extension support and the external application support (For Texshow, Texmaker and LyX) to the flatpak [#7248](https://github.com/JabRef/jabref/pull/7248) +- We added some symbols and keybindings to the context menu in the entry editor. [#7268](https://github.com/JabRef/jabref/pull/7268) +- We added keybindings for setting and clearing the read status. [#7264](https://github.com/JabRef/jabref/issues/7264) ### Changed ### Fixed +- We fixed an issue where the "Normalize page numbers" formatter did not replace en-dashes or em-dashes with a hyphen-minus sign. [#7239](https://github.com/JabRef/jabref/issues/7239) - We fixed an issue with the style of highlighted check boxes while searching in preferences. [#7226](https://github.com/JabRef/jabref/issues/7226) - We fixed an issue where the option "Move file to file directory" was disabled in the entry editor for all files [#7194](https://github.com/JabRef/jabref/issues/7194) +- We fixed an issue where application dialogs were opening in the wrong display when using multiple screens [#7273](https://github.com/JabRef/jabref/pull/7273) +- We fixed an issue where an exception would be displayed for previewing and preferences when a custom theme has been configured but is missing [#7177](https://github.com/JabRef/jabref/issues/7177) ### Removed diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 64af4aa3368..22db7bd7239 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,133 +1,16 @@ -# Contributing Guide +# Contributing -After reading through this guide, check out some good first issues to contribute to by clicking here: [Good First Issues](https://github.com/JabRef/jabref/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) +When contributing to this repository, please first discuss the change you wish to make via issue, +email, or any other method with the owners of this repository before making a change. -In case you are an instructor and want to use JabRef as software engineering example, please head to . +Support on code contribution is available at . +General overview on contributing is available at . -## Understanding the basics +## Pull Request Process -We welcome contributions to JabRef and encourage you to follow the GitHub workflow specified below. If you are not familiar with this type of workflow, take a look at GitHub's excellent overview on the [GitHub flow](https://guides.github.com/introduction/flow/index.html) and the explanation of [Feature Branch Workflow](https://atlassian.com/git/tutorials/comparing-workflows#feature-branch-workflow) for the idea behind this kind of development. - -1. Get the JabRef code on your local machine. Detailed instructions about this step can be found in our [guidelines for setting up a local workspace](https://devdocs.jabref.org/getting-into-the-code/guidelines-for-setting-up-a-local-workspace). - 1. Fork the JabRef into your GitHub account. - 2. Clone your forked repository on your local machine. -2. **Create a new branch** (such as `fix-for-issue-121`). Be sure to create a **separate branch** for each improvement you implement. -3. Do your work on the **new branch - not the master branch.** Refer to our [code howtos](https://devdocs.jabref.org/getting-into-the-code/code-howtos) if you have questions about your implementation. -4. Create a pull request. For an overview of pull requests, take a look at GitHub's [pull request help documentation](https://help.github.com/articles/about-pull-requests/). -5. In case your pull request is not yet complete or not yet ready for review, consider creating a [draft pull request](https://github.blog/2019-02-14-introducing-draft-pull-requests/) instead. - -In case you have any questions, do not hesitate to write one of our [JabRef developers](https://github.com/orgs/JabRef/teams/developers) an email. -We should also be online at [gitter](https://gitter.im/JabRef/jabref). - -## Formal requirements for a pull request - -The main goal of the formal requirements is to provide credit to you and to be able to understand the patch. - -### Add your change to `CHANGELOG.md` - -You should edit the [CHANGELOG.md](CHANGELOG.md) located in the root directory of the JabRef source. -Add a line with your changes in the appropriate section. - -If you did internal refactorings or improvements not visible to the user (e.g., UI, .bib file), then you don't need to put an entry there. - -#### Format of keyboard shortcuts - -Example: `Ctrl + Enter` - -In case you add keys to the changelog, please follow these rules: - -- `` tag for each key -- First letter of key capitalized -- Combined keys separated by `+` -- Spaces before and after separator `+` - -### Author credits - -You will be given credit in the [`AUTHORS`](AUTHORS) file in the root of the repository and the 'About' pages inside the main application. -We will periodically update the contributors list inside [`AUTHORS`](AUTHORS). -This is done by an automatic shell script `scripts/generate-authors.sh`. - -If you want to add yourself directly with your pull request please run this script. -Please make sure there are no duplicates or alternate spellings of your name listed. -If you need to merge different Git usernames or email addresses you can do so by editing `.mailmap`. -More information on this can be found via `man git-shortlog`. - -Please, **do not add yourself at JavaDoc's `@authors`**. -The contribution information is tracked via the version control system. - -Your contribution is considered being made under [MIT license](https://tldrlegal.com/license/mit-license). - -### Write a good commit message - -See [good commit message] or [commit guidelines section of Pro Git]. -The first line of your commit message is automatically taken as the title for the pull-request. -All other lines make up the body of the pull request. Add the words `fixes #xxx` to your PR to auto-close the corresponding issue. - -### Test your code - -We know that writing test cases takes a lot of time. -Nevertheless, we rely on our test cases to ensure that a bug fix or a feature implementation doesn't break anything. -In case you do not have time to add a test case, we nevertheless ask you to at least run `gradlew check` to ensure that your change doesn't break anything else. - -### When adding a library - -Please try to use a version available at JCenter and add it to `build.gradle`. -In any case, describe the library at [external-libraries.md](external-libraries.md). -We need that information for our package maintainers (e.g., those of the [debian package](https://tracker.debian.org/pkg/jabref)). -Also add a txt file stating the license in `libraries/`. -It is used at `gradlew processResources` to generate the About.html files. -You can see the result in `build\resources\main\help\en\About.html` or when clicking Help -> About. - -### When making an architectural decision - -In case you add a library or do major code rewrites, we ask you to document your decision. -Recommended reading: . - -We simply ask to create a new markdown file in `docs/adr` following the template presented at . - -In case you want to directly add a comment to a class, simply use following template (based on [sustainable architectural decisions](https://www.infoq.com/articles/sustainable-architectural-design-decisions)): - -```text -In the context of , -facing -we decided for