From fee9f76e9c984cdbfa2467e3abe1ab2484cc69e0 Mon Sep 17 00:00:00 2001 From: "John L. Villalovos" Date: Mon, 26 May 2025 17:06:50 -0700 Subject: [PATCH] chore: add CONTRIBUTING.md file Create an initial CONTRIBUTING.md. Explain in there that issues will be closed if no activity on them. Also have the stale bot use more informative messages about the policy. --- .github/workflows/stale.yml | 43 +++++++++++++++++- CONTRIBUTING.md | 88 +++++++++++++++++++++++++++++++++++++ 2 files changed, 129 insertions(+), 2 deletions(-) create mode 100644 CONTRIBUTING.md diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 379161657..4c1b0ba5d 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -27,11 +27,50 @@ jobs: This issue was marked stale because it has been open 60 days with no activity. Please remove the stale label or comment on this issue. Otherwise, it will be closed in 15 days. + + As an open-source project, we rely on community contributions to + address many of the reported issues. Without a proposed fix or + active work towards a solution it is our policy to close inactive + issues. This is documented in CONTRIBUTING.md + + **How to keep this issue open:** + * If you are still experiencing this issue and are willing to + investigate a fix, please comment and let us know. + * If you (or someone else) can propose a pull request with a + solution, that would be fantastic. + * Any significant update or active discussion indicating progress + will also prevent closure. + + We value your input. If you can help provide a fix, we'd be happy + to keep this issue open and support your efforts. + days-before-issue-stale: 60 days-before-issue-close: 15 close-issue-message: > - This issue was closed because it has been marked stale for 15 days with no - activity. If this issue is still valid, please re-open. + This issue was closed because it has been marked stale for 15 days + with no activity. + + This open-source project relies on community contributions, and + while we value all feedback, we have a limited capacity to address + every issue without a clear path forward. + + Currently, this issue hasn't received a proposed fix, and there + hasn't been recent active discussion indicating someone is planning + to work on it. To maintain a manageable backlog and focus our + efforts, we will be closing this issue for now. + + **This doesn't mean the issue isn't valid or important.** If you or + anyone else in the community is willing to investigate and propose + a solution (e.g., by submitting a pull request), please do. + + We believe that those who feel a bug is important enough to fix + should ideally be part of the solution. Your contributions are + highly welcome. + + Thank you for your understanding and potential future + contributions. + + This is documented in CONTRIBUTING.md stale-pr-message: > This Pull Request (PR) was marked stale because it has been open 90 days diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..c9c048c5b --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,88 @@ +# Contributing to LibreBooking + +First off, thank you for considering contributing to LibreBooking. We +appreciate your interest and effort. This project is open-source and needs +community contributions. + +We welcome many forms of contributions, including but not limited to: + +* Reporting bugs +* Suggesting new features or enhancements +* Improving documentation +* Writing tutorials or blog posts +* Submitting pull requests for bug fixes or new features + +## Issue Management and Our Approach to Contributions + +We value every contribution and bug report. However, as an open-source project +with limited maintainer resources, we rely heavily on the community to help us +move forward. + +**Our Policy on Inactive Issues:** + +To keep our issue tracker manageable and focused on actionable items, we have +the following approach: + +* **We encourage reporters to propose solutions:** If you report an issue, we +strongly encourage you to also think about how it might be fixed and try to +implement that fix. +* **Community interest is key:** Issues that garner interest from the community +(e.g., multiple users confirming, discussions on solutions, offers to help) are +more likely to be addressed. +* **Closing inactive issues:** If an issue report doesn't receive a proposed +fix from the original reporter or anyone else in the community, and there's no +active discussion or indication that someone is willing to work on it after a +reasonable period, it may be closed. + + * When closing such an issue, we will typically leave a comment explaining + that it's being closed due to inactivity and a lack of a proposed fix. + +* **Reopening issues:** This doesn't mean the issue isn't valid. If you (or +someone else) are interested in working on a fix for a closed issue, please +comment on the issue. We are more than happy to reopen it and discuss your +proposed pull request or solution. We greatly appreciate it when community +members take ownership of fixing issues they care about. + +We believe this approach helps us focus our efforts effectively and empowers +the community to contribute directly to the areas they are most passionate +about. + +## Getting Started + +* *Ensure you have an up-to-date `main` branch:** Fork the repository and make +sure your `main` branch is synced with the upstream project before creating +your feature branch. +* **Create a new branch** for your changes: `git checkout -b feature/your-feature-name` or `git checkout -b bugfix/issue-number-and-fix`. +* **Make your changes** and **add tests** if applicable. +* **Ensure your code lints** +* **Commit your changes** with a clear and descriptive commit message. +* **Push your branch** to your fork: `git push origin feature/your-feature-name`. +* **Open a Pull Request** against our `main` branch. + +## Reporting Bugs + +Before submitting a new bug report, please: + +* **Check existing issues:** Search the issue tracker to see if the bug has already been reported. +* **Provide a clear title and description:** Explain the issue and include as much relevant information as possible. +* **Describe how to reproduce the bug:** Include steps, code snippets, or a minimal reproducible example. +* **Explain the expected behavior vs. actual behavior.** +* **Include details about your environment:** Operating system, project version, browser version, etc. + +## Suggesting Enhancements + +We'd love to hear your ideas for improving LibreBooking. + +* **Check existing issues and discussions:** Your idea might have already been discussed. +* **Provide a clear title and description:** Explain the enhancement and why it would be beneficial. +* **Outline your proposed solution if you have one.** +* **Be open to discussion:** We may have questions or alternative suggestions. + +## Pull Request Process + +1. Ensure any install or build dependencies are removed before the end of the layer when doing a build. +2. Update the README.md with details of changes to the interface, this includes new environment variables, exposed ports, useful file locations, and container parameters. +3. Increase the version numbers in any examples files and the README.md to the new version that this Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/). +4. Your PR will be reviewed by maintainers. We aim to review PRs in a timely manner, but please be patient. +5. Address any feedback or requested changes. +6. Once your PR is approved and CI checks pass, it will be merged. Thank you for your contribution.