make filter changes more backwards compatible. ref #165

This commit is contained in:
Mark Harrah 2011-09-03 14:59:34 -04:00
parent 14bf0886c9
commit 228b245d2d
2 changed files with 16 additions and 7 deletions

View File

@ -98,6 +98,11 @@ object Defaults extends BuildCommon
pomExtra :== NodeSeq.Empty,
pomPostProcess :== idFun,
pomAllRepositories :== false,
includeFilter :== NothingFilter,
includeFilter in unmanagedSources :== "*.java" | "*.scala",
includeFilter in unmanagedJars :== "*.jar" | "*.so" | "*.dll",
includeFilter in unmanagedResources :== AllPassFilter,
excludeFilter :== (".*" - ".") || HiddenFileFilter,
pomIncludeRepository :== Classpaths.defaultRepositoryFilter
))
def projectCore: Seq[Setting[_]] = Seq(
@ -107,8 +112,6 @@ object Defaults extends BuildCommon
)
def paths = Seq(
baseDirectory <<= thisProject(_.base),
includeFilter in GlobalScope :== NothingFilter,
excludeFilter in GlobalScope :== (".*" - ".") || HiddenFileFilter,
target <<= baseDirectory / "target",
historyPath <<= target(t => Some(t / ".history")),
sourceDirectory <<= baseDirectory / "src",
@ -124,7 +127,9 @@ object Defaults extends BuildCommon
scalaSource <<= sourceDirectory / "scala",
javaSource <<= sourceDirectory / "java",
unmanagedSourceDirectories <<= Seq(scalaSource, javaSource).join,
includeFilter in unmanagedSources :== ("*.java" | "*.scala"),
// remove when sourceFilter, defaultExcludes are removed
includeFilter in unmanagedSources <<= (sourceFilter in unmanagedSources) or (includeFilter in unmanagedSources),
excludeFilter in unmanagedSources <<= (defaultExcludes in unmanagedSources) or (excludeFilter in unmanagedSources),
unmanagedSources <<= collectFiles(unmanagedSourceDirectories, includeFilter in unmanagedSources, excludeFilter in unmanagedSources),
watchSources in ConfigGlobal <++= unmanagedSources,
managedSourceDirectories <<= Seq(sourceManaged).join,
@ -139,7 +144,8 @@ object Defaults extends BuildCommon
unmanagedResourceDirectories <<= Seq(resourceDirectory).join,
managedResourceDirectories <<= Seq(resourceManaged).join,
resourceDirectories <<= Classpaths.concatSettings(unmanagedResourceDirectories, managedResourceDirectories),
includeFilter in unmanagedResources :== AllPassFilter,
// remove when defaultExcludes are removed
excludeFilter in unmanagedResources <<= (defaultExcludes in unmanagedResources) or (excludeFilter in unmanagedResources),
unmanagedResources <<= collectFiles(unmanagedResourceDirectories, includeFilter in unmanagedResources, excludeFilter in unmanagedResources),
watchSources in ConfigGlobal <++= unmanagedResources,
resourceGenerators :== Nil,
@ -585,7 +591,10 @@ object Classpaths
exportedProducts <<= exportProductsTask,
classpathConfiguration <<= (internalConfigurationMap, configuration)( _ apply _ ),
managedClasspath <<= (classpathConfiguration, classpathTypes, update) map managedJars,
unmanagedJars <<= (configuration, unmanagedBase, classpathFilter, excludeFilter in unmanagedJars) map { (config, base, filter, excl) =>
// remove when defaultExcludes and classpathFilter are removed
excludeFilter in unmanagedJars <<= (defaultExcludes in unmanagedJars) or (excludeFilter in unmanagedJars),
includeFilter in unmanagedJars <<= classpathFilter or (defaultExcludes in unmanagedJars),
unmanagedJars <<= (configuration, unmanagedBase, includeFilter in unmanagedJars, excludeFilter in unmanagedJars) map { (config, base, filter, excl) =>
(base * (filter -- excl) +++ (base / config.name).descendentsExcept(filter, excl)).classpath
}
)
@ -630,7 +639,6 @@ object Classpaths
organizationName <<= organizationName or organization.identity,
organizationHomepage <<= organizationHomepage or homepage.identity,
projectInfo <<= (name, description, homepage, startYear, licenses, organizationName, organizationHomepage) apply ModuleInfo,
classpathFilter in GlobalScope :== "*.jar" | "*.so" | "*.dll",
externalResolvers <<= (externalResolvers.task.?, resolvers) {
case (Some(delegated), Seq()) => delegated
case (_, rs) => task { Resolver.withDefaultResolvers(rs) }

View File

@ -82,6 +82,8 @@ object Keys
// Filters
val includeFilter = SettingKey[FileFilter]("include-filter", "Filter for including sources and resources files from default directories.")
val excludeFilter = SettingKey[FileFilter]("exclude-filter", "Filter for excluding sources and resources files from default directories.")
@deprecated("Use `includeFilter`, scoped by respective classpath related task instead. For example, `includeFilter in unmanagedJars`", "0.11.0")
val classpathFilter = SettingKey[FileFilter]("classpath-filter", "Filter for selecting unmanaged dependencies.")
@deprecated("Use `includeFilter`, scoped by respective source related task instead. For example, `includeFilter in unmanagedSources`", "0.11.0")
val sourceFilter = SettingKey[FileFilter]("source-filter", "Filter for selecting sources from default directories.")
@deprecated("Use `excludeFilter`, scoped by respective task instead. For example, `excludeFilter in unmanagedSources`", "0.11.0")
@ -218,7 +220,6 @@ object Keys
val updateConfiguration = SettingKey[UpdateConfiguration]("update-configuration", "Configuration for resolving and retrieving managed dependencies.")
val ivySbt = TaskKey[IvySbt]("ivy-sbt", "Provides the sbt interface to Ivy.")
val ivyModule = TaskKey[IvySbt#Module]("ivy-module", "Provides the sbt interface to a configured Ivy module.")
val classpathFilter = SettingKey[FileFilter]("classpath-filter", "Filter for selecting unmanaged dependencies.")
val update = TaskKey[UpdateReport]("update", "Resolves and optionally retrieves dependencies, producing a report.")
val updateClassifiers = TaskKey[UpdateReport]("update-classifiers", "Resolves and optionally retrieves classified artifacts, such as javadocs and sources, for dependency definitions, transitively.", update)
val transitiveClassifiers = SettingKey[Seq[String]]("transitive-classifiers", "List of classifiers used for transitively obtaining extra artifacts for sbt or declared dependencies.")