ci: add a license compliance check

This commit is contained in:
lauren n. liberda 2024-02-25 13:55:48 +01:00
parent 549291ab40
commit cd6294b421
No known key found for this signature in database
GPG key ID: 1613DD32FE28C3EA
4 changed files with 129 additions and 0 deletions

View file

@ -19,6 +19,8 @@ jobs:
run: dart format lib/ test/ --set-exit-if-changed
- name: Check import formatting
run: dart run import_sorter:main --no-comments --exit-if-changed
- name: Check license compliance
run: dart run license_checker check-licenses -c licenses.yaml --problematic
- run: flutter analyze
- name: Apply google services patch
run: git apply ./scripts/enable-android-google-services.patch

38
licenses.yaml Normal file
View file

@ -0,0 +1,38 @@
# This is a config for a license compliance checker script. It runs in CI.
#
# To run locally:
# dart run license_checker check-licenses -c licenses.yaml --problematic
#
# SPDX license list: https://spdx.org/licenses/
# Before you add a license here: Is it free software? Is it compatible with AGPL-3.0?
permittedLicenses:
- AGPL-3.0
- Apache-2.0
- BSD-2-Clause
- BSD-3-Clause
- EUPL-1.2
- MIT
- MPL-2.0
- Zlib
packageLicenseOverride:
dependency_validator: Apache-2.0
flutter_gen: MIT
hive: Apache-2.0
hive_flutter: Apache-2.0
latlong2: Apache-2.0
platform_detect: Apache-2.0
rxdart: Apache-2.0
# flutter's internal packages
flutter_driver: BSD-3-Clause
flutter_localizations: BSD-3-Clause
flutter_test: BSD-3-Clause
flutter_web_plugins: BSD-3-Clause
fuchsia_remote_debug_protocol: BSD-3-Clause
integration_test: BSD-3-Clause
sky_engine: BSD-3-Clause
rejectedLicenses:
- BUSL-1.1

View file

@ -1,6 +1,14 @@
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
_fe_analyzer_shared:
dependency: transitive
description:
name: _fe_analyzer_shared
sha256: ae92f5d747aee634b87f89d9946000c2de774be1d6ac3e58268224348cd0101a
url: "https://pub.dev"
source: hosted
version: "61.0.0"
adaptive_dialog:
dependency: "direct main"
description:
@ -9,6 +17,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.0"
analyzer:
dependency: transitive
description:
name: analyzer
sha256: ea3d8652bda62982addfd92fdc2d0214e5f82e43325104990d4f4c4a2a313562
url: "https://pub.dev"
source: hosted
version: "5.13.0"
animations:
dependency: "direct main"
description:
@ -73,6 +89,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "3.1.2"
barbecue:
dependency: transitive
description:
name: barbecue
sha256: e3a0afaf9005e466887d6c87411a2ddd8d72fc46db3caabf278ee600f1e2f92c
url: "https://pub.dev"
source: hosted
version: "0.4.0"
base58check:
dependency: transitive
description:
@ -177,6 +201,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.18.0"
colorize:
dependency: transitive
description:
name: colorize
sha256: "584746cd6ba1cba0633b6720f494fe6f9601c4170f0666c1579d2aa2a61071ba"
url: "https://pub.dev"
source: hosted
version: "3.0.0"
console:
dependency: transitive
description:
@ -1062,6 +1094,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.0.1"
license_checker:
dependency: "direct dev"
description:
name: license_checker
sha256: eea27638e42bc98fd91a6a8187eb57e5617e2c3c8b313a5d51b14bec7a8685e1
url: "https://pub.dev"
source: hosted
version: "1.6.0"
linkify:
dependency: "direct main"
description:
@ -1238,6 +1278,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.0.1"
pana:
dependency: transitive
description:
name: pana
sha256: "098eecfb7f80aecfff2395f9de1f19e31e7dc9a190708b75a1e708e6c2993c36"
url: "https://pub.dev"
source: hosted
version: "0.21.32"
pasteboard:
dependency: "direct main"
description:
@ -1590,6 +1638,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.0.10"
retry:
dependency: transitive
description:
name: retry
sha256: "822e118d5b3aafed083109c72d5f484c6dc66707885e07c0fbcb8b986bba7efc"
url: "https://pub.dev"
source: hosted
version: "3.1.2"
rxdart:
dependency: transitive
description:
@ -1598,6 +1654,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.27.7"
safe_url_check:
dependency: transitive
description:
name: safe_url_check
sha256: "49a3e060a7869cbafc8f4845ca1ecbbaaa53179980a32f4fdfeab1607e90f41d"
url: "https://pub.dev"
source: hosted
version: "1.1.2"
scroll_to_index:
dependency: "direct main"
description:
@ -1779,6 +1843,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.2.0"
string_validator:
dependency: transitive
description:
name: string_validator
sha256: "50dd8ecf91db6a732f4a851eeae81ee12406eedc62d0da72f2d91a04a2d10dd8"
url: "https://pub.dev"
source: hosted
version: "0.3.0"
swipe_to_action:
dependency: "direct main"
description:
@ -1803,6 +1875,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "3.1.0"
tar:
dependency: transitive
description:
name: tar
sha256: "85ffd53e277f2bac8afa2885e6b195e26937e9c402424c3d88d92fd920b56de9"
url: "https://pub.dev"
source: hosted
version: "0.5.6"
term_glyph:
dependency: transitive
description:
@ -2156,6 +2236,14 @@ packages:
url: "https://github.com/chandrabezzo/wakelock.git"
source: git
version: "0.2.2"
watcher:
dependency: transitive
description:
name: watcher
sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8"
url: "https://pub.dev"
source: hosted
version: "1.1.0"
web:
dependency: transitive
description:

View file

@ -104,6 +104,7 @@ dev_dependencies:
import_sorter: ^4.6.0
integration_test:
sdk: flutter
license_checker: ^1.6.0
msix: ^3.6.2
translations_cleaner: ^0.0.5