| Index: sdk/lib/_internal/pub_generated/lib/src/sdk.dart
|
| diff --git a/sdk/lib/_internal/pub_generated/lib/src/sdk.dart b/sdk/lib/_internal/pub_generated/lib/src/sdk.dart
|
| index 5a49dfcd60e342b4a53280d07fd8b869c793c32f..ccf767be372ebb08a7f1c1a2d32162897b822662 100644
|
| --- a/sdk/lib/_internal/pub_generated/lib/src/sdk.dart
|
| +++ b/sdk/lib/_internal/pub_generated/lib/src/sdk.dart
|
| @@ -10,7 +10,27 @@ Version version = _getVersion();
|
| Version _getVersion() {
|
| var sdkVersion = Platform.environment["_PUB_TEST_SDK_VERSION"];
|
| if (sdkVersion != null) return new Version.parse(sdkVersion);
|
| - var revisionPath = path.join(_rootDirectory, "version");
|
| - var version = readTextFile(revisionPath).trim();
|
| + if (runningFromSdk) {
|
| + var version = readTextFile(path.join(_rootDirectory, "version")).trim();
|
| + return new Version.parse(version);
|
| + }
|
| + var contents = readTextFile(path.join(repoRoot, "tools/VERSION"));
|
| + parseField(name) {
|
| + var pattern = new RegExp("^$name ([a-z0-9]+)", multiLine: true);
|
| + var match = pattern.firstMatch(contents);
|
| + return match[1];
|
| + }
|
| + var channel = parseField("CHANNEL");
|
| + var major = parseField("MAJOR");
|
| + var minor = parseField("MINOR");
|
| + var patch = parseField("PATCH");
|
| + var prerelease = parseField("PRERELEASE");
|
| + var prereleasePatch = parseField("PRERELEASE_PATCH");
|
| + var version = "$major.$minor.$patch";
|
| + if (channel == "be") {
|
| + version += "-edge";
|
| + } else if (channel == "dev") {
|
| + version += "-dev.$prerelease.$prereleasePatch";
|
| + }
|
| return new Version.parse(version);
|
| }
|
|
|