Mark Harrah
5523d16a77
Configurable conflict manager and corresponding documentation on conflictManager, dependencyOverrides, and force(). Fixes #603 .
2013-01-11 16:01:31 -05:00
Mark Harrah
1d70775d7b
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
d0815e88ae
Split IvyInterface into Artifact, Configuration, ModuleID, and Resolver source files
2013-01-10 16:06:13 -05:00
Mark Harrah
bad48a6f0d
API documentation for ModuleID methods
2013-01-10 16:06:12 -05:00
Mark Harrah
8e34e15f69
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
ff78892895
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
16c719764e
Convert references to harrah/xsbt to sbt/sbt
2013-01-04 17:22:40 -05:00
Mark Harrah
469202aeec
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
3f8a09a6c7
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
91553875a4
add scala-tool configuration and dependencies when configuring via pom.xml/ivy.xml
2012-12-06 07:25:41 -05:00
Josh Suereth
7f5f936db4
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
ae67f6f85d
ConflictWarning cleanup, added strict convenience method for failing on any conflicts
2012-12-02 03:17:19 -05:00
Mark Harrah
3f091e5f86
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
c6a3b352c4
taking care of deprecations removed in Scala master
2012-11-14 11:48:06 -05:00
Mark Harrah
f95c45f76e
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
14057fb211
cleanup of #585 : compatible with earlier launchers
2012-10-29 09:52:10 -04:00
Eric Bowman
bc6770bec3
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
614d9976d6
invalidate cache when metadata deleted from local repository
2012-09-23 15:46:26 -04:00
Mark Harrah
a0b5b0e7ac
Fail publishing when artifacts to publish do not exist.
2012-09-11 11:37:41 -04:00
Mark Harrah
66ac1dbc9a
use context logger instead of initial logger for Resolving messages
2012-09-01 09:56:09 -04:00
Mark Harrah
9a0b59b597
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
7ed0c85097
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
69724c4f87
don't write <scope> section of pom if scope is 'compile'
2012-08-28 11:55:24 -04:00
Mark Harrah
d641c72a45
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
152d51465d
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
f0bdadc437
Actually pass in the artifact, rather than just a global match
2012-07-17 15:20:26 -04:00
Mark Harrah
af6e99acc2
'orbit' packaging should be handled like a standard jar. fixes #499 . ref #463
2012-07-06 10:28:51 -04:00
Mark Harrah
e54e411451
hk2-jar packaging should be handled like a standard jar. fixes #463
2012-05-16 07:34:15 -04:00
Mark Harrah
9983f6f19a
remove duplicate conflict warnings
2012-05-06 15:11:46 -04:00
Mark Harrah
9141618744
change Scala binary version check to a warning
2012-05-06 14:15:03 -04:00
Mark Harrah
db3fd82236
more scala-tools replacements
2012-05-05 20:35:04 -04:00
Mark Harrah
52af295b42
deprecations backported to 0.11.3
2012-05-05 20:35:04 -04:00
Mark Harrah
3d1766a96e
bump to Ivy 2.3.0-RC1
2012-05-02 19:56:35 -04:00
Mark Harrah
9fe6049352
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
9fe72a546e
exclude should apply to any artifact type, not just jars. fixes #436
2012-04-28 18:58:52 -04:00
Mark Harrah
ce8f7b677d
reorganize compilation modules
2012-04-18 08:08:25 -04:00
Mark Harrah
c111fc1ae2
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
38289ad08a
Add support for loading Ivy settings from a URL
2012-04-08 20:22:15 -07:00
Indrajit Raychaudhuri
2999cf8df9
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
89122005cb
Have convenient toString for `FileCredentials`
2012-02-28 23:01:17 +05:30
Indrajit Raychaudhuri
403383d7cf
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 "), "scmhttps://github.com/foo/project.git "))
// Also add <developerConnection/>
scmInfo := Some(ScmInfo(url("https://github.com/foo/project "), "scmhttps://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
ec955474c4
Declare extra namespace in ModuleDescriptor for parsed plugin poms. Fixes #368 .
2012-02-27 18:38:04 -05:00
Mark Harrah
ebc0e90690
add ConflictWarning.disable convenience method
2012-02-21 22:47:07 -05:00
Eugene Vigdorchik
2b3db35d84
test- preffix should be stripped to obtain classifier.
2012-02-21 18:52:50 +04:00
Mark Harrah
c74b03513f
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
1b168c37e4
support for dependency overrides
2012-02-14 21:59:12 -05:00
Eugene Vigdorchik
851864f9f6
Mirror ivy \'force\' attribute in sbt.
2012-02-07 20:14:45 +04:00
Mark Harrah
80589d1f5b
rework cross versioning to account for prerelease Scala versions
2012-01-22 22:06:53 -05:00
Mark Harrah
45e097e281
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
bb30184470
Remove trailing whitespace from entries in credentials file
2011-12-30 11:49:43 -06:00
杨博
3817c0ce48
Allow `ModuleID % Configuration`
2011-12-13 00:08:18 +08:00
Indrajit Raychaudhuri
31f5133ff6
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
7141000e65
revert XNode/Node rename because of shadowing when running full API doc generation
2011-11-19 18:17:30 -05:00
Indrajit Raychaudhuri
4e7f7092ae
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
b31c510f38
Add classifier for 'jar' artifact type only. Closes #257 .
2011-11-20 00:10:43 +05:30
Indrajit Raychaudhuri
c597ec1e5e
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
226db8b597
only require descriptors for dependencies without an explicit URL. fixes #263
2011-11-09 18:30:35 -05:00
Mark Harrah
2eab86bf25
add missing newline in conflict warning
2011-11-04 13:40:59 -04:00
Mark Harrah
f478b0b907
log during resolution
2011-11-04 13:40:59 -04:00
Mark Harrah
579938b72e
track whether UpdateReport was cached or freshly generated
2011-10-30 18:39:47 -04:00
Mark Harrah
8c1c2a8c1d
use Charset.name instead of toString (which currently calls name)
2011-10-26 19:28:26 -04:00
Indrajit Raychaudhuri
34260c022a
Use IO.write instead of explicit resource management
2011-10-26 21:43:42 +05:30
Mark Harrah
31e4e5682f
drop configurations when storing unavailable classifiers. fixes #46
2011-10-16 17:27:36 -04:00
Jan Berkel
2f52a17b6b
Added support for <classifier> in makePom
...
Avoid second call to getExtraAttribute
2011-10-12 02:59:16 +02:00
Mark Harrah
d605408950
fixes #212 . dependencies on plugins must be encoded in <properties> element.
2011-10-01 19:47:06 -04:00
Mark Harrah
a32278bfc7
require metadata by default
2011-09-21 22:49:58 -04:00
Mark Harrah
fe264c4f4e
work around for Ivy-899. fixes #194
2011-09-20 20:51:47 -04:00
Mark Harrah
31f492f4bc
make ComponentManager honor value of Ivy home provided by the launcher
2011-09-16 23:08:01 -04:00
Indrajit Raychaudhuri
a6396f839b
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
2585c57760
Honor <exclusions/> in <dependency/> when available
2011-09-06 17:29:42 +05:30
Indrajit Raychaudhuri
2c0819d7c7
Add start-year for compliance in ProjectInfo
2011-09-03 02:19:08 +05:30
Mark Harrah
a258d4f3b5
clean up optional dependency handling for make-pom. fixes #162
2011-08-26 23:27:03 -04:00
Mark Harrah
5f674dbea4
more on #155
2011-08-23 19:51:50 -04:00
Mark Harrah
86c0ff1c09
minor improvements to conflict message. closes #132
2011-08-23 19:51:50 -04:00
Mark Harrah
964f83244a
improved fix for #155
2011-08-22 22:48:35 -04:00
Mark Harrah
6961dff60e
better error when publish resolver from custom configuration doesn't exist
2011-08-22 22:48:21 -04:00
Mark Harrah
e73e0938eb
remove duplication in conflict warning message
2011-08-22 22:48:21 -04:00
Mark Harrah
de91865fae
append sbt pattern to leave the default IBiblioResolver pattern in place. fixes #155
2011-08-19 22:13:56 -04:00
Mark Harrah
6d583f36c1
move to 2.9.1 (RC3), bump to 0.11.0-SNAPSHOT
2011-08-16 17:32:26 -04:00
Indrajit Raychaudhuri
9d6fca5d2a
Remove some deprecations and redundant code
2011-08-05 13:30:04 +05:30
Mark Harrah
c96aa6f9d2
remove obsolete assertion. ref #143
2011-08-04 18:08:21 -04:00
Indrajit Raychaudhuri
479c088772
- 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
0c9f6d88f9
use configurations for modules for update-classifiers. fixes #104
2011-07-31 22:17:50 -04:00
Indrajit Raychaudhuri
6dca8bda66
JavaNet1Repository should have legacy layout (see: http://maven.apache.org/pom.html#Repository )
2011-07-31 20:47:10 +05:30
Indrajit Raychaudhuri
a24e2d06bb
Add java.net M2 repo for convenience
2011-07-31 20:47:10 +05:30
Indrajit Raychaudhuri
009c34e021
fix distribution method (see: http://maven.apache.org/pom.html#Licenses )
2011-07-31 20:47:10 +05:30
Mark Harrah
d7a5dca812
fix pom packaging autodetection
2011-07-30 18:11:20 -04:00
Mark Harrah
73d52dc031
fix inter-project dependencies involving extra attributes
2011-07-29 23:33:10 -04:00
Mark Harrah
392754e165
maven-compatible plugin dependency system
2011-07-27 19:50:59 -04:00
Mark Harrah
149edd6ee8
explicitly set pattern for Maven resolver for more control
2011-07-27 19:50:59 -04:00
Mark Harrah
1cbd4a2e47
log conflict messages as one unit
2011-07-27 19:50:58 -04:00
Mark Harrah
b8b06a5ba7
fix spurious extra attributes warning
2011-07-25 21:38:01 -04:00
Mark Harrah
efe920fff0
includes sbt, Scala version extra attributes in repository/cache patterns
2011-07-23 23:07:54 -04:00
Mark Harrah
1dced5cc41
includes extra attributes in ModuleID.toString
2011-07-23 23:07:54 -04:00
Mark Harrah
d96c5ad1b4
extra information when dependencies with extra attributes cannot be resolved
2011-07-23 23:07:54 -04:00
Mark Harrah
703c1e841a
preserve extraAttributes in a couple of places
2011-07-23 23:07:54 -04:00
Mark Harrah
7bb3cddf3c
drop problem summary for update-seems entirely redundant
2011-07-23 23:07:54 -04:00
Mark Harrah
b122934936
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
987dc0f3ba
use launcher repositories for update-sbt-classifiers. fixes #88
2011-07-19 21:29:05 -04:00
Mark Harrah
c766412885
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