Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 59 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
name: 'bug report'
about: Create a bug report to help improve FilePod.
title: ''
labels: ''
assignees: ''

---

## Describe the Bug

[A clear and concise description of the bug.]

## To Reproduce

Steps to reproduce the behaviour:

1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

```bash
$ commands
...
```

## Expected Behaviour

[A clear and concise description of what you expected to happen.]

## Screenshots

[If applicable, add screenshots to help explain your problem.]

## Context

Where has the issue been observed:

- [ ] Android
- [ ] Chrome
- [ ] iOS
- [ ] Linux
- [ ] macOS
- [ ] Web
- [ ] Windows

[Add any other context about the problem here.]

App Version:
Flutter Version:

## Closing Criteria

Checklist for closing the issue:

- [ ] No errors from `make prep`
- [ ] All tests pass `make qtest`
- [ ] [Issue specific requirements.]
32 changes: 32 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
name: 'feature request'
about: Suggest an idea or feature improvement for FilePod.
title: ''
labels: ''
assignees: ''
---

## Description

[A clear and concise description of the problem or new functionality.]

## Why

So that as a user I can [clear and concise benefit].

## Closing Criteria

Checklist for closing the issue:

- [ ] No errors from `make prep`
- [ ] All tests pass `make qtest`
- [ ] [Issue specific requirements.]

## Alternatives

[A clear and concise description of any alternative solutions or
features you've considered.]

## Additional Context

[Add any other context or screenshots about the feature request here.]
54 changes: 54 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Pull Request Details

## What issue does this PR address

- [Description]

## Associated Issue

- This PR relates to issue #

## Type of Change

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] This change requires a documentation update

## How Has This Been Tested?

Please describe the tests that you ran to verify your changes.

## Checklist

Complete the check-list below to ensure your branch is ready for PR.

- [ ] Screenshots included in linked issue #
- [ ] Changes adhere to the [style and coding guidelines](https://survivor.togaware.com/gnulinux/flutter-style.html)
- [ ] I have performed a self-review of my code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] Any dependent changes have been merged and published in downstream modules
- [ ] The update contains no confidential information
- [ ] The update has no duplicated content
- [ ] No lint check errors are related to these changes (`make prep` or `flutter analyze lib`)
- [ ] Integration test `dart test` output or screenshot included in issue #
- [ ] I tested the PR on these devices:
- [ ] Android
- [ ] iOS
- [ ] Linux
- [ ] MacOS
- [ ] Windows
- [ ] Web
- [ ] I have identified reviewers
- [ ] The PR has been approved by reviewers

## Finalising

Once PR discussion is complete and reviewers have approved:

- [ ] Merge dev into the this branch
- [ ] Resolve any conflicts
- [ ] Add a one line summary into the CHANGELOG.md
- [ ] Push to the git repository and review
- [ ] Merge the PR into dev
133 changes: 133 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
name: Lint Checks

on:
push:
pull_request:
types: [opened, reopened, synchronize]

env:
FLUTTER_VERSION: '3.38.9'

jobs:

analyze:
runs-on: ubuntu-latest
if: github.event.repository.private == false
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: 'stable'
flutter-version: ${{env.FLUTTER_VERSION}}
- run: flutter pub get
- run: flutter analyze --fatal-infos

format:
runs-on: ubuntu-latest
if: github.event.repository.private == false
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: 'stable'
flutter-version: ${{env.FLUTTER_VERSION}}
- run: flutter pub get
- run: dart format --set-exit-if-changed .

unused_code:
runs-on: ubuntu-latest
if: github.event.repository.private == false
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: 'stable'
flutter-version: ${{env.FLUTTER_VERSION}}
- run: flutter pub get
- run: dart pub global activate dart_code_metrics
- run: metrics check-unused-code --disable-sunset-warning lib

unused_files:
runs-on: ubuntu-latest
if: github.event.repository.private == false
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: 'stable'
flutter-version: ${{env.FLUTTER_VERSION}}
- run: flutter pub get
- run: dart pub global activate dart_code_metrics
- run: metrics check-unused-files --disable-sunset-warning lib

import_order:
runs-on: ubuntu-latest
if: github.event.repository.private == false
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: 'stable'
flutter-version: ${{env.FLUTTER_VERSION}}
- run: flutter pub get
- run: dart pub global activate import_order_lint
- run: import_order --check

markdown:
runs-on: ubuntu-latest
if: github.event.repository.private == false
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- run: npm install -g markdownlint-cli
- run: markdownlint *.md lib assets

link_checker:
runs-on: ubuntu-latest
if: github.event.repository.private == false
permissions:
issues: write
steps:
- uses: actions/checkout@v4

- name: Link Checker
id: lychee
uses: lycheeverse/lychee-action@v2
with:
args:
--no-progress
'*.md'
'./**/*.dart'
fail: true

locmax:
runs-on: ubuntu-latest
if: github.event.repository.private == false
steps:
- uses: actions/checkout@v4
- run: make locmax

copyright:
runs-on: ubuntu-latest
if: github.event.repository.private == false
steps:
- uses: actions/checkout@v4
- name: Check copyright headers
run: |
missing_copyright=$(find lib -type f -name '*.dart' \
! -name '*.g.dart' \
! -name '*.gr.dart' \
! -name '*.freezed.dart' \
! -name '*.chopper.dart' \
! -name '*.part.dart' \
! -name '*.config.dart' \
-exec grep -L "Copyright" {} \;)
if [ -n "$missing_copyright" ]; then
echo "Files missing copyright headers:"
echo "$missing_copyright"
exit 1
else
echo "All non-generated Dart files have copyright headers"
fi
Loading
Loading