Sdk: [Windows] Pub get fails for git dependency

Created on 30 Jun 2014  Â·  16Comments  Â·  Source: dart-lang/sdk

_This issue was originally filed by huli...@gmail.com_


What steps will reproduce the problem?

  1. Use Dart-editor on windows
  2. Add git dependency to pubspec.yaml
  3. run pub get from command line or editor

What is the expected output? What do you see instead?
I would expect pub to clone the repository and add the packege to my project. That works on linux and mac. What I get using windows is the following:

---- Log transcript ----
FINE: Pub 1.5.1
IO : Spawning "cmd /c ver" in C:\Users\me\dart\test.
IO : Finished ver. Exit code 0.
    | stdout:
    | |
    | | Microsoft Windows [Version 6.1.7601]
    | Nothing output on stderr.
SLVR: Solving dependencies:
    | - Connector any from git ([email protected]:USER/dartconnector.gi
t)
IO : Spawning "cmd /c git --version" in C:\Users\me\dart\test.
IO : Finished git. Exit code 0.
    | stdout:
    | | git version 1.9.4.msysgit.0
    | Nothing output on stderr.
FINE: Determined git command git.
IO : Spawning "cmd /c git fetch" in C:\Users\me\AppData\Roaming\Pub\Cache\
git\cache\Connector-f10e1203168a32b10eec11018581339a8c00bc36
IO : Finished git. Exit code 128.
    | Nothing output on stdout.
    | stderr:
    | | fatal: Not a git repository (or any of the parent directories): .git
SLVR: Could not get versions for Connector any from git ([email protected]
:USER/dartconnector.git):
    | Git error. Command: git fetch
    | fatal: Not a git repository (or any of the parent directories): .git
    |
    | #­0 run.<anonymous closure> (file:///e:/b/build/slave/dart-editor-win-
stable/build/dart/sdk/lib/_internal/pub/lib/src/git.dart:54)
    | #­1 registerUnaryCallback.<anonymous closure>.<anonymous closure> (pac
kage:stack_trace/src/stack_zone_specification.dart:129)
    | #­2 StackZoneSpecification._run (package:stack_trace/src/stack_zone_sp
ecification.dart:185)
    | #­3 StackZoneSpecification._run (package:stack_trace/src/stack_zone_sp
ecification.dart:188)
    | #­4 StackZoneSpecification._run (package:stack_trace/src/stack_zone_sp
ecification.dart:186)
    | #­5 registerUnaryCallback.<anonymous closure> (package:stack_trace/src
/stack_zone_specification.dart:129)
    | #­6 _rootRunUnary (dart:async/zone.dart:730)
    | #­7 _ZoneDelegate.runUnary (dart:async/zone.dart:462)
    | #­8 _CustomizedZone.runUnary (dart:async/zone.dart:667)
    | #­9 _Future._propagateToListeners.handleValueCallback (dart:async/futu
re_impl.dart:488)
    | #­10 _Future._propagateToListeners (dart:async/future_impl.dart:571)
    | #­11 _Future._complete (dart:async/future_impl.dart:317)
    | #­12 complete (dart:async/future_impl.dart:44)
    | #­13 registerUnaryCallback.<anonymous closure>.<anonymous closure> (pac
kage:stack_trace/src/stack_zone_specification.dart:129)
    | #­14 StackZoneSpecification._run (package:stack_trace/src/stack_zone_sp
ecification.dart:185)
    | #­15 registerUnaryCallback.<anonymous closure> (package:stack_trace/src
/stack_zone_specification.dart:129)
    | #­16 _rootRunUnary (dart:async/zone.dart:730)
    | #­17 _ZoneDelegate.runUnary (dart:async/zone.dart:462)
    | #­18 _CustomizedZone.runUnary (dart:async/zone.dart:667)
    | #­19 _Future._propagateToListeners.handleValueCallback (dart:async/futu
re_impl.dart:488)
    | #­20 _Future._propagateToListeners (dart:async/future_impl.dart:571)
    | #­21 _Future._complete (dart:async/future_impl.dart:317)
    | #­22 complete (dart:async/future_impl.dart:44)
    | #­23 registerUnaryCallback.<anonymous closure>.<anonymous closure> (pac
kage:stack_trace/src/stack_zone_specification.dart:129)
    | #­24 StackZoneSpecification._run (package:stack_trace/src/stack_zone_sp
ecification.dart:185)
    | #­25 registerUnaryCallback.<anonymous closure> (package:stack_trace/src
