aboutsummaryrefslogtreecommitdiff
path: root/test/test.scala
Commit message (Collapse)AuthorAgeFilesLines
* add basic support for maven version rangesChristopher Vogt2017-06-221-0/+29
|
* Merge remote-tracking branch 'origin/master' into kind-projector-pluginChristopher Vogt2017-06-141-2/+15
|\
| * Detect missing shellcheck and warn user during testmegri2017-06-131-2/+9
| |
| * Disambiguate old-style/new-style macro compiler plugin buildsMartin Egri2017-06-131-1/+1
| |
| * Rudimentary Macroparadise plugin, example and testmegri2017-06-131-0/+6
| |
* | added an exampleEric Torreborre2017-06-141-0/+5
|/
* Cleanup Scalastyle pluginChristopher Vogt2017-04-041-0/+7
|
* Add Scalastyle pluginIgor Tsalko2017-04-041-1/+1
|
* scalatest plugin now does not need import anymoreChristopher Vogt2017-04-021-1/+0
|
* add support for forking the jvm process when invoking a main classChristopher Vogt2017-03-281-1/+2
| | | | | | | | and add example of using akka-http that doesn’t work without this. Also add functionality to emulate inheritIO when running via nailgun process. Only caveat right now: user has to press ENTER to terminate the input strea.
* add example showing how to use scalafix to produce cross buildsChristopher Vogt2017-03-281-0/+8
|
* add (currently non-working) example how to use it for built-in rewritesChristopher Vogt2017-03-281-0/+22
|
* rename Scalafix plugin in perparation for mirror based oneChristopher Vogt2017-03-281-4/+4
|
* test for MavenDependency equalityChristopher Vogt2017-03-271-0/+7
|
* allow running tests in the same process, forked or forked in direct modeChristopher Vogt2017-03-271-43/+71
|
* Merge pull request #452 from cvogt/scalapb-pluginJan Christopher Vogt2017-03-241-0/+7
|\ | | | | ScalaPB plugin
| * clean scalafix test before running, so it sure runsChristopher Vogt2017-03-241-0/+1
| |
| * ScalaPB pluginChristopher Vogt2017-03-241-0/+6
| |
* | Example for providing cbt's classloader to AkkaChristopher Vogt2017-03-231-0/+1
|/
* Unify reflectively loading builds from directories.Christopher Vogt2017-03-201-1/+1
| | | | | | | | | | THis is mostly cleanup and a little bit feature. Before it was done partially in 3 places, BuildBuild, loadRoot and GitDependency. Now DirectoryDependencies also support referencing sub-builds. Also introduce scalariform for the first few files of cbt's core code :).
* make sure scalafix test cleans up after itselfChristopher Vogt2017-03-201-1/+4
|
* Merge pull request #443 from darthorimar/scalafix-pluginJan Christopher Vogt2017-03-181-0/+15
|\ | | | | Scalafix plugin
| * Add scalafix plugin with example project and testsIlya Kirillov2017-03-191-0/+15
| |
* | Replace dependencies feature for conflict resolutionChristopher Vogt2017-03-171-0/+2
|/
* fix file watching for realChristopher Vogt2017-03-121-1/+1
| | | | | | | last file watching update didn’t work well enough. This now - rips out barbary watch service as it seems buggy crashing the jvm - make cbt exclusively write files to watch to a file - uses fswatch instead watching all files in that file
* force successful shellcheck linting for launcher scriptChristopher Vogt2017-03-121-1/+11
|
* revamp loop featureChristopher Vogt2017-03-121-1/+2
| | | | | | | | | | | | | | | | | | | | | now CBT and builds pass their file names to the current build via the context. The build then simply blocks until any file changes. Then it returns with a special exit code, which the bash script picks up and restarts CBT. Thats works well for looping over project files. It works less well for looping over builds and CBT itself. For this a build has to success once, so that the .cbt-loop.tmp file exists. Then looping works for cbt and builds, but the file list is not updated in case of compile errors, etc. Fixes - https://github.com/cvogt/cbt/issues/406 - https://github.com/cvogt/cbt/issues/405 - https://github.com/cvogt/cbt/issues/202 - https://github.com/cvogt/cbt/issues/50 - https://github.com/cvogt/cbt/issues/22 We should improve for 1.0 in https://github.com/cvogt/cbt/issues/419 to handle looping over build files and cbt itself smarter.
* ability to only enable slow tests on demand (e.g. on circle)Christopher Vogt2017-03-111-12/+32
|
* no hashes on bintray for this and mavenCentral depsChristopher Vogt2017-03-081-16/+11
|
* do not print () when evalingChristopher Vogt2017-03-041-1/+1
|
* jar / doc refactorChristopher Vogt2017-02-281-1/+1
| | | | | | - split out manifest and scaladoc logic - refactor lib calls from inheritance layer - only strip project directory prefix from individually specified files
* fix results of Seq of builds not being printedChristopher Vogt2017-02-271-1/+1
|
* turn `test` into a subproject for easy access to test’s tasksChristopher Vogt2017-02-271-1/+1
|
* cross build testChristopher Vogt2017-02-221-0/+5
|
* refactor scalajs to make use of nested builds for scopingChristopher Vogt2017-02-221-2/+2
|
* simplify and add features to reflective task lookup codeChristopher Vogt2017-02-181-5/+5
| | | | | | | | | | | | | Code is much simpler now. Now cbt sub-tasks are separated by . instead of spaces to unify the syntax with method calls Scala. Also the reflective code now works not only on builds but any kind of values, so zero argument members of any types of return values can simply be called. This is also a large step towards detangling the reflective lookup from cbt and turning it into a fully fletched shell to Scala "native" call solution.
* add package to generated Build in build.scala and in-package discoveryChristopher Vogt2017-02-151-6/+13
| | | | | | | | | | | This should allow for build to add other builds to their dependencies and interact with them in a type-safe way. And ever regardless it seems like good practice to never have the same class existing in the same package or the top-level package even if they don’t end up on the same classpath. This might also help make stack traces easier to understand. Also improve error messages for mistakes with the build class, e.g. constructor, super classes, etc.
* add package to generated Main.scala to avoid classpath weirdnessesChristopher Vogt2017-02-151-0/+2
| | | | | caused by multiple root package Main classes from different subproject or test projects ending up on the same classpath
* add typed constants for build directory and file and use them everywhereChristopher Vogt2017-02-151-3/+3
|
* implicitly pass classloader, might make code easierChristopher Vogt2017-02-141-0/+1
| | | | | and prepares for allowing `run` and `runFlat` at Dependency instead of Build level
* multi-project build example using a single build fileChristopher Vogt2017-02-131-0/+1
|
* rename folder of one example as preparation for creating another oneChristopher Vogt2017-02-131-1/+1
| | | | showing how to do the same in a single build
* support for flat classloader and enhanced resources exampleChristopher Vogt2017-02-131-0/+12
|
* idempotent change propagationChristopher Vogt2017-02-091-2/+2
| | | | | | using lastModified instead of a non-idempotent needsUpdate flag this fixes a bug where dependees would not be rebuilt if cbt exited or was killed after dependencies were already rebuilt.
* memoize task results across classes within a single runChristopher Vogt2017-02-091-2/+3
|
* replace flawed concurrent hashmap cache with consistent replacementChristopher Vogt2017-02-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | | The concurrent hashmap approach to classloader caching was flawed. Assume you have two concurrently running builds A and B and projects P2 and P3 depending on project P1. And assume a time sequence where A compiles P1, then compiles P2, then P1’s sources change, then B compiles P1, then A compiles P3. At the end P2 and P3 will have different versions of P1 as their parent classloaders. This is inconsistent. The easiest way to work around this is making sure only one thread is changing the classloader cache during it’s entire run. This would mean either no concurrency or what we have done here, which is letting threads work on a copy of the cache and replace the original cache in the end using an atomic operation. This means the thread that finishes last wins, but for caching that’s fine. Worst case some things aren’t cached in a concurrent execution. This change also means that we don’t need concurrent hashmaps for the classloader cache anymore since no two theads will access the same hashmap. We still need a concurrent hashmap for the class caches inside of the classloaders as multiple threads can access the same classloaders.
* Merge separate hashmaps for persistent cache into oneChristopher Vogt2017-02-011-2/+1
| | | | | | | This isn’t type-safe, but re-using that same hashmap for both keys and classloaders allows to reduce the number of members in Context. Also we can re-use the same hashMap for other things as well in the coming commits, e.g. timestamps.
* fix wrong assumption: stderr contains compiler info outputChristopher Vogt2016-11-091-20/+10
| | | | also improve failure output
* Remove version from context, we can now use dynamic overridesChristopher Vogt2016-11-091-1/+0
|
* Add support for dynamic re-configuration.Christopher Vogt2016-11-081-2/+73
| | | | | The exact precedence rule of override code vs original code may still need to be tweaked as we go along.