Mark Harrah
aa2bd76e5e
Support dynamic evaluations of optional settings (Initialize.evaluate).
2013-06-18 18:29:01 -04:00
Mark Harrah
3dd714b1fa
Fully implement StaticScopes subclass of Initialize in order to support use in Task flatMap. Fixes #784 .
2013-06-15 23:55:05 -04:00
Mark Harrah
61decef972
Derived settings: handle scopeLocal in derive and allow triggering dependencies to be filtered
2013-05-09 17:28:50 -04:00
Mark Harrah
19c78ac413
Show defining locations when there are cycles between derived settings
2013-05-09 17:28:50 -04:00
Mark Harrah
ed11008126
only derive settings when all dependencies are defined
2013-05-09 17:28:49 -04:00
Mark Harrah
7a10aeca37
Default settings, which give internal sbt settings something like Plugin.globalSettings.
2013-05-09 17:28:40 -04:00
Mark Harrah
6ffff6fb35
support filtering the Scopes that a derived setting is applied in
2013-05-09 17:28:39 -04:00
Mark Harrah
08e4e3786f
more specific error when dependencies of a derived setting are undefined
2013-05-09 17:28:39 -04:00
Mark Harrah
68ca419a7c
require dynamic initialization to be explicitly enabled for derived settings
2013-05-09 17:28:39 -04:00
Mark Harrah
962a163f33
ensure a derived setting is only injected into a scope once
2013-05-09 17:28:39 -04:00
Mark Harrah
94f4d4e8c0
display derived settings information in 'inspect'
2013-05-09 17:28:39 -04:00
Mark Harrah
1c741a2e06
Derived settings, which allows injecting settings wherever their dependencies are defined.
...
This is an advanced feature initially intended for internal sbt use.
2013-05-09 17:27:43 -04:00
cheeseng
b0bd2e838e
Normalize line endings.
2013-04-25 00:06:52 +08:00
Mark Harrah
9d21724129
API for evaluating a setting or task in multiple scopes
2013-03-27 09:17:53 -04:00
Mark Harrah
4abc8f3d7b
make classpaths exported
2013-02-28 17:59:38 -05:00
Mark Harrah
d69db30af7
deprecations
2013-02-25 09:24:04 -05:00
Mark Harrah
badee8bacd
Update to 2.10.1-RC1
...
Needed an explicit type in PMap to workaround an error.
Need to drop tuple assignment of parser.parsed in input task macro as a workaround
for macro/resetAllAttrs/pattern matching/annotation issue in RC1.
2013-02-13 07:17:20 -05:00
Mark Harrah
89c645db44
remove deprecated Initialize.scoped method
2013-01-28 17:14:53 -05:00
Paolo G. Giarrusso
ef84332a51
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
e5673f7426
Silence boring Eclipse warnings: catching all exceptions
...
Here I make explicit where catching all exceptions is intended.
Mark Harrah corrected one decision during review.
2013-01-22 09:05:15 -05:00
Paolo G. Giarrusso
cf08f2dd18
Don't catch org.scalacheck.Prop.Exception
2013-01-22 09:05:14 -05:00
Grzegorz Kossakowski
6c5e4ae21c
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
237b80eb22
Transition to all camelCase key labels.
...
1. Hyphenated labels are still accepted when parsing scoped keys (so 'sbt test-only' still works)
There is currently no timeline for removing this support for hyphenated keys.
2. Only camelCase is shown for tab completion.
3. AttributeKey.rawLabel provides the unnormalized label.
This should only be used to implement support for accepting hyphenated keys as input for compatibility.
4. AttributeKey.normLabel provides the normalized label (hyphenated converted to camelCase)
2012-11-17 20:23:07 -05:00
Mark Harrah
ed41547a47
InputTask macro
...
Similar to task macros, the parsed value is accessed by calling `parsed`
on a Parser[T], Initialize[Parser[T]], or Initialize[State => Parser[T]].
Values of tasks and settings may be accessed as usual via `value`.
2012-11-17 20:23:07 -05:00
Mark Harrah
64e000a37d
Properly apply transformations to dynamic tasks.
...
That is, implement Initialize[Task[T]].flatten correctly.
This requires preserving the transformations applied in a scope so that
they can be applied to an Initialize value after static settings have been
evaluated.
2012-11-17 20:23:06 -05:00
Mark Harrah
c95df4681b
task setting macros for :=, +=, ++=
...
also, bump to 2.10.0-M6
2012-11-17 20:19:24 -05:00
Mark Harrah
15fec197c3
2.10.0-M5, different arity generalization
...
1. KList[M[_]] now instead of KList[HL <: HList, M[_]]
a. head, tail work properly in this variant
b. disadvantage is that full type not easily transformed to new type constructor
2. AList abstracts on K[L[x]], a higher order type constructor.
A. Instances written for:
a. KList
b. Seq[M[T]] for a fixed T
c. TupleN
d. single values
e. operate on one type constructor when nested
B. Main disadvantage is type inference. It just doesn't happen for K[L[x]].
This is mitigated by AList being used internally and rarely needing to construct a K.
2012-11-17 20:19:24 -05:00
Mark Harrah
dbe4b74c10
reorganization of main/
...
* split several source files
* move base settings sources (Scope, Structure, ...) into main/settings/
* breaks cycles. In particular, setting system moved from Project to Def
2012-11-17 20:19:24 -05:00
Mark Harrah
19315265c1
taking care of deprecations removed in Scala master
2012-11-14 11:48:06 -05:00
Mark Harrah
c8ffd6a54d
better error message for null setting values
2012-09-18 13:22:40 -04:00
Eugene Vigdorchik
b65a7078f1
Fix compilation error for 2.10.0-M5 for all but main project.
2012-07-17 15:20:37 -04:00
Mark Harrah
9fea4d1703
methods for working with Scala identifiers
2012-07-13 14:33:27 -04:00
Eugene Vigdorchik
35cfba21c0
Break compiler dependency from 'collection' project.
2012-07-13 14:33:26 -04:00
Mark Harrah
fbb09b1433
fix task tests
2012-07-01 15:16:41 -04:00
Mark Harrah
94b4a3784a
rank settings, tasks and use this to restrict help/settings/tasks output. fixes #315
2012-03-25 20:35:09 -04:00
Mark Harrah
c7c4969eb7
Revert "work around for 2.10. pattern matching on KNil now requires KNil()"
...
This reverts commit 2f726b34c3 .
This commit caused "java.lang.Error: typeConstructor inapplicable for <none>" when running 'sxr'
2012-03-17 22:58:13 -04:00
Mark Harrah
8fc5db4a8a
work around for 2.10. pattern matching on KNil now requires KNil()
2012-03-17 19:31:03 -04:00
Indrajit Raychaudhuri
51db55d847
Replace `Pair.apply` with `Util.pairID`, avoids extra class generation
2012-03-12 05:25:12 +05:30
Mark Harrah
d6bc087271
handle absence of CONT signal
2012-03-09 13:38:45 -05:00
Mark Harrah
1848d14815
handle CONT signal to reset JLine after resuming from stop. fixes #394
2012-03-09 07:08:38 -05:00
Mark Harrah
5893aa0e55
cleanup SourcePosition hierarchy
2012-02-25 12:01:07 -05:00
Eugene Vigdorchik
786fe5f4ce
Remember the range for settings read from .sbt files
2012-02-16 16:58:51 +04:00
Mark Harrah
6e90399a30
Merge pull request #342 from vigdorchik/wip_sourcepos_eugenevigdorchik
...
Wip sourcepos eugenevigdorchik
2012-01-30 14:34:03 -08:00
Eugene Vigdorchik
e2c1ef32fa
More cleanup.
2012-01-30 19:06:26 +04:00
Eugene Vigdorchik
5f0774fe9a
Change SourcePosition definition + minor cleanup.
2012-01-30 19:06:24 +04:00
Eugene Vigdorchik
c6cba20682
Add SourcePosition to setting.
2012-01-30 19:06:18 +04:00
Mark Harrah
4945534614
split command core to main/command/
2012-01-29 14:36:27 -05:00
Mark Harrah
74eaee5a5e
new aggregation approach, still need exclusion mechanism
2012-01-09 08:01:24 -05:00
Mark Harrah
392ec5150a
moved task axis before the key
2012-01-09 08:00:29 -05:00
Mark Harrah
9e708b17e2
fixes #280 . sort aggregate and classpath dependencies separately to keep cycle detection for them separate
2011-11-27 17:48:01 -05:00