/stack_zone_specification.dart:129)
    | #­26 _rootRunUnary (dart:async/zone.dart:730)
    | #­27 _ZoneDelegate.runUnary (dart:async/zone.dart:462)
    | #­28 _CustomizedZone.runUnary (dart:async/zone.dart:667)
    | #­29 _Future._propagateToListeners.handleValueCallback (dart:async/futu
re_impl.dart:488)
    | #­30 _Future._propagateToListeners (dart:async/future_impl.dart:571)
    | #­31 _Future._completeWithValue (dart:async/future_impl.dart:331)
    | #­32 _Future._asyncComplete.<anonymous closure> (dart:async/future_impl
.dart:393)
    | #­33 StackZoneSpecification._run (package:stack_trace/src/stack_zone_sp
ecification.dart:185)
    | #­34 registerCallback.<anonymous closure> (package:stack_trace/src/stac
k_zone_specification.dart:119)
    | #­35 _rootRun (dart:async/zone.dart:723)
    | #­36 _ZoneDelegate.run (dart:async/zone.dart:453)
    | #­37 _CustomizedZone.run (dart:async/zone.dart:663)
    | #­38 _BaseZone.runGuarded (dart:async/zone.dart:574)
    | #­39 _BaseZone.bindCallback.<anonymous closure> (dart:async/zone.dart:5
99)
    | #­40 _asyncRunCallbackLoop (dart:async/schedule_microtask.dart:23)
    | #­41 _asyncRunCallback (dart:async/schedule_microtask.dart:32)
    | #­42 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_pat
ch.dart:128)
IO : Spawning "cmd /c git fetch" in C:\Users\me\AppData\Roaming\Pub\Cache\
git\cache\Connector-f10e1203168a32b10eec11018581339a8c00bc36
IO : Finished git. Exit code 128.
    | Nothing output on stdout.
    | stderr:
    | | fatal: Not a git repository (or any of the parent directories): .git
SLVR: BacktrackingSolver took 0:00:00.218431 seconds.
    | - Requested 2 version lists
    | - Looked up 0 cached version lists
    | - Requested 0 pubspecs
    | - Looked up 1 cached pubspecs
    |
MSG : Resolving dependencies... (0.2s)
FINE: Clean up system cache temp directory C:\Users\me\AppData\Roaming\Pub\
Cache_temp.
ERR : Git error. Command: git fetch
    | fatal: Not a git repository (or any of the parent directories): .git
FINE: Exception type: GitException
ERR : e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\git.dart 54 run.<fn>
    | dart:isolate
                    _RawReceivePortImpl._handleMessage
    | ===== asynchronous gap ===========================
    | dart:async
                                            _Future.then
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\git.dart 53 run
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\source\git.dart 214 GitSource._updateRepoCache
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\source\git.dart 194 GitSource._ensureRevision.<fn>
    | dart:async
                                            Future.Future.sync
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 90 syncFuture
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\source\git.dart 183 GitSource._ensureRevision
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\source\git.dart 78 GitSource.getDirectory
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\source\cached.dart 33 CachedSource.doDescribe
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\source.dart 78 Source.describe
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\source.dart 63 Source.getVersions
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\version_solver.dart 181 PubspecCache.getVersions
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 568 Traverser._getAllowedVersions
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 557 Traverser._traverseDeps.<fn>.<fn>.<f
n>
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\version_queue.dart 106 VersionQueue._calculateAllowed
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\version_queue.dart 68 VersionQueue.create
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 556 Traverser._traverseDeps.<fn>.<fn>
    | dart:isolate
                                            _RawReceivePortImpl._handleMessage
    | ===== asynchronous gap ===========================
    | dart:async
                                            _Future.then
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 504 Traverser._traverseDeps.<fn>
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 86 newFuture.<fn>
    | dart:isolate
                                            _RawReceivePortImpl._handleMessage
    | ===== asynchronous gap ===========================
    | dart:async
                                            _Future.then
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 86 newFuture
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 712 resetStack
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 503 Traverser._traverseDeps
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 489 Traverser._traversePackage.<fn>
    | dart:isolate
                                            _RawReceivePortImpl._handleMessage
    | ===== asynchronous gap ===========================
    | dart:async
                                            _Future.then
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 458 Traverser._traversePackage
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 436 Traverser.traverse
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 220 BacktrackingSolver._traverseSolution
.<fn>
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 86 newFuture.<fn>
    | dart:isolate
                                            _RawReceivePortImpl._handleMessage
    | ===== asynchronous gap ===========================
    | dart:async
                                            _Future.then
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 86 newFuture
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 712 resetStack
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 219 BacktrackingSolver._traverseSolution

    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 134 BacktrackingSolver.solve.<fn>
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 86 newFuture.<fn>
    | dart:isolate
                                            _RawReceivePortImpl._handleMessage
    | ===== asynchronous gap ===========================
    | dart:async
                                            _Future.then
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 86 newFuture
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\backtracking_solver.dart 127 BacktrackingSolver.solve
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\version_solver.dart 37 resolveVersions.<fn>
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\log.dart 230 progress
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\solver\version_solver.dart 35 resolveVersions
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\entrypoint.dart 121 Entrypoint.acquireDependencies.<fn>
    | dart:async
                                            Future.Future.sync
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 90 syncFuture
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\entrypoint.dart 120 Entrypoint.acquireDependencies
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\command\get.dart 25 onRun
    | dart:async
                                            Future.Future.sync
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 90 syncFuture
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\command.dart 178 PubCommand.run
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\b
in\pub.dart 198 invokeCommand.<fn>
    | dart:async
                                            Future.Future.sync
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 90 syncFuture
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\b
in\pub.dart 197 invokeCommand
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\b
in\pub.dart 87 runPub.<fn>
    | dart:async
                                            Future.Future.sync
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 102 captureErrors.<fn>
    | package:stack_trace/src/chain.dart 93
                                            Chain.capture
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\l
ib\src\utils.dart 116 captureErrors
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\b
in\pub.dart 87 runPub
    | e:\b\build\slave\dart-editor-win-stable\build\dart\sdk\lib_internal\pub\b
