buggins / dlangide

D language IDE based on DlangUI
Boost Software License 1.0
448 stars 55 forks source link

Use the "dub" package as a library #228

Open s-ludwig opened 7 years ago

s-ludwig commented 7 years ago

DUB is usable as a library to provide functionality for loading packages (dub.package_/dub.recipe.packagerecipe), resolving dependencies (dub.project/dub.dub), building (dub.generators.build), listing installed packages (dub.packagemanager) etc. The reason for opening this ticket is that I wasn't able to open my (SDLang based) projects and, considering how many issues are open on the DUB issue tracker, it sounds like duplicating the logic is a hefty maintenance burden down the road.

buggins commented 7 years ago

BTW, SDL seems to be supported in current DlangIDE version.

buggins commented 7 years ago

First step could be invoking DUB for build as a library code in separate thread instead of external executable with piped i/o - w/o using it to read project details so far.