Giter Club home page Giter Club logo

workspace-d's Introduction

THE workspace-d CLI IS NO LONGER MAINTAINED - API/LIBRARY USERS SEE serve-d:workspace-d

workspace-d started out as executable for different IDEs to implement D functionality within them back before LSP was a thing. Over time all functionality got exposed using workspace-d as a library in a new program called serve-d which is a server implementation of the Microsoft Language Server Protocol. (LSP)

As the LSP server has been very stable for a while and workspace-d as a standalone not being used anymore I decided to deprecate the workspace-d command line interface with its proprietary RPC protocol.

The source code of workspace-d now lives in serve-d as a subpackage (serve-d:workspace-d).

As the proprietary RPC protocol has been removed a lot of template code has been removed and compilation times as library have sped up. Furthermore it's possible to use all of D's features in workspace-d APIs now, without needing to take care of the custom RPC protocol.


Old README:

workspace-d Build Status

Join the chat: Join on Discord

workspace-d wraps dcd, dfmt and dscanner to one unified environment managed by dub.

It uses process pipes and json for communication.

Special Thanks

Thanks to the following big GitHub sponsors financially supporting the code-d/serve-d tools:

become a sponsor

Installation

Precompiled binaries for windows & linux

Automatic Installation

Just run install.sh or install.bat (Windows/WIP)

sh install.sh

Manual Installation

First, install the dependencies:

  • dcd - Used for auto completion
  • dfmt - Used for code formatting
  • dscanner - Used for static code linting

Then, run:

git clone https://github.com/Pure-D/workspace-d.git
cd workspace-d
git submodule init
git submodule update
dub build --build=release --compiler=ldc2

Either move all the executable binaries to one path and add that path to the Windows PATH variable or $PATH on Posix, or change the binary path configuration in your editor.

Usage

For users

For plugin developers

Microsoft Language Server Protocol (LSP) wrapper: serve-d

Wiki/Message Format

workspace-d's People

Contributors

0xeab avatar andrepuel avatar carun avatar dayllenger avatar jonathanballs avatar p0nce avatar rtbo avatar ryuukk avatar vild avatar webfreak001 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

workspace-d's Issues

Error writing file

Same problem when selected option 3 (dfmt)

Dmitry@DMITRY-COMP d:\dlang\workspace-d
$ install.bat

Dmitry@DMITRY-COMP d:\dlang\workspace-d
$ dub run :installer -- .
Building package workspace-d:installer in d:\dlang\workspace-d\installer\
Performing "debug" build using dmd for x86.
workspace-d:installer 2.7.1+commit.15.gfd0cd7e: building configuration "application"...
Linking...
Running .\installer\iworkspaced.exe .
Welcome to the workspace-d installation guide.
Make sure, you have dub and git installed.

LDC is required on your platform!

Which optional dependencies do you want to install?
[1] DCD - auto completion
[2] DScanner - code linting
[3] dfmt - code formatting
Enter a comma separated list of numbers
Selected [all]: 1
Using existing git repository for workspace-d
Compiling...
$ dub upgrade
Upgrading project in d:\dlang\workspace-d
Fetching dub 1.0.0 (getting selected version)...
Placing dub 1.0.0 to C:\Users\Dmitry\AppData\Roaming\dub\packages\...
Fetching painlessjson 1.3.7 (getting selected version)...
Placing painlessjson 1.3.7 to C:\Users\Dmitry\AppData\Roaming\dub\packages\...
Fetching painlesstraits 0.2.0 (getting selected version)...
Placing painlesstraits 0.2.0 to C:\Users\Dmitry\AppData\Roaming\dub\packages\...
Fetching dunit 1.0.12 (getting selected version)...
Placing dunit 1.0.12 to C:\Users\Dmitry\AppData\Roaming\dub\packages\...
$ dub build --compiler=ldc2 --combined --build=release
Performing "release" build using ldc2 for x86.
workspace-d 2.7.1+commit.15.gfd0cd7e: building configuration "application"...
C:\Users\Dmitry\AppData\Roaming\dub\packages\dub-1.0.0\dub\source\dub\internal\sdlang\lexer.d(16): Deprecation: module std.stream is deprecated - It will be removed from Phobos in October 2016. If you still need it, go to https://github.com/DigitalMars/undeaD
Using Visual Studio: F:\Programs\Visual Studio\2015\
Copying files for dub...
Successfully compiled workspace-d!
Cloning DCD into C:\Users\Dmitry\AppData\Local\Temp\workspaced-install-636029021464176453
$ git clone -q https://github.com/Hackerpilot/DCD.git DCD
Checking out v0.9.0-alpha4
$ git checkout -q v0.9.0-alpha4
Compiling...
$ dub upgrade
Upgrading project in C:\Users\Dmitry\AppData\Local\Temp\workspaced-install-636029021464176453\DCD
Fetching dsymbol 0.2.0-alpha7 (getting selected version)...
Placing dsymbol 0.2.0-alpha7 to C:\Users\Dmitry\AppData\Roaming\dub\packages\...
Fetching emsi_containers 0.4.3 (getting selected version)...
Placing emsi_containers 0.4.3 to C:\Users\Dmitry\AppData\Roaming\dub\packages\...
Fetching experimental_allocator 2.70.0-b1 (getting selected version)...
Placing experimental_allocator 2.70.0-b1 to C:\Users\Dmitry\AppData\Roaming\dub\packages\...
Fetching msgpack-d 1.0.0-beta.3 (getting selected version)...
Placing msgpack-d 1.0.0-beta.3 to C:\Users\Dmitry\AppData\Roaming\dub\packages\...
Fetching libdparse 0.7.0-alpha9 (getting selected version)...
Placing libdparse 0.7.0-alpha9 to C:\Users\Dmitry\AppData\Roaming\dub\packages\...
$ dub build --build=release --config=client
Performing "release" build using dmd for x86.
experimental_allocator 2.70.0-b1: building configuration "library"...
Error: Error writing file '..\..\..\..\Roaming\dub\packages\experimental_allocator-2.70.0-b1\experimental_allocator\.dub\build\library-release-windows-x86-dmd_2071-09237FFF1A90ED11A7976B16E7AB1A89\experimental_allocator.lib'
dmd failed with exit code 1.
Error while compiling DCD.
Program exited with code 1

Windows 7 x64
DUB version 1.0.0, built on Jun 20 2016
LDC - the LLVM D compiler (1.0.0)
DMD32 D Compiler v2.071.1

Unable to build with ldc2.exe

I have LDC installed and have verified that it works. However, the installer still refuses to build. The ldc path string is still null.

workspace-d should look for binaries in its own directory

I'm using vscode with the code-d extension and since I don't have workspace-d in my PATH I added d.workspacedPath to my user settings, pointing to my workspace-d/bin/workspace-d. However code-d failed to work; it turns out I also needed to add user settings for d.dcdClientPath, d.dcdServerPath, d.dscannerPath and d.dfmtPath.

Since the recommended way to install workspace-d is install.sh which puts all its binaries into bin, the workspace-d binary should look in its own directory for the other binaries before failing to invoke them.

build failing on Windows with LDC v2.071.2 (mixin accessibility & deprecation of std.stream)

running install.bat gives the following output on Windows - Using the VS2015 x64 Native Tools command prompt.

Welcome to the workspace-d installation guide.
Make sure, you have dub and git installed.

LDC is required on your platform!

