1
0
mirror of https://github.com/flutter/samples.git synced 2025-11-10 06:48:26 +00:00

Dart 3.9 / Flutter 3.35 [first LLM release] (#2714)

I got carried away with Gemini and basically rewrote CI and the release
process for the new LLM reality. This work was largely completed by
Gemini.

- Bump all SDK versions to the current beta (3.9.0-0)
- Run `flutter channel beta`
- Wrote `ci_script.dart` to replace the bash scripts
- Converted repository to pub workspace #2499 
- Added llm.md and release.md
- Added redirect for deprecated Samples Index

## Pre-launch Checklist

- [x] I read the [Flutter Style Guide] _recently_, and have followed its
advice.
- [x] I signed the [CLA].
- [x] I read the [Contributors Guide].
- [x] I have added sample code updates to the [changelog].
- [x] I updated/added relevant documentation (doc comments with `///`).
This commit is contained in:
Eric Windmill
2025-08-14 12:26:24 -07:00
committed by GitHub
parent 0aa5415d5e
commit 2999d738b8
410 changed files with 28166 additions and 27661 deletions

View File

@@ -65,20 +65,19 @@ class _HomeState extends State<Home> {
Widget build(BuildContext context) {
final textTheme = Theme.of(context).textTheme;
final barGroups =
hourlySteps
.map(
(e) => BarChartGroupData(
x: int.parse(e.startHour),
barRods: [
BarChartRodData(
color: Colors.blue[900],
toY: e.steps.toDouble() / 100,
),
],
final barGroups = hourlySteps
.map(
(e) => BarChartGroupData(
x: int.parse(e.startHour),
barRods: [
BarChartRodData(
color: Colors.blue[900],
toY: e.steps.toDouble() / 100,
),
)
.toList();
],
),
)
.toList();
return Scaffold(
body: Stack(
@@ -99,14 +98,14 @@ class _HomeState extends State<Home> {
children: [
lastUpdated != null
? Padding(
padding: const EdgeInsets.symmetric(vertical: 50.0),
child: Text(
DateFormat.yMMMMd('en_US').format(lastUpdated!),
style: textTheme.titleLarge!.copyWith(
color: Colors.blue[900],
padding: const EdgeInsets.symmetric(vertical: 50.0),
child: Text(
DateFormat.yMMMMd('en_US').format(lastUpdated!),
style: textTheme.titleLarge!.copyWith(
color: Colors.blue[900],
),
),
),
)
)
: const SizedBox(height: 0),
Text(
hourlySteps.fold(0, (t, e) => t + e.steps).toString(),

View File

@@ -45,10 +45,11 @@ class _IOSStepsRepo implements StepsRepo {
final dylib = ffi.DynamicLibrary.open("pedometer.framework/pedometer");
// Initialize the Dart API
final initializeApi = dylib.lookupFunction<
ffi.IntPtr Function(ffi.Pointer<ffi.Void>),
int Function(ffi.Pointer<ffi.Void>)
>('Dart_InitializeApiDL');
final initializeApi = dylib
.lookupFunction<
ffi.IntPtr Function(ffi.Pointer<ffi.Void>),
int Function(ffi.Pointer<ffi.Void>)
>('Dart_InitializeApiDL');
final initializeResult = initializeApi(ffi.NativeApi.initializeApiDLData);
if (initializeResult != 0) {
@@ -106,8 +107,9 @@ class _IOSStepsRepo implements StepsRepo {
) {
if (result != null) {
final stepCount = result.numberOfSteps.intValue;
final startHour =
hourFormatter.stringFromDate_(result.startDate).toString();
final startHour = hourFormatter
.stringFromDate_(result.startDate)
.toString();
completer.complete(Steps(startHour, stepCount));
} else {
debugPrint("Query error: ${error?.localizedDescription}");
@@ -136,8 +138,8 @@ class _AndroidStepsRepo implements StepsRepo {
// ignore: invalid_use_of_internal_member
activity = hc.Activity.fromReference(jni.Jni.getCurrentActivity());
applicationContext =
// ignore: invalid_use_of_internal_member
hc.Context.fromReference(jni.Jni.getCachedApplicationContext());
// ignore: invalid_use_of_internal_member
hc.Context.fromReference(jni.Jni.getCachedApplicationContext());
client = hc.HealthConnectClient.getOrCreate$1(applicationContext);
}
@@ -147,10 +149,18 @@ class _AndroidStepsRepo implements StepsRepo {
final now = DateTime.now();
for (var h = 0; h <= now.hour; h++) {
final start =
DateTime(now.year, now.month, now.day, h).millisecondsSinceEpoch;
final end =
DateTime(now.year, now.month, now.day, h + 1).millisecondsSinceEpoch;
final start = DateTime(
now.year,
now.month,
now.day,
h,
).millisecondsSinceEpoch;
final end = DateTime(
now.year,
now.month,
now.day,
h + 1,
).millisecondsSinceEpoch;
final request = hc.AggregateRequest(
{
hc.StepsRecord.COUNT_TOTAL,

View File

@@ -1,5 +1,8 @@
name: pedometer_example
description: Demonstrates how to use the pedometer plugin.
version: 1.0.0+1
resolution: workspace
# The following line prevents the package from being accidentally published to
# pub.dev using `flutter pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
@@ -16,10 +19,10 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
# In Windows, build-name is used as the major, minor, and patch parts
# of the product and file versions while build-number is used as the build suffix.
version: 1.0.0+1
environment:
sdk: ^3.7.0-0
sdk: ^3.9.0-0
# Dependencies specify other packages that your package needs in order to work.
# To automatically upgrade your package dependencies to the latest versions
@@ -41,10 +44,12 @@ dependencies:
ffi: ^2.1.2
intl: ^0.20.0
jni: ^0.13.0
fl_chart: ^0.70.0
jni: ^0.14.2
fl_chart: ^1.0.0
dev_dependencies:
analysis_defaults:
path: ../../analysis_defaults
flutter_test:
sdk: flutter
@@ -53,7 +58,7 @@ dev_dependencies:
# activated in the `analysis_options.yaml` file located at the root of your
# package. See that file for information about deactivating specific lint
# rules and activating additional ones.
flutter_lints: ^5.0.0
flutter_lints: ^6.0.0
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec