From Fedora Project Wiki
(Initial Change document)
 
(add tracker bug and release notes ticket)
 
(6 intermediate revisions by 4 users not shown)
Line 2: Line 2:


= Wget2 as wget <!-- The name of your change proposal --> =
= Wget2 as wget <!-- The name of your change proposal --> =
{{Change_Proposal_Banner}}


== Summary ==
== Summary ==
Line 13: Line 11:
This should link to your home wiki page so we know who you are.  
This should link to your home wiki page so we know who you are.  
-->
-->
* Name: [[User:Ngompa| Neal Gompa]], [[User:Mruprich| Michal Ruprich]
* Name: [[User:Ngompa| Neal Gompa]], [[User:Mruprich| Michal Ruprich]]
<!-- Include you email address that you can be reached should people want to contact you about helping with your change, status is requested, or technical issues need to be resolved. If the change proposal is owned by a SIG, please also add a primary contact person. -->
<!-- Include you email address that you can be reached should people want to contact you about helping with your change, status is requested, or technical issues need to be resolved. If the change proposal is owned by a SIG, please also add a primary contact person. -->
* Email: ngompa13@gmail.com, mruprich@redhat.com
* Email: ngompa13@gmail.com, mruprich@redhat.com
Line 19: Line 17:
* FESCo shepherd: [[User:FASAccountName| Shehperd name]] <email address>
* FESCo shepherd: [[User:FASAccountName| Shehperd name]] <email address>
-->
-->


== Current status ==
== Current status ==
[[Category:ChangeReadyForWrangler]]
[[Category:ChangeAcceptedF40]]
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
Line 40: Line 37:
ON_QA -> change is fully code complete
ON_QA -> change is fully code complete
-->
-->
* [<will be assigned by the Wrangler> devel thread]
* [https://lists.fedoraproject.org/archives/list/devel-announce@lists.fedoraproject.org/thread/OFE3XYJIIJCW4OF4LQD3SNNXHD3YY3H2/ Announced]
* FESCo issue: <will be assigned by the Wrangler>
* [https://discussion.fedoraproject.org/t/f40-change-proposal-wget2-as-wget/96422 Discussion thread]
* Tracker bug: <will be assigned by the Wrangler>
* FESCo issue: [https://pagure.io/fesco/issue/3118 #3118]
* Release notes tracker: <will be assigned by the Wrangler>
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=2254790 #2254790]
* Release notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/1065 #1065]


== Detailed Description ==
== Detailed Description ==
Line 75: Line 73:
When upgrading to Fedora Linux 40, systems with {{package|wget}} installed will be switched to {{package|wget2}} via the <code>wget2-wget</code> package. The change should be mostly transparent to users.
When upgrading to Fedora Linux 40, systems with {{package|wget}} installed will be switched to {{package|wget2}} via the <code>wget2-wget</code> package. The change should be mostly transparent to users.


Except for [https://en.wikipedia.org/wiki/WARC_(file_format) WARC] and [https://en.wikipedia.org/wiki/File_Transfer_Protocol FTP], Wget2 is a drop-in replacement for Wget in [https://gitlab.com/gnuwget/wget2/-/wikis/Home#what-is-missing most cases]. See upstream info: [https://gitlab.com/gnuwget/wget2/-/wikis/Home#different-behavior-of-wget2 Different behavior of Wget2 and Differing CLI options Wget/Wget2], and [https://gitlab.com/gnuwget/wget2/-/blob/master/todo.txt TODO].


== How To Test ==
== How To Test ==

Latest revision as of 00:43, 16 December 2023


Wget2 as wget

Summary

Replace wget with wget2 (a modern implementation of wget intended to replace wget 1.x) as the provider of wget.

Owner

Current status

Detailed Description

GNU Wget2 is the successor to GNU Wget providing a modern implementation of wget backed by a new library: libwget2. The intent to switch from wget 1.x to wget2 is to switch to an implementation that is more actively developed and provides a richer interface for leveraging wget's functionality.

Feedback

Benefit to Fedora

The major benefit of switching to wget2 is leveraging the cleaner codebase that leverages modern practices for development and maintainability, including unit tests and fuzzing as a security-sensitive component. Users will also see better support for newer protocols over time as they are more easily and quickly plumbed into wget2 than wget.

Scope

  • Proposal owners: Add a wget2-wget subpackage that replaces wget and ensure things don't break during mass build. Then retire wget.
  • Other developers: N/A
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with Community Initiatives: N/A (not needed for this Change)

Upgrade/compatibility impact

When upgrading to Fedora Linux 40, systems with wget installed will be switched to wget2 via the wget2-wget package. The change should be mostly transparent to users.

Except for WARC and FTP, Wget2 is a drop-in replacement for Wget in most cases. See upstream info: Different behavior of Wget2 and Differing CLI options Wget/Wget2, and TODO.

How To Test

Users can test wget2 now by installing the package and using the wget2 command. The interface will be the interface users have with wget on upgrade.


User Experience

This change should be largely transparent to users. Some of the more esoteric options and behaviors may have changed, but the commonly used ones mostly work as they did in 1.x.

Dependencies

N/A (not a System Wide Change)


Contingency Plan

  • Contingency mechanism: Change owners will disable wget2-wget subpackage and restore wget
  • Contingency deadline: Final Freeze
  • Blocks release? No


Documentation

The main documentation for wget2 is wget2(1) man page. There is also online documentation of the libwget2 library.

N/A (not a System Wide Change)

Release Notes

The wget command is now based on GNU Wget2, a modern implementation of GNU Wget.