Skip to content

Scala3 Follow-Up #1: Fix Compiler Warnings#9682

Open
fm3 wants to merge 39 commits into
masterfrom
scala3-followup
Open

Scala3 Follow-Up #1: Fix Compiler Warnings#9682
fm3 wants to merge 39 commits into
masterfrom
scala3-followup

Conversation

@fm3

@fm3 fm3 commented Jun 11, 2026

Copy link
Copy Markdown
Member
  • Fixes compiler warnings (mostly moving from implicit to using, and removing some unreachable match cases)
  • re-enables failOnWarning in CI
  • No reformatting yet, let’s do that separately for easier reviews.
  • Note that some implicit parameters remain, since the compiler doesn’t warn about them. Those will probably still be replaced in later iterations.

Steps to test:

  • CI should be enough

Issues:


  • Removed dev-only changes like prints and application.conf edits
  • Considered common edge cases
  • Needs datastore update after deployment

@fm3 fm3 self-assigned this Jun 11, 2026
@coderabbitai

coderabbitai Bot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 176 files, which is 26 over the limit of 150.

To get a review, narrow the scope:
• coderabbit review --type committed # exclude uncommitted changes
• coderabbit review --dir # limit to a subdirectory
• coderabbit review --base # compare against a closer base

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 9e00f3eb-f42c-476f-b347-73f98160f497

📥 Commits

Reviewing files that changed from the base of the PR and between 1d4e152 and 67c76b4.

📒 Files selected for processing (176)
  • app/controllers/AboutPageRedirectController.scala
  • app/controllers/AiModelController.scala
  • app/controllers/AnnotationController.scala
  • app/controllers/AnnotationIOController.scala
  • app/controllers/AnnotationPrivateLinkController.scala
  • app/controllers/AuthenticationController.scala
  • app/controllers/ConfigurationController.scala
  • app/controllers/Controller.scala
  • app/controllers/CreditTransactionController.scala
  • app/controllers/DatasetController.scala
  • app/controllers/EmailVerificationController.scala
  • app/controllers/JobController.scala
  • app/controllers/MaintenanceController.scala
  • app/controllers/OrganizationController.scala
  • app/controllers/ProjectController.scala
  • app/controllers/ReportController.scala
  • app/controllers/ScriptController.scala
  • app/controllers/TaskController.scala
  • app/controllers/TaskTypeController.scala
  • app/controllers/UserController.scala
  • app/controllers/UserTokenController.scala
  • app/controllers/WKRemoteDataStoreController.scala
  • app/controllers/WKRemoteTracingStoreController.scala
  • app/controllers/WKRemoteWorkerController.scala
  • app/mail/MailchimpClient.scala
  • app/mail/MailchimpTicker.scala
  • app/models/aimodels/AiInference.scala
  • app/models/aimodels/AiModel.scala
  • app/models/annotation/Annotation.scala
  • app/models/annotation/AnnotationInformationProvider.scala
  • app/models/annotation/AnnotationMerger.scala
  • app/models/annotation/AnnotationMutexService.scala
  • app/models/annotation/AnnotationPrivateLink.scala
  • app/models/annotation/AnnotationRestrictions.scala
  • app/models/annotation/AnnotationService.scala
  • app/models/annotation/AnnotationStore.scala
  • app/models/annotation/AnnotationUploadService.scala
  • app/models/annotation/TracingStore.scala
  • app/models/annotation/handler/AnnotationInformationHandler.scala
  • app/models/annotation/handler/ProjectInformationHandler.scala
  • app/models/annotation/handler/SavedTracingInformationHandler.scala
  • app/models/annotation/handler/TaskInformationHandler.scala
  • app/models/annotation/handler/TaskTypeInformationHandler.scala
  • app/models/annotation/nml/NmlParser.scala
  • app/models/configuration/DatasetConfigurationService.scala
  • app/models/dataset/ComposeService.scala
  • app/models/dataset/DataStore.scala
  • app/models/dataset/Dataset.scala
  • app/models/dataset/DatasetService.scala
  • app/models/dataset/LayerToLinkService.scala
  • app/models/dataset/ThumbnailService.scala
  • app/models/dataset/UploadToPathsService.scala
  • app/models/dataset/explore/WKExploreRemoteLayerService.scala
  • app/models/folder/Folder.scala
  • app/models/job/Job.scala
  • app/models/job/JobService.scala
  • app/models/job/Worker.scala
  • app/models/organization/CreditTransaction.scala
  • app/models/organization/CreditTransactionService.scala
  • app/models/organization/Organization.scala
  • app/models/organization/OrganizationPlanUpdate.scala
  • app/models/organization/OrganizationService.scala
  • app/models/project/Project.scala
  • app/models/shortlinks/ShortLink.scala
  • app/models/task/Script.scala
  • app/models/task/Task.scala
  • app/models/task/TaskCreationService.scala
  • app/models/task/TaskService.scala
  • app/models/task/TaskType.scala
  • app/models/team/Team.scala
  • app/models/team/TeamMembership.scala
  • app/models/user/EmailVerificationService.scala
  • app/models/user/Invite.scala
  • app/models/user/MultiUser.scala
  • app/models/user/User.scala
  • app/models/user/UserService.scala
  • app/models/user/WebAuthnCredentials.scala
  • app/models/user/time/TimeSpanService.scala
  • app/models/voxelytics/WorkflowEvents.scala
  • app/opengraph/OpenGraphService.scala
  • app/security/AccessibleBySwitchingService.scala
  • app/security/CombinedAuthenticatorService.scala
  • app/security/URLSharing.scala
  • app/security/UserAuthInfoRepository.scala
  • app/security/WebknossosBearerTokenAuthenticatorService.scala
  • app/utils/SitemapWriter.scala
  • app/utils/sql/SQLDAO.scala
  • app/utils/sql/SecuredSQLDAO.scala
  • app/utils/sql/SqlInterpolation.scala
  • build.sbt
  • test/backend/DataVaultTestSuite.scala
  • test/backend/NMLUnitTestSuite.scala
  • test/backend/TristateJsonTestSuite.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/controllers/BinaryDataController.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/controllers/DataSourceController.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/controllers/ZarrStreamingController.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/dataformats/BucketProvider.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/dataformats/DatasetArrayBucketProvider.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datareaders/Compressor.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datareaders/DatasetArray.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datareaders/precomputed/NeuroglancerPrecomputedShardingUtils.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datareaders/zarr3/Codecs.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datareaders/zarr3/Zarr3Array.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datareaders/zarr3/Zarr3ArrayHeader.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/DataVault.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/FileSystemDataVault.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/GoogleCloudDataVault.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/HttpsDataVault.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/S3DataVault.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/VaultPath.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/ExploreLocalLayerService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/N5ArrayExplorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/N5CompactMultiscalesExplorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/N5MultiscalesExplorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/NeuroglancerUriExplorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/NgffExplorationUtils.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/NgffV0_4Explorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/NgffV0_5Explorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/PrecomputedExplorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/RemoteLayerExplorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/WebknossosZarrExplorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/Zarr3ArrayExplorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/explore/ZarrArrayExplorer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/models/datasource/DataLayer.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/models/datasource/DataSource.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/models/datasource/LayerViewConfiguration.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/rpc/RPCRequest.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/AccessTokenService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/BinaryDataService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/DSRemoteTracingstoreClient.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/DSRemoteWebknossosClient.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/FindDataService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/connectome/ConnectomeFileService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/connectome/ZarrConnectomeFileService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/mapping/AgglomerateService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/mapping/ZarrAgglomerateService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/mesh/AdHocMeshService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/mesh/DSFullMeshService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/mesh/MeshFileService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/mesh/MeshMappingHelper.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/mesh/NeuroglancerPrecomputedMeshFileService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/mesh/ZarrMeshFileService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/segmentindex/SegmentIndexFileService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/segmentindex/ZarrSegmentIndexFileService.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/uploading/UploadMetadataStore.scala
  • webknossos-datastore/app/com/scalableminds/webknossos/datastore/services/uploading/UploadService.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/TSRemoteDatastoreClient.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/TSRemoteWebknossosClient.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/annotation/AnnotationReversion.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/annotation/AnnotationTransactionService.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/annotation/AnnotationWithTracings.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/annotation/TSAnnotationService.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/annotation/UpdateActions.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/annotation/UpdateGroupHandling.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/controllers/TSAnnotationController.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/controllers/VolumeTracingZarrStreamingController.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/FossilDBClient.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/RemoteFallbackLayer.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/editablemapping/EditableMappingIOService.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/editablemapping/EditableMappingLayer.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/editablemapping/EditableMappingMergeService.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/editablemapping/EditableMappingService.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/editablemapping/EditableMappingUpdater.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/skeleton/TreeValidator.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/skeleton/updating/SkeletonUpdateActions.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/TSFullMeshService.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/VolumeBucketBuffer.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/VolumeDataZipHelper.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/VolumeSegmentIndexBuffer.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/VolumeSegmentStatisticsService.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/VolumeTracingBucketHelper.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/VolumeTracingLayer.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/VolumeTracingService.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/VolumeUpdateActions.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/WKWBucketStreamSink.scala
  • webknossos-tracingstore/app/com/scalableminds/webknossos/tracingstore/tracings/volume/Zarr3BucketStreamSink.scala

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch scala3-followup

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@fm3 fm3 changed the title WIP Scala3 Follow-Up Scala3 Follow-Up #1: Fix Compiler Warnings Jun 11, 2026
Base automatically changed from scala3-2026 to master June 15, 2026 08:56
@fm3 fm3 marked this pull request as ready for review June 15, 2026 09:10

@MichaelBuessemeyer MichaelBuessemeyer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Neat, thanks for the clean up.

Got 2 mini comments :D

Comment on lines +5 to +8
import com.scalableminds.util.tools.Fox
import com.typesafe.scalalogging.LazyLogging
import models.user.User
import play.api.libs.json.{JsReadable, JsSuccess}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

why are these imports added. They seem unused

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants