Index: pkg/dartino_compiler/lib/src/worker/developer.dart |
diff --git a/pkg/fletchc/lib/src/worker/developer.dart b/pkg/dartino_compiler/lib/src/worker/developer.dart |
similarity index 90% |
rename from pkg/fletchc/lib/src/worker/developer.dart |
rename to pkg/dartino_compiler/lib/src/worker/developer.dart |
index 98ca9081031af6419f79fe4cc96c468e44559cb2..7df56a9d517d4f7cad4b1e92a5243717b38b50ad 100644 |
--- a/pkg/fletchc/lib/src/worker/developer.dart |
+++ b/pkg/dartino_compiler/lib/src/worker/developer.dart |
@@ -2,7 +2,7 @@ |
// for details. All rights reserved. Use of this source code is governed by a |
// BSD-style license that can be found in the LICENSE.md file. |
-library fletchc.worker.developer; |
+library dartino_compiler.worker.developer; |
import 'dart:async' show |
Future, |
@@ -32,12 +32,12 @@ import 'package:sdk_services/sdk_services.dart' show |
OutputService, |
SDKServices; |
-import 'package:fletch_agent/agent_connection.dart' show |
+import 'package:dartino_agent/agent_connection.dart' show |
AgentConnection, |
AgentException, |
VmData; |
-import 'package:fletch_agent/messages.dart' show |
+import 'package:dartino_agent/messages.dart' show |
AGENT_DEFAULT_PORT, |
MessageDecodeException; |
@@ -69,7 +69,7 @@ import '../../program_info.dart' show |
buildProgramInfo; |
import '../hub/session_manager.dart' show |
- FletchVm, |
+ DartinoVm, |
SessionState, |
Sessions; |
@@ -81,8 +81,8 @@ import '../verbs/infrastructure.dart' show |
ClientCommand, |
CommandSender, |
DiagnosticKind, |
- FletchCompiler, |
- FletchDelta, |
+ DartinoCompiler, |
+ DartinoDelta, |
IncrementalCompiler, |
WorkerConnection, |
IsolatePool, |
@@ -91,22 +91,22 @@ import '../verbs/infrastructure.dart' show |
StreamIterator, |
throwFatalError; |
-import '../../incremental/fletchc_incremental.dart' show |
+import '../../incremental/dartino_compiler_incremental.dart' show |
IncrementalCompilationFailed, |
IncrementalMode, |
parseIncrementalMode, |
unparseIncrementalMode; |
-export '../../incremental/fletchc_incremental.dart' show |
+export '../../incremental/dartino_compiler_incremental.dart' show |
IncrementalMode; |
-import '../../fletch_compiler.dart' show fletchDeviceType; |
+import '../../dartino_compiler.dart' show dartinoDeviceType; |
import '../hub/exit_codes.dart' as exit_codes; |
-import '../../fletch_system.dart' show |
- FletchFunction, |
- FletchSystem; |
+import '../../dartino_system.dart' show |
+ DartinoFunction, |
+ DartinoSystem; |
import '../../bytecodes.dart' show |
Bytecode, |
@@ -117,8 +117,8 @@ import '../diagnostic.dart' show |
import '../guess_configuration.dart' show |
executable, |
- fletchVersion, |
- guessFletchVm; |
+ dartinoVersion, |
+ guessDartinoVm; |
import '../device_type.dart' show |
DeviceType, |
@@ -205,44 +205,44 @@ void disconnectFromAgent(AgentConnection connection) { |
} |
Future<Null> checkAgentVersion(Uri base, SessionState state) async { |
- String deviceFletchVersion = await withAgentConnection(state, |
- (connection) => connection.fletchVersion()); |
- Uri packageFile = await lookForAgentPackage(base, version: fletchVersion); |
+ String deviceDartinoVersion = await withAgentConnection(state, |
+ (connection) => connection.dartinoVersion()); |
+ Uri packageFile = await lookForAgentPackage(base, version: dartinoVersion); |
String fixit; |
if (packageFile != null) { |
fixit = "Try running\n" |
- " 'fletch x-upgrade agent in session ${state.name}'."; |
+ " 'dartino x-upgrade agent in session ${state.name}'."; |
} else { |
fixit = "Try downloading a matching SDK and running\n" |
- " 'fletch x-upgrade agent in session ${state.name}'\n" |
+ " 'dartino x-upgrade agent in session ${state.name}'\n" |
"from the SDK's root directory."; |
} |
- if (fletchVersion != deviceFletchVersion) { |
+ if (dartinoVersion != deviceDartinoVersion) { |
throwFatalError(DiagnosticKind.agentVersionMismatch, |
- userInput: fletchVersion, |
- additionalUserInput: deviceFletchVersion, |
+ userInput: dartinoVersion, |
+ additionalUserInput: deviceDartinoVersion, |
fixit: fixit); |
} |
} |
Future<Null> startAndAttachViaAgent(Uri base, SessionState state) async { |
- // TODO(wibling): integrate with the FletchVm class, e.g. have a |
- // AgentFletchVm and LocalFletchVm that both share the same interface |
+ // TODO(wibling): integrate with the DartinoVm class, e.g. have a |
+ // AgentDartinoVm and LocalDartinoVm that both share the same interface |
// where the former is interacting with the agent. |
await checkAgentVersion(base, state); |
VmData vmData = await withAgentConnection(state, |
(connection) => connection.startVm()); |
- state.fletchAgentVmId = vmData.id; |
+ state.dartinoAgentVmId = vmData.id; |
String host = state.settings.deviceAddress.host; |
await attachToVm(host, vmData.port, state); |
await state.session.disableVMStandardOutput(); |
} |
Future<Null> startAndAttachDirectly(SessionState state, Uri base) async { |
- String fletchVmPath = state.compilerHelper.fletchVm.toFilePath(); |
- state.fletchVm = await FletchVm.start(fletchVmPath, workingDirectory: base); |
- await attachToVm(state.fletchVm.host, state.fletchVm.port, state); |
+ String dartinoVmPath = state.compilerHelper.dartinoVm.toFilePath(); |
+ state.dartinoVm = await DartinoVm.start(dartinoVmPath, workingDirectory: base); |
+ await attachToVm(state.dartinoVm.host, state.dartinoVm.port, state); |
await state.session.disableVMStandardOutput(); |
} |
@@ -255,14 +255,14 @@ Future<Null> attachToVm(String host, int port, SessionState state) async { |
// Perform handshake with VM which validates that VM and compiler |
// have the same versions. |
- HandShakeResult handShakeResult = await session.handShake(fletchVersion); |
+ HandShakeResult handShakeResult = await session.handShake(dartinoVersion); |
if (handShakeResult == null) { |
throwFatalError(DiagnosticKind.handShakeFailed, address: '$host:$port'); |
} |
if (!handShakeResult.success) { |
throwFatalError(DiagnosticKind.versionMismatch, |
address: '$host:$port', |
- userInput: fletchVersion, |
+ userInput: dartinoVersion, |
additionalUserInput: handShakeResult.version); |
} |
@@ -284,9 +284,9 @@ Future<int> compile( |
state.resetCompiler(); |
} |
Uri firstScript = state.script; |
- List<FletchDelta> previousResults = state.compilationResults; |
+ List<DartinoDelta> previousResults = state.compilationResults; |
- FletchDelta newResult; |
+ DartinoDelta newResult; |
try { |
if (analyzeOnly) { |
state.resetCompiler(); |
@@ -359,16 +359,16 @@ Future<Settings> createSettings( |
StreamIterator<ClientCommand> commandIterator) async { |
bool userProvidedSettings = uri != null; |
if (!userProvidedSettings) { |
- // Try to find a $sessionName.fletch-settings file starting from the current |
+ // Try to find a $sessionName.dartino-settings file starting from the current |
// working directory and walking up its parent directories. |
- uri = await findFile(cwd, '$sessionName.fletch-settings'); |
+ uri = await findFile(cwd, '$sessionName.dartino-settings'); |
- // If no $sessionName.fletch-settings file is found, try to find the |
+ // If no $sessionName.dartino-settings file is found, try to find the |
// settings template file (in the SDK or git repo) by looking for a |
- // .fletch-settings file starting from the fletch executable's directory |
+ // .dartino-settings file starting from the dartino executable's directory |
// and walking up its parent directory chain. |
if (uri == null) { |
- uri = await findFile(executable, '.fletch-settings'); |
+ uri = await findFile(executable, '.dartino-settings'); |
if (uri != null) print('Using template settings file $uri'); |
} |
} |
@@ -381,16 +381,16 @@ Future<Settings> createSettings( |
if (userProvidedSettings) return settings; |
// TODO(wibling): get rid of below special handling of the sessions 'remote' |
- // and 'local' and come up with a fletch project concept that can contain |
+ // and 'local' and come up with a dartino project concept that can contain |
// these settings. |
Uri packagesUri; |
Address address; |
switch (sessionName) { |
case "remote": |
- uri = configFileUri.resolve("remote.fletch-settings"); |
+ uri = configFileUri.resolve("remote.dartino-settings"); |
Settings remoteSettings = await readSettings(uri); |
if (remoteSettings != null) return remoteSettings; |
- packagesUri = executable.resolve("fletch-sdk.packages"); |
+ packagesUri = executable.resolve("dartino-sdk.packages"); |
address = await readAddressFromUser(commandSender, commandIterator); |
if (address == null) { |
// Assume user aborted data entry. |
@@ -399,11 +399,11 @@ Future<Settings> createSettings( |
break; |
case "local": |
- uri = configFileUri.resolve("local.fletch-settings"); |
+ uri = configFileUri.resolve("local.dartino-settings"); |
Settings localSettings = await readSettings(uri); |
if (localSettings != null) return localSettings; |
// TODO(ahe): Use mock packages here. |
- packagesUri = executable.resolve("fletch-sdk.packages"); |
+ packagesUri = executable.resolve("dartino-sdk.packages"); |
break; |
default: |
@@ -449,7 +449,7 @@ Future<Address> readAddressFromUser( |
devices = await discoverDevices(prefixWithNumber: true); |
if (devices.isEmpty) { |
commandSender.sendStdout( |
- "Couldn't find Fletch capable devices\n"); |
+ "Couldn't find Dartino capable devices\n"); |
commandSender.sendStdout(message); |
} else { |
if (devices.length == 1) { |
@@ -458,7 +458,7 @@ Future<Address> readAddressFromUser( |
} else { |
commandSender.sendStdout("\n"); |
commandSender.sendStdout( |
- "Found ${devices.length} Fletch capable devices\n"); |
+ "Found ${devices.length} Dartino capable devices\n"); |
commandSender.sendStdout( |
"Please enter the number or the IP address of " |
"the remote device you would like to use " |
@@ -503,33 +503,33 @@ SessionState createSessionState( |
String name, |
Settings settings, |
{Uri libraryRoot, |
- Uri fletchVm, |
+ Uri dartinoVm, |
Uri nativesJson}) { |
if (settings == null) { |
settings = const Settings.empty(); |
} |
- List<String> compilerOptions = const bool.fromEnvironment("fletchc-verbose") |
+ List<String> compilerOptions = const bool.fromEnvironment("dartino_compiler-verbose") |
? <String>['--verbose'] : <String>[]; |
compilerOptions.addAll(settings.options); |
Uri packageConfig = settings.packages; |
if (packageConfig == null) { |
- packageConfig = executable.resolve("fletch-sdk.packages"); |
+ packageConfig = executable.resolve("dartino-sdk.packages"); |
} |
DeviceType deviceType = settings.deviceType ?? |
- parseDeviceType(fletchDeviceType); |
+ parseDeviceType(dartinoDeviceType); |
String platform = (deviceType == DeviceType.embedded) |
- ? "fletch_embedded.platform" |
- : "fletch_mobile.platform"; |
+ ? "dartino_embedded.platform" |
+ : "dartino_mobile.platform"; |
- FletchCompiler compilerHelper = new FletchCompiler( |
+ DartinoCompiler compilerHelper = new DartinoCompiler( |
options: compilerOptions, |
packageConfig: packageConfig, |
environment: settings.constants, |
platform: platform, |
libraryRoot: libraryRoot, |
- fletchVm: fletchVm, |
+ dartinoVm: dartinoVm, |
nativesJson: nativesJson); |
return new SessionState( |
@@ -564,10 +564,10 @@ Future<int> run( |
SessionState state, |
{List<String> testDebuggerCommands, |
bool terminateDebugger: true}) async { |
- List<FletchDelta> compilationResults = state.compilationResults; |
+ List<DartinoDelta> compilationResults = state.compilationResults; |
Session session = state.session; |
- for (FletchDelta delta in compilationResults) { |
+ for (DartinoDelta delta in compilationResults) { |
await session.applyDelta(delta); |
} |
@@ -586,7 +586,7 @@ Future<int> run( |
if (command == null) { |
await session.kill(); |
await session.shutdown(); |
- throwInternalError("No command received from Fletch VM"); |
+ throwInternalError("No command received from Dartino VM"); |
} |
Future printException() async { |
@@ -633,12 +633,12 @@ Future<int> run( |
break; |
case VmCommandCode.ConnectionError: |
- state.log("Error on connection to Fletch VM: ${command.error}"); |
+ state.log("Error on connection to Dartino VM: ${command.error}"); |
exitCode = exit_codes.COMPILER_EXITCODE_CONNECTION_ERROR; |
break; |
default: |
- throwInternalError("Unexpected result from Fletch VM: '$command'"); |
+ throwInternalError("Unexpected result from Dartino VM: '$command'"); |
break; |
} |
} finally { |
@@ -660,11 +660,11 @@ Future<int> run( |
Future<int> export(SessionState state, |
Uri snapshot, |
{bool binaryProgramInfo: false}) async { |
- List<FletchDelta> compilationResults = state.compilationResults; |
+ List<DartinoDelta> compilationResults = state.compilationResults; |
Session session = state.session; |
state.session = null; |
- for (FletchDelta delta in compilationResults) { |
+ for (DartinoDelta delta in compilationResults) { |
await session.applyDelta(delta); |
} |
@@ -703,7 +703,7 @@ Future<int> compileAndAttachToVmThen( |
Future<int> action(), |
{ClientEventHandler eventHandler}) async { |
bool startedVmDirectly = false; |
- List<FletchDelta> compilationResults = state.compilationResults; |
+ List<DartinoDelta> compilationResults = state.compilationResults; |
if (compilationResults.isEmpty || script != null) { |
if (script == null) { |
throwFatalError(DiagnosticKind.noFileTarget); |
@@ -719,7 +719,7 @@ Future<int> compileAndAttachToVmThen( |
// We cannot reuse a session that has already been loaded. Loading |
// currently implies that some of the code has been run. |
if (state.explicitAttach) { |
- // If the user explicitly called 'fletch attach' we cannot |
+ // If the user explicitly called 'dartino attach' we cannot |
// create a new VM session since we don't know if the vm is |
// running locally or remotely and if running remotely there |
// is no guarantee there is an agent to start a new vm. |
@@ -741,10 +741,10 @@ Future<int> compileAndAttachToVmThen( |
} else { |
startedVmDirectly = true; |
await startAndAttachDirectly(state, base); |
- state.fletchVm.stdoutLines.listen((String line) { |
+ state.dartinoVm.stdoutLines.listen((String line) { |
commandSender.sendStdout("$line\n"); |
}); |
- state.fletchVm.stderrLines.listen((String line) { |
+ state.dartinoVm.stderrLines.listen((String line) { |
commandSender.sendStderr("$line\n"); |
}); |
} |
@@ -765,7 +765,7 @@ Future<int> compileAndAttachToVmThen( |
} |
} finally { |
if (waitForVmExit && startedVmDirectly) { |
- exitCode = await state.fletchVm.exitCode; |
+ exitCode = await state.dartinoVm.exitCode; |
} |
state.detachCommandSender(); |
} |
@@ -778,10 +778,10 @@ void setupClientInOut( |
ClientEventHandler eventHandler) { |
// Forward output going into the state's outputSink using the passed in |
// commandSender. This typically forwards output to the hub (main isolate) |
- // which forwards it on to stdout of the Fletch C++ client. |
+ // which forwards it on to stdout of the Dartino C++ client. |
state.attachCommandSender(commandSender); |
- // Start event handling for input passed from the Fletch C++ client. |
+ // Start event handling for input passed from the Dartino C++ client. |
eventHandler(state.session); |
// Let the hub (main isolate) know that event handling has been started. |
@@ -811,7 +811,7 @@ ClientEventHandler defaultClientEventHandler( |
void handleSignal(SessionState state, int signalNumber) { |
state.log("Received signal $signalNumber"); |
- if (!state.hasRemoteVm && state.fletchVm == null) { |
+ if (!state.hasRemoteVm && state.dartinoVm == null) { |
// This can happen if a user has attached to a vm using the "attach" verb |
// in which case we don't forward the signal to the vm. |
// TODO(wibling): Determine how to interpret the signal for the persistent |
@@ -823,21 +823,21 @@ void handleSignal(SessionState state, int signalNumber) { |
if (state.hasRemoteVm) { |
signalAgentVm(state, signalNumber); |
} else { |
- assert(state.fletchVm.process != null); |
- int vmPid = state.fletchVm.process.pid; |
+ assert(state.dartinoVm.process != null); |
+ int vmPid = state.dartinoVm.process.pid; |
Process.runSync("kill", ["-$signalNumber", "$vmPid"]); |
} |
} |
Future signalAgentVm(SessionState state, int signalNumber) async { |
await withAgentConnection(state, (connection) { |
- return connection.signalVm(state.fletchAgentVmId, signalNumber); |
+ return connection.signalVm(state.dartinoAgentVmId, signalNumber); |
}); |
} |
String extractVersion(Uri uri) { |
List<String> nameParts = uri.pathSegments.last.split('_'); |
- if (nameParts.length != 3 || nameParts[0] != 'fletch-agent') { |
+ if (nameParts.length != 3 || nameParts[0] != 'dartino-agent') { |
throwFatalError(DiagnosticKind.upgradeInvalidPackageName); |
} |
String version = nameParts[1]; |
@@ -848,7 +848,7 @@ String extractVersion(Uri uri) { |
return version; |
} |
-/// Try to locate an Fletch agent package file assuming the normal SDK layout |
+/// Try to locate an Dartino agent package file assuming the normal SDK layout |
/// with SDK base directory [base]. |
/// |
/// If the parameter [version] is passed, the Uri is only returned, if |
@@ -864,7 +864,7 @@ Future<Uri> lookForAgentPackage(Uri base, {String version}) async { |
for (FileSystemEntity entry in platformDir.listSync()) { |
Uri uri = entry.uri; |
String name = uri.pathSegments.last; |
- if (name.startsWith('fletch-agent') && |
+ if (name.startsWith('dartino-agent') && |
name.endsWith('.deb') && |
(version == null || extractVersion(uri) == version)) { |
return uri; |
@@ -1007,7 +1007,7 @@ Future<int> upgradeAgent( |
Version existingVersion = parseVersion( |
await withAgentConnection(state, |
- (connection) => connection.fletchVersion())); |
+ (connection) => connection.dartinoVersion())); |
if (existingVersion == version) { |
print('Target device is already at $version'); |
@@ -1046,10 +1046,10 @@ Future<int> upgradeAgent( |
} |
List<int> data = await new File.fromUri(packageUri).readAsBytes(); |
- print("Sending package to fletch agent"); |
+ print("Sending package to dartino agent"); |
await withAgentConnection(state, |
(connection) => connection.upgradeAgent(version.toString(), data)); |
- print("Transfer complete, waiting for the Fletch agent to restart. " |
+ print("Transfer complete, waiting for the Dartino agent to restart. " |
"This can take a few seconds."); |
Version newVersion; |
@@ -1066,7 +1066,7 @@ Future<int> upgradeAgent( |
state.log("Connected to TCP waitForAgentUpgrade $info"); |
}); |
AgentConnection connection = new AgentConnection(socket); |
- newVersion = parseVersion(await connection.fletchVersion()); |
+ newVersion = parseVersion(await connection.dartinoVersion()); |
disconnectFromAgent(connection); |
if (newVersion != existingVersion) { |
break; |
@@ -1082,8 +1082,8 @@ Future<int> upgradeAgent( |
"If the upgrade fails again, try rebooting the device."); |
return 1; |
} else if (newVersion == null) { |
- print("Could not connect to Fletch agent after upgrade."); |
- print("Try running 'fletch show devices' later to see if it has been" |
+ print("Could not connect to Dartino agent after upgrade."); |
+ print("Try running 'dartino show devices' later to see if it has been" |
" restarted. If the device does not show up, try rebooting it."); |
return 1; |
} else { |
@@ -1123,7 +1123,7 @@ Future<int> downloadTools( |
} |
const String gcsRoot = "https://storage.googleapis.com"; |
- String gcsBucket = "fletch-archive"; |
+ String gcsBucket = "dartino-archive"; |
Future downloadTool(String gcsPath, String zipFile, String toolName) async { |
Uri url = Uri.parse("$gcsRoot/$gcsBucket/$gcsPath/$zipFile"); |
@@ -1150,12 +1150,12 @@ Future<int> downloadTools( |
String gcsPath; |
- Version version = parseVersion(fletchVersion); |
+ Version version = parseVersion(dartinoVersion); |
if (version.isEdgeVersion) { |
print("WARNING: For bleeding edge a fixed image is used."); |
// For edge versions download use a well known version for now. |
var knownVersion = "0.3.0-edge.3c85dbafe006eb2ce16545aaf3df1352fa7a4500"; |
- gcsBucket = "fletch-temporary"; |
+ gcsBucket = "dartino-temporary"; |
gcsPath = "channels/be/raw/$knownVersion/sdk"; |
} else if (version.isDevVersion) { |
// TODO(sgjesse): Change this to channels/dev/release at some point. |
@@ -1232,7 +1232,7 @@ Future<String> getAgentVersion(InternetAddress host, int port) async { |
} |
try { |
AgentConnection connection = new AgentConnection(socket); |
- return await connection.fletchVersion(); |
+ return await connection.dartinoVersion(); |
} finally { |
socket.close(); |
} |