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

Implemented Workspace-D #400

Open
wants to merge 4 commits into
base: develop
Choose a base branch
from

Conversation

Scellow
Copy link
Contributor

@Scellow Scellow commented Mar 2, 2018

No description provided.

@Scellow
Copy link
Contributor Author

Scellow commented Mar 2, 2018

There are some issues:

Questions:

If this PR is merged then users will have to download yet another tool

So we need a way to distribute the tools easily, an installer with prebuilt/tested binaries sounds like the best solution, what do you think ?

@pirocks
Copy link
Collaborator

pirocks commented Mar 4, 2018

So we need a way to distribute the tools easily, an installer with prebuilt/tested binaries sounds like the best solution, what do you think ?

There was talk a while ago about building all the tools with dub(it should be possible using only dub fetch/dub build).

It is slow to start (index every imports + sdk) and it is done while the project is loading, should be done async

I put some comments about this on your other PR. You can start workspace-d async, by wrapping the relevant code in the following:

 val task = object : Task.Backgroundable(project,"Starting Workspace-d") {
    override fun run(indicator: ProgressIndicator) {
        //code for starting workspace-d goes here
    }
}
ProgressManager.getInstance().runProcessWithProgressAsynchronously(task, BackgroundableProcessIndicator(task))

@@ -4,6 +4,7 @@ import com.google.gson.Gson
import com.intellij.openapi.module.ModuleUtilCore
import com.intellij.psi.PsiFile
import io.github.intellij.dlanguage.codeinsight.dcd.completions.DCDModel
import org.jetbrains.rpc.LOG
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

org.jetbrains.rpc.LOG isn't resolved for me. Where does that come from? The com.intellij.openapi.diagnostic.Logger class should be used for logging.

}
else
println("Unsupported response type: ${response.type}")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if using Logger this line could be a warn() or info()

@SingingBush
Copy link
Member

I'm not keen on bundling pre-built binaries but a convenient option for downloading is fine. DScanner now has pre-built binaries for Windows, Mac, and Linux but DCD and dfmt aren't there yet. Using dub is probably the only reliable option at the moment.

Is the work on this PR complete? If so please rebase it with current develop branch

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

Successfully merging this pull request may close these issues.

None yet

3 participants