Commit Graph

1815 Commits

Author SHA1 Message Date
Mark Harrah 4b70fe0921 auto-compiler plugins 2011-04-11 22:12:03 -04:00
Mark Harrah 399dd8ec48 support delegating to a project with different configurations 2011-04-10 18:51:50 -04:00
Mark Harrah 673f9923ab dependency filters, selecting/filtering UpdateReport 2011-04-10 16:22:48 -04:00
Mark Harrah 2f2e24c87d cross building
+, ++ require a space
+ <command>
++ <scala-version> [command]
set scala versions in crossScalaVersions
2011-04-09 20:42:57 -04:00
Mark Harrah 8d06ba2d92 cleanup some sequencing settings in Defaults 2011-04-09 19:58:49 -04:00
Mark Harrah ff7b5138c5 fix excessive Incomplete lifting
unnecessarily led to multiple tasks reported as failing for a single cause
2011-04-09 18:43:21 -04:00
Mark Harrah 7b2e4978fb fix line number off by one in configuration error messages 2011-04-09 15:49:35 -04:00
Mark Harrah 650bef7b06 demo script command 2011-04-09 15:04:18 -04:00
Mark Harrah e6b816d86e add additional in scope identifiers 2011-04-08 22:13:53 -04:00
Mark Harrah 50e453c70c provide more convenient access to BuildStructure and all projects 2011-04-08 22:03:41 -04:00
Mark Harrah 51e8dac35c tweaks to EvaluateConfiguration 2011-04-08 19:32:01 -04:00
Mark Harrah 1b147b4953 reorganize main 2011-04-08 19:15:13 -04:00
Mark Harrah 76ab8f8e53 detect cyclic references after freeze and translate nodes to keys 2011-04-07 22:51:25 -04:00
Mark Harrah 0b4d8fb505 fix collision with name 'state' in 'console-project' 2011-04-07 22:50:48 -04:00
Mark Harrah 2a737690a8 allow Scala-level cyclic references between projects
this occurs legally when different dependencies go in
  reverse directions, as with delegates
the direct arguments to Project.apply are now call-by-name
the modifying functions like 'aggregate' cannot be call-by-name
   since they are varargs
2011-04-07 22:48:01 -04:00
Mark Harrah dfb0a9ec8c put remaining keys in Keys 2011-04-06 21:00:48 -04:00
Mark Harrah 5a67998490 options specific to each test task, consolidates streams to the right task 2011-04-06 20:55:30 -04:00
Mark Harrah 1e7d628dbb lift anonymous Incompletes to the next keyed, empty Incomplete 2011-04-06 20:52:48 -04:00
Mark Harrah 159a3fe8f3 credentials and patterns for resolvers 2011-04-05 18:44:47 -04:00
Mark Harrah f2270262d2 ScopedTask[t] -> ScopedKey[Task[t]] implicit 2011-04-05 07:10:28 -04:00
Mark Harrah a1c3ffb376 add 'initialize' setting 2011-04-04 21:22:19 -04:00
Mark Harrah 15f490c625 fix input tasks not being keyed & not showing up in failed task list 2011-04-04 19:10:35 -04:00
Mark Harrah a750c1563f Java/Scala compilation order support 2011-04-03 22:12:51 -04:00
Mark Harrah a5f3e1b839 clean up build definition exceptions and messages 2011-04-03 22:12:51 -04:00
Mark Harrah 8059b1a164 ability write graph of settings dependencies to dot format 2011-04-01 21:08:08 -04:00
Mark Harrah db5019a178 include publish-to resolver in other-resolvers 2011-04-01 21:06:49 -04:00
Mark Harrah d79fa21348 fix publish patterns for maven style publishing 2011-04-01 21:06:07 -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 4821f16eb3 scalaVersion in GlobalScope, delegates test 2011-03-28 22:29:35 -04:00
Mark Harrah 496cd05de8 run-main for specifying main class to run 2011-03-28 17:19:12 -04:00
Mark Harrah 2ab8f5c3c0 fixes to 'inspect' delegates and provided by outputs 2011-03-25 22:01:21 -04:00
Mark Harrah aa395583b5 provide access to per-build and build-global keys from command line
[build-uri]/key for per-build
*/key for build-global
2011-03-25 21:42:04 -04:00
Mark Harrah 135609e5b0 temporary hack to avoid reading Analysis every compile 2011-03-25 21:37:17 -04:00
Mark Harrah dd012099d2 include 'bundle' packaging type on classpath in addition to 'jar' 2011-03-25 18:25:52 -04:00
Mark Harrah cc1e02f6a3 allow unqualified 'test', no longer requiring 'test:test' 2011-03-25 18:24:45 -04:00
Mark Harrah e498b9bd3a tab completion fixes and cleanup 2011-03-24 21:28:02 -04:00
Mark Harrah 07dbba65d1 memoize aggregation, cleanup 2011-03-23 07:06:51 -04:00
Mark Harrah 8c0d441fec clean up Ivy-related logging 2011-03-22 20:53:33 -04:00
Mark Harrah e0b453225e logging for packaging 2011-03-22 20:42:21 -04:00
Mark Harrah 0123351a8f initially only display originating task failures only 2011-03-21 20:50:20 -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 f34c3b5837 some renamings and removals suggested by Heiko
clarify command-related members of State:
  processors -> definedCommands
  commands -> remainingCommands