Which optional dependencies do you want to install?
[1] DCD - auto completion
[2] DScanner - code linting
[3] dfmt - code formatting
Enter a comma separated list of numbers
Selected [all]:
Cloning workspace-d into C:\Users\BlartyFob\AppData\Local\Temp\workspaced-install-636120400340230071
$ git clone -q https://github.com/Pure-D/workspace-d.git workspace-d
Checking out v2.7.2
$ git checkout -q v2.7.2
Compiling...
$ dub upgrade
Upgrading project in C:\Users\BlartyFob\AppData\Local\Temp\workspaced-install-636120400340230071\workspace-d
$ dub build --compiler=ldc2 --combined --build=release
Performing "release" build using ldc2 for x86.
workspace-d 2.7.2: building configuration "application"...
........\Roaming\dub\packages\dub-1.0.0\dub\source\dub\internal\sdlang\lexer.d(16): Deprecation: module std.stream is deprecated - It will be removed from Phobos in October 2016. If you still need it, go to https://github.com/DigitalMars/undeaD
source\app.d-mixin-222(222): Error: function workspaced.com.dub.start is not accessible from module app
source\app.d-mixin-222(222): Error: function workspaced.com.dub.restart is not accessible from module app
source\app.d-mixin-222(222): Error: function workspaced.com.dub.getInfo is not accessible from module app
source\app.d-mixin-222(222): Error: function workspaced.com.dub.listDependencies is not accessible from module app
source\app.d(270): Error: template instance workspaced.app.handleRequestMod!(dub) error instantiating
source\app.d-mixin-222(222): Error: function workspaced.com.dcd.clientArgs is not accessible from module app
source\app.d-mixin-222(222): Error: function workspaced.com.dcd.doClient is not accessible from module app
source\app.d-mixin-222(222): Error: function workspaced.com.dcd.raw is not accessible from module app
source\app.d-mixin-222(222): Error: function workspaced.com.dcd.execClient is not accessible from module app
source\app.d-mixin-222(222): Error: function workspaced.com.dcd.rawExec is not accessible from module app
source\app.d-mixin-222(222): Error: function workspaced.com.dcd.isPortRunning is not accessible from module app
source\app.d-mixin-222(222): Error: function workspaced.com.dcd.findOpen is not accessible from module app
source\app.d(272): Error: template instance workspaced.app.handleRequestMod!(dcd) error instantiating
source\app.d-mixin-222(222): Error: function workspaced.com.dscanner.raw is not accessible from module app
source\app.d(276): Error: template instance workspaced.app.handleRequestMod!(dscanner) error instantiating
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(481): Error: template painlessjson.painlessjson.defaultFromJSONImpl cannot deduce function from argument types !(dchar, SerializationOptions(true, false))(const(JSONValue)), candidates are:
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(324): painlessjson.painlessjson.defaultFromJSONImpl(T, SerializationOptions options)(in JSONValue json) if (is(T == JSONValue))
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(329): painlessjson.painlessjson.defaultFromJSONImpl(T, SerializationOptions options)(in JSONValue json) if (isIntegral!T)
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(334): painlessjson.painlessjson.defaultFromJSONImpl(T, SerializationOptions options)(in JSONValue json) if (isFloatingPoint!T)
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(342): painlessjson.painlessjson.defaultFromJSONImpl(T, SerializationOptions options)(in JSONValue json) if (is(T == string))
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(347): painlessjson.painlessjson.defaultFromJSONImpl(T, SerializationOptions options)(in JSONValue json) if (isBoolean!T)
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(481): ... (4 more, -v to show) ...
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(616): Error: template instance painlessjson.painlessjson.defaultFromJSON!(dchar, SerializationOptions(true, false)) error instantiating
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(358): instantiated from here: fromJSON!(dchar, SerializationOptions(true, false))
C:\Users\BlartyFob\LDC-master-2554-multilib\bin..\include\d\std\algorithm\iteration.d(581): instantiated from here: __lambda2!(const(JSONValue))
C:\Users\BlartyFob\LDC-master-2554-multilib\bin..\include\d\std\algorithm\iteration.d(480): instantiated from here: MapResult!(__lambda2, const(JSONValue)[])
........\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source\painlessjson\painlessjson.d(358): ... (3 instantiations, -v to show) ...
source\app.d-mixin-222(222): instantiated from here: fromJSON!(const(string), SerializationOptions(true, false))
source\app.d(278): instantiated from here: handleRequestMod!(dlangui)
........\Roaming\dub\packages\dub-1.0.0\dub\source\dub\compilers\utils.d(92): Deprecation: dub.compilers.buildsettings.array is not visible from module utils
ldc2 failed with exit code 1.
Error while compiling workspace-d.

... More info on ldc2 --version

LDC - the LLVM D compiler (f77d3f):
based on DMD v2.071.2 and LLVM 3.9.0git-fbbabf3
built with LDC - the LLVM D compiler (1.0.0)
Default target: x86_64-pc-windows-msvc
Host CPU: haswell
http://dlang.org - http://wiki.dlang.org/LDC

Registered Targets:
aarch64 - AArch64 (little endian)
aarch64_be - AArch64 (big endian)
amdgcn - AMD GCN GPUs
arm - ARM
arm64 - ARM64 (little endian)
armeb - ARM (big endian)
bpf - BPF (host endian)
bpfeb - BPF (big endian)
bpfel - BPF (little endian)
hexagon - Hexagon
mips - Mips
mips64 - Mips64 [experimental]
mips64el - Mips64el [experimental]
mipsel - Mipsel
msp430 - MSP430 [experimental]
nvptx - NVIDIA PTX 32-bit
nvptx64 - NVIDIA PTX 64-bit
ppc32 - PowerPC 32
ppc64 - PowerPC 64
ppc64le - PowerPC 64 LE
r600 - AMD GPUs HD2XXX-HD6XXX
sparc - Sparc
sparcel - Sparc LE
sparcv9 - Sparc V9
systemz - SystemZ
thumb - Thumb
thumbeb - Thumb (big endian)
x86 - 32-bit X86: Pentium-Pro and above
x86-64 - 64-bit X86: EM64T and AMD64
xcore - XCore

Error 2: File Not Found :REF.obj

I can't build latest version. The error is next:

WARNING: no Visual Studio installation detected
OPTLINK (R) for Win32  Release 8.00.17
Copyright (C) Digital Mars 1989-2013  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
OPTLINK : Warning 9: Unknown Option : OUT
OPTLINK : Warning 9: Unknown Option : OBJ\PAINLESSTRAITS.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\PAINLESSJSON.UNITTESTTYPES_LOCAL_IMPORT.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\PAINLESSJSON.UNITTESTTYPES.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\PAINLESSJSON.STRING.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\PAINLESSJSON.PAINLESSJSON.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\PAINLESSJSON.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\PAINLESSJSON.ANNOTATIONS.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUNIT.TOOLKIT.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUNIT.RESULT.MODULERESULTCOLLECTION.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUNIT.RESULT.MODULERESULT.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUNIT.REFLECTION.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUNIT.OUTPUT.CONSOLE.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUNIT.MODULEUNITTESTER.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUNIT.MOCKABLE.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUNIT.ERROR.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.VERSION_.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.SEMVER.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.RECIPE.SDL.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.RECIPE.PACKAGERECIPE.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.RECIPE.JSON.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.RECIPE.IO.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.PROJECT.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.PLATFORM.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.PACKAGESUPPLIER.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.PACKAGEMANAGER.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.PACKAGE_.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.VIBECOMPAT.INET.URL.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.VIBECOMPAT.INET.PATH.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.VIBECOMPAT.DATA.UTILS.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.VIBECOMPAT.DATA.SERIALIZATION.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.VIBECOMPAT.DATA.JSON.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.VIBECOMPAT.CORE.LOG.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.VIBECOMPAT.CORE.FILE.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.UTILS.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.SDLANG.UTIL.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.SDLANG.TOKEN.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.SDLANG.SYMBOL.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.SDLANG.PARSER.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.SDLANG.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.SDLANG.LEXER.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.SDLANG.EXCEPTION.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.SDLANG.AST.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INTERNAL.LIBINPUTVISITOR.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.INIT.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.GENERATORS.VISUALD.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.GENERATORS.TARGETDESCRIPTION.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.GENERATORS.SUBLIMETEXT.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.GENERATORS.GENERATOR.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.GENERATORS.CMAKE.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.GENERATORS.BUILD.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.DUB.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.DESCRIPTION.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.DEPENDENCYRESOLVER.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.DEPENDENCY.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.COMPILERS.UTILS.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.COMPILERS.LDC.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.COMPILERS.GDC.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.COMPILERS.DMD.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.COMPILERS.COMPILER.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.COMPILERS.BUILDSETTINGS.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\DUB.COMMANDLINE.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\WORKSPACED.COMPLETION.DML.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\WORKSPACED.COM.FSWORKSPACE.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\WORKSPACED.COM.DUB.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\WORKSPACED.COM.DSCANNER.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\WORKSPACED.COM.DLANGUI.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\WORKSPACED.COM.DFMT.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\WORKSPACED.COM.DCD.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\WORKSPACED.APP.OBJ
OPTLINK : Warning 9: Unknown Option : OBJ\WORKSPACED.API.OBJ
OPTLINK : Warning 9: Unknown Option : LIBPATH
OPTLINK : Warning 9: Unknown Option : LDC2
OPTLINK : Warning 9: Unknown Option : ..
OPTLINK : Warning 9: Unknown Option : LIB64
:REF.obj
 Error 2: File Not Found :REF.obj
