diff --git a/main/Defaults.scala b/main/Defaults.scala index 2c99423b8..c07e735cc 100644 --- a/main/Defaults.scala +++ b/main/Defaults.scala @@ -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) } diff --git a/main/Keys.scala b/main/Keys.scala index 2d6077c04..db15d0df4 100644 --- a/main/Keys.scala +++ b/main/Keys.scala @@ -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.")