# GENERATED BY: test/embedding/embedding_test.dart

$ tool/test-bin/pub_command_runner.dart pub --verbose get
MSG : Resolving dependencies...
MSG : + foo 1.0.0
MSG : Changed 1 dependency!
MSG : Logs written to $SANDBOX/cache/log/pub_log.txt.
[E] FINE: Pub 0.1.2+3
[E] SLVR: fact: myapp is 0.0.0
[E] SLVR: derived: myapp
[E] SLVR: fact: myapp depends on foo any
[E] SLVR:   selecting myapp
[E] SLVR:   derived: foo any
[E] IO  : Get versions from http://localhost:$PORT/api/packages/foo.
[E] IO  : HTTP GET http://localhost:$PORT/api/packages/foo
[E]    | Accept: application/vnd.pub.v2+json
[E]    | X-Pub-OS: $OS
[E]    | X-Pub-Command: get
[E]    | X-Pub-Session-ID: $ID
[E]    | X-Pub-Environment: test-environment
[E]    | X-Pub-Reason: direct
[E]    | user-agent: Dart pub 0.1.2+3
[E] IO  : HTTP response 200 OK for GET http://localhost:$PORT/api/packages/foo
[E]    | took: $TIME
[E]    | x-powered-by: Dart with package:shelf
[E]    | date: $TIME
[E]    | content-length: 281
[E]    | x-frame-options: SAMEORIGIN
[E]    | content-type: application/vnd.pub.v2+json
[E]    | x-xss-protection: 1; mode=block
[E]    | x-content-type-options: nosniff
[E] IO  : Writing $N characters to text file $SANDBOX/cache/hosted/localhost%58$PORT/.cache/foo-versions.json.
[E] FINE: Contents:
[E]    | {"name":"foo","uploaders":["nweiz@google.com"],"versions":[{"pubspec":{"name":"foo","version":"1.0.0"},"version":"1.0.0","archive_url":"http://localhost:$PORT/packages/foo/versions/1.0.0.tar.gz","archive_sha256":"439814f59cbc73e1c28ca5ac6e437d5f2af10dfd18db786ce46fe0663e605ccb"}],"_fetchedAt": "$TIME"}
[E] SLVR:   selecting foo 1.0.0
[E] SLVR: Version solving took: $TIME
[E]    | Tried 1 solutions.
[E] FINE: Resolving dependencies finished ($TIME)
[E] IO  : Get package from http://localhost:$PORT/packages/foo/versions/1.0.0.tar.gz.
[E] FINE: Downloading foo 1.0.0...
[E] IO  : Created temp directory $DIR
[E] IO  : HTTP GET http://localhost:$PORT/packages/foo/versions/1.0.0.tar.gz
[E]    | X-Pub-OS: $OS
[E]    | X-Pub-Command: get
[E]    | X-Pub-Session-ID: $ID
[E]    | X-Pub-Environment: test-environment
[E]    | X-Pub-Reason: direct
[E]    | user-agent: Dart pub 0.1.2+3
[E] IO  : HTTP response 200 OK for GET http://localhost:$PORT/packages/foo/versions/1.0.0.tar.gz
[E]    | took: $TIME
[E]    | x-powered-by: Dart with package:shelf
[E]    | date: $TIME
[E]    | transfer-encoding: chunked
[E]    | x-goog-hash: $CHECKSUM_HEADER
[E]    | x-frame-options: SAMEORIGIN
[E]    | content-type: application/octet-stream
[E]    | x-xss-protection: 1; mode=block
[E]    | x-content-type-options: nosniff
[E] IO  : Creating $FILE from stream
[E] FINE: Computed checksum $CRC32C for foo 1.0.0 with expected CRC32C of $CRC32C.
[E] IO  : Writing $N characters to text file $SANDBOX/cache/hosted-hashes/localhost%58$PORT/foo-1.0.0.sha256.
[E] FINE: Contents:
[E]    | 439814f59cbc73e1c28ca5ac6e437d5f2af10dfd18db786ce46fe0663e605ccb
[E] FINE: Created $FILE from stream
[E] IO  : Created temp directory $DIR
[E] IO  : Reading binary file $FILE.
[E] FINE: Extracting .tar.gz stream to $DIR
[E] IO  : Creating $FILE from stream
[E] FINE: Created $FILE from stream
[E] IO  : Creating $FILE from stream
[E] FINE: Created $FILE from stream
[E] FINE: Extracted .tar.gz to $DIR
[E] IO  : Renaming directory $A to $B
[E] IO  : Deleting directory $DIR
[E] IO  : Writing $N characters to text file $SANDBOX/cache/README.md.
[E] FINE: Contents:
[E]    | Pub Package Cache
[E]    | =================
[E]    | 
[E]    | This folder is used by Pub to store cached packages used in Dart / Flutter
[E]    | projects.
[E]    | 
[E]    | The contents of this folder should only be modified using the `dart pub` and
[E]    | `flutter pub` commands.
[E]    | 
[E]    | Modifying this folder manually can lead to inconsistent behavior.
[E]    | 
[E]    | For details on how manage the `PUB_CACHE`, see:
[E]    | https://dart.dev/go/pub-cache
[E] IO  : Writing $N characters to text file pubspec.lock.
[E] FINE: Contents:
[E]    | # Generated by pub
[E]    | # See https://dart.dev/tools/pub/glossary#lockfile
[E]    | packages:
[E]    |   foo:
[E]    |   dependency: "direct main"
[E]    |   description:
[E]    |   name: foo
[E]    |   sha256: "439814f59cbc73e1c28ca5ac6e437d5f2af10dfd18db786ce46fe0663e605ccb"
[E]    |   url: "http://localhost:$PORT"
[E]    |   source: hosted
[E]    |   version: "1.0.0"
[E]    | sdks:
[E]    |   dart: ">=0.1.2 <1.0.0"
[E] IO  : Writing $N characters to text file .dart_tool/package_config.json.
[E] FINE: Contents:
[E]    | {
[E]    |   "configVersion": 2,
[E]    |   "packages": [
[E]    |   {
[E]    |   "name": "foo",
[E]    |   "rootUri": "file://$SANDBOX/cache/hosted/localhost%2558$PORT/foo-1.0.0",
[E]    |   "packageUri": "lib/",
[E]    |   "languageVersion": "2.7"
[E]    |   },
[E]    |   {
[E]    |   "name": "myapp",
[E]    |   "rootUri": "../",
[E]    |   "packageUri": "lib/",
[E]    |   "languageVersion": "0.1"
[E]    |   }
[E]    |   ],
[E]    |   "generated": "$TIME",
[E]    |   "generator": "pub",
[E]    |   "generatorVersion": "0.1.2+3"
[E]    | }
[E] IO  : Writing $N characters to text file $SANDBOX/cache/log/pub_log.txt.