Error: `C:\Windows\system32\cmd.exe /s /c "C:\ldc2\bin\amd64.bat link.exe"` failed with status: 1
ldc2 failed with exit code 1.
Error while compiling workspace-d.
Program exited with code 1

dscanner package in AUR fails to build

yaourt -S --aur dscanner fails

...
libdparse/src/std/d/lexer.d(2240): Deprecation: asm statement is assumed to be impure - mark it with 'pure' if it is not
libdparse/src/std/d/lexer.d(2240): Deprecation: asm statement is assumed to use the GC - mark it with '@nogc' if it does not
libdparse/src/std/d/lexer.d(2240): Deprecation: asm statement is assumed to throw - mark it with 'nothrow' if it does not
makefile:28: recipe for target 'dmdbuild' failed
make: *** [dmdbuild] Error 1

Dependency on wrong DMD version?

add dfix

This will allow editors to show code fix suggestions like "Change to D-Style array"

Apps in /bin are not executable

On macOS Sierra, I run install.sh and the end result is a workspace-d/bin folder containing all the built programs. However they're missing the executable flag, so I have to chmod +x all of them. This should be done by the installer.

Can't install on Windows 10

Tested with LDC 1.1.0-beta6 and 1.0.0 and DUB 1.1.1

C:\Users\Arun\Code\D\workspace-d (master)
ฮป install.bat
No package file found in C:\Users\Arun\Code\D\workspace-d\libdparse\, expected one of dub.json/dub.sdl/package.json
 
C:\Users\Arun\Code\D\workspace-d (master)
ฮป cd installer\

C:\Users\Arun\Code\D\workspace-d\installer (master)
ฮป dub --verbose run -- .
Using dub registry url 'http://code.dlang.org/'
Refreshing local packages (refresh existing: true)...
Looking for local package map at C:\ProgramData\dub\packages\local-packages.json
Looking for local package map at C:\Users\Arun\AppData\Roaming\dub\packages\local-packages.json
Note: Failed to determine version of package installer at .. Assuming ~master.
Refreshing local packages (refresh existing: false)...
Looking for local package map at C:\ProgramData\dub\packages\local-packages.json
Looking for local package map at C:\Users\Arun\AppData\Roaming\dub\packages\local-packages.json
Refreshing local packages (refresh existing: false)...
Looking for local package map at C:\ProgramData\dub\packages\local-packages.json
Looking for local package map at C:\Users\Arun\AppData\Roaming\dub\packages\local-packages.json
Checking for upgrades.
Using cached upgrade results...
Generating using build
Generate target installer (executable C:\Users\Arun\Code\D\workspace-d\installer iworkspaced)
Performing "debug" build using ldc2 for x86_64.
File C:\Users\Arun\Code\D\workspace-d\installer\dub.selections.json doesn't exist, triggering rebuild.
installer ~master: building configuration "application"...
ldc2 -of.dub\build\application-debug-windows-x86_64-ldc_2071-231843D4A1A7C75C3915F7DAD5217ED5\iworkspaced.exe -d-debug -g -w -oq -od=.dub/obj -d-version=Have_installer -Isource source\app.d -vcolumns
Using Visual C++: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC
Copying target from C:\Users\Arun\Code\D\workspace-d\installer\.dub\build\application-debug-windows-x86_64-ldc_2071-231843D4A1A7C75C3915F7DAD5217ED5\iworkspaced.exe to C:\Users\Arun\Code\D\workspace-d\installer
Running .\iworkspaced.exe .
Welcome to the workspace-d installation guide.
Make sure, you have dub and git installed.

LDC is required on your platform!

Which optional dependencies do you want to install?
[1] DCD - auto completion
[2] DScanner - code linting
[3] dfmt - code formatting
Enter a comma separated list of numbers
Selected [all]:
Using existing git repository for workspace-d
Compiling...
$ dub upgrade
Upgrading project in C:\Users\Arun\Code\D\workspace-d\installer
$ dub build --compiler=ldc2 --combined --build=release
Performing "release" build using ldc2 for x86_64.
installer ~master: building configuration "application"...
Using Visual C++: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC
C:\Users\Arun\Code\D\workspace-d\installer\iworkspaced.exe: Access is denied.
Error while compiling workspace-d.
Program exited with code 1

C:\Users\Arun\Code\D\workspace-d\installer (master)

Add interfaces for handling certain things

We shouldn't only rely on dub, there should also be support for visuald and other project formats. So there should be interfaces like IImportPathProvider that every component can implement and then set a global variable.

Command: Add interface functions

Running this command where the cursor is in this class:

class BarImpl : IBar
{
}

should add a lot of empty declarations throwing std.typecons.NotImplementedError based on the interface (assuming we know where the interface comes from using DCD and know how it looks like using DScanner)

This should also copy the documentation and omit final functions

  • Implement multiple interfaces
    • Don't implement final functions
    • Only implement functions
    • Copy attributes
  • Implement abstract functions

Build error /usr/bin/ld: cannot find -lcurl

Hi,

After several try to install the package it always crashes with the same error.

Performing "release" build using dmd for x86_64.
dub 0.9.25: target for configuration "library" is up to date.
dunit 1.0.12: target for configuration "library" is up to date.
painlesstraits 0.2.0: target for configuration "library" is up to date.
painlessjson 1.3.7: target for configuration "library" is up to date.
workspace-d 2.7.1+commit.3.g3b20935: building configuration "application"...
../../.dub/packages/dub-0.9.25/dub/source/dub/internal/vibecompat/core/file.d(20,15): Deprecation: module std.stream is deprecated - It will be removed from Phobos in October 2016. If you still need it, go to https://github.com/DigitalMars/undeaD
../../.dub/packages/dub-0.9.25/dub/source/dub/internal/sdlang/lexer.d(16,8): Deprecation: module std.stream is deprecated - It will be removed from Phobos in October 2016. If you still need it, go to https://github.com/DigitalMars/undeaD
source/app.d(144,29): Deprecation: workspaced.com.dub.object is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dub.core is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dub.std is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dub.painlessjson is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dub.workspaced is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dub.dub is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dub.BuildIssue is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dub.DubPackageInfo is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dcd.object is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dcd.std is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dcd.core is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dcd.painlessjson is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dcd.workspaced is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dcd.DCDServerStatus is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dcd.DCDIdentifier is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dcd.DCDSearchResult is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dfmt.object is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dfmt.std is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dfmt.core is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dfmt.painlessjson is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dfmt.workspaced is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dscanner.object is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dscanner.std is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dscanner.core is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dscanner.painlessjson is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dscanner.workspaced is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dscanner.DScannerIssue is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dscanner.OutlineTreeNode is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dscanner.DefinitionElement is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dlangui.object is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dlangui.std is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dlangui.core is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dlangui.painlessjson is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dlangui.workspaced is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dlangui.LocationType is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.dlangui.LocationInfo is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.fsworkspace.object is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.fsworkspace.std is not visible from module app
source/app.d(144,29): Deprecation: workspaced.com.fsworkspace.workspaced is not visible from module app
Linking...
/usr/bin/ld: cannot find -lcurl
collect2: erreurย : ld a retournรฉ 1 code d'รฉtat d'exรฉcution
--- errorlevel 1
dmd failed with exit code 1.

DMd version : 2.071.0
Dub version : 0.9.25

linker issue with ldc 1.1.0 on windows

C:\Users\Charlie Quigley\Desktop\workspace-d>install

C:\Users\Charlie Quigley\Desktop\workspace-d>dub run :installer -- .
Building package workspace-d:installer in C:\Users\Charlie Quigley\Desktop\workspace-d\installer\
Performing "debug" build using dmd for x86.
workspace-d:installer 2.7.2+commit.2.g3dc0bef: target for configuration "application" is up to date.
To force a rebuild of up-to-date targets, run again with --force.
Running .\installer\iworkspaced.exe .
Welcome to the workspace-d installation guide.
Make sure, you have dub and git installed.

