[skip ci] Nothing (#515)

This commit is contained in:
Itsmechinmoy 2024-11-09 20:34:43 +05:30 committed by GitHub
parent 4e76e8e6e7
commit b2d7af85c0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 449 additions and 0 deletions

9
.github/ISSUE_TEMPLATE/congif.yml vendored Normal file
View file

@ -0,0 +1,9 @@
blank_issues_enabled: false
contact_links:
- name: 🧑‍💻 Dantotsu Help on Discord
url: https://discord.com/invite/4HPZ5nAWwM
about: Get support, ask questions, and join the community discussions.
- name: 📱 Dantotsu Help on Telegram
url: https://t.me/dantotsuapp
about: Connect with the community, ask questions, and get help directly on Telegram.

35
.github/ISSUE_TEMPLATE/question.yml vendored Normal file
View file

@ -0,0 +1,35 @@
name: ❓ Question
description: Submit a question or query related to Dantotsu
labels: [question]
body:
- type: textarea
id: question-details
attributes:
label: Question Details
description: Provide a detailed explanation of your question or query.
placeholder: |
Example:
"How do I customize the settings in Dartotsu to optimize performance?"
validations:
required: true
- type: input
id: related-features
attributes:
label: Related Features (if applicable)
description: Mention any specific feature or section of Dantotsu related to your question.
placeholder: |
Example: "Settings > Performance"
- type: checkboxes
id: submission-checklist
attributes:
label: Submission Checklist
description: Review the following items before submitting your question.
options:
- label: I have searched existing issues to see if this question has already been answered.
required: true
- label: I have provided a clear and concise question title.
required: true
- label: I have provided all relevant details to understand my question fully.
required: true

101
.github/ISSUE_TEMPLATE/report_issue.yml vendored Normal file
View file

@ -0,0 +1,101 @@
name: 🐛 Issue Report
description: Report a bug or problem in Dantotsu
labels: [bug]
body:
- type: textarea
id: steps-to-reproduce
attributes:
label: Steps to Reproduce
description: Outline the steps needed to trigger the issue.
placeholder: |
Example:
1. Navigate to the home screen.
2. Click on "Start."
3. Observe the error message.
validations:
required: true
- type: textarea
id: expected-outcome
attributes:
label: Expected Outcome
description: Describe what you expected to happen.
placeholder: |
Example:
"The application should have successfully loaded the dashboard..."
validations:
required: true
- type: textarea
id: actual-outcome
attributes:
label: Actual Outcome
description: Detail what actually occurred when following the steps.
placeholder: |
Example:
"The app crashed and displayed an error message instead..."
validations:
required: true
- type: textarea
id: error-logs
attributes:
label: Error Logs (if applicable)
description: |
If the issue involves crashes, please attach relevant logs. Access them via **Settings → About → Log to file → Share**.
placeholder: |
Paste the logs here or upload as an attachment.
- type: input
id: dartotsu-version
attributes:
label: Dartotsu Version
description: Specify the version of Dartotsu in which the issue occurred.
placeholder: |
Example: "1.2.3"
validations:
required: true
- type: input
id: os-version
attributes:
label: Operating System Version
description: Mention the OS version you are using.
placeholder: |
Example: "Android 12"
validations:
required: true
- type: input
id: device-info
attributes:
label: Device Information
description: Provide your device name and model.
placeholder: |
Example: "Samsung Galaxy S21"
validations:
required: true
- type: textarea
id: additional-information
attributes:
label: Additional Information
placeholder: |
Include any other relevant details or attachments that may help diagnose the issue.
- type: checkboxes
id: submission-checklist
attributes:
label: Submission Checklist
description: Ensure you've reviewed these items before submitting your report.
options:
- label: I have searched existing issues to confirm this is not a duplicate.
required: true
- label: I have provided a clear and descriptive title.
required: true
- label: I am using the **[latest](https://github.com/rebelonion/Dantotsu/latest)** version of Dantotsu. If not, I have provided a reason for not updating.
required: true
- label: I have updated all relevant extensions or dependencies.
required: true
- label: I have filled out all the requested information accurately.
required: true

View file

@ -0,0 +1,54 @@
name: 🚀 Feature Request
description: Propose a new feature to enhance Dantotsu
labels: [enhancement]
body:
- type: textarea
id: feature-summary
attributes:
label: Feature Summary
description: Provide a concise summary of the feature you'd like to see.
placeholder: |
Example:
"Add support for dark mode..."
validations:
required: true
- type: textarea
id: detailed-description
attributes:
label: Detailed Description
description: Elaborate on how this feature should function and its potential impact.
placeholder: |
Example:
"The dark mode should automatically activate based on system settings..."
value: |
### Current Behavior
- Describe the current functionality or lack thereof.
### Proposed Solution
- Detail how the feature should work and any potential benefits.
### Considerations
- Mention any potential challenges or alternatives.
- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Provide any other information, relevant screenshots, or references.
placeholder: "Include links to relevant resources, external tools, or related issues."
- type: checkboxes
id: checklist
attributes:
label: Submission Checklist
description: Ensure you've completed these before submitting.
options:
- label: I have searched the existing issues and confirm that this feature has not been requested before.
required: true
- label: I have provided a clear and descriptive title.
required: true
- label: I am using the **[latest](https://github.com/rebelonion/Dantotsu/releases/latest)** version of Dantotsu. If not, I have provided a reason for using an older version.
required: true
- label: I understand that not all feature requests will be accepted, and if declined, I won't resubmit the same request.
required: true

84
.github/workflows/bug_greetings.yml vendored Normal file
View file

@ -0,0 +1,84 @@
name: Bug Report Greeting
on:
issues:
types: [opened]
jobs:
greeting:
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- name: Checkout Repository
uses: actions/checkout@v2
- name: Check if the issue is labeled as a Bug Report
id: check_bug_label
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
ISSUE_NUMBER=$(jq -r '.issue.number' "$GITHUB_EVENT_PATH")
LABELS=$(gh issue view $ISSUE_NUMBER --json labels --jq '.labels[].name')
if echo "$LABELS" | grep -q 'bug'; then
echo "This issue is labeled as a bug report. Checking if the issue creator is the repository owner."
echo "skip_label_check=false" >> $GITHUB_ENV
else
echo "This issue is not labeled as a bug report. Skipping greeting message."
echo "skip_label_check=true" >> $GITHUB_ENV
fi
- name: Check if the issue creator is the repo owner
if: env.skip_label_check == 'false'
id: check_owner
run: |
ISSUE_AUTHOR=$(jq -r '.issue.user.login' "$GITHUB_EVENT_PATH")
REPO_OWNER=$(jq -r '.repository.owner.login' "$GITHUB_EVENT_PATH")
if [ "$ISSUE_AUTHOR" = "$REPO_OWNER" ]; then
echo "The issue creator is the repository owner. Skipping greeting message."
echo "skip=true" >> $GITHUB_ENV
else
echo "The issue creator is not the repository owner. Checking for previous bug reports..."
echo "skip=false" >> $GITHUB_ENV
fi
- name: Check if the user has submitted a bug report before
if: env.skip == 'false'
id: check_first_bug_report
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
ISSUE_AUTHOR=$(jq -r '.issue.user.login' "$GITHUB_EVENT_PATH")
ISSUE_NUMBER=$(jq -r '.issue.number' "$GITHUB_EVENT_PATH")
# Get all issues (both open and closed) by the author except the current one
PREVIOUS_REPORTS=$(gh issue list --author "$ISSUE_AUTHOR" --label "Bug" --state all --json number --jq '. | map(select(.number != '$ISSUE_NUMBER')) | length')
echo "User $ISSUE_AUTHOR has submitted $PREVIOUS_REPORTS bug report(s) previously"
if [ "$PREVIOUS_REPORTS" -eq 0 ]; then
echo "This is the user's first bug report. Sending greeting message."
echo "skip_first_report=false" >> $GITHUB_ENV
else
echo "User has previous bug reports. Skipping greeting message."
echo "skip_first_report=true" >> $GITHUB_ENV
fi
- name: Send Greeting Message
if: env.skip_label_check == 'false' && env.skip != 'true' && env.skip_first_report != 'true'
uses: actions/github-script@v6
with:
script: |
const issueNumber = context.payload.issue.number;
const message = `
**🛠️ Thank you for reporting a bug!**
Your issue has been successfully submitted and is now awaiting review. We appreciate your help in making Dantotsu better.
**🔍 What Happens Next**
- Our team will investigate the issue and provide updates as soon as possible.
- You may be asked for additional details or clarification if needed.
- Once resolved, we'll notify you of the fix or provide a workaround.
**👥 Connect with Us**
- **[Discord](https://discord.com/invite/4HPZ5nAWwM)**: Engage with our community and ask questions.
- **[Telegram](https://t.me/dantotsuapp)**: Reach out for real-time discussions and updates.
We're working hard to resolve the issue and appreciate your patience!
`;
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issueNumber,
body: message
});

86
.github/workflows/feature_greetings.yml vendored Normal file
View file

@ -0,0 +1,86 @@
name: Feature Request Greeting
on:
issues:
types: [opened]
jobs:
greeting:
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Check if the issue is labeled as a Feature Request
id: check_feature_label
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
ISSUE_NUMBER=$(jq -r '.issue.number' "$GITHUB_EVENT_PATH")
LABELS=$(gh issue view $ISSUE_NUMBER --json labels --jq '.labels[].name')
if echo "$LABELS" | grep -q 'enhancement'; then
echo "This issue is labeled as a feature request. Checking if the issue creator is the repository owner."
echo "skip_label_check=false" >> $GITHUB_ENV
else
echo "This issue is not labeled as a feature request. Skipping greeting message."
echo "skip_label_check=true" >> $GITHUB_ENV
fi
- name: Check if the user has submitted a feature request before
if: env.skip_label_check == 'false'
id: check_first_request
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
ISSUE_AUTHOR=$(jq -r '.issue.user.login' "$GITHUB_EVENT_PATH")
REPO_OWNER=$(jq -r '.repository.owner.login' "$GITHUB_EVENT_PATH")
ISSUE_NUMBER=$(jq -r '.issue.number' "$GITHUB_EVENT_PATH")
if [ "$ISSUE_AUTHOR" = "$REPO_OWNER" ]; then
echo "The issue creator is the repository owner. Skipping greeting message."
echo "skip_first_request=true" >> $GITHUB_ENV
else
echo "Checking for previous feature requests..."
# Get all issues (both open and closed) by the author except the current one
PREVIOUS_REQUESTS=$(gh issue list --author "$ISSUE_AUTHOR" --label "New Feature" --state all --json number --jq '. | map(select(.number != '$ISSUE_NUMBER')) | length')
echo "User $ISSUE_AUTHOR has submitted $PREVIOUS_REQUESTS feature request(s) previously"
if [ "$PREVIOUS_REQUESTS" -eq 0 ]; then
echo "This is the user's first feature request. Sending greeting message."
echo "skip_first_request=false" >> $GITHUB_ENV
else
echo "User has previous feature requests. Skipping greeting message."
echo "skip_first_request=true" >> $GITHUB_ENV
fi
fi
- name: Send Greeting Message
if: env.skip_label_check == 'false' && env.skip_first_request == 'false'
uses: actions/github-script@v6
with:
script: |
const issueNumber = context.payload.issue.number;
const message = `
**💡 Thank you for your feature request!**
Your request has been successfully submitted and is now under consideration. We value your input in shaping the future of Dantotsu.
**📈 What to Expect Next**
- Our team will review your request and assess its feasibility.
- We may reach out for additional details or clarification.
- Updates on the request will be provided, and it may be scheduled for future development.
**👥 Stay Connected**
- **[Discord](https://discord.com/invite/4HPZ5nAWwM)**: Join our community to discuss ideas and stay updated.
- **[Telegram](https://t.me/dantotsuapp)**: Connect with us directly for real-time updates.
We appreciate your suggestion and look forward to potentially implementing it!
`;
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issueNumber,
body: message
});

