Skip to content

rtmp: drop support - #20673

Closed
bagder wants to merge 1 commit into
masterfrom
bagder/rm-rtmp
Closed

bagder wants to merge 1 commit into
masterfrom
bagder/rm-rtmp

Conversation

@bagder

@bagder bagder commented Feb 22, 2026

Copy link
Copy Markdown
Member
  • librtmp has no test cases, makes no proper releases and has not had a single commit within the last year

  • librtmp parses the URL itself and requires non-compliant URLs for this

  • we have no RTMP tests

  • RTMP is barely used by curl users (2.2% self-identified in the 2025 survey)

@bagder bagder added feature-window A merge of this requires an open feature window RTMP labels Feb 22, 2026
@github-actions github-actions Bot added cmdline tool CI Continuous Integration labels Feb 22, 2026
@bagder
bagder marked this pull request as ready for review February 22, 2026 12:14
@bagder
bagder requested a review from Copilot February 22, 2026 13:55

Copilot AI left a comment

Copy link
Copy Markdown

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 RTMP (librtmp-backed) support across curl/libcurl by deleting the protocol handler, dropping build/config integration, and updating documentation and CI to reflect that RTMP is no longer supported.

Changes:

  • Remove RTMP protocol implementation and scheme/port/version plumbing from libcurl.
  • Remove librtmp detection/configuration from Autotools, CMake, VMS tooling, and CI matrices.
  • Update user-facing docs/help text to stop advertising RTMP and to record the removal.

Reviewed changes

Copilot reviewed 35 out of 35 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/tool_help.c Simplifies protocol listing (no RTMP special-casing).
scripts/schemetable.c Drops RTMP-related schemes from scheme-table generator.
scripts/ciconfig.pl Removes librtmp from CI config options list.
scripts/cd2nroff Removes RTMP/RTMPS from known protocol map for docs generation.
projects/vms/generate_config_vms_h_curl.com Removes USE_LIBRTMP handling from VMS config generation.
lib/version.c Removes RTMP version reporting and RTMP schemes from supported protocol list.
lib/urldata.h Removes RTMP default port constants.
lib/url.c Removes RTMP scheme integration and regenerates perfect-hash scheme table without RTMP.
lib/curl_rtmp.h Deletes RTMP scheme declarations / version helper header.
lib/curl_rtmp.c Deletes RTMP protocol handler implementation.
lib/curl_config-cmake.h.in Removes USE_LIBRTMP CMake config define.
lib/Makefile.inc Removes RTMP source/header from build lists.
docs/libcurl/symbols-in-versions Marks RTMP protocol macros as removed (version attribution needs alignment).
docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS_STR.md Removes RTMP* from protocol string list.
docs/libcurl/opts/CURLOPT_PROTOCOLS_STR.md Removes RTMP* from protocol string list and adds history note (version attribution needs alignment).
docs/cmdline-opts/_PROTOCOLS.md Removes RTMP(S) section from command-line protocol docs.
docs/cmdline-opts/_DESCRIPTION.md Removes RTMP/RTMPS from supported protocol list.
docs/URL-SYNTAX.md Removes RTMP schemes, ports, and RTMP URL syntax section.
docs/INSTALL.md Removes --without-librtmp from documented configure options.
docs/INSTALL-CMAKE.md Removes USE_LIBRTMP and related variables from CMake documentation.
docs/HISTORY.md Adds an entry about RTMP removal (currently written as a future date).
docs/FAQ.md Removes RTMP/RTMPS from protocol list.
docs/DEPRECATE.md Adds RTMP to “Past removals” list (version attribution needs alignment).
configure.ac Removes --with/--without-librtmp support and protocol summary output for RTMP.
README.md Removes RTMP/RTMPS from supported protocol list.
Makefile.am Removes CMake/FindLibrtmp.cmake from distributed files.
CMakeLists.txt Removes USE_LIBRTMP option, find_package wiring, and feature listing.
CMake/curl-config.in.cmake Removes librtmp dependency propagation from generated curl-config CMake package.
CMake/FindLibrtmp.cmake Deletes the CMake find-module for librtmp.
.github/workflows/macos.yml Removes librtmp/rtmpdump from CI jobs (one job has an invalid CMake flag token).
.github/workflows/linux.yml Removes librtmp packages/config flags from Linux CI jobs.
.github/workflows/linux-old.yml Removes librtmp packages/config flags from legacy Linux CI jobs.
.github/workflows/codeql.yml Removes librtmp from CodeQL build dependencies/config.
.github/scripts/cmp-config.pl Removes librtmp header define from config comparison script.
.github/labeler.yml Removes RTMP label automation rules.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/macos.yml Outdated
Comment thread docs/libcurl/symbols-in-versions
Comment thread docs/DEPRECATE.md
Comment thread docs/libcurl/opts/CURLOPT_PROTOCOLS_STR.md
@bagder