LDC is required on your platform!

Which optional dependencies do you want to install?
[1] DCD - auto completion
[2] DScanner - code linting
[3] dfmt - code formatting
Enter a comma separated list of numbers
Selected [all]:
Using existing git repository for workspace-d
Compiling...
$ dub upgrade
Upgrading project in C:\Users\Charlie Quigley\Desktop\workspace-d
$ dub build --compiler=ldc2 --combined --build=release
Performing "release" build using ldc2 for x86.
workspace-d 2.7.2+commit.2.g3dc0bef: building configuration "application"...
..\..\AppData\Roaming\dub\packages\dub-1.1.0-beta.1\source\dub\internal\sdlang\lexer.d(16): Deprecation: module std.stream is deprecated - It will be removed from Phobos in October 2016. If you still need it, go to https://github.com/DigitalMars/undeaD
source\app.d(145): Deprecation: workspaced.com.dub.object is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dub.core is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dub.std is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dub.workspaced is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dub.dub is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dub.BuildIssue is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dub.DubPackageInfo is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dcd.object is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dcd.std is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dcd.core is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dcd.painlessjson is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dcd.workspaced is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dcd.DCDServerStatus is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dcd.DCDIdentifier is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dcd.DCDSearchResult is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dfmt.object is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dfmt.std is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dfmt.core is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dfmt.painlessjson is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dfmt.workspaced is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dscanner.object is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dscanner.std is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dscanner.core is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dscanner.painlessjson is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dscanner.workspaced is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dscanner.DScannerIssue is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dscanner.OutlineTreeNode is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dscanner.DefinitionElement is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dlangui.object is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dlangui.std is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dlangui.core is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dlangui.painlessjson is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dlangui.workspaced is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dlangui.LocationType is not visible from module app
source\app.d(145): Deprecation: workspaced.com.dlangui.LocationInfo is not visible from module app
source\app.d(145): Deprecation: workspaced.com.fsworkspace.object is not visible from module app
source\app.d(145): Deprecation: workspaced.com.fsworkspace.std is not visible from module app
source\app.d(145): Deprecation: workspaced.com.fsworkspace.workspaced is not visible from module app
..\..\AppData\Roaming\dub\packages\dub-1.1.0-beta.1\source\dub\compilers\utils.d(92): Deprecation: dub.compilers.buildsettings.array is not visible from module utils
Using Visual Studio: C:\Program Files (x86)\Microsoft Visual Studio 14.0\
dub.internal.vibecompat.core.log.obj : error LNK2019: unresolved external symbol _D3std9exception106__T12errnoEnforceTbVAyaa36_433a2f6c6463322f62696e2f2e2e2f696e636c7564652f645c7374645c737464696f2e64Vmi850Z12errnoEnforceFNfbLAyaZb referenced in function _D3dub8internal10vibecompat4core3log12__T3logTAyaZ3logFNbE3dub8internal10vibecompat4core3log8LogLevelAyaLAyaZv
dub.internal.vibecompat.core.file.obj : error LNK2019: unresolved external symbol _D3std9exception107__T12errnoEnforceTbVAyaa36_433a2f6c6463322f62696e2f2e2e2f696e636c7564652f645c7374645c737464696f2e64Vmi1041Z12errnoEnforceFNfbLAyaZb referenced in function _D3dub8internal10vibecompat4core4file9RangeFile7readAllMFZAh
.dub\build\application-release-windows-x86-ldc_0-5DBFD940DC7CF345E2146464AF1E319E\workspace-d.exe : fatal error LNK1120: 2 unresolved externals
Error: `C:\WINDOWS\system32\cmd.exe /s /c "C:\ldc2\bin\amd64.bat link.exe"` failed with status: 1120
ldc2 failed with exit code 1120.
Error while compiling workspace-d.
Program exited with code 1

See #42

Windows Git Portable Compile issue

Git is installed as Portable, Visual Studio Code also a portable app ( PortableApps ). Git is linked correctly to VSC in the settings:

"git.enabled": true,
"git.path": "J:\PortableApps\GitPortable\App\Git\bin\git.exe",

Under Windows after installing code-d ( and workspace-d ), it will ask to install (compile) DCD, fmt, scanner. When it tries to Compile ( install ) DCD etc:

Installing into J:\PortableApps\VSCodePortable\Data\code\extensions\webfreak.code-d-0.14.2\bin
git clone https://github.com/Hackerpilot/DCD.git DCD

And here it will simply stall... because git.exe is not part of the systems path. In fact it is known to VSC with the "git.path" but because workspace's simple assumes it public known, it will always fail. Is it possible to add to code-d the ability to manual set the git path as a setting, so it can correctly use git from any source that is not in the path?

There is another reason as to why a manual path in settings is interesting: Version conflicts.

Technically, we can simply reuse the VSC "git.path" variable for this ( if it has been set ), so there is no need for a custom one. Because without this, its back to manually getting and compiling.

Build fills with dmd 2.070

I get the following error when trying to build workspace-d with dmd 2.070:

../../../.dub/packages/painlessjson-1.3.5/source/painlessjson/painlessjson.d(9,8): Error: module std.typecons import 'TypeTuple' not found, did you mean template 'isTypeTuple(T...)'?

dub still links

when running dub lint it links after compilation, taking much longer at the end even though its disabled in the code. If you meassure the time from manually running dub completely + linking and running dub lint, they will both be done approximately equally

Compilation error: unresolved external symbol

Using Visual Studio: C:\Program Files (x86)\Microsoft Visual Studio 14.0\
dub.internal.vibecompat.core.log.obj : error LNK2019: unresolved external symbol
 _D3std9exception108__T12errnoEnforceTbVAyaa37_433a2f442f6c64632f62696e2f2e2e2f6
96e636c7564652f645c7374645c737464696f2e64Vmi850Z12errnoEnforceFNfbLAyaZb referen
ced in function _D3dub8internal10vibecompat4core3log12__T3logTAyaZ3logFNbE3dub8i
nternal10vibecompat4core3log8LogLevelAyaLAyaZv
dub.internal.vibecompat.core.file.obj : error LNK2019: unresolved external symbol _D3std9exception109__T12errnoEnforceTbVAyaa37_433a2f442f6c64632f62696e2f2e2e2f
696e636c7564652f645c7374645c737464696f2e64Vmi1041Z12errnoEnforceFNfbLAyaZb refer
enced in function _D3dub8internal10vibecompat4core4file9RangeFile7readAllMFZAh
.dub\build\application-release-windows-x86_64-ldc_0-6DA9C788DA4BC2A3768E34296AF8
856B\workspace-d.exe : fatal error LNK1120: 2 unresolved externals
Error: `C:\Windows\system32\cmd.exe /s /c "C:\D\ldc\bin\amd64.bat link.exe"` fai
led with status: 1120
ldc2 failed with exit code 1120.
Error while compiling workspace-d.
Program exited with code 1

LDC 1.1.0 beta 2

Error: module fallback_allocator is in file '..\..\..\..\..\..\bubenkov_di\AppDa
ta\Roaming\dub\packages\experimental_allocator-2.70.0-b1\experimental_allocator\
src\std\experimental\allocator\building_blocks\fallback_allocator.d' which canno
t be read
import path[0] = ..\..\..\..\..\..\bubenkov_di\AppData\Roaming\dub\packages\expe
rimental_allocator-2.70.0-b1\experimental_allocator\src
import path[1] = C:\D\dmd2\windows\bin\..\..\src\phobos
import path[2] = C:\D\dmd2\windows\bin\..\..\src\druntime\import
dmd failed with exit code 1.
Error while compiling DCD.
Program exited with code 1

LDC 1.0.0 x32

Deprecation?

Trying to compile dscanner ( with DMD 2.072.1 ) using workspace-d shows the following errors:

