This is an automated email from the ASF dual-hosted git repository.
pjfanning pushed a commit to branch 1.4.x
in repository https://gitbox.apache.org/repos/asf/pekko-http.git
The following commit(s) were added to refs/heads/1.4.x by this push:
new 81ca465c3 release notes for 1.4.1 (#1277) (#1332)
81ca465c3 is described below
commit 81ca465c33d9b710e4eb1238563c41866d3eaff9
Author: PJ Fanning <[email protected]>
AuthorDate: Tue Oct 6 12:54:30 2026 +0100
release notes for 1.4.1 (#1277) (#1332)
Co-authored-by: Claude Opus 5 (1M context) <[email protected]>
---
.github/workflows/publish-1.4-docs.yml | 91 ++++++++++++++++++++++
.../src/main/paradox/release-notes/releases-1.4.md | 22 ++++++
2 files changed, 113 insertions(+)
diff --git a/.github/workflows/publish-1.4-docs.yml
b/.github/workflows/publish-1.4-docs.yml
new file mode 100644
index 000000000..06b29a28c
--- /dev/null
+++ b/.github/workflows/publish-1.4-docs.yml
@@ -0,0 +1,91 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+name: Publish 1.4 docs
+
+on:
+ workflow_dispatch:
+
+jobs:
+ publish-docs:
+ name: Publish documentation to nightlies.apache.org
+ runs-on: ubuntu-latest
+ if: github.repository == 'apache/pekko-http'
+ steps:
+ - name: Checkout
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #
v7.0.1
+ with:
+ fetch-depth: 0
+ fetch-tags: true
+ ref: 1.4.x
+
+ - name: Set up JDK 8
+ uses: actions/setup-java@de7274f081f381c8f8158605e0321c36c376e2e6 #
v6.0.1
+ with:
+ distribution: temurin
+ java-version: 8
+
+ - name: Install sbt
+ uses: sbt/setup-sbt@c7d2d6258b4bd0d3ec5129e6b3453199d3c79729 # v1.5.8
+
+ - name: Cache Coursier cache
+ uses: coursier/cache-action@95e5b1029b6b86e7bac033ee44a0697d8a527d2d #
v8.1.1
+
+ - name: Build Documentation
+ run: |-
+ sbt -Dpekko.genjavadoc.enabled=true "set ThisBuild / version :=
\"1.4.1\"; docs/paradox; unidoc"
+ env:
+ JAVA_OPTS: "-verbose:gc -Xmx4g"
+
+ # Create directory structure upfront since rsync does not create
intermediate directories otherwise
+ - name: Create directory structure
+ run: |-
+ mkdir -p target/nightly-docs/docs/pekko-http/1.4.1/
+ mkdir -p target/nightly-docs/docs/pekko-http/1.4/
+ cp -r docs/target/paradox/site/main/
target/nightly-docs/docs/pekko-http/1.4.1/docs
+ cp -r docs/target/paradox/site/main/
target/nightly-docs/docs/pekko-http/1.4/docs
+ rm -r docs/target/paradox/site/main/
+ cp -r target/scala-2.13/unidoc
target/nightly-docs/docs/pekko-http/1.4.1/api
+ cp -r target/scala-2.13/unidoc
target/nightly-docs/docs/pekko-http/1.4/api
+ rm -r target/scala-2.13/unidoc
+ cp -r target/javaunidoc
target/nightly-docs/docs/pekko-http/1.4.1/japi
+ cp -r target/javaunidoc target/nightly-docs/docs/pekko-http/1.4/japi
+ rm -r target/javaunidoc
+
+ - name: Upload 1.4.x nightly docs
+ uses: ./.github/actions/sync-nightlies
+ with:
+ upload: true
+ switches: --archive --compress --update --delete --progress
--relative
+ local_path: target/nightly-docs/./docs/pekko-http/1.4.1 # The
intermediate dot is to show `--relative` which paths to operate on
+ remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH }}/pekko/
+ remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
+ remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
+ remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }}
+ remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }}
+
+ - name: Upload 1.4 nightly docs
+ uses: ./.github/actions/sync-nightlies
+ with:
+ upload: true
+ switches: --archive --compress --update --delete --progress
--relative
+ local_path: target/nightly-docs/./docs/pekko-http/1.4 # The
intermediate dot is to show `--relative` which paths to operate on
+ remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH }}/pekko/
+ remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
+ remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
+ remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }}
+ remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }}
diff --git a/docs/src/main/paradox/release-notes/releases-1.4.md
b/docs/src/main/paradox/release-notes/releases-1.4.md
index d4fc893ee..7f99abdc1 100644
--- a/docs/src/main/paradox/release-notes/releases-1.4.md
+++ b/docs/src/main/paradox/release-notes/releases-1.4.md
@@ -1,5 +1,27 @@
# 0. Release Notes (1.4.x)
+## 1.4.1
+
+Release notes for Apache Pekko HTTP 1.4.1. See [GitHub Milestone for
1.4.1](https://github.com/apache/pekko-http/milestone/16?closed=1) for a fuller
list of changes.
+
+This is a bug fix release. It includes a number of hardening changes to the
HTTP parsing and rendering code.
+
+### Bug Fixes
+* SSE: allow Unicode line terminators
([PR1186](https://github.com/apache/pekko-http/pull/1186))
+* Use `Locale.ROOT` for `toLowerCase`/`toUpperCase` and in the `RouteTest`
header lookup ([PR1224](https://github.com/apache/pekko-http/pull/1224))
+* Parse `Content-Length` as digits with surrounding whitespace only
([PR1243](https://github.com/apache/pekko-http/pull/1243))
+* Render `Content-Length` for HEAD responses with a declared length
([PR1244](https://github.com/apache/pekko-http/pull/1244))
+* HTTP/2: bound incoming header blocks with `max-header-list-size`
([PR1247](https://github.com/apache/pekko-http/pull/1247))
+* Count repeated `Connection` headers towards `max-header-count`
([PR1268](https://github.com/apache/pekko-http/pull/1268))
+* Compare path elements when checking that a served file is below the base
directory ([PR1269](https://github.com/apache/pekko-http/pull/1269))
+* Prevent CRLF injection through chunk trailers and extensions
([PR1270](https://github.com/apache/pekko-http/pull/1270))
+* HTTP/2: drop header fields containing CR, LF or NUL
([PR1271](https://github.com/apache/pekko-http/pull/1271))
+* Drop rendered headers containing NUL as well as CR and LF
([PR1272](https://github.com/apache/pekko-http/pull/1272))
+
+### Dependency Changes
+
+There are no dependency changes in this release.
+
## 1.4.0
Release notes for Apache Pekko HTTP 1.4.0. See [GitHub Milestone for
1.4.0](https://github.com/apache/pekko-http/milestone/13?closed=1) for a fuller
list of changes.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]