From e6852bfbaceccd1f93f3854e784ad24827cf3471 Mon Sep 17 00:00:00 2001 From: Eric Seidel Date: Mon, 19 Aug 2024 14:53:10 -0700 Subject: [PATCH] chore: add cspell checking to our CI (#2421) --- .github/workflows/main.yaml | 6 + NOTES_ON_CODEPUSH.md | 2 +- bin/shorebird.ps1 | 2 +- cspell.config.yaml | 109 ++++++++++++++++++ packages/jwt/test/src/jwt_test.dart | 9 +- packages/redis_client/CONTRIBUTING.md | 1 + .../test/src/redis_client_test.dart | 2 +- .../shorebird_cli/lib/src/android_studio.dart | 1 + .../endpoints/microsoft_auth_endpoints.dart | 1 + .../shorebird_cli/lib/src/code_signer.dart | 1 + .../lib/src/commands/patch/aar_patcher.dart | 2 +- .../commands/patch/ios_framework_patcher.dart | 2 +- .../lib/src/commands/preview_command.dart | 4 +- .../src/commands/release/release_command.dart | 2 +- .../lib/src/executables/ios_deploy.dart | 4 +- .../lib/src/extensions/arg_results.dart | 6 +- .../lib/src/extensions/string.dart | 2 +- .../lib/src/patch_diff_checker.dart | 2 +- .../shorebird_cli/lib/src/platform/ios.dart | 2 +- .../lib/src/shorebird_documentation.dart | 2 +- .../archive_analysis/file_set_diff_test.dart | 1 + .../test/src/artifact_manager_test.dart | 2 +- .../test/src/auth/auth_test.dart | 6 +- .../src/code_push_client_wrapper_test.dart | 20 ++-- .../test/src/code_signer_test.dart | 1 + .../src/commands/login_ci_command_test.dart | 2 +- .../patch/ios_framework_patcher_test.dart | 4 +- .../src/commands/patch/ios_patcher_test.dart | 2 +- .../release/release_command_test.dart | 2 +- .../devicectl/apple_device_test.dart | 4 +- .../test/src/executables/gradlew_test.dart | 2 +- .../test/src/executables/ios_deploy_test.dart | 2 +- .../test/src/extensions/arg_results_test.dart | 1 + .../src/shorebird_android_artifacts_test.dart | 1 + .../test/src/shorebird_flutter_test.dart | 3 +- .../test/src/shorebird_process_test.dart | 1 + .../shorebird_version_validator_test.dart | 2 +- .../test/src/code_push_client_test.dart | 2 +- 38 files changed, 173 insertions(+), 47 deletions(-) create mode 100644 cspell.config.yaml diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 5049584c..0ec63dc0 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -15,6 +15,12 @@ jobs: name: ✅ Semantic Pull Request uses: VeryGoodOpenSource/very_good_workflows/.github/workflows/semantic_pull_request.yml@v1 + cspell: + name: 🔤 Check Spelling + uses: VeryGoodOpenSource/very_good_workflows/.github/workflows/spell_check.yml@v1 + with: + config: cspell.config.yaml + changes: runs-on: ubuntu-latest diff --git a/NOTES_ON_CODEPUSH.md b/NOTES_ON_CODEPUSH.md index b5823dfb..73622fb7 100644 --- a/NOTES_ON_CODEPUSH.md +++ b/NOTES_ON_CODEPUSH.md @@ -1,6 +1,6 @@ # Code push Notes -Just place to keep running notes about our development of codepush for Flutter. +Just place to keep running notes about our development of code push for Flutter. ## Server push vs. code push diff --git a/bin/shorebird.ps1 b/bin/shorebird.ps1 index 7a034d98..fd567bb3 100644 --- a/bin/shorebird.ps1 +++ b/bin/shorebird.ps1 @@ -1,5 +1,5 @@ # This is the windows equivalent of the `third_party/flutter/bin/internal/shared.sh` script -# compiles `shorebird_cli/bin/shorebird_cli.dart` to `bin/cache/shorebird.shapshot` +# compiles `shorebird_cli/bin/shorebird_cli.dart` to `bin/cache/shorebird.snapshot` $ErrorActionPreference = "Stop" diff --git a/cspell.config.yaml b/cspell.config.yaml new file mode 100644 index 00000000..6790198f --- /dev/null +++ b/cspell.config.yaml @@ -0,0 +1,109 @@ +$schema: https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json +version: "0.2" +ignorePaths: + ["coverage", "bin/cache", "third_party", "build", "*.xcscheme", "fixtures"] +words: + - pubspec + - podfile + - Apks + - metadatas + - logcat + - mktemp + - gradlew + - bundletool + - genhtml + - sideload + - endtemplate + - mocktail + - libapp + - aarch + - codesign + - xcarchive + - xcrun + - vmcode + - xcodebuild + - sideloadable + - bryanoltman + - signup + - lerping + - precache + - devicectl + - exitcode + - writeln + - xcodeproj + - xcschemes + - xcshareddata + - armeabi + - cipd + - canvaskit + - libimobiledevice + - hotreload + - libflutter + - apigee + - pointycastle + - pkcs + - appbundle + - felangel + - bitcode + - xcscheme + - archs + - shorebirdtech + - aapt + - USERPROFILE + - LOCALAPPDATA + - Unpatchable + - multioption + - xcframework + - deflavored + - dylib + - libplist + - usbmuxd + - pwsh + - readlink + - unawaited + - NOAUTH + - WRONGPASS + - FLUSHALL + - pana + - idevicesyslog + - Entra + - xlink + - propertylistserialization + - Retryable + - storyboardc + - iphoneos + - lproj + - iokit + - backboardd + - dyld + - bintools + - codesigned + - codesigning + - previewable + - udid # Unique Device Identifier + - podspec + - exportoptions + - ANDROIDD + - propertylistserialization + - VCRUNTIME + - Oltman + - xcworkspace + - SIGSTOP + - lldb + - nserror + - sysroot + - RSAPKCS + - PRNG + - sideloaded + - Azul + - altool + - aabs + - upvote + - Verdana + - reinit + - allprojects # From gradle files + - aars # Android Archive + - orri # Arm64 instruction, Or Register with Immediate + - unmockable + - dorny # From .github dir, doesn't show up in "**" check? + - requirepass # From .github dir, doesn't show up in "**" check? \ No newline at end of file diff --git a/packages/jwt/test/src/jwt_test.dart b/packages/jwt/test/src/jwt_test.dart index 6bd9057d..4228324c 100644 --- a/packages/jwt/test/src/jwt_test.dart +++ b/packages/jwt/test/src/jwt_test.dart @@ -8,11 +8,11 @@ import 'package:path/path.dart' as p; import 'package:test/test.dart'; void main() { - const token = + const token = // cspell: disable-next-line '''eyJhbGciOiJSUzI1NiIsImtpZCI6ImMxMGM5MGJhNGMzNjYzNTE2ZTA3MDdkMGU5YTg5NDgxMDYyODUxNTgiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZS5jb20vbXktYXBwIiwiYXVkIjoibXktYXBwIiwiYXV0aF90aW1lIjoxNjQzNjg0MjY2LCJ1c2VyX2lkIjoiRzR1MzdXdk90dmVWR0pRb1pCWGpxcHVWazZWMiIsInN1YiI6Ikc0dTM3V3ZPdHZlVkdKUW9aQlhqcXB1Vms2VjIiLCJpYXQiOjE2NDM2ODQyNjYsImV4cCI6MTY0MzY4Nzg2NiwiZW1haWwiOiJ0ZXN0QGdtYWlsLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJmaXJlYmFzZSI6eyJpZGVudGl0aWVzIjp7ImVtYWlsIjpbInRlc3RAZ21haWwuY29tIl19LCJzaWduX2luX3Byb3ZpZGVyIjoicGFzc3dvcmQifX0.bUWnX_XmR1d9EmeFeYSsK_CHU1u9NPIHgyaQueZ6urYOtxvuL_QodjPl0c9CBJwctwPnxVyRmkeNCw0oF9xBgph0NApLL4FIG6vpDPZfW9txZBYr8xIvaqvmD0diACENAQdjRT2XmyEdQ2-U7SsTonybHmLoU9FMQTjAgw4NCALQvExfB6rtQ9GDsOBt1xoBkB3Vo7a5OmugZ1aHXF69b8As6137-Dggf5qx5R3oLRFovICMMesQziE3vGi-WKcbQxSeiD-9a6ShPAhk41XiyjFGDEOtUCQo63uwQnMw3g0KVtC6bzIyFq-E91vhxumxXzxPYC-kg7iUYiSZy7Y-Aw'''; - const tokenNoAuthTime = + const tokenNoAuthTime = // cspell: disable-next-line '''eyJhbGciOiJSUzI1NiIsImtpZCI6ImMxMGM5MGJhNGMzNjYzNTE2ZTA3MDdkMGU5YTg5NDgxMDYyODUxNTgiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZS5jb20vbXktYXBwIiwiYXVkIjoibXktYXBwIiwidXNlcl9pZCI6Ikc0dTM3V3ZPdHZlVkdKUW9aQlhqcXB1Vms2VjIiLCJzdWIiOiJHNHUzN1d2T3R2ZVZHSlFvWkJYanFwdVZrNlYyIiwiaWF0IjoxNjQzNjg0MjY2LCJleHAiOjE2NDM2ODc4NjYsImVtYWlsIjoidGVzdEBnbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiZmlyZWJhc2UiOnsiaWRlbnRpdGllcyI6eyJlbWFpbCI6WyJ0ZXN0QGdtYWlsLmNvbSJdfSwic2lnbl9pbl9wcm92aWRlciI6InBhc3N3b3JkIn19.ZWCadE43mUk43cPQdNCCi4WhDgB4ZsDT9rhPGQq_1uFPhzkVrCSRcjUhwkzH11VLap_MVurNvI_pGWbu9Z4CRPvGFzXPpuNveWy2qFPEa4jcM-R40vsbrP30vNnrp4PrmqgLar0vWs6FZ2g9fbjU8L1LaU5ik31OKSXufTIKn_hPHhyIC33tYTpWzG3Abq3H9EELHUXKW9nEcN8YYnOHAZ3A6ymb3DyBguhf2O-XAIlrn1WoxRRqlukFGSmprk7heonbVUTzoc3sIDZcC-Cj1U9wTee1NmqmU7v3SvpBRGnuXz-5rzSRHblyVxn_EEfCYwjsDUwetYpyFcCs5dqPlQ'''; - const tokenWithNoMatchingKid = + const tokenWithNoMatchingKid = // cspell: disable-next-line '''eyJhbGciOiJSUzI1NiIsImtpZCI6IjEyMzQiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZS5jb20vbXktYXBwIiwiYXVkIjoibXktYXBwIiwidXNlcl9pZCI6Ikc0dTM3V3ZPdHZlVkdKUW9aQlhqcXB1Vms2VjIiLCJzdWIiOiJHNHUzN1d2T3R2ZVZHSlFvWkJYanFwdVZrNlYyIiwiaWF0IjoxNjQzNjg0MjY2LCJleHAiOjE2NDM2ODc4NjYsImVtYWlsIjoidGVzdEBnbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiZmlyZWJhc2UiOnsiaWRlbnRpdGllcyI6eyJlbWFpbCI6WyJ0ZXN0QGdtYWlsLmNvbSJdfSwic2lnbl9pbl9wcm92aWRlciI6InBhc3N3b3JkIn19.RBAwg-Ttf36aDkVR97Rd50aMp-0yzk8do_4AUPFi9nEhKu0Ye8ox_9hdTBttJYxoOq0NbH2zz0JHSnSHqoTvCleVhoGqg8YghzH0NiqncPfDzi-IcRfy2K8CrOoXuqXaj3YWrbrzNWAYV46eFmvI2TmPO55AyFOjhvLpW-uf96ceOPjueZm8o5K2DZym86BAhSdShknONV2O7b2vW34TXf3UJdISs5p9z6Si4JOWGjbVPY45CO16ODdDxyUGUM2-IVQloB7bg0nMqQbIjKDoO5g9d1nguR2Z-YBiv0BX1MDWDlrBsMAzzRVaFlf6YQS1LKxu2tnMdCrBnK_Wvqt5sQ'''; const keyValuePublicKeysUrl = 'https://www.googleapis.com/robot/v1/metadata/x509/securetoken@system.gserviceaccount.com'; @@ -217,8 +217,9 @@ void main() { }); group('when key store is JWK store', () { - const token = + const token = // cspell: disable-next-line '''eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6InRSNHdrWWhIeEhvX3FlcHJTMDhDdXc4eGNPdyJ9.eyJ2ZXIiOiIyLjAiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vOTE4ODA0MGQtNmM2Ny00YzViLWIxMTItMzZhMzA0YjY2ZGFkL3YyLjAiLCJzdWIiOiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFKclpOMmI0eldUNzhQWFJEN2J6dkxrIiwiYXVkIjoiYzRhZjk1NjYtOGEzNi00MzQ4LWI0MTMtZGFiNjY1Yjg3MTdkIiwiZXhwIjoxNzA4NTQ2MDYwLCJpYXQiOjE3MDg0NTkzNjAsIm5iZiI6MTcwODQ1OTM2MCwiZW1haWwiOiJicnlhbm9sdG1hbkBob3RtYWlsLmNvbSIsInRpZCI6IjkxODgwNDBkLTZjNjctNGM1Yi1iMTEyLTM2YTMwNGI2NmRhZCIsImFpbyI6IkRtUE91OTNxdWlSNm9OYVBrMjl1dVFSTkhSN0NIS0V4VDlrSE5DamVJIUdpN3JMQks2SDZYYzdkUWl2ZmRxTVZ5VExuNDMxUWRaTXpPSHQqaDQ2NWViQTlBWE9RdzhOdlM3dzNTbFREWU9iOW52OGh2SHNDTXZqdlJJMzRaWXlPbiE2MHBUcXghWnVmeTF0VnRGMWp6VEVsQmlUTjRrOWJIU0RDUFZaU1BlaXNzYjFLdmhCamc4biFPUSptNWszSmZ3JCQifQ.PhZfpmMmhlW_w9P-EQjcA-DgD0Mxnufxgn6rsKlQYtRn2hmT8uGOlMpMthYIeYLhVPtQqPyHDdW-0GxJ3ROK6prlogvPt8SxY8lSiJ6a4XCNmGop-7MxWGkYhqnMw21TKiSsGIr5LSuD3b_5RK6uBipra0rf819Wlvp6JbXulGSHt9N_qyq8328npCHRYbIDOBcOgDjnPjDFp_pJ99-itCsM8OO0npZJZ64MmlENgEYswnOQYlCShF1HLQwes7uGuw8ZBik-XSu44iJKJ9u4Ai3BjpxYdMFmMZ-B4DpF3uWpFsK-X9tMbi23gwufu5X_6aqtZYRLg052M1SUaBiMUw'''; + // cspell: disable-next-line const audience = 'c4af9566-8a36-4348-b413-dab665b8717d'; const issuer = '''https://login.microsoftonline.com/9188040d-6c67-4c5b-b112-36a304b66dad/v2.0'''; diff --git a/packages/redis_client/CONTRIBUTING.md b/packages/redis_client/CONTRIBUTING.md index f1d74255..03186bcf 100644 --- a/packages/redis_client/CONTRIBUTING.md +++ b/packages/redis_client/CONTRIBUTING.md @@ -1,3 +1,4 @@ + # Contributing We are happy to accept contributions! diff --git a/packages/redis_client/test/src/redis_client_test.dart b/packages/redis_client/test/src/redis_client_test.dart index 77699f02..4817f381 100644 --- a/packages/redis_client/test/src/redis_client_test.dart +++ b/packages/redis_client/test/src/redis_client_test.dart @@ -250,7 +250,7 @@ void main() { }, }, }; - const other = {'qux': 'quux'}; + const other = {'qux': 'quux'}; // cspell:disable-line await expectLater(client.json.get(key: key), completion(isNull)); await expectLater(client.json.set(key: key, value: value), completes); await expectLater( diff --git a/packages/shorebird_cli/lib/src/android_studio.dart b/packages/shorebird_cli/lib/src/android_studio.dart index a8cc1fcf..80a31388 100644 --- a/packages/shorebird_cli/lib/src/android_studio.dart +++ b/packages/shorebird_cli/lib/src/android_studio.dart @@ -1,3 +1,4 @@ +// cspell:words Filesx import 'dart:io'; import 'package:collection/collection.dart'; diff --git a/packages/shorebird_cli/lib/src/auth/endpoints/microsoft_auth_endpoints.dart b/packages/shorebird_cli/lib/src/auth/endpoints/microsoft_auth_endpoints.dart index 3dc63e6f..dc1a5ae9 100644 --- a/packages/shorebird_cli/lib/src/auth/endpoints/microsoft_auth_endpoints.dart +++ b/packages/shorebird_cli/lib/src/auth/endpoints/microsoft_auth_endpoints.dart @@ -1,3 +1,4 @@ +// cspell:words microsoftonline import 'package:googleapis_auth/googleapis_auth.dart'; /// Endpoints for OAuth authentication with Azure/Entra/Microsoft. diff --git a/packages/shorebird_cli/lib/src/code_signer.dart b/packages/shorebird_cli/lib/src/code_signer.dart index 934b8ddd..ab3ce631 100644 --- a/packages/shorebird_cli/lib/src/code_signer.dart +++ b/packages/shorebird_cli/lib/src/code_signer.dart @@ -1,3 +1,4 @@ +// cspell:words dgst import 'dart:convert'; import 'dart:io'; import 'dart:typed_data'; diff --git a/packages/shorebird_cli/lib/src/commands/patch/aar_patcher.dart b/packages/shorebird_cli/lib/src/commands/patch/aar_patcher.dart index e0a923a0..6a1f4d5c 100644 --- a/packages/shorebird_cli/lib/src/commands/patch/aar_patcher.dart +++ b/packages/shorebird_cli/lib/src/commands/patch/aar_patcher.dart @@ -175,7 +175,7 @@ class AarPatcher extends Patcher { @override Future extractReleaseVersionFromArtifact(File artifact) { - // Not implemented - release verison must be specified by the user. + // Not implemented - release version must be specified by the user. throw UnimplementedError( 'Release version must be specified using --release-version.', ); diff --git a/packages/shorebird_cli/lib/src/commands/patch/ios_framework_patcher.dart b/packages/shorebird_cli/lib/src/commands/patch/ios_framework_patcher.dart index 9470eb27..52fd948a 100644 --- a/packages/shorebird_cli/lib/src/commands/patch/ios_framework_patcher.dart +++ b/packages/shorebird_cli/lib/src/commands/patch/ios_framework_patcher.dart @@ -221,7 +221,7 @@ class IosFrameworkPatcher extends Patcher { @override Future extractReleaseVersionFromArtifact(File artifact) { - // Not implemented - release verison must be specified by the user. + // Not implemented - release version must be specified by the user. throw UnimplementedError( 'Release version must be specified using --release-version.', ); diff --git a/packages/shorebird_cli/lib/src/commands/preview_command.dart b/packages/shorebird_cli/lib/src/commands/preview_command.dart index d3d2068d..b2fb5d5f 100644 --- a/packages/shorebird_cli/lib/src/commands/preview_command.dart +++ b/packages/shorebird_cli/lib/src/commands/preview_command.dart @@ -86,7 +86,7 @@ class PreviewCommand extends ShorebirdCommand { /// - Warn the user about the platform if that platform is not the one /// the user specified with `--platform`. /// - Error out if the user specified a platform that is not previewable. - void _assertPreviwableReleases({ + void _assertPreviewableReleases({ required Release releaseWithAllPlatforms, required Release release, }) { @@ -203,7 +203,7 @@ class PreviewCommand extends ShorebirdCommand { final releaseWithAllPlatforms = releasesWithAllPlatforms.firstWhere( (r) => r.id == release.id, ); - _assertPreviwableReleases( + _assertPreviewableReleases( releaseWithAllPlatforms: releaseWithAllPlatforms, release: release, ); diff --git a/packages/shorebird_cli/lib/src/commands/release/release_command.dart b/packages/shorebird_cli/lib/src/commands/release/release_command.dart index 9c06816e..8f56d052 100644 --- a/packages/shorebird_cli/lib/src/commands/release/release_command.dart +++ b/packages/shorebird_cli/lib/src/commands/release/release_command.dart @@ -485,7 +485,7 @@ ${summary.join('\n')} ); } - /// Instructions explaining how to patch the release that was just creatd. + /// Instructions explaining how to patch the release that was just created. void printPatchInstructions({ required Releaser releaser, required String releaseVersion, diff --git a/packages/shorebird_cli/lib/src/executables/ios_deploy.dart b/packages/shorebird_cli/lib/src/executables/ios_deploy.dart index 5cf571bb..2f71d6b9 100644 --- a/packages/shorebird_cli/lib/src/executables/ios_deploy.dart +++ b/packages/shorebird_cli/lib/src/executables/ios_deploy.dart @@ -300,7 +300,7 @@ Or run on an iOS simulator without code signing } catch (exception, stackTrace) { logger.detail('[ios-deploy] failed: $exception\n$stackTrace'); debuggerState = _DebuggerState.detached; - logger.err('[ios-deplay] failed: $exception'); + logger.err('[ios-deploy] failed: $exception'); return ExitCode.software.code; } } @@ -328,7 +328,7 @@ Or run on an iOS simulator without code signing } } -// Handles interpretting stdout line and logs errors accordingly. +// Handles interpreting stdout line and logs errors accordingly. // Always returns the original line. @visibleForTesting String detectFailures(String line, Logger logger) { diff --git a/packages/shorebird_cli/lib/src/extensions/arg_results.dart b/packages/shorebird_cli/lib/src/extensions/arg_results.dart index 1c4c59c5..30373e85 100644 --- a/packages/shorebird_cli/lib/src/extensions/arg_results.dart +++ b/packages/shorebird_cli/lib/src/extensions/arg_results.dart @@ -22,9 +22,9 @@ extension OptionFinder on ArgResults { return this[name] as String?; } - // We would ideally check for abbrevations here as well, but ArgResults + // We would ideally check for abbreviations here as well, but ArgResults // doesn't expose its parser (which we could use to get the list of - // [Options] being parsed) or an abbrevations map. + // [Options] being parsed) or an abbreviations map. final abbr = argParser.options.values .firstWhereOrNull((option) => option.name == name) ?.abbr; @@ -105,7 +105,7 @@ extension ForwardedArgs on ArgResults { bool _isPositionalArgPlatform(String arg) => ReleaseType.values.any((target) => target.cliName == arg); - /// All parsed args with the given name. Because of multioptions, there may + /// All parsed args with the given name. Because of multi-options, there may /// be multiple values for a single name, so we return a potentially empty /// [Iterable] instead of a [String?]. Iterable _argsNamed(String name) { diff --git a/packages/shorebird_cli/lib/src/extensions/string.dart b/packages/shorebird_cli/lib/src/extensions/string.dart index a67fefa4..4a8777e1 100644 --- a/packages/shorebird_cli/lib/src/extensions/string.dart +++ b/packages/shorebird_cli/lib/src/extensions/string.dart @@ -1,6 +1,6 @@ // ignore_for_file: public_member_api_docs -extension NullOrEmtpy on String? { +extension NullOrEmpty on String? { /// Returns `true` if this string is null or empty. bool get isNullOrEmpty => this == null || this!.isEmpty; } diff --git a/packages/shorebird_cli/lib/src/patch_diff_checker.dart b/packages/shorebird_cli/lib/src/patch_diff_checker.dart index 08fad159..2012827f 100644 --- a/packages/shorebird_cli/lib/src/patch_diff_checker.dart +++ b/packages/shorebird_cli/lib/src/patch_diff_checker.dart @@ -82,7 +82,7 @@ class PatchDiffChecker { ..info( yellow.wrap(''' -If you don't know why you're seeing this error, visit our troublshooting page at ${troubleshootingUrl.toLink()}'''), +If you don't know why you're seeing this error, visit our troubleshooting page at ${troubleshootingUrl.toLink()}'''), ); if (!allowNativeChanges) { diff --git a/packages/shorebird_cli/lib/src/platform/ios.dart b/packages/shorebird_cli/lib/src/platform/ios.dart index 62982275..185be427 100644 --- a/packages/shorebird_cli/lib/src/platform/ios.dart +++ b/packages/shorebird_cli/lib/src/platform/ios.dart @@ -166,7 +166,7 @@ class Ios { .toSet(); } - /// Parses the .xcsheme file to determine if it was created for an app + /// Parses the .xcscheme file to determine if it was created for an app /// extension. We don't want to include these schemes as app flavors. /// /// xcschemes are XML files that contain metadata about the scheme, including diff --git a/packages/shorebird_cli/lib/src/shorebird_documentation.dart b/packages/shorebird_cli/lib/src/shorebird_documentation.dart index 1a1290db..8b2a6139 100644 --- a/packages/shorebird_cli/lib/src/shorebird_documentation.dart +++ b/packages/shorebird_cli/lib/src/shorebird_documentation.dart @@ -20,7 +20,7 @@ const iOSLinkPercentageUrl = '$statusUrl#link-percentage-ios'; /// Link to the troubleshooting page on the Shorebird documentation. const troubleshootingUrl = '$docsUrl/troubleshooting'; -/// Link to the troubshooting section which covers the +/// Link to the troubleshooting section which covers the /// Unsupported class file major version const unsupportedClassFileVersionUrl = '$troubleshootingUrl#unsupported-class-file-major-version-65'; diff --git a/packages/shorebird_cli/test/src/archive_analysis/file_set_diff_test.dart b/packages/shorebird_cli/test/src/archive_analysis/file_set_diff_test.dart index c32a4cc2..476b8cd8 100644 --- a/packages/shorebird_cli/test/src/archive_analysis/file_set_diff_test.dart +++ b/packages/shorebird_cli/test/src/archive_analysis/file_set_diff_test.dart @@ -1,3 +1,4 @@ +// cspell:ignore asdf, qwer, zxcv import 'package:shorebird_cli/src/archive_analysis/archive_analysis.dart'; import 'package:test/test.dart'; diff --git a/packages/shorebird_cli/test/src/artifact_manager_test.dart b/packages/shorebird_cli/test/src/artifact_manager_test.dart index 99762712..f6d80d54 100644 --- a/packages/shorebird_cli/test/src/artifact_manager_test.dart +++ b/packages/shorebird_cli/test/src/artifact_manager_test.dart @@ -122,7 +122,7 @@ void main() { ); }); - test('throws error when patch artfiact file does not exist', () async { + test('throws error when patch artifact file does not exist', () async { await expectLater( () => runWithOverrides( () async => artifactManager.createDiff( diff --git a/packages/shorebird_cli/test/src/auth/auth_test.dart b/packages/shorebird_cli/test/src/auth/auth_test.dart index 3bb1492d..a41f83e1 100644 --- a/packages/shorebird_cli/test/src/auth/auth_test.dart +++ b/packages/shorebird_cli/test/src/auth/auth_test.dart @@ -119,7 +119,7 @@ void main() { }); group(Auth, () { - const idToken = + const idToken = // cspell:disable-next-line '''eyJhbGciOiJIUzI1NiIsImtpZCI6IjEyMzQiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhenAiOiI1MjMzMDIyMzMyOTMtZWlhNWFudG0wdGd2ZWsyNDB0NDZvcmN0a3RpYWJyZWsuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiI1MjMzMDIyMzMyOTMtZWlhNWFudG0wdGd2ZWsyNDB0NDZvcmN0a3RpYWJyZWsuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMjM0NSIsImhkIjoic2hvcmViaXJkLmRldiIsImVtYWlsIjoidGVzdEBlbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaWF0IjoxMjM0LCJleHAiOjY3ODl9.MYbITALvKsGYTYjw1o7AQ0ObkqRWVBSr9cFYJrvA46g'''; const refreshToken = 'shorebird-token'; const ciToken = CiToken( @@ -362,7 +362,7 @@ void main() { ), ); - const expiredIdToken = + const expiredIdToken = // cspell:disable-next-line '''eyJhbGciOiJIUzI1NiIsImtpZCI6IjEyMzQiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhenAiOiI1MjMzMDIyMzMyOTMtZWlhNWFudG0wdGd2ZWsyNDB0NDZvcmN0a3RpYWJyZWsuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiI1MjMzMDIyMzMyOTMtZWlhNWFudG0wdGd2ZWsyNDB0NDZvcmN0a3RpYWJyZWsuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMjM0NSIsImhkIjoic2hvcmViaXJkLmRldiIsImVtYWlsIjoidGVzdEBlbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaWF0IjoxMjM0LCJleHAiOjY3ODl9.MYbITALvKsGYTYjw1o7AQ0ObkqRWVBSr9cFYJrvA46g'''; final onRefreshCredentialsCalls = []; final expiredCredentials = oauth2.AccessCredentials( @@ -416,7 +416,7 @@ void main() { ), ); - const expiredIdToken = + const expiredIdToken = // cspell:disable-next-line '''eyJhbGciOiJIUzI1NiIsImtpZCI6IjEyMzQiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhenAiOiI1MjMzMDIyMzMyOTMtZWlhNWFudG0wdGd2ZWsyNDB0NDZvcmN0a3RpYWJyZWsuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiI1MjMzMDIyMzMyOTMtZWlhNWFudG0wdGd2ZWsyNDB0NDZvcmN0a3RpYWJyZWsuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMjM0NSIsImhkIjoic2hvcmViaXJkLmRldiIsImVtYWlsIjoidGVzdEBlbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaWF0IjoxMjM0LCJleHAiOjY3ODl9.MYbITALvKsGYTYjw1o7AQ0ObkqRWVBSr9cFYJrvA46g'''; final onRefreshCredentialsCalls = []; final expiredCredentials = oauth2.AccessCredentials( diff --git a/packages/shorebird_cli/test/src/code_push_client_wrapper_test.dart b/packages/shorebird_cli/test/src/code_push_client_wrapper_test.dart index b66d4ff3..5e6018ac 100644 --- a/packages/shorebird_cli/test/src/code_push_client_wrapper_test.dart +++ b/packages/shorebird_cli/test/src/code_push_client_wrapper_test.dart @@ -137,13 +137,13 @@ void main() { createdAt: DateTime(2023), updatedAt: DateTime(2023), ); - final partchArtifactBundle = PatchArtifactBundle( + final patchArtifactBundle = PatchArtifactBundle( arch: arch.arch, path: 'path', hash: '', size: 4, ); - final patchArtifactBundles = {arch: partchArtifactBundle}; + final patchArtifactBundles = {arch: patchArtifactBundle}; const archs = [Arch.arm64]; const releaseArtifact = ReleaseArtifact( id: 1, @@ -1332,7 +1332,7 @@ You can manage this release in the ${link(uri: uri, message: 'Shorebird Console' verifyNever(() => progress.fail(any())); }); - test('completes succesfully when a flavor is provided', () async { + test('completes successfully when a flavor is provided', () async { const flavorName = 'myFlavor'; when( () => codePushClient.createReleaseArtifact( @@ -1598,7 +1598,7 @@ You can manage this release in the ${link(uri: uri, message: 'Shorebird Console' verifyNever(() => progress.fail(any())); }); - test('completes succesfully when a flavor is provided', () async { + test('completes successfully when a flavor is provided', () async { const flavorName = 'myFlavor'; when( () => codePushClient.createReleaseArtifact( @@ -2139,11 +2139,11 @@ You can manage this release in the ${link(uri: uri, message: 'Shorebird Console' verify( () => codePushClient.createPatchArtifact( appId: appId, - artifactPath: partchArtifactBundle.path, + artifactPath: patchArtifactBundle.path, patchId: patchId, arch: arch.arch, platform: releasePlatform, - hash: partchArtifactBundle.hash, + hash: patchArtifactBundle.hash, ), ).called(1); }); @@ -2202,11 +2202,11 @@ You can manage this release in the ${link(uri: uri, message: 'Shorebird Console' verify( () => codePushClient.createPatchArtifact( appId: appId, - artifactPath: partchArtifactBundle.path, + artifactPath: patchArtifactBundle.path, patchId: patchId, arch: arch.arch, platform: releasePlatform, - hash: partchArtifactBundle.hash, + hash: patchArtifactBundle.hash, ), ).called(1); verify(() => codePushClient.getChannels(appId: appId)).called(1); @@ -2258,11 +2258,11 @@ You can manage this release in the ${link(uri: uri, message: 'Shorebird Console' verify( () => codePushClient.createPatchArtifact( appId: appId, - artifactPath: partchArtifactBundle.path, + artifactPath: patchArtifactBundle.path, patchId: patchId, arch: arch.arch, platform: releasePlatform, - hash: partchArtifactBundle.hash, + hash: patchArtifactBundle.hash, ), ).called(1); verify(() => codePushClient.getChannels(appId: appId)).called(1); diff --git a/packages/shorebird_cli/test/src/code_signer_test.dart b/packages/shorebird_cli/test/src/code_signer_test.dart index c19c9cc4..9ff00d75 100644 --- a/packages/shorebird_cli/test/src/code_signer_test.dart +++ b/packages/shorebird_cli/test/src/code_signer_test.dart @@ -1,3 +1,4 @@ +// cspell:words pubin dgst outform import 'dart:convert'; import 'dart:io'; diff --git a/packages/shorebird_cli/test/src/commands/login_ci_command_test.dart b/packages/shorebird_cli/test/src/commands/login_ci_command_test.dart index 9db14da7..8f0abf23 100644 --- a/packages/shorebird_cli/test/src/commands/login_ci_command_test.dart +++ b/packages/shorebird_cli/test/src/commands/login_ci_command_test.dart @@ -155,7 +155,7 @@ void main() { test('exits with code 0 when logged in successfully', () async { const token = CiToken( // "shorebird-token" in base64 - refreshToken: 'c2hvcmViaXJkLXRva2Vu', + refreshToken: 'c2hvcmViaXJkLXRva2Vu', // cspell:disable-line authProvider: AuthProvider.google, ); when( diff --git a/packages/shorebird_cli/test/src/commands/patch/ios_framework_patcher_test.dart b/packages/shorebird_cli/test/src/commands/patch/ios_framework_patcher_test.dart index e2870266..7e7a7711 100644 --- a/packages/shorebird_cli/test/src/commands/patch/ios_framework_patcher_test.dart +++ b/packages/shorebird_cli/test/src/commands/patch/ios_framework_patcher_test.dart @@ -441,9 +441,9 @@ void main() { }); group('createPatchArtifacts', () { - const postLinkerFlutterRevision = + const postLinkerFlutterRevision = // cspell: disable-next-line 'deadbeefdeadbeefdeadbeefdeadbeefdeadbeef'; - const preLinkerFlutterRevision = + const preLinkerFlutterRevision = // cspell: disable-next-line '83305b5088e6fe327fb3334a73ff190828d85713'; const appId = 'appId'; const arch = 'aarch64'; diff --git a/packages/shorebird_cli/test/src/commands/patch/ios_patcher_test.dart b/packages/shorebird_cli/test/src/commands/patch/ios_patcher_test.dart index 15026a0e..c1c9adf2 100644 --- a/packages/shorebird_cli/test/src/commands/patch/ios_patcher_test.dart +++ b/packages/shorebird_cli/test/src/commands/patch/ios_patcher_test.dart @@ -774,7 +774,7 @@ For more information see: ${supportedFlutterVersionsUrl.toLink()}''', }); group('createPatchArtifacts', () { - const postLinkerFlutterRevision = + const postLinkerFlutterRevision = // cspell: disable-next-line 'deadbeefdeadbeefdeadbeefdeadbeefdeadbeef'; const preLinkerFlutterRevision = '83305b5088e6fe327fb3334a73ff190828d85713'; diff --git a/packages/shorebird_cli/test/src/commands/release/release_command_test.dart b/packages/shorebird_cli/test/src/commands/release/release_command_test.dart index 65628220..c80710d2 100644 --- a/packages/shorebird_cli/test/src/commands/release/release_command_test.dart +++ b/packages/shorebird_cli/test/src/commands/release/release_command_test.dart @@ -521,7 +521,7 @@ $exception''', }); }); - group('when flutter-verison is a git hash', () { + group('when flutter-version is a git hash', () { const revision = 'deadbeef'; setUp(() { when(() => argResults['flutter-version']).thenReturn(revision); diff --git a/packages/shorebird_cli/test/src/executables/devicectl/apple_device_test.dart b/packages/shorebird_cli/test/src/executables/devicectl/apple_device_test.dart index b3cbf2e9..503e442d 100644 --- a/packages/shorebird_cli/test/src/executables/devicectl/apple_device_test.dart +++ b/packages/shorebird_cli/test/src/executables/devicectl/apple_device_test.dart @@ -45,12 +45,12 @@ void main() { }); }); - group('when version string not parseable', () { + group('when version string not parsable', () { setUp(() { device = const AppleDevice( deviceProperties: DeviceProperties( name: deviceName, - osVersionNumber: 'unparseable version number', + osVersionNumber: 'unparsable version number', ), hardwareProperties: hardwareProperties, connectionProperties: connectionProperties, diff --git a/packages/shorebird_cli/test/src/executables/gradlew_test.dart b/packages/shorebird_cli/test/src/executables/gradlew_test.dart index 25a6af78..fa1fd5a9 100644 --- a/packages/shorebird_cli/test/src/executables/gradlew_test.dart +++ b/packages/shorebird_cli/test/src/executables/gradlew_test.dart @@ -305,7 +305,7 @@ BUILD FAILED in 3s }); group( - 'when flavors are mixed, starting with upper case, finishin with camel', + 'when flavors are mixed, starting with upper case, finishing with camel', () { test( 'extracts flavors', diff --git a/packages/shorebird_cli/test/src/executables/ios_deploy_test.dart b/packages/shorebird_cli/test/src/executables/ios_deploy_test.dart index 1f35a186..27ad7560 100644 --- a/packages/shorebird_cli/test/src/executables/ios_deploy_test.dart +++ b/packages/shorebird_cli/test/src/executables/ios_deploy_test.dart @@ -139,7 +139,7 @@ void main() { bundlePath, ]), ).called(1); - verify(() => logger.err('[ios-deplay] failed: $exception')).called(1); + verify(() => logger.err('[ios-deploy] failed: $exception')).called(1); }); test('dumps backtrace on process stopped', () async { diff --git a/packages/shorebird_cli/test/src/extensions/arg_results_test.dart b/packages/shorebird_cli/test/src/extensions/arg_results_test.dart index 6156295d..6d46f37a 100644 --- a/packages/shorebird_cli/test/src/extensions/arg_results_test.dart +++ b/packages/shorebird_cli/test/src/extensions/arg_results_test.dart @@ -1,3 +1,4 @@ +// cspell:ignore qwer import 'package:args/args.dart'; import 'package:shorebird_cli/src/common_arguments.dart'; import 'package:shorebird_cli/src/extensions/arg_results.dart'; diff --git a/packages/shorebird_cli/test/src/shorebird_android_artifacts_test.dart b/packages/shorebird_cli/test/src/shorebird_android_artifacts_test.dart index fb46690a..17f75178 100644 --- a/packages/shorebird_cli/test/src/shorebird_android_artifacts_test.dart +++ b/packages/shorebird_cli/test/src/shorebird_android_artifacts_test.dart @@ -1,3 +1,4 @@ +// cspell:words stableplaystore stableglobal import 'dart:io'; import 'package:archive/archive_io.dart'; diff --git a/packages/shorebird_cli/test/src/shorebird_flutter_test.dart b/packages/shorebird_cli/test/src/shorebird_flutter_test.dart index 9fe0f31e..0b67f102 100644 --- a/packages/shorebird_cli/test/src/shorebird_flutter_test.dart +++ b/packages/shorebird_cli/test/src/shorebird_flutter_test.dart @@ -1,3 +1,4 @@ +// cspell:words revis import 'dart:io'; import 'package:mason_logger/mason_logger.dart'; @@ -911,7 +912,7 @@ origin/flutter_release/3.10.6'''; }); group('formatVersion', () { - test('returns the correct formated value', () { + test('returns the correct formatted value', () { expect( runWithOverrides( () => shorebirdFlutter.formatVersion( diff --git a/packages/shorebird_cli/test/src/shorebird_process_test.dart b/packages/shorebird_cli/test/src/shorebird_process_test.dart index 63332d5e..73daeae1 100644 --- a/packages/shorebird_cli/test/src/shorebird_process_test.dart +++ b/packages/shorebird_cli/test/src/shorebird_process_test.dart @@ -1,3 +1,4 @@ +// cspell:ignore asdfasdf import 'dart:io'; import 'package:mason_logger/mason_logger.dart'; diff --git a/packages/shorebird_cli/test/src/validators/shorebird_version_validator_test.dart b/packages/shorebird_cli/test/src/validators/shorebird_version_validator_test.dart index 813ff7dd..f213a066 100644 --- a/packages/shorebird_cli/test/src/validators/shorebird_version_validator_test.dart +++ b/packages/shorebird_cli/test/src/validators/shorebird_version_validator_test.dart @@ -47,7 +47,7 @@ void main() { expect(results, isEmpty); }); - test('retursn an error when shorebird version cannot be determined', + test('returns an error when shorebird version cannot be determined', () async { when(shorebirdVersion.isLatest).thenThrow( const ProcessException('git', ['rev-parse', 'HEAD']), diff --git a/packages/shorebird_code_push_client/test/src/code_push_client_test.dart b/packages/shorebird_code_push_client/test/src/code_push_client_test.dart index b064d7b4..30da2c53 100644 --- a/packages/shorebird_code_push_client/test/src/code_push_client_test.dart +++ b/packages/shorebird_code_push_client/test/src/code_push_client_test.dart @@ -116,7 +116,7 @@ void main() { expect(request.hasHeaders(expectedHeaders), isTrue); }); - test('returns null if reponse is a 404', () async { + test('returns null if response is a 404', () async { when(() => httpClient.send(any())).thenAnswer( (_) async => http.StreamedResponse( const Stream.empty(),