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

Expose artefact version tag in TOML build file #8

Merged
merged 3 commits into from
Jan 29, 2019

Conversation

tindzk
Copy link
Owner

@tindzk tindzk commented Jan 27, 2019

Currently, the version tag for dependencies in the TOML file always
encodes the platform name and binary Scala version. Internally,
Seed already has to handle different version tags. Expose this
functionality in scalaDep by introducing a fourth parameter. The
detailed changes for this are:

  • Build: Introduce VersionTag which was previously called
    PlatformSuffix and located in Artefact
  • Build: Make Dep a sealed trait with two children, JavaDep and
    ScalaDep, the only difference between those two being that
    ScalaDep has a VersionTag parameter. The version tag defaults
    to PlatformBinary in order to retain compatibility.
  • TomlUtils: Introduce codec for parsing VersionTag values
  • Artefact: Remove Versioned in favour of Dep
  • Artefact: Provide function for DepArtefact conversions
  • ArtefactResolution: Refactor functions for collecting
    dependencies

Currently, the version tag for dependencies in the TOML file always
encodes the platform name and binary Scala version. Internally,
Seed already has to handle different version tags. Expose this
functionality in `scalaDep` by introducing a fourth parameter. The
detailed changes for this are:

- `Build`: Introduce `VersionTag` which was previously called
  `PlatformSuffix` and located in `Artefact`
- `Build`: Make `Dep` a sealed trait with two children, `JavaDep` and
  `ScalaDep`, the only difference between those two being that
  `ScalaDep` has a `VersionTag` parameter. The version tag defaults
  to `PlatformBinary` in order to retain compatibility.
- `TomlUtils`: Introduce codec for parsing `VersionTag` values
- `Artefact`: Remove `Versioned` in favour of `Dep`
- `Artefact`: Provide function for `Dep` → `Artefact` conversions
- `ArtefactResolution`: Refactor functions for collecting
  dependencies
The .gitignore rule `test/` should not match `src/test/`. Resolve
this by restricting the rule only to `test` in the root directory.

Also, remove redundant `project/target/` rule.
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