dmd` src\astprinter.d src\ctags.d src\dscanner_version.d src\etags.d src\highlighter.d src\imports.d src\main.d src\outliner.d src\readers.d src\stats.d src\symbol_finder.d libdparse\src\dparse\ast.d libdparse\src\dparse\entities.d libdparse\src\dparse\formatter.d libdparse\src\dparse\lexer.d libdparse\src\dparse\parser.d libdparse\src\dparse\rollback_allocator.d libdparse\src\dparse\stack_buffer.d libdparse\src\std\experimental\lexer.d src\analysis\alias_syntax_check.d src\analysis\asm_style.d src\analysis\auto_function.d src\analysis\auto_ref_assignment.d src\analysis\base.d src\analysis\builtin_property_names.d src\analysis\comma_expression.d src\analysis\config.d src\analysis\constructors.d src\analysis\del.d src\analysis\duplicate_attribute.d src\analysis\enumarrayliteral.d src\analysis\fish.d src\analysis\function_attributes.d src\analysis\helpers.d src\analysis\ifelsesame.d src\analysis\if_statements.d src\analysis\incorrect_infinite_range.d src\analysis\label_var_same_name_check.d src\analysis\lambda_return_check.d src\analysis\length_subtraction.d src\analysis\line_length.d src\analysis\local_imports.d src\analysis\logic_precedence.d src\analysis\mismatched_args.d src\analysis\numbers.d src\analysis\objectconst.d src\analysis\opequals_without_tohash.d src\analysis\package.d src\analysis\pokemon.d src\analysis\range.d src\analysis\redundant_parens.d src\analysis\run.d src\analysis\static_if_else.d src\analysis\stats_collector.d src\analysis\style.d src\analysis\undocumented.d src\analysis\unmodified.d src\analysis\unused.d src\analysis\unused_label.d src\analysis\useless_assert.d inifiled\source\inifiled.d dsymbol\src\dsymbol\cache_entry.d dsymbol\src\dsymbol\deferred.d dsymbol\src\dsymbol\import_.d dsymbol\src\dsymbol\modulecache.d dsymbol\src\dsymbol\scope_.d dsymbol\src\dsymbol\semantic.d dsymbol\src\dsymbol\string_interning.d dsymbol\src\dsymbol\symbol.d dsymbol\src\dsymbol\type_lookup.d dsymbol\src\dsymbol\builtin\names.d dsymbol\src\dsymbol\builtin\symbols.d dsymbol\src\dsymbol\conversion\first.d dsymbol\src\dsymbol\conversion\package.d dsymbol\src\dsymbol\conversion\second.d containers\src\containers\cyclicbuffer.d containers\src\containers\dynamicarray.d containers\src\containers\hashmap.d containers\src\containers\hashset.d containers\src\containers\immutablehashset.d containers\src\containers\openhashset.d containers\src\containers\package.d containers\src\containers\simdset.d containers\src\containers\slist.d containers\src\containers\treemap.d containers\src\containers\ttree.d containers\src\containers\unrolledlist.d containers\src\containers\internal\backwards.d containers\src\containers\internal\element_type.d containers\src\containers\internal\hash.d containers\src\containers\internal\mixins.d containers\src\containers\internal\node.d containers\src\containers\internal\storage_type.d -O -release -inline -I"libdparse\src" -I"dsymbol\src" -I"containers\src" -ofdscanner.exe

dsymbol\src\dsymbol\symbol.d(208): Deprecation: this.name.data.ptr cannot be used in @safe code, use &this.name.data[0] instead
dsymbol\src\dsymbol\symbol.d(208): Deprecation: other.name.data.ptr cannot be used in @safe code, use &other.name.data[0] instead
dsymbol\src\dsymbol\symbol.d(209): Deprecation: this.name.data.ptr cannot be used in @safe code, use &this.name.data[0] instead
dsymbol\src\dsymbol\symbol.d(209): Deprecation: other.name.data.ptr cannot be used in @safe code, use &other.name.data[0] instead
dsymbol\src\dsymbol\symbol.d(216): Deprecation: other.name.data.ptr cannot be used in @safe code, use &other.name.data[0] instead
dsymbol\src\dsymbol\symbol.d(216): Deprecation: this.name.data.ptr cannot be used in @safe code, use &this.name.data[0] instead
dsymbol\src\dsymbol\symbol.d(221): Deprecation: this.name.data.ptr cannot be used in @safe code, use &this.name.data[0] instead

And it blocks compilation at this point. Not sure if this needs to be posted here or on the dscanner git. Looks like more of a DMD regression bug to me...

Side issue: Is it normal that workspace-d needs administration rights to properly function / compile ( DCD, DScanner, DFMT )?

Can't install on Windows: module meta is in file 'std\meta.d' which cannot be read

Can't install on Windows. After running install.bat I am getting:

LDC is required on your platform!
...
Compiling...
$ dub upgrade
Upgrading project in D:\foo\workspace-d-master
$ dub build --compiler=ldc2 --combined --build=release
Performing "release" build using ldc2 for x86.
workspace-d ~master: building configuration "application"...
source\app.d(16): Error: module meta is in file 'std\meta.d' which cannot be read
import path[0] = C:\Program Files (x86)\mingw-w64\i686-4.9.2-posix-dwarf-rt_v4-rev2\mingw32\include\d\ldc
import path[1] = C:\Program Files (x86)\mingw-w64\i686-4.9.2-posix-dwarf-rt_v4-rev2\mingw32\include\d
import path[2] = source
import path[3] = C:\Users\bubenkov_di\AppData\Roaming\dub\packages\dub-1.0.0\dub\source
import path[4] = C:\Users\bubenkov_di\AppData\Roaming\dub\packages\dunit-1.0.12\dunit\source
import path[5] = C:\Users\bubenkov_di\AppData\Roaming\dub\packages\painlessjson-1.3.7\painlessjson\source
import path[6] = C:\Users\bubenkov_di\AppData\Roaming\dub\packages\painlesstraits-0.2.0\painlesstraits\source
ldc2 failed with exit code 1.
Error while compiling workspace-d.
Program exited with code 1

May it be wrong LDC installation?

Does not install from VS-Code

When I compile from source from VS-Code, the following build error happens:

../../../../../.dub/packages/dub-1.1.0-beta.1/dub/source/dub/internal/sdlang/lexer.d(16,8): Error: module stream is in file 'std/stream.d' which cannot be read

Make a .deb

Your vscode addon code-d depends on this...
This in turn depends on dub, dcd, dfmt, dscanner. All of those packages are in d-apt (listed on the official download page: https://dlang.org/download.html)
Running ./install.sh seems to want to fetch the deps, even though they are already installed on my machine (from d-apt)... This is not a user-friendly experience.
I think you need to make a workspace-d.deb, also put it on d-apt, and make the other dependency packages actual package dependencies. Then code-d can just instruct people to apt install workspace-d, and not mess with this cloning and building stuff.

Unknown dependency: memutils

In Windows using dub --build=debug it outputs an error (see title).

Adding memutils dependeny fixed the error:

"dependencies":` {
        "dub": "~>0.9.24",
        "dunit": "~>1.0.12",
        "painlessjson": "~>1.3.6",
        "memutils": "~>0.4.5"
    },

Error: module sourceapi is in file 'sourceapi.d' which cannot be read

C:\Users\Administrator\Desktop\workspace-d>install.bat

C:\Users\Administrator\Desktop\workspace-d>dub run :installer -- .
Building package workspace-d:installer in C:\Users\Administrator\Desktop\workspace-d\installer\
Performing "debug" build using dmd for x86.
workspace-d:installer 2.7.1+commit.15.gfd0cd7e: building configuration "application"...
Linking...
Running .\installer\iworkspaced.exe .
Welcome to the workspace-d installation guide.
Make sure, you have dub and git installed.

LDC is required on your platform!

Which optional dependencies do you want to install?
[1] DCD - auto completion
[2] DScanner - code linting
[3] dfmt - code formatting
Enter a comma separated list of numbers
Selected [all]:
Using existing git repository for workspace-d
Compiling...
$ dub upgrade
none
Upgrading project in C:\Users\Administrator\Desktop\workspace-d
$ dub build --compiler=ldc2 --combined --build=release
none
Performing "release" build using ldc2 for x86.
workspace-d 2.7.1+commit.15.gfd0cd7e: building configuration "application"...
Error: module sourceapi is in file 'sourceapi.d' which cannot be read
import path[0] = D:/dlang/D/ldc2_64/bin/../include/d/ldc
import path[1] = D:/dlang/D/ldc2_64/bin/../include/d
import path[2] = source
import path[3] = ....AppDataRoamingdubpackagesdub-1.0.0dubsource
import path[4] = ....AppDataRoamingdubpackagesdunit-1.0.12dunitsource
import path[5] = ....AppDataRoamingdubpackagespainlessjson-1.3.7painlessjsonsource
import path[6] = ....AppDataRoamingdubpackagespainlesstraits-0.2.0painlesstraitssource
ldc2 failed with exit code 1.
Error while compiling workspace-d.
Program exited with code 1

Autoinstall fails when cloned without submodules

PS C:\proj> git clone https://github.com/Pure-D/workspace-d.git
Cloning into 'workspace-d'...
remote: Counting objects: 736, done.
remote: Compressing objects: 100% (20/20), done.
emote: Total 736 (delta 4), reused 0 (delta 0), pack-reused 714
Receiving objects: 100% (736/736), 147.69 KiB | 0 bytes/s, done.
Resolving deltas: 100% (419/419), done.
Checking connectivity... done.
PS C:\proj> cd .\workspace-d\
PS C:\proj\workspace-d> .\install.bat

C:\proj\workspace-d>dub run :installer -- .
No package file found in C:\proj\workspace-d\libdparse\, expected one of dub.json/dub.sdl/package.json

workaround:

git submodule init
git submodule update
install.bat

Register workspace-d on code.dlang.org

Hi! I'm working on refactoring/improving the installer and it would be much easier w.r.t. automation if the project was on the dub registry - e.g. using dub fetch, instead of mkdir tmpDir; git clone; git checkout; and so on.

Manual building fails on windows (10)

PS C:\proj\workspace-d> dub build --build=release --compiler=ldc2
Performing "release" build using ldc2 for x86.
dub 1.1.1: building configuration "library"...
..\..\Users\jin\AppData\Roaming\dub\packages\dub-1.1.1\source\dub\compilers\utils.d(92): Deprecation: dub.compilers.buildsettings.array is not visible from module utils
Using Visual C++: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC
WARNING: could not find vcvarsall.bat
Digital Mars Librarian Version 8.02n
Copyright (C) Digital Mars 2000-2007 All Rights Reserved
http://www.digitalmars.com/ctg/lib.html
Warning: Unknown switch 'out' in command line, ignored.
list file           (.lst)
output library file (.lib)

Warning: '1.1.1\.dub\build\library.obj' not found, can't delete or extract it
Warning: 'release.obj' not found, can't delete or extract it
Warning: 'windows.obj' not found, can't delete or extract it
Warning: 'x86.obj' not found, can't delete or extract it
Warning: 'ldc_0.obj' not found, can't delete or extract it
Warning: 'D2E6C2EAAABD3775C56A9C6653DE09DC\libdub.a' not found, can't delete or extract it

Error: Corrupt file '.dub\obj\dub.commandline.obj', Typ=x65, Len=x3374
Error: `C:\WINDOWS\system32\cmd.exe /s /c "C:\D\ldc2\bin\amd64.bat lib.exe"` failed with status: 1
ldc2 failed with exit code 1.

git clone not working, solve with --recursive

Since libdparse are a submodule, it only clone with workdspace-d if --recursive option are added. (normal git clone leaves the libdparse dir empty)
(Iยดm git noob, so if iยดm saying something very stupid please ignore/edit )

Manual installation

Could you explain (add to readme) what I should to do if I want to do manual installation?

Ok. Let's assume I compile it:
dub build --build=release
But what next? Should I copy it anywhere or what?

README is confusing to newbies.

The README says

Installation

Install the desired extra programs (dcd, dfmt, dscanner) if using them.

git clone https://github.com/Pure-D/workspace-d.git
cd workspace-d
dub build --build=release

It is not clear what is the relationship between the line "Install the desired extra programs (dcd, dfmt, dscanner) if using them." and the 3 following lines. It seems that the 3 lines ought to be the means to achieve the goal indicated by the "Install..." line, but its not the case.
This is confusing to newcomers who don't necessarily know what is the relationship between workspace-d-installer, workspace-d, dcd, dfmt and dscanner. It was confusing to me when I first looked at you projects.
The expression "desired extra programs" is not entirely clear either. Its better to replace with the standard engineering term "dependencies".
Also, is it a good idea to use workspace-d without any of (dcd, dfmt or dscanner)? No? Then its better to drop the "if using them" part. Its much better to send a very simple message "do this" rather than lots of ifs and remarks. Its because of the Paradox of choice.

The reformulated part of README becomes:

Installation

First, install dependencies:

Then, run:

git clone https://github.com/Pure-D/workspace-d.git
cd workspace-d
dub build --build=release

defunkt dcd-client

definitly still happening.
i am on master with workspace-d, dcd and code-d.

during the minute where the log below is from i see 6 defunct dcd-clients.
hope this helps.

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:44.598:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:20:44.598:server.d:main:310 Request processed in 0.524253 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:45.003:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:45.004:
[Plugin Host] WorkspaceD Debug: first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:20:45.004:first.d:visit:379 Could not resolve location of module 'stream_manager'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:45.004:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:20:45.004:first.d:visit:379 Could not resolve location of module 'luad/all'
2016-01-27T13:20:
[Plugin Host] WorkspaceD Debug: 45.004:first.d:visit:379 Could not resolve location of module 'vibe/core/log'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:45.004:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:20:45.004:server.d:main:310 Request processed in 0.67937 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:46.950:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:46.950:first.d:visit:379 Could not resolve location of module 'input_stream'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:46.950:first.d:visit:379 Could not resolve location of module 'stream_manager'
2016-01-27T13:20:46.950:first.d:visit:379 Could not resolve location of module 'code_manager'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:46.950:first.d:visit:379 Could not resolve location of module 'luad/all'
2016-01-27T13:20:46.950:first.d:visit:379 Could not resolve location of module 'vibe/core/log'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:46.951:autocomplete.d:getDoc:67 Could not find symbol

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:20:46.951:server.d:main:310 Request processed in 0.731715 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:19.700:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:19.700:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:19.700:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:25:19.700:first.d:visit:458 Could not reslove location of module 'kafkad/config'
2016-01-27T13:25:19.700:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:25:19.700:first.d:visit:379 Could not resolve location of module 'input_stream'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:19.700:first.d:visit:379 Could not resolve location of module 'stream_manager'
2016-01-27T13:25:19.700:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:25:19.700:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:25:19.701:first.d:visit:458 Could not reslove location of module 'registry'
2016-01-27T13:25:19.701:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:25:19.701:server.d:main:310 Request processed in 0.770774 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:19.902:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:19.902:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:19.902:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:25:19.902:first.d:visit:458 Could not reslove location of module 'kafkad/config'
2016-01-27T13:25:19.902:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:25:19.902:first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:25:19.902:first.d:visit:379 Could not resolve location of module 'stream_manager'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:19.902:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:25:19.902:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:25:19.902:first.d:visit:458 Could not reslove location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:19.902:autocomplete.d:getSymbolsByTokenChain:743 Could not find declaration of "print(msg.ip)" from position 1144
2016-01-27T13:25:19.903:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:25:19.903:server.d:main:310 Request processed in 0.673814 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:20.358:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:20.358:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:20.358:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:25:20.358:first.d:visit:458 Could not reslove location of module 'kafkad/config'
2016-01-27T13:25:20.358:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:25:20.358:first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:25:20.358:first.d:visit:379 Could not resolve location of module 'stream_manager'
2016-01-27T13:25:20.358:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:25:20.358:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:25:20.358:first.d:visit:458 Could not reslove location of module 'registry'
2016-01-27T13:25:20.358:autocomplete.d:getSymbolsByTokenChain:743 
[Plugin Host] WorkspaceD Debug: Could not find declaration of "print(msg.ip)" from position 1155
2016-01-27T13:25:20.358:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:25:20.358:server.d:main:310 Request processed in 0.856315 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideSignatureHelp
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:25.500:server.d:main:272 Getting completions

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:25.500:server.d:main:310 Request processed in 0.132353 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideCompletionItems
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:28.877:server.d:main:272 Getting completions

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:28.877:server.d:main:310 Request processed in 0.133561 milliseconds

