This is an automated email from the ASF dual-hosted git repository.

xyz pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pulsar-client-python.git


The following commit(s) were added to refs/heads/main by this push:
     new 3138051  Bump C++ client to 4.1.0 (#293)
3138051 is described below

commit 3138051e9612fcdbc17a825519deac0fe2deb870
Author: Yunze Xu <[email protected]>
AuthorDate: Thu Apr 9 18:28:36 2026 +0800

    Bump C++ client to 4.1.0 (#293)
---
 .github/workflows/ci-build-release-wheels.yaml | 6 +++---
 .github/workflows/ci-pr-validation.yaml        | 6 +++---
 dependencies.yaml                              | 2 +-
 pkg/manylinux/Dockerfile                       | 2 +-
 pulsar/__init__.py                             | 5 +----
 src/config.cc                                  | 4 ----
 tests/asyncio_test.py                          | 3 +--
 7 files changed, 10 insertions(+), 18 deletions(-)

diff --git a/.github/workflows/ci-build-release-wheels.yaml 
b/.github/workflows/ci-build-release-wheels.yaml
index c64263a..fc2bc4e 100644
--- a/.github/workflows/ci-build-release-wheels.yaml
+++ b/.github/workflows/ci-build-release-wheels.yaml
@@ -55,12 +55,12 @@ jobs:
         uses: actions/checkout@v3
 
       - name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
+        uses: docker/setup-qemu-action@ce360397dd3f832beb865e1373c09c0e9f86d70a
 
-      - uses: docker/setup-buildx-action@v2
+      - uses: 
docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd
 
       - name: Build Manylinux Docker image
-        uses: docker/build-push-action@v3
+        uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294
         with:
           context: ./pkg/${{matrix.image.name}}
           load: true
diff --git a/.github/workflows/ci-pr-validation.yaml 
b/.github/workflows/ci-pr-validation.yaml
index 3c8fcda..df2417d 100644
--- a/.github/workflows/ci-pr-validation.yaml
+++ b/.github/workflows/ci-pr-validation.yaml
@@ -124,12 +124,12 @@ jobs:
         uses: actions/checkout@v3
 
       - name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
+        uses: docker/setup-qemu-action@ce360397dd3f832beb865e1373c09c0e9f86d70a
 
-      - uses: docker/setup-buildx-action@v2
+      - uses: 
docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd
 
       - name: Build Manylinux Docker image
-        uses: docker/build-push-action@v3
+        uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294
         with:
           context: ./pkg/${{matrix.image.name}}
           load: true
diff --git a/dependencies.yaml b/dependencies.yaml
index 0b87148..308aeec 100644
--- a/dependencies.yaml
+++ b/dependencies.yaml
@@ -17,7 +17,7 @@
 # under the License.
 #
 
-pulsar-cpp: 4.0.1
+pulsar-cpp: 4.1.0
 pybind11: 3.0.1
 # The OpenSSL dependency is only used when building Python from source
 openssl: 1.1.1q
diff --git a/pkg/manylinux/Dockerfile b/pkg/manylinux/Dockerfile
index a283d6a..0c7c0e6 100644
--- a/pkg/manylinux/Dockerfile
+++ b/pkg/manylinux/Dockerfile
@@ -33,4 +33,4 @@ ENV ARCH=${ARCH}
 
 RUN pip3 install setuptools
 # Dependencies for vcpkg on arm64 architecture
-RUN yum install -y curl zip unzip tar perl-IPC-Cmd
+RUN yum install -y curl zip unzip tar perl-IPC-Cmd perl-Time-Piece
diff --git a/pulsar/__init__.py b/pulsar/__init__.py
index 2375d16..0f60552 100644
--- a/pulsar/__init__.py
+++ b/pulsar/__init__.py
@@ -709,8 +709,7 @@ class Client:
             Set the interval between each stats information update. Stats are 
printed and/or
             passed to the statistics listener at this interval. Set to 0 to 
disable stats collection.
         use_tls: bool, default=False
-            Configure whether to use TLS encryption on the connection. This 
setting is deprecated.
-            TLS will be automatically enabled if the ``serviceUrl`` is set to 
``pulsar+ssl://`` or ``https://``
+            it's a deprecated config that never works, whether TLS is enabled 
is determined by ``service_url``.
         tls_trust_certs_file_path: str, optional
             Set the path to the trusted TLS certificate file. If empty 
defaults to certifi.
         tls_allow_insecure_connection: bool, default=False
@@ -782,8 +781,6 @@ class Client:
 
         if listener_name:
             conf.listener_name(listener_name)
-        if use_tls or service_url.startswith('pulsar+ssl://') or 
service_url.startswith('https://'):
-            conf.use_tls(True)
         if tls_trust_certs_file_path:
             conf.tls_trust_certs_file_path(tls_trust_certs_file_path)
         else:
diff --git a/src/config.cc b/src/config.cc
index a83c0c0..4c5557d 100644
--- a/src/config.cc
+++ b/src/config.cc
@@ -174,10 +174,6 @@ void export_config(py::module_& m) {
         .def("stats_interval_in_seconds", 
&ClientConfiguration::getStatsIntervalInSeconds)
         .def("stats_interval_in_seconds", 
&ClientConfiguration::setStatsIntervalInSeconds,
              return_value_policy::reference)
-        .def("use_tls", &ClientConfiguration::isUseTls)
-        .def("use_tls", &ClientConfiguration::setUseTls, 
return_value_policy::reference)
-        .def("tls_trust_certs_file_path", 
&ClientConfiguration::getTlsTrustCertsFilePath,
-             return_value_policy::copy)
         .def("tls_trust_certs_file_path", 
&ClientConfiguration::setTlsTrustCertsFilePath,
              return_value_policy::reference)
         .def("tls_private_key_file_path", 
&ClientConfiguration::getTlsPrivateKeyFilePath,
diff --git a/tests/asyncio_test.py b/tests/asyncio_test.py
index b6df63a..8a441c4 100644
--- a/tests/asyncio_test.py
+++ b/tests/asyncio_test.py
@@ -93,8 +93,7 @@ class AsyncioTest(IsolatedAsyncioTestCase):
         msg_ids = await asyncio.gather(*tasks)
         self.assertEqual(len(msg_ids), 5)
         # pylint: disable=fixme
-        # TODO: the result is wrong due to 
https://github.com/apache/pulsar-client-cpp/issues/531
-        self.assertEqual(producer.last_sequence_id(), 8)
+        self.assertEqual(producer.last_sequence_id(), 4)
         ledger_id = msg_ids[0].ledger_id()
         entry_id = msg_ids[0].entry_id()
         # These messages should be in the same entry

Reply via email to