Commit Graph

99 Commits

Author SHA1 Message Date
Reid Baker
60182c5e21
Update README.md to not have engine link for android (#162330)
Came up in triage, no bug. 

## 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 [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
2025-01-29 02:07:41 +00:00
Matan Lurey
9e273d5e6e
Remove scenario_app/android and rename to ios_scenario_app. (#160992)
🚫 **BLOCKED** : Do not merge until
https://github.com/flutter/flutter/issues/161261 (additional test
coverage).

---

This PR eliminates (1) `scenario_app/android`, and all references to an
Android `scenario_app`, including documentation, CI configuration, build
rules, test runner, Android-side test application, and (2), to verify
and disambiguate the remains, renames the folder `ios_scenario_app`,
which is now accurate.

It also eliminates elements that were _only_ used in the Android-side
scenario_app, such as Firebase Test Lab uploading.

I would be open to doing this in phases if we thought it was better to
do so, but given its mostly a mechanical change (and by renaming the
directory, references can be checked merely by looking for
`/\bscenario_app/`, I believe this is safe to iterate on and eventually
merge after the holidays.

## Background

As of the merged mono-repo, there is no longer a requirement for the
engine to be testable as a standalone unit.

As an example,
[`%ENGINE%/testing/scenario_app`](3762f2e973/engine/src/flutter/testing/scenario_app),
which was intended to _emulate_ the Flutter framework (and some of
`flutter_tools` tooling), load the iOS and Android embedder, and run
various "scenarios" (which ran a combination of `dart:ui` code and
Android Java/iOS Obj-C) verifying golden-file screenshots.

Instead, it is now possible to write and run _real_ (full) Flutter apps
the same way that an end-user (or our own tests) would. One such example
is
[`dev/native_driver_test`](https://github.com/flutter/flutter/tree/master/dev/integration_tests/native_driver_test),
which is a full-fledged Flutter app, which uses standard tooling (i.e.
`flutter`), to test most of the same elements that previously were only
tested in the Android version of `scenario_app`.
2025-01-28 03:43:46 +00:00
Loïc Sharma
c1ffaa9d9d
Fix link to hotfix documentation best practices (#162116)
Currently the [cherrypick
process](https://github.com/flutter/flutter/blob/master/docs/releases/Flutter-Cherrypick-Process.md#automatically-create-a-cherry-pick-request)
links to:
https://github.com/flutter/flutter/blob/master/docs/releases/docs/releases/Hotfix-Documentation-Best-Practices.md

This should be:
https://github.com/flutter/flutter/blob/master/docs/releases/Hotfix-Documentation-Best-Practices.md

## 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 [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-24 15:17:48 +00:00
Kevin Chisholm
bb2d34126c
[Release] Update the cherry-pick process. (#161771)
Updates to the Flutter cherry-pick process to align with our current
practices. This update:
1. Defaults to automated cherry-picks.
2. Removes the need to create cherry-pick issues.
3. Requires cherry-pick authors to update CHANGELOG.md.

---------

Co-authored-by: Christopher Fujino <christopherfujino@gmail.com>
2025-01-17 15:44:31 +00:00
stuartmorgan
fd2b5637b5
Update two_dimensional_scrollables triage routing (#161667)
`two_dimensional_scrollables` is primarily owned by the framework team
rather than the ecosystem team.
2025-01-15 19:14:33 +00:00
Matan Lurey
d102e1197e
Remove references to cirrus, mostly in doc comments. (#161529)
Towards https://github.com/flutter/flutter/issues/161387.
2025-01-13 23:49:04 +00:00
John McDole
27f8bb91a6
Udpate documentation on the third_party directories (#161407)
Fixes #161336
2025-01-13 19:03:50 +00:00
Matan Lurey
00b6a4ed06
Remove some miscellaneous references to Cirrus. (#161390)
Towards https://github.com/flutter/flutter/issues/161387.

... made a few TLC changes the best I could.
2025-01-11 05:28:56 +00:00
Matan Lurey
4efb64b53a
We no longer have a separate engine repo. (#161400)
Closes https://github.com/flutter/flutter/issues/161351.
2025-01-10 02:37:29 +00:00
Michael Goderbauer
daa446750b
Update Style-guide-for-Flutter-repo.md (#161344)
This mainly removes guidance around whitespace that no longer applies
because it is now handled automatically by `dart format`.
2025-01-10 02:30:10 +00:00
Matan Lurey
fe73879f95
Remove seemingly stale web Cirrus and "Web Installer" instructions (#161389)
Towards https://github.com/flutter/flutter/issues/161387.

Bit of markdown TLC as well.
2025-01-09 20:13:04 +00:00
Yegor
01971467ef
Point to real Cocoon code in Tree-hygiene.md (#160914)
Point to real Cocoon code in Tree-hygiene.md

Co-authored-by: Matan Lurey <matanlurey@users.noreply.github.com>
2024-12-28 19:54:22 +00:00
Reid Baker
a5902458c6
Update New-Android-version.md to include create all (#160661)
No issue
Related to
https://github.com/flutter/packages/pull/7985#issuecomment-2557237025

## 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 [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
2024-12-20 17:39:57 +00:00
Nate Wilson
5f861d5bf7
Show issues in triage even if they've been assigned (#155615)
Recently I learned that (at least in `team-framework` and `team-design`
triage meetings) we'd like to see all incoming issues, even ones that
already have an assignee.

This PR removes a filter so that this will happen in the future.

resolves #155700
2024-12-09 18:49:20 +00:00
Anis Alibegić
e2ada1c939
Fixed typos (#159331)
Here's another one of my PRs where I hunt for typos across `flutter`
repo.

## 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 [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [ ] 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.

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#features-we-expect-every-widget-to-implement
[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
2024-12-05 16:54:09 +00:00
Gray Mackall
f2446f2dfb
Add docs for setting up Android Studio to auto format Kotlin code (#159209)
Docs to make Android Studio auto format kotlin code in a way compatible
with the format check that we make in CI.

Open to suggestions as to a better place to put them, but there wasn't
an existing doc that seemed like an obvious fit to me.

## 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 [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] 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/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Gray Mackall <mackall@google.com>
Co-authored-by: Reid Baker <hamilton.reid.baker@gmail.com>
2024-11-20 20:58:39 +00:00
HongeSun
15a03a4ada
Fix git command in Quality-Assurance.md (#155146)
Correct the Quality-Assurance contributing doc's wrong git command.

## 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 [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.
2024-11-20 06:32:04 +00:00
Kate Lovett
26d5ec3edd
Prettier merge_queue.md (#158969)
Spruced up a bit, added mention of edge case for older PRs.

## 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 [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- 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/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: David Iglesias <ditman@gmail.com>
2024-11-18 19:32:23 +00:00
Yegor
bb5287ad6d
[flutter triage] Update list of frequent web contributors (#159008)
Update list of frequent web contributors
2024-11-15 23:30:59 +00:00
Yegor
917b48d942
Style change in Flutter-Web-Triage.md (#159006)
Mostly just testing the MQ functionality
2024-11-15 22:13:31 +00:00
Kate Lovett
34b5c274bb
Create merge_queue.md (#158959)
Adds information on the merge queue, to be used for announcement. Will update to final doc after the merge project is complete.
2024-11-14 23:50:05 +00:00
stuartmorgan
8f62a9904d
Update triage flow chart for SVG packages (#158670)
Adds special handling of the newly-imported `flutter_svg` and
`vector_graphics` family of packages in the triage flow chart, as they
should be directed to the engine team.
2024-11-14 05:39:39 -05:00
Nate Wilson
e77093bba4
"Fix failing checks" wiki page for new contributors (#154629)
Resolves https://github.com/flutter/flutter/issues/154628

<br>

As a contributor, I would expect resources related to testing to be located in the [/docs/contributing/testing](https://github.com/flutter/flutter/tree/master/docs/contributing/testing) directory. This PR adds a page to that directory geared toward helping new contributors.

<br>

I've noticed that in `team-framework` triage meetings, comments along the lines of "could you take a look at the failing checks?" are a regular occurrence.

I believe we could save quite a bit of effort by changing this:

> [**Understanding a LUCI build failure**](a5ca16ea94/docs/infra/Understanding-a-LUCI-build-failure.md)

to this:

> [**Flutter wiki – How to fix failing checks**](https://github.com/nate-thegrate/flutter/blob/fix-checks-wiki-page/docs/contributing/testing/Fix-failing-checks.md)
2024-11-13 18:52:27 +00:00
stuartmorgan
2afadc2cdf
Add flutter/package code generation instructions (#158326)
Adds general instructions for updating generated code in
flutter/packages, covering the common cases of Pigeon and Mockito
generation.

Fixes https://github.com/flutter/flutter/issues/158321
2024-11-08 08:17:07 -05:00
Polina Cherkasova
1f1eec06f1
Make leak tracking bots blocking. (#157866)
See http://flutter.dev/go/leak-tracker-make-bots-blocking
2024-11-07 00:23:04 +00:00
chunhtai
cfa3b08578
excluding website-cms from critical pr triage (#158220)
Since we skipped all website cms pr during critical triage anyway
2024-11-06 17:11:14 +00:00
Matan Lurey
abcdcee57a
Remove references to the HTML renderer in public docs. (#158035)
Closes https://github.com/flutter/flutter/issues/157547.
2024-11-04 23:28:38 +00:00
Polina Cherkasova
9cf98f7273
Create flutter specific leak troubleshooting guidance. (#157396) 2024-10-25 13:25:34 -07:00
Andrew Kolos
dad3fea650
docs: Rework "Making changes to the flutter tool" to include flutter-dev (#157480)
Follow-up to https://github.com/flutter/flutter/pull/153599. This updates the tool readme, suggesting `bin/flutter-dev` as the primary way to run the flutter tool locally from source.

<details>

<summary> Pre-launch checklist </summary> 

</details>
2024-10-23 23:28:57 +00:00
stuartmorgan
e0d6271911
Update ecosystem contribution docs (#157288)
Document the requirements for adding a new external, client-facing dependency in flutter/packages
2024-10-21 19:06:04 +00:00
Kate Lovett
19488bd6bd
Update triage doc (#155716) 2024-10-15 15:34:10 -05:00
stuartmorgan
14272d54dc
Update iOS/macOS plugin test information (#156716)
Updates the paths for test files to reflect the `darwin/` structure, and updates the instructions for enabling tests to use the SPM version of OCMock if necessary (as well as flagging that new use of OCMock is discouraged).
2024-10-14 17:31:18 +00:00
Loïc Sharma
ecf3d6c39a
Clarify when override: no versioning needed label should be applied (#156342)
Follow-up to https://github.com/flutter/packages/pull/7796

Part of https://github.com/flutter/flutter/issues/156259
2024-10-07 21:09:19 +00:00
Reid Baker
885338e762
Update Upgrading-Engine's-Android-API-version.md to reflect code move (#156108)
these files moved during https://github.com/flutter/engine/pull/55186/files
2024-10-02 19:45:09 +00:00
Chris Bracken
f7bcb28584
docs: Update gardener doc with tree-gardener channel (#155972)
In order to have a dedicate chat room for tree issues with a high signal to noise ratio, we've separated out a new `tree-gardener` channel from the `tree-status` channel on Discord. This updates the gardener docs to reference the new human-centric tree-gardener chat.

I've removed the line suggesting that people avoid spamming the room with requests for "when will this be resolved?" and "can I get an update?" since the doc is aimed mostly at the gardener themself and and not likely being read by those on chat asking "when will the tree be fixed?" Recently this hasn't been a source of noise.
2024-10-01 16:51:49 +00:00
Parker Lougheed
22570daa18
Misc docs cleanup and fixes (#155501) 2024-09-24 20:03:08 +00:00
Michael Goderbauer
c6b0876a2f
Quick access to style guide (#154689) 2024-09-06 15:45:04 +00:00
Matan Lurey
a782869b34
Add documentation about updating .ci.yaml and flutter-gold. (#154184)
Closes https://github.com/flutter/flutter/issues/143863.

/cc @christopherfujino
2024-08-28 17:25:44 +00:00
Lxxyx
602f9affa6
doc: fix typo in testing doc (#154105)
*Replace this paragraph with a description of what this PR is changing or adding, and why. Consider including before/after screenshots.*

*List which issues are fixed by this PR. You must list at least one issue. An issue is not required if the PR fixes something trivial like a typo.*

*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*

- [] I listed at least one issue that this PR fixes in the description above.
- [] I added new tests to check the change I am making, or this PR is [test-exempt].
- [] I followed the [breaking change policy] and added [Data Driven Fixes] where supported.
- [] All existing and new tests are passing.

## Detail
The correct parameter is --web-port, not --webport
2024-08-26 18:15:05 +00:00
Jenn Magder
acaccda08d
Update iOS/macOS triage doc links (#153963)
Combine iOS and macOS triage links since it's completed in the same meeting. 
1. Remove `no:assignee` from both incoming issue links, as these should still be triaged.
2. Combine P0 issue and packages PR links. Other links are harder to combine. For example, macOS PRs looks for `"affects: desktop"` but iOS PRs do not.
2024-08-22 22:31:59 +00:00
Reid Baker
72d1d15b4f
Create Postmortem-Platform-View-android-14-regression (#149201)
Title and initial timeline addition for flutter android 14 platform view
issues.
Internal to google version of this doc.
[go/flutter-android-14-postmortem](http://goto.google.com/flutter-android-14-postmortem)


- [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 [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
2024-08-21 10:21:57 -04:00
chunhtai
9e91307947
Update README.md (#153470)
*Replace this paragraph with a description of what this PR is changing or adding, and why. Consider including before/after screenshots.*

*List which issues are fixed by this PR. You must list at least one issue. An issue is not required if the PR fixes something trivial like a typo.*

*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
2024-08-16 17:57:26 +00:00
chunhtai
5fdc911135
adds team-accessibility to triage workflow (#153575)
add team-accessibility to triage workflow
2024-08-16 17:19:06 +00:00
Nate Wilson
a0c04534f5
Style Guide updates (#152525)
This pull request updates the style guide for improved internal consistency and to match current linter rules.

I'll make comments for each change here!
2024-08-16 16:19:06 +00:00
Justin McCandless
73c9e4e578
Design-Documents.md incorrect link (#153509)
Fixed an incorrect link. I think it was accidentally pasted twice.
2024-08-15 22:02:00 +00:00
Camille Simon
f697d61025
Update docs to use new Android version in the engine (#151601)
Updates the steps based on what I found by working on https://github.com/flutter/engine/pull/54186 and https://github.com/flutter/engine/pull/53574 + general cleanup.
2024-08-14 19:57:07 +00:00
gaaclarke
fa1216761d
Added FlutterEngineGroups to engine architecture doc (#153100)
I also formatted the markdown as per our guidelines.  I kept the commits for formatting separate if you want to ignore those.
2024-08-12 22:00:33 +00:00
Parker Lougheed
b6cd31e6b5
Add a contribution doc on using reliable links in tooling (#150962)
The final piece of https://github.com/flutter/website/issues/10363 now that most existing relevant links have been updated to use the new redirects.
2024-08-08 13:32:04 +00:00
Kate Lovett
2ff7fe92c1
Update design languages triage link to exclude drafts (#153027)
Noticed the framework triage was doing this, adopting it for design languages as well!

Critical triage follows up on these draft PRs if they sit for long without an update. Having draft PRs allows folks to discuss changes without getting nudged constantly to make progress on it. This feels like a really positive change.
2024-08-07 16:45:51 +00:00
Rexios
79d5ecc902
[wiki] Remove outdated warning about stale coverage data (#152560)
Remade https://github.com/flutter/flutter/pull/152529 because the GitHub editor was being dumb and adding trailing newlines without asking
2024-08-02 18:21:58 +00:00