-------------------------------- END OF OUTPUT ---------------------------------

Information about the latest pub run.

If you believe something is not working right, you can go to
https://github.com/dart-lang/pub/issues/new to post a new issue and attach this file.

Before making this file public, make sure to remove any sensitive information!

Pub version: 0.1.2+3
Created: $TIME
FLUTTER_ROOT: <not set>
PUB_HOSTED_URL: http://localhost:$PORT
PUB_CACHE: "$SANDBOX/cache"
Command: dart pub --verbose get
Platform: $OS

---- $SANDBOX/myapp/pubspec.yaml ----
{"name":"myapp","environment":{"sdk":">=0.1.2 <1.0.0"},"dependencies":{"foo":"any"}}
---- End pubspec.yaml ----
---- $SANDBOX/myapp/pubspec.lock ----
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
  foo:
   dependency: "direct main"
   description:
   name: foo
   sha256: "439814f59cbc73e1c28ca5ac6e437d5f2af10dfd18db786ce46fe0663e605ccb"
   url: "http://localhost:$PORT"
   source: hosted
   version: "1.0.0"
sdks:
  dart: ">=0.1.2 <1.0.0"

---- End pubspec.lock ----
---- Log transcript ----
FINE: Pub 0.1.2+3
MSG : Resolving dependencies...
SLVR: fact: myapp is 0.0.0
SLVR: derived: myapp
SLVR: fact: myapp depends on foo any
SLVR:   selecting myapp
SLVR:   derived: foo any
IO  : Get versions from http://localhost:$PORT/api/packages/foo.
IO  : HTTP GET http://localhost:$PORT/api/packages/foo
   | Accept: application/vnd.pub.v2+json
   | X-Pub-OS: $OS
   | X-Pub-Command: get
   | X-Pub-Session-ID: $ID
   | X-Pub-Environment: test-environment
   | X-Pub-Reason: direct
   | user-agent: Dart pub 0.1.2+3
