Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
F
Front-End
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
abdullh.alsoleman
Front-End
Commits
60730a97
Unverified
Commit
60730a97
authored
Feb 26, 2019
by
Jonah Williams
Committed by
GitHub
Feb 26, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
pass --skip-build-script-checks and remove module usage (#28343)
parent
e5ceabfd
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
31 additions
and
63 deletions
+31
-63
build.yaml
packages/flutter_build/build.yaml
+0
-15
kernel_builder.dart
packages/flutter_build/lib/src/kernel_builder.dart
+6
-22
pubspec.yaml
packages/flutter_build/pubspec.yaml
+1
-13
build_runner.dart
...ages/flutter_tools/lib/src/build_runner/build_runner.dart
+14
-6
codegen.dart
packages/flutter_tools/lib/src/codegen.dart
+8
-5
pubspec.yaml
packages/flutter_tools/pubspec.yaml
+2
-2
No files found.
packages/flutter_build/build.yaml
View file @
60730a97
# Read about `build.yaml` at https://pub.dartlang.org/packages/build_config
builders
:
flutter
:
import
:
"
package:build_modules/builders.dart"
builder_factories
:
-
metaModuleBuilderFactoryForPlatform('flutter')
-
metaModuleCleanBuilderFactoryForPlatform('flutter')
-
moduleBuilderFactoryForPlatform('flutter')
applies_builders
:
[
"
build_modules|module_cleanup"
]
build_extensions
:
$lib$
:
-
.flutter.meta_module.raw
-
.flutter.meta_module.clean
.dart
:
-
.flutter.module
auto_apply
:
all_packages
required_inputs
:
[
"
.dart"
,
"
.module.library"
]
kernel
:
import
:
"
package:flutter_build/flutter_build.dart"
builder_factories
:
...
...
packages/flutter_build/lib/src/kernel_builder.dart
View file @
60730a97
...
...
@@ -7,8 +7,6 @@
import
'dart:async'
;
import
'dart:convert'
;
import
'dart:io'
;
import
'package:build_modules/build_modules.dart'
;
import
'package:build/build.dart'
;
import
'package:package_config/packages_file.dart'
as
packages_file
;
import
'package:meta/meta.dart'
;
...
...
@@ -16,6 +14,7 @@ import 'package:path/path.dart' as path;
const
String
_kFlutterDillOutputExtension
=
'.app.dill'
;
const
String
_kPackagesExtension
=
'.packages'
;
const
String
_kMultirootScheme
=
'org-dartlang-app'
;
/// A builder which creates a kernel and packages file for a Flutter app.
///
...
...
@@ -85,28 +84,13 @@ class FlutterKernelBuilder implements Builder {
@override
Future
<
void
>
build
(
BuildStep
buildStep
)
async
{
// Do not resolve dependencies if this does not correspond to the main
// entrypoint.
if
(!
mainPath
.
contains
(
buildStep
.
inputId
.
path
))
{
// entrypoint.
Do not generate kernel if it has been disabled.
if
(!
mainPath
.
contains
(
buildStep
.
inputId
.
path
)
||
disabled
)
{
return
;
}
final
AssetId
outputId
=
buildStep
.
inputId
.
changeExtension
(
_kFlutterDillOutputExtension
);
final
AssetId
packagesOutputId
=
buildStep
.
inputId
.
changeExtension
(
_kPackagesExtension
);
// Use modules to verify dependencies are sound.
final
AssetId
moduleId
=
buildStep
.
inputId
.
changeExtension
(
moduleExtension
(
DartPlatform
.
flutter
));
final
Module
module
=
Module
.
fromJson
(
json
.
decode
(
await
buildStep
.
readAsString
(
moduleId
)));
try
{
await
module
.
computeTransitiveDependencies
(
buildStep
);
}
on
MissingModulesException
catch
(
err
)
{
log
.
shout
(
err
);
return
;
}
// Do not generate kernel if it has been disabled.
if
(
disabled
)
{
return
;
}
// Create a scratch space file that can be read/written by the frontend server.
// It is okay to hard-code these file names because we will copy them back
// from the temp directory at the end of the build step.
...
...
@@ -122,7 +106,7 @@ class FlutterKernelBuilder implements Builder {
// Note: currently we only replace the root package with a multiroot
// scheme. To support codegen on arbitrary packages we will need to do
// this for each dependency.
final
String
newPackagesContents
=
oldPackagesContents
.
replaceFirst
(
'
$packageName
:lib/'
,
'
$packageName
:
$
multiR
ootScheme
:/'
);
final
String
newPackagesContents
=
oldPackagesContents
.
replaceFirst
(
'
$packageName
:lib/'
,
'
$packageName
:
$
_kMultir
ootScheme
:/'
);
await
packagesFile
.
writeAsString
(
newPackagesContents
);
String
absoluteMainPath
;
if
(
path
.
isAbsolute
(
mainPath
))
{
...
...
@@ -167,7 +151,7 @@ class FlutterKernelBuilder implements Builder {
'--filesystem-root'
,
generatedRoot
,
'--filesystem-scheme'
,
multiR
ootScheme
,
_kMultir
ootScheme
,
]);
if
(
extraFrontEndOptions
!=
null
)
{
arguments
.
addAll
(
extraFrontEndOptions
);
...
...
@@ -175,7 +159,7 @@ class FlutterKernelBuilder implements Builder {
final
Uri
mainUri
=
_PackageUriMapper
.
findUri
(
absoluteMainPath
,
packagesFile
.
path
,
multiR
ootScheme
,
_kMultir
ootScheme
,
<
String
>[
normalRoot
,
generatedRoot
],
);
arguments
.
add
(
mainUri
?.
toString
()
??
absoluteMainPath
);
...
...
packages/flutter_build/pubspec.yaml
View file @
60730a97
...
...
@@ -7,38 +7,26 @@ environment:
dependencies
:
# To update these, use "flutter update-packages --force-upgrade".
build
:
1.1.1
build_modules
:
1.0.8
package_config
:
1.0.5
path
:
1.6.2
analyzer
:
0.35.2
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
args
:
1.5.1
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
async
:
2.0.8
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
bazel_worker
:
0.1.20
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
build_config
:
0.3.1+4
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
charcode
:
1.1.2
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
collection
:
1.14.11
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
convert
:
2.1.1
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
crypto
:
2.0.6
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
csslib
:
0.14.6
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
fixnum
:
0.10.9
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
front_end
:
0.1.12
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
glob
:
1.1.7
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
graphs
:
0.2.0
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
html
:
0.13.3+3
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
json_annotation
:
2.0.0
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
kernel
:
0.3.12
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
logging
:
0.11.3+2
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
meta
:
1.1.6
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
pedantic
:
1.5.0
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
plugin
:
0.2.0+3
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
pool
:
1.4.0
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
protobuf
:
0.13.4
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
pub_semver
:
1.4.2
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
pubspec_parse
:
0.1.4
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
scratch_space
:
0.0.3+2
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
source_span
:
1.5.4
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
stack_trace
:
1.9.3
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
string_scanner
:
1.0.4
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
term_glyph
:
1.1.0
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
typed_data
:
1.1.6
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
...
...
@@ -50,4 +38,4 @@ dartdoc:
# Exclude this package from the hosted API docs.
nodoc
:
true
# PUBSPEC CHECKSUM:
3267
# PUBSPEC CHECKSUM:
6ccf
packages/flutter_tools/lib/src/build_runner/build_runner.dart
View file @
60730a97
...
...
@@ -72,6 +72,7 @@ class BuildRunner extends CodeGenerator {
'--packages=
$scriptPackagesPath
'
,
buildScript
,
'build'
,
'--skip-build-script-check'
,
'--define'
,
'flutter_build|kernel=disabled=
$disableKernelGeneration
'
,
'--define'
,
'flutter_build|kernel=aot=
$aot
'
,
'--define'
,
'flutter_build|kernel=linkPlatformKernelIn=
$linkPlatformKernelIn
'
,
...
...
@@ -157,9 +158,11 @@ class BuildRunner extends CodeGenerator {
stringBuffer
.
writeln
(
'name: flutter_tool'
);
stringBuffer
.
writeln
(
'dependencies:'
);
final
YamlMap
builders
=
await
flutterProject
.
builders
;
for
(
String
name
in
builders
.
keys
)
{
final
YamlNode
node
=
builders
[
name
];
stringBuffer
.
writeln
(
'
$name
:
$node
'
);
if
(
builders
!=
null
)
{
for
(
String
name
in
builders
.
keys
)
{
final
YamlNode
node
=
builders
[
name
];
stringBuffer
.
writeln
(
'
$name
:
$node
'
);
}
}
stringBuffer
.
writeln
(
' build_runner: any'
);
stringBuffer
.
writeln
(
' flutter_build:'
);
...
...
@@ -217,6 +220,7 @@ class BuildRunner extends CodeGenerator {
'--packages=
$scriptPackagesPath
'
,
buildScript
,
'daemon'
,
'--skip-build-script-check'
,
'--define'
,
'flutter_build|kernel=disabled=false'
,
'--define'
,
'flutter_build|kernel=aot=false'
,
'--define'
,
'flutter_build|kernel=linkPlatformKernelIn=
$linkPlatformKernelIn
'
,
...
...
@@ -251,18 +255,22 @@ class _BuildRunnerCodegenDaemon implements CodegenDaemon {
final
File
packagesFile
;
@override
final
File
dillFile
;
@override
CodegenStatus
get
lastStatus
=>
_lastStatus
;
CodegenStatus
_lastStatus
;
@override
Stream
<
CodegenStatus
>
get
buildResults
=>
buildDaemonClient
.
buildResults
.
map
((
build
.
BuildResults
results
)
{
if
(
results
.
results
.
first
.
status
==
BuildStatus
.
failed
)
{
return
CodegenStatus
.
Failed
;
return
_lastStatus
=
CodegenStatus
.
Failed
;
}
if
(
results
.
results
.
first
.
status
==
BuildStatus
.
started
)
{
return
CodegenStatus
.
Started
;
return
_lastStatus
=
CodegenStatus
.
Started
;
}
if
(
results
.
results
.
first
.
status
==
BuildStatus
.
succeeded
)
{
return
CodegenStatus
.
Succeeded
;
return
_lastStatus
=
CodegenStatus
.
Succeeded
;
}
_lastStatus
=
null
;
return
null
;
});
...
...
packages/flutter_tools/lib/src/codegen.dart
View file @
60730a97
...
...
@@ -134,6 +134,8 @@ abstract class CodegenDaemon {
/// Whether the previously enqueued build was successful.
Stream
<
CodegenStatus
>
get
buildResults
;
CodegenStatus
get
lastStatus
;
/// Starts a new build.
void
startBuild
();
...
...
@@ -265,11 +267,12 @@ class CodeGeneratingResidentCompiler implements ResidentCompiler {
@override
Future
<
CompilerOutput
>
recompile
(
String
mainPath
,
List
<
String
>
invalidatedFiles
,
{
String
outputPath
,
String
packagesFilePath
})
async
{
_codegenDaemon
.
startBuild
();
final
CodegenStatus
status
=
await
_codegenDaemon
.
buildResults
.
firstWhere
((
CodegenStatus
status
)
{
return
status
==
CodegenStatus
.
Succeeded
||
status
==
CodegenStatus
.
Failed
;
});
if
(
status
==
CodegenStatus
.
Failed
)
{
if
(
_codegenDaemon
.
lastStatus
!=
CodegenStatus
.
Succeeded
&&
_codegenDaemon
.
lastStatus
!=
CodegenStatus
.
Failed
)
{
await
_codegenDaemon
.
buildResults
.
firstWhere
((
CodegenStatus
status
)
{
return
status
==
CodegenStatus
.
Succeeded
||
status
==
CodegenStatus
.
Failed
;
});
}
if
(
_codegenDaemon
.
lastStatus
==
CodegenStatus
.
Failed
)
{
printError
(
'Codegeneration failed, halting build.'
);
}
// Delete this file so that the frontend_server can handle multi-root.
...
...
packages/flutter_tools/pubspec.yaml
View file @
60730a97
...
...
@@ -51,7 +51,7 @@ dependencies:
code_builder
:
3.2.0
build
:
1.1.1
build_modules
:
1.0.8
build_daemon
:
0.4.
0
build_daemon
:
0.4.
1
async
:
2.0.8
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
bazel_worker
:
0.1.20
# THIS LINE IS AUTOGENERATED - TO UPDATE USE "flutter update-packages --force-upgrade"
...
...
@@ -115,4 +115,4 @@ dartdoc:
# Exclude this package from the hosted API docs.
nodoc
:
true
# PUBSPEC CHECKSUM:
43e3
# PUBSPEC CHECKSUM:
e6e4
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment