He-Pin opened a new pull request, #1069:
URL: https://github.com/apache/pekko-http/pull/1069

   ## Summary
   
   - Fix context bound patterns for Scala 3.8 compatibility: replace explicit 
passing of `Tuple.yes`, `ev`, `OutIsTuple`, `ClassTag`, `LogSource` with 
implicit vals in scope
   - Update build config: move `-Ywarn-dead-code`/`-Xlint` to Scala 2-only, add 
`-Wconf` suppressions for Scala 3, make `-language:_` conditional, replace 
`-Xfatal-warnings` with `-Werror`
   
   ## Details
   
   ### Context bound fixes (routing DSL)
   - `Directive.scala`: ConjunctionMagnet, or, validatedMap, tmap, tcollect, 
Directive0Support
   - `PathMatcher.scala`: provide, apply (context bound `[L: Tuple]` → explicit 
`implicit ev`)
   - `PathDirectives.scala`: rawPathPrefix, pathSuffix (tprovide with explicit 
type param)
   - `FutureDirectives.scala`: OnSuccessMagnet (Tuple import fix for 
scala.Tuple shadowing)
   
   ### Context bound fixes (core)
   - `HttpMessage.scala`: getHeaders ClassTag
   - `RejectionHandler.scala` (javadsl): ClassTag with server.Rejection type 
annotation
   - `PoolInterface.scala`, `StageLoggingWithOverride.scala`: LogSource context 
bounds
   - `TestRouteResult.scala`, `RouteTest.scala`: ClassTag context bounds
   
   ### Test code fixes
   - `EntityStreamingSpec.scala`: context parameter passing via implicit vals
   
   ### Build config fixes
   - `project/Common.scala`: Scala 2/3 conditional scalacOptions, -Wconf 
suppressions
   - `build.sbt`: conditional `-language:_`, `-Werror` in docs
   - `DontLeakActorsOnFailingConnectionSpecs.scala`, `MultiNodeConfig.scala`: 
Logging fixes
   
   Note: `private[this]` → `private` and `= _` → explicit defaults are in a 
separate PR (#1068).
   
   ## Test plan
   - [x] `sbt "++ 2.13 Test/compile"` passes
   - [x] `sbt "++ 3.3 Test/compile"` passes
   
   ### Motivation
   Scala 3.8 introduces breaking changes for context parameter passing. These 
changes ensure forward compatibility.
   
   ### Modification
   Replace explicit context parameter passing with implicit vals in scope; 
conditionally configure scalac options per Scala version.
   
   ### Result
   All modules compile cleanly on Scala 2.13.18 and 3.3.8, with source 
compatibility for Scala 3.8's context parameter changes.
   
   ### Tests
   - `sbt "++ 2.13 Test/compile"` passes
   - `sbt "++ 3.3 Test/compile"` passes
   
   ### References
   None - Scala 3.8 forward compatibility. Supersedes #1067 (split into #1068 + 
this PR).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to