Mark Harrah
f6d73128fc
deprecations
2013-02-25 09:24:04 -05:00
Mark Harrah
a61421dcb8
Split ConsoleOut into its own file, track the global ConsoleOut and use it instead of StandardMain.console
2013-02-25 09:24:04 -05:00
Mark Harrah
5b5577a187
Replace Scala jars in UpdateReport with ScalaProvider jars in more situations. Fixes #661 .
...
Specifically, when the Scala version for sbt is the same as that for the project being built,
the jars in UpdateReport should be the same as those in ScalaProvider. This is because the
loader will come from the ScalaProvider, which uses jars in the boot directory instead of the
cache. The first part of the fix for #661 checks that loaded classes come from the classpath
and so they need to line up.
2013-02-21 20:44:26 -05:00
Mark Harrah
bd0f208302
Class loader that restricts loading to a classpath. Ref #661 .
...
It is now used for consoleProject, run, and test. This loader verifies
that all classes loaded through it came from a particular classpath or
from the "root" loader. Root loader here is the launcher loader so that
those classes with native bindings come from that shared loader.
2013-02-21 20:44:26 -05:00
Mark Harrah
cdf61683df
Remove unused class loader implementations
2013-02-21 20:44:26 -05:00
Mark Harrah
9ab1b98d2a
Use @compileTimeOnly for .value and .parsed methods.
...
Needed to set position on wrapper method for correct error message position.
2013-02-19 08:54:40 -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
c0b1bb51e6
-Xlint
2013-02-04 17:30:31 -05:00
Eugene Yokota
125727ba83
support binary version in launcher
2013-01-29 16:55:13 -05:00
Mark Harrah
13ea342b7a
use standard Context.weakTypeOf
2013-01-28 17:14:53 -05:00
Mark Harrah
076480b50a
Reduce InputTask to the ideal wrapper around 'State => Parser[Initialize[Task[T]]]'
...
Ref #407 .
2013-01-28 17:14:53 -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
Mark Harrah
ce439efab3
Convert references to harrah/xsbt to sbt/sbt
2013-01-04 17:22:40 -05:00
Mark Harrah
3035cbf2d1
update version for backported Parser deprecations
2013-01-03 17:40:07 -05:00
Mark Harrah
4434d84f65
require a failure message for parser
2013-01-03 11:37:40 -05:00
Mark Harrah
935267b96b
minor cleanup of previous commit: var->val in sbt.JLine
2012-12-20 09:25:35 -05:00
Anthony
f7031502e4
Multi-line prompt text offset issue (ticket #625 )
2012-12-20 08:56:20 -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
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
a9289ad0ce
Explicitly specify type parameters in calls to KCons in KList builder.
...
scalac couldn't infer the type constructor otherwise.
2012-11-18 09:20:26 -05: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
522414cd99
AbsTypeTag -> WeakTypeTag and converted more settings
2012-11-17 20:23:06 -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
2c7e9cd893
Scala 2.10.0-M7
2012-11-17 20:23:06 -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
0a642f2283
move explicit task/setting macros to Def, move to AbsTypeTag
2012-11-17 20:23:06 -05:00
Mark Harrah
90faeff546
Task macro cleanup
...
* use normal TypeTree constructor
* remove unnecessary 'with Singleton' in macro utility
* integrate changes suggested by @xeno-by
* add refVar back and call asTypeConstructor instead of asType to refer to a type variable
2012-11-17 20:22:39 -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
1bc26fa488
When preserving last modified, convert negative values to 0
...
File.lastModified can return a negative number, but File.setLastModified doesn't accept
negative numbers. See Java bug #6791812 .
2012-11-16 09:56:01 -05:00
Mark Harrah
1c1e5c4977
taking care of deprecations removed in Scala master
2012-11-14 11:48:06 -05:00
Eugene Vigdorchik
761a441805
Filter out null parent files when deleting empty directories. Closes #589 .
2012-11-12 14:45:01 -05:00
Benjy
657d842238
Analysis.groupBy implementation.
2012-11-10 19:01:41 -05:00
Mark Harrah
b451761478
fix broken commit
2012-11-05 10:09:39 -05:00
Mark Harrah
b6ff789d44
Work around File constructor not accepting URIs for UNC paths. Fixes #564 .
2012-11-05 10:02:33 -05:00
Mark Harrah
6354b174e8
Java classfile analysis: log the problematic URL when IO.urlAsFile throws an exception. Ref #564 .
2012-10-15 12:42:28 -04:00
Mark Harrah
1612af8dbb
Parser.failOnException method, don't let rhs of alias fail the parse. Fixes #572 .
...
alias only parses the right hand side for tab completion help.
The assignment should happen whether or not the parse is successful because the
context may change by the time the alias is actually evaluated.
In particular, the 'set' command uses the loaded project for tab completion in 0.12.1.
When a .sbtrc file is processed, the project has not been loaded yet, so aliases
involving set fail. Wrapping the rhs in failOnException addresses this.
2012-10-15 12:42:27 -04:00
Jason Zaugg
2ef0fcae6a
Fix #552 Compensate for JLine's absent EOF detection.
...
In the unsupported terminal mode, JLine treats a broken
stdin as an endless stream of empty lines. This is problematic
for idea-sbt-plugin: if the IntelliJ process is forcibly killed
and leaves the child SBT process running, it consumes considerable
CPU processing these.
Patching JLine itself would be the cleanest solution (the change
has already been applied to JLine 2), but I've shied away from that
and instead wrapped the InputStream that is read by JLine to
intercept the result of -1 from read(). When this happens, the
flat `inputEof` is set to true.
2012-09-23 15:58:15 -04:00
Mark Harrah
607824cc22
better error message for null setting values
2012-09-18 13:22:40 -04:00
Mark Harrah
2010ae7b3c
back all ConsoleLoggers by a common ConsoleOut
...
The common ConsoleOut merges (overwrites) consecutive Resolving xxxx ... lines
when ansi codes are enabled.
2012-09-01 09:56:09 -04:00
Mark Harrah
29dd76da85
defer opening logging output files until an actual write
2012-08-27 10:49:13 -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
8c06949957
clean up token completions and make providing a general completion function easier
2012-07-13 14:33:27 -04:00
Mark Harrah
ce3ed37c8c
basic code for cleaning up Manifest.toString
2012-07-13 14:33:27 -04:00
Mark Harrah
0972791b58
clean up Completions and allow arbitrary 'display' for Token
2012-07-13 14:33:27 -04:00
Mark Harrah
72e05309c5
JLine completion integration now considers a suggestion with a newline to be preformatted
2012-07-13 14:33:27 -04:00
Mark Harrah
51da95644c
methods for working with Scala identifiers
2012-07-13 14:33:27 -04:00
Mark Harrah
5dd2bb8a24
print completions containing a newline first and on separate lines
2012-07-13 14:33:27 -04:00
Eugene Vigdorchik
b5a29987e6
Changes required to use sbt as-is from Scala-IDE.
2012-07-13 14:33:26 -04:00
Eugene Vigdorchik
a6c2054292
Break compiler dependency from 'collection' project.
2012-07-13 14:33:26 -04:00
Mark Harrah
b6b78618f5
in IO.copyFile, limit maximum size transferred via NIO. fixes #491
2012-07-06 10:28:51 -04:00
Mark Harrah
8d20a7ea19
repeatDep parser combinator
2012-07-06 10:28:51 -04:00
Mark Harrah
d8f5c39465
remove most occurrences of ScalaObject
2012-07-01 15:16:41 -04:00
Mark Harrah
e2b5ce374c
fix task tests
2012-07-01 15:16:41 -04:00
Mark Harrah
b46eb41d6c
better handling of multi-loggers with mixed escape sequence support
...
* multi-logger supports ansi escapes if at least one logger support them
* escape sequences removed from strings for loggers without escape support
2012-07-01 15:16:41 -04:00
Mark Harrah
ba8aa932fb
scala-reflect.jar for the ScalaInstance derived from scalaHome
2012-06-16 23:40:52 -04:00
Eugene Vigdorchik
e6f858f292
Test RichURI.
2012-06-15 07:54:14 -04:00
Eugene Vigdorchik
945fdd5baa
Use raw methods on URI where a single string representation is constructed. URI(String) assumes no special characters.
2012-06-15 07:54:14 -04:00
Eugene Vigdorchik
47c9645892
Use raw method not to unescape special characters. Fixes #478
2012-06-12 07:15:17 -04:00
Mark Harrah
cf2402cea4
another fix related to #460
2012-05-23 20:13:52 -04:00
Mark Harrah
e34b8e4bf2
print message and stack trace when exception occurs in completion
2012-05-21 22:23:44 -04:00
Mark Harrah
5ff33fad3e
Second try at printing message when stack trace suppressed.
...
Problems:
1. Without a message, users don't find 'last'
2. Showing a message for every error clutters output.
This tries to address these issues by:
1. Only showing the message when other feedback has not been provided and
'last' would not usually be helpful. This will require ongoing tweaking.
For now, all commands except 'compile' display the message. 'update' could
omit the message as well, but perhaps knowing about 'last' might be
useful there.
2. Including the exact command to show the output:
last test:compile
and not just
last <task>
3. Highlighting the command in blue for visibility as an experiment.
Review by @ijuma and @retronym, please.
2012-05-19 18:20:19 -04:00
Mark Harrah
1f612aaecb
ensure enableEcho called after jline.Terminal.getTerminal. fixes #460
2012-05-19 18:20:19 -04:00
Eugene Vigdorchik
dabb0fd377
Refactor according to the comments.
2012-05-17 07:24:24 -04:00
Eugene Vigdorchik
2b1f21a21c
Additional method in ProcessIO to process inheriting input.
2012-05-17 07:24:24 -04:00
Eugene Vigdorchik
8d123081a2
Use java 7 Redirect.INHERIT to inherit subprocess' input stream.
2012-05-17 07:24:24 -04:00
Mark Harrah
4e6cbd7304
delete symlink and not its contents when recursively deleting a directory
2012-05-11 21:24:05 -04:00
Mark Harrah
9414f98f2c
classfile analyzer should pass full name to AnalysisCallback
2012-05-08 20:25:25 -04:00
Mark Harrah
99a04466f1
move to revised warning interface in the compiler
2012-05-06 14:15:03 -04:00
Mark Harrah
9f80180859
buffer url input stream returned by Using. fixes #437
2012-04-30 20:50:28 -04:00
Mark Harrah
2e868e6d67
Merge pull request #433 from vigdorchik/optimize_java_compile
...
Do not load classes for dependencies since having URLs is enough.
2012-04-19 09:30:05 -07:00
Mark Harrah
d837f869bd
using some of the embedding interfaces
2012-04-18 11:02:52 -04:00
Mark Harrah
d0899419e7
Revert "Revert "Work around scalac issue causing boxing." (ClassNotFoundException)" (Reverted wrong commit.)
...
This reverts commit 7dac90fffe .
2012-04-18 03:14:59 -04:00
Mark Harrah
7dac90fffe
Revert "Work around scalac issue causing boxing." (ClassNotFoundException)
...
This reverts commit 6c090313da .
2012-04-17 05:13:27 -04:00
Paul Phillips
6c090313da
Work around scalac issue causing boxing.
...
Tableswitch slightly cheaper than a couple million trips
through the Byte box.
2012-04-16 19:42:58 +01:00
Eugene Vigdorchik
cbb1e3daf2
Do not load classes for dependencies since having URLs is enough.
2012-04-16 18:48:31 +04:00
Mark Harrah
a36212886d
Merge pull request #427 from pvlugter/root-loader
...
Use system classloader when finding root classloader
2012-04-13 02:59:48 -07:00
Peter Vlugter
7b7716953f
Use system classloader when finding root classloader
2012-04-13 11:51:15 +12:00
Mark Harrah
2a84a80d5b
clean up scalaOrg changes
2012-04-12 17:31:28 -04:00
Mark Harrah
2aad26a5ba
Merge 'vjovanov/0.12' into 0.12
2012-04-12 17:21:08 -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
Vojin Jovanovic
079a2c1bda
Minimizing effects of scalaOrganization key addition.
2012-04-11 12:55:01 +02:00
Vojin Jovanovic
cbb8caef0c
Backwards compatibility check for getScala method.
...
Added groupId dependant baseDirectoryName.
General code cleanup.
2012-04-11 04:04:21 +02:00
Michael Allman
ba2e42287b
Add support for loading Ivy settings from a URL
2012-04-08 20:22:15 -07:00
Mark Harrah
f94eae15b6
merge test forking from vigdorchik/xsbt/wip_fork_test
2012-04-06 20:48:31 -04:00
Mark Harrah
12d72facb1
enhance 'projects' to allow temporarily adding/removing builds to the session
2012-04-06 20:28:31 -04:00
Vojin Jovanovic
0f6a50daee
Addressing https://github.com/harrah/xsbt/pull/418
...
Changed the order of parameters in getScala method.
Changed the key name to scalaOrganization (scala-organization).
Augmented description of the key.
Minor fixes.
2012-04-05 12:19:49 +02:00
Vojin Jovanovic
182b7c655f
Adding `scalaOrg` setting key for scala clones.
...
Adding scalaOrg key that specifies organization (artifactId) of scala used in the project. The change does not affect version checks for dependecies and LauncherConfiguration.
Modified scalaProvider cache in Launcher to use (scalaOrg, version) as a key.
Downloaded jars are stored in the folder scala-.../lig-<scalaOrg> if scalaOrg is not default.
scala-org is an advanced setting so it can not be used in build.sbt.
2012-04-04 19:06:55 +02:00
Eugene Vigdorchik
7afc9e77c6
\'fork in test\' initial implementation.
2012-04-01 11:44:05 +04:00
Mark Harrah
6fb1934efa
filter detected binary plugins by classpath now that plugin class loader is shared. fixes #412
2012-03-31 21:51:01 -04:00
Mark Harrah
41eb26ae1f
fix sample method interpretation of completions argument
2012-03-25 20:36:05 -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
1cbb7ce93c
print-warnings task for Scala 2.10+ to avoid needing to rerun 'compile' to see deprecation/unchecked warnings
2012-03-17 19:31:55 -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
Mark Harrah
cf19af27dc
fix argument parsing, which unintentionally required two characters. ref #396
2012-03-13 08:01:58 -04:00
Indrajit Raychaudhuri
abcd4555b9
Replace `Pair.apply` with `Util.pairID`, avoids extra class generation
2012-03-12 05:25:12 +05:30
e.e d3si9n
784c9ed024
fixes NotQuoted
2012-03-11 15:02:50 -04:00
e.e d3si9n
5a691fbb67
StringVerbatim is now stateless
2012-03-11 13:19:13 -04:00
e.e d3si9n
8545e912da
removed Octal
2012-03-11 13:12:23 -04:00
e.e d3si9n
87c52f5f1b
implemented parser for escaped string and verbatim string
2012-03-11 07:31:39 -04:00
Mark Harrah
c6f28c650d
option to preserve last modified time of files extracted from zip file. enabled by default. fixes #389
2012-03-10 14:26:09 -05:00
Mark Harrah
65f51cdb85
convenience functions for testing parsers
2012-03-10 14:16:40 -05:00
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
3587777638
move error processing to complete/
2012-03-09 07:08:38 -05:00
Mark Harrah
868196e652
delete empty parent directories of deleted class files. fixes #387
2012-03-05 13:40:17 -05:00
Mark Harrah
7b194e3dee
cleanup SourcePosition hierarchy
2012-02-25 12:01:07 -05:00
Mark Harrah
c40055cc1c
cleanup, fix compilation
2012-02-19 22:41:26 -05:00
Daniel C. Sobral
a3c745a4e6
Fix file descriptor leak.
...
Close an InputStream when finished reading it. When given an
OutputStream to connect to a process input, close it when the
transfer is completed. Protect System.in in this latter case.
2012-02-19 16:30:30 -05:00
Daniel C. Sobral
101fe06510
Revert "explicitly close streams"
...
Revert "explicitly close streams on java.lang.Process to avoid descriptor leaks"
This reverts commit 3191eedf9e .
2012-02-19 16:30:30 -05:00
Eugene Vigdorchik
a52d36987c
Remember the range for settings read from .sbt files
2012-02-16 16:58:51 +04:00
Sanjin Sehic
972acc871a
Allow retrieving of non-standard git URIs
...
Non-standard git URIs are ones that do not start with 'git:' nor end
with '.git'. An example of non-standard git URI is
'ssh://server/home/user/repo'.
The mechanism for specifying a non-standard git URI is done by
prefixing the whole URI with 'git:' to signify that it should be
handled with the git resolver. For example, non-standard git URIs like
'git:ssh://server/user/repo' and 'git:https://server/user/repo ' can
now be used.
2012-02-13 22:02:44 -05:00
Sanjin Sehic
77626f5232
Optimize retrieving from git repositories
...
Instead of cloning from a remote git repository for each branch,
revision or tag separately, the git resolver locally clones only once
the remote git repository and then creates further local clones from
this local copy of the remote repository.
First, optimization, of course, is execution speed, because cloning
local repository is much faster than remote repository. Furthermore,
because git uses hard-linking when a clone of local repository is
created, the second optimization is in space consumption.
For example, if we have one project that uses
https://github.com/harrah/xsbt.git#v0.11.1 and second project that
uses https://github.com/harrah/xsbt.git#v0.11.2 , in previous git
resolver implementation it would require two separate clones of the
remote git repository at https://github.com/harrah/xsbt.git . But, the
new git resolver requires only one clone of the remote git repository
and two local clones which take no space because of hard-linking.
2012-02-13 22:02:44 -05:00
Sanjin Sehic
942427bfa3
Extract local, remote, and git BuildLoader.Resolver from ResolveUnit
2012-02-13 22:02:44 -05: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
d82757f595
more IO API documentation
2012-01-26 21:28:19 -05:00
Mark Harrah
f55d34f617
Add Path.allSubpaths and API documentation for mappers
2012-01-26 21:28:19 -05:00
Mark Harrah
6a7eb6c937
Merge branch 'parsing_changes' into 0.12
2012-01-15 13:09:41 -05:00
Mark Harrah
9b5ab3cb09
work around unclosed jline history-related streams
2012-01-14 21:09:11 -05:00
Mark Harrah
3191eedf9e
explicitly close streams on java.lang.Process to avoid descriptor leaks
2012-01-14 21:09:11 -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
faa0809146
IO.touch operates on absolute file
2011-12-13 17:29:08 -05:00
Mark Harrah
bca9ace1f7
fix 'not' parser combinator, add EOF
2011-12-13 17:29:08 -05:00
Mark Harrah
7a75acfe03
treat case differences differently
2011-12-13 17:15:05 -05:00
Indrajit Raychaudhuri
859f569da0
Fix spelling: 'descendent' is now 'descendant', English ftw. Closes #293
2011-12-12 19:10:47 +05:30
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
Mark Harrah
ab8ac83b6c
missing import
2011-11-04 13:44:09 -04:00
Mark Harrah
4afbc5b1b4
preserve IOException type when translating exceptions. fixes #253
2011-11-04 13:40:59 -04:00
Mark Harrah
2cbc755856
cleanup, add regex for escape sequences to be used later
2011-10-30 18:39:18 -04:00
Indrajit Raychaudhuri
64af38bb84
Use IO.write instead of explicit resource management
2011-10-26 21:43:42 +05:30
Mark Harrah
5fd3c1d2e5
task execution interruptible using ctrl+c. fixes #228,#229
...
- interrupts task execution only
- no further tasks scheduled
- existing tasks interrupted
- a task must terminate any other started threads when interrupted
- set cancelable to true to enable
- currently, 'run' properly terminates if the application properly
terminates when interrupted
- 'console' does not, 'test' depends on the test framework
- also bundled: set connectInput to true to connect standard input to forked run
2011-10-18 22:43:25 -04:00
Mark Harrah
5e37d8e585
brief API documentation on some core settings types
2011-10-16 20:20:45 -04:00
softprops
762bac2975
add support for a masked readline
2011-10-13 20:42:39 -04:00
Mark Harrah
a3bb16618d
fix stackoverflow caused by using List.separate, as tracked down by pvlugter
2011-10-09 21:48:15 -04:00
Mark Harrah
0f447c201e
directly read compiler.properties so that Scala classes don't need to be loaded when no work needs to be done.
2011-10-05 18:09:27 -04:00
Mark Harrah
7702d30f40
generalize addArtifact arguments to Initialize[...]. fixes #207
2011-10-01 14:40:14 -04:00
Mark Harrah
d15504d970
local settings, sbt-package-private for now
2011-10-01 14:40:14 -04:00
Mark Harrah
705608d59d
fix parser test
2011-10-01 14:40:14 -04:00
Mark Harrah
9ad15672d5
fix laziness of parser failure messages
2011-09-26 08:20:07 -04:00
Mark Harrah
568fe3dc47
fix order of returned lists in Util.separate
2011-09-26 08:20:07 -04:00
Mark Harrah
541004419f
provide consecutive tab press count for completion combinators
2011-09-20 20:51:47 -04:00
Mark Harrah
565cd3802f
fix dependsOn breakage from Initialize rework
2011-08-26 23:27:03 -04:00
Mark Harrah
19f4b423e1
fix undefined key suggestion for updating settings
2011-08-14 10:53:38 -04:00
Mark Harrah
d36e02ea22
allow setting initialization to be partially dynamic and run in parallel
2011-08-14 10:53:37 -04:00
Mark Harrah
f795f70752
drop unused KApply from settings
2011-08-14 10:53:37 -04:00
Mark Harrah
aa7ea022b8
clean up undefined reference checking to be a proper function
2011-08-14 10:53:37 -04:00
Mark Harrah
18b57bb101
fix ++ command to not require a space after it
2011-08-14 10:53:37 -04:00
Mark Harrah
90f25b234e
Settings overhaul, intended to be source compatible where it matters.
...
Moves many methods previously provided by implicit conversions directly onto the classes
for better discoverability, especially with scaladoc.
1. Initialize now allowed in more places. Minor renamings in Initialize to avoid conflicts
a. map -> apply
b. get -> evaluate
2. Identity on Scoped* is deprecated- it is now redundant
3. Can now use += and <+= for String, Int, Long, Double settings.
There may be some problematic corner cases in inference, especially with +=, ++, <+=, <++=
4. Some classes with a scoped: ScopedKey[T] method now have scopedKey: ScopedKey[T] instead.
5. The implicit conversion to ScopedKey[T] is now deprecated. Use the scopedKey method.
6. :== and ::= are now private[sbt] to better reflect that they were internal use only.
2011-08-14 10:53:37 -04:00
Mark Harrah
112f58db28
fix ScalaProviderTest
2011-08-14 10:53:37 -04:00
Mark Harrah
70dcae84ee
preserve key+configuration ambiguity through task+extra parsing. fixes #135
2011-08-05 21:59:49 -04:00
Mark Harrah
3ce7c0411d
search java.library.path for default run/test loader
2011-08-05 21:56:32 -04:00
Mark Harrah
7ea35daec2
class loader extension to handle native libraries loaded in multiple class loaders
2011-08-05 21:56:32 -04:00
Mark Harrah
7f64e84393
method to create temporary directory in arbitrary directory
2011-08-05 21:56:32 -04:00
Mark Harrah
980e906ca1
handle custom -bootclasspath in incremental recompilation
2011-08-04 07:20:25 -04:00
Mark Harrah
a19d5a799c
try out simplified display of scoped keys
2011-08-04 07:20:25 -04:00
Mark Harrah
f8d12c5106
Seq[Setting[_]] <=> SettingsDefinition
2011-07-30 18:11:20 -04:00
Mark Harrah
3e9921a07a
for undefined references, suggest the nearest defined scope that is more specific if it exists. fixes #135
2011-07-27 22:35:20 -04:00
Mark Harrah
f52726c221
add ability to specify actual version for ScalaInstance. ref #127 .
2011-07-26 13:34:02 -04:00
Mark Harrah
24c74c6860
display all undefined settings at once
2011-07-25 21:59:22 -04:00
Mark Harrah
d4c76b0d0e
add ability to hide a token until it is explicitly started
2011-07-24 22:35:27 -04:00
Mark Harrah
bf8b577e4f
proper resolvedScoped implementation
2011-07-19 21:29:05 -04:00
Mark Harrah
0b3ec05a81
support incremental recompilation when using exportJars. fixes #108
2011-07-18 17:14:22 -04:00
Mark Harrah
b8bf259500
support starr as a scala home
2011-07-16 12:31:15 -04:00
Mark Harrah
0e5533786c
normalize slashes in custom IO.toURI function. fixes #105 .
2011-07-13 18:08:29 -04:00
Mark Harrah
555b1c04a4
shorten default hash suffix for project ID
2011-07-12 23:09:57 -04:00
Mark Harrah
cbf7b82cdb
clean up whitespace handling in commands. fixes #97
2011-07-12 07:47:31 -04:00
Mark Harrah
b096d1b175
global settings preparation: separate compilation/loading stages of Eval
2011-07-09 16:54:41 -04:00
Mark Harrah
cc554d4d64
part II of fix for #90
2011-07-09 16:54:41 -04:00
Mark Harrah
5d11b62876
convenience for hashing String to a String
2011-07-06 07:30:47 -04:00
Scott Royston
28f0e85779
Fix for mkdirs race condition
2011-06-30 16:32:19 -05:00
Mark Harrah
f022f5057f
settings example and simple test
2011-06-29 21:44:55 -04:00
Mark Harrah
51d279b3a3
add missing Attributed.get method
2011-06-29 21:44:37 -04:00
Mark Harrah
1a4646b7f5
move locks test to scripted tests
2011-06-26 12:27:06 -04:00
Mark Harrah
0831552dc5
apply javac log level approach to directJavac
2011-06-26 12:27:06 -04:00
Mark Harrah
738e32b9c6
add extraLoggers to make it easier to add loggers
2011-06-22 19:17:10 -04:00
Mark Harrah
dd4ab4e078
minor changes to parsers
2011-06-17 18:03:59 -04:00
Mark Harrah
8e32a52250
fix issue with Java source files that don't generate classes always being recompiled
2011-06-14 19:32:36 -04:00
Mark Harrah
208cf12045
honor formatEnabled setting, fixes #48
2011-06-10 08:08:51 -04:00
Mark Harrah
d928047678
port build to 0.10, fixes #30
...
use 'publish-all' from the root to publish all projects to local
use 'proguard' to package the launcher
2011-06-10 07:58:18 -04:00
Mark Harrah
79ab6ad9ee
fix type of Path.userHome to be File, not RichFile
2011-06-10 07:48:53 -04:00
Mark Harrah
4945190eca
rearrange products settings
...
1. enables exporting jar to classpath instead of class directory
2. starts to make post-processing class files easier
2011-05-31 18:37:07 -04:00
Mark Harrah
e5443141b1
error handling adjustments, including showing failing task in red (for #29 )
2011-05-30 22:10:01 -04:00
Mark Harrah
a94247d1b6
more release-worthy compile message and analysis toString
2011-05-29 19:17:31 -04:00
Mark Harrah
9ff1adc290
fix Java class to source mapping
2011-05-27 20:42:46 -04:00
Mark Harrah
915b4d5e2a
forgot a test
2011-05-26 22:24:26 -04:00
Mark Harrah
8c659328e9
back A.Key with Manifest, dropping object equality. fixes #27
...
type inference restoration pending switch to 2.9.0
2011-05-26 08:21:33 -04:00
Mark Harrah
e88589c158
fixes #23
2011-05-23 18:40:03 -04:00
Mark Harrah
c5a312cedc
task axis delegation
2011-05-23 08:13:13 -04:00
Mark Harrah
0c572bc4aa
touch variant that doesn't set last modified time
2011-05-18 08:12:06 -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
ec2df78526
fix unused zero for PathMapper.rebase
2011-05-16 22:56:07 -04:00
Mark Harrah
b42c06406f
drop path tests
2011-05-14 20:16:21 -04:00
Mark Harrah
2343a55bb9
replace Path with RichFile
2011-05-14 18:21:41 -04:00
Mark Harrah
54c84e35c3
logging cleanup
2011-05-07 22:02:06 -04:00
Mark Harrah
77be505093
support extra axis for streams
2011-05-07 22:02:06 -04:00
Mark Harrah
9dc9ccd0d3
Use standard {build}/id syntax for 'project' command
2011-05-07 22:02:06 -04:00
Mark Harrah
40c6ca3b3d
Pluggable build resolvers
2011-05-07 22:02:06 -04:00
Mark Harrah
0ad682f2c1
basic optional input support
2011-05-07 22:02:06 -04:00
Mark Harrah
aae8b084ca
test fixes
2011-05-07 22:02:05 -04:00
Mark Harrah
babf642dfc
speed up startup
2011-05-02 20:43:19 -04:00
Mark Harrah
6c6eccea4f
trying out different costs for edit distance
2011-04-26 22:29:30 -04:00
Mark Harrah
1021f0dac8
fix tab completion for filtered parsers
2011-04-26 20:49:43 -04:00
Mark Harrah
daa58adc85
work on parser error handling
2011-04-25 20:20:05 -04:00
Mark Harrah
815ed50dcf
task/setting/attribute descriptions
2011-04-20 20:18:58 -04:00
Mark Harrah
d60175a337
fix matched signature
2011-04-19 22:20:16 -04:00
Mark Harrah
0608e648a5
use left, some, right to avoid extra anonymous classes
2011-04-19 17:58:05 -04:00
Mark Harrah
818382766e
add Types.idFun to replace Predef.identity, replace a :== overload
...
idFun[T]: T => T instead of identity[T](t: T): T
doesn't require a new class file when used as a function value
replaced overloads of :== that assigned the Scoped reference on
the right to the Scoped on the left with <<= scoped.identity
2011-04-16 11:24:58 -04:00
Mark Harrah
d09aab03be
better location for class loaders (ClassLoaders.scala)
2011-04-15 18:22:57 -04:00
Mark Harrah
d1af51da72
support explicitly defining sequences of settings in .sbt files
2011-04-13 19:09:33 -04:00
Mark Harrah
f55414355e
improve error messages for cycles
2011-04-13 19:06:36 -04:00
Mark Harrah
36034612bc
String representation for Compiled
2011-04-13 19:04:53 -04:00
Mark Harrah
1c400db4d9
harden clean and IO.move
2011-04-12 23:10:36 -04:00
Mark Harrah
ed27a8077d
clean up scope delegation implementation
2011-04-12 20:58:59 -04:00
Mark Harrah
18cfaa7414
finals
2011-04-12 20:28:30 -04:00
Mark Harrah
673f9923ab
dependency filters, selecting/filtering UpdateReport
2011-04-10 16:22:48 -04:00
Mark Harrah
f42c93901b
work on tests
2011-04-08 19:17:58 -04:00
Mark Harrah
1b147b4953
reorganize main
2011-04-08 19:15:13 -04:00
Mark Harrah
e6cc26c10f
move toSeq up from IMap to PMap
2011-04-07 22:50:26 -04:00
Mark Harrah
2b37df87b5
'inspect actual <key>' for actual dependencies, 'inspect <key>' for declared
2011-03-29 20:53:21 -04:00
Mark Harrah
213d995bb5
newline before JLine's above threshold prompt
2011-03-25 18:22:30 -04:00
Mark Harrah
e498b9bd3a
tab completion fixes and cleanup
2011-03-24 21:28:02 -04:00
Mark Harrah
69a04326b9
tab completion: print message when input is invalid
2011-03-24 21:28:02 -04:00
Mark Harrah
1dd4a1d1b1
tab completion: example-checking off by default, 'matches' convenience method
2011-03-24 21:28:02 -04:00
Mark Harrah
58473dedcb
fix datatype parser on windows
2011-03-23 07:06:17 -04:00
Mark Harrah
1de086755b
command logging through Streams, 'last' without a key to redisplay it
2011-03-21 20:26:04 -04:00
Mark Harrah
63b1c3441b
work on displaying task errors
2011-03-20 22:54:01 -04:00
Mark Harrah
37e24daebf
use stable ordering for PathFinder.getFiles
2011-03-16 22:22:20 -04:00
Mark Harrah
a2bbf741ad
fix exception swallowing in IO.archive
2011-03-16 22:17:09 -04:00
Mark Harrah
10d2d4c14a
readLines from URL
2011-03-13 21:32:38 -04:00
Mark Harrah
c0c287d50e
reintegrate history commands, add proper parsing for recursive commands
2011-03-11 16:52:44 -05:00
Mark Harrah
77092b7888
resolver keys, javaHome, scalaHome, and change Java source resolution
...
- rename resolvers to fullResolvers, baseResolvers to resolvers
- if set, use javaHome for compilation as well as running
- add scalaHome configuration for easily configuring scalaInstance
for a local Scala installation
- no longer require source roots for Java sources. Instead, resolve
ambiguities by package name and then distance to root. Common
package suffixes in different directories within the same project
are a potential problem.
2011-03-09 18:07:43 -05:00
Mark Harrah
ea188e74cc
success indication and timestamps for actions
2011-03-06 21:57:31 -05:00
Mark Harrah
c505b01ba6
fix - error
2011-03-05 07:37:03 -05:00
Mark Harrah
ec8c5434af
jline support for 2.9
2011-03-05 05:58:10 -05:00
Mark Harrah
11c2b2239c
continuous polling interval now in milliseconds
2011-03-01 08:51:14 -05:00
Mark Harrah
3922580c58
join for tasks and settings
2011-03-01 08:48:14 -05:00
Mark Harrah
a68e4c74f9
updating more integration tests
2011-02-25 18:35:52 -05:00
Mark Harrah
329709c750
configurable shell prompt
...
for example:
Command.ShellPrompt := {
s => Project.extract(s).cid + "> "
}
2011-02-21 19:35:05 -05:00