Commit Graph

120 Commits

Author SHA1 Message Date
Mark Harrah ccf0508ce6 cleanup, small fixes 2010-11-24 14:08:20 -05:00
Mark Harrah 4fd7611074 add jline jar to classpath for :power mode 2010-11-24 14:05:26 -05:00
Mark Harrah 04e16ee86c api extraction fixes
get members of nested modules by pulling from moduleClass
ignore classes ending with LOCALCHILD, which only appear with separate compilation
2010-11-09 20:49:23 -05:00
Mark Harrah 89c557d0b5 temporary workaround for dangling type parameter references 2010-11-09 20:45:26 -05:00
Mark Harrah f788437164 fill out Visit some more 2010-10-30 17:52:18 -04:00
Mark Harrah 403fa42fa2 Type cache in API extraction for smaller cache size and faster I/O
manually implement Modifiers, use byte-size bit field
2010-10-30 17:46:56 -04:00
Mark Harrah 1795ddadb3 Format wrapper for timing read/writes 2010-10-30 15:53:32 -04:00
Mark Harrah aa90051338 go back to using basic Java serialization for API persistence
Java serialization is a bit slower (by 0.15 s for reading scalaz core),
  but it is simpler and more lightweight than using sbinary
still use sbinary Formats for other Analysis data structures
2010-10-30 15:49:18 -04:00
Mark Harrah 9135a26fb3 buffer before gzip when writing analysis data
there were already buffered streams between the gzip streams
  and the file streams; however, the performance improved after
  putting a buffer on top of the gzip streams
2010-10-30 15:46:44 -04:00
Mark Harrah b601804046 only write resulting Analysis back if compilation was performed 2010-10-30 15:44:36 -04:00
Mark Harrah 730b613007 make serializable abstract Lazy template 2010-10-30 11:56:40 -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 5ed8f3c042 improving incremental compilation
support lazy arguments in data type generator
SafeLazy implementation that explicitly clears the reference to the thunk
in API representation, drop synthetic modifier and merge deferred into abstract
handle cyclic structures in API generation, display, comparison, persistence
gzip compile cache file
bump to 2.8.1.RC3, project definition cleanup
fix main method detection to check for the right name
properly view inherited definitions
exclude constructors of ancestors
2010-10-22 21:55:16 -04:00
Artyom Olshevskiy 3c5d8ab29b support -J options when forking (#124) 2010-10-21 09:12:00 -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 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 4164ad3529 fix detecting existence of default arguments 2010-09-27 18:48:12 -04:00
Mark Harrah 3c4e5c4f54 fix product tracking and handling of removed sources 2010-09-27 18:47:11 -04:00
Mark Harrah 540ab7e470 show detected API when debugging incremental 2010-09-27 18:41:34 -04:00
Mark Harrah 484c2ca3a5 discovery convenience method 2010-09-27 18:40:57 -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 ce9db82771 fixes to API extraction phase
reverse the mapping of vals/vars to
  private[this] fields and accessors
merge annotations from related members
don't handle bean getters/setters specially
  because they are indistinguishable from
  user-defined members as far as I can tell
2010-09-17 22:14:48 -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 820a2b6851 remove discovery from Scala Analyzer phase 2010-09-17 21:38:03 -04:00
Mark Harrah ccf9714b4d fixes for API extraction phase
correct order of value parameters of a method
preserve source order of members
more information for unknown type error message
2010-09-17 21:30:47 -04:00
Mark Harrah 4db2c1df6a merge Pkg into Private
this better represents the original source
2010-09-17 21:29:29 -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 37594904f9 remove unused parameter and fix comment 2010-09-04 08:13:36 -04:00
Mark Harrah d3f02f7c80 control incremental compiler debugging with xsbt.inc.debug system property 2010-08-10 08:35:26 -04:00
Mark Harrah 767a1e47c1 adding more commands 2010-07-27 23:01:45 -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 f9a7a0a28e Set -> Seq for sources, classpaths 2010-06-27 09:16:53 -04:00
Mark Harrah b8c4c2b6da minor rearrangements of SameAPI 2010-06-21 21:23:42 -04:00
Mark Harrah 603d2be2e9 basic type parsing for testing/prototyping 2010-06-21 21:23:10 -04:00
Mark Harrah b2077ce60c more 2.8 updates, launcher compiles and runs with 2.8 2010-06-15 20:38:18 -04:00
Mark Harrah 5e4fe71560 fix typo 2010-06-07 10:51:02 -04:00
Mark Harrah 7be7cc34d5 fix a compile test 2010-05-13 18:32:49 -04:00
Mark Harrah 33e957a47c support warn fatal options in 2.8.0.RC2 2010-05-13 18:31:37 -04:00
Mark Harrah cc604b57a2 Sort input source files for consistency, addressing scalac's issues with source file ordering. 2010-05-10 18:50:59 -04:00
Mark Harrah 99edb01d8c improve error message when Scala instance is invalid 2010-05-05 08:34:34 -04:00
Mark Harrah 61fefc0f66 * move autoBootClasspath, compilerOnClasspath options into ClasspathOptions data structure and add 'extra' option
* put ScalaInstance.extraJars on classpath for ComponentCompiler
2010-05-05 08:30:03 -04:00
Mark Harrah a2f96255eb consoleOptions 2010-04-25 13:18:36 -04:00
Mark Harrah 5b833a6b72 * Seth's patch for running javac in the same jvm
* Fixed LoggerWriter, added test
 * Added it test
2010-04-05 18:47:06 -04:00
Mark Harrah 589904a6d0 support precompiled components 2010-04-01 20:19:29 -04:00
Mark Harrah 27922a3256 In component compiler, only consider files from jars with sources. This avoids including dependencies in generated jars. 2010-03-31 22:33:42 -04:00