Commit Graph

455 Commits

Author SHA1 Message Date
Mark Harrah d8b3118ba4 Revert packaging='pom' behavior change introduced in c5823ad1e7. Fixes #810. Ref #636. 2013-07-11 18:49:30 -04:00
Mark Harrah 544565bf98 clean up some ConvertResolver parameter lists 2013-07-11 18:49:30 -04:00
Mark Harrah ce1c8b0ebc Better auto project ID handling. Ref #776.
* Consolidate project ID validation and normalization into Project methods
* Provide an earlier and more detailed error message when the directory
  name can't be used for the project ID
2013-06-23 19:57:30 -04:00
Mark Harrah 7796715e88 Move deprecated scala-tools conveniences to private[sbt] accessibility 2013-06-19 17:15:22 -04:00
Mark Harrah 133ff84ae8 Invalidate cache when metadata came from ProjectResolver. Based on the core idea in #770 by @ezh.
Fixes #768, closes #770, fixes #773.
2013-06-05 19:55:24 -04:00
Mark Harrah 268ae565f6 Fix regression in 0.12.3 where artifacts without an explicit configuration wouldn't be listed in ivy.xml. 2013-06-04 11:10:12 -04:00
Mark Harrah cbe6c96564 ProjectResolver should throw an exception when called to retrieve dependency.
As suggested by @ezh, ref #770.
2013-06-03 22:49:48 -04:00
Mark Harrah 8823df4fbc additional docs on ModuleID.extra 2013-06-01 10:56:30 -04:00
Mark Harrah ea52e2c034 Test case and comment fixes #760.
The actual fix was introduced in 6d5d641dd7.
2013-05-28 15:08:13 -04:00
Mark Harrah 04a5a01005 Use publication date from metadata instead of original file's last modified time. Fixes #764. 2013-05-28 11:08:49 -04:00
Mark Harrah 6d5d641dd7 Fix for cache issues when developing sbt itself.
Ivy still seems to remember the resolver that found the metadata
and records that as the resolver to use for the artifact.  Previous
fixes have attempted to ignore or blank this resolver.  The issue
this fix addresses comes from inter-project not being ignored/blanked.
inter-project can't provide artifacts because it is only for projects
in the current build under development and not for modules in a repository.
The symptom is that compiling a build definition fails because the
sbt jars aren't on the classpath, but it is ultimately due to the
inter-project resolver incorrectly being used to resolve artifacts.
2013-05-05 15:42:15 -04:00
Mark Harrah b5dc5c1ddd account for localOnly when cache subclass overrides isChanging 2013-05-05 15:42:15 -04:00
Mark Harrah a4c059cb7e Better auto-generated IDs for default projects. Fixes #554.
For the global plugins project, the default ID is "global-plugins".
For a normal project, the default ID is the name of the build directory.
The ID of a build definition for one of the above appends -build.
2013-04-10 20:15:28 -04:00
Mark Harrah dce2853ae7 Correct data constructor for CrossVersion.binaryMapping. Fixes #716. 2013-03-27 09:17:54 -04:00
Mark Harrah 2f13b7a8c7 add publish-m2 task for publishing to ~/.m2/repository. Fixes #485. 2013-03-27 09:17:53 -04:00
Mark Harrah e69df1ae9c use separate ivy home directories in component provider test so tests can run concurrently 2013-03-18 09:52:57 -04:00
Mark Harrah fcfa51c2ab Remove the conflict warnings based on the evicted modules. Ref #709.
This aspect is better served by a standard Ivy conflict manager.
2013-03-14 16:17:12 -04:00
Mark Harrah 718fa91772 Publish test artifacts in Test configuration and corrects classifier to 'tests'. Fixes #683 2013-03-08 20:11:53 -05:00
Mark Harrah 56b85522b7 ivy cache: ignore the original resolver in more places. Fixes #704 2013-03-08 14:23:31 -05:00
Brendan W. McAdams 77310ac2b6 Resolves #645: Added 'xml:space="preserve"' attribute to extraDependencyAttributes XML Block * This will keep PrettyPrinter from clobbering and breaking pom files for plugins dependent on other plugins 2013-02-28 18:00:40 -05:00
Mark Harrah f6d73128fc deprecations 2013-02-25 09:24:04 -05:00
Mark Harrah cbaef8a6f8 Use Ivy's default name for the resolution report.
Ivy hardcodes the resolution report name in the stylesheet that renders the
HTML from the XML report.  This means that the links to other configurations
are broken when using a custom name.
2013-02-19 14:33:22 -05:00
Eugene Yokota 125727ba83 support binary version in launcher 2013-01-29 16:55:13 -05:00
Eugene Yokota d7779ec96e add more CrossVersionTest 2013-01-24 13:03:40 -05:00
Eugene Yokota fedd43922a add CrossVersionTest 2013-01-24 13:03:40 -05:00
Eugene Yokota 6c24d1a8b8 deprecate binaryVersion 2013-01-24 13:03:40 -05:00
Eugene Yokota b929d778e9 adds sbtApiVersion and scalaApiVersion
sbtApiVersion and scalaApiVersion each calculates the API
version of release builds as well as milestones and RCs.

scalaBinaryVersion and sbtBinaryVersion are now aware of
scalaApiVersion and sbtApiVersion respectively.
For example, sbtBinaryVersion for "0.13.0-SNAPSHOT" now evaluates to
"0.13.0-SNAPSHOT" instead of "0.13".
2013-01-24 08:21:11 -05:00
Paolo G. Giarrusso d64a0e078d Silence boring Eclipse warnings: catching all exceptions, part 2
These warning fixes are new since my last pull request, please verify.
2013-01-22 09:05:15 -05:00
Paolo G. Giarrusso 40bc141058 Silence boring Eclipse warnings: @SuppressWarnings("rawtypes")
Add @SuppressWarnings("rawtypes") to ResolverAdapter, since it has a comment
making pretty clear that using raw types is intended.
2013-01-22 09:05:15 -05:00
Mark Harrah 960af4244a Only include standard scopes in pom.xml. 2013-01-16 10:26:33 -05:00
Mark Harrah 1cdaf530cb follow-up to invalidating changing artifacts: super.cacheModuleDescriptor can be null 2013-01-16 10:26:33 -05:00
Mark Harrah 37f937402f Ivy Artifact needs wildcard configuration added if no explicit ones are defined. Fixes #439. 2013-01-16 10:26:33 -05:00
Mark Harrah 0f28164b53 Invalidate artifacts not recorded in the original metadata when a module marked as changing changes. Fixes #637, #641. 2013-01-15 08:22:00 -05:00
Mark Harrah dd008e4dc5 Warn and optionally error when multiple cross version suffixes for a module are detected. Fixes #639. 2013-01-15 08:21:53 -05:00
Mark Harrah a9ac6b3983 Configurable conflict manager and corresponding documentation on conflictManager, dependencyOverrides, and force(). Fixes #603. 2013-01-11 16:01:31 -05:00
Mark Harrah c5823ad1e7 Don't try to automatically detect a main artifact when packaging=pom. Fixes #636.
For the rare case where a main artifact is expected, add an explicit jar()
to the dependency declaration.
2013-01-11 16:01:30 -05:00
Mark Harrah 4af9b70bf9 Split IvyInterface into Artifact, Configuration, ModuleID, and Resolver source files 2013-01-10 16:06:13 -05:00
Mark Harrah caa1a4c583 API documentation for ModuleID methods 2013-01-10 16:06:12 -05:00
Mark Harrah a152965933 Option to automatically manage API documentation mappings
Set autoAPIMappings := true to enable.

Then, set apiURL to the base URL of the API documentation for a project.
This will get stored in an extra attribute in the ivy.xml or as a property
a pom.xml.

When using managed dependencies that have set their apiURL, the -doc-external-doc
setting for scaladoc will be automatically configured.  Note that this option
will only be available in Scala 2.10.1 and so enabling autoAPIMappings for
earlier versions will result in an error from scaladoc.

For unmanaged dependencies or dependencies without an automatic apiURL, add the
(File,URL) mapping to apiMappings.  The File is the classpath entry and the URL
is the location of the API documentation.
2013-01-10 16:06:12 -05:00
Mark Harrah 6a7540cf6f Disable Ivy debug-level logging (see elaboration below). Fixes #635.
The verbose-level logging is what usually contains relevant information for the user.
Persisting the debug logging slows down update noticeably and clutters the more useful
debug logging output from verbose.
2013-01-10 16:06:12 -05:00
Mark Harrah ce439efab3 Convert references to harrah/xsbt to sbt/sbt 2013-01-04 17:22:40 -05:00
Mark Harrah e3745540c9 More cleanup of Scala version handling, including managedScalaInstance to control automatic 'scala-tool' configuration and dependencies. 2012-12-09 20:40:41 -05:00
Grzegorz Kossakowski ef39aeb9c1 Follow source layout convention supported by Eclipse.
Moved source files so directory structure follow package
structure. That makes it possible to use Scala Eclipse plugin
with sbt's source code.
2012-12-07 10:27:08 -08:00
Mark Harrah 769ecbace5 add scala-tool configuration and dependencies when configuring via pom.xml/ivy.xml 2012-12-06 07:25:41 -05:00
Josh Suereth 0c08c1169e Bumped the Scalatest/Specs versions for 2.10.0-RC3
* Modified tests to use mutable Specs API
* Fixed a few minor specs issues.
2012-12-04 13:10:09 -05:00
Mark Harrah 5a45faf41b ConflictWarning cleanup, added strict convenience method for failing on any conflicts 2012-12-02 03:17:19 -05:00
Mark Harrah e47a357ab7 Resolve Scala version for projects in the normal `update` task.
1. Scala jars won't be copied to the boot directory, except for those needed to run sbt.
2. Scala SNAPSHOTs behave like normal SNAPSHOTs.  In particular, running `update` will properly re-resolve the dynamic revision.
3. Scala jars are resolved using the same repositories and configuration as other dependencies.
4. Classloaders (currently, Scala classloaders) are cached by the timestamps of entries instead of Scala class loaders being cached by version.

