mkurz opened a new pull request, #895:
URL: https://github.com/apache/pekko-grpc/pull/895

   ### Motivation
   
   The sbt plugin appends sbt-protoc resource directories even when they are 
already in the build setting. In an sbt 2 build this repeats 
`src/main/resources`, `src/main/protobuf`, and `src/main/proto`; downstream 
Play gRPC packaging can then fail with a duplicate `application.conf` entry.
   
   ### Modification
   
   Deduplicate the combined resource directories in the plugin settings for 
both `Compile` and `Test`, while retaining any additional directories supplied 
by sbt-protoc. Add a test-first scripted assertion for both configurations to 
the existing sbt 2 fixture, followed by JAR packaging.
   
   ### Result
   
   Each resource directory occurs once. The new assertion fails on the unfixed 
plugin with all three paths listed twice and passes with the fix.
   
   ### Tests
   
   - `sbt --batch '++3.8.4' 'sbt-plugin / scripted 
scala3/01-basic-client-server'` — failed before the fix as expected; passes 
after it (scripted sbt 2.0.0).
   - `sbt --batch '++2.12.21' 'sbt-plugin / scripted 
gen-scala-server/01-gen-basic-server'` — passes (scripted sbt 1.12.15).
   - sbt 2.1.0-M2 fixture: `checkResourceDirectories` and `Compile / 
packageBin` pass.
   - `sbt --batch checkCodeStyle` — passes.
   - `sbt --batch validatePullRequest` — unavailable: this checkout does not 
define the command.
   
   An exploratory sbt 2.1.0-M2 invocation ran its test successfully but later 
exited with a Pekko classloader `LinkageError`; the resource-directory and 
packaging checks passed when run separately.
   
   ### References
   
   None — reproduced from the Play gRPC sample packaging failure.


-- 
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