IO  : HTTP response 200 OK for GET http://localhost:$PORT/api/packages/foo
   | took: $TIME
   | x-powered-by: Dart with package:shelf
   | date: $TIME
   | content-length: 281
   | x-frame-options: SAMEORIGIN
   | content-type: application/vnd.pub.v2+json
   | x-xss-protection: 1; mode=block
   | x-content-type-options: nosniff
IO  : Writing $N characters to text file $SANDBOX/cache/hosted/localhost%58$PORT/.cache/foo-versions.json.
FINE: Contents:
   | {"name":"foo","uploaders":["nweiz@google.com"],"versions":[{"pubspec":{"name":"foo","version":"1.0.0"},"version":"1.0.0","archive_url":"http://localhost:$PORT/packages/foo/versions/1.0.0.tar.gz","archive_sha256":"439814f59cbc73e1c28ca5ac6e437d5f2af10dfd18db786ce46fe0663e605ccb"}],"_fetchedAt": "$TIME"}
SLVR:   selecting foo 1.0.0
SLVR: Version solving took: $TIME
   | Tried 1 solutions.
FINE: Resolving dependencies finished ($TIME)
IO  : Get package from http://localhost:$PORT/packages/foo/versions/1.0.0.tar.gz.
FINE: Downloading foo 1.0.0...
IO  : Created temp directory $DIR
IO  : HTTP GET http://localhost:$PORT/packages/foo/versions/1.0.0.tar.gz
   | X-Pub-OS: $OS
   | X-Pub-Command: get
   | X-Pub-Session-ID: $ID
   | X-Pub-Environment: test-environment
   | X-Pub-Reason: direct
   | user-agent: Dart pub 0.1.2+3
IO  : HTTP response 200 OK for GET http://localhost:$PORT/packages/foo/versions/1.0.0.tar.gz
   | took: $TIME
   | x-powered-by: Dart with package:shelf
   | date: $TIME
   | transfer-encoding: chunked
   | x-goog-hash: $CHECKSUM_HEADER
   | x-frame-options: SAMEORIGIN
   | content-type: application/octet-stream
   | x-xss-protection: 1; mode=block
   | x-content-type-options: nosniff
IO  : Creating $FILE from stream
FINE: Computed checksum $CRC32C for foo 1.0.0 with expected CRC32C of $CRC32C.
IO  : Writing $N characters to text file $SANDBOX/cache/hosted-hashes/localhost%58$PORT/foo-1.0.0.sha256.
FINE: Contents:
   | 439814f59cbc73e1c28ca5ac6e437d5f2af10dfd18db786ce46fe0663e605ccb
FINE: Created $FILE from stream
IO  : Created temp directory $DIR
IO  : Reading binary file $FILE.
FINE: Extracting .tar.gz stream to $DIR
IO  : Creating $FILE from stream
FINE: Created $FILE from stream
IO  : Creating $FILE from stream
FINE: Created $FILE from stream
FINE: Extracted .tar.gz to $DIR
IO  : Renaming directory $A to $B
IO  : Deleting directory $DIR
IO  : Writing $N characters to text file $SANDBOX/cache/README.md.
FINE: Contents:
   | Pub Package Cache
   | =================
   | 
   | This folder is used by Pub to store cached packages used in Dart / Flutter
   | projects.
   | 
   | The contents of this folder should only be modified using the `dart pub` and
   | `flutter pub` commands.
   | 
   | Modifying this folder manually can lead to inconsistent behavior.
   | 
   | For details on how manage the `PUB_CACHE`, see:
   | https://dart.dev/go/pub-cache
MSG : + foo 1.0.0
IO  : Writing $N characters to text file pubspec.lock.
FINE: Contents:
   | # Generated by pub
   | # See https://dart.dev/tools/pub/glossary#lockfile
   | packages:
   |   foo:
   |   dependency: "direct main"
   |   description:
   |   name: foo
   |   sha256: "439814f59cbc73e1c28ca5ac6e437d5f2af10dfd18db786ce46fe0663e605ccb"
   |   url: "http://localhost:$PORT"
   |   source: hosted
   |   version: "1.0.0"
   | sdks:
   |   dart: ">=0.1.2 <1.0.0"