TODO: Support external dependency configuration
2012-11-17 20:23:06 -05:00
Mark Harrah 1c1e5c4977 taking care of deprecations removed in Scala master 2012-11-14 11:48:06 -05:00
Mark Harrah ce0284e187 Fixes #582. Don't merge dependencies with mismatched transitive/force/changing values.
This avoids the assertion, but note that Ivy is unlikely to work properly in this situation.
2012-11-12 14:45:36 -05:00
Mark Harrah e532d20732 cleanup of #585: compatible with earlier launchers 2012-10-29 09:52:10 -04:00
Eric Bowman 835ee0d1b3 XSBT-5: maven-style ivy repo support in the launcher config
Change-Id: I22c1ff126961d61d92e2e45a5b7eff329d3def90
Reviewed-on: https://gerrit.gilt.com/10950
Reviewed-by: Eric Bowman <ebowman@gilt.com>
Tested-by: Eric Bowman <ebowman@gilt.com>
2012-10-29 09:04:42 -04:00
Mark Harrah 5500d38367 invalidate cache when metadata deleted from local repository 2012-09-23 15:46:26 -04:00
Mark Harrah b15fb72727 Fail publishing when artifacts to publish do not exist. 2012-09-11 11:37:41 -04:00
Mark Harrah ea6bf368db use context logger instead of initial logger for Resolving messages 2012-09-01 09:56:09 -04:00
Mark Harrah 3dd3a18996 Force update on change to last modified time of artifacts or cached descriptor.
This is part 2 of the fix for #532.  It may also fix issues when working with
multiple local projects via 'publish-local' and binary dependencies.
2012-08-29 11:13:48 -04:00
Mark Harrah 14952e00b6 Second part of resolution cache work. Fixes #532.
Replaces the standard Ivy resolution cache:
 1. Separate the cached resolved Ivy files from resolution reports,
    making resolution reports easier to find (target/resolution-cache/reports/)
 2. Cache location includes extra attributes so that cross builds of a plugin
    do not overwrite each other.
2012-08-29 11:13:48 -04:00
Mark Harrah 7a7acce621 don't write <scope> section of pom if scope is 'compile' 2012-08-28 11:55:24 -04:00
Mark Harrah c7f6ce4aec per-project resolution cache that deletes cached files before each update
These are the ivy files, properties, and resolve reports for the project,
not dependencies and their artifacts.
2012-08-28 11:55:24 -04:00
Mark Harrah 74c07c64a7 Merge multiple dependency definitions for the same ID. Fixes #468, #285, #419, #480.
This is only a workaround.  Multiple dependency definitions should be avoided
in general.
2012-08-27 10:49:13 -04:00
Thomas Lockney 8045731500 Actually pass in the artifact, rather than just a global match 2012-07-17 15:20:26 -04:00
Mark Harrah 5a93605d75 'orbit' packaging should be handled like a standard jar. fixes #499. ref #463 2012-07-06 10:28:51 -04:00
Mark Harrah 53ee1c5adf hk2-jar packaging should be handled like a standard jar. fixes #463 2012-05-16 07:34:15 -04:00
Mark Harrah 80500b5ca5 remove duplicate conflict warnings 2012-05-06 15:11:46 -04:00
Mark Harrah 1c1d7b41a5 change Scala binary version check to a warning 2012-05-06 14:15:03 -04:00
Mark Harrah e8b8be7547 more scala-tools replacements 2012-05-05 20:35:04 -04:00
Mark Harrah 361027127e deprecations backported to 0.11.3 2012-05-05 20:35:04 -04:00
Mark Harrah 3f92b33350 bump to Ivy 2.3.0-RC1 2012-05-02 19:56:35 -04:00
Mark Harrah 59a7432cf8 update-classifiers fixes: mark modules intransitive and don't exclude sources/docs for scala jars 2012-05-02 19:56:35 -04:00
Mark Harrah dfac015eb3 exclude should apply to any artifact type, not just jars. fixes #436 2012-04-28 18:58:52 -04:00
Mark Harrah 8594e4443d reorganize compilation modules 2012-04-18 08:08:25 -04:00
Mark Harrah 7109bc9637 configuration via ivysettings.xml: use URI instead of URL and make 'inter-project' resolver available for multi-project builds. ref #416 2012-04-11 22:40:45 -04:00
Michael Allman ba2e42287b Add support for loading Ivy settings from a URL 2012-04-08 20:22:15 -07:00
Indrajit Raychaudhuri 5b3dc5bf26 Update Resolver configuration
- deprecate scala-tools resolvers
- rename `typesafeResolver` to `typesafeReleases` for consistency
- add reference for other wel known resolvers, viz., oss.sonatype.org and scalasbt.artifactoryonline.com
- rearrange locations for helper methods
2012-03-12 05:25:12 +05:30
Indrajit Raychaudhuri 14d4e41a15 Have convenient toString for `FileCredentials` 2012-02-28 23:01:17 +05:30
Indrajit Raychaudhuri ea08f86520 Added support for providing basic SCM info
Sonatype OSS repo (where many libraries are expected to migrate) requires
populating SCM info in additional to what is already provisioned for
populating in SBT.

