On 02/03/2015 04:20 AM, Martin Nowak wrote:
On Tuesday, 3 February 2015 at 02:39:56 UTC, Vladimir Panteleev wrote:
I might revisit Dub again once some of the fixable issues mentioned
here are fixed.

Another very important argument is consistency in using packages.
I recently tried digger which is a really great tool, but it took me
about 5 min to get it running.


Just used Digger again and I'm going to copy my console output here, because it nicely illustrates my point.

➜ ~ cd Build/Digger/
➜ Digger git:(master) ls
ae/ bisect.ini cache.d common.d custom.d digger.d digger-web.d repo/ result/ win32/ bisect.d bisect.ini.sample CHANGELOG.md current/ digger* digger.ini.sample README.md repo.d web/
➜ Digger git:(master) git pull
rdremote: Counting objects: 25, done.
remote: Compressing objects: 100% (25/25), done.
remote: Total 25 (delta 11), reused 0 (delta 0)
Unpacking objects: 100% (25/25), done.
From https://github.com/CyberShadow/Digger
   8f33627..b6d06be  master     -> origin/master
Fetching submodule ae
md --buiFirst, rewinding head to replay your work on top of it...
Fast-forwarded master to b6d06be2346986a74937c918ed1d4ac121a9819f.
➜ Digger git:(master) ✗ rdmd --build-only digger
digger.d(12): Error: module main is in file 'ae/utils/main.d' which cannot be read
import path[0] = .
import path[1] = /usr/include/dmd/phobos
import path[2] = /usr/include/dmd/druntime/import
Failed: ["dmd", "-v", "-o-", "digger.d", "-I."]
➜ Digger git:(master) ✗ ls
ae/ bisect.ini cache.d common.d current/ digger* digger.ini.sample README.md repo.d web/ bisect.d bisect.ini.sample CHANGELOG.md config.d custom.d digger.d digger-web.d repo/ result/ win32/
➜ Digger git:(master) ✗ git submodule update
fatal: reference is not a tree: 318ccc76669e9840f43b88e63bcfb1e461ce6d61
Unable to checkout '318ccc76669e9840f43b88e63bcfb1e461ce6d61' in submodule path 'ae'
➜ Digger git:(master) ✗ git submodule fetch
usage: git submodule [--quiet] add [-b <branch>] [-f|--force] [--name <name>] [--reference <repository>] [--] <repository> [<path>] or: git submodule [--quiet] status [--cached] [--recursive] [--] [<path>...]
   or: git submodule [--quiet] init [--] [<path>...]
   or: git submodule [--quiet] deinit [-f|--force] [--] <path>...
or: git submodule [--quiet] update [--init] [--remote] [-N|--no-fetch] [-f|--force] [--checkout|--merge|--rebase] [--reference <repository>] [--recursive] [--] [<path>...] or: git submodule [--quiet] summary [--cached|--files] [--summary-limit <n>] [commit] [--] [<path>...]
   or: git submodule [--quiet] foreach [--recursive] <command>
   or: git submodule [--quiet] sync [--recursive] [--] [<path>...]
➜ Digger git:(master) ✗ git submodule status
+c58d5b75242fcab15872acc5d922e103d3ae9423 ae (remotes/upstream/HEAD)
 7a476ca6139869e89943bcf21e0b27904bdf9491 win32 (heads/master)
➜ Digger git:(master) ✗ gitk
➜ Digger git:(master) ✗ git gui
➜ Digger git:(master) ✗ git reset --hard
HEAD is now at b6d06be Detect absence of ae library
➜ Digger git:(master) ✗ git diff
diff --git a/ae b/ae
index 318ccc7..c58d5b7 160000
--- a/ae
+++ b/ae
@@ -1 +1 @@
-Subproject commit 318ccc76669e9840f43b88e63bcfb1e461ce6d61
+Subproject commit c58d5b75242fcab15872acc5d922e103d3ae9423
➜ Digger git:(master) ✗ git reset --hard
HEAD is now at b6d06be Detect absence of ae library
➜ Digger git:(master) ✗ rdmd --build-only digger
digger.d(12): Error: module main is in file 'ae/utils/main.d' which cannot be read
import path[0] = .
import path[1] = /usr/include/dmd/phobos
import path[2] = /usr/include/dmd/druntime/import
Failed: ["dmd", "-v", "-o-", "digger.d", "-I."]
➜ Digger git:(master) ✗ cd ae
➜ ae gitk
➜ ae cd ..
➜ Digger git:(master) ✗ git submodule sync
Synchronizing submodule url for 'ae'
Synchronizing submodule url for 'win32'
➜ Digger git:(master) ✗ cat .gitmodules
[submodule "ae"]
        path = ae
        url = git://github.com/CyberShadow/ae.git
[submodule "win32"]
        path = win32
        url = https://github.com/CS-svnmirror/dsource-bindings-win32
➜ Digger git:(master) ✗ cat .git
.git/  .gitignore  .gitmodules
➜ Digger git:(master) ✗ rdmd --build-only digger
digger.d(12): Error: module main is in file 'ae/utils/main.d' which cannot be read
import path[0] = .
import path[1] = /usr/include/dmd/phobos
import path[2] = /usr/include/dmd/druntime/import
Failed: ["dmd", "-v", "-o-", "digger.d", "-I."]
➜ Digger git:(master) ✗ git submodule update
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 8 (delta 5), reused 4 (delta 1)
Unpacking objects: 100% (8/8), done.
From git://github.com/CyberShadow/ae
   217b080..66502df  master     -> origin/master
   e8d867c..0b1cfc0  new-net    -> origin/new-net
 * [new branch]      old-net    -> origin/old-net
Submodule path 'ae': checked out '318ccc76669e9840f43b88e63bcfb1e461ce6d61'
➜ Digger git:(master) rdmd --build-only digger
➜ Digger git:(master)

No idea why git submodule update worked the second time.

Reply via email to