in\pub.dart 74 main.<fn>
    | dart:isolate
                                            _RawReceivePortImpl._handleMessage

---- End log transcript ----

What version of the product are you using? On what operating system?
Dart Editor 1.5.1
Dart SDK 1.5.1
Git 1.9.4
Win7 x64

Please provide any additional information below.
It looks like pub tries to run git fetch without cloning the repository first.

Most helpful comment

If you delete it, this should start working again.

All 16 comments

_Added Area-Pub, Triaged labels._

Can you attach your pubspec.yaml and pubspec.lock?


_Added NeedsInfo label._

_This comment was originally written by @kaendfinger_


do you mind pastebin-ing this log so I can investigate?

_This comment was originally written by hulibub...@gmail.com_


Hey please find attached the 2 files. I had to anonymize the git url as the project is hosted on an in-house github installation.

I'm not sure what you mean by pastbin-ing the log as I already pasted it in my initial post.


Attachments:
pubspec.lock (89 Bytes)
pubspec.yaml (180 Bytes)

It looks like maybe you have a partially-valid repo in C:UsersmeAppDataRoamingPubCache
gitcacheConnector-f10e1203168a32b10eec11018581339a8c00bc36. Does that path exist? If so, what's in it?


_Added Triaged label._

_This comment was originally written by huli...@gmail.com_


The folder exists but is empty

If you delete it, this should start working again.

_Added C7 label._

I'm not sure how your cached git repo managed to get itself into a broken state. :(

We haven't heard of this happening before, so I'm going to hope it's a rare transient issue. Maybe git or the git server flaked out the first time you were installing the package or something. The workaround is pretty simple (though non-obvious!) so I think we'll just rely on that.

If you run into this again or know of others who do, though, please do let us know. If it becomes a more common problem, we can make pub detect it and handle it.


_Added NotPlanned label._

_This comment was originally written by huli...@gmail.com_


Thanks for the help. Deleting the cache folders seems to have solved the issue.

The broken state may have been caused by a failed git clone due to either an invalid certificate on the git server or failed authorization because of missing user certificates.

Either way, I never got an error message stating anything going wrong with the initial git clone. Just the git fetch error described above.

_This comment was originally written by jamesforres...@gmail.com_


Yup I got this one two. Deleting the file in the cache folder fixed things up. Thx.

_This comment was originally written by pmgupt...@gmail.com_


Same solution helped me to. Thanks

_This comment was originally written by shriniket...@gmail.com_


This problem is getting reported by many users who are using our github hosted dart code. It would be great if the Dart pub guys could detect this and handle it as mentioned by [email protected] in Comment #­9 (https://code.google.com/p/dart/issues/detail?id=19736#c9)

_This comment was originally written by bradley.flubach...@3ds.com_


I encountered this issue as well.

_Added Triaged label._

This issue has been moved to dart-lang/pub#1032.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ranquild picture ranquild  Â·  3Comments

xster picture xster  Â·  3Comments

xster picture xster  Â·  3Comments

rinick picture rinick  Â·  3Comments

brooth picture brooth  Â·  3Comments