We now support populating the basic SCM info as thus:
```
// Usual <scm><url/><connection/></scm>
scmInfo := Some(ScmInfo(url("https://github.com/foo/project"), "scm:git:https://github.com/foo/project.git"))

// Also add <developerConnection/>
scmInfo := Some(ScmInfo(url("https://github.com/foo/project"), "scm:git:https://github.com/foo/project.git", Some("dev_connection")))
```
For anything more esoteric than the basic info, there is always `pomPostProcess` :)
2012-02-28 15:30:51 +05:30
Mark Harrah 45eacbad4c Declare extra namespace in ModuleDescriptor for parsed plugin poms. Fixes #368. 2012-02-27 18:38:04 -05:00
Mark Harrah 52bca9bb8a add ConflictWarning.disable convenience method 2012-02-21 22:47:07 -05:00
Eugene Vigdorchik 45073ee7f1 test- preffix should be stripped to obtain classifier. 2012-02-21 18:52:50 +04:00
Mark Harrah 5fa93ca9f9 work around 'data has not been loaded' exception when direct dependency overridden by newer version 2012-02-14 21:59:13 -05:00
Mark Harrah b0e86898d1 support for dependency overrides 2012-02-14 21:59:12 -05:00
Eugene Vigdorchik be3ea741bc Mirror ivy \'force\' attribute in sbt. 2012-02-07 20:14:45 +04:00
Mark Harrah 5e155900da rework cross versioning to account for prerelease Scala versions 2012-01-22 22:06:53 -05:00
Mark Harrah 2255bd5a62 org.scala-tools.sbt -> org.scala-sbt and dropping scala-tools.org from defaults 2012-01-22 22:06:52 -05:00
Eric J. Christeson 1cc8c02c5b Remove trailing whitespace from entries in credentials file 2011-12-30 11:49:43 -06:00
杨博 4a727bc9d3 Allow `ModuleID % Configuration` 2011-12-13 00:08:18 +08:00
Indrajit Raychaudhuri fba4953c32 Miscellaneous updates
- honor includeTypes to filter dependency artifact candidates for classifier setting
- prefer the more stable Seq[_] instead of Iterable[_]
- import cleanups
2011-11-22 02:08:16 +05:30
Mark Harrah 9d21c48f41 revert XNode/Node rename because of shadowing when running full API doc generation 2011-11-19 18:17:30 -05:00
Indrajit Raychaudhuri 0139f15311 Cleanups activities
- extract exclusion block to separate method
- replace simple cases of mapping over function with pattern matching
2011-11-20 00:51:04 +05:30
Indrajit Raychaudhuri e69c1c3827 Add classifier for 'jar' artifact type only. Closes #257. 2011-11-20 00:10:43 +05:30
Indrajit Raychaudhuri 0270ac078f Support for enhanced cross build suffix in dependencies. Closes #267
Overloading `%%` for library dependency to allow using a library built
with an alternative version of Scala that is different from the Scala
version used in the current build (but hopefully binary compatible).

This is useful in cases, where the binary build of a dependency with
the exact Scala version isn't yet available but an otherwise binary
compatible build (maybe with a previous Scala release) is available.
2011-11-17 22:17:06 +05:30
Mark Harrah 156d836174 only require descriptors for dependencies without an explicit URL. fixes #263 2011-11-09 18:30:35 -05:00
Mark Harrah 76398a5646 add missing newline in conflict warning 2011-11-04 13:40:59 -04:00
Mark Harrah 3d82b79fc9 log during resolution 2011-11-04 13:40:59 -04:00
Mark Harrah 2805dbde8f track whether UpdateReport was cached or freshly generated 2011-10-30 18:39:47 -04:00
Mark Harrah b2398172b2 use Charset.name instead of toString (which currently calls name) 2011-10-26 19:28:26 -04:00
Indrajit Raychaudhuri 64af38bb84 Use IO.write instead of explicit resource management 2011-10-26 21:43:42 +05:30
Mark Harrah 16eee17503 drop configurations when storing unavailable classifiers. fixes #46 2011-10-16 17:27:36 -04:00
Jan Berkel 7508f7a7ea Added support for <classifier> in makePom
Avoid second call to getExtraAttribute
2011-10-12 02:59:16 +02:00
Mark Harrah 30e3c3e3e4 fixes #212. dependencies on plugins must be encoded in <properties> element. 2011-10-01 19:47:06 -04:00
Mark Harrah baee7b0f61 require metadata by default 2011-09-21 22:49:58 -04:00
Mark Harrah 7aeea2528b work around for Ivy-899. fixes #194 2011-09-20 20:51:47 -04:00
Mark Harrah dcea4f2293 make ComponentManager honor value of Ivy home provided by the launcher 2011-09-16 23:08:01 -04:00
Indrajit Raychaudhuri bd8d1c0698 Support for simple exclusion rules in inline dependencies
This support excluding a library from the dependency tree for a given
set of `ExclusionRule`s. There are two ways to achieve this:

- Using `organization` and `name` pairs:
val dep = "org" % "name" % "version" exclude("commons-codec", "commons-codec") exclude("org.slf4j", "slf4j-log4j")