[Plugin Host] resolve
[Plugin Host] Array[0]
[Plugin Host] provideSignatureHelp
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:34.817:server.d:main:272 Getting completions

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:34.818:server.d:main:310 Request processed in 0.128169 milliseconds

[Plugin Host] resolve null
[Plugin Host] lint
[Plugin Host] dubBuild
[Plugin Host] Object
[Plugin Host] Resolve
[Plugin Host] Array[1]
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:47.493:server.d:main:
[Plugin Host] WorkspaceD Debug: 279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:47.494:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:47.494:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:25:47.494:first.d:visit:458 Could not reslove location of module 'kafkad/config'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:47.494:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:25:47.494:first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:25:47.494:first.d:visit:379 Could not resolve location of module 'stream_manager'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:47.494:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:25:47.494:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:25:47.494:first.d:visit:458 Could not reslove location of module 'registry'
2016-01-27T13:25:47.494:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:25:47.494:server.d:main:310 Request processed in 1.09954 milliseconds

[Plugin Host] resolve null
[Plugin Host] Resolve
[Plugin Host] Array[1]
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:57.026:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:57.026:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:57.026:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:25:57.026:first.d:visit:458 Could not reslove location of module 'kafkad/config'
2016-01-27T13:25:57.026:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:25:57.026:first.d:visit:379 
[Plugin Host] WorkspaceD Debug: Could not resolve location of module 'input_stream'
2016-01-27T13:25:57.026:first.d:visit:379 Could not resolve location of module 'stream_manager'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:57.027:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:25:57.027:first.d:visit:379 Could not resolve location of module 'vibe/vibe'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:57.027:first.d:visit:458 Could not reslove location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:57.027:autocomplete.d:getSymbolsByTokenChain:743 Could not find declaration of processLua from position 1319
2016-01-27T13:25:57.027:autocomplete.d:getDoc:67 Could not find symbol

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:25:57.027:server.d:main:310 Request processed in 0.960164 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:07.725:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:07.726:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:07.726:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:26:07.726:first.d:visit:458 Could not reslove location of module 'kafkad/config'
2016-01-27T13:26:07.726:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:26:07.726:first.d:visit:379 Could not resolve location of module 'input_stream'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:07.726:first.d:visit:379 Could not resolve location of module 'stream_manager'
2016-01-27T13:26:07.726:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:26:07.726:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:26:07.726:first.d:visit:458 Could not reslove location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:07.726:autocomplete.d:getDoc:67 Could not find symbol

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:07.726:server.d:main:310 Request processed in 0.780014 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:08.052:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:08.052:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:08.052:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:26:08.052:first.d:visit:458 Could not reslove location of module 'kafkad/config'
2016-01-27T13:26:08.052:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:26:08.052:first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:26:08.052:first.d:visit:379 Could not resolve location of module 'stream_manager'
2016-01-27T13:26:08.052:first.d:visit:379 Could not resolve location of module 'code_manager'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:08.052:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:26:08.052:first.d:visit:458 Could not reslove location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:08.052:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:26:08.052:server.d:main:310 Request processed in 0.717903 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:08.425:server.d:main:279 
[Plugin Host] WorkspaceD Debug: Getting doc comment
2016-01-27T13:26:08.425:first.d:visit:379 Could not resolve location of module 'decoder/decoder'
2016-01-27T13:26:08.425:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:26:08.425:first.d:visit:458 Could not reslove location of module 'kafkad/config'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:08.425:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:26:08.425:first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:26:08.425:first.d:visit:379 Could not resolve location of module 'stream_manager'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:08.425:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:26:08.426:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:26:08.426:first.d:visit:458 Could not reslove location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:08.426:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:26:08.426:server.d:main:310 Request processed in 1.07201 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:11.790:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:11.790:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:11.790:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:26:11.790:first.d:visit:458 Could not reslove location of module 'kafkad/config'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:11.790:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:26:11.790:first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:26
[Plugin Host] WorkspaceD Debug: :11.790:first.d:visit:379 Could not resolve location of module 'stream_manager'
2016-01-27T13:26:11.790:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:26:11.790:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:26:11.790:first.d:visit:458 Could not reslove location of module 'registry'
2016-01-27T13:26:11.791:autocomplete.d:getSymbolsByTokenChain:743 Could not find declaration of "file1" from position 1136
2016-01-27T13:26:11.791:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:26:11.791:server.d:main:310 Request processed in 1.00917 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:14.745:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:14.746:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:14.746:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:26:14.746:first.d:visit:458 Could not reslove location of module 'kafkad/config'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:14.746:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:26:14.746:first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:26:14.746:first.d:visit:379 Could not resolve location of module 'stream_manager'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:14.746:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:26:14.746:first.d:visit:379 Could not resolve location of module 'vibe/vibe'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:14.746:first.d:visit:458 Could not reslove location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:14.746:autocomplete.d:getSymbolsByTokenChain
[Plugin Host] WorkspaceD Debug: :743 Could not find declaration of "file1" from position 1136
2016-01-27T13:26:14.746:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:26:14.747:server.d:main:310 Request processed in 1.04283 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:15.895:server.d:main:279 Getting doc comment
[Plugin Host] WorkspaceD Debug: 

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:15.896:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:15.896:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:26:15.896:first.d:visit:458 Could not reslove location of module 'kafkad/config'
2016-
[Plugin Host] WorkspaceD Debug: 01-27T13:26:15.896:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:26:15.896:first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:26:15.896:first.d:visit:379 
[Plugin Host] WorkspaceD Debug: Could not resolve location of module 'stream_manager'
2016-01-27T13:26:15.896:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:26:15.896:first.d:visit:379 Could not resolve location of module 'vibe/vibe'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:15.896:first.d:visit:458 Could not reslove location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:15.896:autocomplete.d:getSymbolsByTokenChain:743 
[Plugin Host] WorkspaceD Debug: Could not find declaration of "file1" from position 1136
2016-01-27T13:26:15.896:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:26:15.896:server.d:main:
[Plugin Host] WorkspaceD Debug: 310 Request processed in 1.13248 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:18.015:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:18.015:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:18.015:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:26:18.015:first.d:visit:458 Could not reslove location of module 'kafkad/config'
2016-01-27T13:26:18.015:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:26:18.015:first.d:visit:379 Could not resolve location of module 'input_stream'
2016-01-27T13:26:18.015:first.d:visit:379 Could not resolve location of module 'stream_manager'
2016-01-27T13:26:18.015:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:26:18.015:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:26:18.015:first.d:visit:458 Could not reslove location of module 'registry'
2016-01-27T13:26:18.015:autocomplete.d:getSymbolsByTokenChain:743 Could not find declaration of "file1" from position 1136
2016-01-27T13:26:18.015:autocomplete.d:getDoc:67 Could not find symbol

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:18.015:server.d:main:310 Request processed in 0.778192 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:19.015:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:19.015:first.d:visit:379 Could not resolve location of module 'decoder/decoder'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:19.016:first.d:visit:379 Could not resolve location of module 'kafkad/client'
2016-01-27T13:26:19.016:first.d:visit:458 Could not reslove location of module 'kafkad/config'
2016-01-27T13:26:19.016:first.d:visit:379 Could not resolve location of module 'cfg'
2016-01-27T13:26:19.016:first.d:visit:379 Could not resolve location of module 'input_stream'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:19.016:first.d:visit:379 Could not resolve location of module 'stream_manager'
2016-01-27T13:26:19.016:first.d:visit:379 Could not resolve location of module 'code_manager'
2016-01-27T13:26:19.016:first.d:visit:379 Could not resolve location of module 'vibe/vibe'
2016-01-27T13:26:19.016:first.d:visit:458 Could not reslove location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:19.016:autocomplete.d:getSymbolsByTokenChain:743 Could not find declaration of processLua from position 1279
2016-01-27T13:26:19.016:autocomplete.d:getDoc:67 Could not find symbol

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:26:19.016:server.d:main:310 Request processed in 0.776997 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:04.497:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:04.497:first.d:visit:458 Could not reslove location of module 'vibe/vibe'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:04.497:autocomplete.d:getDoc:67 Could not find symbol

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:04.497:server.d:main:310 Request processed in 0.790329 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:05.814:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:05.814:first.d:visit:458 Could not reslove location of module 'vibe/vibe'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:05.815:first.d:visit:379 Could not resolve location of module 'luad/all'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:05.815:first.d:visit:379 Could not resolve location of module 'registry'
2016-01-27T13:27:05.815:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:27:05.815:server.d:main:310 Request processed in 0.684754 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.205:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.206:first.d:visit:458 Could not reslove location of module 'vibe/vibe'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.206:first.d:visit:379 Could not resolve location of module 'luad/all'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.206:first.d:visit:379 Could not resolve location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.206:autocomplete.d:getSymbolsByTokenChain:743 Could not find declaration of Task from position 2022
2016-01-27T13:27:37.206:autocomplete.d:getDoc:67 Could not find symbol
2016-01-27T13:27:37.206:server.d:main:310 Request processed in 0.952322 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.548:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.549:first.d:visit:458 Could not reslove location of module 'vibe/vibe'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.549:first.d
[Plugin Host] WorkspaceD Debug: :visit:379 Could not resolve location of module 'luad/all'
2016-01-27T13:27:37.549:first.d:visit:379 Could not resolve location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.549:autocomplete.d:getSymbolsByTokenChain:743 Could not find declaration of Task from position 2023

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:37.549:autocomplete.d:getDoc:67 Could not find symbol
2016-01
[Plugin Host] WorkspaceD Debug: -27T13:27:37.550:server.d:main:310 Request processed in 1.07818 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:46.935:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:46.935:first.d:visit:458 Could not reslove location of module 'vibe/vibe'
2016-01-27T13:27:46.935:first.d:visit:379 Could not resolve location of module 'luad/all'
2016-01-27T13:27:46.935:first.d:visit:379 Could not resolve location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:46.935:autocomplete.d:getDoc:67
[Plugin Host] WorkspaceD Debug:  Could not find symbol
2016-01-27T13:27:46.935:server.d:main:310 Request processed in 0.871528 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:47.241:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:47.242:first.d:visit:458 Could not reslove location of module 'vibe/vibe'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:47.242:first.d:visit:379 Could not resolve location of module 'luad/all'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:47.242:first.d:visit:379 Could not resolve location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:47.242:autocomplete.d:getDoc:67 Could not find symbol

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:27:47.242:server.d:main:310 Request processed in 0.836073 milliseconds

