diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..a5238d1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,52 @@ +name: πŸ› Bug report +description: Report an issue +labels: ["status: review needed"] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to fill out this bug report! + - type: textarea + id: bug-description + attributes: + label: Describe the bug + description: A clear and concise description of what the bug is. If you intend to submit a PR for this issue, tell us in the description. Thanks! + placeholder: Bug description + validations: + required: true + - type: input + id: reproduction + attributes: + label: Reproduction + description: A [minimal reproduction](https://stackoverflow.com/help/minimal-reproducible-example) is **required**, otherwise the issue might be closed without further notice. [**Why & How?**](https://antfu.me/posts/why-reproductions-are-required) + placeholder: Reproduction + validations: + required: true + - type: textarea + id: system-info + attributes: + label: System Info + description: Output of `npx envinfo --system --binaries --browsers` + render: Shell + placeholder: System, Binaries, Browsers + validations: + required: true + - type: textarea + id: additional-context + attributes: + label: Additional context + description: Any other context or screenshots about the bug report here. + - type: checkboxes + id: checkboxes + attributes: + label: Validations + description: Before submitting the issue, please make sure you do the following + options: + - label: Read the [Contributing Guide](https://github.com/kazupon/unicode-locale-parser/blob/main/CONTRIBUTING.md). + required: true + - label: Check that there isn't already an issue that reports the same bug to avoid creating a duplicate. + required: true + - label: Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead. + required: true + - label: The provided reproduction is a [minimal reproducible](https://stackoverflow.com/help/minimal-reproducible-example) of the bug. + required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..a55c1a0 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,7 @@ +contact_links: + - name: πŸ™Œ Contribution Guide + url: https://github.com/kazupon/unplugin-time-stat/blob/main/CONTRIBUTING.md + about: Please read through before making contributions. + - name: ⁉️ Why and How to make a reproduction? + url: https://antfu.me/posts/why-reproductions-are-required + about: Reproduction is very important for maintainer to help on your issues! diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..b480d35 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,44 @@ +name: πŸš€ New feature proposal +description: Propose a new feature +labels: [feature] +body: + - type: markdown + attributes: + value: | + Thanks for your interest in the project and taking the time to fill out this feature report! + - type: textarea + id: feature-description + attributes: + label: Clear and concise description of the problem + description: 'As a developer using unplugin-time-stat. I want [goal / wish] so that [benefit]. If you intend to submit a PR for this issue, tell us in the description. Thanks!' + validations: + required: true + - type: textarea + id: suggested-solution + attributes: + label: Suggested solution + description: 'In module [xy] we could provide following implementation...' + validations: + required: true + - type: textarea + id: alternative + attributes: + label: Alternative + description: Clear and concise description of any alternative solutions or features you've considered. + - type: textarea + id: additional-context + attributes: + label: Additional context + description: Any other context or screenshots about the feature request here. + - type: checkboxes + id: checkboxes + attributes: + label: Validations + description: Before submitting the issue, please make sure you do the following + options: + - label: Follow our [Code of Conduct](https://github.com/kazupon/.github/blob/main/CODE_OF_CONDUCT.md) + required: true + - label: Read the [Contributing Guide](https://github.com/kazupon/unplugin-time-stat/blob/main/CONTRIBUTING.md). + required: true + - label: Check that there isn't already an issue that request the same feature to avoid creating a duplicate. + required: true diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..7b8e5d9 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,22 @@ + + +### Description + + + +### Linked Issues + +### Additional context + + diff --git a/.github/release.yml b/.github/release.yml new file mode 100644 index 0000000..6a050e8 --- /dev/null +++ b/.github/release.yml @@ -0,0 +1,45 @@ +changelog: + exclude: + labels: + - ignore-for-release + authors: + - octocat + - renovate[bot] + categories: + - title: 🌟 Features + labels: + - feature + - title: πŸ› Bug Fixes + labels: + - bug + - title: πŸ’₯ Breaking Changes + labels: + - breaking + - title: ⚠️ Deprecated Features + labels: + - deprecated + - title: ⚑ Improvement Features + labels: + - improvement + - title: πŸ”’ Security Fixes + labels: + - security + - title: πŸ“ˆ Performance Fixes + labels: + - performance + - title: πŸ“οΈ Documentations + labels: + - documentation + - title: πŸ‘• Refactoring + labels: + - refactoring + - title: 🍭 Examples + labels: + - example + - title: 🌐 β™Ώ Internationalization or Accessibility Fixes + labels: + - a11y + - i18n + - title: πŸͺ„ Others + labels: + - chore diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..d3a2a1e --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,76 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, sex characteristics, gender identity and expression, +level of experience, education, socio-economic status, nationality, personal +appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +- Using welcoming and inclusive language +- Being respectful of differing viewpoints and experiences +- Gracefully accepting constructive criticism +- Focusing on what is best for the community +- Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +- The use of sexualized language or imagery and unwelcome sexual attention or + advances +- Trolling, insulting/derogatory comments, and personal or political attacks +- Public or private harassment +- Publishing others' private information, such as a physical or electronic + address, without explicit permission +- Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at kawakazu80@gmail.com. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see +https://www.contributor-covenant.org/faq diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..8aea9f0 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,49 @@ +# Contributing Guide + +- [Contributing Guide](#contributing-guide) + - [Issue Reporting Guidelines](#issue-reporting-guidelines) + - [Pull Request Guidelines](#pull-request-guidelines) + - [Work Step Example](#work-step-example) + +## Issue Reporting Guidelines + +- The issue list of this repo is **exclusively** for bug reports and feature requests. Non-conforming issues will be closed immediately. + +- Try to search for your issue, it may have already been answered or even fixed in the main branch. + +- Check if the issue is reproducible with the latest stable version of gh-changelogen. If you are using a pre-release, please indicate the specific version you are using. + +- It is **required** that you clearly describe the steps necessary to reproduce the issue you are running into. Issues with no clear repro steps will not be triaged. If an issue labeled `status: need more repro codes or info` receives no further input from the issue author for more than 5 days, it will be closed. + +- For bugs that involves build setups, you can create a reproduction repository with steps in the README. + +- If your issue is resolved but still open, don’t hesitate to close it. In case you found a solution by yourself, it could be helpful to explain how you fixed it. + +## Pull Request Guidelines + +- Checkout a topic branch from the `main` branch. + +- It's OK to have multiple small commits as you work on the PR - we will let GitHub automatically squash it before merging. + +- Make sure `cargo test` passes. (see [development setup](#development-setup)) + +- If adding new feature: + + - Add accompanying test case. + - Provide convincing reason to add this feature. Ideally you should open a suggestion issue first and have it greenlighted before working on it. + +- If fixing a bug: + - Provide detailed description of the bug in the PR. + - Add appropriate test coverage if applicable. + +### Work Step Example + +- Fork the repository from [unicode-locale-parser](https://github.com/kazupon/unicode-locale-parser) ! +- Create your topic branch from `main`: `git branch my-new-topic origin/main` +- Add codes and pass tests ! +- Commit your changes: `git commit -am 'Add some topic'` +- Push to the branch: `git push origin my-new-topic` +- Submit a pull request to `main` branch of `kazupon/unicode-locale-parser` repository ! + + +**Please make sure to have this pass successfully before submitting a PR.** Although the same tests will be run against your PR on the CI server, it is better to have it working locally beforehand. diff --git a/README.md b/README.md index 42beb90..00863ac 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # unicode-locale-parser +[![CI](https://github.com/kazupon/unicode-locale-parser/actions/workflows/ci.yml/badge.svg)](https://github.com/kazupon/unicode-locale-parser/actions/workflows/ci.yml) + The parser for [Unicode Locale Identifiers](https://unicode.org/reports/tr35/#Unicode_locale_identifier)