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

Minor Upgrades for Backend Dependencies #7782

Merged
merged 8 commits into from
May 13, 2024
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.unreleased.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ For upgrade instructions, please check the [migration guide](MIGRATIONS.released

### Added
- Within the proofreading tool, the user can now interact with the super voxels of a mesh in the 3D viewport. For example, this allows to merge or cut super voxels from another. As before, the proofreading tool requires an agglomerate file. [#7742](https://github.com/scalableminds/webknossos/pull/7742)
- Updated several backend dependencies for optimized stability and performance. [#7782](https://github.com/scalableminds/webknossos/pull/7782)

### Changed
- Non-admin or -manager users can no longer start long-running jobs that create datasets. This includes annotation materialization and AI inferrals. [#7753](https://github.com/scalableminds/webknossos/pull/7753)
Expand Down
32 changes: 16 additions & 16 deletions project/Dependencies.scala
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,21 @@ import sbt._

object Dependencies {
private val silhouetteVersion = "10.0.0"
private val brotliVersion = "1.11.0"
private val brotliVersion = "1.16.0"
private val scalapbVersion = scalapb.compiler.Version.scalapbVersion
private val grpcVersion = scalapb.compiler.Version.grpcJavaVersion

val utilDependencies: Seq[ModuleID] = Seq(
// Play Web Framework. import play
"org.playframework" %% "play" % "3.0.1",
"org.playframework" %% "play" % "3.0.3",
// Play’s JSON serialization. import play.api.libs.json
"com.typesafe.play" %% "play-json" % "2.10.1",
"com.typesafe.play" %% "play-json" % "2.10.5",
// Sending emails. import org.apache.commons.mail
"org.apache.commons" % "commons-email" % "1.5",
// File utils. import org.apache.commons.io
"commons-io" % "commons-io" % "2.9.0",
"commons-io" % "commons-io" % "2.16.1",
// HashCodeBuilder. import org.apache.commons.lang3
"org.apache.commons" % "commons-lang3" % "3.12.0",
"org.apache.commons" % "commons-lang3" % "3.14.0",
// Box/Tryo. import net.liftweb
"net.liftweb" %% "lift-common" % "3.5.0",
// ObjectIds. import reactivemongo.api.bson
Expand Down Expand Up @@ -48,21 +48,21 @@ object Dependencies {
// Dependency Injection. import javax.inject.Inject
guice,
// Handling of unsigned integer types. import spire
"org.typelevel" %% "spire" % "0.17.0",
"org.typelevel" %% "spire" % "0.18.0",
// Redis database client. import com.redis
"net.debasishg" %% "redisclient" % "3.42",
// Read hdf5 files. import ch.systemsx.cisd.hdf5
"cisd" % "jhdf5" % "19.04.1",
// MultiArray (ndarray) handles. import ucar
"edu.ucar" % "cdm-core" % "5.4.2",
// Amazon S3 cloud storage client. import com.amazonaws
"com.amazonaws" % "aws-java-sdk-s3" % "1.12.470",
"com.amazonaws" % "aws-java-sdk-s3" % "1.12.584",
// Google cloud storage client. import com.google.cloud.storage, import com.google.auth.oauth2
"com.google.cloud" % "google-cloud-storage" % "2.13.1",
"com.google.cloud" % "google-cloud-storage" % "2.36.1",
// Blosc compression. import org.blosc
"org.lasersonlab" % "jblosc" % "1.0.1",
// Zstd compression. import org.apache.commons.compress
"org.apache.commons" % "commons-compress" % "1.21",
"org.apache.commons" % "commons-compress" % "1.26.1",
// Zstd compression native bindings. not imported
"com.github.luben" % "zstd-jni" % "1.5.5-5",
// Brotli compression. import com.aayushatharva.brotli4j
Expand All @@ -77,7 +77,7 @@ object Dependencies {

val webknossosTracingstoreDependencies: Seq[ModuleID] = Seq(
// Graph algorithms. import org.jgrapht
"org.jgrapht" % "jgrapht-core" % "1.5.1"
"org.jgrapht" % "jgrapht-core" % "1.5.2"
)

val webknossosDependencies: Seq[ModuleID] = Seq(
Expand All @@ -92,19 +92,19 @@ object Dependencies {
// End-to-end test specs
specs2 % Test,
// Writing XML. import com.sun.xml.txw2
"org.glassfish.jaxb" % "txw2" % "4.0.2",
"org.glassfish.jaxb" % "txw2" % "4.0.5",
// Makes txw2 write self-closing tags in xml (which we want). Not imported.
"org.codehaus.woodstox" % "wstx-asl" % "4.0.6",
// Json Web Tokens (used for OIDC Auth). import pdi.jwt
"com.github.jwt-scala" %% "jwt-play-json" % "9.2.0",
"com.github.jwt-scala" %% "jwt-play-json" % "10.0.0",
Copy link
Member Author

Choose a reason for hiding this comment

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

https://github.com/jwt-scala/jwt-scala/releases says no breaking changes, just the play 3 upgrade

// SQL Queries. import slick
"com.typesafe.slick" %% "slick" % "3.4.1",
"com.typesafe.slick" %% "slick" % "3.5.0",
// SQL Queries connection pool. not imported.
"com.typesafe.slick" %% "slick-hikaricp" % "3.4.1",
"com.typesafe.slick" %% "slick-hikaricp" % "3.5.1",
// SQL Queries class generation. Started with runner as slick.codegen.SourceCodeGenerator
"com.typesafe.slick" %% "slick-codegen" % "3.4.1",
"com.typesafe.slick" %% "slick-codegen" % "3.5.1",
// SQL Queries postgres specifics. not imported.
"org.postgresql" % "postgresql" % "42.5.4"
"org.postgresql" % "postgresql" % "42.7.3"
)

val dependencyOverrides: Seq[ModuleID] = Seq(
Expand Down
2 changes: 1 addition & 1 deletion project/plugins.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ addSbtPlugin("com.sksamuel.scapegoat" %% "sbt-scapegoat" % "1.2.1")
addSbtPlugin("net.vonbuchholtz" % "sbt-dependency-check" % "5.1.0")

// protocol buffers
libraryDependencies += "com.thesamet.scalapb" %% "compilerplugin" % "0.11.13"
libraryDependencies += "com.thesamet.scalapb" %% "compilerplugin" % "0.11.15"

// java native interface
addSbtPlugin("com.github.sbt" % "sbt-jni" % "1.7.0")
2 changes: 1 addition & 1 deletion test/backend/DataVaultTestSuite.scala
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ class DataVaultTestSuite extends PlaySpec {
"returns failure" when {
"requesting invalid range" in {
val result = (vaultPath / dataKey)
.readBytes(Some(Range.Long(-10, 10, 1)))(globalExecutionContext)
.readBytes(Some(Range.Long(-5, -10, 1)))(globalExecutionContext)
Copy link
Member Author

Choose a reason for hiding this comment

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

Negative starts for byte ranges are now actually allowed in GCS. So we need to test an even more invalid range to check that a failure is indeed returned (this test is intended to check that no exceptions bubble up but instead the tryo turns them into Box.Failures).

.await(handleFoxJustification)
assertBoxFailure(result)
}
Expand Down