Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Errors of missing std.conv imports #222

Open
zorael opened this issue Mar 24, 2020 · 0 comments
Open

Errors of missing std.conv imports #222

zorael opened this issue Mar 24, 2020 · 0 comments

Comments

@zorael
Copy link

zorael commented Mar 24, 2020

Manjaro/Arch x86_64, dmd 2.091.0, ddox 0.16.13 fetched and built via dub.

My project uses x:ddoxTool "scod" for generating documentation and it stopped working at some point recently, perhaps with updates to diet-ng.

[...]
ddox 0.16.13: building configuration "library"...
/usr/include/dlang/dmd/std/range/primitives.d(175,38): Deprecation: alias byKeyValue this is deprecated - Iterate over .byKeyValue instead.
/usr/include/dlang/dmd/std/range/primitives.d(177,27): Deprecation: alias byKeyValue this is deprecated - Iterate over .byKeyValue instead.
/usr/include/dlang/dmd/std/range/primitives.d(175,38): Deprecation: alias byKeyValue this is deprecated - Iterate over .byKeyValue instead.
/usr/include/dlang/dmd/std/range/primitives.d(177,27): Deprecation: alias byKeyValue this is deprecated - Iterate over .byKeyValue instead.
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/entities.d(553,15): Deprecation: Cannot use alias this to partially initialize variable tp.typeName of type CachedString. Use tp.typeName.str
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/entities.d(620,157): Deprecation: Cannot use alias this to partially initialize variable ret.arrayLength of type CachedString. Use ret.arrayL
ength.str
Compiling Diet HTML template ddox.module.dt...
ddox.module.dt(9,44): Error: no property to for type Result, perhaps import std.conv; is needed?
../../.dub/packages/diet-ng-1.7.1/diet-ng/source/diet/html.d(221,8): Error: template instance ddox.htmlgenerator.generateModulePage!(OutputStream).generateModulePage.exec!(StreamOutputRange!(
OutputStream, 256LU)) error instantiating
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(365,7):        instantiated from here: compileHTMLDietFileString!(StreamOutputRange!(OutputStream, 256LU))
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(184,22):        instantiated from here: generateModulePage!(OutputStream)
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(183,69):        instantiated from here: __lambda4!(OutputStream)
Compiling Diet HTML template ddox.module.dt...
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(183,18): Error: function ddox.htmlgenerator.generateHtmlDocs.writeHashedFile(GenericPath!(PosixPathFormat) filename, scope vo
id delegate(OutputStream) del) is not callable using argument types (GenericPath!(PosixPathFormat), void)
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(183,18):        cannot pass argument __lambda4 of type void to parameter scope void delegate(OutputStream) del
Compiling Diet HTML template ddox.docpage.dt...
ddox.inc.composite.dt(11,34): Error: no property to for type int, perhaps import std.conv; is needed?
ddox.inc.variable.dt(32,33): Error: template instance to!string template to is not defined
ddox.inc.variable.dt(34,105): Error: no property to for type Result, perhaps import std.conv; is needed?
ddox.docpage.dt(62,79): Error: no property to for type Result, perhaps import std.conv; is needed?
ddox.docpage.dt(68,80): Error: no property to for type Result, perhaps import std.conv; is needed?
ddox.docpage.dt(74,79): Error: no property to for type Result, perhaps import std.conv; is needed?
ddox.docpage.dt(80,75): Error: no property to for type Result, perhaps import std.conv; is needed?
ddox.docpage.dt(100,80): Error: no property to for type Result, perhaps import std.conv; is needed?
ddox.docpage.dt(105,79): Error: no property to for type Result, perhaps import std.conv; is needed?
ddox.docpage.dt(110,75): Error: no property to for type Result, perhaps import std.conv; is needed?
../../.dub/packages/diet-ng-1.7.1/diet-ng/source/diet/html.d(221,8): Error: template instance ddox.htmlgenerator.generateDeclPage!(OutputStream).generateDeclPage.exec!(StreamOutputRange!(Outp
utStream, 256LU)) error instantiating
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(392,7):        instantiated from here: compileHTMLDietFileString!(StreamOutputRange!(OutputStream, 256LU))
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(191,21):        instantiated from here: generateDeclPage!(OutputStream)
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(190,64):        instantiated from here: __lambda3!(OutputStream)
Compiling Diet HTML template ddox.docpage.dt...
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(190,19): Error: function ddox.htmlgenerator.generateHtmlDocs.writeHashedFile(GenericPath!(PosixPathFormat) filename, scope vo
id delegate(OutputStream) del) is not callable using argument types (GenericPath!(PosixPathFormat), void)
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(190,19):        cannot pass argument __lambda3 of type void to parameter scope void delegate(OutputStream) del
Compiling Diet HTML template ddox.overview.dt...
Compiling Diet HTML template ddox.overview.dt...
ddox.module.dt(9,44): Error: no property to for type Result, perhaps import std.conv; is needed?
../../.dub/packages/diet-ng-1.7.1/diet-ng/source/diet/html.d(221,8): Error: template instance ddox.htmlgenerator.generateModulePage!(InterfaceProxy!(OutputStream)).generateModulePage.exec!(St
reamOutputRange!(InterfaceProxy!(OutputStream), 256LU)) error instantiating
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlgenerator.d(365,7):        instantiated from here: compileHTMLDietFileString!(StreamOutputRange!(InterfaceProxy!(OutputStream), 256LU))
../../.dub/packages/ddox-0.16.13/ddox/source/ddox/htmlserver.d(88,21):        instantiated from here: generateModulePage!(InterfaceProxy!(OutputStream))
ddox.inc.composite.dt(11,34): Error: no property to for type int, perhaps import std.conv; is needed?
ddox.inc.variable.dt(32,33): Error: template instance to!string template to is not defined
ddox.inc.variable.dt(34,105): Error: no property to for type Result, perhaps import std.conv; is needed?
/usr/bin/dmd failed with exit code 1.

Not sure whose bug this is bug filing it here since building ddox is what throws the error.

Changing the std.conv import in source/ddox/api.d to a public one works around the issue, but likely isn't ideal.

diff --git a/source/ddox/api.d b/source/ddox/api.d
index 04e9efc..f48561b 100644
--- a/source/ddox/api.d
+++ b/source/ddox/api.d
@@ -12,7 +12,7 @@ public import ddox.ddoc;

 import std.algorithm;
 import std.array;
-import std.conv;
+public import std.conv;
 import std.format;
 import std.string;
 import std.range : isOutputRange;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant