Commit Graph

100 Commits

Author SHA1 Message Date
Mark Harrah 71f12fbcdb 2.9 compatibility for incremental compilation modules 2012-12-11 14:41:22 -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 1c22478edc task setting macros for :=, +=, ++=
also, bump to 2.10.0-M6
2012-11-17 20:19:24 -05:00
Mark Harrah 18a03f0e25 API extraction: handle any type that is annotated, not just the spec'd simple type. Fixes #559. 2012-10-05 09:06:35 -04:00
Mark Harrah 864580aae1 approximate type parameters and references by name
not as accurate, but simpler.
2012-05-12 23:12:29 -04:00
Mark Harrah ddcf885fb9 fresh scope for each inherited definition when tagging type variables 2012-04-28 18:58:52 -04:00
Indrajit Raychaudhuri 89678735e1 Improved implementation for `parents` accumulation for java classes
It now considers `ParameterizedType` and includes all interfaces recursively
2012-03-27 01:40:10 +05:30
Indrajit Raychaudhuri 2525eeb7e6 Ensure that `parents` for java classes have all the ancestors
Currently, only immediate parents classes are picked up for java classes.
This could be problematic, for example, in detecting Fingerprint for test frameworks.
So far, Scala types are not affected –– all the ancestors are available for them.
2012-03-25 15:44:16 +05:30
Jason Zaugg 17eeec6876 Move condition out of SameAPI.
It was tenuously relying on the caller short-circuiting with `shortcutSameSource`.
2012-03-04 21:28:01 +01:00
Jason Zaugg 72e41c3329 whitespace 2012-03-04 17:41:39 +01:00
Jason Zaugg 067917a0fb Macro def aware recompilation.
- Read macro modifier from method definition.
 - Always recompile downstream files after a file containing macro defs is recompiled.
 - Source is extended with a hasMacro attribute. Mark suggests that this might be better
   tracked in Relations, but I'm not sure how to make that change.
2012-03-04 17:35:51 +01:00
Thomas Koch 9e8c441159 missing(?) imports, fix emacs syntax highlighting
While trying to build sbt without sbt, I got compile errors claiming that
util.Random would not be a member of util. The added import statements fixed
this.

The inserted spaces in the comments in project/Sbt.scala are a work around in a
bug in emacs scala syntax highlighting.
2011-12-14 14:35:17 +01:00
Mark Harrah 82ad44a701 preserve API information needed for detecting annotations on defs. fixes #232 2011-10-19 22:23:47 -04:00
Mark Harrah f70b68d3b4 fix symmetric hashing 2011-10-09 21:48:15 -04:00
Mark Harrah c74ecb55e9 finalize hash 2011-10-05 21:04:34 -04:00
Mark Harrah e4848efcc8 store hashes of API instead of full API. fixes #21 2011-10-05 18:09:27 -04:00
Paul Phillips 528b4ed342 Limit unnecessary Array allocations from ClassToAPI.
+----------------------------------------------------------------------------+----------------+
|                                    Name                                    |  Shallow Size  |
+----------------------------------------------------------------------------+----------------+
|  +---1571683 zero length arrays xsbti.api.Annotation[]                     |    25,146,928  |
|  |                                                                         |                |
|  +---1373273 zero length arrays xsbti.api.TypeParameter[]                  |    21,972,368  |
|  |                                                                         |                |
|  +---305126 zero length arrays xsbti.api.ParameterList[]                   |     4,882,016  |
|  |                                                                         |                |
|  +---295294 zero length arrays xsbti.api.MethodParameter[]                 |     4,724,704  |
|  |                                                                         |                |
2011-09-07 13:09:53 -07:00
Mark Harrah c0a21c1524 implement shortcut for API equality checking, fixes #18 2011-06-01 02:19:46 -04:00
Mark Harrah 58d9f3b0a0 fix structural type comparison 2011-05-25 22:44:22 -04:00
Mark Harrah 24dfb69400 an annotation can reference a non-simple type, fixes #24 2011-05-23 18:40:03 -04:00
Mark Harrah 1d36be9b00 properly handle nested class cycles in Java sources, fixes #22 2011-05-21 21:16:18 -04:00
Mark Harrah 9dec02ee51 fix analysis of Java sources being overwritten 2011-04-26 21:19:56 -04:00
Mark Harrah d719c7d6a9 add missing debug case for SameAPI 2011-03-11 16:55:23 -05:00
Mark Harrah 0935fba0b5 better cycle handling in SameAPI 2011-03-08 17:51:14 -05:00
Mark Harrah 9db4afd222 bring more integration tests back online with associated fixes 2011-02-23 19:19:44 -05:00
Mark Harrah cc06667f3e handle constant types 2011-02-14 18:59:54 -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 730b613007 make serializable abstract Lazy template 2010-10-30 11:56:40 -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
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 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 767a1e47c1 adding more commands 2010-07-27 23:01:45 -04:00
Mark Harrah 37185c0fb6 discovery, persistence, frontend, and various fixes to incremental 2010-07-02 06:57:03 -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 a33223a02c legal cleanup 2010-02-07 23:45:19 -05:00
Mark Harrah 80780d9bec comments and reorganization in SameAPI/ShowAPI 2010-01-24 00:12:47 -05:00
Mark Harrah af288bb199 API: base types with applied type parameters
Compile task: fix detection of classpath changes
Aggressive compiler seems to work on scalaz now
2010-01-23 11:52:39 -05:00
Mark Harrah 5f9f3729d1 work on source api parts 2010-01-22 20:17:49 -05:00
Mark Harrah 1673a2a3e2 Remove use of reflection for compatibility in Analyzer 2010-01-09 18:22:58 -05:00
Mark Harrah 8f0371d21a Compare polymorphic types 2010-01-07 21:48:56 -05:00
Mark Harrah bf5dbadc53 Handle changes to Source serialization format by returning empty Source 2010-01-07 21:39:16 -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 833688cdd9 API equality testing. Still includes debugging statements. 2009-12-31 18:56:37 -05:00
Mark Harrah 2977fd4131 Source API extractor 2009-11-21 15:53:04 -05:00
Mark Harrah 74202668c6 Datatype generating subproject, to be used to represent public API of sources 2009-11-21 15:52:44 -05:00