Add additional package name validity checks. See #540.
1 parent 1a91dc1 commit 86c0dfb78173e43100b20d5087eda107b8dc8070
@Sönke Ludwig Sönke Ludwig authored on 7 Apr 2015
Showing 1 changed file
View
16
source/dub/project.d
logWarn(`WARNING: DUB package names should always be lower case, please change `
~ `to {"name": "%s"}. You can use {"targetName": "%s"} to keep the current `
~ `executable name.`,
m_rootPackage.name.toLower(), m_rootPackage.name);
}
} else if (!m_rootPackage.name.all!(ch => ch >= 'a' && ch <= 'z' || ch >= '0' && ch <= '9' || ch == '-' || ch == '_')) {
logWarn(`WARNING: DUB package names may only contain alphanumeric characters, `
~ `as well as '-' and '_', please modify the "name" field in %s `
~ `accordingly. You can use {"targetName": "%s"} to keep the current `
~ `executable name.`,
m_rootPackage.packageInfoFilename.toNativeString(), m_rootPackage.name);
}
enforce(!m_rootPackage.name.canFind(' '), "Aborting due to the package name containing spaces.");
 
foreach (dn, ds; m_rootPackage.dependencies)
if (ds.isExactVersion && ds.version_.isBranch) {
logWarn("WARNING: A deprecated branch based version specification is used "