drop some Extracted members:
  curi replaced by currentRef.build
  cid replaced by currentRef.project
2011-03-21 17:56:41 -04:00
Mark Harrah caee48130e split out SessionSettings from Project.scala 2011-03-21 17:56:24 -04:00
Mark Harrah 63b1c3441b work on displaying task errors 2011-03-20 22:54:01 -04:00
Mark Harrah 7b4c16f294 cleanup 2011-03-19 23:22:18 -04:00
Mark Harrah 4ce57596d9 fix exit code 2011-03-19 14:07:03 -04:00
Mark Harrah 50f1bd73d6 add convenience method for evaluating tasks 2011-03-19 00:04:37 -04:00
Mark Harrah 7c7af7c998 use 'distinct' for State.++ to ensure commands are not duplicated 2011-03-19 00:04:07 -04:00
Mark Harrah 6215819890 'update' caching now takes into account whether jars still exist 2011-03-17 21:29:35 -04:00
Mark Harrah afbd23e9f3 global plugin configuration in ~/.sbt/plugins/
just like <base>/project/plugins/ but included in all projects
2011-03-16 22:22:46 -04:00
Mark Harrah 37e24daebf use stable ordering for PathFinder.getFiles 2011-03-16 22:22:20 -04:00
Mark Harrah 15e785a1e4 more stable managed classpath ordering 2011-03-16 22:21:02 -04:00
Mark Harrah ac280e5fe7 if sbtPlugin is true, sbt dependency and resolver are added 2011-03-16 20:09:59 -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 09b36a4476 make global scope explicit in command-retrieval 2011-03-13 21:42:44 -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 26d834e926 binary plugin auto-detection 2011-03-13 21:38:05 -04:00
Mark Harrah 8da0f1705e Plugin auto-settings empty by default 2011-03-13 21:33:28 -04:00
Mark Harrah d371ff9314 more consistent configuration of the Ivy user directory 2011-03-12 10:28:53 -05:00
Mark Harrah f18241395b 'reload plugins' to change to plugins project
'reload return' to change back to original project.
Declaring a plugin:
> reload plugins
> set libraryDependencies += ...
> reload return
2011-03-11 22:33:30 -05: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 fc32a31abf Merge branch '0.9' of github.com:harrah/xsbt into 0.9 2011-03-08 17:53:43 -05:00
Mark Harrah 37f793be6e make ClasspathOptions configurable 2011-03-08 17:50:19 -05:00
Mark Harrah ea188e74cc success indication and timestamps for actions 2011-03-06 21:57:31 -05:00
Mark Harrah a680dc2336 fix tests 2011-03-06 15:32:06 -05:00
Mark Harrah f6fe55f57c space adjustments for alias-related parsers 2011-03-06 08:32:51 -05:00
Mark Harrah 3a85bd47d6 restore missing piece of alias body that prevents looping 2011-03-06 08:21:16 -05:00
Mark Harrah 15e40d4172 filename cleanup 2011-03-05 15:13:16 -05:00
Mark Harrah d7e2f6233d use the launcher's cache directory by default if it is set 2011-03-05 09:11:16 -05:00
Mark Harrah 1ee5891ac9 further delegation adjustments to searching project=Global 2011-03-05 08:50:08 -05:00
Mark Harrah f298d3a8f2 put configurations into default build scope 2011-03-05 08:25:17 -05:00
Mark Harrah e7b47d67e7 canonicalize classpath before compiling 2011-03-04 12:02:46 -05:00
Mark Harrah b7f92ae07f 2.9 compatibility fixes 2011-03-04 06:16:35 -05:00
Mark Harrah 60d9355b54 add build level configuration
made ProjectRef semantics explicit
2011-03-03 06:44:19 -05:00
Mark Harrah 70972c6499 normalize key names 2011-03-02 06:46:28 -05:00
Mark Harrah 4cd6e60360 add 'full' option to 'reboot' that cleans project/boot before restarting 2011-03-01 09:44:45 -05:00
Mark Harrah 38d113e8b1 reintegrate ~ (again) 2011-03-01 08:54:06 -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 3c08eed2a6 address some deprecations 2011-03-01 08:44:41 -05:00
Mark Harrah 98bd962952 make "globals" per-build definition 2011-02-27 16:28:00 -05:00
Mark Harrah 0729798cce keys cleanup 2011-02-27 00:36:54 -05:00
Mark Harrah c21c580314 allow This, Global to represent ThisScope, GlobalScope 2011-02-27 00:34:57 -05:00
Mark Harrah 19698e308e keys cleanup part 2 2011-02-27 00:02:50 -05:00
Mark Harrah 5ea24a460b keys cleanup 1. 2011-02-26 23:34:39 -05:00
Mark Harrah 83866ffb42 incremental tests, misc fixes 2011-02-26 20:34:18 -05:00
Mark Harrah a68e4c74f9 updating more integration tests 2011-02-25 18:35:52 -05:00
Mark Harrah 4f4ae170d3 work on plugins, added console-project, re-integrated more tests 2011-02-24 23:30:06 -05:00
Mark Harrah 9db4afd222 bring more integration tests back online with associated fixes 2011-02-23 19:19:44 -05:00
Mark Harrah ba8f43a23e starting to convert integration tests 2011-02-22 22:36:48 -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
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 ea1e7d6cae disable aggregation by default for the interactive tasks 2011-02-21 10:07:58 -05:00
Mark Harrah 218ccc2c9f aggregation 2011-02-21 10:07:39 -05:00
Mark Harrah 2ed574b30d fix unmanaged dependencies being excluded in certain cases 2011-02-20 15:40:29 -05:00
Mark Harrah 9fb78514c7 add unmanaged jars from project dependencies 2011-02-19 23:25:30 -05:00
Mark Harrah 04910baf2f command cleanup, load project by default, prompt on load failure 2011-02-19 22:22:09 -05:00
Mark Harrah 552be510ad restrict configuration and project ID to valid values at parser level for tab completion 2011-02-19 08:49:30 -05:00
Mark Harrah 16cd2e7fdc append caret to pointer string 2011-02-18 20:55:37 -05:00
Mark Harrah cda1995a6b make default name the project id 2011-02-15 18:41:40 -05:00
Mark Harrah 8ad8718366 rename 'get' to 'inspect', merge 'delegates' command into it 2011-02-15 18:41:01 -05:00
Mark Harrah dcd24f5dc4 implement %% 2011-02-14 18:57:54 -05:00
Mark Harrah 83cb152fd7 rename 'inherits' to the more appropriate 'delegates' 2011-02-14 18:56:29 -05:00
Mark Harrah cfd4b99f29 when evaluating settings, import Keys._ by default 2011-02-14 18:55:05 -05:00
Mark Harrah dd06a0c1d3 fix mixed up javac/scalac options 2011-02-13 19:02:22 -05:00
Mark Harrah 11a76c9f3b last, last-grep 2011-02-12 16:23:40 -05:00
Mark Harrah 562f362f09 remove obsolete parsers subproject 2011-02-12 15:43:37 -05:00
Mark Harrah c9b932acd1 cleanup/rework related to Settings/InputParser
- drop fillThis: handle in injectStreams instead
- simplify InputParser construction (at the expense of implementation simplicity)
- split out ScopeKey/initialization parts of Setting with separate Initialize trait
  + makes Apply obsolete
  + makes the Initialize trait properly composable
  + this allowed splitting the InputParser definition into
    an Initialize for parsing and one for the action
