From ed7185b01e7a421512d63551d2cd83a01cdc10bb Mon Sep 17 00:00:00 2001 From: Harsh Panchal Date: Thu, 10 Jul 2025 11:34:58 +0530 Subject: [PATCH 1/2] Provided ISSUE and PR TEMPLATES --- .github/DISCUSSION_TEMPLATE/question.yml | 30 ++++++ .github/ISSUE_TEMPLATE/bug_report.yml | 102 +++++++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.yml | 40 ++++++++ .github/pull_request_template.md | 14 +++ README.md | 6 +- 5 files changed, 189 insertions(+), 3 deletions(-) create mode 100644 .github/DISCUSSION_TEMPLATE/question.yml create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml create mode 100644 .github/pull_request_template.md diff --git a/.github/DISCUSSION_TEMPLATE/question.yml b/.github/DISCUSSION_TEMPLATE/question.yml new file mode 100644 index 00000000..0344e2f0 --- /dev/null +++ b/.github/DISCUSSION_TEMPLATE/question.yml @@ -0,0 +1,30 @@ +body: + - type: markdown + attributes: + value: + "Thanks for taking the time to fill out this form! :hugs:" + + - type: checkboxes + id: checklist + attributes: + label: "Checklist" + options: + - label: "I made sure that there are *no existing issues or discussions* - [open](https://github.com/callebtc/bitchat-android/issues) or [closed](https://github.com/callebtc/bitchat-android/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to." + required: true + - label: "I have taken the time to fill in all the required details. I understand that the question will be dismissed otherwise." + required: true + - label: "I have read and understood the [technical architecture](https://github.com/callebtc/bitchat-android/blob/main/README.md#technical-architecture)." + required: true + + - type: textarea + id: what-is-the-question + attributes: + label: What is/are your question(s)? + validations: + required: true + + - type: textarea + id: additional-information + attributes: + label: Additional information + description: Any other information you'd like to include, for instance sketches, mockups, pictures of cats, etc. \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 00000000..7e582683 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,102 @@ +name: Bug report +description: Create a bug report to help us improve +labels: [bug] +body: + - type: markdown + attributes: + value: | + Thank you for helping to make Bitchat better by reporting a bug. :hugs: + + Please fill in as much information as possible about your bug so that we don't have to play "information ping-pong" and can help you immediately. + + - type: checkboxes + id: checklist + attributes: + label: "Checklist" + options: + - label: "I am able to reproduce the bug with the latest version given here: [CLICK THIS LINK](https://github.com/callebtc/bitchat-android/releases/latest)." + required: true + - label: "I made sure that there are *no existing issues* - [open](https://github.com/callebtc/bitchat-android/issues) or [closed](https://github.com/callebtc/bitchat-android/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to." + required: true + - label: "I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise." + required: true + - label: "This issue contains only one bug." + required: true + - label: "I have read and understood the [contribution guidelines](https://github.com/callebtc/bitchat-android/blob/main/README.md#contributing)." + required: true + + - type: input + id: app-version + attributes: + label: Affected version + description: "In which bitchat version did you encounter the bug?" + placeholder: "x.xx.x - Can be seen in the `release` section of the repository." + validations: + required: true + + - type: textarea + id: steps-to-reproduce + attributes: + label: Steps to reproduce the bug + description: | + What did you do for the bug to show up? + + If you can't cause the bug to show up again reliably (and hence don't have a proper set of steps to give us), please still try to give as many details as possible on how you think you encountered the bug. + placeholder: | + 1. Go to '...' + 2. Press on '....' + 3. Swipe down to '....' + validations: + required: true + + - type: textarea + id: expected-behavior + attributes: + label: Expected behavior + description: | + Tell us what you expect to happen. + + - type: textarea + id: actual-behavior + attributes: + label: Actual behavior + description: | + Tell us what happens with the steps given above. + + - type: textarea + id: screen-media + attributes: + label: Screenshots/Screen recordings + description: | + A picture or video is worth a thousand words. + + If applicable, add screenshots or a screen recording to help explain your problem. + GitHub supports uploading them directly in the text box. + If your file is too big for Github to accept, try to compress it (ZIP-file) or feel free to paste a link to an image/video hoster here instead. + + - type: input + id: device-os-info + attributes: + label: Affected Android/Custom ROM version + description: | + With what operating system (+ version) did you encounter the bug? + placeholder: "Example: Android 14" + + - type: input + id: device-model-info + attributes: + label: Affected device model + description: | + On what device did you encounter the bug? + placeholder: "Example: Samsung Galaxy S20 / Google Pixel 8" + + - type: textarea + id: additional-information + attributes: + label: Additional information + description: | + Any other information you'd like to include, for instance that + * the affected device is foldable or a TV + * you have disabled all animations on your device + * your cat disabled your network connection + * ... diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 00000000..095cdf1f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,40 @@ +name: Feature request +description: Request a new feature or enhancement +labels: [enhancement] +body: + - type: checkboxes + id: checklist + attributes: + label: Checklist + options: + - label: I have used the search function for [**OPEN**](https://github.com/callebtc/bitchat-android/issues) issues to see if someone else has already submitted the same feature request. + required: true + - label: I have **also** used the search function for [**CLOSED**](https://github.com/callebtc/bitchat-android/issues?q=is%3Aissue+is%3Aclosed) issues to see if the feature was already implemented and is just waiting to be released, or if the feature was rejected. + required: true + - label: I will describe the problem with as much detail as possible. + required: true + - label: This request contains only one single feature, **not** a list of multiple (related) features. + required: true + - type: input + id: version + attributes: + label: App version + description: The latest version is different on each device, so we need the actual version number found on the settings screen. + placeholder: x.y.z + validations: + required: true + - type: textarea + id: feature + attributes: + label: Feature or improvement you want + description: Try to be as specific as possible. Please not only explain what the feature does, but also how. + - type: textarea + id: reason + attributes: + label: Why should this be added? + description: What problem does the feature solve? In what use-cases is the feature needed? + - type: textarea + id: screenshots + attributes: + label: Screenshots / Drawings / Technical details + description: If your request is about (or includes) changing or extending the UI, describe what the UI would look like and how the user would interact with it. \ No newline at end of file diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 00000000..b4f5e29d --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,14 @@ +# Description + +## Checklist + +- [ ] I have read the contribution guidelines: +- [ ] I have performed a self-review of my code +- [ ] I have run the automated code checks using `./gradlew checkstyle spotbugsPlayDebug spotbugsDebug :app:lintPlayDebug` +- [ ] My code follows the style guidelines of the AntennaPod project: +- [ ] I have mentioned the corresponding issue and the relevant keyword (e.g., "Closes: #xy") in the description (see ) +- [ ] If it is a core feature, I have added automated tests diff --git a/README.md b/README.md index eeea819e..f85c31b4 100644 --- a/README.md +++ b/README.md @@ -231,7 +231,7 @@ bitchat uses an efficient binary protocol optimized for Bluetooth LE: The Android implementation maintains 100% binary protocol compatibility with iOS: - **Header Format**: Identical 13-byte header structure -- **Packet Types**: Same message types and routing logic +- **Packet Types**: Same message types and routing logic - **Encryption**: Identical cryptographic algorithms and key exchange - **UUIDs**: Same Bluetooth service and characteristic identifiers - **Fragmentation**: Compatible message fragmentation for large content @@ -288,7 +288,7 @@ This Android port enables seamless communication with the original iOS bitchat a Contributions are welcome! Key areas for enhancement: 1. **Performance**: Battery optimization and connection reliability -2. **UI/UX**: Additional Material Design 3 features +2. **UI/UX**: Additional Material Design 3 features 3. **Security**: Enhanced cryptographic features 4. **Testing**: Unit and integration test coverage 5. **Documentation**: API documentation and development guides @@ -296,7 +296,7 @@ Contributions are welcome! Key areas for enhancement: ## Support & Issues - **Bug Reports**: [Create an issue](../../issues) with device info and logs -- **Feature Requests**: [Start a discussion](../../discussions) +- **Feature Requests**: [Start a discussion](../../discussions) - **Security Issues**: Email security concerns privately - **iOS Compatibility**: Cross-reference with [original iOS repo](https://github.com/jackjackbits/bitchat) From 17d883bd73e54e3c3d495416b0f5d40aad376210 Mon Sep 17 00:00:00 2001 From: Harsh Panchal Date: Thu, 10 Jul 2025 12:37:12 +0530 Subject: [PATCH 2/2] Fixed hyperlinks pull_request_template.md --- .github/pull_request_template.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index b4f5e29d..acc00ae4 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -6,9 +6,8 @@ please make sure that you have done all of the following. You can tick the boxes below by placing an x inside the brackets like this: [x] --> -- [ ] I have read the contribution guidelines: +- [ ] I have read the contribution guidelines: - [ ] I have performed a self-review of my code -- [ ] I have run the automated code checks using `./gradlew checkstyle spotbugsPlayDebug spotbugsDebug :app:lintPlayDebug` -- [ ] My code follows the style guidelines of the AntennaPod project: + - [ ] I have mentioned the corresponding issue and the relevant keyword (e.g., "Closes: #xy") in the description (see ) - [ ] If it is a core feature, I have added automated tests