prepare for daily stable 8.2508.0 release

This commit is contained in:
Rainer Gerhards 2025-08-25 17:10:56 +02:00
parent 4a88a77ea1
commit 813460390f
No known key found for this signature in database
GPG Key ID: 0CB6B2A8BE80B499
3 changed files with 35 additions and 5 deletions

View File

@ -1,5 +1,5 @@
----------------------------------------------------------------------------------------
Scheduled Release 8.2508.0 (aka 2025.08) 2025-08-??
Scheduled Release 8.2508.0 (aka 2025.08) 2025-08-26
IMPORTANT NOTE TO Package Builders / Distros:
@ -18,7 +18,37 @@ AI slop is not accepted and this release addresses AI slop by better parametrizi
agents in regard to code generation and streamlining code so that AIs better
understand it. This is an ongoing effort.
- 2025-08-20:omsendertrack: stop towards full completion of module.
- 2025-08-25: tcpsrv: refactor IO loop; rearm-before-unlock; poll path
Improve maintainability and robustness of the TCP server by clarifying
locking/ownership, tightening invariants, and simplifying queueing.
Also fix a long-standing pragma macro typo across the tree.
Impact: Internal behavior only. EPOLL re-arm now occurs while holding
pSess->mut; starvation cap counts only successful reads.
Before/After:
Before: EPOLL re-arm happened after leaving the critical section; read
starvation cap counted loop iterations; closeSess() sometimes unlocked;
select_* helpers used on non-epoll path; enqueueWork() returned status.
After: EPOLLONESHOT is re-armed before unlocking; starvation cap counts
only RS_RET_OK reads; closeSess() never unlocks; poll_* helpers replace
select_*; enqueueWork() is void (best-effort).
Technical details:
- Replace notifyReArm() with rearmIoEvent() (EPOLL_CTL_MOD with
EPOLLONESHOT|EPOLLET; asserts efd/sock; logs on failure).
- doReceive(): explicit state machine; would-block path re-arms before
unlock; close path unlocks then calls closeSess(); starvation handoff
enqueues without re-arming.
- Initialize ioDirection for listener and session descriptors; add
assert(sock >= 0) and widespread ATTR_NONNULL annotations.
- startWrkrPool(): single finalize rollback (cancel/join partial
threads; destroy cond/mutex); stopWrkrPool(): destroy cond/mutex.
- enqueueWork(): FIFO append under lock and cond signal; returns void.
- Cleanup hardening on construct failure: free ppLstn, ppLstnPort,
ppioDescrPtr; free fromHostIP on SessAccept() error.
- Non-epoll: rename select_Add/Poll/IsReady -> poll_*; RunPoll() uses
poll_* and sets sane ioDirection defaults.
- Typo fix: standardize PRAGMA_IGNORE_Wswitch_enum in header and all
users (action.c, rainerscript.c, template.c, tcpsrv.c).
- 2025-08-25: omsendertrack: stop towards full completion of module.
Work towards full completion of the modules interface as it exits PoC.
The new name senderid (formerly: template) matches intent (identify a
sender, not an output format) and avoids confusion. Also make state

View File

@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.61)
AC_INIT([rsyslog],[8.2508.0.daily],[rsyslog@lists.adiscon.com]) # UPDATE on release
AC_INIT([rsyslog],[8.2508.0],[rsyslog@lists.adiscon.com]) # UPDATE on release
AC_DEFINE(VERSION_YEAR, 25, [year part of real rsyslog version]) # UPDATE on release
AC_DEFINE(VERSION_MONTH, 8, [month part of real rsyslog version]) # UPDATE on release

View File

@ -95,8 +95,8 @@ rst_epilog = """
# user builds the docs from "bare" sources not yet processed
###############################################################################
version = '8.2508'
#release = '8.2508.0'
release = version + ' daily stable'
release = '8.2508.0'
#release = version + ' daily stable'
# For this to be true, it means that we are not attempting to build from
# a release tarball, as otherwise the values above would have been replaced