- implement test-only
- inject resolved scope
2011-02-11 20:22:17 -05:00
Mark Harrah cbdabc1383 handle invalid command names in action parser (by ignoring them) 2011-02-11 20:12:15 -05:00
Mark Harrah 1124cc59d9 package, package-doc, package-src 2011-02-10 08:16:07 -05:00
Mark Harrah 3de34c6569 'show' can prefix task to display its result 2011-02-10 08:13:48 -05:00
Mark Harrah 462b0f2237 delete reintegrated code 2011-02-10 08:13:05 -05:00
Mark Harrah 74013f3cc7 per-project commands with Commands configuration 2011-02-08 20:38:18 -05:00
Mark Harrah f780d67a78 add reverse dependencies to 'get' output 2011-02-08 20:36:29 -05:00
Mark Harrah 66442a51df fix ScalaInstance creation and include Scala version in Target 2011-02-08 20:34:39 -05:00
Mark Harrah 28d0b36b43 copy-resources 2011-02-06 13:01:50 -05:00
Mark Harrah b9b607aade delegates command 2011-02-06 12:26:20 -05:00
Mark Harrah 06a346a543 'get' now shows defining scope, related definitions, dependencies 2011-02-06 11:33:56 -05:00
Mark Harrah c9b1b507cd doc,test tasks 2011-02-06 11:33:29 -05:00
Mark Harrah 692772ece2 clean,console,console-quick,run 2011-02-05 21:40:10 -05:00
Mark Harrah c1cc482b94 overhaul Streams injection 2011-02-05 21:39:34 -05:00
Mark Harrah a49872c35d fix Scope printing when task axis is not Select 2011-02-05 21:35:54 -05:00
Mark Harrah eb10f7ee94 improve Setting construction
- make all constructing methods end in = for lowest precedence
- rename Scope constructing method 'apply' to 'in' to allow 'apply' to
    be used on single settings as well as tuples and 'in' reads better
