450 Commits

Author SHA1 Message Date
abb2e34ce2 Disable SwiftPM for xcode-analyze (#9666)
Until https://github.com/flutter/flutter/issues/172427 is resolved, `xcode-analyze` doesn't work as desired with SwiftPM enabled (it analyzes only the test code, not the plugin code). To avoid losing analysis coverage in the meantime, this disabled SwiftPM temporarily while running analysis.

This PR also updates `build-examples` to use the newer pubspec-based config option to set the SwiftPM flag state instead of setting global state, to avoid future issues where we are unintentionally bleeding flag changes across different tests, and to make local runs not impact developer machine state.

To unit test this functionality, this adds a new feature to the existing process mock system that allows running an arbitrary test callback at the ponit where a process is being run, which in this case allows reading the temporarily-modified pubspec contents at the right point in the command execution.

Fixes https://github.com/flutter/flutter/issues/171442

## Pre-Review Checklist

**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
2025-08-18 12:35:15 +00:00
35eed056ce Update repo for 3.35 stable release (#9816)
Does the steps listed at https://github.com/flutter/flutter/blob/master/docs/ecosystem/release/Updating-Packages-repo-for-a-stable-release.md for the 3.35 release.

This makes the minimum supported version for all packages Dart 3.7, which means it picks up the new formatter. As a result, there are massive amounts of code changes; all of it is just the result of running `dart format` after changing the min SDK version.
2025-08-16 21:38:25 +00:00
6efb75994f [camera_android_camerax] Re-land "Force new Surface for each SurfaceRequest" (#9760)
> [!IMPORTANT]  
> **(DONE  in https://github.com/flutter/flutter/pull/172384)**
> https://github.com/flutter/flutter/pull/169899 must be rolled into packages AND be in Flutter stable for this to land. I will try to cherry-pick this change into 3.32 stable once the 3.35 beta is cut.

> [!NOTE]
> Several files are not changed but simply formatted as a result of the bumped Flutter/Dart versions for `camera_android_camerax` that include https://github.com/flutter/flutter/pull/171703. I will comment on these files for clarity.

Re-lands https://github.com/flutter/packages/pull/9360.

Since timing for `Surface` requests cannot be guaranteed, request a new `Surface` from `SurfaceProducer.getSurface` each time a `Surface` is requested for rendering the camera preview to.

Fixes https://github.com/flutter/flutter/issues/155294.
Fixes https://github.com/flutter/flutter/issues/169506.

## Pre-Review Checklist

**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
2025-08-06 19:18:06 +00:00
1a722878a5 Add an initial AGENTS.md (#9716)
First attempt at an AGENTS.md file to make Jules more effective at
creating PRs.

I started with an initial draft, then iterated based on feedback from
Gemini Code Assist, taking most of its suggestions (under the theory
that it has more examples of AGENTS.md files in its model than I do),
but removing some hallucinations.

I was going to put the "Agent Environment Setup" in a separate file, so
that people could manually add it to their Jules configuration, but
Gemini found that file and thought it should be in AGENTS.md. I'm
curious to see if that will work well enough that we don't each need to
do the manual one-time configuration. If it doesn't work, we can move it
later.

🤷🏻
2025-08-01 17:25:11 -04:00
db6988d785 [tool] Remove web drive hot reload workaround (#9704)
flutter drive for web should no longer need this workaround.

See dart-lang/sdk#60289
See flutter/flutter#170612

Add charset to some index.html files which is needed in the new DDC module system.
2025-07-31 12:56:33 +00:00
93d241b373 [ci] Add Gemini Code Assist review config (#9632)
This adds initial configuration files for [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code) in preparation for turing it on for this repository on a trial basis. These config files are based on [the official docs](https://developers.google.com/gemini-code-assist/docs/customize-gemini-behavior-github)

It also adds a note to the PR template to provide some notice/guidance to contributors about how to use automated feedback, to clarify the role of the automated reviews and hopefully minimize potential issues in case the bot leaves incorrect feedback.
2025-07-16 19:03:12 +00:00
42b18574b6 [tool] Remove Android x86 compilation (#9572)
Remvoe x86 from the ABI set when compiling Android integration tests, as x86 is no longer supported for Flutter builds.

See https://github.com/flutter/flutter/pull/170191
2025-07-07 18:23:39 +00:00
111ceb7040 [tool] Use swift-format from Xcode (#9460)
As of Xcode 16, `swift-format` is part of the Xcode distribution. Since CI now uses Xcode 16, we can just always use that version.

This:
- Removes the `swift-format-path` logic.
- Removes the check for `swift-format` being available
- Defaults Swift formatting to true only on macOS
- Removes the `swift-format` CIPD package from .ci.yaml
- Updates Pigeon in packages using Swift Pigeon generation to pick up a fix for a lint issue picked up by the latest version of `swift-format` (which was already fixed in Pigeon).

Fixes https://github.com/flutter/flutter/issues/153803

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
2025-06-26 14:57:56 +00:00
f1636dbd1b Roll Flutter master to 7e30df2225 (#9413)
Rolls Flutter master pin to 7e30df2225f65141e0227e424986311b79d39505

8b22f67c85...7e30df2225
2025-06-10 21:23:30 +00:00
ecba2dbf07 Bump create_all_packages_command CompileSdk to 36 (#9293)
Bumps the `create_all_packages_command` `compileSdk` to 36. The test targets will test against the bump.

Partially Adresses https://github.com/flutter/flutter/issues/163071

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
2025-06-04 18:33:19 +00:00
6e2acf7b62 [all_packages] Bump compileSdk version to 35 (#9168)
Bumps `all_packages` app to build with `compileSdk` version 35. Then,

- Updates the Gradle and AGP versions to support this new Android SDK version
- Refactors the legacy all_packages CI build target such that the regular `all_packages` CI build targets (master, stable) will build both the modern `all_packages` app and the legacy version with the same JDK 17 version, since the legacy version now also requires it (example successful builds: [master](https://ci.chromium.org/ui/p/flutter/builders/try/Linux_android%20android_build_all_packages%20master/17102/overview), [stable](https://ci.chromium.org/ui/p/flutter/builders/try/Linux_android%20android_build_all_packages%20stable/17086/overview))
- Updates legacy `all_packages` app `README.md` to more accurately describe how the app was transformed since its creation

Prompted by https://github.com/flutter/packages/pull/8414.

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
2025-05-30 16:23:19 +00:00
5a7d40f877 Update repo for 3.32 stable (#9311)
Does all of the steps from https://github.com/flutter/flutter/blob/master/docs/ecosystem/release/Updating-Packages-repo-for-a-stable-release.md for the 3.32 stable release (except the first one, as the stable roller has already landed).
2025-05-23 10:59:51 +00:00
e8c99766e4 [ci] Update repository for 3.29 release (#9270)
We accidentally never did the repo update for the 3.29 release, beyond rolling the stable pin. This does the remainder of the steps from https://github.com/flutter/flutter/blob/master/docs/ecosystem/release/Updating-Packages-repo-for-a-stable-release.md, making 3.24 our min-min version, and updating the N-1 and N-2 tests to reflect the current reality.
2025-05-21 19:28:24 +00:00
69889c9bde Ignore .cxx/ directories (#9268)
Android builds now create .cxx directories in some cases; this has been added to the app template's ignore file, so should be ignored here as well. As is generally the case for this repo, we ignore it at the root level instead of updating every package.
2025-05-21 18:36:40 +00:00
fdc1ec7c1c [tool] Add initial file-based command skipping (#8928)
Adds initial file-based filtering. This does not attempt to be comprehensive, just to get some low-hanging fruit, and to create a blueprint for anyone to follow in the future when adding more filtering. I expect that once this is in place, what will happen is that as we notice cases where PRs are hitting slow or flaky tests that they clearly don't need to, we can incrementally improve the filtering on demand.

Fixes https://github.com/flutter/flutter/issues/136394
2025-04-18 14:19:25 +00:00
26d11f40a5 [tool] Run config-only build for iOS/macOS native-test (#9080)
Follow-up to https://github.com/flutter/packages/pull/9075. On iOS and
macOS, `native-test` also requires an unconditional project file
generatino in debug mode now, to ensure that the debug Xcode build of
the tests will not fail due to a build mode mismatch.

Unblocks the flutter/flutter->flutter/packages roller.
2025-04-15 15:23:54 -07:00
57a9a9b68c [tool] Run a config-only build before Xcode analyze (#9075)
Currently xcode-analyze relies on the native project files already having been generated. This is unreliably locally, and now is problematic on CI as well since Xcode builds now (as of https://github.com/flutter/flutter/pull/165916) must match the last build mode, so analysis will fail if the previous CI step built in release mode (as is currently the case).

This adds a config-only build call in debug mode before analyzing. Since running a config-only build is a common operation in the tool, this extracts a helper to abstract the logic.

Unblocks the flutter/flutter->flutter/packages roller.
2025-04-14 22:54:32 +00:00
4a36dc63f7 [all_packages] Enforce property assignment for compile sdk over method assignment (#8897)
No issue I just noticed that we were almost consistent in our approach to compileSdk.
2025-04-03 16:46:04 +00:00
8c287e99d6 [tool] Move changed file detection to base command class (#8730)
Consolidates the code to find all changed file paths into the `PackageLoopingCommand` class that is the base of almost all of the repo tooling commands. This in a preparatory PR for a future change to allow each command to define a list of files or file patterns that definitively *don't* affect that test, so that CI can be smarter about what tests to run (e.g., not running expensive integration tests for README changes).

A side effect of this change is that tests of almost all commands now need a mock `GitDir` instance. This would add a lot of copy/pasted boilerplate to the test setup, and there is already too much of that, so instead this refactors common test setup:
- Creating a memory file system
- Populating it with a packages directory
- Creating a RecordingProcessRunner to mock out process calls
- Creating a mock GitDir that forwards to a RecordingProcessRunner

into a helper method (using records and destructuring to easily return multiple values). While some tests don't need all of these steps, those that don't can easily ignore parts of it, and it will make it much easier to update tests in the future if they need them, and it makes the setup much more consistent which makes it easier to reason about test setup in general.

Prep for https://github.com/flutter/flutter/issues/136394
2025-03-25 21:29:17 +00:00
a96509acdc [tool] Validate gradle compileSdk (#8761)
Checks that plugins use `compileSdk` rather than the deprecated `compileSdkVersion`, and that if they set it to
`flutter.compileSdkVersion` they require at least Flutter 3.27.

Would have prevented https://github.com/flutter/flutter/issues/164362
2025-02-28 17:44:19 +00:00
b5e8daa5c1 Manual roll Flutter from 911aa7547ed7 to 043b71954ce7 (#8693)
https://github.com/flutter/packages/pull/8692 with fixes for indirect effects of `--explicit-package-dependencies`
2025-02-27 03:10:37 +00:00
804b3cac19 [tool] Update targetsdk version to 35 from 32 (#8694)
part of #flutter/flutter/issues/14983

This is just a test usage but it came up in my search for older versions of android being used.
2025-02-26 19:41:06 +00:00
45c19974b6 [tool] Add --xcode-warnings-exceptions flag (#8524)
Today, we treat Xcode warnings as errors on all iOS and macOS plugins.

However, the google_sign_in_ios plugin has dependencies with warnings. We're unable to suppress these warnings when using Swift Package Manager. As a workaround, we'll need to disable Xcode warnings for the google_sign_in_ios plugin. This will be done in a subsequent pull request (see https://github.com/flutter/packages/pull/7356).

This change introduces `--xcode-warnings-exceptions` to the `native-test` command. When running Xcode test, `GCC_TREAT_WARNINGS_AS_ERRORS` will be provided only if the plugin isn't on the exception list.

Additionally, plugins that are the exception list are excluded from the `xcode-analyze` command.

Part of https://github.com/flutter/flutter/issues/146904
2025-01-31 22:10:21 +00:00
bc8c522bba [tool] Ensure that injected dependency overrides are sorted (#8542)
Updates `make-deps-path-based` to manually output dependency overrides in sorted order, as `YamlMap` apparently doesn't have a defined output ordering, leading to CI analysis failures in some cases.

Fixes https://github.com/flutter/flutter/issues/160810
2025-01-31 19:52:32 +00:00
b66b6d632c Re-land [shared_preferences] Add shared preferences devtool (#8531)
Re-re-lands https://github.com/flutter/packages/pull/8494 with a change to remove `--ignored` from the `git status` check in the repo tooling `publish` command, which is what caused the `release` failure in the last landing. `pub publish` has ignored files in `.gitignore` for years, so there's no longer any value in checking that they don't exist.

I've verified that `publish --dry-run` passes locally with this change. Server-only check failures could still potentially cause another revert, but those can't be found other than the hard way.
2025-01-29 23:06:04 +00:00
ef7e0d5076 [tool] Refactor args of strings or YAML file lists (#8513)
Multiple commands in the Flutter plugin tool have arguments that accepts a list of strings or a list of YAML files that contain a list of strings. This introduces a `getYamlListArg` helper so that this logic doesn't need to be duplicated multiple times. 

In a subsequent pull requests, this will be used to add a list of packages that are allowed to have Xcode warnings. This will be used by the google_sign_in_ios package which will have warnings when using SwiftPM.

Part of: https://github.com/flutter/flutter/issues/146904
2025-01-29 00:48:29 +00:00
3d3ab7bcb0 [tool] Allow blank lines in federated package changes (#8468)
Currently the special-casing for allowing comment-only changes to other packages in a plugin group as part of a single PR, which is necessary for some changes to add `// ignore` directives, allows comment lines, but not blank lines. Blank lines should be allowed since they are safe, and are expected for certain changes (notably, temporary file-level ignores).
2025-01-21 20:25:21 +00:00
11a9fa8bf6 [ci] Run web tests in wasm (unit + integration). (#8111)
Adds CI configuration to run web integration tests (in the master channel) compiled to Wasm.

It also removes the `build-examples` step from web integration tests, in some isolated testing:

| platform tests shard | With build-examples | Without build-examples |
|---|-----|-----|
| 1 | 30m | 21m |
| 2 | 13m | 11m |
| 3 | 17m | 10m |

## Issues

* Fixes https://github.com/flutter/flutter/issues/151664
2025-01-07 22:12:51 +00:00
2e313dbf89 [tool] Ensure that leak_tracker_flutter_testing is dev-only (#8365)
Adds `leak_tracker_flutter_testing` to the list of dependencies that can only be added to `dev_dependencies`.
2025-01-02 20:11:22 +00:00
9452472502 Update Gradle Command Test to Only Accept Gradle Declarative Apply (#8325)
Currently the tests accept both the old gradle imperative apply and the gradle declarative apply. Since all plugins have been migrated to the gradle declarative apply, we want all exmple app plugins to reflect that and only accept gradle declarative apply. 

Fixes https://github.com/flutter/flutter/issues/152656
Fixes https://github.com/flutter/flutter/issues/157660
2024-12-26 20:46:22 +00:00
dcf789f424 [ci] Cumulative fixes to reopen the tree. (#8344)
This PR fixes a couple of issues that have popped up in the CI of the tree in the last couple of days:

1. Disables some Android video_player tests that require network access.
2. Fixes our internal tool after a breaking change was made in an upstream dependency.

## Issues

* Mitigates https://github.com/flutter/flutter/issues/160797
* Fixes https://github.com/flutter/flutter/issues/160799
2024-12-23 23:24:22 +00:00
a77fb8171c [ci] Update for 3.27 stable release (#8284)
Updates CI with the steps from [the stable release playbook](https://github.com/flutter/flutter/blob/master/docs/ecosystem/release/Updating-Packages-repo-for-a-stable-release.md) to account for the new 3.27 stable release.
2024-12-12 21:48:38 +00:00
71a2e703a9 [pigeon] adds event channel support for kotlin and swift (#7892)
adds event channel support for kotlin and swift 
work towards https://github.com/flutter/flutter/issues/66711
adds sealed classes with extensions (empty base classes only)
fixes https://github.com/flutter/flutter/issues/155859 (Fix a small inconsistency with Pigeon docs)
adds some convenience methods to Root
fixes generation/format tests to include test pigeons
Makes swift codec class names upper camel case
2024-12-05 03:32:11 +00:00
fb8a5e17d1 [tools] Don't check license of generated Swift package (#8137)
This updates the license check to ignore any file contained in a `FlutterGeneratedPluginSwiftPackage` directory.

https://github.com/flutter/packages/pull/8128 was reverted as it caused the license check to [fail](https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8730732827684094689/+/u/Run_package_tests/license_validation/stdout):

```
The license block for these files is missing or incorrect:
  /b/s/w/ir/x/w/packages/packages/url_launcher/url_launcher/example/ios/Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage/Package.swift
  /b/s/w/ir/x/w/packages/packages/url_launcher/url_launcher/example/ios/Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage/Sources/FlutterGeneratedPluginSwiftPackage/FlutterGeneratedPluginSwiftPackage.swift
  /b/s/w/ir/x/w/packages/packages/url_launcher/url_launcher/example/macos/Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage/Package.swift
  /b/s/w/ir/x/w/packages/packages/url_launcher/url_launcher/example/macos/Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage/Sources/FlutterGeneratedPluginSwiftPackage/FlutterGeneratedPluginSwiftPackage.swift
If this third-party code, move it to a "third_party/" directory, otherwise ensure that you are using the exact copyright and license text used by all first-party files in this repository.
```

Part of https://github.com/flutter/flutter/issues/159173
2024-11-22 02:00:23 +00:00
fc4adc78aa [ci] Take screenshot when native drive test is taking longer than 10 minutes (#8050)
If the `flutter test` run takes more than 10 minutes (default timeout is 12 minutes) take a screenshot and attach to the logs directory.

Helped debug https://github.com/flutter/flutter/issues/153578#issuecomment-2465941063.

Probably `flutter test` should have a screenshot option similar to `flutter drive`, but at the moment it doesn't.
2024-11-18 23:37:04 +00:00
d1992a442e [tool] Improve Swift lint error message (#8074)
If the Swift linter finds issues, log a message that communicates that rather than sounding like the linter failed to run.
2024-11-13 19:21:21 +00:00
4a7b385322 [ci] Remove web renderer option from tools. (#8055)
Removes the `--web-renderer` option from the "drive examples" and "dart test" commands.

Fixes https://github.com/flutter/flutter/issues/151869
2024-11-12 19:21:21 +00:00
df0f423184 [tools] Run pub get before format (#8052)
The new Dart formatter needs to know the Dart language version of the
code it is formatting, and it reads that from a file in `.dart_tool`,
not `pubspec.yaml` directly. To avoid it failing to determine the
version and assuming the latest (which will almost always be wrong in
this repo):
- Adds a step to the `format` repo command to ensure that `pub get`
appears to have been run, and runs it if not, and
- To avoid `pub get` running in `format` in CI, adds a deps-fetching
step to the `repo_checks` task, as we have in other tasks that need to
`pub get`.

This should unblock the roll.
2024-11-11 14:55:30 -05:00
2eedd7d791 Use dependabot multi-directory configuration for Android example gradle updates (#8036)
[Multi-directory config](https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#configuration-options-for-the-dependabotyml-file) allows duplicated dependabot configs can be removed in favor of one that specifies multiple directories.  Update the Android example apps so they can be updated all at once.

Also updated the dependabot CI command to look for either `directory` or `directories` key.

Part of https://github.com/flutter/flutter/issues/148098
2024-11-08 23:20:28 +00:00
a3ea39db04 [animations] Remove .flutter-plugins reference from example app (#8002)
Removes `.flutter-plugins` reference from example by (1) deleting the `packages/animations/example/android` directory, (2) running (in the `packages/animations` directory)

```
flutter create example --platforms android -a kotlin --org "dev.flutter.packages.animations"
```
and then (3) manually made the following changes:

- Added back `packages/animations/example/android/.pluginToolsConfig.yaml` (removed by command)
- Updated the Gradle version from 8.7 to 8.3 (downgraded by command)
- Deleted  `example/analysis_options.yaml` (added by command)
- Deleted `example/test/` (added by command)
- Added back artifact hub
- Removed template TODOs
- Bumped Kotlin Gradle version to 1.9.0
- Bumped AGP version from 8.1.0 to 8.5.1.

Part of https://github.com/flutter/flutter/issues/157660.
2024-11-08 21:53:19 +00:00
94d13ae41b [tools] Format Dart per-package (#8043)
Instead of running Dart formatting on the whole repo at once, run it per
package, from the package's directory. This is slower, but necessary
since the new formatter behaves differently depending on the package's
min SDK version.
2024-11-08 13:31:14 -05:00
bb5a25815c [ci] Upload screenshots, logs, and Xcode test results for drive and integration_test runs (#7430)
1. Native Xcode tests will output a helpful "xcresult" package on failure containing logs, screenshots, and screen recordings.  Zip and upload these results when tests fail.

2. Pass `flutter test --debug-logs-dir` flag to upload logs  like https://github.com/flutter/flutter/pull/142643.

3. Pass `flutter drive --screenshot` flag to upload screenshots on timeout like https://github.com/flutter/flutter/pull/96973.

Example of [failing Xcode analyzer build](https://ci.chromium.org/ui/p/flutter/builders/try/Mac_arm64%20ios_platform_tests_shard_5%20master/17374/overview) has the [zipped xcresult](https://storage.googleapis.com/flutter_logs/flutter/ff98c32e-18ca-4ad4-a910-9db1d7f7e4b0/xcode%20analyze/ff98c32e-18ca-4ad4-a910-9db1d7f7e4b0/xcodebuild-2024-10-25T09:56:46.440913.zip) attached as a log.
![Screenshot 2024-10-25 at 10 10 36 AM](https://github.com/user-attachments/assets/dd7ae9bc-6161-4381-8a4f-f10b8c981801)

The unzipped xcresult looks like this in Xcode:

![Screenshot 2024-10-25 at 10 11 55 AM](https://github.com/user-attachments/assets/d4dd8420-f272-459c-9785-ab0c03887a74)

A [failing "native test" step build](https://ci.chromium.org/ui/p/flutter/builders/try/Mac_arm64%20macos_platform_tests%20master%20-%20packages/17315/overview):

![Screenshot 2024-10-25 at 10 19 55 AM](https://github.com/user-attachments/assets/76a86a15-2150-482a-8b15-e3e7ac90485e)

Fixes https://github.com/flutter/flutter/issues/144795
2024-11-06 06:58:26 +00:00
d3d563de5a Remove use_modular_headers! from Podfiles (#7796)
⚠️ _This PR does not update packages' versions as it only affects unpublished parts of example apps and tests._

We added `use_modular_headers!` to our `Podfile`s as we originally planned to phase out `use_frameworks!` (see https://github.com/flutter/flutter/pull/42204). However, our plans have now changed and we are instead phasing out CocoaPods entirely in favor of Swift Package Manager.

CocoaPods's `use_frameworks!` and `use_modular_headers!` are two different overlapping options that should not be used together. This change removes the `use_modular_headers!` from example apps' `Podfile`s. This change does not affect packages themselves.

Part of https://github.com/flutter/flutter/issues/156259
2024-11-05 21:33:54 +00:00
79f8b0b665 [various] Add missing_code_block_language_in_doc_comment lint to flutter/packages. (#6473)
Adds this Dartdoc-related lint to the flutter repository, in replacement
of the Dartdoc warning (missingCodeBlockLanguage) because it will be
deprecated and removed soon.

flutter/flutter already has this lint as well. Adding to flutter/engine
with https://github.com/flutter/engine/pull/51944.

Lint Proposal: https://github.com/dart-lang/linter/issues/4904

Issue covering future work removing the `// ignore:`s:
https://github.com/flutter/flutter/issues/157620

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [relevant style guides] and ran the
auto-formatter. (Unlike the flutter/flutter repo, the flutter/packages
repo does use `dart format`.)
- [x] I signed the [CLA].
- [x] The title of the PR starts with the name of the package surrounded
by square brackets, e.g. `[shared_preferences]`
- [x] I [linked to at least one issue that this PR fixes] in the
description above.
- [x] I updated `pubspec.yaml` with an appropriate new version according
to the [pub versioning philosophy], or this PR is [exempt from version
changes].
- [x] I updated `CHANGELOG.md` to add a description of the change,
[following repository CHANGELOG style].
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/packages/blob/main/CONTRIBUTING.md
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[relevant style guides]:
https://github.com/flutter/packages/blob/main/CONTRIBUTING.md#style
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
[linked to at least one issue that this PR fixes]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[pub versioning philosophy]: https://dart.dev/tools/pub/versioning
[exempt from version changes]:
https://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages#version-and-changelog-updates
[following repository CHANGELOG style]:
https://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages#changelog-style
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
2024-11-04 14:24:38 -08:00
195b2d62a0 [script/tool] update dependencies (#7992) 2024-11-02 03:51:27 +00:00
dcf47df88e [flutter_svg] Initial import (#7944)
Imports https://github.com/dnfield/flutter_svg into this repository,
with history, and updates it to follow repository conventions:

- Updates min SDKs.
- Removes analysis options and fixes resulting warnings.
- Autoformats.
- Updates pubspecs to follow repo standard.
- Updates repo tooling to allow the `flutter_svg_test` non-dev
  dependency on `flutter_test`.
- Adds repo metadata.
- Adds METADATA files.
- Bumps versions and slightly relax version constraints for
  vector_graphics* to allow the new versions.
2024-10-31 10:36:08 -07:00
92238bf6bc [vector_graphics] Initial import (#7941)
Imports https://github.com/dnfield/vector_graphics into this repository,
with history, and updates it to follow repository conventions:
- Adds missing licence headers.
- Removes analysis options and fixes resulting warnings.
- Updates min SDKs.
- Autoformats.
- Updates pubspecs to follow repo standard, including updating the
metadata
  to point to the Flutter repositories.
- Allows `xml` as a pinned dependency, and relaxes the pinning
requirement
  in the repo tools to allow an explicit, inclusive-endpoint range.
- Skips some unit tests on unsupported platforms.
- Adds repo metadata.
- Bumps versions and slightly relax version constraints to allow the new
  versions.
2024-10-31 10:35:33 -07:00
ed7ee79e4c [ci] Ensure repo tool is autoformatted (#7963)
Currently the autoformatter check is run per-package, so doesn't include script/tool. This adds a new CI step to check the formatting of the repo tooling, just as we have for running its unit tests.
2024-10-30 23:10:15 +00:00
cd7a810444 [tool] Support third_party for --current-package (#7967)
Fixes `--current-package` so that when run on a package in third_party/packages/ in works as expected, rather than failing with an error message saying that it must be run from inside a package.
2024-10-30 22:51:05 +00:00
030dd4eafa [tool] Fix third_party dependency overrides (#7966)
`made-deps-path-based` would sometimes create invalid relative paths when `third_party/packages` was involved because it was using the sibling directory of `packages` as the base. This updates the logic to always make the paths relative to the repository root; this is often a longer relative path than necessary, but that's harmless, and always using the repo root makes it easier to reason about.

Also fixes the fact that paths that were already path based (which is always the case for `some_package/example`'s dependency on `some_package`) were being overridden, causing CI to do some unnecessary duplicate analysis work.
2024-10-30 22:36:55 +00:00