[Plugin Host] resolve null
[Plugin Host] provideHover
[Plugin Host] WorkspaceD Debug: 2016-01-27T13:31:20.185:server.d:main:279 Getting doc comment

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:31:20.186:first.d:visit:458 Could not reslove location of module 'vibe/vibe'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:31:20.186:
[Plugin Host] WorkspaceD Debug: first.d:visit:379 Could not resolve location of module 'luad/all'
2016-01-27T13:31:20.186:first.d:visit:379 Could not resolve location of module 'registry'

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:31:20.186:autocomplete.d:getDoc:67 Could not find symbol

[Plugin Host] WorkspaceD Debug: 2016-01-27T13:31:20.186:server.d:main:310 Request processed in 1.27257 milliseconds

[Plugin Host] resolve null

check program versions

dcd-client --version
dfmt --version
dscanner --version

Also add --version argument to workspace-d (might be a bit late now though)

Windows support

Doesn't compile on Windows

dub build
Performing "debug" build using dmd for x86.
dub 0.9.24: target for configuration "library" is up to date.
dunit 1.0.12: target for configuration "library" is up to date.
painlessjson 1.3.5: target for configuration "library" is up to date.
workspace-d:util 1.2.0: building configuration "library"...
util\source\workspaced\util\filewatch.d(83,3): Error: static assert  (0) is false
dmd failed with exit code 1.

Autoinstall fails with out of memory

C:\proj\workspace-d>dub run :installer -- .                                                                                                                                
Building package workspace-d:installer in C:\proj\workspace-d\installer\                                                                                                   
Performing "debug" build using dmd for x86.                                                                                                                                
workspace-d:installer 2.9.1+commit.9.g0c142e7: target for configuration "application" is up to date.                                                                       
To force a rebuild of up-to-date targets, run again with --force.                                                                                                          
Running .\installer\iworkspaced.exe .                                                                                                                                      
Welcome to the workspace-d installation guide.                                                                                                                             
Make sure, you have dub and git installed.                                                                                                                                 
                                                                                                                                                                           
LDC is required on your platform!                                                                                                                                          
                                                                                                                                                                           
Which optional dependencies do you want to install?                                                                                                                        
[1] DCD - auto completion                                                                                                                                                  
[2] DScanner - code linting                                                                                                                                                
[3] dfmt - code formatting                                                                                                                                                 
Enter a comma separated list of numbers                                                                                                                                    
Selected [all]:                                                                                                                                                            
Using existing git repository for workspace-d                                                                                                                              
$ git submodule update --init --recursive                                                                                                                                  
Compiling...                                                                                                                                                               
$ dub upgrade                                                                                                                                                              
Upgrading project in C:\proj\workspace-d                                                                                                                                   
$ dub build --compiler=ldc2 --combined --build=release                                                                                                                     
Performing "release" build using ldc2 for x86.                                                                                                                             
workspace-d 2.9.1+commit.9.g0c142e7: building configuration "application"...                                                                                               
..\..\Users\jin\AppData\Roaming\dub\packages\dub-1.1.1\source\dub\compilers\utils.d(92): Deprecation: dub.compilers.buildsettings.array is not visible from module utils   
Error: out of memory                                                                                                                                                       
ldc2 failed with exit code 1.                                                                                                                                              
Error while compiling workspace-d.                                                                                                                                         
Program exited with code 1                                                                                                                                                 

workaround - manual build withoud "combined" flag:

dub build --compiler=ldc2 --build=release

Build fails with DMD 2.072.0

The build fails with the following error:

../../.dub/packages/dub-1.1.0-beta.1/dub/source/dub/internal/sdlang/lexer.d(16,8): Error: module stream is in file 'std/stream.d' which cannot be read

I assume this is related to std.stream being removed from Phobos with 2.072.0.

OSX dub build fails with getUDAs! template not defined

Hi there, I've tried building workspace-d (the latest version and a few historical versions as well) on OSX El Capitan, however when I run dub build I get:

source/app.d(205,30): Error: template instance getUDAs!(symbol, Arguments) template 'getUDAs' is not defined
source/app.d(224,84): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(234,56): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(237,95): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(205,30): Error: template instance getUDAs!(symbol, Arguments) template 'getUDAs' is not defined
source/app.d(224,84): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(248,56): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(251,95): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(205,30): Error: template instance getUDAs!(symbol, Arguments) template 'getUDAs' is not defined
source/app.d(224,84): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(205,30): Error: template instance getUDAs!(symbol, Arguments) template 'getUDAs' is not defined
source/app.d(224,84): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(205,30): Error: template instance getUDAs!(symbol, Arguments) template 'getUDAs' is not defined
source/app.d(224,84): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(205,30): Error: template instance getUDAs!(symbol, Arguments) template 'getUDAs' is not defined
source/app.d(224,84): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(205,30): Error: template instance getUDAs!(symbol, Arguments) template 'getUDAs' is not defined
source/app.d(224,84): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined
source/app.d(205,30): Error: template instance getUDAs!(symbol, Arguments) template 'getUDAs' is not defined
source/app.d(224,84): Error: template instance getUDAs!(symbol, component) template 'getUDAs' is not defined

dmd compiler version is:
DMD64 D Compiler v2.068.2
Copyright (c) 1999-2015 by Digital Mars written by Walter Bright

Any ideas how to resolve? Keen to try this in Visual Studio Code.
Cheers,
Andrew.

code-d workspace-d F12 'go to definition' does not work

env:
OpenSUSE LEAP 42.1 x86_64
VSCode: 1.8.1
Workspace-d: ~master (dd 4-jan-2017)
dcd-server: v0.9.0-alpha4
dcd-client: v0.9.0-alpha4
dscanner: v0.4.0-alpha bf3b942b9a102616c4c67611301738883845c906
dfmt: 0.5.0
Build with:
dmd: DMD64 D Compiler v2.072.2
using install.sh

F12 seem to jump to the correct d file but positions the cursor at one of the top lines.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.