diff --git a/source/dub/dub.d b/source/dub/dub.d index da6f3a5..2d131b8 100644 --- a/source/dub/dub.d +++ b/source/dub/dub.d @@ -170,7 +170,14 @@ if (ccps.length) m_packageManager.customCachePaths = ccps; - updatePackageSearchPath(); + // TODO: Move this environment read out of the ctor + if (auto p = environment.get("DUBPATH")) { + version(Windows) enum pathsep = ";"; + else enum pathsep = ":"; + NativePath[] paths = p.split(pathsep) + .map!(p => NativePath(p))().array(); + m_packageManager.searchPath = paths; + } } unittest @@ -366,7 +373,6 @@ void loadPackage(NativePath path) { m_projectPath = path; - updatePackageSearchPath(); m_project = new Project(m_packageManager, m_projectPath); } @@ -374,7 +380,6 @@ void loadPackage(Package pack) { m_projectPath = pack.path; - updatePackageSearchPath(); m_project = new Project(m_packageManager, pack); } @@ -469,7 +474,8 @@ { if (!path.absolute) path = NativePath(getcwd()) ~ path; m_overrideSearchPath = path; - updatePackageSearchPath(); + m_packageManager.disableDefaultSearchPaths = true; + m_packageManager.searchPath = [m_overrideSearchPath]; } /** Gets the default configuration for a particular build platform. @@ -1271,25 +1277,6 @@ return settings; } - private void updatePackageSearchPath() - { - // TODO: Remove once `overrideSearchPath` is removed - if (!m_overrideSearchPath.empty) { - m_packageManager._disableDefaultSearchPaths = true; - m_packageManager.searchPath = [m_overrideSearchPath]; - return; - } - - auto p = environment.get("DUBPATH"); - NativePath[] paths; - - version(Windows) enum pathsep = ";"; - else enum pathsep = ":"; - if (p.length) paths ~= p.split(pathsep).map!(p => NativePath(p))().array(); - m_packageManager._disableDefaultSearchPaths = false; - m_packageManager.searchPath = paths; - } - private void determineDefaultCompiler() { import std.file : thisExePath; diff --git a/source/dub/packagemanager.d b/source/dub/packagemanager.d index 74fc407..0b82866 100644 --- a/source/dub/packagemanager.d +++ b/source/dub/packagemanager.d @@ -103,15 +103,6 @@ deprecated("Instantiate a PackageManager instance with the single-argument constructor: `new PackageManager(path)`") @property void disableDefaultSearchPaths(bool val) { - this._disableDefaultSearchPaths(val); - } - - // Non deprecated instance of the previous symbol, - // as `Dub.updatePackageSearchPath` calls it and while nothing in Dub app - // itself relies on it, just removing the call from `updatePackageSearchPath` - // could break the library use case. - package(dub) void _disableDefaultSearchPaths(bool val) - { if (val == m_disableDefaultSearchPaths) return; m_disableDefaultSearchPaths = val; refresh(true);