- Using `ExclusionRule`:
val dep = "org" % "name" % "version" excludeAll(ExclusionRule("commons-codec", "commons-codec"), ExclusionRule("org.slf4j", "slf4j-log4j"))
2011-09-10 04:32:47 +05:30
Indrajit Raychaudhuri 1647efd6f8 Honor <exclusions/> in <dependency/> when available 2011-09-06 17:29:42 +05:30
Indrajit Raychaudhuri 7f9adf31b8 Add start-year for compliance in ProjectInfo 2011-09-03 02:19:08 +05:30
Mark Harrah 950bf200dc clean up optional dependency handling for make-pom. fixes #162 2011-08-26 23:27:03 -04:00
Mark Harrah fcdcdb4eaa more on #155 2011-08-23 19:51:50 -04:00
Mark Harrah d2ed74a5dd minor improvements to conflict message. closes #132 2011-08-23 19:51:50 -04:00
Mark Harrah a3460698bb improved fix for #155 2011-08-22 22:48:35 -04:00
Mark Harrah 967deece9c better error when publish resolver from custom configuration doesn't exist 2011-08-22 22:48:21 -04:00
Mark Harrah ba33a73271 remove duplication in conflict warning message 2011-08-22 22:48:21 -04:00
Mark Harrah c121c1745a append sbt pattern to leave the default IBiblioResolver pattern in place. fixes #155 2011-08-19 22:13:56 -04:00
Mark Harrah b36e40a8f7 move to 2.9.1 (RC3), bump to 0.11.0-SNAPSHOT 2011-08-16 17:32:26 -04:00
Indrajit Raychaudhuri bb75b74eb6 Remove some deprecations and redundant code 2011-08-05 13:30:04 +05:30
Mark Harrah 8f519a21c0 remove obsolete assertion. ref #143 2011-08-04 18:08:21 -04:00
Indrajit Raychaudhuri 67102aadff - Extra Settings are now available to control project information, viz., name, description, homepage, organization name, organization homepage, licenses
- Modified name/signature of some private types/methods to reduce confusion (all in limited scope, so nothing should change from end user's pov)
- Enriched Ivy and Maven descriptors produced out of the box (see Keys.scala and Defaults.scala for more)
- Projects do not need to create custom Ivy <info/> block anymore, there is more settings-specific control instead
2011-08-03 08:49:46 +05:30
Mark Harrah a6ef6481ac use configurations for modules for update-classifiers. fixes #104 2011-07-31 22:17:50 -04:00
Indrajit Raychaudhuri 60aa517cd2 JavaNet1Repository should have legacy layout (see: http://maven.apache.org/pom.html#Repository) 2011-07-31 20:47:10 +05:30
Indrajit Raychaudhuri 5e002782f1 Add java.net M2 repo for convenience 2011-07-31 20:47:10 +05:30
Indrajit Raychaudhuri 0a4cb0efba fix distribution method (see: http://maven.apache.org/pom.html#Licenses) 2011-07-31 20:47:10 +05:30
Mark Harrah 0509424635 fix pom packaging autodetection 2011-07-30 18:11:20 -04:00
Mark Harrah 213399c40c fix inter-project dependencies involving extra attributes 2011-07-29 23:33:10 -04:00
Mark Harrah a8fd017499 maven-compatible plugin dependency system 2011-07-27 19:50:59 -04:00
Mark Harrah 3975ade5aa explicitly set pattern for Maven resolver for more control 2011-07-27 19:50:59 -04:00
Mark Harrah 0357cf88ff log conflict messages as one unit 2011-07-27 19:50:58 -04:00
Mark Harrah 1d478fa437 fix spurious extra attributes warning 2011-07-25 21:38:01 -04:00
Mark Harrah 5903fb88a2 includes sbt, Scala version extra attributes in repository/cache patterns 2011-07-23 23:07:54 -04:00
Mark Harrah e81d7087ed includes extra attributes in ModuleID.toString 2011-07-23 23:07:54 -04:00
Mark Harrah 69f6887ea1 extra information when dependencies with extra attributes cannot be resolved 2011-07-23 23:07:54 -04:00
Mark Harrah 33736edb29 preserve extraAttributes in a couple of places 2011-07-23 23:07:54 -04:00
Mark Harrah 7066036084 drop problem summary for update-seems entirely redundant 2011-07-23 23:07:54 -04:00
Mark Harrah 6acbbb05a3 support configuring checksums differently for publish, publish-local, update, and update-sbt-classifiers. fixes #115 2011-07-21 22:03:56 -04:00
Mark Harrah 3f0644d136 use launcher repositories for update-sbt-classifiers. fixes #88 2011-07-19 21:29:05 -04:00
Mark Harrah bcc3e12abc use 'scalaVersion in update' for cross building, IvyScala.substituteCross for generality. fixes #86
also, 'scalaVersion in artifactName` for the version to append to artifacts
2011-07-17 11:26:27 -04:00
Mark Harrah 0ea418e985 provide better indication of cause of incompatible sbt versions 2011-07-16 12:53:29 -04:00
Mark Harrah ed20823886 cleanup 2011-07-13 18:08:29 -04:00
Mark Harrah 199737f7b5 use \n for make-pom because PrettyPrinter hard codes it. fixes #95 2011-07-12 07:47:31 -04:00
Mark Harrah 1d792c3601 warn when there is an sbt version conflict. fixes #80 2011-07-08 21:54:59 -04:00
Mark Harrah 15427d32b3 Include evicted modules and statistics in UpdateReport 2011-07-08 21:54:59 -04:00
Mark Harrah aebde6b3e6 move dependency mapping to IvySbt#Module 2011-07-06 07:30:47 -04:00
Mark Harrah 8d61d78c2b return Provided to be transitive, ref #42 2011-07-03 15:44:53 -04:00
Mark Harrah 090acd6549 add methods for directly working with credentials 2011-06-26 12:27:06 -04:00
Mark Harrah 5d0cdc8de4 use ivyConfigurations for interDependencies instead of scope configurations 2011-06-22 19:17:10 -04:00
Mark Harrah 4921be04c8 add ChainedResolver(name: String, resolvers: Seq[Resolver]), closes #63 2011-06-20 15:25:23 -04:00
Mark Harrah c4ac9445e3 cache failing classifiers. fixes #46 2011-06-19 21:01:29 -04:00
Mark Harrah a028f8e6d7 fixes issue with inter-project resolution when project delegates are defined 2011-06-18 20:17:50 -04:00
Mark Harrah 69fec711be inject internal configurations into pom ModuleDescriptor. fixes #59 2011-06-17 21:56:52 -04:00
Mark Harrah 02d11e3115 fixes #55
updated dependency-management/sources test covers this
2011-06-15 19:09:31 -04:00
Mark Harrah 540f7df9e1 cleaning up artifact configurations 2011-06-14 19:32:36 -04:00
Mark Harrah 9f5d219310 Define 'type' for builtin artifacts based on classifier 2011-06-12 21:32:52 -04:00
Mark Harrah 63857ddd16 add pomAllRepositories option to include module configuration resolvers in pom. closes #39 2011-06-12 21:32:51 -04:00
Mark Harrah b97eb58396 define type for artifacts looked up by update-classifiers, fixes #49 2011-06-11 20:09:15 -04:00
Mark Harrah 9cd575e861 convenience method on UpdateReport for extracting contents as sequence of tuples 2011-06-10 08:08:51 -04:00
Mark Harrah c501635240 make provided intransitive, fixes #42 2011-06-10 08:08:51 -04:00
Mark Harrah 6643250f78 remove code obsolete after 0.7.1 2011-06-10 08:08:51 -04:00
Mark Harrah 9b984d07c3 use artifact patterns as ivy pattern defaults 2011-06-02 18:35:25 -04:00
Mark Harrah b26a2aa2c0 Include dependency ID in explicit Scala version checking error message 2011-05-30 22:10:00 -04:00
Mark Harrah fcddde02e6 drop custom conflict manager to fix IvyNode-related exception 2011-05-29 19:17:31 -04:00
Mark Harrah 85a55c25bf settle scala-library situation 2011-05-25 22:44:22 -04:00
Mark Harrah 4509428af9 locking of boot directory can be disabled by with [boot].lock: true in boot.properties 2011-05-19 22:04:05 -04:00
Mark Harrah 06ec88af3d build sxr, api docs and use sbinary 0.4.0 2011-05-17 20:09:20 -04:00
Mark Harrah 60eda4bb20 Implement optional/provided configurations, closes #8 2011-04-19 22:24:52 -04:00
Mark Harrah 5806dbaab0 work on dependency management tests 2011-04-16 16:38:47 -04:00
Mark Harrah fee9429b03 more work on dependency management tests 2011-04-16 11:22:10 -04:00
Mark Harrah de2d26d94c fix handling of custom ivy home directory 2011-04-15 20:13:39 -04:00
Mark Harrah a15bd90309 artifact and cross-naming fixes/improvements 2011-04-15 20:13:38 -04:00
Mark Harrah 0b4d0e1062 inject sbt-managed Scala libraries into the UpdateReport 2011-04-15 18:32:20 -04:00
Mark Harrah 4328d7d1f1 Hack to avoid Ivy checking for sources/javadocs for every module 2011-04-15 18:31:16 -04:00
Mark Harrah 3e29126cbf support checksum generation and checking, enable by default 2011-04-15 18:25:54 -04:00
Mark Harrah 7fb97c6353 fix Scala version transitively (by default) 2011-04-14 21:48:12 -04:00
Mark Harrah 5dcc1bc9bc direct Artifact->File map, removing source patterns
build and publish main sources and docs by default
control built-in artifacts with 'publish-artifact'
// disable publishing docs
 publishArtifact in (Compile,packageDoc) := false
// enable publishing test jar, docs, and sources
 publishArtifact in Test := true
2011-04-14 07:32:42 -04:00
Mark Harrah 132278d1d8 Ivy home configurable instead of cache directory, work on artifact test 2011-04-13 19:03:36 -04:00
Mark Harrah 00722de739 fix configurations name 2011-04-11 10:19:04 -04:00
Mark Harrah 715f7b8574 some API documentation for UpdateReport 2011-04-10 21:30:03 -04:00
Mark Harrah 673f9923ab dependency filters, selecting/filtering UpdateReport 2011-04-10 16:22:48 -04:00
Mark Harrah 1b147b4953 reorganize main 2011-04-08 19:15:13 -04:00
Mark Harrah 159a3fe8f3 credentials and patterns for resolvers 2011-04-05 18:44:47 -04:00
Mark Harrah 1f52591fcb Credentials for publishing 2011-04-04 22:46:51 -04:00
Mark Harrah d79fa21348 fix publish patterns for maven style publishing 2011-04-01 21:06:07 -04:00
Mark Harrah 8c0d441fec clean up Ivy-related logging 2011-03-22 20:53:33 -04:00
Mark Harrah 15e785a1e4 more stable managed classpath ordering 2011-03-16 22:21:02 -04:00
Mark Harrah b1d39404a1 make default conflict manager ignore force
see comment on IvySbt.latestNoForce
2011-03-16 20:10:41 -04:00
Mark Harrah 4a8e79befb retrieve to build, update-classifiers action
set retrieve := true to have dependencies retrieved to the build
the location is by default shared by all projects in a build
  (<built-root>/lib_managed/), but can be per-project
update-classifiers and update-sbt-classifiers retrieves artifacts with classifiers
  for project dependencies and for sbt, respectively
The default setting is classifiers := Seq("javadoc", "sources")
2011-03-15 22:12:59 -04:00
Mark Harrah 787f00985b detailed UpdateReport replaces Map[String,Seq[File]]
the information included is:
  configuration -> module -> artifact -> file
2011-03-13 21:40:49 -04:00
Mark Harrah d371ff9314 more consistent configuration of the Ivy user directory 2011-03-12 10:28:53 -05:00
Mark Harrah b7f92ae07f 2.9 compatibility fixes 2011-03-04 06:16:35 -05:00
Mark Harrah df1c9c00c7 include Scala version to artifact names to match expected names for publishing 2011-02-21 10:22:39 -05:00
Mark Harrah 8c9e89850a configure Ivy cache to ignore original resolver 2011-02-17 16:20:30 -05:00
Mark Harrah dcd24f5dc4 implement %% 2011-02-14 18:57:54 -05:00
Mark Harrah 032f638549 fix stray Ivy logging message when directly accessing IvySbt#Module 2011-02-11 20:09:42 -05:00
Mark Harrah 1124cc59d9 package, package-doc, package-src 2011-02-10 08:16:07 -05:00
Mark Harrah 4d6f6ca9f8 fix ProjectResolver to properly ignore artifacts 2011-02-08 20:32:11 -05:00
Mark Harrah ae7e029a46 fix deadlock caused by lazy val synchronization 2011-02-05 21:34:17 -05:00
Mark Harrah 8e2588ec10 Configuration-related tweaks 2011-02-02 19:32:24 -05:00
Mark Harrah 087bc569e0 multi-project model based on Settings and ProjectRef 2011-01-18 18:48:32 -05:00
Mark Harrah 9e045edab8 always use 'jar' as packaging type if there is an artifact with a 'jar' type 2011-01-04 11:10:31 -05:00
Mark Harrah fbd24d2241 update deliver,make-pom,publish-local to be usable 2010-12-02 19:56:19 -05:00
Mark Harrah 54ba5d75be work on products+configurations 2010-11-13 20:21:06 -05:00
Mark Harrah 78a8996b7f drop some NotNulls from ivy/ plus some adjustments 2010-10-26 17:59:24 -04:00
Mark Harrah a3f1b9c22f fix tests, discovery
updated compile tests for new minimal AnalysisCallback
moved discovery to discovery/ subproject and updated for new approach
fixed discovery to only find public methods when searching for annotated definitions
extracting inherited definitions unimplemented in api/, so some discovery tests fail
moved discovery classes from sbt.inc package to sbt.compile
2010-10-06 08:24:13 -04:00
Mark Harrah 620c433498 disable check modified. need to verify it doesn't break -SNAPSHOT 2010-09-27 19:06:52 -04:00
Mark Harrah 1567de67b2 fix update, default project supports triggered execution 2010-09-21 22:38:18 -04:00
Mark Harrah 066e88e2e8 check for non-existing local file after retrieve
this is almost always an error condition, but we need
  to translate the null for a better error message
2010-09-21 22:26:04 -04:00
Mark Harrah b16b0adc0f add sbt package object
for use from project definitions only-
 it is a top-level project
add dependency and repository builders
 cross-versioning will be a post-construction transformation
2010-09-21 22:24:24 -04:00
Mark Harrah a630aed777 update to Scala 2.8.1.RC1, Ivy 2.2.0-rc1
use dependencies compiled against Scala 2.8.0
2010-09-21 22:09:08 -04:00
Mark Harrah 678628741a fix ProjectResolver to properly signal that it can't retrieve artifacts 2010-09-21 22:04:12 -04:00
Mark Harrah aea757ed18 put ResolverAdapter.java in proper location 2010-09-13 19:42:11 -04:00
Mark Harrah 6deb83ded3 ProjectResolver for inter-project dependencies 2010-09-12 23:15:51 -04:00
Mark Harrah 82e53d2528 only filter Scala artifacts of type 'jar' 2010-09-12 23:14:55 -04:00
Mark Harrah 59e15f2c51 minor cleanup of some Ivy-related code 2010-09-12 23:14:30 -04:00
Mark Harrah 26265e549e add RawRepository to wrap raw Ivy Resolvers 2010-09-12 23:13:48 -04:00
Mark Harrah 2e3367d6d6 first part of fixing #44 2010-09-04 08:42:37 -04:00
Mark Harrah 050f9db501 rework ConsoleLogger
can send output to a PrintWriter
control over color, still need custom formatter
replace IvyLogger with normal Logger
2010-09-04 08:24:26 -04:00
Mark Harrah d0fa1eb461 * move Environment classes to util/env module
* move TrapExit, SelectMainClass to run module
* rearrange some compilation-related code
* Jetty-related code moved to web module
2010-07-14 19:24:50 -04:00
Mark Harrah 6f3c699435 - Stuart's improvements to triggered execution
- continue splitting original sbt module
 * separated process, testing modules
 * various IO, logging, classpath migration
 * split out javac interface
2010-07-05 12:53:37 -04:00
Mark Harrah b2077ce60c more 2.8 updates, launcher compiles and runs with 2.8 2010-06-15 20:38:18 -04:00
Mark Harrah 33d29a4768 * can now set 'offline' property to 'true' to not refresh dynamic revisions (not needed if no -SNAPSHOT versions used)
* more control over Ivy logging: override ivyUpdateLogging = UpdateLogging.Full,DownloadOnly (default), or Quiet
2010-05-02 19:15:01 -04:00
Mark Harrah 4d312a01fa support ssh/sftp with keyfiles (needed to add user name parameter to 'as') 2010-04-28 20:45:35 -04:00
Mark Harrah afdd34dc4d * synchronize types for doc/src artifacts with the wiki documentation
* Artifact.{sources, javadoc} methods for defining additional artifacts
2010-04-27 17:58:05 -04:00
Mark Harrah a2126f19db * Added pomRepositoryFilter(repo: MavenRepository): Boolean that excludes local repositories by default
* Added pomPostProcess(pom: Node): Node to make advanced manipulation of the default pom easier (pomExtra covers basic cases)
2010-04-23 21:20:07 -04:00
Mark Harrah bd038a423b add checks to Artifact.extra 2010-04-23 18:50:47 -04:00
Mark Harrah 6a27b5e42b Provide empty <publications/> for inline Ivy XML if a publications tag does not exist.
This prevents a default artifact from being added incorrectly.
2010-04-01 20:14:05 -04:00
Mark Harrah 9720566f84 detect packaging for make-pom 2010-03-30 09:19:36 -04:00
Mark Harrah 2acea814be Fix issue with scala-library.jar being retrieved 2010-03-28 14:19:43 -04:00
Mark Harrah c18b0e77ab Use correct xsbt.version.properties in ComponentManager 2010-03-07 19:07:52 -05:00
Mark Harrah 56d64c88cc Separate repositories for publishing from repositories for resolving/retrieving 2010-03-04 00:07:12 -05:00
Mark Harrah 31bfe43786 wrap repositories in <repositories> tag 2010-02-16 12:30:42 -05:00
Mark Harrah 184b3347a2 better choice of global lock file 2010-02-14 23:22:45 -05:00
Mark Harrah d49cfc6b03 Remove extra whitespace in pom output 2010-02-14 20:24:33 -05:00
Mark Harrah a33223a02c legal cleanup 2010-02-07 23:45:19 -05:00
Mark Harrah 3ed1bdda22 document some methods on Resolver 2010-02-06 19:23:06 -05:00
Mark Harrah 6a6ae03ad6 Throw a custom exception when there is an Ivy resolve error 2010-02-06 17:43:14 -05:00
Mark Harrah 2a86b968ea Add artifacts provided in EmptyConfiguration 2010-02-06 14:20:51 -05:00
Mark Harrah 7219a2905a Fix 'unknown resolver' errors in normal projects 2010-02-06 14:14:49 -05:00
Mark Harrah a5732b56ab * Basic support for writing repositories to the pom in make-pom.
* Pretty-print pom in make-pom
2010-01-30 10:46:47 -05:00
Mark Harrah 3b67efa0d4 Use custom pom generation instead of Ivy's built-in generation in order to support extra information like licenses. 2010-01-29 20:31:07 -05:00
Mark Harrah a2963744cc Fix clean-cache 2010-01-29 20:29:55 -05:00
Mark Harrah a958fa6484 Use a machine-global lock on Ivy because caches are not safe for concurrent access 2010-01-28 19:31:04 -05:00
Mark Harrah 5de7a5e3e5 fix compiler error in 'ivy' 2010-01-26 22:35:59 -05:00
Mark Harrah 725beacd9a Ignore 'unknown resolver' errors, work with published version of SBinary, work towards fixing OOME:PermGen issues on reload 2010-01-26 18:41:03 -05:00
Mark Harrah fa93a64cf9 Replace Ivy interface with the component from xsbt 2010-01-15 19:05:23 -05:00
Mark Harrah 67f8fc5c06 compile fixes 2010-01-10 21:06:00 -05:00
Mark Harrah 6c132165d6 Fixes for Ivy interface component 2010-01-10 16:47:38 -05:00
Mark Harrah 9516e54e0a Fix issue where compiler interface was poorly cached 2009-11-09 22:02:53 -05:00
Mark Harrah 8e08708792 Fix global lock implementation for ComponentManager 2009-10-14 18:05:53 -04:00
Mark Harrah 1a74b7e863 Only write 'info' tag if user has not provided one. 2009-10-11 15:43:42 -04:00
Mark Harrah 1d40e5e71d Synchronize caches 2009-10-10 22:01:03 -04:00
Mark Harrah e88214efbd Additions to help the sbt/xsbt combination 2009-10-09 19:12:14 -04:00
Mark Harrah 08817dff69 Include latest updates from sbt Ivy support 2009-10-01 22:56:23 -04:00
Mark Harrah b2fdc07505 Turned sbt launcher into a general Scala application launcher as described in launch.specification 2009-09-27 14:39:26 -04:00