Skip to content

Commit 121b307

Browse files
feat: sync upstream Fluent Bit from v4.1.0 to v4.2.4 (#277)
* [upstream] in_forward: tests: Add a regression test case for Upstream-Ref: fluent/fluent-bit@de3dc06 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Try to reconnect on cancellations Upstream-Ref: fluent/fluent-bit@b5e53c0 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Add retry backoff mechanism Upstream-Ref: fluent/fluent-bit@3b91773 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Address coderabbitai comments Upstream-Ref: fluent/fluent-bit@e3735f7 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Fix type glitches Upstream-Ref: fluent/fluent-bit@4510a89 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Handle capped values Upstream-Ref: fluent/fluent-bit@0a95d62 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Plug NULL pointer deref lines Upstream-Ref: fluent/fluent-bit@1d6d32c Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Process remote handle to retrive Upstream-Ref: fluent/fluent-bit@84e73c1 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Plug a negative overflow possibility Upstream-Ref: fluent/fluent-bit@20a63b8 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Address more coderabbitai comments Upstream-Ref: fluent/fluent-bit@088fdfe Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Apply backoff settings effectively Upstream-Ref: fluent/fluent-bit@5fff944 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_forward: tests: Add fail-close around test cases Upstream-Ref: fluent/fluent-bit@67ae3b0 Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_es: create space for header before use Upstream-Ref: fluent/fluent-bit@912b7d7 Cherry-picked from Fluent Bit v4.2.4 * [upstream] help: add space for outputs and processors when Upstream-Ref: fluent/fluent-bit@36db973 Cherry-picked from Fluent Bit v4.2.4 * [upstream] opentelemetry: unify trace JSON parser Upstream-Ref: fluent/fluent-bit@03208db Cherry-picked from Fluent Bit v4.2.4 * [upstream] build: register new flb_opentelemetry_traces.c Upstream-Ref: fluent/fluent-bit@67685c0 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_opentelemetry: use new otel json trace interface Upstream-Ref: fluent/fluent-bit@602ed5b Cherry-picked from Fluent Bit v4.2.4 * [upstream] opentelemetry: traces: propagate error status Upstream-Ref: fluent/fluent-bit@4fbd6a0 Cherry-picked from Fluent Bit v4.2.4 * [upstream] opentelemetry: logs: strict check when decoding IDs Upstream-Ref: fluent/fluent-bit@c576b1e Cherry-picked from Fluent Bit v4.2.4 * [upstream] opentelemetry: traces: strict check when decoding IDs Upstream-Ref: fluent/fluent-bit@f2244cd Cherry-picked from Fluent Bit v4.2.4 * [upstream] config_format: add new function to add property Upstream-Ref: fluent/fluent-bit@03f3803 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router_config: new interface to parse new input Upstream-Ref: fluent/fluent-bit@cbd9b13 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router_condition: add new conditional template Upstream-Ref: fluent/fluent-bit@a2cd096 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router: check for new input routes Upstream-Ref: fluent/fluent-bit@7dc9a91 Cherry-picked from Fluent Bit v4.2.4 * [upstream] config: add list for input routes Upstream-Ref: fluent/fluent-bit@6b33e3d Cherry-picked from Fluent Bit v4.2.4 * [upstream] build: register new router interface files Upstream-Ref: fluent/fluent-bit@48e7733 Cherry-picked from Fluent Bit v4.2.4 * [upstream] config_format: yaml: fix processors recognition Upstream-Ref: fluent/fluent-bit@24f8677 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router_config: allow not having routes (optional) Upstream-Ref: fluent/fluent-bit@6c63f07 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router_config: fix signal compatibility check logic Upstream-Ref: fluent/fluent-bit@1c7c4e1 Cherry-picked from Fluent Bit v4.2.4 * [upstream] mp: extend cobj API to expose group metadata and Upstream-Ref: fluent/fluent-bit@78b14aa Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: new mp_chunk_cobj Upstream-Ref: fluent/fluent-bit@d87ec0d Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_node_exporter_metrics: add netstat linux collector Upstream-Ref: fluent/fluent-bit@243d431 Cherry-picked from Fluent Bit v4.2.4 * [upstream] fstore: safe checks for active chunks on deletion Upstream-Ref: fluent/fluent-bit@e7320a6 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: fstore: add regression test for Upstream-Ref: fluent/fluent-bit@65722e8 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router: implement new router paths and conditions Upstream-Ref: fluent/fluent-bit@d87d0f9 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router_config: add support for rules Upstream-Ref: fluent/fluent-bit@e75e256 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router_condition: add conditional logic for logs Upstream-Ref: fluent/fluent-bit@559b850 Cherry-picked from Fluent Bit v4.2.4 * [upstream] task: add handling for direct route Upstream-Ref: fluent/fluent-bit@9ac9bf9 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router: use cfl_list for router path Upstream-Ref: fluent/fluent-bit@7b6e788 Cherry-picked from Fluent Bit v4.2.4 * [upstream] input: fix data type for routes_direct Upstream-Ref: fluent/fluent-bit@68b7efb Cherry-picked from Fluent Bit v4.2.4 * [upstream] router_config: fix data type for linked list Upstream-Ref: fluent/fluent-bit@fa8e8b3 Cherry-picked from Fluent Bit v4.2.4 * [upstream] task: fix data type for linked list Upstream-Ref: fluent/fluent-bit@9aa07ac Cherry-picked from Fluent Bit v4.2.4 * [upstream] input: include cfl header Upstream-Ref: fluent/fluent-bit@380c159 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router: use cfl_list intead of mk_list Upstream-Ref: fluent/fluent-bit@e3eeb0b Cherry-picked from Fluent Bit v4.2.4 * [upstream] input: fix llist initialization Upstream-Ref: fluent/fluent-bit@995dd12 Cherry-picked from Fluent Bit v4.2.4 * [upstream] sosreport: fix list iterator api Upstream-Ref: fluent/fluent-bit@6bab255 Cherry-picked from Fluent Bit v4.2.4 * [upstream] input_chunk: expose flb_input_chunk_get_real_size() Upstream-Ref: fluent/fluent-bit@98009ae Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: input_chunk: remove unused code Upstream-Ref: fluent/fluent-bit@32ebcda Cherry-picked from Fluent Bit v4.2.4 * [upstream] routes_mask: correct memcmp byte count in Upstream-Ref: fluent/fluent-bit@83662c4 Cherry-picked from Fluent Bit v4.2.4 * [upstream] log_event_decoder: add context extraction helpers Upstream-Ref: fluent/fluent-bit@f176701 Cherry-picked from Fluent Bit v4.2.4 * [upstream] task: pass context to router condition evaluation Upstream-Ref: fluent/fluent-bit@a7d0510 Cherry-picked from Fluent Bit v4.2.4 * [upstream] processor_content_modifier: skip GROUP_START markers Upstream-Ref: fluent/fluent-bit@03d3c2e Cherry-picked from Fluent Bit v4.2.4 * [upstream] lib: add context support API for routing Upstream-Ref: fluent/fluent-bit@6b8fbdd Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: runtime: in_opentelemetry_routing: add context Upstream-Ref: fluent/fluent-bit@2d07323 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: conditional_routing: add context Upstream-Ref: fluent/fluent-bit@34c08fe Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: runtime: in_opentelemetry_routing: enhance Upstream-Ref: fluent/fluent-bit@6a80c78 Cherry-picked from Fluent Bit v4.2.4 * [upstream] lib: use flb_compat.h instead of unistd.h (Windows Upstream-Ref: fluent/fluent-bit@1256bf8 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: conditionals: NULL record should Upstream-Ref: fluent/fluent-bit@311d930 Cherry-picked from Fluent Bit v4.2.4 * [upstream] log_event_decoder: add tests for group marker Upstream-Ref: fluent/fluent-bit@7b87bbb Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: log_event_decoder: add comprehensive Upstream-Ref: fluent/fluent-bit@0e6513f Cherry-picked from Fluent Bit v4.2.4 * [upstream] log_event_decoder: improve robustness for invalid Upstream-Ref: fluent/fluent-bit@668358c Cherry-picked from Fluent Bit v4.2.4 * [upstream] lib: chunkio: upgrade to v1.5.4 Upstream-Ref: fluent/fluent-bit@f98fede Cherry-picked from Fluent Bit v4.2.4 * [upstream] input_chunk: extend chunk layer to support routing Upstream-Ref: fluent/fluent-bit@c56dc3d Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: add new input_chunk_routes.c Upstream-Ref: fluent/fluent-bit@139bd2b Cherry-picked from Fluent Bit v4.2.4 * [upstream] input_chunk: add direct route labels and plugin name Upstream-Ref: fluent/fluent-bit@c701590 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: add direct route persistence tests Upstream-Ref: fluent/fluent-bit@babbf92 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: input_chunk_route: add missing cmt Upstream-Ref: fluent/fluent-bit@5a15b12 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: input_chunk_route: simplify cleanup Upstream-Ref: fluent/fluent-bit@fb24892 Cherry-picked from Fluent Bit v4.2.4 * [upstream] plugins: kafka: fix cmake cross compile error Upstream-Ref: fluent/fluent-bit@7eab11a Cherry-picked from Fluent Bit v4.2.4 * [upstream] build: Implement strict pointer types option Upstream-Ref: fluent/fluent-bit@cc15e1b Cherry-picked from Fluent Bit v4.2.4 * [upstream] tls: openssl: Implement certificates" thumbprint Upstream-Ref: fluent/fluent-bit@baa0153 Cherry-picked from Fluent Bit v4.2.4 * [upstream] output: Handle to load certificates with their Upstream-Ref: fluent/fluent-bit@3d3db60 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_syslog: Handle octent_counting Upstream-Ref: fluent/fluent-bit@a2917b8 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_syslog: Add test cases for octet counting Upstream-Ref: fluent/fluent-bit@5bf9544 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_syslog: Include a header explicitly Upstream-Ref: fluent/fluent-bit@4789437 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_syslog: tests: Split declaration and applying Upstream-Ref: fluent/fluent-bit@16e2dd8 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_syslog: tests: Use format instead of frame Upstream-Ref: fluent/fluent-bit@9f8c816 Cherry-picked from Fluent Bit v4.2.4 * [upstream] scheduler: engine: Plug macOS abort on dry-run Upstream-Ref: fluent/fluent-bit@b67db02 Cherry-picked from Fluent Bit v4.2.4 * [upstream] output_thread: Validate a magic for cleaning up Upstream-Ref: fluent/fluent-bit@ef58c53 Cherry-picked from Fluent Bit v4.2.4 * [upstream] scheduler: Use a correct type on a member Upstream-Ref: fluent/fluent-bit@be2f2be Cherry-picked from Fluent Bit v4.2.4 * [upstream] router: add router context structure and move routing Upstream-Ref: fluent/fluent-bit@7ce0d16 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router: implement router context creation and Upstream-Ref: fluent/fluent-bit@0fc19d1 Cherry-picked from Fluent Bit v4.2.4 * [upstream] routes_mask: migrate API to use router context Upstream-Ref: fluent/fluent-bit@b361654 Cherry-picked from Fluent Bit v4.2.4 * [upstream] config: integrate router context creation and Upstream-Ref: fluent/fluent-bit@0adf3e4 Cherry-picked from Fluent Bit v4.2.4 * [upstream] engine: publish routing metrics on log batch flush Upstream-Ref: fluent/fluent-bit@350a944 Cherry-picked from Fluent Bit v4.2.4 * [upstream] input_chunk: update routing mask operations to use Upstream-Ref: fluent/fluent-bit@b891248 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_storage_backlog: update routing mask operations to Upstream-Ref: fluent/fluent-bit@d05826f Cherry-picked from Fluent Bit v4.2.4 * [upstream] task: update routing mask checks to use router Upstream-Ref: fluent/fluent-bit@2d3ce50 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: routing: update routing tests to use Upstream-Ref: fluent/fluent-bit@b0cdb17 Cherry-picked from Fluent Bit v4.2.4 * [upstream] input_chunk: small cleanup Upstream-Ref: fluent/fluent-bit@f73850f Cherry-picked from Fluent Bit v4.2.4 * [upstream] router: remove unnecessary function Upstream-Ref: fluent/fluent-bit@6c487f0 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: input_chunk_routes: fix compiler Upstream-Ref: fluent/fluent-bit@a62268e Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: fuzzers: aws_credentials_fuzzer: fix Upstream-Ref: fluent/fluent-bit@3eb6c5b Cherry-picked from Fluent Bit v4.2.4 * [upstream] config: release kernel context on router creation Upstream-Ref: fluent/fluent-bit@de81352 Cherry-picked from Fluent Bit v4.2.4 * [upstream] bin: destroy cf opts on failure Upstream-Ref: fluent/fluent-bit@9fbf2e1 Cherry-picked from Fluent Bit v4.2.4 * [upstream] config: release http resources on exit Upstream-Ref: fluent/fluent-bit@02c9e9f Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_s3: Add a NULL check for plugging SEGV on dry_run Upstream-Ref: fluent/fluent-bit@05c8c3a Cherry-picked from Fluent Bit v4.2.4 * [upstream] build: Add workdir option for the default Upstream-Ref: fluent/fluent-bit@7970be4 Cherry-picked from Fluent Bit v4.2.4 * [upstream] thread_storage: Use pthread_once to ensure Upstream-Ref: fluent/fluent-bit@a4c158d Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_opensearch: release aws signature a retry or Upstream-Ref: fluent/fluent-bit@c26a2d1 Cherry-picked from Fluent Bit v4.2.4 * [upstream] router: for direct routes improve the handling of Upstream-Ref: fluent/fluent-bit@00baa18 Cherry-picked from Fluent Bit v4.2.4 * [upstream] motd: add 4.2 banner Upstream-Ref: fluent/fluent-bit@b63bcf4 Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_http: Plug a NULL dereference Upstream-Ref: fluent/fluent-bit@a8d39bb Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_http: added PUT support (#10882) Upstream-Ref: fluent/fluent-bit@b6fcaab Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_tail: Implement long ling truncation Upstream-Ref: fluent/fluent-bit@7612a09 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: runtime: in_tail: Add test cases for long line Upstream-Ref: fluent/fluent-bit@e9f63e6 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_systemd: add explicit restarts for the journal Upstream-Ref: fluent/fluent-bit@9ed44f0 Cherry-picked from Fluent Bit v4.2.4 * [upstream] config: Add dead letter queue related config Upstream-Ref: fluent/fluent-bit@3d6f0bc Cherry-picked from Fluent Bit v4.2.4 * [upstream] config: storage: Implement dlq for filesystem chunks Upstream-Ref: fluent/fluent-bit@6b74d58 Cherry-picked from Fluent Bit v4.2.4 * [upstream] engine: Add a capability to handle dead letter queue Upstream-Ref: fluent/fluent-bit@81ee67c Cherry-picked from Fluent Bit v4.2.4 * [upstream] storage: Use correct visibility of struct Upstream-Ref: fluent/fluent-bit@5ac5b9e Cherry-picked from Fluent Bit v4.2.4 * [upstream] storage: tests: internal: Add DLQ internal tests Upstream-Ref: fluent/fluent-bit@90d5ad0 Cherry-picked from Fluent Bit v4.2.4 * [upstream] storage: tests: internal: Make to be able to compile Upstream-Ref: fluent/fluent-bit@d8878be Cherry-picked from Fluent Bit v4.2.4 * [upstream] storage: tests: internal: Fix a compilation error on Upstream-Ref: fluent/fluent-bit@e183f81 Cherry-picked from Fluent Bit v4.2.4 * [upstream] storage: Restore the original state of chunks Upstream-Ref: fluent/fluent-bit@1519472 Cherry-picked from Fluent Bit v4.2.4 * [upstream] storage: Restore status of chunks for error paths Upstream-Ref: fluent/fluent-bit@eb72734 Cherry-picked from Fluent Bit v4.2.4 * [upstream] storage: internal: tests: Confirm the initial state Upstream-Ref: fluent/fluent-bit@615ef59 Cherry-picked from Fluent Bit v4.2.4 * [upstream] engine: Tweak conditions for enabling DLQ Upstream-Ref: fluent/fluent-bit@29f41f6 Cherry-picked from Fluent Bit v4.2.4 * [upstream] filter_kubernetes: use service account issuer to Upstream-Ref: fluent/fluent-bit@f831f7f Cherry-picked from Fluent Bit v4.2.4 * [upstream] filter_kubernetes: aws: declare variable on top of Upstream-Ref: fluent/fluent-bit@d814153 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_forward: fix connection release on pause memory Upstream-Ref: fluent/fluent-bit@0717103 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_opentelemetry: added five missing configuration Upstream-Ref: fluent/fluent-bit@0e56bc2 Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_s3: implement retry_limit parameter Upstream-Ref: fluent/fluent-bit@f4108db Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_blob: added missing configuration descriptions. Upstream-Ref: fluent/fluent-bit@ae14454 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tls: openssl: Implement flexible certstore loading on Upstream-Ref: fluent/fluent-bit@ef3f075 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tls: openssl: Handle location prefix more strictly Upstream-Ref: fluent/fluent-bit@923dec2 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_kubernetes_events: add support for configuring Upstream-Ref: fluent/fluent-bit@10ebd3a Cherry-picked from Fluent Bit v4.2.4 * [upstream] dockerfile: Docker image to support large page sizes Upstream-Ref: fluent/fluent-bit@137771b Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_elasticsearch: fixing missing config parameter Upstream-Ref: fluent/fluent-bit@3c4f8f4 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_forward: improve configuration parameter Upstream-Ref: fluent/fluent-bit@c88c545 Cherry-picked from Fluent Bit v4.2.4 * [upstream] build: prevent the toolchain from emitting an Upstream-Ref: fluent/fluent-bit@f2dd991 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_forward: fix segfault and double-free in trace Upstream-Ref: fluent/fluent-bit@8cc6da6 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_node_exporter_metrics: Increase buffer size to Upstream-Ref: fluent/fluent-bit@7ded9ae Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_http: added missing config parameter descriptions. Upstream-Ref: fluent/fluent-bit@12b191b Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_flowcounter: Fix incorrect bytes calculation Upstream-Ref: fluent/fluent-bit@3a501b2 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_ebpf: add missing config option descriptions Upstream-Ref: fluent/fluent-bit@ee1d69d Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_gpu_metrics: updated config parameters Upstream-Ref: fluent/fluent-bit@275ef3b Cherry-picked from Fluent Bit v4.2.4 * [upstream] build: Tweak linker flags for zstd Upstream-Ref: fluent/fluent-bit@6d6372b Cherry-picked from Fluent Bit v4.2.4 * [upstream] build: Use bundled namespace instead of the simple Upstream-Ref: fluent/fluent-bit@5a96ef5 Cherry-picked from Fluent Bit v4.2.4 * [upstream] build: Address fallbacking issue of finding libzstd Upstream-Ref: fluent/fluent-bit@eb9f9bd Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Plug glitches of time offset for Upstream-Ref: fluent/fluent-bit@282081f Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Remove needless locale related lines Upstream-Ref: fluent/fluent-bit@909b1a9 Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_cloudwatch_logs: increase MAX_EVENT_LEN to 1MB Upstream-Ref: fluent/fluent-bit@c994082 Cherry-picked from Fluent Bit v4.2.4 * [upstream] aws: Implement simple_aggregation operation Upstream-Ref: fluent/fluent-bit@3da0766 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: aws_aggregation Upstream-Ref: fluent/fluent-bit@f6c1c69 Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_kinesis_firehose: Add simple_aggregation Upstream-Ref: fluent/fluent-bit@eb39164 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: Add firehose test cases for simple_aggregation Upstream-Ref: fluent/fluent-bit@94c4b50 Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_kinesis_streams: Add simple_aggregation operation Upstream-Ref: fluent/fluent-bit@976938a Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: Add kinesis test cases for simple_aggregation Upstream-Ref: fluent/fluent-bit@0572b9c Cherry-picked from Fluent Bit v4.2.4 * [upstream] http_client: add ipv6 bracket if missing from host Upstream-Ref: fluent/fluent-bit@1d38468 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: expand http_client tests for host headers Upstream-Ref: fluent/fluent-bit@1348732 Cherry-picked from Fluent Bit v4.2.4 * [upstream] network: Add ws2tcpip.h to avoid missing func defs Upstream-Ref: fluent/fluent-bit@f760d58 Cherry-picked from Fluent Bit v4.2.4 * [upstream] utils: fix support for ipv6 addresses Upstream-Ref: fluent/fluent-bit@a959af8 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: add IPv4 and IPv6 tests for utils Upstream-Ref: fluent/fluent-bit@1676473 Cherry-picked from Fluent Bit v4.2.4 * [upstream] lib: sqlite: upgrade to v3.51.1 Upstream-Ref: fluent/fluent-bit@e9d8b5d Cherry-picked from Fluent Bit v4.2.4 * [upstream] lib: c-ares: upgrade to v1.34.6 Upstream-Ref: fluent/fluent-bit@7caffd1 Cherry-picked from Fluent Bit v4.2.4 * [upstream] lib: monkey: upgrade to v1.8.6 Upstream-Ref: fluent/fluent-bit@3683ce3 Cherry-picked from Fluent Bit v4.2.4 * [upstream] lib: cmetrics: upgrade to v1.0.6 Upstream-Ref: fluent/fluent-bit@96a31e3 Cherry-picked from Fluent Bit v4.2.4 * [upstream] lib: luajit: upgrade to 7152e154 (20251223) Upstream-Ref: fluent/fluent-bit@ddfef36 Cherry-picked from Fluent Bit v4.2.4 * [upstream] filter_kubernetes: fix parser annotation leak Upstream-Ref: fluent/fluent-bit@34f9ea9 Cherry-picked from Fluent Bit v4.2.4 * [upstream] bin: Handle CONT signal properly under leaks command Upstream-Ref: fluent/fluent-bit@bf74f1d Cherry-picked from Fluent Bit v4.2.4 * [upstream] bin: Add NULL checks Upstream-Ref: fluent/fluent-bit@ab34c0e Cherry-picked from Fluent Bit v4.2.4 * [upstream] maintenance: update branches info Upstream-Ref: fluent/fluent-bit@b0c026c Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_opentelemetry: on HTTP/2, read and process gRPC Upstream-Ref: fluent/fluent-bit@dcea262 Cherry-picked from Fluent Bit v4.2.4 * [upstream] config_format: cf_yaml: lign the behavior of dirname Upstream-Ref: fluent/fluent-bit@54a36fb Cherry-picked from Fluent Bit v4.2.4 * [upstream] filter: validate value property (not null) Upstream-Ref: fluent/fluent-bit@a2f64b9 Cherry-picked from Fluent Bit v4.2.4 * [upstream] processor: properly handle numeric values in config Upstream-Ref: fluent/fluent-bit@527ca9f Cherry-picked from Fluent Bit v4.2.4 * [upstream] filter_log_to_metrics: fix handling of init Upstream-Ref: fluent/fluent-bit@a1e82ab Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_stackdriver: clean up oauth2 cache lifecycle Upstream-Ref: fluent/fluent-bit@5a30d3e Cherry-picked from Fluent Bit v4.2.4 * [upstream] filter_kubernetes: Adjust cleanup ordering to avoid Upstream-Ref: fluent/fluent-bit@a3c457f Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Add text format for event rendering Upstream-Ref: fluent/fluent-bit@2be7535 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Plug memory errors on exceptions Upstream-Ref: fluent/fluent-bit@9939213 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_winevtlog: Use different variables for collecting Upstream-Ref: fluent/fluent-bit@3bdac8c Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_tail: Add skipped_lines counter Upstream-Ref: fluent/fluent-bit@7155725 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_tail: Handle only first occurrence for skipped Upstream-Ref: fluent/fluent-bit@09e3780 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_splunk: Extract x-forwarded-for as a remote_addr Upstream-Ref: fluent/fluent-bit@8b5e517 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: in_splunk: Add a remote_addr extraction case Upstream-Ref: fluent/fluent-bit@0192ac7 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: internal: aws: switch AWS Endpoints for Upstream-Ref: fluent/fluent-bit@4a3b205 Cherry-picked from Fluent Bit v4.2.4 * [upstream] aws: addtional changes mentioned by coderabbit Upstream-Ref: fluent/fluent-bit@0915933 Cherry-picked from Fluent Bit v4.2.4 * [upstream] plugin_proxy: enable event_type specification for Upstream-Ref: fluent/fluent-bit@a36b225 Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_splunk: Plug memory issues Upstream-Ref: fluent/fluent-bit@653f174 Cherry-picked from Fluent Bit v4.2.4 * [upstream] filter_kubernetes: Prevent backtrack for extracting Upstream-Ref: fluent/fluent-bit@551ab40 Cherry-picked from Fluent Bit v4.2.4 * [upstream] multiline: ml: Propagate metadata even if on Upstream-Ref: fluent/fluent-bit@6fd9e11 Cherry-picked from Fluent Bit v4.2.4 * [upstream] multiline: ml: Plug memory errors Upstream-Ref: fluent/fluent-bit@eea548a Cherry-picked from Fluent Bit v4.2.4 * [upstream] multiline: ml_stream: Clean up stream's metadata Upstream-Ref: fluent/fluent-bit@0694882 Cherry-picked from Fluent Bit v4.2.4 * [upstream] multiline: ml: Make funtions for metadata operations Upstream-Ref: fluent/fluent-bit@3770881 Cherry-picked from Fluent Bit v4.2.4 * [upstream] filter_log_to_metrics: Use pre-allocated slots of Upstream-Ref: fluent/fluent-bit@00fa39d Cherry-picked from Fluent Bit v4.2.4 * [upstream] processor_content_modifier: free autogenerated OTEL Upstream-Ref: fluent/fluent-bit@2fdd547 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: runtime: processor_content_modifier: OTEL Upstream-Ref: fluent/fluent-bit@a9948ee Cherry-picked from Fluent Bit v4.2.4 * [upstream] http_server: enforce buffer_max_size for HTTP/2 Upstream-Ref: fluent/fluent-bit@af48eee Cherry-picked from Fluent Bit v4.2.4 * [upstream] in_elasticsearch: fix missing var initialization Upstream-Ref: fluent/fluent-bit@0c7d9e2 Cherry-picked from Fluent Bit v4.2.4 * [upstream] http_server: http2: fix return value on NULL server Upstream-Ref: fluent/fluent-bit@095666f Cherry-picked from Fluent Bit v4.2.4 * [upstream] avro: out_kafka: fix a bug in avro schema_id Upstream-Ref: fluent/fluent-bit@74f0bdd Cherry-picked from Fluent Bit v4.2.4 * [upstream] avro: Fix specification errors Upstream-Ref: fluent/fluent-bit@dff045e Cherry-picked from Fluent Bit v4.2.4 * [upstream] out_kafka: Fix glitched width of overhead Upstream-Ref: fluent/fluent-bit@a69c89d Cherry-picked from Fluent Bit v4.2.4 * [upstream] build: Set without test building forcibly for jansson Upstream-Ref: fluent/fluent-bit@3444cf0 Cherry-picked from Fluent Bit v4.2.4 * [upstream] lib: monkey: upgrade to v1.8.8 Upstream-Ref: fluent/fluent-bit@c0cbc1e Cherry-picked from Fluent Bit v4.2.4 * [upstream] output: persist route-effective metrics on flush Upstream-Ref: fluent/fluent-bit@4e0c10b Cherry-picked from Fluent Bit v4.2.4 * [upstream] engine: use route-effective counts for output metrics Upstream-Ref: fluent/fluent-bit@dde4a28 Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: runtime: add output processor drop counter Upstream-Ref: fluent/fluent-bit@cd513fa Cherry-picked from Fluent Bit v4.2.4 * [upstream] tests: runtime: fix output processor counter Upstream-Ref: fluent/fluent-bit@d1f039e Cherry-picked from Fluent Bit v4.2.4 * chore: update upstream version to v4.2.4 Synced patches from Fluent Bit v4.1.0 to v4.2.4 * chore: update copyright to include 2026 end date Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * chore: update copyright to include 2026 end date Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * feat: manual review and update of missing changes Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * fix: add ignored files Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * fix: add missing file Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * fix: add missing files Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * feat: manual review and update of missing changes Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * feat: manual review and update of missing changes Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * revert: flb_cf_yaml.c take upstream Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * fix: include changes from fluent/fluent-bit#11614 Signed-off-by: Patrick Stephens <pat@telemetryforge.io> * fix: update port used in parallel for otel routing Signed-off-by: Patrick Stephens <pat@telemetryforge.io> --------- Signed-off-by: Patrick Stephens <pat@telemetryforge.io>
1 parent c40b0ae commit 121b307

1,964 files changed

Lines changed: 58229 additions & 21516 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/unit-tests.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,11 @@ jobs:
3838
SANITIZE_ADDRESS=On
3939
SANITIZE_UNDEFINED=On
4040
- name: coverage
41+
# Coverage needs more stack for some of the tests
42+
# https://github.com/fluent/fluent-bit/pull/11614
4143
options: |
4244
FLB_COVERAGE=On
45+
FLB_CORO_STACK_SIZE=4194304
4346
# Uncomment to enable additional config as needed
4447
# - name: memory
4548
# options: |

scripts/update-copyright.sh

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
#!/bin/bash
2+
set -euo pipefail
3+
4+
# This does not work with a symlink to this script
5+
# SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
6+
# See https://stackoverflow.com/a/246128/24637657
7+
SOURCE=${BASH_SOURCE[0]}
8+
while [ -L "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
9+
SCRIPT_DIR=$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd )
10+
SOURCE=$(readlink "$SOURCE")
11+
# if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
12+
[[ $SOURCE != /* ]] && SOURCE=$SCRIPT_DIR/$SOURCE
13+
done
14+
SCRIPT_DIR=$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd )
15+
16+
REPO_ROOT=${REPO_ROOT:-${SCRIPT_DIR}/..}
17+
SOURCE_ROOT=${SOURCE_ROOT:-$REPO_ROOT/source}
18+
19+
# Update the copyright year in all files in the SOURCE_ROOT directory
20+
21+
# Iterate over all files in the SOURCE_ROOT directory but only in the "include" and "src" subdirectories
22+
# For each file, check that the copyright statement includes the current year, and if not, update it to include the current year.
23+
# The format will be "Copyright (C) 20XX-20XX The Fluent Bit Authors"
24+
# where the first year is the year of the first commit and the second year is the current year.
25+
# If the copyright statement does not include a year range, add the current year to the end of the statement.
26+
# If the copyright statement does not include the current year, update it to include the current year.
27+
# If the copyright statement does not include the year at all, add the current year to the end of the statement.
28+
CURRENT_YEAR=$(date +"%Y")
29+
find "$SOURCE_ROOT" -type f \( -path "*/include/*" -o -path "*/src/*" -o -path "*/tests/*" -o -path "*/plugins/*" \) -exec sed -i -E "s/(Copyright \(C\)[\w]+[0-9]{4})([-\w]*)?([0-9]{4})?[\w]+The Fluent Bit Authors/\1-$CURRENT_YEAR The Fluent Bit Authors/g" {} \;
30+
31+
grep -R "The Fluent Bit Authors" "$SOURCE_ROOT" | grep -v "$CURRENT_YEAR The Fluent Bit Authors" || true

source/CMakeLists.txt

Lines changed: 68 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,14 @@ if (MSVC)
8383
add_compile_options(/MT)
8484
else()
8585
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
86+
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
87+
# Prevent the toolchain from emitting an executable stack on Linux targets,
88+
# which triggers kernel warnings (e.g. "started with executable stack") and
89+
# weakens security hardening. The linker flag is not supported on macOS.
90+
add_compile_options(-Wa,--noexecstack)
91+
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,noexecstack")
92+
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,noexecstack")
93+
endif()
8694
# The following flags are to enhance security, but it may impact performance,
8795
# we disable them by default.
8896
endif()
@@ -134,12 +142,13 @@ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/library")
134142
option(FLB_ALL "Enable all features" No)
135143
option(FLB_DEBUG "Build with debug mode (-g)" No)
136144
option(FLB_RELEASE "Build with release mode (-O2 -g -DNDEBUG)" Yes)
137-
set(FLB_IPO "ReleaseOnly" CACHE STRING "Build with interprocedular optimization")
145+
set(FLB_IPO "ReleaseOnly" CACHE STRING "Build with interprocedural optimization")
138146
set_property(CACHE FLB_IPO PROPERTY STRINGS "On;Off;ReleaseOnly")
139147
option(FLB_SMALL "Optimise for small size" No)
140148
set(FLB_SECURITY "ReleaseOnly" CACHE STRING "Build with security optimizations")
141149
set_property(CACHE FLB_SECURITY PROPERTY STRINGS "On;Off;ReleaseOnly")
142150
option(FLB_COVERAGE "Build with code-coverage" No)
151+
option(FLB_COMPILER_STRICT_POINTER_TYPES "Build with -Werror=incompatible-pointer-types" No)
143152
option(FLB_JEMALLOC "Build with Jemalloc support" No)
144153
option(FLB_REGEX "Build with Regex support" Yes)
145154
option(FLB_UTF8_ENCODER "Build with UTF8 encoding support" Yes)
@@ -429,14 +438,6 @@ if(FLB_UNICODE_ENCODER)
429438
endif()
430439
endif()
431440

432-
# simdutf
433-
if(FLB_UNICODE_ENCODER)
434-
if (NOT FLB_USE_SIMDUTF)
435-
message(STATUS "FLB_USE_SIMDUTF is disabled. Disabling FLB_UNICODE_ENCODER support.")
436-
set(FLB_UNICODE_ENCODER OFF)
437-
endif()
438-
endif()
439-
440441
if(FLB_COVERAGE)
441442
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 --coverage -fprofile-arcs -ftest-coverage")
442443
if (FLB_UNICODE_ENCODER)
@@ -445,6 +446,17 @@ if(FLB_COVERAGE)
445446
set(CMAKE_BUILD_TYPE "Debug")
446447
endif()
447448

449+
if(FLB_COMPILER_STRICT_POINTER_TYPES)
450+
if(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
451+
add_compile_options(-Werror=incompatible-pointer-types)
452+
endif()
453+
# Currently, AppleClang has more struct rules when using -Werror=incompatible-pointer-types.
454+
# We still permit to discarding const qualifiers warnings.
455+
if(CMAKE_C_COMPILER_ID MATCHES "AppleClang")
456+
add_compile_options(-Wno-incompatible-pointer-types-discards-qualifiers)
457+
endif()
458+
endif()
459+
448460
# Enable Debug symbols if specified
449461
if(MSVC)
450462
set(CMAKE_BUILD_TYPE None) # Avoid flag conflicts (See CMakeList.txt:L18)
@@ -576,14 +588,52 @@ add_subdirectory(${FLB_PATH_LIB_MINIZ} EXCLUDE_FROM_ALL)
576588

577589
# Zstd (zstd)
578590
if(FLB_PREFER_SYSTEM_LIB_ZSTD)
579-
find_package(PkgConfig)
580-
pkg_check_modules(LIBZSTD libzstd>=1.4.8)
591+
find_package(ZSTD 1.4.8 QUIET)
592+
if(ZSTD_FOUND)
593+
set(LIBZSTD_FOUND TRUE)
594+
# Use the target provided by find_package(ZSTD)
595+
# Modern FindZSTD provides ZSTD::libzstd_static or ZSTD::libzstd_shared
596+
if(TARGET ZSTD::libzstd_static)
597+
set(LIBZSTD_LIBRARIES ZSTD::libzstd_static)
598+
elseif(TARGET ZSTD::libzstd_shared)
599+
set(LIBZSTD_LIBRARIES ZSTD::libzstd_shared)
600+
elseif(TARGET ZSTD::ZSTD)
601+
set(LIBZSTD_LIBRARIES ZSTD::ZSTD)
602+
else()
603+
# Fallback: create a wrapper if no target is provided
604+
add_library(BUNDLED::ZSTD INTERFACE IMPORTED)
605+
if(ZSTD_LIBRARIES)
606+
set_property(TARGET BUNDLED::ZSTD PROPERTY
607+
INTERFACE_LINK_LIBRARIES "${ZSTD_LIBRARIES}")
608+
endif()
609+
if(ZSTD_INCLUDE_DIRS)
610+
set_property(TARGET BUNDLED::ZSTD PROPERTY
611+
INTERFACE_INCLUDE_DIRECTORIES "${ZSTD_INCLUDE_DIRS}")
612+
endif()
613+
set(LIBZSTD_LIBRARIES BUNDLED::ZSTD)
614+
endif()
615+
else()
616+
find_package(PkgConfig)
617+
pkg_check_modules(LIBZSTD libzstd>=1.4.8)
618+
if(LIBZSTD_FOUND)
619+
include_directories(${LIBZSTD_INCLUDE_DIRS})
620+
link_directories(${LIBZSTD_LIBRARY_DIRS})
621+
add_library(BUNDLED::ZSTD INTERFACE IMPORTED)
622+
set_property(TARGET BUNDLED::ZSTD PROPERTY
623+
INTERFACE_LINK_LIBRARIES "${LIBZSTD_LIBRARIES}")
624+
set(LIBZSTD_LIBRARIES BUNDLED::ZSTD)
625+
endif()
626+
endif()
581627
endif()
582-
if(LIBZSTD_FOUND)
583-
include_directories(${LIBZSTD_INCLUDE_DIRS})
584-
link_directories(${LIBZSTD_LIBRARY_DIRS})
585-
else()
628+
629+
if(NOT LIBZSTD_FOUND)
586630
include(cmake/zstd.cmake)
631+
632+
if(NOT MSVC)
633+
target_compile_options(libzstd_static PRIVATE -fvisibility=hidden)
634+
endif()
635+
636+
set(LIBZSTD_LIBRARIES libzstd_static)
587637
endif()
588638

589639
# ring buffer library
@@ -597,8 +647,8 @@ if(FLB_AVRO_ENCODER)
597647
# jansson
598648
option(JANSSON_BUILD_DOCS OFF)
599649
option(JANSSON_EXAMPLES OFF)
600-
option(JANSSON_WITHOUT_TESTS ON)
601650
option(JANSSON_BUILD_SHARED_LIBS OFF)
651+
set(JANSSON_WITHOUT_TESTS ON CACHE BOOL "" FORCE)
602652
add_subdirectory(${FLB_PATH_LIB_JANSSON})
603653

604654
#avro
@@ -770,6 +820,8 @@ endif()
770820
# AWS MSK IAM detection (must come after Kafka section)
771821
if(FLB_AWS AND FLB_KAFKA)
772822
# Check if Kafka SASL support was detected
823+
# On Windows: uses SSPI (no Cyrus SASL needed, just SSL)
824+
# On Linux/macOS: uses Cyrus SASL (libsasl2)
773825
if(DEFINED FLB_SASL_ENABLED AND FLB_SASL_ENABLED)
774826
set(FLB_HAVE_AWS_MSK_IAM ON) # Set CMake variable
775827
FLB_DEFINITION(FLB_HAVE_AWS_MSK_IAM) # Set preprocessor definition

source/MAINTENANCE.md

Lines changed: 30 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6,35 +6,50 @@ This document outlines the maintenance strategy and version support for Fluent B
66

77
| Branch | Version | Status | Maintainer | Notes |
88
|------------|--------------------|---------------------|-------------------------------------------------------------|--------------------------------------------------------------------|
9-
| `master` | v4.1 (development) | Active development | [Eduardo Silva](https://github.com/edsiper) | All new features and bug fixes land here first |
10-
| `4.0` | v4.0.x | Maintenance only | [Hiroshi Hatake (@cosmo0920)](https://github.com/cosmo0920) | Critical fixes and safe backports only. Maintained until **Dec 31, 2025** |
9+
| `master` | v5.0 (development) | Active development | [Eduardo Silva](https://github.com/edsiper) | All new features and bug fixes land here first |
10+
| `4.2` | v4.2.x | Stable | [Eduardo Silva](https://github.com/edsiper) [Hiroshi Hatake (@cosmo0920)](https://github.com/cosmo0920) | Current stable release series. Active development and updates. May receive minor enhancements in addition to fixes. |
11+
| `4.1` | v4.1.x | Maintenance only | [Hiroshi Hatake (@cosmo0920)](https://github.com/cosmo0920) | Critical fixes and safe backports only. Maintained until **February 28, 2026** |
1112

1213
---
1314

14-
## v4.0 Maintenance Policy
15+
## Maintenance Policy
1516

16-
As of **July 2025**, active development has moved to Fluent Bit **v4.1** (tracked in the `master` branch).
17+
Active development is currently on Fluent Bit **v5.0** (tracked in the `master` branch). The **v4.2** branch is the current stable release series and receives active updates. Previous release lines enter **maintenance mode** after the next major/minor release.
1718

18-
**v4.0** has entered **maintenance mode**, now maintained by [Hiroshi Hatake (@cosmo0920)](https://github.com/cosmo0920), a long-time Fluent Bit contributor and core developer.
19+
### Accepted Changes for Maintenance Branches
1920

20-
Maintenance for v4.0 will continue until **December 31, 2025**, which is three months after the official v4.1 release.
21-
22-
### Accepted Changes for v4.0
23-
24-
- ✅ Security patches
21+
- ✅ Security patches (see [SECURITY.md](SECURITY.md) for security update timelines)
2522
- ✅ Critical bug fixes
2623
- ✅ Low-risk enhancements that unblock adoption (e.g., OpenTelemetry improvements, performance tuning)
2724

28-
> ⚠️ All changes must first be merged into `master` before being cherry-picked into the `4.0` branch by the maintainer.
25+
> ⚠️ All changes must first be merged into `master` before being cherry-picked into maintenance branches by the maintainer.
26+
27+
Maintenance releases continue on an as-needed basis depending on urgency and impact.
28+
29+
### v4.2 Stable Series
30+
31+
**v4.2** is the current stable release series and receives active development, bug fixes, and security updates. This is the recommended version for production use.
2932

30-
v4.0 releases will continue on an as-needed basis depending on urgency and impact.
33+
### v4.1 Maintenance
34+
35+
**v4.1** has entered **maintenance mode**, now maintained by [Hiroshi Hatake (@cosmo0920)](https://github.com/cosmo0920), a long-time Fluent Bit contributor and core developer.
36+
37+
**v4.1** will receive security updates and critical fixes until **February 28, 2026** (as specified in [SECURITY.md](SECURITY.md)).
38+
39+
### v4.0 Maintenance
40+
41+
**v4.0** reached **End-of-Life (EOL)** on **December 23, 2025** and is no longer maintained. No further security patches or bug fixes will be provided for this version line.
3142

3243
---
3344

3445
## How to Contribute to Maintained Versions
3546

36-
If you're submitting a fix or feature relevant to v4.0:
47+
If you're submitting a fix or feature relevant to a stable or maintenance branch (v4.2 or v4.1):
3748

3849
- Open your PR against the `master` branch
39-
- Add a note in the PR or issue: `Target: v4.0`
40-
- Tag [@cosmo0920](https://github.com/cosmo0920) to request backport consideration
50+
- Add a note in the PR or issue: `Target: v4.2` or `Target: v4.1`
51+
- Tag the branch maintainer to request backport consideration:
52+
- For v4.2: [@edsiper](https://github.com/edsiper) [@cosmo0920](https://github.com/cosmo0920)
53+
- For v4.1: [@cosmo0920](https://github.com/cosmo0920)
54+
55+
> **Note:** v4.0 is End-of-Life and no longer accepts backports. For security-related issues, please follow the process outlined in [SECURITY.md](SECURITY.md).

source/cmake/libraries.cmake

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,20 @@ set(FLB_PATH_LIB_MSGPACK "lib/msgpack-c")
1111
set(FLB_PATH_LIB_NGHTTP2 "lib/nghttp2-1.65.0")
1212
set(FLB_PATH_LIB_AVRO "lib/avro")
1313
set(FLB_PATH_LIB_CHUNKIO "lib/chunkio")
14-
set(FLB_PATH_LIB_LUAJIT "lib/luajit-04dca791")
14+
set(FLB_PATH_LIB_LUAJIT "lib/luajit-7152e154")
1515
set(FLB_PATH_LIB_MONKEY "lib/monkey")
1616
set(FLB_PATH_LIB_JSMN "lib/jsmn")
17-
set(FLB_PATH_LIB_SQLITE "lib/sqlite-amalgamation-3450200")
17+
set(FLB_PATH_LIB_SQLITE "lib/sqlite-amalgamation-3510100")
1818
set(FLB_PATH_LIB_JANSSON "lib/jansson-e23f558")
1919
set(FLB_PATH_LIB_ONIGMO "lib/onigmo")
2020
set(FLB_PATH_LIB_MPACK "lib/mpack-amalgamation-1.1.1")
2121
set(FLB_PATH_LIB_MINIZ "lib/miniz")
2222
set(FLB_PATH_LIB_TUTF8E "lib/tutf8e")
23-
set(FLB_PATH_LIB_CARES "lib/c-ares-1.34.4")
23+
set(FLB_PATH_LIB_CARES "lib/c-ares-1.34.6")
2424
set(FLB_PATH_LIB_SNAPPY "lib/snappy-fef67ac")
2525
set(FLB_PATH_LIB_RDKAFKA "lib/librdkafka-2.10.1")
2626
set(FLB_PATH_LIB_RING_BUFFER "lib/lwrb")
27-
set(FLB_PATH_LIB_WASM_MICRO_RUNTIME "lib/wasm-micro-runtime-WAMR-1.3.3")
27+
set(FLB_PATH_LIB_WASM_MICRO_RUNTIME "lib/wasm-micro-runtime-WAMR-2.4.1")
2828
set(FLB_PATH_LIB_ZSTD "lib/zstd-1.5.7")
2929
set(FLB_PATH_LIB_SIMDUTF "lib/simdutf-amalgamation-5.5.0")
3030
set(FLB_PATH_LIB_ZIG_SDK "lib/zig_sdk")

source/cpack/wix/WIX.template.in.cmakein

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@
8383
</SetProperty>
8484

8585
<Property Id="CreateFluentBitWinSvc" Value=" "/>
86-
<CustomAction Id="SetCreateFluentBitWinSvcCommand" Property="CreateFluentBitWinSvc" Value="&quot;sc.exe&quot; create @FLB_OUT_NAME@ binpath= &quot;\&quot;[INSTALL_ROOT]bin\@FLB_OUT_NAME@.exe\&quot; -c \&quot;[INSTALL_ROOT]conf\@FLB_OUT_NAME@.conf\&quot;&quot; start= delayed-auto" Execute="immediate" />
86+
<CustomAction Id="SetCreateFluentBitWinSvcCommand" Property="CreateFluentBitWinSvc" Value="&quot;sc.exe&quot; create @FLB_OUT_NAME@ binpath= &quot;\&quot;[INSTALL_ROOT]bin\@FLB_OUT_NAME@.exe\&quot; -c \&quot;[INSTALL_ROOT]conf\@FLB_OUT_NAME@.conf\&quot; --workdir \&quot;[INSTALL_ROOT]conf\&quot;&quot; start= delayed-auto" Execute="immediate" />
8787
<CustomAction Id="CreateFluentBitWinSvc" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no" />
8888

8989
<Property Id="LaunchFluentBitWinSvc" Value=" "/>

0 commit comments

Comments
 (0)