Skip to content

Conversation

SemyonSinchenko
Copy link
Collaborator

  • drop sbt-spark-packages
  • rewrite build.sbt in the modern way
  • update plugins

Close #485

+ drop sbt-spark-packages
+ rewrite build.sbt in the modern way
+ update plugins
@SemyonSinchenko
Copy link
Collaborator Author

@rjurney Could you please approve the run of CI? Everything should work in theory, so I would like to see. Thanks!

ThisBuild / scalaVersion := scalaVer
ThisBuild / organization := "org.graphframes"

lazy val root = (project in file("."))
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I need this for adding Spark Connect support: connect 100% should be a separate subproject and it will be much easier to write (project in file("connect")).dependsOn(root) to inherit most of the settings and use graphframes (core) as a dependency. As a bonus it is more modern sbt syntax that is recommended by their documentation (instead of implicit project in root)

@SemyonSinchenko SemyonSinchenko changed the title [WIP DO NOT MERGE] chore: drop sbt-spark-packages && update plugins chore: drop sbt-spark-packages && update plugins Feb 1, 2025
@rjurney
Copy link
Collaborator

rjurney commented Feb 1, 2025

Calling on @SauronShepherd, @rxin @WeichenXu123, @mengxr, @bjornjorgensen and others better at Scala builds than me to review this. Would be great if we can be timely to encourage @SemyonSinchenko in his new contribution :)

@bjornjorgensen
Copy link
Contributor

SemyonSinchenko is a well know person in the spark community..

run the tests, and see whats it say..

@rjurney
Copy link
Collaborator

rjurney commented Feb 1, 2025

@SemyonSinchenko approved, thanks for getting involved!

@bjornjorgensen
Copy link
Contributor

@SemyonSinchenko lazy val sparkVer = sys.props.getOrElse("spark.version", "3.5.3")

we are running 3.5.4

- spark-version: 3.5.4

@SemyonSinchenko
Copy link
Collaborator Author

It looks like I finally found the subset of plugin versions that works:

Everything else should work exactly like it was before. From now we have 1.9.3 sbt that simplify the subprojects creation.

@rjurney Could you please approve the run of CI from the latest commit?
@bjornjorgensen I added your suggestion, could you please take another look?

NEW CHANGES:

  • Scala version in CI is 2.12.18
  • Assembly plugin was added
  • Some version fixes
  • Added a workaround to fix dependencies resolution in CI

P.S. I have no idea why scoverage 2.0.11 did not work but 2.0.10 works.

@rjurney
Copy link
Collaborator

rjurney commented Feb 3, 2025

@rxin how can we make it so @SemyonSinchenko doesn't need my approval to run CI? I am not sure.

@SemyonSinchenko
Copy link
Collaborator Author

@rxin how can we make it so @SemyonSinchenko doesn't need my approval to run CI? I am not sure.

By default it won't be necessary after the first contribution.

@bjornjorgensen
Copy link
Contributor

I'm not a Scala developer. But this looks like a good start to upgrade this project.

we should have done something with

credentials += Credentials(Path.userHome / ".ivy2" / ".sbtcredentials")

it also gives some messages in the build and testing..

like
[warn] Credentials file /home/runner/.ivy2/.sbtcredentials does not exist
[warn] Credentials file /home/runner/.ivy2/.sbtcredentials does not exist
[warn] Credentials file /home/runner/.ivy2/.sbtcredentials does not exist

I think you can merge it, its a grate improvement.

@rjurney
Copy link
Collaborator

rjurney commented Feb 3, 2025

@SemyonSinchenko is this ready to merge? If so I will go for it!

@rjurney rjurney requested review from rjurney and WeichenXu123 and removed request for bjornjorgensen February 3, 2025 23:49
@rjurney
Copy link
Collaborator

rjurney commented Feb 4, 2025

@SauronShepherd can you plz review?

@SauronShepherd
Copy link
Contributor

Wow, it looks like you had a great time!

There are a lot of changes, but I assume they were all necessary. It looks fine to me, though I'm not an SBT expert.

@rjurney
Copy link
Collaborator

rjurney commented Feb 4, 2025

Okay lemme test real quick and I'll merge!

Copy link
Collaborator

@rjurney rjurney left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Running ze tests...

# Looking good...
build/sbt clean compile package test

# It assembeles...
build/sbt assembly

Okay, merging...

@rjurney rjurney merged commit ed828e3 into graphframes:master Feb 4, 2025
3 checks passed
@SemyonSinchenko SemyonSinchenko deleted the 485-update-sbt branch April 6, 2025 09:14
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.

Update sbt and replace sbt-spark-package plugin
4 participants