Commit Graph

3667 Commits

Author SHA1 Message Date
Eugene Yokota 66ada09f06 0.13.5-M1 2014-03-25 01:49:33 -04:00
Eugene Yokota 3f2f12f5bb Fix PluginsTest 2014-03-25 01:49:08 -04:00
Eugene Yokota 575e657962 Default AutoPlugin to an empty root plugin 2014-03-25 00:20:11 -04:00
eugene yokota e4221d1e27 Merge pull request #1204 from eed3si9n/topic/valAutoImport
Unifies AutoPlugin and AutoImport. Fixes #1188
2014-03-24 23:17:04 -04:00
Eugene Yokota ff77d0b0f2 Remove def autoImport: Any from AutoPlugin. 2014-03-24 23:04:22 -04:00
Eugene Yokota cc80d216ab Adjusting to 0.13 changes 2014-03-24 20:03:01 -04:00
Eugene Yokota 2c654b2d90 Unifies AutoPlugin and AutoImport. Fixes #1188
* AutoImport trait is subsumed by def autoImport method under
AutoPlugin class.
* When def autoImport is overridden by a lazy val or a val, *.sbt
automatically imports autoImport._.
2014-03-24 19:10:35 -04:00
eugene yokota 4315049337 Merge pull request #1203 from eed3si9n/topic/requiredAutoPlugin
Unifies AutoPlugin and RootPlugin
2014-03-24 19:02:00 -04:00
Eugene Yokota d697c10950 Hide unary_! operator from API 2014-03-24 18:59:14 -04:00
Josh Suereth d03e2380b2 Merge pull request #1197 from sandreev/t_1196_empty_tests
fixes #1196
2014-03-24 16:19:11 -04:00
Josh Suereth 7a65ceca31 Merge pull request #1205 from eed3si9n/topic/pomparser
CustomPomParser compatibility with 0.13.1. #1191 #1192
2014-03-24 13:06:04 -04:00
Eugene Yokota 5b1c33dd6e Added conflict report and unit tests 2014-03-22 02:47:11 -04:00
Eugene Yokota f43daecee3 Use tabs 2014-03-22 02:46:17 -04:00
Eugene Yokota f58fbb8d7d CustomPomParser compatibility with 0.13.1. #1191 #1192 2014-03-21 23:53:06 -04:00
Eugene Yokota d692191c24 More plugins conflict test 2014-03-21 22:45:32 -04:00
eugene yokota def8fdc439 Merge pull request #1192 from dansanduleac/i1191
Rename sbtTransformHash -> e:sbtTransformHash
2014-03-21 18:09:01 -04:00
Eugene Yokota 49faf8a752 Removes Changes entry on AutoPlugin and AddSettings 2014-03-21 18:05:15 -04:00
eugene yokota 9533887797 Merge pull request #1163 from Duhemm/macro-arg-deps
Record dependencies on macro arguments
2014-03-21 17:58:06 -04:00
Eugene Yokota 7f8d4ba8bf Merging AutoPlugin work from "0.13.2" branch 2014-03-21 13:58:08 -04:00
Eugene Yokota e95935a7db Adds conflict check at the end to enforce exclusion requirements. 2014-03-21 01:06:00 -04:00
Eugene Yokota c7dc499fe4 Updated comments. Typo fix per @jozic 2014-03-20 21:47:49 -04:00
Sergey Andreev 910d39f3a9 fixes #1196 2014-03-20 17:46:42 -07:00
Martin Duhem 04e226bd59 Add scripted test for nested macros
Add test analogous to source-dependencies/macro-arg-dep
but check if dependencies of nested macro applications are handled
properly. Nested macro applications are tricky because we have to look
into original (before macro expansion) trees recursively. This test verifies
that.
2014-03-20 19:26:22 +01:00
Martin Duhem 133ba07eb8 Unit test for dependency extraction from macro applications
Add a unit test which checks whether we capture dependencies introduced
by arguments to macros. Those dependencies are special because macros
get expanded during type checking and arguments to macros are not visible
during regular tree walk.
2014-03-20 19:13:20 +01:00
Eugene Yokota f8bedf4012 Unifies AutoPlugin and RootPlugin
* Separates def select into def trigger and def requires.
* Setting trigger = noTrigger and requires = empty makes a plugin a
root.
2014-03-20 07:08:33 -04:00
Martin Duhem b21e475364 Improve unit testing compiler
It was not possible to make `ScalaCompilerForUnitTesting` compile several
files in different runs, which means that it was not possible to compile
and use a macro in a test case, since macros cannot be used in the same
compilation run that defines them.

This commit allows a test case to provide multiple grouped snippets of
code that will be compiled in separate runs.

For instance :
    List(Map(<snippet A>, <snippet B>), Map(<snippet C>))

Here, <snippet A> and <snippet B> will be compiled together, and then
<snippet C> will be compiled, and will be able to use symbols defined
in <snippet A> or <snippet B>.
2014-03-19 22:21:29 +01:00
Martin Duhem 70fecfe767 Record dependencies on macro arguments
Macros take arguments as trees and return some other trees; both of
them have dependencies but we see trees only after expansion and
recorded only those dependencies.

