Dopu trè anni è mezu di sviluppu, a prima liberazione stabile di u prughjettu GNU Wget2 hè stata presentata, sviluppatu una versione completamente riprogettata di u prugramma per automatizà a scaricazione recursiva di u cuntenutu GNU Wget. GNU Wget2 hè statu cuncepitu è riscrittu da zero è hè notu per trasfurmà a funziunalità basica di un cliente web in a biblioteca libwget, chì pò esse usata separatamente in l'applicazioni. L'utilità hè licenziata sottu GPLv3+, è a biblioteca hè licenziata sottu LGPLv3+.
Invece di ripiglià gradualmente a basa di codice esistente, hè statu decisu di ripiglià tuttu da zero è stabilisce un ramu Wget2 separatu per implementà idee per a ristrutturazione, aumentendu a funziunalità è fà cambiamenti chì rompenu a cumpatibilità. Cù l'eccezzioni di a deprecazione di u protocolu FTP è u formatu WARC, wget2 pò agisce cum'è un sustitutu trasparente per l'utilità wget classica in a maiò parte di situazioni.
Dittu chistu, wget2 hà alcune differenze documentate in u cumpurtamentu, furnisce circa 30 opzioni supplementari, è cessà di sustene parechje decine d'opzioni. Hè stata inclusa l'elaborazione di opzioni cum'è "-ask-password", "-header", "-exclude-directories", "-ftp*", "-warc*", "-limit-rate", "-relative" stopped " è "--unlink".
Innuvazioni chjave include:
- Sposta a funziunalità à a libreria libwget.
- Transizione à l'architettura multi-threaded.
- Capacità di stabilisce parechje cunnessione in parallelu è scaricate in parechje fili. Hè ancu pussibule di parallelizà u scaricamentu di un schedariu divisu in blocchi cù l'opzione "-chunk-size".
- Supportu di protocolu HTTP/2.
- Aduprate l'intestazione HTTP If-Modified-Since per scaricà solu i dati mudificati.
- Cambia à aduprà limitatori di larghezza di banda esterni cum'è trickle.
- Supportu per l'intestazione Accept-Encoding, u trasferimentu di dati cumpressi, è l'algoritmi di compressione brotli, zstd, lzip, gzip, deflate, lzma è bzip2.
- Supportu per TLS 1.3, OCSP (Protocolu di Status di Certificatu Online) per verificà i certificati revocati, u mecanismu HSTS (HTTP Strict Transport Security) per furzà a redirezzione à HTTPS è HPKP (HTTP Public Key Pinning) per l'associazione di certificati.
- Capacità di utilizà GnuTLS, WolfSSL è OpenSSL cum'è backend per TLS.
- Supportu per l'apertura rapida di e cunnessione TCP (TCP FastOpen).
- Supportu integratu in u formatu Metalink.
- Supportu per i nomi di duminiu internaziunale (IDNA2008).
- A capacità di travaglià simultaneamente attraversu parechji servitori proxy (un flussu serà caricatu attraversu un proxy, è u sicondu attraversu un altru).
- Supportu integratu per i feed di nutizie in formati Atom è RSS (per esempiu, per scanning è scaricamentu di ligami). I dati RSS / Atom ponu esse scaricati da un schedariu locale o nantu à a reta.
- Supportu per l'estrazione di URL da Sitemaps. Disponibilità di parsers per l'estrazione di ligami da i schedari CSS è XML.
- Supportu per a direttiva "include" in i schedarii di cunfigurazione è a distribuzione di paràmetri in parechji schedari (/etc/wget/conf.d/*.conf).
- Meccanismo di cache di query DNS integratu.
- Possibilità di ricudificà u cuntenutu cambiendu a codificazione di u documentu.
- Contabilità per u schedariu "robots.txt" durante i download recursive.
- Modu di scrittura affidabile cù fsync () chjama dopu à salvà dati.
- A capacità di ripiglià e sessioni TLS interrotte, è ancu di cache è salvà i paràmetri di sessione TLS in un schedariu.
- Modu "--input-file-" per caricare l'URL chì venenu attraversu u flussu di input standard.
- Cuntrollà u scopu di u Cookie contr'à u repertoriu di suffissi di duminiu publicu (Public Suffix List) per isolà da l'altri siti diffirenti ospitati in u stessu duminiu di u sicondu livellu (per esempiu, "a.github.io" è "b.github. io").
- Supporta u scaricamentu di ICEcast / SHOUTcast streaming.
Source: opennet.ru