80
.github/workflows/pr_greetings.yml vendored Normal file
View file

@ -0,0 +1,80 @@
name: PR Greetings
on:
pull_request:
types: [opened]
pull_request_target:
types: [opened]
jobs:
greeting:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Check if the PR creator is the repo owner or Weblate
id: check_owner
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
PR_AUTHOR=$(jq -r '.pull_request.user.login' "$GITHUB_EVENT_PATH")
REPO_OWNER=$(jq -r '.repository.owner.login' "$GITHUB_EVENT_PATH")
if [ "$PR_AUTHOR" = "$REPO_OWNER" ] || [ "$PR_AUTHOR" = "weblate" ]; then
echo "The PR creator is the repository owner or Weblate. Skipping greeting message."
echo "skip=true" >> $GITHUB_ENV
else
echo "The PR creator is not the repository owner or Weblate. Checking for previous PRs..."
# Check for both open and closed pull requests by the author
OPEN_PRS=$(gh pr list --author "$PR_AUTHOR" --state open --json number --jq '. | length')
CLOSED_PRS=$(gh pr list --author "$PR_AUTHOR" --state closed --json number --jq '. | length')
TOTAL_PRS=$((OPEN_PRS + CLOSED_PRS))
echo "User $PR_AUTHOR has created $TOTAL_PRS pull request(s) in total"
echo "Open PRs: $OPEN_PRS"
echo "Closed PRs: $CLOSED_PRS"
if [ "$TOTAL_PRS" -eq 1 ]; then
echo "This is the user's first pull request. Sending greeting message."
echo "skip=false" >> $GITHUB_ENV
else
echo "User has previous pull requests. Skipping greeting message."
echo "skip=true" >> $GITHUB_ENV
fi
fi
- name: Send Greeting Message
if: env.skip != 'true'
uses: actions/github-script@v6
with:
script: |
const prNumber = context.payload.pull_request.number;
const message = `
**🎉 Thank you for your contribution!**
Your Pull Request has been successfully submitted and is now awaiting review. We truly appreciate your efforts to improve Dantotsu.
**👥 Connect with the Community**
While you're here, why not join our communities to stay engaged?
- **[Discord](https://discord.com/invite/4HPZ5nAWwM)**: Chat with fellow developers, ask questions, and get the latest updates.
- **[Telegram](https://t.me/dantotsuapp)**: Connect directly with us for real-time discussions and updates.
**📋 What to Expect Next**
- Our team will review your pull request as soon as possible.
- You'll receive notifications if further information or changes are needed.
- Once approved, your changes will be merged into the main project.
We're excited to collaborate with you. Stay tuned for updates!
`;
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: prNumber,
body: message
});