This commit solves this problem by looking into the attachments of the
trees that are supposed to contain originals of macro expansions and
recording dependencies of the macro before its expansion.
2014-03-19 22:14:58 +01:00
Grzegorz Kossakowski 2a98355c64 Test for missing dependencies of macro arguments
Add a test which shows the problem of not properly capturing dependencies
of macro arguments.
2014-03-19 22:14:58 +01:00
Dan Sanduleac 6588ac1b62 sbtTransformHash -> e:sbtTransformHash 2014-03-19 11:08:17 +00:00
Josh Suereth fd860e0d3a Merge pull request #1189 from jroper/project-add-plugins
Allow end users to add Plugins, not just AutoPlugins
2014-03-19 00:12:00 -04:00
James Roper 9f20f04e16 Allow end users to add Plugins, not just AutoPlugins
This allows plugins to define a Plugins instance that captures both the
plugin and its required dependencies.

Also fixed up some scaladocs that were wrong.
2014-03-18 19:49:38 +11:00
Havoc Pennington a006235644 Merge pull request #1177 from sbt/wip/issue-1176
When fragmenting Defaults, we mixed back settings in the wrong order.
2014-03-12 09:13:58 -04:00
Josh Suereth 7c15eb01f3 When fragmenting Defaults, we mixed back settings in the wrong order.
* packageArtifacts is not cleared by defautlSettings
* Added a test for this behavior (this one test should ensure the ordering for most settings is correct.)

Fixes #1176
2014-03-12 08:50:37 -04:00
Havoc Pennington ad0ca70757 Merge pull request #1174 from sbt/wip/release-notes-0.13.2
Add changes documentation for 0.13.1->0.13.2
2014-03-11 13:44:18 -04:00
Josh Suereth fbffdb6551 Add changes documentation for 0.13.1->0.13.2 2014-03-11 13:20:38 -04:00
Havoc Pennington ae874ab0e1 Merge pull request #1173 from sbt/wip/more-architecture
Add introduction to the setting system
2014-03-11 12:52:13 -04:00
Josh Suereth 152e04bc05 Fix spelling issues in architecture document. 2014-03-11 12:47:42 -04:00
Josh Suereth ee6b674966 Add introduction to the setting system. 2014-03-11 11:45:00 -04:00
Josh Suereth 905028a6ae Bump version for further 0.13.x development. 2014-03-11 10:25:18 -04:00
Josh Suereth e30bc1b72f Merge pull request #1170 from sbt/wip/missing-test-fixes
Fixes missing tests from autoplugins feature.
2014-03-11 08:30:14 -04:00
Josh Suereth dc76a8feb3 Fixes missing tests from autoplugins feature.
For some reason, autoSettings fixes for tests disappeared.

* Fixes setting orderings now that defaults come from autoPlugins
* Removes autoPlugin settings where expected.
2014-03-10 23:49:09 -04:00
Josh Suereth c2f61460c6 Merge pull request #1169 from sbt/wip/fix-override-default
Fix overwrite default to true in deprecated method calls.
2014-03-10 17:17:49 -04:00
Havoc Pennington 37cc659518 Merge pull request #1165 from sbt/wip/auto-plugins-defaults
Use AutoPlugins for default project settings.
2014-03-10 17:11:07 -04:00
Josh Suereth 7413fbe9c0 Doc fix ups from review.
* Fix plugin mispellings
* Clarify `select` behavior.
2014-03-10 16:12:05 -04:00
Josh Suereth af25df1777 Fix @retronym's comments
* Fill out more details in archiecture section.
* Leave sections blank we don't have time to write.
* Consolidate on `Sub project` vernacular instead of module.
* Add a few examples to make statements concrete.
2014-03-10 14:22:56 -04:00
Josh Suereth 041bc4bf01 Add documentation for AddSettigns and load ordering.
* Add Architecture setting.
* Cover how settings are loaded and ordered
* Show basic controls on setting ordreing.
2014-03-10 12:45:35 -04:00
Josh Suereth 893794a8ba Fix overwrite default to true in deprecated method calls.
We cannot break existing users, but we can deprecate the improper usage.
This is part #2 of the workaround for #1156.  This ensures that
users will stop using the legacy methods after 0.13.2 is out.
2014-03-10 10:44:38 -04:00
Josh Suereth 548b38c7f8 Add note about not exposing fine-grained autoplugin inclusion controlls.
AddSettings should only expose coarse-grained features of AutoPlugins
or else the Logic we use to ensure safe addition completely breaks
down.  Leaving it in the code as an escape hatch if we get desparate,
but we need an alternative for controlling ordering later.
2014-03-10 09:45:25 -04:00
Josh Suereth ea8c0b32a7 Update documentation for AutoPlugins.
* Add notes about AutoPlugins vs. RootPlugins in Plugins section
* Modify best practices section to recomend using AutoPlugins.
* Modify Using-Plugins section in getting started to denote
  auto plugins.
2014-03-10 09:45:25 -04:00
Josh Suereth 01bb7ce2fd Remove defaultSettings usage from the docs.
Given the addition/promotion of AutoPlugins, remove
the references to the previously necessary
Defaults.defaultSettings method.
2014-03-10 09:45:25 -04:00