Skip to content

remove ssl-config dependency#2127

Merged
pjfanning merged 3 commits intoapache:mainfrom
pjfanning:remove-ssl-config-dependency
Sep 2, 2025
Merged

remove ssl-config dependency#2127
pjfanning merged 3 commits intoapache:mainfrom
pjfanning:remove-ssl-config-dependency

Conversation

@pjfanning
Copy link
Member

@pjfanning pjfanning commented Sep 2, 2025

  • see Drop ssl-config #2125
  • the code that uses ssl-confif is deprecated - this PR removes that deprecated code

@pjfanning pjfanning added this to the 2.0.0-M1 milestone Sep 2, 2025
@pjfanning pjfanning requested review from He-Pin and Copilot September 2, 2025 11:03
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR removes the ssl-config dependency from Apache Pekko by eliminating all deprecated SSL/TLS methods and classes that depended on the external ssl-config library. The change simplifies the codebase by removing legacy APIs that were already deprecated in favor of newer SSLEngine-based approaches.

  • Removes all deprecated SSL/TLS methods from Tcp and TLS classes
  • Eliminates ssl-config related classes and configuration
  • Updates OSGi configuration and project dependencies accordingly

Reviewed Changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated no comments.

Show a summary per file
File Description
stream/src/main/scala/org/apache/pekko/stream/scaladsl/Tcp.scala Removes deprecated TLS connection methods that used ssl-config
stream/src/main/scala/org/apache/pekko/stream/scaladsl/TLS.scala Removes deprecated TLS factory methods with ssl-config dependency
stream/src/main/scala/org/apache/pekko/stream/javadsl/Tcp.scala Removes Java API deprecated TLS methods and unused utility method
stream/src/main/scala/org/apache/pekko/stream/javadsl/TLS.scala Removes Java API deprecated TLS factory methods
stream/src/main/scala/com/typesafe/sslconfig/pekko/util/PekkoLoggerBridge.scala Completely removes ssl-config logger bridge implementation
stream/src/main/scala/com/typesafe/sslconfig/pekko/SSLEngineConfigurator.scala Completely removes deprecated SSL engine configurator
stream/src/main/scala/com/typesafe/sslconfig/pekko/PekkoSSLConfig.scala Completely removes main ssl-config integration class
stream/src/main/resources/reference.conf Removes ssl-config logger configuration
stream/src/main/mima-filters/2.0.x.backwards.excludes/remove-ssl-config.excludes Adds MiMa filters for removed ssl-config classes and methods
stream/src/main/mima-filters/2.0.x.backwards.excludes/remove-deprecated-methods.excludes Removes filter for deprecated ssl-config method
stream-tests/src/test/scala/org/apache/pekko/stream/io/TcpSpec.scala Removes test for deprecated TLS convenience methods
stream-tests/src/test/scala/org/apache/pekko/stream/io/DeprecatedTlsSpec.scala Completely removes deprecated TLS specification tests
project/OSGi.scala Updates OSGi configuration to remove ssl-config package exports/imports
project/Dependencies.scala Removes ssl-config dependency from project dependencies

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@pjfanning pjfanning marked this pull request as draft September 2, 2025 11:06
@pjfanning pjfanning marked this pull request as ready for review September 2, 2025 12:47
createSSLEngine: ActorSystem => SSLEngine, // ActorSystem is only needed to support the PekkoSSLConfig legacy, see #21753
verifySession: (ActorSystem, SSLSession) => Try[Unit], // ActorSystem is only needed to support the PekkoSSLConfig legacy, see #21753
createSSLEngine: () => SSLEngine,
verifySession: SSLSession => Try[Unit],
Copy link
Member

Choose a reason for hiding this comment

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

I think this can be a Try[Done] too.

Copy link
Member Author

Choose a reason for hiding this comment

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

I'd prefer to treat that as a separate change. Try[Unit] is the existing return type

Copy link
Member

Choose a reason for hiding this comment

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

Yes, but that's an internal class, doesn't matter anyway.

Copy link
Member

@He-Pin He-Pin left a comment

Choose a reason for hiding this comment

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

lgtm

@pjfanning pjfanning merged commit 18545a6 into apache:main Sep 2, 2025
9 checks passed
@pjfanning pjfanning deleted the remove-ssl-config-dependency branch September 2, 2025 19:04
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.

3 participants