MSG : Changed 1 dependency!
IO  : Writing $N characters to text file .dart_tool/package_config.json.
FINE: Contents:
   | {
   |   "configVersion": 2,
   |   "packages": [
   |   {
   |   "name": "foo",
   |   "rootUri": "file://$SANDBOX/cache/hosted/localhost%2558$PORT/foo-1.0.0",
   |   "packageUri": "lib/",
   |   "languageVersion": "2.7"
   |   },
   |   {
   |   "name": "myapp",
   |   "rootUri": "../",
   |   "packageUri": "lib/",
   |   "languageVersion": "0.1"
   |   }
   |   ],
   |   "generated": "$TIME",
   |   "generator": "pub",
   |   "generatorVersion": "0.1.2+3"
   | }
---- End log transcript ----
-------------------------------- END OF OUTPUT ---------------------------------

$ tool/test-bin/pub_command_runner.dart pub fail
[E] Bad state: Pub has crashed
[E]  tool/test-bin/pub_command_runner.dart $LINE:$COL   ThrowingCommand.runProtected
[E] package:pub/src/command.dart $LINE:$COL   PubCommand.run.<fn>
[E] dart:async   new Future.sync
[E] package:pub/src/utils.dart $LINE:$COL   captureErrors.wrappedCallback
[E] dart:async   runZonedGuarded
[E] package:pub/src/utils.dart $LINE:$COL   captureErrors
[E] package:pub/src/command.dart $LINE:$COL   PubCommand.run
[E] package:args/command_runner.dart $LINE:$COL   CommandRunner.runCommand
[E]  tool/test-bin/pub_command_runner.dart $LINE:$COL  Runner.runCommand
[E]  tool/test-bin/pub_command_runner.dart $LINE:$COL  Runner.run
[E]  tool/test-bin/pub_command_runner.dart $LINE:$COL  main
[E] This is an unexpected error. The full log and other details are collected in:
[E] 
[E]    $SANDBOX/cache/log/pub_log.txt
[E] 
[E] Consider creating an issue on https://github.com/dart-lang/pub/issues/new
[E] and attaching the relevant parts of that log file.

-------------------------------- END OF OUTPUT ---------------------------------

Information about the latest pub run.

If you believe something is not working right, you can go to
https://github.com/dart-lang/pub/issues/new to post a new issue and attach this file.

Before making this file public, make sure to remove any sensitive information!

Pub version: 0.1.2+3
Created: $TIME
FLUTTER_ROOT: <not set>
PUB_HOSTED_URL: http://localhost:$PORT
PUB_CACHE: "$SANDBOX/cache"
Command: dart pub fail
Platform: $OS

---- Log transcript ----
FINE: Pub 0.1.2+3
ERR : Bad state: Pub has crashed
FINE: Exception type: StateError
ERR : tool/test-bin/pub_command_runner.dart $LINE:$COL   ThrowingCommand.runProtected
   | package:pub/src/command.dart $LINE:$COL   PubCommand.run.<fn>
   | dart:async   new Future.sync
   | package:pub/src/utils.dart $LINE:$COL   captureErrors.wrappedCallback
   | dart:async   runZonedGuarded
   | package:pub/src/utils.dart $LINE:$COL   captureErrors
   | package:pub/src/command.dart $LINE:$COL   PubCommand.run
   | package:args/command_runner.dart $LINE:$COL   CommandRunner.runCommand
   | tool/test-bin/pub_command_runner.dart $LINE:$COL  Runner.runCommand
   | tool/test-bin/pub_command_runner.dart $LINE:$COL  Runner.run
   | tool/test-bin/pub_command_runner.dart $LINE:$COL  main
ERR : This is an unexpected error. The full log and other details are collected in:
   | 
   |   $SANDBOX/cache/log/pub_log.txt
   | 
   | Consider creating an issue on https://github.com/dart-lang/pub/issues/new
   | and attaching the relevant parts of that log file.
---- End log transcript ----
