Skip to content
Draft
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
36 changes: 29 additions & 7 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,44 @@
name: Test and Analyze
name: Release quality

on:
push:
branches: [ "main" ]
branches: ["main"]
pull_request:
branches: [ "main" ]
branches: ["main"]

jobs:
build:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: 'stable'
channel: stable
- name: Install dependencies
run: dart pub get
- name: Check formatting
run: dart format --output=none --set-exit-if-changed lib test tool example/lib example/test
- name: Analyze code
run: dart analyze
- name: Run tests
run: dart test
- name: Run pure Dart smoke test
run: dart run tool/pure_dart_smoke.dart
- name: Run package tests with coverage
run: |
dart test --coverage=coverage
dart run coverage:format_coverage \
--lcov \
--in=coverage \
--out=coverage/lcov.info \
--packages=.dart_tool/package_config.json \
--report-on=lib
dart run tool/check_coverage.dart coverage/lcov.info 95
- name: Analyze and test example application
working-directory: example
run: |
flutter pub get
flutter analyze
flutter test
- name: Generate API documentation
run: dart doc --output=/tmp/flutter_validators_api
- name: Validate pub package
run: dart pub publish --dry-run
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
.pub-cache/
.pub/
build/
coverage/

# Android related
**/android/**/gradle-wrapper.jar
Expand Down
3 changes: 3 additions & 0 deletions .pubignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,6 @@ example/.dart_tool/
test_output.log
assets/
build/
coverage/
test/
tool/
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
## 1.3.0

* Added generic `FieldValidator<T>` composition with `compose`, `aggregate`,
`any`, conditional rules, transforms, and fluent chaining.
* Added dependency-free `ValidationMessage` resolution with runtime locale
switching and explicit-message precedence.
* Added opt-in strict JWT, Base32, credit-card, URL, email, FQDN, UUID, and
ISO-8601 calendar validation without changing 1.2 defaults.
* Added numeric range rules; date and time rules; text boundaries and word
counts; IBAN, BIC, CVC, and card-expiry checks; ISBN-10/13; hash, MIME, and
data-URI validation.
* Expanded form factories, documentation, migration guides, executable
examples, adversarial tests, and release-quality CI checks.

## 1.2.0

* Added 21 new validators inspired by validator.js: `isLowercase`, `isUppercase`,
Expand Down
Loading
Loading