Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for compiler plug-ins #9

Merged
merged 2 commits into from
Feb 1, 2019
Merged

Add support for compiler plug-ins #9

merged 2 commits into from
Feb 1, 2019

Conversation

tindzk
Copy link
Owner

@tindzk tindzk commented Jan 31, 2019

A new module setting compilerDeps was introduced in order to define
compiler plug-ins. The feature is compatible with Bloop and IDEA. In
detail, the following changes were made:

  • Build: Introduce module setting compilerDeps
  • ArtefactResolution: Resolve platform plug-ins in compilerDeps()
  • BuildConfig: Introduce functions platformVersion() and
    collectModuleDeps()
  • Bloop: Use absolute paths for classpath. If relative paths
    were used, classes of module dependencies would not be found.
  • Bloop: Drop redundant parameter buildPath on writeBloop()
  • Bloop: Move logic for resolving platform compiler plug-ins to
    util.ScalaCompiler
  • Idea: Create separate compiler configurations for modules,
    grouped by common compiler settings
  • ScalaCompiler: Inherit compilerDeps from dependent modules
  • Add example project based on Macro Paradise
  • Document new module setting

@tindzk tindzk force-pushed the feat/compiler-deps branch 2 times, most recently from 3b1b6bc to 5db9660 Compare February 1, 2019 09:16
A new module setting `compilerDeps` was introduced in order to define
compiler plug-ins. The feature is compatible with Bloop and IDEA. In
detail, the following changes were made:

- `Build`: Introduce module setting `compilerDeps`
- `ArtefactResolution`: Resolve platform plug-ins in `compilerDeps()`
- `BuildConfig`: Introduce functions `platformVersion()` and
  `collectModuleDeps()`
- `Bloop`: Use absolute paths for `classpath`. If relative paths
  were used, classes of module dependencies would not be found.
- `Bloop`: Drop redundant parameter `buildPath` on `writeBloop()`
- `Bloop`: Move logic for resolving platform compiler plug-ins to
  `util.ScalaCompiler`
- `Idea`: Create separate compiler configurations for modules,
  grouped by common compiler settings
- `ScalaCompiler`: Inherit `compilerDeps` from dependent modules
- Add example project based on Macro Paradise
- Document new module setting
@tindzk tindzk force-pushed the feat/compiler-deps branch 2 times, most recently from c0602f5 to 5c4e743 Compare February 1, 2019 10:15
It appears that sbt compiles sources in a different order in CI
builds which causes the implicit resolution to fail.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant