diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml index 1a7471a..d59910e 100644 --- a/.github/ISSUE_TEMPLATE/bug.yml +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -1,7 +1,6 @@ --- name: 🐞 Bug Report -labels: ["bug", "triage"] -title: "[Bug]: " +labels: ["bug", "triage", "new"] assignees: - luiz-micci - peppetwer @@ -13,24 +12,23 @@ body: - type: markdown attributes: value: |- - Please read the [troubleshooting section](https://github.com/mfussenegger/nvim-jdtls#troubleshooting) first. [Please make it easy for people to help you](https://zignar.net/2021/12/03/help-people-help-you-and-put-in-some-effort/) - type: textarea id: config attributes: - label: Cookiecutter Configuration + label: Configuration description: The configuration you pass to the plugin, if you did it - type: input id: version attributes: - label: Cookiecutter version + label: version placeholder: 1.0.1 validations: required: false - type: textarea id: repro attributes: - label: Steps to Reproduce + label: Steps to reproduce description: How can we see what you're seeing? Please be specific placeholder: |- In a project using { gradle version .. | maven .. } (Ideally with link), opening a Java file ... diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 156d1ce..8403e42 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -2,5 +2,5 @@ blank_issues_enabled: false contact_links: - name: Ask a question or start a discussion - url: https://github.com/twlabs/Cookiecutter-Templater-for-Backstage/wiki - about: Use the Github discussions feature + url: https://github.com/thoughtworks/templify/wiki + about: Use the Github discussions diff --git a/.github/ISSUE_TEMPLATE/feature.yml b/.github/ISSUE_TEMPLATE/feature.yml index 5222ea7..5ee84ab 100644 --- a/.github/ISSUE_TEMPLATE/feature.yml +++ b/.github/ISSUE_TEMPLATE/feature.yml @@ -1,17 +1,15 @@ name: 💡 Feature or Enhancement Request -labels: ["feature", "enhancement"] -title: "[Feature]: " +labels: ["feature", "enhancement", "new"] assignees: - luiz-micci - peppetwer - -description: Tell us about a problem you'd like to solve using the Cookiecutter templater Plugin +description: Tell us about a problem you'd like to solve body: - type: textarea id: problem attributes: label: Problem Statement - description: What problem could Cookiecutter Templater solve that it doesn't? + description: What problem could it solve that it doesn't? validations: required: true - type: textarea diff --git a/.github/ISSUE_TEMPLATE/issue.yml b/.github/ISSUE_TEMPLATE/issue.yml index 86096ee..8312a3e 100644 --- a/.github/ISSUE_TEMPLATE/issue.yml +++ b/.github/ISSUE_TEMPLATE/issue.yml @@ -1,14 +1,13 @@ -name: 🔧 Just a issue. -labels: ["issue"] -title: "[Issue]: " +name: 🔧 General Issue +labels: ["issue", "new"] assignees: - luiz-micci - peppetwer -description: Elaborate about your issue. +description: Elaborate about your issue body: - type: textarea attributes: - label: Issue description + label: Description id: desc validations: required: true diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..f0407a4 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,6 @@ +Make sure these boxes are checked before submitting your pull request: + +- [ ] Add tests and IT when implementing or updating a test runner +- [ ] Update the README/Wiki accordingly +- [ ] All mutations have killed +- [ ] All tests have passed diff --git a/CONTRIBUTION.md b/CONTRIBUTING.md similarity index 54% rename from CONTRIBUTION.md rename to CONTRIBUTING.md index 5c5f5a6..1c7cec9 100644 --- a/CONTRIBUTION.md +++ b/CONTRIBUTING.md @@ -1,48 +1,67 @@ # Contribution -## Install +## Requirements -This project uses a Makefile to run scripts. You can run `make help` to get the list of commands. +1. Maven 3.9.6+ +2. Java JDK 11 -## How to contribute +## Install and Testing Locally -### 1. Clone the repository +`mvn clean install` -Now clone the repository from GitHub to your computer. +The project uses JUnit with Mutation tests and IT tests. -### 2. Create a branch +1. [Jupiter aka Junit5](https://junit.org/junit5/) +2. [PIT](https://pitest.org/) +3. [Maven IT extenstion](https://github.com/khmarbaise/maven-it-extension) -This repository not supports forking. So, create a branch named accord what you want to contribute to. +Before adding new code, make sure to add test cases for it so that the maintainers can provide guidance and simulate the same scenarios. -``` -git checkout -b -``` +### Unit Tests -For example: +1. They're just conventional JUnit tests. +2. Avoid excessive mocks. +3. Try to use the AAA structure, stands for: Arrange, Act, Assert +4. Ensure all the mutations were killed and covered. -``` -git checkout -b add-alonzo-church -``` +### Integration Tests -### 3. Commit your changes +1. Make sure to add your project scenario to the `resources-it` folder. +2. Include your IT scenario in the class `TemplifyIT`. (This class is responsible for executing the Maven plugin build for the project scenarios) +3. Ensure the tests are marked as `@MavenTest` and have meaningful asserts. + +If you face any issue about the + +## How to contribute -Now open `Contributors.md` file in a text editor, add your name to it. Don't add it at the beginning or end of the file. Put it anywhere in between. Now, save the file. +### 1. Fork and clone this repository. +https://docs.github.com/en/get-started/exploring-projects-on-github/contributing-to-a-project -If you go to the project directory and execute the command `git status`, you'll see there are changes. Add those changes to the branch you just created using the `git add` command: +### 2. Create a branch to add your changes ``` -git add Contributors.md +git switch -C ``` -Now commit those changes using the `git commit` command: +For example: ``` -git commit -m "Add to Contributors list" +git switch -C update-readme ``` -Replacing `` with your name. +### 3. Commit your changes +This repository uses the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) standard. + +For example: + - +``` +git commit -m "feat: add new feature" +git commit -m "docs: correct spelling of CHANGELOG" +git commit -m "feat(api)!: send an email to the customer when a product is shipped" + +``` ### 4. Push to the original branch @@ -67,12 +86,11 @@ Soon I'll be merging all your changes into the main branch of this project. You Congrats! -You just completed the standard `clone -> branch -> commits -> PR_` workflow that you'll often encounter as a contributor! +You just completed the standard `fork/clone -> branch -> commits -> PR_` workflow that you'll often encounter as a contributor! ## Architecture - ```mermaid --- title: Plugin Architecture