DManager

Class which manages a D checkout and its dependencies.

class DManager : ICacheHost {}

Members

Aliases

buildDir
alias buildDir = subDir!"build"
Undocumented in source.
dlDir
alias dlDir = subDir!"dl"
Undocumented in source.
repoDir
alias repoDir = subDir!"repo"
Undocumented in source.

Classes

Component
class Component

Base class for a D component.

Curl
class Curl
Undocumented in source.
DMD
class DMD
Undocumented in source.
DManagerRepository
class DManagerRepository
Undocumented in source.
Druntime
class Druntime
Undocumented in source.
Extras
class Extras
Undocumented in source.
MetaRepository
class MetaRepository
Undocumented in source.
Phobos
class Phobos
Undocumented in source.
PhobosIncludes
class PhobosIncludes
Undocumented in source.
RDMD
class RDMD
Undocumented in source.
SubmoduleRepository
class SubmoduleRepository
Undocumented in source.
Website
class Website
Undocumented in source.

Functions

begin
SubmoduleState begin(string commit)

Begin customization, starting at the specified commit.

bootstrapDMD
void bootstrapDMD(string ver, string target)
Undocumented in source. Be warned that the author may not have intended to support it.
build
void build(SubmoduleState submoduleState, bool incremental)

Build the specified components according to the specified configuration.

buildRev
void buildRev(string rev)

Shortcut for begin + build

cacheEngineDir
string cacheEngineDir(string engineName)
Undocumented in source. Be warned that the author may not have intended to support it.
callback
void callback(string[] args)
Undocumented in source. Be warned that the author may not have intended to support it.
checkout
void checkout(SubmoduleState submoduleState)

Simply check out the source code for the given submodules.

componentNameFromKey
string componentNameFromKey(string key)
Undocumented in source. Be warned that the author may not have intended to support it.
cp
void cp(string src, string dst)
Undocumented in source. Be warned that the author may not have intended to support it.
getCacheState
bool[string] getCacheState(string[string][string] history)
bool[string] getCacheState(string[] refs)

Returns the isCached state for all commits in the history of the given ref.

getCallbackCommand
string getCallbackCommand()

Override this method with one which returns a command, which will invoke the unmergeRebaseEdit function below, passing to it any additional parameters. Note: Currently unused. Was previously used for unmerging things using interactive rebase.

getChild
void getChild(SubmoduleState submoduleState, string submoduleName, string commit, string child, int mainline)

Find the child of a commit (starting with the current submodule state), and, if the commit was a merge, the mainline index of said commit for the child.

getComponent
Component getComponent(string name)
Undocumented in source. Be warned that the author may not have intended to support it.
getFork
string getFork(string submoduleName, string user, string branch)

Returns the commit hash for the given GitHub fork. The result can then be used with addMerge/removeMerge.

getKeyOrder
string[][] getKeyOrder(string key)
Undocumented in source. Be warned that the author may not have intended to support it.
getLog
LogEntry[] getLog(string refName)

Gets the D merge log (newest first).

getMetaRepo
MetaRepository getMetaRepo()
Undocumented in source. Be warned that the author may not have intended to support it.
getPull
string getPull(string submoduleName, int pullNumber)

Returns the commit hash for the given pull request #. The result can then be used with addMerge/removeMerge.

getSubmodule
ManagedRepository getSubmodule(string name)
Undocumented in source. Be warned that the author may not have intended to support it.
getSubmoduleComponents
Component[] getSubmoduleComponents(string submoduleName)
Undocumented in source. Be warned that the author may not have intended to support it.
getVSInstaller
auto getVSInstaller()
Undocumented in source. Be warned that the author may not have intended to support it.
isCached
bool isCached(SubmoduleState submoduleState)
Undocumented in source. Be warned that the author may not have intended to support it.
log
void log(string line)

Override to add logging.

merge
void merge(SubmoduleState submoduleState, string submoduleName, string branch)

Applies a merge onto the given SubmoduleState.

migrateCache
void migrateCache(string sourceEngineName, string targetEngineName)

Move cached files from one cache engine to another.

msvcModelDir
string msvcModelDir()
Undocumented in source. Be warned that the author may not have intended to support it.
needCacheEngine
DCache needCacheEngine()
Undocumented in source. Be warned that the author may not have intended to support it.
needCurl
string needCurl()

Get libcurl for Windows (DLL and import libraries)

needDMC
void needDMC(Environment env, string ver)
Undocumented in source. Be warned that the author may not have intended to support it.
needDMD
void needDMD(Environment env)
Undocumented in source. Be warned that the author may not have intended to support it.
needDMD
void needDMD(Environment env, string dmdVer, bool bootstrap)
Undocumented in source. Be warned that the author may not have intended to support it.
needExtras
string needExtras()

Get DMD unbuildable extras (proprietary DigitalMars utilities, 32-bit import libraries)

needKindleGen
void needKindleGen(Environment env)
Undocumented in source. Be warned that the author may not have intended to support it.
needMSYS
void needMSYS(Environment env)
Undocumented in source. Be warned that the author may not have intended to support it.
needVC
void needVC(Environment env)
Undocumented in source. Be warned that the author may not have intended to support it.
optimizeCache
void optimizeCache()

Optimize entire cache.

purgeUnbuildable
void purgeUnbuildable()

Delete cached "unbuildable" build results.

rebuild
void rebuild()

Rerun build without cleaning up any files.

revert
void revert(SubmoduleState submoduleState, string submoduleName, string commit, int parent)

Reverts a commit from the given SubmoduleState. parent is the 1-based mainline index (as per man git-revert), or 0 if commit is not a merge commit.

shouldPurge
bool shouldPurge(string key)
Undocumented in source. Be warned that the author may not have intended to support it.
test
void test()

Run all tests for the current checkout (like rebuild).

unmerge
void unmerge(SubmoduleState submoduleState, string submoduleName, string branch)

Removes a merge from the given SubmoduleState.

update
void update()

Fetch latest D history.

Manifest constants

cacheVersion
enum cacheVersion;

This number increases with each incompatible change to cached data.

configFileName
enum configFileName;
Undocumented in source.
configFileName
enum configFileName;
Undocumented in source.
unbuildableMarker
enum unbuildableMarker;
Undocumented in source.

Properties

baseEnvironment
Environment baseEnvironment [@property getter]

Create a build environment base.

cacheEngineName
string cacheEngineName [@property getter]
Undocumented in source. Be warned that the author may not have intended to support it.
subDir
string subDir [@property getter]

Get a specific subdirectory of the work directory.

Static functions

applyEnv
string[string] applyEnv(string[string] target, string[string] source)

Apply user modifications onto an environment. Supports Windows-style %VAR% expansions.

disableCrashDialog
void disableCrashDialog()

Disable the "<program> has stopped working" standard Windows dialog.

needConfSwitch
bool needConfSwitch()
Undocumented in source. Be warned that the author may not have intended to support it.

Static variables

additionalComponents
string[] additionalComponents;
Undocumented in source.
allComponents
string[] allComponents;
Undocumented in source.
defaultComponents
string[] defaultComponents;
Undocumented in source.

Structs

Config
struct Config
Undocumented in source.
Environment
struct Environment

Current build environment.

LogEntry
struct LogEntry
Undocumented in source.
SubmoduleState
struct SubmoduleState
Undocumented in source.

Variables

autoClean
bool autoClean;

Automatically re-clone the repository in case "git reset --hard" fails.

binExt
enum string binExt;
Undocumented in source.
binExt
enum string binExt;
Undocumented in source.
cacheEngine
DCache cacheEngine;
Undocumented in source.
cacheFailures
bool cacheFailures;

Whether we should cache failed builds.

config
Config config;

ditto

Inherited Members

From ICacheHost

getKeyOrder
string[][] getKeyOrder(string key)

An optimization helper which provides a linear order in which keys should be optimized (cache entries most likely to have common data should be adjacent in the list).

log
void log(string s)

Log a string.

Meta