-
Notifications
You must be signed in to change notification settings - Fork 12
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
Scala 2.13 cross-build upgrade #112
Conversation
…ved deprecated stuff
47a52a1
to
8063a1d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for figuring out the cross build, good job!
Are all commands the same, does it automatically publish both versions?
scalanet/discovery/src/io/iohk/scalanet/discovery/ethereum/codecs/DefaultCodecs.scala
Outdated
Show resolved
Hide resolved
scalanet/discovery/src/io/iohk/scalanet/discovery/ethereum/v4/DiscoveryNetwork.scala
Outdated
Show resolved
Hide resolved
scalanet/discovery/src/io/iohk/scalanet/discovery/ethereum/v4/DiscoveryNetwork.scala
Outdated
Show resolved
Hide resolved
scalanet/src/io/iohk/scalanet/peergroup/dynamictls/DynamicTLSPeerGroupUtils.scala
Outdated
Show resolved
Hide resolved
scalanet/discovery/src/io/iohk/scalanet/discovery/ethereum/EthereumNodeRecord.scala
Outdated
Show resolved
Hide resolved
build.sc
Outdated
|
||
def scoverageVersion = "1.3.1" | ||
override def publishVersion = "0.5.0-SNAPSHOT" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
override def publishVersion = "0.5.0-SNAPSHOT" | |
override def publishVersion = "0.5.1-SNAPSHOT" |
It's a bit of a pain but once we start using a version in a project which uses Nix expressions we have to increment the version here otherwise all builds in those projects will constantly break down because of hash changes. Konrad is already migrating to 0.5.0 so we should bump it.
I guess this will be difficult to coordinate, so we should have explicit release process which removes the -SNAPSHOT
, and projects that do want to compile against SNAPSHOT should deal with the Nix expressions. @KonradStaniec how do you do releases?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
0.5.1 is now officially set 🥇
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@aakoshh to this time i have only done release one time so the process is a bit ad hoc and manual:
- create release branch
- create commit which removes
-SNAPHOST
version, and add necessary modification to build.sc (last time I needed to modify it add myslef dodevelopers
field to by able to do realease). In general we do not have mill version, and thigs change based on mill version, which breaks things pretty often. (maybe we should fix mill version to make it easier, wdyt ?) - tag this commit
- run mill incantation i.e the same thing which is running when merging to develop, but with
--relase
flag
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see we have a master
branch as well. Would it be enough to merge develop
into master
, update the version there, then tag it, and add a pipeline step that publishes with --release
if the tag looks like a semver? As it's described in the Gitflow workflow I'd only use release branches as a short lived branch where any remaining bugs are sorted out before it's merged into master
and develop
, then get rid of them. That would avoid changes lingering there forever, not making it into the next release, etc, and also any ambiguity of whether a specific version should be looked for as a branch or as a tag.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also used to have build.sbt
take the version
from the git tag, if it looked like a semver, so we don't have to remove the SNAPSHOT
and then add it back when the master
or the release
is merged back into develop
.
…r shared, fixed some build.sc issues
Thanks :) I hope my effort will make this project even better.
No, the pull request is still draft, hope I can finish the work in 2-3 days. |
scalanet/discovery/src/io/iohk/scalanet/discovery/ethereum/v4/DiscoveryNetwork.scala
Outdated
Show resolved
Hide resolved
scalanet/discovery/src/io/iohk/scalanet/discovery/util/package.scala
Outdated
Show resolved
Hide resolved
I wonder why we don't have any build show up in https://app.circleci.com/pipelines/github/input-output-hk/scalanet Can't remember if it happens for draft PRs. Maybe you have to be part of some group to have your commits trigger builds? |
Closed in favor of #113 |
Scala 2.13 port of
scalanet
is a blocker toMantis
backlog task.A library can be built now against both -
2.12
and2.13
targets.Further advice is needed regarding documentation and publishment.