-
Notifications
You must be signed in to change notification settings - Fork 202
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #582 from scalacenter/topic/prepare-rc1
Add release notes for RC1 and use `-O` to mean optimize
- Loading branch information
Showing
3 changed files
with
180 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,27 +1,57 @@ | ||
package bloop.config | ||
|
||
import java.net.URLClassLoader | ||
|
||
import bloop.config.Config.File | ||
import org.junit.{Assert, Test} | ||
|
||
class JsonSpec { | ||
def parseConfig(config: File): Unit = { | ||
def parseConfig(jsonConfig: String): Config.File = { | ||
import io.circe.parser | ||
import ConfigEncoderDecoders._ | ||
val jsonConfig = toStr(config) | ||
val parsed = parser.parse(jsonConfig).getOrElse(sys.error("error parsing")) | ||
allDecoder.decodeJson(parsed) match { | ||
case Right(parsedConfig) => Assert.assertEquals(parsedConfig, config) | ||
case Right(parsedConfig) => parsedConfig | ||
case Left(failure) => throw failure | ||
} | ||
} | ||
|
||
def parseFile(config: File): Unit = { | ||
val jsonConfig = toStr(config) | ||
val parsedConfig = parseConfig(jsonConfig) | ||
Assert.assertEquals(parsedConfig, config) | ||
} | ||
|
||
@Test def testEmptyConfigJson(): Unit = { | ||
parseConfig(File.empty) | ||
parseFile(File.empty) | ||
} | ||
|
||
@Test def testSimpleConfigJson(): Unit = { | ||
parseConfig(File.dummyForTests) | ||
parseFile(File.dummyForTests) | ||
} | ||
|
||
@Test def testIdea(): Unit = { | ||
val jsonConfig = | ||
""" | ||
|{ | ||
| "version" : "1.0.0", | ||
| "project" : { | ||
| "name" : "", | ||
| "directory" : "", | ||
| "sources" : [ | ||
| ], | ||
| "dependencies" : [ | ||
| ], | ||
| "classpath" : [ | ||
| ], | ||
| "out" : "", | ||
| "classesDir" : "", | ||
| "hello": 1, | ||
| "iAmBinaryCompatible": [ | ||
| 1, 2, 3, 4 | ||
| ] | ||
| } | ||
|} | ||
""".stripMargin | ||
parseConfig(jsonConfig) | ||
() | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,141 @@ | ||
**This milestone of Bloop includes changes to the configuration files; you'll need to re-generate | ||
your configuration files if you used a previous version of Bloop. See the [installation | ||
instructions][installation instructions].** | ||
|
||
# Install the latest release :candy: | ||
|
||
If you're on Mac OS X, upgrade to the latest version with: | ||
|
||
```sh | ||
$ brew install scalacenter/bloop/bloop | ||
``` | ||
|
||
Otherwise, run: | ||
|
||
``` | ||
$ curl -L https://github.com/scalacenter/bloop/releases/download/v1.0.0-RC1/install.py | python | ||
``` | ||
|
||
Read the complete instructions in our [Installation page][installation instructions]. | ||
|
||
|
||
# Highlights :books: | ||
|
||
## [Final version of the configuration format][#529] (by [Jorge Vicente Cantero][@jvican]) | ||
|
||
Check the finished configuration file format JSON Schema [here](https://github.com/scalacenter/bloop/blob/c5e24b6616d3515e9685ffb145995051b8d8a744/website/static/bloop-schema.json#L1). | ||
|
||
The configuration file format is now considered frozen. All the release candidates will work | ||
with the new configuration file format, meaning that upgrades to 1.0.0-RC2 will not require a | ||
re-generation of the configuration file format. | ||
|
||
After 1.0.0, it will be our focus to make *forward and backwards* source compatible changes in the | ||
configuration file format so that users can painlessly upgrade to newer versions of Bloop without: | ||
|
||
1. The need to upgrade the bloop version in their build tool integrations. | ||
2. The need to upgrade the bloop server versions to use configuration files generated by newer build | ||
tool integrations. | ||
|
||
Any change to the configuration file format that breaks these invariants will go into a 2.x release. | ||
|
||
## Features :building_construction: | ||
|
||
### [Set the default main class](https://github.com/scalacenter/bloop/pull/551) | ||
|
||
You can now set the default main class for Scala.js or Scala Native projects in the configuration file format. | ||
|
||
### [Enable users to disable color](https://github.com/scalacenter/bloop/pull/555) (by [@shamsak58](https://github.com/shamsak58)) | ||
|
||
Disable colors in your logs by using the `--no-color` CLI flag or exporting the `NO_COLOR` | ||
environment variable. [@shamsak58](https://github.com/shamsak58) was also one of our contributors in | ||
the Scala Center spree. | ||
|
||
## Usability improvements | ||
|
||
### [Use `-O` as a shorthand syntax for `--optimize`](https://github.com/scalacenter/bloop/pull/582) (by [Jorge Vicente Cantero][@jvican]) | ||
|
||
Replace `-o` by `-O` as the default shorthand syntax for `--optimize` because the uppercase `O` is | ||
traditionally used to mean optimization in a large array of tools (for example, Clang or gcc). | ||
|
||
## Bugfixes :bug: | ||
|
||
### [Upgrade to the latest nailgun version](https://github.com/scalacenter/bloop/pull/555) (by [Paweł Bartkiewicz][@tues]) | ||
|
||
The latest nailgun version includes [Pawel's change](https://github.com/scalacenter/nailgun/pull/7) | ||
to flush output coming from the server ealier than before. This is important so that scripts that | ||
use pipes can see the data as soon as possible. | ||
|
||
### [Update systemd instructions](https://github.com/scalacenter/bloop/pull/560) (by [David Barri][@japgolly]) | ||
|
||
David has kindly updated our systemd instructions with a few improvements to make sure that the | ||
services are always up-to-date with the latest Bloop systemd services. | ||
|
||
### [Fix total count in test report](https://github.com/scalacenter/bloop/pull/557/files) (by [Samantha Li](https://github.com/samantha-li)) | ||
|
||
Samantha is a contributor that attended our [Scala Center | ||
spree](https://github.com/scalacenter/sprees/blob/6dc21c0081a39ba698f808deb68017e554e5a8c3/README.md) | ||
in New York. Samantha contributed a fix to the test reporter because the reporter was not correctly | ||
printing the total number of executed tests. | ||
|
||
### [Use Scala 2.10 in Maven plugin](https://github.com/scalacenter/bloop/pull/577/files) (by [Eugene Platonov](https://github.com/jozic)) | ||
|
||
The Maven plugin for Bloop now uses Scala 2.10 to avoid a conflict with the Scala 2.10 jars coming | ||
from the [`scala-maven-plugin`](https://github.com/davidB/scala-maven-plugin/) dependency. | ||
|
||
## Contributors :busts_in_silhouette: | ||
|
||
According to `git shortlog -sn --no-merges v1.0.0-M11..1.0.0-RC1`, 8 people contributed to this | ||
release: Jorge Vicente Cantero, Tim NIeradzik, David Barri, Eugene Platonov, Martin Duhem, Samantha | ||
Li, Sean Sullivan and shamsak58. | ||
|
||
Thank you to the community behind Bloop :sparkles:! | ||
|
||
[installation instructions]: https://scalacenter.github.io/bloop/docs/installation | ||
[configuration]: https://scalacenter.github.io/bloop/docs/configuration-format/ | ||
|
||
[#540]: https://github.com/scalacenter/bloop/pull/540 | ||
[#538]: https://github.com/scalacenter/bloop/pull/538 | ||
[#537]: https://github.com/scalacenter/bloop/pull/537 | ||
[#532]: https://github.com/scalacenter/bloop/pull/532 | ||
[#535]: https://github.com/scalacenter/bloop/pull/535 | ||
[#530]: https://github.com/scalacenter/bloop/pull/530 | ||
[#529]: https://github.com/scalacenter/bloop/pull/529 | ||
[#528]: https://github.com/scalacenter/bloop/pull/528 | ||
[#527]: https://github.com/scalacenter/bloop/pull/527 | ||
[#526]: https://github.com/scalacenter/bloop/pull/526 | ||
[#457]: https://github.com/scalacenter/bloop/pull/457 | ||
[#525]: https://github.com/scalacenter/bloop/pull/525 | ||
[#524]: https://github.com/scalacenter/bloop/pull/524 | ||
[#523]: https://github.com/scalacenter/bloop/pull/523 | ||
[#521]: https://github.com/scalacenter/bloop/pull/521 | ||
[#513]: https://github.com/scalacenter/bloop/pull/513 | ||
[#517]: https://github.com/scalacenter/bloop/pull/517 | ||
[#512]: https://github.com/scalacenter/bloop/pull/512 | ||
[#511]: https://github.com/scalacenter/bloop/pull/511 | ||
[#479]: https://github.com/scalacenter/bloop/pull/479 | ||
[#499]: https://github.com/scalacenter/bloop/pull/499 | ||
[#509]: https://github.com/scalacenter/bloop/pull/509 | ||
[#502]: https://github.com/scalacenter/bloop/pull/502 | ||
[#503]: https://github.com/scalacenter/bloop/pull/503 | ||
[#495]: https://github.com/scalacenter/bloop/pull/495 | ||
[#494]: https://github.com/scalacenter/bloop/pull/494 | ||
[#489]: https://github.com/scalacenter/bloop/pull/489 | ||
[#488]: https://github.com/scalacenter/bloop/pull/488 | ||
[#487]: https://github.com/scalacenter/bloop/pull/487 | ||
[#486]: https://github.com/scalacenter/bloop/pull/486 | ||
|
||
[scala-native-pr-1234]: https://github.com/scala-native/scala-native/pull/1234 | ||
[nuprocess]: https://github.com/brettwooldridge/NuProcess | ||
|
||
[@asamsig]: https://github.com/asamsig | ||
[@Baccata]: https://github.com/Baccata | ||
[@Duhemm]: https://github.com/Duhemm | ||
[@gabro]: https://github.com/gabro | ||
[@jvican]: https://github.com/jvican | ||
[@lefou]: https://github.com/lefou | ||
[@msvaljek]: https://github.com/msvaljek | ||
[@tindzk]: https://github.com/tindzk | ||
[@stephennancekivell]: https://github.com/stephennancekivell | ||
[@travisltq]: https://github.com/travisltq | ||
[@tues]: https://github.com/tues | ||
[@japgolly]: https://github.com/japgollly |