bagder commented Feb 22, 2026

Copy link
Copy Markdown
Member Author

augment review

@augmentcode

augmentcode Bot commented Feb 22, 2026

Copy link
Copy Markdown
🤖 Augment PR Summary

Summary: This PR removes RTMP protocol support from curl/libcurl.

Changes:

  • Drops the librtmp integration across Autotools and CMake (options, find-modules, config exports).
  • Deletes the RTMP protocol implementation and scheme registrations from the library.
  • Updates scheme lookup hashing/table generation to exclude RTMP-related schemes.
  • Removes RTMP from version/protocol reporting in libcurl and from the curl tool’s version output handling.
  • Cleans up CI workflows and helper scripts to stop installing/configuring librtmp.
  • Updates user and API documentation to remove RTMP/RTMP* mentions and document the removal in project history.

Technical Notes: RTMP depended on the external librtmp/rtmpdump codebase; this change eliminates that dependency and the associated maintenance/testing surface.

🤖 Was this summary useful? React with 👍 or 👎

@augmentcode augmentcode Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Review completed. 1 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

Comment thread docs/URL-SYNTAX.md Outdated
bagder added a commit that referenced this pull request Feb 22, 2026
bagder added a commit that referenced this pull request Feb 22, 2026
bagder added a commit that referenced this pull request Feb 22, 2026
- librtmp has no test cases, makes no proper releases and has not had a
  single commit within the last year

- librtmp parses the URL itself and requires non-compliant URLs for this

- we have no RTMP tests

- RTMP is barely used by curl users (2.2% self-identified in the 2025
  survey)

Closes #20673
bagder added a commit that referenced this pull request Mar 3, 2026
- librtmp has no test cases, makes no proper releases and has not had a
  single commit within the last year

- librtmp parses the URL itself and requires non-compliant URLs for this

- we have no RTMP tests

- RTMP is barely used by curl users (2.2% self-identified in the 2025
  survey)

Closes #20673
@bagder

bagder commented Mar 3, 2026

Copy link
Copy Markdown
Member Author

@aisle-analyzer

@aisle-research-bot

aisle-research-bot Bot commented Mar 3, 2026 •

Copy link
Copy Markdown

🔒 Aisle Security Analysis

✅ We scanned this PR and did not find any security vulnerabilities.

Aisle supplements but does not replace security review.


Analyzed PR: #20673 at commit 268cee2

Last updated on: 2026-03-03T11:09:42Z

bagder added a commit that referenced this pull request Mar 15, 2026
- librtmp has no test cases, makes no proper releases and has not had a
  single commit within the last year

- librtmp parses the URL itself and requires non-compliant URLs for this

- we have no RTMP tests

- RTMP is barely used by curl users (2.2% self-identified in the 2025
  survey)

Closes #20673
bagder added a commit that referenced this pull request Mar 21, 2026
- librtmp has no test cases, makes no proper releases and has not had a
  single commit within the last year

- librtmp parses the URL itself and requires non-compliant URLs for this

- we have no RTMP tests

- RTMP was used by 2.2% of curl users (self-identified in the 2025
  survey)

Closes #20673
@github-actions github-actions Bot added the tests label Mar 21, 2026
bagder added a commit that referenced this pull request Mar 21, 2026
- librtmp has no test cases, makes no proper releases and has not had a
  single commit within the last year

- librtmp parses the URL itself and requires non-compliant URLs for this

- we have no RTMP tests

- RTMP was used by 2.2% of curl users (self-identified in the 2025
  survey)

Closes #20673
- librtmp has no test cases, makes no proper releases and has not had a
  single commit within the last year

- librtmp parses the URL itself and requires non-compliant URLs for this

- we have no RTMP tests

- RTMP was used by 2.2% of curl users (self-identified in the 2025
  survey)

Closes #20673
@bagder
bagder requested a review from Copilot March 21, 2026 13:48

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 37 out of 37 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docs/libcurl/opts/CURLOPT_PROTOCOLS_STR.md
@bagder bagder closed this in ceae02d Mar 21, 2026
@bagder
bagder deleted the bagder/rm-rtmp branch March 21, 2026 13:56
outcast36 pushed a commit to greearb/curl that referenced this pull request Jun 3, 2026
outcast36 pushed a commit to greearb/curl that referenced this pull request Jun 3, 2026
- librtmp has no test cases, makes no proper releases and has not had a
  single commit within the last year

- librtmp parses the URL itself and requires non-compliant URLs for this

- we have no RTMP tests

- RTMP was used by 2.2% of curl users (self-identified in the 2025
  survey)

Closes curl#20673
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI Continuous Integration cmdline tool feature-window A merge of this requires an open feature window RTMP tests

Development

Successfully merging this pull request may close these issues.

2 participants