January 08, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 --- Comment #26 from Timothee Cour <timothee.cour2@gmail.com> --- I confirm this is still broken with dmd HEAD DMD64 D Compiler v2.073.0-devel-a2b772f RazvanN, are you sure you're not using rdmd ? Please re-run using -v and show your entire log. rdmd -deps=a.deps --force -c a.d && cat a.deps would indeed produce a line "c (c.d) : private : object" dmd -deps=a.deps --force -c a.d && cat a.deps would currently NOT produce this line, which is what this bug is about. the reason rdmd produces the correct -deps here is because a.d contains top level "import b" so it'll also compile b.d and hence show c.d, but that won't work with more complex cases (eg if c.d contains: void test2(){import c2;}, it won't list c2.d) This is the biggest bug for d's build system. -- |
January 08, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 Timothee Cour <timothee.cour2@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |blocker -- |
January 08, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 Timothee Cour <timothee.cour2@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P2 |P1 -- |
January 19, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 --- Comment #27 from RazvanN <razvan.nitu1305@gmail.com> --- Running semantic3 recursively on dependencies will end up in an infinite loop when there are circular imports. So, I propose the following solution: -> the current -deps implementation should remain untouched and this will print all the direct dependencies. -> add another compiler flag: "-rdeps" (or maybe a more inspired name) which will recurs through all the dependencies, excluding druntime or phobos imports. The rationale behind this is that both druntime and phobos have circular imports which will cause the recursive implementation to fail; also having just 1 phobos import will lead to a cascade of imports which will be hard to follow. Any better ideas? RazvanN -- |
January 19, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 --- Comment #28 from Vladimir Panteleev <thecybershadow@gmail.com> --- (In reply to RazvanN from comment #27) > -> add another compiler flag: "-rdeps" (or maybe a more inspired name) which > will recurs through all the dependencies, excluding druntime or phobos > imports. > The rationale behind this is that both druntime and phobos have circular > imports > which will cause the recursive implementation to fail; also having just 1 > phobos > import will lead to a cascade of imports which will be hard to follow. Hard-coding blacklists for druntime and phobos into the compiler sounds wrong. (People may need to build D against other libraries with the same issues, or build against Phobos from source - i.e. without linking to libphobos2.) If this is done, there would probably need to be ways to add to or remove from that list. Either way, it sounds like this will also result is a huge slowdown... > Any better ideas? Would it be a far stretch from this to add a switch to just do code generation whenever an import is done, whether it's in semantic3 or earlier? Meaning, move rdmd into dmd itself. I think all we need is a switch to enable this behavior (e.g. -r, for recursive compilation), and switches to add or remove from the list of packages that will be excluded from compilation (default being std.*, etc.* and core.*). This will make rdmd much faster, too, since it will no longer need to ask the compiler to perform semantics just to get a list of modules to compile and do it all over again during the real compilation. -- |
May 08, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 --- Comment #29 from github-bugzilla@puremagic.com --- Commit pushed to master at https://github.com/dlang/phobos https://github.com/dlang/phobos/commit/29273f261c94e1bbe1042ec58a362d70cb344188 remove .deps file generation - for development, people can use the much faster std/algorithm.test targets - for batch unittest recompiling isn't of much interest as all the testers just start from a clean slate anyhow - furthermore the .deps generation is broken anyhow, see Issue 7016 -- |
May 19, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 --- Comment #30 from github-bugzilla@puremagic.com --- Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/6be32270b411d13f49ffccaa055b2cb13060c495 Fix Issue 7016 https://github.com/dlang/dmd/commit/afebe0c2ba89594b434d676fbe0c050389a5b48c Merge pull request #6748 from RazvanN7/Fix_Issue_7016 Fix Issue 7016 - local import does not create -deps dependency merged-on-behalf-of: Andrei Alexandrescu <andralex@users.noreply.github.com> -- |
May 19, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 github-bugzilla@puremagic.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED -- |
June 17, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 --- Comment #31 from github-bugzilla@puremagic.com --- Commits pushed to stable at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/6be32270b411d13f49ffccaa055b2cb13060c495 Fix Issue 7016 https://github.com/dlang/dmd/commit/afebe0c2ba89594b434d676fbe0c050389a5b48c Merge pull request #6748 from RazvanN7/Fix_Issue_7016 -- |
June 17, 2017 [Issue 7016] local import does not create -deps dependency | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7016 --- Comment #32 from github-bugzilla@puremagic.com --- Commit pushed to stable at https://github.com/dlang/phobos https://github.com/dlang/phobos/commit/29273f261c94e1bbe1042ec58a362d70cb344188 remove .deps file generation -- |
Copyright © 1999-2021 by the D Language Foundation