2011-02-04 22:02:39 -05:00
Mark Harrah 8bfe9a0208 initial set of default settings
still need key consolidation and import
2011-02-03 07:17:47 -05:00
Mark Harrah c9a6d2f6b0 session manipulation commands
save, clear, list, and remove session settings
2011-02-02 22:56:11 -05:00
Mark Harrah 14990b5127 cache Eval results
still need to clean up stale class files
2011-02-02 19:38:41 -05:00
Mark Harrah db20122626 allow default configuration to be implied for selecting task to run 2011-02-02 19:35:46 -05:00
Mark Harrah 0bd03b9d6e project definition output directory consistency cleanup 2011-02-02 19:34:52 -05:00
Mark Harrah e5eaf360c9 fix Eval creation when changing project 2011-02-02 19:29:03 -05:00
Mark Harrah bdf643f57a minor rearranging 2011-02-02 19:27:55 -05:00
Mark Harrah bff18e7e7a curry InputTask.apply for inference 2011-02-02 19:26:45 -05:00
Mark Harrah 6108808aeb fix Build discovery 2011-02-02 19:25:18 -05:00
Mark Harrah 65b341cdf0 translate Uninitialized message to use 'display' 2011-01-31 18:16:25 -05:00
Mark Harrah d9d4869e49 inject current Configuration into settings 2011-01-31 18:15:15 -05:00
Mark Harrah 266df4c1ad improve Scope display, fix delegates 2011-01-31 18:02:13 -05:00
Mark Harrah b9e4c9299b work on special settings, TupleN/FunctionN interface for map/flatMap 2011-01-30 23:19:28 -05:00
Mark Harrah 1c9caf40a3 minor additions 2011-01-29 11:22:59 -05:00
Mark Harrah 43dc6af4ce support map/flatMap on mixed Task/Setting KLists 2011-01-28 21:15:39 -05:00
Mark Harrah 6b91ad59fd Eval-related improvements
- support import clauses
- error display: source name, line numbers for each expression
- for 'eval', 'get', 'set', and .sbt files, use default imports and import from Plugins, Builds
2011-01-26 19:49:54 -05:00
Mark Harrah f182b3a896 'act' command for running tasks 2011-01-25 22:23:03 -05:00
Mark Harrah c676c1c673 adjustments and cleanup 2011-01-25 22:22:11 -05:00
Mark Harrah bfa3a996e9 simplify InputTask and provide InputKey factory methods 2011-01-25 22:20:05 -05:00
Mark Harrah d283bd2cd2 add builder convenience methods to Project 2011-01-25 22:17:28 -05:00
Mark Harrah 1b9b2481f4 split load-time project structure scope resolution into two phases
first phase resolves referenced build URIs as each build is loaded
second phase resolves references without an explicit project ID
  (this requires the whole structure to be known and this isn't available during the first phase)
setting resolution is unchanged (done after both phases)
2011-01-25 22:14:02 -05:00
Mark Harrah f1af2c1cbc get,set,eval commands 2011-01-25 07:24:52 -05:00
Mark Harrah 837bb80d40 cleanup and fixes 2011-01-24 18:08:43 -05:00
Mark Harrah 2687836ca5 improve commands, proper build/project base resolution
finish alias support
better project printing in 'projects'
completion support for 'help'
resolve URIs in ProjectRef against base URI of defining build in keys and project relations
resolve base directories and record build URI in BuildUnit
preserve relative paths in File to URI conversion for later resolution
2011-01-23 22:34:17 -05:00
Mark Harrah 72261548ef use java.util.Linked* instead of scala's 2011-01-22 16:21:22 -05:00
Mark Harrah 2d394c7551 move applyEffect to Command 2011-01-22 15:07:59 -05:00
Mark Harrah 784d83af17 make explicit the separation between parsing and execution
Parser[() => State] instead of Parser[State]
2011-01-22 15:01:10 -05:00
Mark Harrah c3a265dbd3 redo Command to use Parser
nested commands still need work
2011-01-22 14:01:59 -05:00
Mark Harrah 21dabc0fab load a single Streams instance per session and store it in BuildStructure 2011-01-21 17:22:18 -05:00
Mark Harrah 087bc569e0 multi-project model based on Settings and ProjectRef 2011-01-18 18:48:32 -05:00
Mark Harrah 6960d24158 part I of revised approach to commands/projects
no privileged project member of State
no separation of Command and Apply, so no pre-filtering on State
use entries in State attributes map instead of mixing in traits to project object:
  HistoryPath, Logger, Analysis, Navigate, Watch, TaskedKey
rework Navigation to be standalone instead of mixin
2011-01-18 18:48:32 -05:00
Mark Harrah 97951e8cf4 Remove obsolete comments 2011-01-18 18:43:58 -05:00
Mark Harrah 1c29522ba8 fixes and improvements to tab completions combinators 2010-12-13 22:44:25 -05:00
Mark Harrah 22a71f2432 Settings 2010-12-12 21:33:32 -05:00
Mark Harrah bc11837ccc javap, test-javap, sh, exec tasks 2010-12-02 21:56:15 -05:00
Mark Harrah e68f133c7f {publish,deliver}{,-local} and package tasks 2010-12-02 20:22:18 -05:00
Mark Harrah 8df5cbabf5 grep-last task for searching logs of previous task runs 2010-12-02 20:04:29 -05:00
Mark Harrah 9787cfebc7 cache information for PublishConfiguration, although it won't be used anytime soon 2010-12-02 20:00:18 -05:00
Mark Harrah 054a754493 doc, test-doc tasks 2010-12-02 19:45:16 -05:00
Mark Harrah a7b784fc86 small fixes 2010-12-02 19:31:23 -05:00
Mark Harrah 6d2bbbe0c1 TaskGroups, Context in tasks, new tasks
add syncTask task constructor and copy-resources/copy-test-resources instances
add console-quick, test-console, console, test-run
add IntegrationTest trait
make Context available through 'context' task
update 'last' and 'show' to use Context to retrieve task by name
drop SingleProject (superseded by Project)
add TaskGroup to be able to inject groups of named tasks
fix watchPaths missing flat sources
proper logging in a few more places, such as compile
2010-11-24 14:18:59 -05:00
Mark Harrah 16e2b71ccc don't print help for internal commands 2010-11-24 14:10:48 -05:00
Mark Harrah ccf0508ce6 cleanup, small fixes 2010-11-24 14:08:20 -05:00
Mark Harrah 46a6a1af16 'test' task 2010-11-24 14:03:26 -05:00
Mark Harrah 9a8c62517f small fixes to main discovery 2010-11-13 20:23:12 -05:00
Mark Harrah 54ba5d75be work on products+configurations 2010-11-13 20:21:06 -05:00
Mark Harrah 69dd8b95d5 don't consider password when determining if 'update' is uptodate 2010-11-09 20:46:14 -05:00
Mark Harrah b601804046 only write resulting Analysis back if compilation was performed 2010-10-30 15:44:36 -04:00
Mark Harrah 5f047f4439 remove out of date comment 2010-10-30 13:25:04 -04:00
Mark Harrah f6bd013cd3 update help for 'iflast' 2010-10-30 13:24:45 -04:00
Mark Harrah f462cda1fb add 'project /' and 'project ..' commands 2010-10-30 13:24:23 -04:00
Mark Harrah 27c8f565ed auto-update if configuration has changed 2010-10-26 18:31:51 -04:00
Mark Harrah 37904a1644 replace unordered collections in several locations with ordered ones 2010-10-26 18:09:33 -04:00
Mark Harrah 16ad0419a8 fix incorrectly using cache directory as cache file for compile
now, <cache-dir>/compile/<config>
2010-10-26 18:06:59 -04:00
Mark Harrah a76d75bca6 more flexible scalac logging
the custom scalac Reporter now delegates to an instance of
  an sbt interface called xsbti.Reporter
handling compilation logging is now mainly done on the sbt-side of the
  compiler interface
the xsbti.Reporter interface provides access to richer information
  about errors and warnings, including source file, line, and offset
xsbti.Reporter can be implemented by users to get access to
  detailed information without needing to parse the logging output
the CompileFailed exception that is thrown when compilation fails now
  includes an array of the problems, providing detailed
  error and warning information that can, for example, be consumed
  by doing a mapFailure on 'compile' and using 'Compile.allProblems'
2010-10-23 16:34:22 -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 585f98438a discovery, 'run', and separate out build Scala version 2010-09-27 19:05:21 -04:00
Mark Harrah b233cfb29f use default project when none discovered 2010-09-27 19:00:46 -04:00
Mark Harrah a033e1647a translate call to task-name to taskName 2010-09-27 19:00:22 -04:00
Mark Harrah df721ddf15 reintegrate support for sending commands over loopback 2010-09-27 18:59:35 -04:00
Mark Harrah d185e0aeb4 properly fail when a task fails 2010-09-27 18:59:14 -04:00
Mark Harrah ce068d7fbc Java source support
generate API for Java sources from class files (currently, uses reflection)
hook into partial recompilation process
2010-09-27 18:57:00 -04:00
Mark Harrah d6b21b9a96 small cleanup 2010-09-27 18:52:51 -04:00
Mark Harrah 4b43e070ca handle empty arguments case correctly 2010-09-27 18:49:13 -04:00
Mark Harrah a2300c7dc0 use default configurations 2010-09-27 18:48:46 -04:00
Mark Harrah 0f0e89af85 check that external project directory exists before trying to load it 2010-09-23 11:45:19 -04:00
Mark Harrah f3de1d728c fix printing sources 2010-09-23 10:29:25 -04:00
Mark Harrah 28f1eecbef changes to make latest preview easier 2010-09-23 09:21:39 -04:00
Mark Harrah 1567de67b2 fix update, default project supports triggered execution 2010-09-21 22:38:18 -04:00
Mark Harrah eed8dfdbab grab base inter-project dependencies from the ProjectInfo 2010-09-21 22:36:22 -04:00
Mark Harrah bedc288c91 actually throw the exception when name is not overridden instead of returning it as the name 2010-09-21 22:34:07 -04:00
Mark Harrah 87842346c6 rename compile command to avoid conflict with compile task 2010-09-21 22:32:54 -04:00
Mark Harrah 20cdb2b75b TaskExtra superseded by package object 2010-09-21 22:31:35 -04:00
Mark Harrah 92df7fe3ee remove some explicitly constructed implicits no longer necessary with 2.8.1 2010-09-21 22:29:18 -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 e0ac454f65 tailrec annotation and shorten constant name in Watched 2010-09-21 22:02:26 -04:00
Mark Harrah 805e6c1338 remove original compiler test application 2010-09-21 22:00:37 -04:00
Mark Harrah d6a7401cd8 fix component name in main notice 2010-09-21 22:00:11 -04:00
Mark Harrah 108ecf59fa a demo Project type
multi-project incremental compilation
 and dependency management
'update' currently runs on every compile
built-in 'compile' command shadows 'compile' action
2010-09-17 22:17:10 -04:00
Mark Harrah 3db480c611 add ProjectExtra to TestProject 2010-09-17 22:13:11 -04:00
Mark Harrah 3a8235a614 raw Project vals are added as execution dependencies 2010-09-17 22:12:17 -04:00
Mark Harrah 0d5814e2b3 Rework external dependency tracking and multi-projects
Reduce AnalysisCallback interface:
  remove discovery
  simplify dependency notification methods
Use map of classpath entry to Analysis for locating
  source API for external dependencies
Handle classpath changes by locating class
  on classpath and either locating Analysis/Source
  as above or comparing Stamp.  This requires storing
  the class name of a binary dependency now.
Make this process aware of full classpath, including
  boot classpath
2010-09-17 21:59:43 -04:00
Mark Harrah 7155b50ee0 Project subtype for evaluating tour3 2010-09-13 19:44:26 -04:00
Mark Harrah 15abc87c45 remove spurious unchecked warning 2010-09-13 19:42:40 -04:00
Mark Harrah 43d593e281 start of managed project support
does proper inter-project resolution
still needs proper scope/configuration setup
2010-09-12 23:16:07 -04:00
Mark Harrah c2a9a95baf redo external projects
move externals from State to ProjectInfo
2010-09-12 22:58:22 -04:00
Mark Harrah e3d39175d4 add console-project tasks to Project 2010-09-12 22:49:33 -04:00
Mark Harrah 129f1e152d remove comment that no longer applies 2010-09-12 22:44:33 -04:00
Mark Harrah fce5330464 use Incomplete.show for displaying task failures 2010-09-12 22:43:42 -04:00
Mark Harrah 179634a019 some more ways to create a Console 2010-09-12 22:42:18 -04:00
Mark Harrah 1d1aa6b1b5 integrate logging, subprojects 2010-09-08 14:46:14 -04:00
Mark Harrah e80de34a6e split out extra tasks, implement logging 2010-09-08 14:45:22 -04:00
Mark Harrah a5ac661115 make project history-enabled 2010-09-08 14:44:04 -04:00
Mark Harrah 7b64a8f526 project navigation changes
projectClosure takes State
save initial project in State
2010-09-08 14:40:24 -04:00
Mark Harrah 0c12c5e2bd merge ProjectContainer into Project, rearrange sub project methods 2010-09-06 00:15:20 -04:00
Mark Harrah 323115e263 register loadp, ~, -- commands 2010-09-06 00:13:59 -04:00
Mark Harrah 67682f32d3 implement ~ 2010-09-06 00:13:53 -04:00
Mark Harrah 018ef2b3c7 add failure wall command '--' 2010-09-05 11:16:53 -04:00
Mark Harrah 6b4844094a project loading 2010-09-05 11:12:44 -04:00
Mark Harrah cc4fc95dba add generic attribute map to State 2010-09-05 10:56:24 -04:00
Mark Harrah fec83c1470 fix help for 'compile' 2010-09-05 10:49:49 -04:00
Mark Harrah 502f355a65 convenience methods for compilation 2010-09-04 08:46:36 -04:00
Mark Harrah 0caa00da64 update DotGraph for 0.9 2010-09-04 08:46:19 -04:00
Mark Harrah 61c855ddc6 working towards using Logger 2010-09-04 08:46:00 -04:00
Mark Harrah 8f1768d6a8 add Logger to Streams 2010-09-04 08:45:34 -04:00
Mark Harrah caa655ae06 add owner name function to context 2010-09-04 08:44:21 -04:00
Mark Harrah bdcf0a7656 'project definitions' can get info about compilation
definition that has constructor with single parameter of
 type Compiled gets passed the compilation parameters and
 Analysis for compiling it
2010-09-04 08:27:07 -04:00
Mark Harrah 8c02f9f478 rename Compile member to avoid conflict with pending change 2010-09-04 08:25:34 -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 9bcd68d28c rework REPL support
allow bindings, which requires specifying the parent class loader
same code can be used for both 'console' and 'console-project' now
provide interface through main/Console
2010-09-04 08:18:06 -04:00
Mark Harrah b4eea78959 cleanup 2010-09-04 08:07:51 -04:00
Mark Harrah 0c59e9d5a6 minor updates for p2 2010-08-30 09:10:25 -04:00
Mark Harrah 62691e6681 cross-configurations 2010-08-27 19:17:03 -04:00
Mark Harrah 1949fe903c Fix issue with lost task names 2010-08-21 22:52:18 -04:00
Mark Harrah 79103857c9 add SingleProject
a small trait to use for declaring single projects
using the standard task system
2010-08-14 10:52:46 -04:00
Mark Harrah 23bf3e55c7 merge two Tasked methods
In practice, the returned task is coupled to the conversion function,
so task and taskToNode were merged.  Also, renamed 'task' to 'act'.
2010-08-14 09:50:22 -04:00
Mark Harrah e750de2c3b allow *, ** in paths and handle absolute paths for 'load' and related commands 2010-08-10 09:20:11 -04:00
Mark Harrah 1ee5af39d6 allow discovery on both modules/classes, not just one or the other 2010-08-10 09:19:37 -04:00
Mark Harrah fe224479bc small cleanups to exception handling 2010-08-10 08:46:27 -04:00
Mark Harrah 39839f2c16 change from user commands extending Command directly to providing CommandDefinitions instance that creates commands 2010-08-10 08:44:34 -04:00
Mark Harrah 23bda55124 compile, discover, append commands 2010-08-04 19:51:12 -04:00
Mark Harrah 250a287079 fix source selection for load -project 2010-08-04 19:42:32 -04:00
Mark Harrah 96df10aad2 ignore empty commands 2010-08-04 19:41:46 -04:00
Mark Harrah 758380979e command error handling 2010-08-04 19:41:11 -04:00
Mark Harrah 7390876874 remove unnecessary default arguments from Build 2010-08-04 19:19:15 -04:00
Mark Harrah 767a1e47c1 adding more commands 2010-07-27 23:01:45 -04:00
Mark Harrah 9c2268e919 task running command 2010-07-19 12:38:42 -04:00
Mark Harrah 1169493115 native type should be T => Option[O] not PartialFunction[T, O] 2010-07-19 12:31:22 -04:00
Mark Harrah d7b66458f2 first shot at general command/definition model 2010-07-17 12:07:41 -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 37185c0fb6 discovery, persistence, frontend, and various fixes to incremental 2010-07-02 06:57:03 -04:00
Mark Harrah 9ad9df42b6 first part of semantic, multi-stage incremental compilation 2010-06-27 09:18:35 -04:00
Mark Harrah e1e60fe859 preserve compiler interface classes across invocations 2010-03-13 13:25:08 -05:00
Mark Harrah a33223a02c legal cleanup 2010-02-07 23:45:19 -05:00
Mark Harrah 4a566eb581 fix project creation prompt and launcher cache 2010-01-27 18:22:42 -05:00
Mark Harrah 5f9f3729d1 work on source api parts 2010-01-22 20:17:49 -05:00
Mark Harrah 6f6b795b39 * Basic API serialization
* Fixes to API extraction and equality checking
 * Reworked tracking
 * New compile infrastructure based on API changes
 * Example application for testing
2010-01-05 19:50:43 -05:00
Mark Harrah 33434bc82b Cut size of final jar by 300k. 2009-10-17 22:40:02 -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
Mark Harrah 76e81409df Updates to Ivy component and getting launcher component working. 2009-09-08 23:13:30 -04:00