Mark Harrah
a6f75a75ad
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
871aeb1502
Derived settings: handle scopeLocal in derive and allow triggering dependencies to be filtered
2013-05-09 17:28:50 -04:00
Mark Harrah
7ed56d3fcd
Show defining locations when there are cycles between derived settings
2013-05-09 17:28:50 -04:00
Mark Harrah
4bb9633d6c
only derive settings when all dependencies are defined
2013-05-09 17:28:49 -04:00
Mark Harrah
6c0f47ef48
Default settings, which give internal sbt settings something like Plugin.globalSettings.
2013-05-09 17:28:40 -04:00
Mark Harrah
c863a03d89
support filtering the Scopes that a derived setting is applied in
2013-05-09 17:28:39 -04:00
Mark Harrah
ea6eb01e6e
more specific error when dependencies of a derived setting are undefined
2013-05-09 17:28:39 -04:00
Mark Harrah
60b714e8de
require dynamic initialization to be explicitly enabled for derived settings
2013-05-09 17:28:39 -04:00
Mark Harrah
1b784082a3
ensure a derived setting is only injected into a scope once
2013-05-09 17:28:39 -04:00
Mark Harrah
994886ee51
display derived settings information in 'inspect'
2013-05-09 17:28:39 -04:00
Mark Harrah
dfe418b3c3
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
df9a475158
Normalize line endings.
2013-04-25 00:06:52 +08:00
Mark Harrah
df5e79e3be
API for evaluating a setting or task in multiple scopes
2013-03-27 09:17:53 -04:00
Mark Harrah
dde24d5e5a
make classpaths exported
2013-02-28 17:59:38 -05:00
Mark Harrah
f6d73128fc
deprecations
2013-02-25 09:24:04 -05:00
Mark Harrah
76e0a941ba
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
1f32688657
remove deprecated Initialize.scoped method
2013-01-28 17:14:53 -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
236143be8d
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
e6d1d02d1e
Don't catch org.scalacheck.Prop.Exception
2013-01-22 09:05:14 -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
a38bce8d41
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
49e7214fe3
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
b453af7c45
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
1c22478edc
task setting macros for :=, +=, ++=
...
also, bump to 2.10.0-M6
2012-11-17 20:19:24 -05:00
Mark Harrah
8d6dd10798
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
eecaeafbdf
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
1c1e5c4977
taking care of deprecations removed in Scala master
2012-11-14 11:48:06 -05:00
Mark Harrah
607824cc22
better error message for null setting values
2012-09-18 13:22:40 -04:00
Eugene Vigdorchik
adb7d42f73
Fix compilation error for 2.10.0-M5 for all but main project.
2012-07-17 15:20:37 -04:00
Mark Harrah
51da95644c
methods for working with Scala identifiers
2012-07-13 14:33:27 -04:00
Eugene Vigdorchik
a6c2054292
Break compiler dependency from 'collection' project.
2012-07-13 14:33:26 -04:00
Mark Harrah
e2b5ce374c
fix task tests
2012-07-01 15:16:41 -04:00
Mark Harrah
87d2144c12
rank settings, tasks and use this to restrict help/settings/tasks output. fixes #315
2012-03-25 20:35:09 -04:00
Mark Harrah
2bb2aed1f6
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
2f726b34c3
work around for 2.10. pattern matching on KNil now requires KNil()
2012-03-17 19:31:03 -04:00
Indrajit Raychaudhuri
abcd4555b9
Replace `Pair.apply` with `Util.pairID`, avoids extra class generation
2012-03-12 05:25:12 +05:30
Mark Harrah
1687cf8a8c
handle absence of CONT signal
2012-03-09 13:38:45 -05:00
Mark Harrah
5b20d330c5
handle CONT signal to reset JLine after resuming from stop. fixes #394
2012-03-09 07:08:38 -05:00
Mark Harrah
7b194e3dee
cleanup SourcePosition hierarchy
2012-02-25 12:01:07 -05:00
Eugene Vigdorchik
a52d36987c
Remember the range for settings read from .sbt files
2012-02-16 16:58:51 +04:00
Mark Harrah
482ff4978d
Merge pull request #342 from vigdorchik/wip_sourcepos_eugenevigdorchik
...
Wip sourcepos eugenevigdorchik
2012-01-30 14:34:03 -08:00
Eugene Vigdorchik
d1c799cd09
More cleanup.
2012-01-30 19:06:26 +04:00
Eugene Vigdorchik
dc0a40c776
Change SourcePosition definition + minor cleanup.
2012-01-30 19:06:24 +04:00
Eugene Vigdorchik
09ff0664a3
Add SourcePosition to setting.
2012-01-30 19:06:18 +04:00
Mark Harrah
98c98f9c26
split command core to main/command/
2012-01-29 14:36:27 -05:00
Mark Harrah
82326cc899
new aggregation approach, still need exclusion mechanism
2012-01-09 08:01:24 -05:00
Mark Harrah
ec48779829
moved task axis before the key
2012-01-09 08:00:29 -05:00
Mark Harrah
f3f4bea2d5
fixes #280 . sort aggregate and classpath dependencies separately to keep cycle detection for them separate
2011-11-27 17:48:01 -05:00
Mark Harrah
a524d48008
in cyclic error message, put each node string on different line
2011-11-05 08:53:42 -04:00