322 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	Changelog
2023.09.24
Important changes
- The minimum recommended Python version has been raised to 3.8 Since Python 3.7 has reached end-of-life, support for it will be dropped soon. Read more
 - Security: [CVE-2023-40581] Prevent RCE when using 
--execwith%qon Windows- The shell escape function is now using 
""instead of\". utils.Popenhas been patched to properly quote commands.
 - The shell escape function is now using 
 
Core changes
- Fix HTTP headers and cookie handling by bashonly, pukkandan
 - Fix 
--check-formatsby pukkandan - Fix support for upcoming Python 3.12 (#8130) by Grub4K
 - Merged with youtube-dl 66ab08 by coletdjnz
 - Prevent RCE when using 
--execwith%q(CVE-2023-40581) by Grub4K - Raise minimum recommended Python version to 3.8 (#8183) by Grub4K
 FFmpegFixupM3u8PPmay need to run with ffmpeg by pukkandan- compat
- Add 
types.NoneTypeby pukkandan (With fixes in 25b6e8f) - Deprecate old functions (#2861) by coletdjnz, pukkandan
 - Ensure submodules are imported correctly by pukkandan
 
 - Add 
 - cookies: Containers JSON should be opened as utf-8 (#7800) by bashonly
 - dependencies: Handle deprecation of 
sqlite3.version(#8167) by bashonly - outtmpl: Fix replacement for 
playlist_indexby pukkandan - utils
- Add temporary shim for logging by pukkandan
 - Improve 
parse_durationby bashonly - HTTPHeaderDict: Handle byte values by pukkandan
 clean_podcast_url: Handle more trackers (#7556) by bashonly, mabdelfattahjs_to_json: HandleArrayobjects by Grub4K, std-move
 
Extractor changes
- Extract subtitles from SMIL manifests (#7667) by bashonly, pukkandan
 - Fix 
--load-pagesby pukkandan - Make 
_search_nuxt_datamore lenient by std-move - abematv
 - amazonminitv: Fix extractors by bashonly, GautamMKGarg
 - antenna: Support antenna.gr (#7584) by stdedos
 - artetv: Fix HLS formats extraction by bashonly
 - axs: Add extractor (#8094) by barsnick
 - banbye: Support video ids containing a hyphen (#8059) by kshitiz305
 - bbc: Extract tracklist as chapters (#7788) by garret1317
 - bild.de: Extract HLS formats (#8032) by barsnick
 - bilibili
 - bilibilibangumi: Fix extractors (#7337) by GD-Slime
 - bpb: Overhaul extractor (#8119) by Grub4K
 - brilliantpala: Add extractors (#6680) by pzhlkj6612
 - canal1, caracoltvplay: Add extractors (#7151) by elyse0
 - cbc: Ignore any 426 from API (#7689) by makew0rld
 - cbcplayer: Extract HLS formats and subtitles (#7484) by trainman261
 - cbcplayerplaylist: Add extractor (#7870) by trainman261
 - cineverse: Add extractors (#8146) by garret1317
 - crunchyroll: Remove initial state extraction (#7632) by Grub4K
 - douyutv: Fix extractors (#7652) by c-basalt
 - dropbox: Fix extractor (#7926) by bashonly, denhotte, nathantouze (With fixes in 099fb1b by bashonly)
 - eplus: inbound: Add extractor (#5782) by pzhlkj6612
 - expressen: Improve 
_VALID_URL(#8153) by kylegustavo - facebook
- Add dash manifest URL (#7743) by ringus1
 - Fix webpage extraction (#7890) by ringus1
 - Improve format sorting (#8074) by fireattack
 - reel: Fix extraction (#7564) by bashonly, demon071
 
 - fox: Support foxsports.com (#7724) by ischmidt20
 - funker530: Fix extraction (#8040) by 04-pasha-04
 - generic
 - gofile: Update token by bashonly
 - hotstar
 - hungama: Overhaul extractors (#7757) by bashonly, Yalab7
 - indavideoembed: Fix extraction (#8129) by aky-01
 - iprima: Fix extractor (#7216) by std-move
 - lbry: Fix original format extraction (#7711) by bashonly
 - lecturio: Improve 
_VALID_URL(#7649) by simon300000 - magellantv: Add extractor (#7616) by bashonly
 - massengeschmack.tv: Fix title extraction (#7813) by sb0stn
 - media.ccc.de: lists: Fix extraction (#8144) by Rohxn16
 - mediaite: Fix extraction (#7923) by Grabien
 - mediaklikk: Fix extractor (#8086) by bashonly, zhallgato
 - mediastream: Make embed extraction non-fatal by bashonly
 - mixcloud: Update API URL (#8114) by garret1317
 - monstercat: Add extractor (#8133) by garret1317
 - motortrendondemand: Update 
_VALID_URL(#7683) by AmirAflak - museai: Add extractor (#7614) by bashonly
 - mzaalo: Improve 
_VALID_URLby bashonly - n1info: article: Fix extractor (#7373) by u-spec-png
 - nfl.com: plus, replay: Fix extractor (#7838) by bashonly
 - niconicochannelplus: Add extractors (#5686) by pzhlkj6612
 - nitter: Fix title extraction fallback (#8102) by ApoorvShah111
 - noodlemagazine: Fix extraction (#7830) by RedDeffender (With fixes in 69dbfe0 by bashonly)
 - novaembed: Fix extractor (#7910) by std-move
 - patreoncampaign: Fix extraction (#7664) by bashonly
 - pbs: Add extractor 
PBSKidsIE(#7602) by snixon - piapro: Support 
/contentURL (#7592) by FinnRG - piaulizaportal: Add extractor (#7903) by pzhlkj6612
 - picartovod: Fix extractor (#7727) by Frankgoji
 - pornbox: Add extractor (#7386) by niemands
 - pornhub: Update access cookies for UK (#7591) by zhong-yiyu
 - pr0gramm: Rewrite extractor (#8151) by Grub4K
 - radiofrance: Add support for livestreams, podcasts, playlists (#7006) by elyse0
 - rbgtum: Fix extraction and support new URL format (#7690) by simon300000
 - rtvslo: Fix format extraction (#8131) by bashonly
 - rule34video: Extract tags (#7117) by soundchaser128
 - rumble: Fix embed extraction (#8035) by trislee
 - s4c
 - sohu: Fix extractor (#7628) by bashonly, c-basalt
 - stageplus: Fix m3u8 extraction (#7929) by bashonly
 - streamanity: Remove (#7571) by alerikaisattera
 - svtplay: Fix extraction (#7789) by dirkf, wader
 - tbsjp: Add episode, program, playlist extractors (#7765) by garret1317
 - tiktok
 - triller: Fix unlisted video extraction (#7670) by bashonly
 - tv5mondeplus: Fix extractor (#7952) by dirkf, korli
 - twitcasting
 - unsupported: List more sites with DRM by pukkandan
 - videa: Fix extraction (#8003) by aky-01, hatsomatt
 - vrt: Update token signing key (#7519) by Zprokkel
 - wat.tv: Fix extraction (#7898) by davinkevin
 - wdr: Fix extraction (#7979) by szabyg
 - web.archive: vlive: Remove extractor (#8132) by bashonly
 - weibo: Fix extractor and support user extraction (#7657) by c-basalt
 - weverse: Support extraction without auth (#7924) by seproDev
 - wimbledon: Add extractor (#7551) by nnoboa
 - wrestleuniverseppv: Fix HLS AES key extraction by bashonly
 - youtube
 - zaiko: Improve thumbnail extraction (#8054) by pzhlkj6612
 - zee5: Update access token endpoint (#7914) by bashonly
 - zoom: Extract duration by bashonly
 
Downloader changes
- external
 
Postprocessor changes
- embedthumbnail: Support 
m4v(#7583) by Neurognostic 
Networking changes
- Add module (#2861) by pukkandan
 - Add request handler preference framework (#7603) by coletdjnz
 - Add strict Request extension checking (#7604) by coletdjnz
 - Fix POST requests with zero-length payloads (#7648) by bashonly
 - Fix 
--legacy-server-connect(#7645) by bashonly - Fix various socks proxy bugs (#8065) by coletdjnz
 - Ignore invalid proxies in env (#7704) by coletdjnz
 - Rewrite architecture (#2861) by coletdjnz
 - Request Handler
- urllib
- Remove dot segments during URL normalization (#7662) by coletdjnz
 - Simplify gzip decoding (#7611) by Grub4K (With fixes in 77bff23)
 
 
 - urllib
 
Misc. changes
- build: Make sure deprecated modules are added by pukkandan
 - cleanup
 - devscripts: 
make_changelog: Fix changelog grouping and add networking group (#8124) by Grub4K - docs: Update collaborators by Grub4K
 - test
 
2023.07.06
Important changes
- Security: [CVE-2023-35934] Fix Cookie leak
--add-header Cookie:is deprecated and auto-scoped to input URL domains- Cookies are scoped when passed to external downloaders
 - Add 
cookiesfield to info.json and deprecatehttp_headers.Cookie 
 
Core changes
- Allow extractors to mark formats as potentially DRM (#7396) by pukkandan
 - Bugfix for b4e0d75848e9447cee2cd3646ce54d4744a7ff56 by pukkandan
 - Change how 
Cookieheaders are handled by Grub4K - Prevent 
Cookieleaks on HTTP redirect by coletdjnz - formats: Fix best fallback for storyboards by pukkandan
 - outtmpl: Pad 
playlist_indexetc even when with internal formatting by pukkandan - utils: clean_podcast_url: Handle protocol in redirect URL by pukkandan
 
Extractor changes
- abc: Fix extraction (#7434) by meliber
 - AdultSwim: Extract subtitles from m3u8 (#7421) by nnoboa
 - crunchyroll: music: Fix 
_VALID_URL(#7439) by AmanSal1, rdamas - Douyin: Fix extraction from webpage by bashonly
 - googledrive: Fix source format extraction (#7395) by RfadnjdExt
 - kick: Fix 
_VALID_URLby bashonly - qdance: Add extractor (#7420) by bashonly
 - sbs: Python 3.7 compat by pukkandan
 - stacommu: Add extractors (#7432) by urectanc
 - twitter
- Fix unauthenticated extraction (#7476) by bashonly
 - spaces: Fix extraction (#7512) by bashonly
 
 - vidlii: Handle relative URLs by pukkandan
 - vk: VKPlay, VKPlayLive: Add extractors (#7358) by c-basalt
 - youtube
- Add extractor-arg 
formatsby pukkandan - Avoid false DRM detection (#7396) by pukkandan
 - Fix comments' 
is_favorited(#7390) by bbilly1 - Ignore incomplete data for comment threads by default (#7475) by coletdjnz
 - Process 
post_liveover 2 hours by pukkandan - stories: Remove (#7459) by pukkandan
 - tab: Support shorts-only playlists (#7425) by coletdjnz
 
 - Add extractor-arg 
 
Downloader changes
- aria2c: Add 
--no-confby pukkandan - external: Scope cookies by bashonly, coletdjnz
 - http: Avoid infinite loop when no data is received by pukkandan
 
Misc. changes
- Add CodeQL workflow (#7497) by jorgectf
 - cleanup: Miscellaneous: 337734d by pukkandan
 - docs: Minor fixes by pukkandan
 - make_changelog: Skip reverted commits by pukkandan
 
2023.06.22
Core changes
- Fix bug in db3ad8a67661d7b234a6954d9c6a4a9b1749f5eb by pukkandan
 - Improve 
--download-sectionsby pukkandan- Support negative time-ranges
 - Add 
*from-urlto obey time-ranges in URL 
 - Indicate 
filesizeapproximated fromtbrbetter by pukkandan 
Extractor changes
- Support multiple 
_VALID_URLs (#5812) by nixxo - dplay: GlobalCyclingNetworkPlus: Add extractor (#7360) by bashonly
 - dropout: Fix season extraction (#7304) by OverlordQ
 - motherless: Add gallery support, fix groups (#7211) by rexlambert22, Ti4eeT4e
 - nebula: Fix extractor (#7156) by Lamieur, rohieb
 - rheinmaintv: Add extractor (#7311) by barthelmannk
 - youtube
- Add 
iosto default clients used by pukkandan- IOS is affected neither by 403 nor by nsig so helps mitigate them preemptively
 - IOS also has higher bit-rate 'premium' formats though they are not labeled as such
 
 - Improve description parsing performance (#7315) by berkanteber, pukkandan
 - Improve nsig function name extraction by pukkandan
 - Workaround 403 for android formats by pukkandan
 
 - Add 
 
Misc. changes
2023.06.21
Important changes
- YouTube: Improved throttling and signature fixes
 
Core changes
- Add 
--compat-option playlist-match-filterby pukkandan - Add 
--no-quietby pukkandan - Add option 
--color(#6904) by Grub4K - Add option 
--netrc-cmd(#6682) by NDagestad, pukkandan - Add option 
--xffby pukkandan - Auto-select default format in 
-f-(#7101) by ivanskodje, pukkandan - Deprecate internal 
Youtubedl-no-compressionheader (#6876) by coletdjnz - Do not translate newlines in 
--print-to-fileby pukkandan - Ensure pre-processor errors do not block 
--printby pukkandan (With fixes in 17ba434) - Fix 
filepathbeing copied to underlying format dict by pukkandan - Improve HTTP redirect handling (#7094) by coletdjnz
 - Populate 
filenameandurlsfields at all stages of--printby pukkandan (With fixes in b5f61b6) - Relaxed validation for numeric format filters by pukkandan
 - Support decoding multiple content encodings (#7142) by coletdjnz
 - Support loading info.json with a list at it's root by pukkandan
 - Workaround erroneous urllib Windows proxy parsing (#7092) by coletdjnz
 - cookies
 - Cryptodome: Fix 
__bool__by pukkandan - jsinterp
 - outtmpl
 - update
 - upstream
- Merged with youtube-dl 07af47 by pukkandan
 - Merged with youtube-dl d1c6c5 by pukkandan (With fixes in edbe5b5 by bashonly)
 
 - utils
FormatSorter: Improvesizeandbrby pukkandan, u-spec-pngjs_to_json: Implement template strings (#6623) by Grub4Klocked_file: Fix for virtiofs (#6840) by brandon-dacribstrftime_or_none: Handle negative timestamps by dirkf, pukkandantraverse_obj- Allow iterables in traversal (#6902) by Grub4K
 - More fixes (#6959) by Grub4K
 
write_string: Fix noconsole behavior by Grub4K
 
Extractor changes
- Do not exit early for unsuitable 
url_resultby pukkandan - Do not warn for invalid chapter data in description by pukkandan
 - Extract more metadata from ISM by pukkandan
 - abematv: Add fallback for title and description extraction and extract more metadata (#6994) by Lesmiscore
 - acast: Support embeds (#7212) by pabs3
 - adobepass: Handle 
Charter_DirectMSO asSpectrum(#6824) by bashonly - aeonco: Support Youtube embeds (#6591) by alexklapheke
 - afreecatv: Fix extractor (#6283) by blmarket
 - ARDBetaMediathek: Add thumbnail (#6890) by StefanLobbenmeier
 - bibeltv: Fix extraction, support live streams and series (#6505) by flashdagger
 - bilibili
- Support festival videos (#6547) by qbnu
 - SpaceVideo: Extract signature (#7149) by elyse0
 
 - biliIntl: Add comment extraction (#6079) by HobbyistDev
 - bitchute: Add more fallback subdomains (#6907) by Neurognostic
 - booyah: Remove extractor by pukkandan
 - BrainPOP: Add extractors (#6106) by MinePlayersPE
 - bravotv
- Detect DRM (#7171) by bashonly
 - Fix extractor (#6568) by bashonly
 
 - camfm: Add extractors (#7083) by garret1317
 - cbc
 - cbs: Add 
ParamountPressExpressextractor (#6604) by bashonly - cbsnews: Overhaul extractors (#6681) by bashonly
 - chilloutzone: Fix extractor (#6445) by bashonly
 - clipchamp: Add extractor (#6978) by bashonly
 - comedycentral: Add support for movies (#7108) by sqrtNOT
 - crtvg: Add extractor (#7168) by ItzMaxTV
 - crunchyroll: Rework with support for movies, music and artists (#6237) by Grub4K
 - dacast: Add extractors (#6896) by bashonly
 - daftsex: Update domain and embed player url (#5966) by JChris246
 - DigitalConcertHall: Support films (#7202) by ItzMaxTV
 - discogs: Add extractor (#6624) by rjy
 - dlf: Add extractors (#6697) by nick-cd
 - drtv: Fix radio page extraction (#6552) by viktor-enzell
 - Dumpert: Fix m3u8 and support new URL pattern (#6091) by DataGhost, pukkandan
 - elevensports: Add extractor (#7172) by ItzMaxTV
 - ettutv: Add extractor (#6579) by elyse0
 - europarl: Rewrite extractor (#7114) by HobbyistDev
 - eurosport: Improve 
_VALID_URL(#7076) by HobbyistDev - facebook: Fix metadata extraction (#6856) by ringus1
 - foxnews: Fix extractors (#7222) by bashonly
 - funker530: Add extractor (#7291) by Cyberes
 - generic
- Accept values for 
fragment_query,variant_query(#6600) by bashonly (With fixes in 9bfe0d1) - Add extractor-args 
hls_key,variant_query(#6567) by bashonly - Attempt to detect live HLS (#6775) by bashonly
 
 - Accept values for 
 - genius: Add support for articles (#6474) by bashonly
 - globalplayer: Add extractors (#6903) by garret1317
 - gmanetwork: Add extractor (#5945) by HobbyistDev
 - gronkh: Extract duration and chapters (#6817) by satan1st
 - hentaistigma: Remove extractor by pukkandan
 - hidive: Fix login by pukkandan
 - hollywoodreporter: Add extractors (#6614) by bashonly
 - hotstar: Support 
/shows/URLs (#7225) by bashonly - hrefli: Add extractor (#6762) by selfisekai
 - idolplus: Add extractor (#6732) by ping
 - iq: Set more language codes (#6476) by D0LLYNH0
 - iwara
 - JStream: Add extractor (#6252) by Lesmiscore
 - jwplatform: Update 
_extract_embed_urls(#6383) by carusocr - kick: Make initial request non-fatal by bashonly
 - LastFM: Rewrite playlist extraction (#6379) by hatienl0i261299, pukkandan
 - lbry: Extract original quality formats (#7257) by bashonly
 - line: Remove extractors (#6734) by sian1468
 - livestream: Support videos with account id (#6324) by theperfectpunk
 - medaltv: Fix clips (#6502) by xenova
 - mediastream: Improve 
WinSportsand embed extraction (#6426) by bashonly - mgtv: Fix formats extraction (#7234) by bashonly
 - Mzaalo: Add extractor (#7163) by ItzMaxTV
 - nbc: Fix 
NBCStationsdirect mp4 formats (#6637) by bashonly - nebula: Add 
beta.nebula.tv(#6516) by unbeatable-101 - nekohacker: Add extractor (#7003) by hasezoey
 - nhk
- Add 
NhkRadiruextractor (#6819) by garret1317 - Fix API extraction (#7180) by menschel, sjthespian
 NhkRadiruLive: Add extractor (#7332) by garret1317
 - Add 
 - niconico
- Download comments from the new endpoint (#6773) by Lesmiscore
 - live: Add extractor (#5764) by Lesmiscore
 - series: Fix extraction (#6898) by sqrtNOT
 
 - nubilesporn: Add extractor (#6231) by permunkle
 - odnoklassniki: Fix formats extraction (#7217) by bashonly
 - opencast
 - owncloud: Add extractor (#6533) by C0D3D3V
 - Parler: Rewrite extractor (#6446) by JChris246
 - pgatour: Add extractor (#6613) by bashonly
 - playsuisse: Support new url format (#6528) by sbor23
 - polskieradio: Improve extractors (#5948) by selfisekai
 - pornez: Support new URL formats (#6792) by zhgwn
 - pornhub: Set access cookies to fix extraction (#6685) by arobase-che, Schmoaaaaah
 - rai: Rewrite extractors (#5940) by danog, nixxo
 - recurbate: Add extractor (#6297) by mrscrapy
 - rokfin: Re-construct manifest url (#6507) by vampirefrog
 - rottentomatoes: Fix extractor (#6844) by JChris246
 - rozhlas
- Extract manifest formats (#6590) by bashonly
 MujRozhlas: Add extractor (#7129) by stanoarn
 - rtvc: Add extractors (#6578) by elyse0
 - rumble
 - sbs: Overhaul extractor for new API (#6839) by bashonly, dirkf, vidiot720
 - shemaroome: Pass 
stream_keyheader to downloader (#7224) by bashonly - sonyliv: Fix login with token (#7223) by bashonly
 - stageplus: Add extractor (#6838) by bashonly
 - stripchat: Fix extractor (#7306) by foreignBlade
 - substack: Fix extraction (#7218) by bashonly
 - sverigesradio: Support slug URLs (#7220) by bashonly
 - tagesschau: Fix single audio urls (#6626) by flashdagger
 - teamcoco: Fix extractor (#6437) by bashonly
 - telecaribe: Expand livestream support (#6601) by bashonly
 - tencent: Fix fatal metadata extraction (#7219) by bashonly
 - thesun: Update 
_VALID_URL(#6522) by hatienl0i261299 - tiktok
 - triller: Support short URLs, detect removed videos (#6636) by bashonly
 - tv4: Fix extractor (#5649) by dirkf, TxI5
 - tvp: Use new API (#6989) by selfisekai
 - tvplay: Remove outdated domains (#7106) by ivanskodje
 - twitch
 - twitter
- Add login support (#7258) by bashonly
 - Default to GraphQL, handle auth errors (#6957) by bashonly
 - spaces: Add 
release_timestamp(#7186) by CeruleanSky 
 - urplay: Extract all subtitles (#7309) by hoaluvn
 - voot: Fix extractor (#7227) by bashonly
 - vrt: Overhaul extractors (#6244) by bashonly, bergoid, jeroenj
 - weverse: Add extractors (#6711) by bashonly (With fixes in fd5d93f)
 - wevidi: Add extractor (#6868) by truedread
 - weyyak: Add extractor (#7124) by ItzMaxTV
 - whyp: Add extractor (#6803) by CoryTibbettsDev
 - wrestleuniverse
 - wykop: Add extractors (#6140) by selfisekai
 - ximalaya: Sort playlist entries (#7292) by linsui
 - YahooGyaOIE, YahooGyaOPlayerIE: Delete extractors due to website close (#6218) by Lesmiscore
 - yappy: YappyProfile: Add extractor (#7346) by 7vlad7
 - youku: Improve error message (#6690) by carusocr
 - youporn: Extract m3u8 formats by pukkandan
 - youtube
- Add client name to 
format_notewhen-v(#6254) by Lesmiscore, pukkandan - Add extractor-arg 
include_duplicate_formatsby pukkandan - Bypass throttling for 
-f17by pukkandan - Construct fragment list lazily by pukkandan (With fixes in e389d17)
 - Define strict uploader metadata mapping (#6384) by coletdjnz
 - Determine audio language using automatic captions by pukkandan
 - Extract 
channel_is_verified(#7213) by coletdjnz - Extract 
heatmapdata (#7100) by tntmod54321 - Extract more metadata for comments (#7179) by coletdjnz
 - Extract uploader metadata for feed/playlist items by coletdjnz
 - Fix comment loop detection for pinned comments (#6714) by coletdjnz
 - Fix continuation loop with no comments (#7148) by coletdjnz
 - Fix parsing 
comment_count(#6523) by nick-cd - Handle incomplete initial data from watch page (#6510) by coletdjnz
 - Ignore wrong fps of some formats by pukkandan
 - Misc cleanup by coletdjnz
 - Prioritize premium formats by pukkandan
 - Revert default formats to 
httpsby pukkandan - Support podcasts and releases tabs by coletdjnz
 - Support shorter relative time format (#7191) by coletdjnz
 - music_search_url: Extract title (#7102) by kangalio
 
 - Add client name to 
 - zaiko
- Add extractor (#7254) by c-basalt
 - ZaikoETicket: Add extractor (#7347) by pzhlkj6612
 
 - zdf: Fix formats extraction by bashonly
 - zee5: Fix extraction of new content (#7280) by bashonly
 - zingmp3: Fix and improve extractors (#6367) by hatienl0i261299
 - zoom
 
Downloader changes
- curl: Fix progress reporting by pukkandan
 - fragment: Do not sleep between fragments by pukkandan
 
Postprocessor changes
- Fix chapters if duration is not extracted (#6037) by bashonly
 - Print newline for 
--progress-templateby pukkandan - EmbedThumbnail, FFmpegMetadata: Fix error on attaching thumbnails and info json for mkv/mka (#6647) by Lesmiscore
 - FFmpegFixupM3u8PP: Check audio codec before fixup (#6778) by bashonly
 - FixupDuplicateMoov: Fix bug in triggering by pukkandan
 
Misc. changes
- Add automatic duplicate issue detection by pukkandan
 - build
 - cleanup
 - cleanup, utils: Split into submodules (#7090) by coletdjnz, pukkandan
 - cli_to_api: Add script by pukkandan
 - devscripts: 
make_changelog: Various improvements by Grub4K - docs: Misc improvements by pukkandan
 
2023.03.04
Extractor changes
- bilibili
 - ESPNcricinfo
 - lefigaro
- Add extractors (#6309) by elyse0
 
 - lumni
- Add extractor (#6302) by carusocr
 
 - Prankcast
- Fix tags (#6316) by columndeeply
 
 - rutube
 - SportDeutschland
 - telecaribe
- Add extractor (#6311) by elyse0
 
 - tubetugraz
 - tunein
- Fix extractors (#6310) by elyse0
 
 - twitch
 - xvideos
- quickies: Add extractor (#6414) by Yakabuff
 
 
Misc. changes
- build
 - cleanup
 - devscripts
make_changelog: Stop atRelease ...commit by pukkandan
 
2023.03.03
Important changes
- A new release type has been added!
nightlybuilds will be made after each push, containing the latest fixes (but also possibly bugs).- When using 
--update/-U, a release binary will only update to its current channel (eitherstableornightly). - The 
--update-tooption has been added allowing the user more control over program upgrades (or downgrades). --update-tocan change the release channel (stable,nightly) and also upgrade or downgrade to specific tags.- Usage: 
--update-to CHANNEL,--update-to TAG,--update-to CHANNEL@TAG 
 - YouTube throttling fixes!
 
Core changes
- Add option 
--break-match-filtersby pukkandan - Fix 
--break-on-existingwith--lazy-playlistby pukkandan - dependencies
 - jsinterp
 - plugins
 - update
 - utils
LenientJSONDecoder: Parse unclosed objects by pukkandanPopen: Shim undocumentedtext_modeproperty by Grub4K
 
Extractor changes
- Fix DRM detection in m3u8 by pukkandan
 - generic
 - GoogleDrive
 - iprima
- Fix extractor (#6291) by std-move
 
 - mediastream
 - ntvru
 - tencent
 - yle_areena
 - youtube
 
Misc. changes
- build
 - cleanup
- Fix 
Changelogby pukkandan - jsinterp: Give functions names to help debugging by pukkandan
 - Miscellaneous: 4815bbf, 5b28cef by pukkandan
 
 - Fix 
 - devscripts
- Script to generate changelog (#6220) by Grub4K (With fixes in 9344964)
 
 
2023.02.17
- Merge youtube-dl: Upto commit/2dd6c6e
 - Fix 
--concat-playlist - Imply 
--no-progresswhen--print - Improve default subtitle language selection by sdht0
 - Make 
titlecompletely non-fatal - Sanitize formats before sorting by pukkandan
 - Support module level 
__bool__andproperty - [dependencies] Standardize 
Cryptodomeimports - [hls] Allow extractors to provide AES key by Grub4K, bashonly
 - [ExtractAudio] Handle outtmpl without ext by carusocr
 - [extractor/common] Fix 
_search_nuxt_databy LowSuggestion912 - [extractor/generic] Avoid catastrophic backtracking in KVS regex by bashonly
 - [jsinterp] Support 
ifstatements - [plugins] Fix zip search paths
 - [utils] 
traverse_obj: Various improvements by Grub4K - [utils] 
traverse_obj: Fix more bugs - [utils] 
traverse_obj: Fix several behavioral problems by Grub4K - [utils] Don't use Content-length with encoding by felixonmars
 - [utils] Fix 
time_secondsto use the provided TZ by Grub4K, Lesmiscore - [utils] Fix race condition in 
make_dirby aionescu - [utils] Use local kernel32 for file locking on Windows by Grub4K
 - [compat_utils] Improve 
passthrough_module - [compat_utils] Simplify 
EnhancedModule - [build] Update pyinstaller
 - [pyinst] Fix for pyinstaller 5.8
 - [devscripts] Provide 
pyinstallerhooks - [devscripts/pyinstaller] Analyze sub-modules of 
Cryptodome - [cleanup] Misc fixes and cleanup
 - [extractor/anchorfm] Add episode extractor by HobbyistDev, bashonly
 - [extractor/boxcast] Add extractor by HobbyistDev
 - [extractor/ebay] Add extractor by JChris246
 - [extractor/hypergryph] Add extractor by HobbyistDev, bashonly
 - [extractor/NZOnScreen] Add extractor by gregsadetsky, pukkandan
 - [extractor/rozhlas] Add extractor RozhlasVltavaIE by amra
 - [extractor/tempo] Add IVXPlayer extractor by HobbyistDev
 - [extractor/txxx] Add extractors by chio0hai
 - [extractor/vocaroo] Add extractor by SuperSonicHub1, qbnu
 - [extractor/wrestleuniverse] Add extractors by Grub4K, bashonly
 - [extractor/yappy] Add extractor by HobbyistDev, dirkf
 - [extractor/youtube] Fix 
uploader_idextraction by bashonly - [extractor/youtube] Add hyperpipe instances by Generator
 - [extractor/youtube] Handle 
consent.youtube - [extractor/youtube] Support 
/live/URL - [extractor/youtube] Update invidious and piped instances by rohieb
 - [extractor/91porn] Fix title and comment extraction by pmitchell86
 - [extractor/AbemaTV] Cache user token whenever appropriate by Lesmiscore
 - [extractor/bfmtv] Support 
rmcprefix by carusocr - [extractor/biliintl] Add intro and ending chapters by HobbyistDev
 - [extractor/clyp] Support 
wavby qulaz - [extractor/crunchyroll] Add intro chapter by ByteDream
 - [extractor/crunchyroll] Better message for premium videos
 - [extractor/crunchyroll] Fix incorrect premium-only error by Grub4K
 - [extractor/DouyuTV] Use new API by hatienl0i261299
 - [extractor/embedly] Embedded links may be for other extractors
 - [extractor/freesound] Workaround invalid URL in webpage by rebane2001
 - [extractor/GoPlay] Use new API by jeroenj
 - [extractor/Hidive] Fix subtitles and age-restriction by chexxor
 - [extractor/huya] Support HD streams by felixonmars
 - [extractor/moviepilot] Fix extractor by panatexxa
 - [extractor/nbc] Fix 
NBCandNBCStationsextractors by bashonly - [extractor/nbc] Fix XML parsing by bashonly
 - [extractor/nebula] Remove broken cookie support by hheimbuerger
 - [extractor/nfl] Add 
NFLPlusextractors by bashonly - [extractor/niconico] Add support for like history by Matumo, pukkandan
 - [extractor/nitter] Update instance list by OIRNOIR
 - [extractor/npo] Fix extractor and add HD support by seproDev
 - [extractor/odkmedia] Add 
OnDemandChinaEpisodeIEby HobbyistDev, pukkandan - [extractor/pornez] Handle relative URLs in iframe by JChris246
 - [extractor/radiko] Fix format sorting for Time Free by road-master
 - [extractor/rcs] Fix extractors by nixxo, pukkandan
 - [extractor/reddit] Support user posts by OMEGARAZER
 - [extractor/rumble] Fix format sorting by pukkandan
 - [extractor/servus] Rewrite extractor by Ashish0804, FrankZ85, StefanLobbenmeier
 - [extractor/slideslive] Fix slides and chapters/duration by bashonly
 - [extractor/SportDeutschland] Fix extractor by FriedrichRehren
 - [extractor/Stripchat] Fix extractor by JChris246, bashonly
 - [extractor/tnaflix] Fix extractor by bashonly, oxamun
 - [extractor/tvp] Support 
stream.tvp.plby selfisekai - [extractor/twitter] Fix 
--no-playlistand add mediaview_countwhen using GraphQL by Grub4K - [extractor/twitter] Fix graphql extraction on some tweets by selfisekai
 - [extractor/vimeo] Fix 
playerConfigextraction by LeoniePhiline, bashonly - [extractor/viu] Add 
ViuOTTIndonesiaIEextractor by HobbyistDev - [extractor/vk] Fix playlists for new API by the-marenga
 - [extractor/vlive] Replace with 
VLiveWebArchiveIEby seproDev - [extractor/ximalaya] Update album 
_VALID_URLby carusocr - [extractor/zdf] Use android API endpoint for UHD downloads by seproDev
 - [extractor/drtv] Fix bug in ab4cbef by bashonly
 
2023.01.06
- Fix config locations by Grub4K, coletdjnz, pukkandan
 - [downloader/aria2c] Disable native progress
 - [utils] 
mimetype2ext:webais not standard - [utils] 
windows_enable_vt_mode: Better error handling - [build] Add minimal 
pyproject.toml - [update] Fix updater file removal on windows by Grub4K
 - [cleanup] Misc fixes and cleanup
 - [extractor/aitube] Add extractor by HobbyistDev
 - [extractor/drtv] Add series extractors by FrederikNS
 - [extractor/volejtv] Add extractor by HobbyistDev
 - [extractor/xanimu] Add extractor by JChris246
 - [extractor/youtube] Retry manifest refresh for live-from-start by mzhou
 - [extractor/biliintl] Add 
/mediatoVALID_URLby HobbyistDev - [extractor/biliIntl] Add fallback to 
video_databy HobbyistDev - [extractor/crunchyroll:show] Add 
languageto entries by Chrissi2812 - [extractor/joj] Fix extractor by OndrejBakan, pukkandan
 - [extractor/nbc] Update graphql query by jacobtruman
 - [extractor/reddit] Add subreddit as 
channel_idby gschizas - [extractor/tiktok] Add 
TikTokLiveextractor by JC-Chung 
2023.01.02
- Improve plugin architecture by Grub4K, coletdjnz, flashdagger, pukkandan
- Plugins can be loaded in any distribution of yt-dlp (binary, pip, source, etc.) and can be distributed and installed as packages. See the readme for more information
 
 - Add 
--compat-options 2021,2022- This allows devs to change defaults and make other potentially breaking changes more easily. If you need everything to work exactly as-is, put Use 
--compat 2022in your config to guard against future compat changes. 
 - This allows devs to change defaults and make other potentially breaking changes more easily. If you need everything to work exactly as-is, put Use 
 - [downloader/aria2c] Native progress for aria2c via RPC by Lesmiscore, pukkandan
 - Merge youtube-dl: Upto commit/195f22f by Grub4K, pukkandan
 - Add pre-processor stage 
video - Let 
--parse/replace-in-metadatarun at any post-processing stage - Add 
--enable-file-urlsby coletdjnz - Add new field 
aspect_ratio - Add 
ac4to known codecs - Add 
webato known extensions - [FFmpegVideoConvertor] Add 
gifto--recode-video - Add message when there are no subtitles/thumbnails
 - Deprioritize HEVC-over-FLV formats by Lesmiscore
 - Make early reject of 
--match-filterstricter - Fix 
--cookies-from-browserCLI parsing - Fix 
original_urlin playlists - Fix bug in writing playlist info-json
 - Fix bugs in 
PlaylistEntries - [downloader/ffmpeg] Fix headers for video+audio formats by Grub4K, bashonly
 - [extractor] Add a way to distinguish IEs that returns only videos
 - [extractor] Implement universal format sorting and deprecate 
_sort_formats - [extractor] Let 
_extract_formatfunctions obey--ignore-no-formats - [extractor/generic] Add 
fragment_queryextractor arg for DASH and HLS by bashonly, pukkandan - [extractor/generic] Decode unicode-escaped embed URLs by bashonly
 - [extractor/generic] Don't report redirect to https
 - [extractor/generic] Fix JSON LD manifest extraction by bashonly, pukkandan
 - [extractor/generic] Use 
Accept-Encoding: identityfor initial request by coletdjnz - [FormatSort] Add 
movtovext - [jsinterp] Escape regex that looks like nested set
 - [webvtt] Handle premature EOF by flashdagger
 - [utils] 
classproperty: Add cache support - [utils] 
get_exe_version: Detect broken executables by dirkf, pukkandan - [utils] 
js_to_json: Fix bug in f55523c by ChillingPepper, pukkandan - [utils] Make 
ExtractorErrormutable - [utils] Move 
FileDownloader.parse_bytesinto utils - [utils] Move format sorting code into 
utils - [utils] 
windows_enable_vt_mode: Proper implementation by Grub4K - [update] Workaround #5632
 - [docs] Improvements
 - [cleanup] Misc fixes and cleanup
 - [cleanup] Use 
random.choicesby freezboltz - [extractor/airtv] Add extractor by HobbyistDev
 - [extractor/amazonminitv] Add extractors by GautamMKGarg, nyuszika7h
 - [extractor/beatbump] Add extractors by Bobscorn, pukkandan
 - [extractor/europarl] Add EuroParlWebstream extractor by HobbyistDev
 - [extractor/kanal2] Add extractor by bashonly, glensc, pukkandan
 - [extractor/kankanews] Add extractor by synthpop123
 - [extractor/kick] Add extractor by bashonly
 - [extractor/mediastream] Add extractor by HobbyistDev, elyse0
 - [extractor/noice] Add NoicePodcast extractor by HobbyistDev
 - [extractor/oneplace] Add OnePlacePodcast extractor by HobbyistDev
 - [extractor/rumble] Add RumbleIE extractor by flashdagger
 - [extractor/screencastify] Add extractor by bashonly
 - [extractor/trtcocuk] Add extractor by HobbyistDev
 - [extractor/Veoh] Add user extractor by tntmod54321
 - [extractor/videoken] Add extractors by bashonly
 - [extractor/webcamerapl] Add extractor by milkknife
 - [extractor/amazon] Add 
AmazonReviewsextractor by bashonly - [extractor/netverse] Add 
NetverseSearchextractor by HobbyistDev - [extractor/vimeo] Add 
VimeoProIEby bashonly, pukkandan - [extractor/xiami] Remove extractors by synthpop123
 - [extractor/youtube] Add 
piped.videoby Bnyro - [extractor/youtube] Consider language in format de-duplication
 - [extractor/youtube] Extract DRC formats
 - [extractor/youtube] Fix 
ytuser: - [extractor/youtube] Fix bug in handling of music URLs
 - [extractor/youtube] Subtitles cannot be translated to 
und - [extractor/youtube:tab] Extract metadata from channel items by coletdjnz
 - [extractor/ARD] Add vtt subtitles by CapacitorSet
 - [extractor/ArteTV] Extract chapters by bashonly, iw0nderhow
 - [extractor/bandcamp] Add 
album_artistby stelcodes - [extractor/bilibili] Fix 
--no-playlistfor anthology - [extractor/bilibili] Improve 
_VALID_URLby skbeh - [extractor/biliintl:series] Make partial download of series faster
 - [extractor/BiliLive] Fix extractor
 - [extractor/brightcove] Add 
BrightcoveNewBaseIEand fix embed extraction - [extractor/cda] Support premium and misc improvements by selfisekai
 - [extractor/ciscowebex] Support password-protected videos by damianoamatruda
 - [extractor/curiositystream] Fix auth by mnn
 - [extractor/embedly] Handle vimeo embeds
 - [extractor/fifa] Fix Preplay extraction by dirkf
 - [extractor/foxsports] Fix extractor by bashonly
 - [extractor/gronkh] Fix 
_VALID_URLby muddi900 - [extractor/hotstar] Improve format metadata
 - [extractor/iqiyi] Fix 
IqJS regex by bashonly - [extractor/la7] Improve extractor by nixxo
 - [extractor/mediaset] Better embed detection and error messages by nixxo
 - [extractor/mixch] Support 
--wait-for-video - [extractor/naver] Improve 
_VALID_URLforNaverNowIEby bashonly - [extractor/naver] Treat fan subtitles as separate language
 - [extractor/netverse] Extract comments by HobbyistDev
 - [extractor/nosnl] Add support for /video by HobbyistDev
 - [extractor/odnoklassniki] Extract subtitles by bashonly
 - [extractor/pinterest] Fix extractor by bashonly
 - [extractor/plutotv] Fix videos with non-zero start by digitall
 - [extractor/polskieradio] Adapt to next.js redesigns by selfisekai
 - [extractor/reddit] Add vcodec to fallback format by chengzhicn
 - [extractor/reddit] Extract crossposted media by bashonly
 - [extractor/reddit] Extract video embeds in text posts by bashonly
 - [extractor/rutube] Support private videos by mexus
 - [extractor/sibnet] Separate from VKIE
 - [extractor/slideslive] Fix extractor by Grub4K, bashonly
 - [extractor/slideslive] Support embeds and slides by Grub4K, bashonly, pukkandan
 - [extractor/soundcloud] Support user permalink by nosoop
 - [extractor/spankbang] Fix extractor by JChris246
 - [extractor/stv] Detect DRM
 - [extractor/swearnet] Fix description bug
 - [extractor/tencent] Fix geo-restricted video by elyse0
 - [extractor/tiktok] Fix subs, 
DouyinIE, improve_VALID_URLby bashonly - [extractor/tiktok] Update 
_VALID_URL, addapi_hostnamearg by bashonly - [extractor/tiktok] Update API hostname by redraskal
 - [extractor/twitcasting] Fix videos with password by Spicadox, bashonly
 - [extractor/twitter] Heed 
--no-playlistfor multi-video tweets by Grub4K, bashonly - [extractor/twitter] Refresh guest token when expired by Grub4K, bashonly
 - [extractor/twitter:spaces] Add 
Refererto m3u8 by nixxo - [extractor/udemy] Fix lectures that have no URL and detect DRM
 - [extractor/unsupported] Add more URLs
 - [extractor/urplay] Support for audio-only formats by barsnick
 - [extractor/wistia] Improve extension detection by Grub4K, bashonly, pukkandan
 - [extractor/yle_areena] Support restricted videos by docbender
 - [extractor/youku] Fix extractor by KurtBestor
 - [extractor/youporn] Fix metadata by marieell
 - [extractor/redgifs] Fix bug in 8c188d5
 
2022.11.11
- Merge youtube-dl: Upto commit/de39d12
 - Backport SSL configuration from Python 3.10 by coletdjnz
 - Do more processing in 
--flat-playlist - Fix 
--listoptions not implying-sin some cases by Grub4K, bashonly - Fix end time of clips by cruel-efficiency
 - Fix for 
formats=None - Write API params in debug head
 - [outtmpl] Ensure ASCII in json and add option for Unicode
 - [SponsorBlock] Add 
typefield, obey--retry-sleep extractor, relax duration check for large segments - [SponsorBlock] Support 
chaptercategory by ajayyy, pukkandan - [ThumbnailsConvertor] Fix filename escaping by dirkf, pukkandan
 - [ModifyChapters] Handle the entire video being marked for removal
 - [embedthumbnail] Fix thumbnail name in mp3 by How-Bout-No
 - [downloader/fragment] HLS download can continue without first fragment
 - [cookies] Improve 
LenientSimpleCookieby Grub4K - [jsinterp] Improve separating regex
 - [extractor/common] Fix 
fatal=Falsefor_search_nuxt_data - [extractor/common] Improve 
_generic_title - [extractor/common] Fix 
json_ldtype checks by Grub4K - [extractor/generic] Separate embed extraction into own function
 - [extractor/generic:quoted-html] Add extractor by coletdjnz, pukkandan
 - [extractor/unsupported] Raise error on known DRM-only sites by coletdjnz
 - [utils] 
js_to_json: Improve escape handling by Grub4K - [utils] 
strftime_or_none: Workaround Python bug on Windows - [utils] 
traverse_obj: Always return list when branching, allowre.Matchobjects by Grub4K - [build, test] Harden workflows' security by sashashura
 - [build] 
py2exe: Migrate to freeze API by SG5, pukkandan - [build] Create 
armv7landaarch64releases by MrOctopus, pukkandan - [build] Make linux binary truly standalone using 
condaby mlampe - [build] Replace 
set-outputwithGITHUB_OUTPUTby Lesmiscore - [update] Use error code 
100for update errors - [compat] Fix 
shutils.movein restricted ACL mode on BSD by ClosedPort22, pukkandan - [docs, devscripts] Document 
pyinst's argument passthrough by jahway603 - [test] Allow 
extract_flatin download tests by coletdjnz, pukkandan - [cleanup] Misc fixes and cleanup by pukkandan, Alienmaster
 - [extractor/aeon] Add extractor by DoubleCouponDay
 - [extractor/agora] Add extractors by selfisekai
 - [extractor/camsoda] Add extractor by zulaport
 - [extractor/cinetecamilano] Add extractor by timendum
 - [extractor/deuxm] Add extractors by CrankDatSouljaBoy
 - [extractor/genius] Add extractors by bashonly
 - [extractor/japandiet] Add extractors by Lesmiscore
 - [extractor/listennotes] Add extractor by lksj, pukkandan
 - [extractor/nos.nl] Add extractor by HobbyistDev
 - [extractor/oftv] Add extractors by DoubleCouponDay
 - [extractor/podbayfm] Add extractor by schnusch
 - [extractor/qingting] Add extractor by bashonly, changren-wcr
 - [extractor/screen9] Add extractor by tpikonen
 - [extractor/swearnet] Add extractor by HobbyistDev
 - [extractor/YleAreena] Add extractor by pukkandan, vitkhab
 - [extractor/zeenews] Add extractor by m4tu4g, pukkandan
 - [extractor/youtube:tab] Update tab handling for redesign by coletdjnz, pukkandan
- Channel URLs download all uploads of the channel as multiple playlists, separated by tab
 
 - [extractor/youtube] Differentiate between no comments and disabled comments by coletdjnz
 - [extractor/youtube] Extract 
concurrent_view_countfor livestreams by coletdjnz - [extractor/youtube] Fix 
durationfor premieres by nosoop - [extractor/youtube] Fix 
live_statusby coletdjnz, pukkandan - [extractor/youtube] Ignore incomplete data error for comment replies by coletdjnz
 - [extractor/youtube] Improve chapter parsing from description
 - [extractor/youtube] Mark videos as fully watched by bsun0000
 - [extractor/youtube] Update piped instances by Generator
 - [extractor/youtube] Update playlist metadata extraction for new layout by coletdjnz
 - [extractor/youtube:tab] Fix video metadata from tabs by coletdjnz
 - [extractor/youtube:tab] Let 
approximate_datereturn timestamp - [extractor/americastestkitchen] Fix extractor by bashonly
 - [extractor/bbc] Support onion domains by DoubleCouponDay
 - [extractor/bilibili] Add chapters and misc cleanup by lockmatrix, pukkandan
 - [extractor/bilibili] Fix BilibiliIE and Bangumi extractors by lockmatrix, pukkandan
 - [extractor/bitchute] Better error for geo-restricted videos by flashdagger
 - [extractor/bitchute] Improve 
BitChuteChannelIEby flashdagger, pukkandan - [extractor/bitchute] Simplify extractor by flashdagger, pukkandan
 - [extractor/cda] Support login through API by selfisekai
 - [extractor/crunchyroll] Beta is now the only layout by tejing1
 - [extractor/detik] Avoid unnecessary extraction
 - [extractor/doodstream] Remove extractor
 - [extractor/dplay] Add MotorTrendOnDemand extractor by bashonly
 - [extractor/epoch] Support videos without data-trailer by gibson042, pukkandan
 - [extractor/fox] Extract thumbnail by vitkhab
 - [extractor/foxnews] Add 
FoxNewsVideoextractor - [extractor/hotstar] Add season support by m4tu4g
 - [extractor/hotstar] Refactor v1 API calls
 - [extractor/iprima] Make json+ld non-fatal by bashonly
 - [extractor/iq] Increase phantomjs timeout
 - [extractor/kaltura] Support playlists by jwoglom, pukkandan
 - [extractor/lbry] Authenticate with cookies by flashdagger
 - [extractor/livestreamfails] Support posts by invertico
 - [extractor/mlb] Add 
MLBArticleextractor by HobbyistDev - [extractor/mxplayer] Improve extractor by m4tu4g
 - [extractor/niconico] Always use HTTPS for requests
 - [extractor/nzherald] Support new video embed by coletdjnz
 - [extractor/odnoklassniki] Support boosty.to embeds by Lesmiscore, megapro17, pukkandan
 - [extractor/paramountplus] Update API token by bashonly
 - [extractor/reddit] Add fallback format by bashonly
 - [extractor/redgifs] Fix extractors by bashonly, pukkandan
 - [extractor/redgifs] Refresh auth token for 401 by endotronic, pukkandan
 - [extractor/rumble] Add HLS formats and extract more metadata by flashdagger
 - [extractor/sbs] Improve 
_VALID_URLby bashonly - [extractor/skyit] Fix extractors by nixxo
 - [extractor/stripchat] Fix hostname for HLS stream by zulaport
 - [extractor/stripchat] Improve error message by freezboltz
 - [extractor/telegram] Add playlist support and more metadata by bashonly, bsun0000
 - [extractor/Tnaflix] Fix for HTTP 500 by SG5, pukkandan
 - [extractor/tubitv] Better DRM detection by bashonly
 - [extractor/tvp] Update extractors by selfisekai
 - [extractor/twitcasting] Fix 
data-movie-playlistextraction by Lesmiscore - [extractor/twitter] Add onion site to 
_VALID_URLby DoubleCouponDay - [extractor/twitter] Add Spaces extractor and GraphQL API by Grub4K, bashonly, nixxo, pukkandan
 - [extractor/twitter] Support multi-video posts by Grub4K
 - [extractor/uktvplay] Fix 
_VALID_URL - [extractor/viu] Support subtitles of on-screen text by tkgmomosheep
 - [extractor/VK] Fix playlist URLs by the-marenga
 - [extractor/vlive] Extract 
release_timestamp - [extractor/voot] Improve 
_VALID_URLby freezboltz - [extractor/wordpress:mb.miniAudioPlayer] Add embed extractor by coletdjnz
 - [extractor/YoutubeWebArchive] Improve metadata extraction by coletdjnz
 - [extractor/zee5] Improve 
_VALID_URLby m4tu4g - [extractor/zenyandex] Fix extractors by lksj, puc9, pukkandan
 
2022.10.04
- Allow a 
setto be passed asdownload_archiveby pukkandan, bashonly - Allow open ranges for time ranges by Lesmiscore
 - Allow plugin extractors to replace the built-in ones
 - Don't download entire video when no matching 
--download-sections - Fix 
--config-location - - Improve 5736d79
 - Fix for when playlists don't have 
webpage_url - Support environment variables in 
--ffmpeg-location - Workaround 
libc_vernot be available on Windows Store version of Python - [outtmpl] Curly braces to filter keys by pukkandan
 - [outtmpl] Make 
%swork in strfformat for all systems - [jsinterp] Workaround operator associativity issue
 - [cookies] Let 
_get_mac_keyring_passwordfail gracefully - [cookies] Parse cookies leniently by Grub4K
 - [phantomjs] Fix bug in 587021c by elyse0
 - [downloader/aria2c] Fix filename containing leading whitespace by std-move
 - [downloader/ism] Support ec-3 codec by nixxo
 - [extractor] Fix 
fatal=FalseinRetryManager - [extractor] Improve json-ld extraction
 - [extractor] Make 
_search_jsonable to parse lists - [extractor] Escape 
%inrepresentation_idof m3u8 - [extractor/generic] Pass through referer from json-ld
 - [utils] 
base_url: URL paths can contain&by elyse0 - [utils] 
js_to_json: Improve - [utils] 
Popen.run: Fix default return in binary mode - [utils] 
traverse_obj: Rewrite, document and add tests by Grub4K - [devscripts] 
make_lazy_extractors: Fix for Docker by josanabr - [docs] Misc Improvements
 - [cleanup] Misc fixes and cleanup by pukkandan, gamer191
 - [extractor/24tv.ua] Add extractors by coletdjnz
 - [extractor/BerufeTV] Add extractor by Fabi019
 - [extractor/booyah] Add extractor by HobbyistDev, elyse0
 - [extractor/bundesliga] Add extractor by Fabi019
 - [extractor/GoPlay] Add extractor by CNugteren, basrieter, jeroenj
 - [extractor/iltalehti] Add extractor by tpikonen
 - [extractor/IsraelNationalNews] Add extractor by Bobscorn
 - [extractor/mediaworksnzvod] Add extractor by coletdjnz
 - [extractor/MicrosoftEmbed] Add extractor by DoubleCouponDay
 - [extractor/nbc] Add NBCStations extractor by bashonly
 - [extractor/onenewsnz] Add extractor by coletdjnz
 - [extractor/prankcast] Add extractor by HobbyistDev, columndeeply
 - [extractor/Smotrim] Add extractor by Lesmiscore, nikita-moor
 - [extractor/tencent] Add Iflix extractor by elyse0
 - [extractor/unscripted] Add extractor by HobbyistDev
 - [extractor/adobepass] Add MSO AlticeOne (Optimum TV) by CplPwnies
 - [extractor/youtube] Download 
post_livevideos from start by Lesmiscore, pukkandan - [extractor/youtube] Add support for Shorts audio pivot feed by coletdjnz, pukkandan
 - [extractor/youtube] Detect 
lazy-load-for-videosembeds - [extractor/youtube] Do not warn on duplicate chapters
 - [extractor/youtube] Fix video like count extraction by coletdjnz
 - [extractor/youtube] Support changing extraction language by coletdjnz
 - [extractor/youtube:tab] Improve continuation items extraction
 - [extractor/youtube:tab] Support 
reporthistorypage - [extractor/amazonstore] Fix JSON extraction by coletdjnz, pukkandan
 - [extractor/amazonstore] Retry to avoid captcha page by Lesmiscore
 - [extractor/animeondemand] Remove extractor by TokyoBlackHole
 - [extractor/anvato] Fix extractor and refactor by bashonly
 - [extractor/artetv] Remove duplicate stream urls by Grub4K
 - [extractor/audioboom] Support direct URLs and refactor by pukkandan, tpikonen
 - [extractor/bandcamp] Extract 
uploader_url - [extractor/bilibili] Add space.bilibili extractors by lockmatrix
 - [extractor/BilibiliSpace] Fix extractor and better error message by lockmatrix
 - [extractor/BiliIntl] Support uppercase lang in 
_VALID_URLby coletdjnz - [extractor/BiliIntlSeries] Fix 
_VALID_URL - [extractor/bongacams] Update 
_VALID_URLby 0xGodspeed - [extractor/crunchyroll:beta] Improve handling of hardsubs by Grub4K
 - [extractor/detik] Generalize extractors by HobbyistDev, coletdjnz
 - [extractor/dplay:italy] Add default authentication by Timendum
 - [extractor/heise] Fix extractor by coletdjnz
 - [extractor/holodex] Fix 
_VALID_URLby LiviaMedeiros - [extractor/hrfensehen] Fix extractor by snapdgn
 - [extractor/hungama] Add subtitle by GautamMKGarg, pukkandan
 - [extractor/instagram] Extract more metadata by pritam20ps05
 - [extractor/JWPlatform] Fix extractor by coletdjnz
 - [extractor/malltv] Fix video_id extraction by HobbyistDev
 - [extractor/MLBTV] Detect live streams
 - [extractor/motorsport] Support native embeds
 - [extractor/Mxplayer] Fix extractor by itachi-19
 - [extractor/nebula] Add nebula.tv by tannertechnology
 - [extractor/nfl] Fix extractor by bashonly
 - [extractor/ondemandkorea] Update 
jw_configregex by julien-hadleyjack - [extractor/paramountplus] Better DRM detection by bashonly
 - [extractor/patreon] Sort formats
 - [extractor/rcs] Fix embed extraction by coletdjnz
 - [extractor/redgifs] Fix extractor by jhwgh1968
 - [extractor/rutube] Fix 
_EMBED_REGEXby coletdjnz - [extractor/RUTV] Fix warnings for livestreams by Lesmiscore
 - [extractor/soundcloud:search] More metadata in 
--flat-playlistby SuperSonicHub1 - [extractor/telegraaf] Use mobile GraphQL API endpoint by coletdjnz
 - [extractor/tennistv] Fix timestamp by zenerdi0de
 - [extractor/tiktok] Fix TikTokIE by bashonly
 - [extractor/triller] Fix auth token by bashonly
 - [extractor/trovo] Fix extractors by Mehavoid
 - [extractor/tv2] Support new url format by tobi1805
 - [extractor/web.archive:youtube] Fix 
_YT_INITIAL_PLAYER_RESPONSE_RE - [extractor/wistia] Add support for channels by coletdjnz
 - [extractor/wistia] Match IDs in embed URLs by bashonly
 - [extractor/wordpress:playlist] Add generic embed extractor by coletdjnz
 - [extractor/yandexvideopreview] Update 
_VALID_URLby Grub4K - [extractor/zee5] Fix 
_VALID_URLby m4tu4g - [extractor/zee5] Generate device ids by freezboltz
 
2022.09.01
- Add option 
--use-extractors - Merge youtube-dl: Upto commit/ed5c44e
 - Add yt-dlp version to infojson
 - Fix 
--break-per-url --max-downloads - Fix bug in 
--alias - [cookies] Support firefox container in 
--cookies-from-browserby bashonly, coletdjnz, pukkandan - [downloader/external] Smarter detection of executable
 - [extractor/generic] Don't return JW player without formats
 - [FormatSort] Fix 
aextfor--prefer-free-formats - [jsinterp] Various improvements by pukkandan, dirkf, elyse0
 - [cache] Mechanism to invalidate old cache
 - [utils] Add 
deprecation_warning - [utils] Add 
orderedSet_from_options - [utils] 
Popen: RestoreLD_LIBRARY_PATHwhen using PyInstaller by Lesmiscore - [build] 
make tarshould not followDESTDIRby satan1st - [build] Update pyinstaller by shirt-dev
 - [test] Fix 
test_youtube_signature - [cleanup] Misc fixes and cleanup by DavidH-2022, MrRawes, pukkandan
 - [extractor/epoch] Add extractor by tejasa97
 - [extractor/eurosport] Add extractor by HobbyistDev
 - [extractor/IslamChannel] Add extractors by Lesmiscore
 - [extractor/newspicks] Add extractor by Lesmiscore
 - [extractor/triller] Add extractor by bashonly
 - [extractor/VQQ] Add extractors by elyse0
 - [extractor/youtube] Improvements to nsig extraction
 - [extractor/youtube] Fix bug in format sorting
 - [extractor/youtube] Update iOS Innertube clients by SamantazFox
 - [extractor/youtube] Use device-specific user agent by coletdjnz
 - [extractor/youtube] Add 
--compat-option no-youtube-prefer-utc-upload-dateby coletdjnz - [extractor/arte] Bug fix by cgrigis
 - [extractor/bilibili] Extract 
flacwith premium account by jackyyf - [extractor/BiliBiliSearch] Don't sort by date
 - [extractor/BiliBiliSearch] Fix infinite loop
 - [extractor/bitchute] Mark errors as expected
 - [extractor/crunchyroll:beta] Use anonymous access by tejing1
 - [extractor/huya] Fix stream extraction by ohaiibuzzle
 - [extractor/medaltv] Fix extraction by xenova
 - [extractor/mediaset] Fix embed extraction
 - [extractor/mixcloud] All formats are audio-only
 - [extractor/rtbf] Fix jwt extraction by elyse0
 - [extractor/screencastomatic] Support 
--video-passwordby shreyasminocha - [extractor/stripchat] Don't modify input URL by dfaker
 - [extractor/uktv] Improve 
_VALID_URLby dirkf - [extractor/vimeo:user] Fix 
_VALID_URL 
2022.08.19
- Fix bug in 
--download-archive - [jsinterp] Fix for new youtube players and related improvements by dirkf, pukkandan
 - [phantomjs] Add function to execute JS without a DOM by MinePlayersPE, pukkandan
 - [build] Exclude devscripts from installs by Lesmiscore
 - [cleanup] Misc fixes and cleanup
 - [extractor/youtube] Add fallback to phantomjs for nsig
 - [extractor/youtube] Fix error reporting of "Incomplete data"
 - [extractor/youtube] Improve format sorting for IOS formats
 - [extractor/youtube] Improve signature caching
 - [extractor/instagram] Fix extraction by bashonly, pritam20ps05
 - [extractor/rai] Minor fix by nixxo
 - [extractor/rtbf] Fix stream extractor by elyse0
 - [extractor/SovietsCloset] Fix extractor by ChillingPepper
 - [extractor/zattoo] Fix Zattoo resellers by goggle
 
2022.08.14
- Merge youtube-dl: Upto commit/d231b56
 - [jsinterp] Handle new youtube signature functions
 - [jsinterp] Truncate error messages
 - [extractor] Fix format sorting of 
channels - [ffmpeg] Disable avconv unless 
--prefer-avconv - [ffmpeg] Smarter detection of ffprobe filename
 - [embedthumbnail] Detect 
libatomicparsley.so - [ThumbnailsConvertor] Fix conversion after 
fixup_webp - [utils] Fix 
get_compatible_ext - [build] Fix changelog
 - [update] Set executable bit-mask by pukkandan, Lesmiscore
 - [devscripts] Fix import
 - [docs] Consistent use of 
e.g.by Lesmiscore - [cleanup] Misc fixes and cleanup
 - [extractor/moview] Add extractor by HobbyistDev
 - [extractor/parler] Add extractor by palewire
 - [extractor/patreon] Ignore erroneous media attachments by coletdjnz
 - [extractor/truth] Add extractor by palewire
 - [extractor/aenetworks] Add formats parameter by jacobtruman
 - [extractor/crunchyroll] Improve 
_VALID_URLs - [extractor/doodstream] Add 
wfdomain by aldoridhoni - [extractor/facebook] Add reel support by bashonly
 - [extractor/MLB] New extractor by ischmidt20
 - [extractor/rai] Misc fixes by nixxo
 - [extractor/toggo] Improve 
_VALID_URLby masta79 - [extractor/tubitv] Extract additional formats by shirt-dev
 - [extractor/zattoo] Potential fix for resellers
 
2022.08.08
- Remove Python 3.6 support
 - Determine merge container better by pukkandan, selfisekai
 - Framework for embed detection by coletdjnz, pukkandan
 - Merge youtube-dl: Upto commit/adb5294
 --compat-option no-live-chatshould disable danmaku- Fix misleading DRM message
 - Import ctypes only when necessary
 - Minor bugfixes
 - Reject entire playlists faster with 
--match-filter - Remove filtered entries from 
-J - Standardize retry mechanism
 - Validate 
--merge-output-format - [downloader] Add average speed to final progress line
 - [extractor] Add field 
audio_channels - [extractor] Support multiple archive ids for one video
 - [ffmpeg] Set 
ffmpeg_locationin a contextvar - [FFmpegThumbnailsConvertor] Fix conversion from GIF
 - [MetadataParser] Don't set 
Nonewhen the field didn't match - [outtmpl] Smarter replacing of unsupported characters
 - [outtmpl] Treat empty values as None in filenames
 - [utils] sanitize_open: Allow any IO stream as stdout
 - [build, devscripts] Add devscript to set a build variant
 - [build] Improve build process by shirt-dev
 - [build] Update pyinstaller
 - [devscripts] Create 
utilsand refactor - [docs] Clarify 
best* - [docs] Fix bug report issue template
 - [docs] Fix capitalization in references by christoph-heinrich
 - [cleanup, mhtml] Use imghdr
 - [cleanup, utils] Consolidate known media extensions
 - [cleanup] Misc fixes and cleanup
 - [extractor/angel] Add extractor by AxiosDeminence
 - [extractor/dplay] Add MotorTrend extractor by Sipherdrakon
 - [extractor/harpodeon] Add extractor by eren-kemer
 - [extractor/holodex] Add extractor by pukkandan, sqrtNOT
 - [extractor/kompas] Add extractor by HobbyistDev
 - [extractor/rai] Add raisudtirol extractor by nixxo
 - [extractor/tempo] Add extractor by HobbyistDev
 - [extractor/youtube] Fixes for third party client detection by coletdjnz
 - [extractor/youtube] Add 
live_status=post_liveby lazypete365 - [extractor/youtube] Extract more format info
 - [extractor/youtube] Parse translated subtitles only when requested
 - [extractor/youtube, extractor/twitch] Allow waiting for channels to become live
 - [extractor/youtube, webvtt] Extract auto-subs from livestream VODs by fstirlitz, pukkandan
 - [extractor/AbemaTVTitle] Implement paging by Lesmiscore
 - [extractor/archiveorg] Improve handling of formats by coletdjnz, pukkandan
 - [extractor/arte] Fix title extraction
 - [extractor/arte] Move to v2 API by fstirlitz, pukkandan
 - [extractor/bbc] Fix news articles by ajj8
 - [extractor/camtasia] Separate into own extractor by coletdjnz
 - [extractor/cloudflarestream] Fix video_id padding by haobinliang
 - [extractor/crunchyroll] Fix conversion of thumbnail from GIF
 - [extractor/crunchyroll] Handle missing metadata correctly by Burve, pukkandan
 - [extractor/crunchyroll:beta] Extract timestamp and fix tests by tejing1
 - [extractor/crunchyroll:beta] Use streams API by tejing1
 - [extractor/doodstream] Support more domains by Galiley
 - [extractor/ESPN] Extract duration by ischmidt20
 - [extractor/FIFA] Change API endpoint by Bricio, yashkc2025
 - [extractor/globo:article] Remove false positives by Bricio
 - [extractor/Go] Extract timestamp by ischmidt20
 - [extractor/hidive] Fix cookie login when netrc is also given by winterbird-code
 - [extractor/html5] Separate into own extractor by coletdjnz, pukkandan
 - [extractor/ina] Improve extractor by elyse0
 - [extractor/NaverNow] Change endpoint by ping
 - [extractor/ninegag] Extract uploader by DjesonPV
 - [extractor/NovaPlay] Fix extractor by Bojidarist
 - [extractor/orf:radio] Rewrite extractors
 - [extractor/patreon] Fix and improve extractors by coletdjnz, pukkandan
 - [extractor/rai] Fix RaiNews extraction by nixxo
 - [extractor/redbee] Unify and update extractors by elyse0
 - [extractor/stripchat] Fix _VALID_URL by freezboltz
 - [extractor/tubi] Exclude playlists from playlist entries by sqrtNOT
 - [extractor/tviplayer] Improve 
_VALID_URLby HobbyistDev - [extractor/twitch] Extract chapters for single chapter VODs by mpeter50
 - [extractor/vgtv] Support tv.vg.no by sqrtNOT
 - [extractor/vidio] Support embed link by HobbyistDev
 - [extractor/vk] Fix extractor by Mehavoid
 - [extractor/WASDTV:record] Fix 
_VALID_URL - [extractor/xfileshare] Add Referer by Galiley
 - [extractor/YahooJapanNews] Fix extractor by Lesmiscore
 - [extractor/yandexmusic] Extract higher quality format
 - [extractor/zee5] Update Device ID by m4tu4g
 
2022.07.18
- Allow users to specify encoding in each config files by Lesmiscore
 - Discard infodict from memory if no longer needed
 - Do not allow extractors to return 
None - Do not load system certificates when 
certifiis used - Fix rounding of integers in format table
 - Improve chapter sanitization
 - Skip some fixup if remux/recode is needed by Lesmiscore
 - Support 
--no-progressfor--wait-for-video - Fix bug in 612f2be
 - [outtmpl] Add alternate form 
hfor HTML escaping - [aes] Add multiple padding modes in CBC by elyse0
 - [extractor/common] Passthrough 
errnote=Falseto parsers - [extractor/generic] Remove HEAD request
 - [http] Ensure the file handle is always closed
 - [ModifyChapters] Modify duration in infodict
 - [options] Fix aliases to 
--config-location - [utils] Fix 
get_domain - [build] Consistent order for lazy extractors by lamby
 - [build] Fix architecture suffix of executables by odo2063
 - [build] Improve 
setup.py - [update] Do not check 
_update_specwhen up to date - [update] Prepare to remove Python 3.6 support
 - [compat] Let PyInstaller detect _legacy module
 - [devscripts/update-formulae] Do not change dependency section
 - [test] Split download tests so they can be more easily run in CI
 - [docs] Improve docstring of 
download_rangesby FirefoxMetzger - [docs] Improve issue templates
 - [build] Fix bug in 6d916fe
 - [cleanup, utils] Refactor parse_codecs
 - [cleanup] Misc fixes and cleanup
 - [extractor/acfun] Add extractors by lockmatrix
 - [extractor/Audiodraft] Add extractors by Ashish0804, fstirlitz
 - [extractor/cellebrite] Add extractor by HobbyistDev
 - [extractor/detik] Add extractor by HobbyistDev
 - [extractor/hytale] Add extractor by llamasblade, pukkandan
 - [extractor/liputan6] Add extractor by HobbyistDev
 - [extractor/mocha] Add extractor by HobbyistDev
 - [extractor/rtl.lu] Add extractor by HobbyistDev
 - [extractor/rtvsl] Add extractor by iw0nderhow, pukkandan
 - [extractor/StarTrek] Add extractor by scy
 - [extractor/syvdk] Add extractor by misaelaguayo
 - [extractor/theholetv] Add extractor by dosy4ev
 - [extractor/TubeTuGraz] Add extractor by Ferdi265, pukkandan
 - [extractor/tviplayer] Add extractor by HobbyistDev
 - [extractor/wetv] Add extractors by elyse0
 - [extractor/wikimedia] Add extractor by EhtishamSabir, pukkandan
 - [extractor/youtube] Fix duration check for post-live manifestless mode
 - [extractor/youtube] More metadata for storyboards by ftk
 - [extractor/bigo] Fix extractor by Lesmiscore
 - [extractor/BiliIntl] Fix subtitle extraction by MinePlayersPE
 - [extractor/crunchyroll] Improve 
_VALID_URL - [extractor/fifa] Fix extractor by ischmidt20
 - [extractor/instagram] Fix post/story extractors by pritam20ps05, pukkandan
 - [extractor/iq] Set language correctly for Korean subtitles
 - [extractor/MangoTV] Fix subtitle languages
 - [extractor/Netverse] Improve playlist extractor by HobbyistDev
 - [extractor/philharmoniedeparis] Fix extractor by sqrtNOT
 - [extractor/Trovo] Fix extractor by u-spec-png
 - [extractor/twitch] Support storyboards for VODs by ftk
 - [extractor/WatchESPN] Improve 
_VALID_URLby IONECarter, dirkf - [extractor/WSJArticle] Fix video id extraction by sqrtNOT
 - [extractor/Ximalaya] Fix extractors by lockmatrix
 - [cleanup, extractor/youtube] Fix tests by sheerluck
 
2022.06.29
- Fix 
--downloader native - Fix 
section_endof clips - Fix playlist error handling
 - Sanitize 
chapters - [extractor] Fix 
_create_requestwhen headers is None - [extractor] Fix empty 
BaseURLin MPD - [ffmpeg] Write full output to debug on error
 - [hls] Warn user when trying to download live HLS
 - [options] Fix 
parse_known_argsfor-- - [utils] Fix inconsistent default handling between HTTP and HTTPS requests by coletdjnz
 - [build] Draft release until complete
 - [build] Fix release tag commit
 - [build] Standalone x64 builds for MacOS 10.9 by StefanLobbenmeier
 - [update] Ability to set a maximum version for specific variants
 - [compat] Fix 
compat.WINDOWS_VT_MODE - [compat] Remove deprecated functions from core code
 - [compat] Remove more functions
 - [cleanup, extractor] Reduce direct use of 
_downloader - [cleanup] Consistent style for file heads
 - [cleanup] Fix some typos by crazymoose77756
 - [cleanup] Misc fixes and cleanup
 - [extractor/Scrolller] Add extractor by LunarFang416
 - [extractor/ViMP] Add playlist extractor by FestplattenSchnitzel
 - [extractor/fuyin] Add extractor by HobbyistDev
 - [extractor/livestreamfails] Add extractor by nomevi
 - [extractor/premiershiprugby] Add extractor by HobbyistDev
 - [extractor/steam] Add broadcast extractor by HobbyistDev
 - [extractor/youtube] Mark videos as fully watched by Brett824
 - [extractor/CWTV] Extract thumbnail by ischmidt20
 - [extractor/ViMP] Add thumbnail and support more sites by FestplattenSchnitzel
 - [extractor/dropout] Support cookies and login only as needed by pingiun, pukkandan
 - [extractor/ertflix] Improve 
_VALID_URL - [extractor/lbry] Use HEAD request for redirect URL by flashdagger
 - [extractor/mediaset] Improve 
_VALID_URL - [extractor/npr] Implement e50c350 differently
 - [extractor/tennistv] Rewrite extractor by pukkandan, zenerdi0de
 
2022.06.22.1
- [build] Fix updating homebrew formula
 
2022.06.22
- Deprecate support for Python 3.6
 - Add option 
--download-sectionsto download video partially- Chapter regex and time ranges are accepted, e.g. 
--download-sections *1:10-2:20 
 - Chapter regex and time ranges are accepted, e.g. 
 - Add option 
--alias - Add option 
--lazy-playlistto process entries as they are received - Add option 
--retry-sleep - Add slicing notation to 
--playlist-items- Adds support for negative indices and step
 - Add 
-Ias alias for--playlist-index - Makes 
--playlist-start,--playlist-end,--playlist-reverse,--no-playlist-reverseredundant 
 --config-location -to provide options interactively- [build] Add Linux standalone builds
 - [update] Self-restart after update
 - Merge youtube-dl: Upto commit/8a158a9
 - Add 
--no-update - Allow extractors to specify section_start/end for clips
 - Do not print progress to 
stderrwith-q - Ensure pre-processor errors do not block video download
 - Fix 
--simulate --max-downloads - Improve error handling of bad config files
 - Return an error code if update fails
 - Fix bug in 3a408f9
 - [ExtractAudio] Allow conditional conversion
 - [ModifyChapters] Fix repeated removal of small segments
 - [ThumbnailsConvertor] Allow conditional conversion
 - [cookies] Detect profiles for cygwin/BSD by moench-tegeder
 - [dash] Show fragment count with 
--live-from-startby flashdagger - [extractor] Add 
_search_jsonby coletdjnz, pukkandan - [extractor] Add 
defaultparameter to_search_jsonby coletdjnz, pukkandan - [extractor] Add dev option 
--load-pages - [extractor] Handle 
json_ldwith multiple@types - [extractor] Import 
_ALL_CLASSESlazily - [extractor] Recognize 
srcattribute from HTML5 media elements by Lesmiscore - [extractor/generic] Revert 
e6ae51c123 - [f4m] Bugfix
 - [ffmpeg] Check version lazily
 - [jsinterp] Some optimizations and refactoring by dirkf, pukkandan
 - [utils] Improve performance using 
functools.cache - [utils] Send HTTP/1.1 ALPN extension by coletdjnz
 - [utils] 
ExtractorError: Fixexc_info - [utils] 
ISO3166Utils: AddEUandAP - [utils] 
Popen: Refactor to use contextmanager - [utils] 
locked_file: Fix for PyPy on Windows - [update] Expose more functionality to API
 - [update] Use 
.gitfolder to distinguishsource/unknown - [compat] Add 
functools.cached_property - [test] Fix 
FakeYDLsignatures by coletdjnz - [docs] Improvements
 - [cleanup, ExtractAudio] Refactor
 - [cleanup, downloader] Refactor 
report_progress - [cleanup, extractor] Refactor 
_download_...methods - [cleanup, extractor] Rename 
extractors.pyto_extractors.py - [cleanup, utils] Don't use kwargs for 
format_field - [cleanup, build] Refactor
 - [cleanup, docs] Re-indent "Usage and Options" section
 - [cleanup] Deprecate 
YoutubeDL.parse_outtmpl - [cleanup] Misc fixes and cleanup by Lesmiscore, MrRawes, christoph-heinrich, flashdagger, gamer191, kwconder, pukkandan
 - [extractor/DailyWire] Add extractors by HobbyistDev, pukkandan
 - [extractor/fourzerostudio] Add extractors by Lesmiscore
 - [extractor/GoogleDrive] Add folder extractor by evansp, pukkandan
 - [extractor/MirrorCoUK] Add extractor by LunarFang416, pukkandan
 - [extractor/atscaleconfevent] Add extractor by Ashish0804
 - [extractor/freetv] Add extractor by elyse0
 - [extractor/ixigua] Add Extractor by HobbyistDev
 - [extractor/kicker.de] Add extractor by HobbyistDev
 - [extractor/netverse] Add extractors by HobbyistDev, pukkandan
 - [extractor/playsuisse] Add extractor by pukkandan, sbor23
 - [extractor/substack] Add extractor by elyse0
 - [extractor/youtube] Support downloading clips
 - [extractor/youtube] Add 
innertube_hostandinnertube_keyextractor args by coletdjnz - [extractor/youtube] Add warning for PostLiveDvr
 - [extractor/youtube] Bring back 
_extract_chapters_from_description - [extractor/youtube] Extract 
comment_countfrom webpage - [extractor/youtube] Fix 
:ytnotificationsextractor by coletdjnz - [extractor/youtube] Fix initial player response extraction by coletdjnz, pukkandan
 - [extractor/youtube] Fix live chat for videos with content warning by coletdjnz
 - [extractor/youtube] Make signature extraction non-fatal
 - [extractor/youtube:tab] Detect 
videoRendererin_post_thread_continuation_entries - [extractor/BiliIntl] Fix metadata extraction
 - [extractor/BiliIntl] Fix subtitle extraction by HobbyistDev
 - [extractor/FranceCulture] Fix extractor by aurelg, pukkandan
 - [extractor/PokemonSoundLibrary] Remove extractor by Lesmiscore
 - [extractor/StreamCZ] Fix extractor by adamanldo, dirkf
 - [extractor/WatchESPN] Support free videos and BAM_DTC by ischmidt20
 - [extractor/animelab] Remove extractor by gamer191
 - [extractor/bloomberg] Change playback endpoint by m4tu4g
 - [extractor/ccc] Extract view_count by vkorablin
 - [extractor/crunchyroll:beta] Fix extractor after API change by Burve, tejing1
 - [extractor/curiositystream] Get 
auth_tokenfrom cookie by mnn - [extractor/digitalconcerthall] Fix extractor by ZhymabekRoman
 - [extractor/dropbox] Extract the correct 
mountComponent - [extractor/dropout] Login is not mandatory
 - [extractor/duboku] Fix for hostname change by mozbugbox
 - [extractor/espn] Add 
WatchESPNextractor by ischmidt20, pukkandan - [extractor/expressen] Fix extractor by aejdl
 - [extractor/foxnews] Update embed extraction by elyse0
 - [extractor/ina] Fix extractor by elyse0
 - [extractor/iwara:user] Make paging better by Lesmiscore
 - [extractor/jwplatform] Look for 
data-video-jw-id - [extractor/lbry] Update livestream API by flashdagger
 - [extractor/mediaset] Improve 
_VALID_URL - [extractor/naver] Add 
navernowextractor by ping - [extractor/niconico:series] Fix extractor by sqrtNOT
 - [extractor/npr] Use stream url from json-ld by r5d
 - [extractor/pornhub] Extract 
uploader_idfield by Lesmiscore - [extractor/radiofrance] Add more radios by bubbleguuum
 - [extractor/rumble] Detect JS embed
 - [extractor/rumble] Extract subtitles by fstirlitz
 - [extractor/southpark] Add 
southpark.latextractor by darkxex - [extractor/spotify:show] Fix extractor
 - [extractor/tiktok] Detect embeds
 - [extractor/tiktok] Extract 
SIGI_STATEby dirkf, pukkandan, sulyi - [extractor/tver] Fix extractor by Lesmiscore
 - [extractor/vevo] Fix extractor by Lesmiscore
 - [extractor/yahoo:gyao] Fix extractor
 - [extractor/zattoo] Fix live streams by miseran
 - [extractor/zdf] Improve format sorting by elyse0
 
2022.05.18
- Add support for SSL client certificate authentication by coletdjnz, dirkf
- Adds 
--client-certificate,--client-certificate-key,--client-certificate-password 
 - Adds 
 - Add 
--match-filter -to interactively ask for each video --max-downloadsshould obey--break-per-input- Allow use of weaker ciphers with 
--legacy-server-connect - Don't imply 
-sfor later stages of-O - Fix 
--date today - Fix 
--skip-unavailable-fragments - Fix color in 
-q -F - Fix redirect HTTP method handling by coletdjnz
 - Improve 
--clean-infojson - Remove warning for videos with an empty title
 - Run 
FFmpegFixupM3u8PPfor live-streams if needed - Show name of downloader in verbose log
 - [cookies] Allow 
cookiefileto be a text stream - [cookies] Report progress when importing cookies
 - [downloader/ffmpeg] Specify headers for each URL by elyse0
 - [fragment] Do not change chunk-size when 
--test - [fragment] Make single thread download work for 
--live-from-startby Lesmiscore - [hls] Fix 
byte_rangeforEXT-X-MAPfragment by fstirlitz - [http] Fix retrying on read timeout by coletdjnz
 - [ffmpeg] Fix features detection
 - [EmbedSubtitle] Enable for more video extensions
 - [EmbedThumbnail] Disable thumbnail conversion for mkv by evansp
 - [EmbedThumbnail] Do not obey 
-k - [EmbedThumbnail] Do not remove id3v1 tags
 - [FFmpegMetadata] Remove 
\0from metadata - [FFmpegMetadata] Remove filename from attached info-json
 - [FixupM3u8] Obey 
--hls-prefer-mpegts - [Sponsorblock] Don't crash when duration is unknown
 - [XAttrMetadata] Refactor and document dependencies
 - [extractor] Document netrc machines
 - [extractor] Update 
manifest_urls after redirect by elyse0 - [extractor] Update dash 
manifest_urlafter redirects by elyse0 - [extractor] Use 
classmethod/propertywhere possible - [generic] Refactor 
_extract_rss - [utils] 
is_html: Handle double BOM - [utils] 
locked_file: Ignore illegal seek ontruncateby jakeogh - [utils] 
sanitize_path: Fix when path is empty string - [utils] 
write_string: Workaround newline issue inconhost - [utils] 
certifi: Make sure the pem file exists - [utils] Fix 
WebSocketsWrapper - [utils] 
locked_file: Do not give executable bits for newly created files by Lesmiscore - [utils] 
YoutubeDLCookieJar: Detect and reject JSON file by Lesmiscore - [test] Convert warnings into errors and fix some existing warnings by fstirlitz
 - [dependencies] Create module with all dependency imports
 - [compat] Split into sub-modules by fstirlitz, pukkandan
 - [compat] Implement 
compat.imghdr - [build] Add 
make uninstallby MrRawes - [build] Avoid use of 
install -D - [build] Fix 
Makefileby putnam - [build] Fix 
--onediron macOS - [build] Add more test-runners
 - [cleanup] Deprecate some compat vars by fstirlitz, pukkandan
 - [cleanup] Remove unused code paths, extractors, scripts and tests by fstirlitz
 - [cleanup] Upgrade syntax (
pyupgrade) and sort imports (isort) - [cleanup, docs, build] Misc fixes
 - [BilibiliLive] Add extractor by HE7086, pukkandan
 - [Fifa] Add Extractor by Bricio
 - [goodgame] Add extractor by nevack
 - [gronkh] Add playlist extractors by hatienl0i261299
 - [icareus] Add extractor by tpikonen, pukkandan
 - [iwara] Add playlist extractors by i6t
 - [Likee] Add extractor by hatienl0i261299
 - [masters] Add extractor by m4tu4g
 - [nebula] Add support for subscriptions by hheimbuerger
 - [Podchaser] Add extractors by connercsbn
 - [rokfin:search] Add extractor by P-reducible, pukkandan
 - [youtube] Add 
:ytnotificationsextractor by krichbanana - [youtube] Add YoutubeStoriesIE (
ytstories:<channel UCID>) by coletdjnz - [ZingMp3] Add chart and user extractors by hatienl0i261299
 - [adn] Update AES key by elyse0
 - [adobepass] Allow cookies for authenticating MSO
 - [bandcamp] Exclude merch links by Yipten
 - [chingari] Fix archiving and tests
 - [DRTV] Improve 
_VALID_URLby vertan - [facebook] Improve thumbnail extraction by Wikidepia
 - [fc2] Stop heatbeating once FFmpeg finishes by Lesmiscore
 - [Gofile] Fix extraction and support password-protected links by mehq
 - [hotstar, cleanup] Refactor extractors
 - [InfoQ] Don't fail on missing audio format by evansp
 - [Jamendo] Extract more metadata by evansp
 - [kaltura] Update API calls by flashdagger
 - [KhanAcademy] Fix extractor by rand-net
 - [LCI] Fix extractor by MarwenDallel
 - [lrt] Support livestreams by GiedriusS
 - [niconico] Set 
expected_protocolto a public field - [Niconico] Support 2FA by ekangmonyet
 - [Olympics] Fix format extension
 - [openrec:movie] Enable fallback for /movie/ URLs
 - [PearVideo] Add fallback for formats by hatienl0i261299
 - [radiko] Fix extractor by Lesmiscore
 - [rai] Add 
release_year - [reddit] Prevent infinite loop
 - [rokfin] Implement login by P-reducible, pukkandan
 - [ruutu] Support hs.fi embeds by tpikonen, pukkandan
 - [spotify] Detect iframe embeds by fstirlitz
 - [telegram] Fix metadata extraction
 - [tmz, cleanup] Update tests by diegorodriguezv
 - [toggo] Fix 
_VALID_URLby ca-za - [trovo] Update to new API by nyuszika7h
 - [TVer] Improve extraction by Lesmiscore
 - [twitcasting] Pass headers for each formats by Lesmiscore
 - [VideocampusSachsen] Improve extractor by FestplattenSchnitzel
 - [vimeo] Fix extractors
 - [wat] Fix extraction of multi-language videos and subtitles by elyse0
 - [wistia] Fix 
_VALID_URLby dirkf - [youtube, cleanup] Minor refactoring by coletdjnz, pukkandan
 - [youtube] Added piped instance urls by JordanWeatherby
 - [youtube] Deprioritize auto-generated thumbnails
 - [youtube] Deprioritize format 22 (often damaged)
 - [youtube] Fix episode metadata extraction
 - [zee5] Fix extractor by Ashish0804
 - [zingmp3, cleanup] Refactor extractors
 
2022.04.08
- Use certificates from 
certifiif installed by coletdjnz - Treat multiple 
--match-filtersas OR - File locking improvements:
 - De-prioritize automatic-subtitles when no 
--sub-langis given - Exit after 
--dump-user-agent - Fallback to video-only format when selecting by extension
 - Fix 
--abort-on-errorfor subtitles - Fix 
--no-overwritefor playlist infojson - Fix 
--printwith--ignore-no-formatswhen url isNoneby flashdagger - Fix 
--sleep-interval - Fix 
--throttled-rate - Fix 
autonumber - Fix case of 
http_headers - Fix filepath sanitization in 
--print-to-file - Handle float in 
--wait-for-video - Ignore 
mhtmlformats from-f mergeall - Ignore format-specific fields in initial pass of 
--match-filter - Protect stdout from unexpected progress and console-title
 - Remove 
Accept-Encodingheader fromstd_headersby coletdjnz - Remove incorrect warning for 
--dateafter - Show warning when all media formats have DRM
 - [downloader] Fix invocation of 
HttpieFD - [http] Fix #3215
 - [http] Reject broken range before request by Lesmiscore, Jules-A, pukkandan
 - [fragment] Read downloaded fragments only when needed by Lesmiscore
 - [http] Retry on more errors by coletdjnz
 - [mhtml] Fix fragments with absolute urls by coletdjnz
 - [extractor] Add 
_perform_loginfunction - [extractor] Allow control characters inside json
 - [extractor] Support merging subtitles with data by coletdjnz
 - [generic] Extract subtitles from video.js by Lesmiscore
 - [ffmpeg] Cache version data
 - [FFmpegConcat] Ensure final directory exists
 - [FfmpegMetadata] Write id3v1 tags
 - [FFmpegVideoConvertor] Add more formats to 
--remux-video - [FFmpegVideoConvertor] Ensure all streams are copied
 - [MetadataParser] Validate outtmpl early
 - [outtmpl] Fix replacement/default when used with alternate
 - [outtmpl] Limit changes during sanitization
 - [phantomjs] Fix bug
 - [test] Add 
test_locked_file - [utils] 
format_decimal_suffix: Fix for very large numbers by s0u1h - [utils] 
traverse_obj: Allow filtering by value - [utils] Add 
filter_dict,get_first,try_call - [utils] ExtractorError: Fix for older python versions
 - [utils] WebSocketsWrapper: Allow omitting 
__enter__invocation by Lesmiscore - [docs] Add an 
.editorconfigfile by fstirlitz - [docs] Clarify the exact 
BSDlicense of dependencies by MrRawes - [docs] Minor improvements by pukkandan, cffswb, danielyli
 - [docs] Remove readthedocs
 - [build] Add 
requirements.txtto pip distributions - [cleanup, postprocessor] Create 
_download_json - [cleanup, vimeo] Fix tests
 - [cleanup] Misc fixes and minor cleanup
 - [cleanup] Use 
_html_extract_title - [AfreecaTV] Add 
AfreecaTVUserIEby hatienl0i261299 - [arte] Add 
format_noteto m3u8 formats - [azmedien] Add TVO Online to supported hosts by 1-Byte
 - [BanBye] Add extractor by mehq
 - [bilibili] Fix extraction of title with quotes by dzek69
 - [Craftsy] Add extractor by Bricio
 - [Cybrary] Add extractor by aaearon
 - [Huya] Add extractor by hatienl0i261299
 - [ITProTV] Add extractor by aaearon
 - [Jable] Add extractors by mehq
 - [LastFM] Add extractors by mehq
 - [Moviepilot] Add extractor by panatexxa
 - [panopto] Add extractors by coletdjnz, kmark
 - [PokemonSoundLibrary] Add extractor by Lesmiscore
 - [WasdTV] Add extractor by un-def, hatienl0i261299
 - [adobepass] Fix Suddenlink MSO by CplPwnies
 - [afreecatv] Match new vod url by wlritchi
 - [AZMedien] Support 
tv.telezueri.chby goggle - [BiliIntl] Support user-generated videos by wlritchi
 - [BRMediathek] Fix VALID_URL
 - [crunchyroll:playlist] Implement beta API by tejing1
 - [crunchyroll] Fix inheritance
 - [daftsex] Fix extractor by Soebb
 - [dailymotion] Support 
geo.dailymotion.comby hatienl0i261299 - [ellentube] Extract subtitles from manifest
 - [elonet] Rewrite extractor by Fam0r, pukkandan
 - [fptplay] Fix metadata extraction by hatienl0i261299
 - [FranceCulture] Support playlists by bohwaz
 - [go, viu] Extract subtitles from the m3u8 manifest by fstirlitz
 - [Imdb] Improve extractor by hatienl0i261299
 - [MangoTV] Improve extractor by hatienl0i261299
 - [Nebula] Fix bug in 
52efa4b312 - [niconico] Fix extraction of thumbnails and uploader (#3266)
 - [niconico] Rewrite NiconicoIE by Lesmiscore
 - [nitter] Minor fixes and update instance list by foghawk
 - [NRK] Extract timestamp by hatienl0i261299
 - [openrec] Download archived livestreams by Lesmiscore
 - [openrec] Refactor extractors by Lesmiscore
 - [panopto] Improve subtitle extraction and support slides by coletdjnz
 - [ParamountPlus, CBS] Change VALID_URL by Sipherdrakon
 - [ParamountPlusSeries] Support multiple pages by dodrian
 - [Piapro] Extract description with break lines by Lesmiscore
 - [rai] Fix extraction of http formas by nixxo
 - [rumble] unescape title
 - [RUTV] Fix format sorting by Lesmiscore
 - [ruutu] Detect embeds by tpikonen
 - [tenplay] Improve extractor by aarubui
 - [TikTok] Fix URLs with user id by hatienl0i261299
 - [TikTokVM] Fix redirect to user URL
 - [TVer] Fix extractor by Lesmiscore
 - [TVer] Support landing page by vvto33
 - [twitcasting] Don't return multi_video for archive with single hls manifest by Lesmiscore
 - [veo] Fix 
_VALID_URL - [Veo] Fix extractor by i6t
 - [viki] Don't attempt to modify URLs with signature by nyuszika7h
 - [viu] Fix bypass for preview by zackmark29
 - [viu] Fixed extractor by zackmark29, pukkandan
 - [web.archive:youtube] Make CDX API requests non-fatal by coletdjnz
 - [wget] Fix proxy by kikuyan, coletdjnz
 - [xnxx] Add 
xnxx3.comby rozari0 - [youtube] Add new age-gate bypass by zerodytrash, pukkandan
 - [youtube] Add extractor-arg to skip auto-translated subs
 - [youtube] Avoid false positives when detecting damaged formats
 - [youtube] Detect DRM better by shirt
 - [youtube] Fix auto-translated automatic captions
 - [youtube] Fix pagination of 
membershiptab - [youtube] Fix uploader for collaborative playlists by coletdjnz
 - [youtube] Improve video upload date handling by coletdjnz
 - [youtube:api] Prefer minified JSON response by coletdjnz
 - [youtube:search] Support hashtag entries by coletdjnz
 - [youtube:tab] Fix duration extraction for shorts by coletdjnz
 - [youtube:tab] Minor improvements
 - [youtube:tab] Return shorts url if video is a short by coletdjnz
 - [Zattoo] Fix extractors by goggle
 - [Zingmp3] Fix signature by hatienl0i261299
 
2022.03.08.1
- [cleanup] Refactor 
__init__.py - [build] Fix bug
 
2022.03.08
- Merge youtube-dl: Upto commit/6508688 (except NDR)
 - Add regex operator and quoting to format filters by lukasfink1
 - Add brotli content-encoding support by coletdjnz
 - Add pre-processor stage 
after_filter - Better error message when no 
--live-from-startformat - Create necessary directories for 
--print-to-file - Fill more fields for playlists by Lesmiscore
 - Fix 
-allfor--sub-langs - Fix doubling of 
video_idinExtractorError - Fix for when stdout/stderr encoding is 
None - Handle negative duration from extractor
 - Implement 
--add-headerwithout modifyingstd_headers - Obey 
--abort-on-errorfor "ffmpeg not installed" - Set 
webpage_url_...fromwebpage_urland not input URL - Tolerate failure to 
--write-linkdue to unknown URL - [aria2c] Add 
--http-accept-gzip=true - [build] Update pyinstaller to 4.10 by shirt
 - [cookies] Update MacOS12 
Cookies.binarycookieslocation by mdpauley - [devscripts] Improve 
prepare_manpage - [downloader] Do not use aria2c for non-native 
m3u8 - [downloader] Obey 
--file-access-retrieswhen deleting/renaming by ehoogeveen-medweb - [extractor] Allow 
http_headersto be specified forthumbnails - [extractor] Extract subtitles from manifests for vimeo, globo, kaltura, svt by fstirlitz
 - [extractor] Fix for manifests without period duration by dirkf, pukkandan
 - [extractor] Support 
--mark-watchedwithout_NETRC_MACHINEby coletdjnz - [FFmpegConcat] Abort on 
--simulate - [FormatSort] Consider 
acodec=oggasvorbis - [fragment] Fix bugs around resuming with Range by Lesmiscore
 - [fragment] Improve 
--live-from-startfor YouTube livestreams by Lesmiscore - [generic] Pass referer to extracted formats
 - [generic] Set rss 
guidas video id by Bricio - [options] Better ambiguous option resolution
 - [options] Rename 
--clean-infojsonto--clean-info-json - [SponsorBlock] Fixes for highlight and "full video labels" by nihil-admirari
 - [Sponsorblock] minor fixes by nihil-admirari
 - [utils] Better traceback for 
ExtractorError - [utils] Fix file locking for AOSP by jakeogh
 - [utils] Improve file locking
 - [utils] OnDemandPagedList: Do not download pages after error
 - [utils] render_table: Fix character calculation for removing extra gap by Lesmiscore
 - [utils] Use 
locked_fileforsanitize_openby jakeogh - [utils] Validate 
DateRangeinput - [utils] WebSockets wrapper for non-async functions by Lesmiscore
 - [cleanup] Don't pass protocol to 
_extract_m3u8_formatsfor live videos - [cleanup] Remove extractors for some dead websites by marieell
 - [cleanup, docs] Misc cleanup
 - [AbemaTV] Add extractors by Lesmiscore
 - [adobepass] Add Suddenlink MSO by CplPwnies
 - [ant1newsgr] Add extractor by zmousm
 - [bigo] Add extractor by Lesmiscore
 - [Caltrans] Add extractor by Bricio
 - [daystar] Add extractor by hatienl0i261299
 - [fc2:live] Add extractor by Lesmiscore
 - [fptplay] Add extractor by hatienl0i261299
 - [murrtube] Add extractor by cyberfox1691
 - [nfb] Add extractor by ofkz
 - [niconico] Add playlist extractors and refactor by Lesmiscore
 - [peekvids] Add extractor by schn0sch
 - [piapro] Add extractor by pycabbage, Lesmiscore
 - [rokfin] Add extractor by P-reducible, pukkandan
 - [rokfin] Add stack and channel extractors by P-reducible, pukkandan
 - [ruv.is] Add extractor by iw0nderhow
 - [telegram] Add extractor by hatienl0i261299
 - [VideocampusSachsen] Add extractors by FestplattenSchnitzel
 - [xinpianchang] Add extractor by hatienl0i261299
 - [abc] Support 1080p by Ronnnny
 - [afreecatv] Support password-protected livestreams by wlritchi
 - [ard] Fix valid URL
 - [ATVAt] Detect geo-restriction by marieell
 - [bandcamp] Detect acodec
 - [bandcamp] Fix user URLs by lyz-code
 - [bbc] Fix extraction of news articles by ajj8
 - [beeg] Fix extractor by Bricio
 - [bigo] Fix extractor to not to use 
form_params - [Bilibili] Pass referer for all formats by blackgear
 - [Biqle] Fix extractor by Bricio
 - [ccma] Fix timestamp parsing by nyuszika7h
 - [crunchyroll] Better error reporting on login failure by tejing1
 - [cspan] Support of C-Span congress videos by Grabien
 - [dropbox] fix regex by zenerdi0de
 - [fc2] Fix extraction by Lesmiscore
 - [fujitv] Extract resolution for free sources by YuenSzeHong
 - [Gettr] Add 
GettrStreamingIEby i6t - [Gettr] Fix formats order by i6t
 - [Gettr] Improve extractor by i6t
 - [globo] Expand valid URL by Bricio
 - [lbry] Fix 
--ignore-no-formats-error - [manyvids] Extract 
uploaderby regarten - [mildom] Fix linter
 - [mildom] Rework extractors by Lesmiscore
 - [mirrativ] Cleanup extractor code by Lesmiscore
 - [nhk] Add support for NHK for School by Lesmiscore
 - [niconico:tag] Add support for searching tags
 - [nrk] Add fallback API
 - [peekvids] Use JSON-LD by schn0sch
 - [peertube] Add media.fsfe.org by mxmehl
 - [rtvs] Fix extractor by Bricio
 - [spiegel] Fix 
_VALID_URL - [ThumbnailsConvertor] Support 
webp - [tiktok] Fix 
vm.tiktok/vt.tiktokURLs - [tubitv] Fix/improve TV series extraction by bbepis
 - [tumblr] Fix extractor by foghawk
 - [twitcasting] Add fallback for finding running live by Lesmiscore
 - [TwitCasting] Check for password protection by Lesmiscore
 - [twitcasting] Fix extraction by Lesmiscore
 - [twitch] Fix field name of 
view_count - [twitter] Fix for private videos by iphoting
 - [washingtonpost] Fix extractor by Bricio
 - [youtube:tab] Add 
approximate_dateextractor-arg - [youtube:tab] Follow redirect to regional channel by coletdjnz
 - [youtube:tab] Reject webpage data if redirected to home page
 - [youtube] De-prioritize potentially damaged formats
 - [youtube] Differentiate descriptive audio by language code
 - [youtube] Ensure subtitle urls are absolute by coletdjnz
 - [youtube] Escape possible 
$in_extract_n_function_nameregex by Lesmiscore - [youtube] Fix automatic captions
 - [youtube] Fix n-sig extraction for phone player JS by MinePlayersPE
 - [youtube] Further de-prioritize 3gp format
 - [youtube] Label original auto-subs
 - [youtube] Prefer UTC upload date for videos by coletdjnz
 - [zaq1] Remove dead extractor by marieell
 - [zee5] Support web-series by Aniruddh-J
 - [zingmp3] Fix extractor by hatienl0i261299
 - [zoom] Add support for screen cast by Mipsters
 
2022.02.04
- [youtube:search] Fix extractor by coletdjnz
 - [youtube:search] Add tests
 - [twitcasting] Enforce UTF-8 for POST payload by Lesmiscore
 - [mediaset] Fix extractor by nixxo
 - [websocket] Make syntax error in 
websocketsmodule non-fatal 
2022.02.03
- Merge youtube-dl: Upto commit/78ce962
 - Add option 
--print-to-file - Make nested --config-locations relative to parent file
 - Ensure 
_typeis present ininfo.json - Fix 
--compat-options list-formats - Fix/improve 
InAdvancePagedList - [downloader/ffmpeg] Handle unknown formats better
 - [outtmpl] Handle 
-o ""better - [outtmpl] Handle hard-coded file extension better
 - [extractor] Add convenience function 
_yes_playlist - [extractor] Allow non-fatal 
titleextraction - [extractor] Extract video inside 
Articlejson_ld - [generic] Allow further processing of json_ld URL
 - [cookies] Fix keyring selection for unsupported desktops
 - [utils] Strip double spaces in 
clean_htmlby dirkf - [aes] Add 
unpad_pkcs7 - [test] Fix 
test_youtube_playlist_noplaylist - [docs,cleanup] Misc cleanup
 - [dplay] Add extractors for site changes by Sipherdrakon
 - [ertgr] Add extractors by zmousm, dirkf
 - [Musicdex] Add extractors by Ashish0804
 - [YandexVideoPreview] Add extractor by KiberInfinity
 - [youtube] Add extractor 
YoutubeMusicSearchURLIE - [archive.org] Ignore unnecessary files
 - [Bilibili] Add 8k support by u-spec-png
 - [bilibili] Fix extractor, make anthology title non-fatal
 - [CAM4] Add thumbnail extraction by alerikaisattera
 - [cctv] De-prioritize sample format
 - [crunchyroll:beta] Add cookies support by tejing1
 - [crunchyroll] Fix login by tejing1
 - [doodstream] Fix extractor
 - [fc2] Fix extraction by Lesmiscore
 - [FFmpegConcat] Abort on --skip-download and download errors
 - [Fujitv] Extract metadata and support premium by YuenSzeHong
 - [globo] Fix extractor by Bricio
 - [glomex] Simplify embed detection
 - [GoogleSearch] Fix extractor
 - [Instagram] Fix extraction when logged in by MinePlayersPE
 - [iq.com] Add VIP support by MinePlayersPE
 - [mildom] Fix extractor by lazypete365
 - [MySpass] Fix video url processing by trassshhub
 - [Odnoklassniki] Improve embedded players extraction by KiberInfinity
 - [orf:tvthek] Lazy playlist extraction and obey --no-playlist
 - [Pladform] Fix redirection to external player by KiberInfinity
 - [ThisOldHouse] Improve Premium URL check by Ashish0804
 - [TikTok] Iterate through app versions by MinePlayersPE
 - [tumblr] Fix 403 errors and handle vimeo embeds by foghawk
 - [viki] Fix "Bad request" for manifest by nyuszika7h
 - [Vimm] add recording extractor by alerikaisattera
 - [web.archive:youtube] Add 
ytarchive:prefix and misc cleanup - [youtube:api] Do not use seek when reading HTTPError response by coletdjnz
 - [youtube] Fix n-sig for player e06dea74
 - [youtube, cleanup] Misc fixes and cleanup
 
2022.01.21
- Add option 
--concat-playlistto concat videos in a playlist - Allow multiple and nested configuration files
 - Add more post-processing stages (
after_video,playlist) - Allow 
--execto be run at any post-processing stage (Deprecates--exec-before-download) - Allow 
--printto be run at any post-processing stage - Allow listing formats, thumbnails, subtitles using 
--printby pukkandan, Zirro - Add fields 
video_autonumber,modified_date,modified_timestamp,playlist_count,channel_follower_count - Add key 
requested_downloadsin the rootinfo_dict - Write 
download_archiveonly after all formats are downloaded - [FfmpegMetadata] Allow setting metadata of individual streams using 
meta<n>_prefix - Add option 
--legacy-server-connectby xtkoba - Allow escaped 
,in--extractor-args - Allow unicode characters in 
info.json - Check for existing thumbnail/subtitle in final directory
 - Don't treat empty containers as 
Noneinsanitize_info - Fix 
-s --ignore-no-formats --force-write-archive - Fix live title for multiple formats
 - List playlist thumbnails in 
--list-thumbnails - Raise error if subtitle download fails
 - [cookies] Fix bug when keyring is unspecified
 - [ffmpeg] Ignore unknown streams, standardize use of 
-map 0 - [outtmpl] Alternate form for 
Dand fix suffix's case - [utils] Add 
Sec-Fetch-Modetostd_headers - [utils] Fix 
format_bytesoutput for Bytes by pukkandan, mdawar - [utils] Handle 
ss:xxxinparse_duration - [utils] Improve parsing for nested HTML elements by zmousm, pukkandan
 - [utils] Use key 
Noneintraverse_objto return as-is - [extractor] Detect more subtitle codecs in MPD manifests by fstirlitz
 - [extractor] Extract chapters from JSON-LD by iw0nderhow, pukkandan
 - [extractor] Extract thumbnails from JSON-LD by nixxo
 - [extractor] Improve 
url_resultand related - [generic] Improve KVS player extraction by trassshhub
 - [build] Reduce dependency on third party workflows
 - [extractor,cleanup] Use 
_search_nextjs_data,format_field - [cleanup] Minor fixes and cleanup
 - [docs] Improvements
 - [test] Fix TestVerboseOutput
 - [afreecatv] Add livestreams extractor by wlritchi
 - [callin] Add extractor by foghawk
 - [CrowdBunker] Add extractors by Ashish0804
 - [daftsex] Add extractors by k3ns1n
 - [digitalconcerthall] Add extractor by teridon
 - [Drooble] Add extractor by u-spec-png
 - [EuropeanTour] Add extractor by Ashish0804
 - [iq.com] Add extractors by MinePlayersPE
 - [KelbyOne] Add extractor by Ashish0804
 - [LnkIE] Add extractor by Ashish0804
 - [MainStreaming] Add extractor by coletdjnz
 - [megatvcom] Add extractors by zmousm
 - [Newsy] Add extractor by Ashish0804
 - [noodlemagazine] Add extractor by trassshhub
 - [PokerGo] Add extractors by Ashish0804
 - [Pornez] Add extractor by mozlima
 - [PRX] Add Extractors by coletdjnz
 - [RTNews] Add extractor by Ashish0804
 - [Rule34video] Add extractor by trassshhub
 - [tvopengr] Add extractors by zmousm
 - [Vimm] Add extractor by alerikaisattera
 - [glomex] Add extractors by zmousm
 - [instagram] Add story/highlight extractor by u-spec-png
 - [openrec] Add movie extractor by Lesmiscore
 - [rai] Add Raiplaysound extractors by nixxo, pukkandan
 - [aparat] Fix extractor
 - [ard] Extract subtitles by fstirlitz
 - [BiliIntl] Add login by MinePlayersPE
 - [CeskaTelevize] Use 
httpfor manifests - [CTVNewsIE] Add fallback for video search by Ashish0804
 - [dplay] Migrate DiscoveryPlusItaly to DiscoveryPlus by timendum
 - [dplay] Re-structure DiscoveryPlus extractors
 - [Dropbox] Support password protected files and more formats by zenerdi0de
 - [facebook] Fix extraction from groups
 - [facebook] Improve title and uploader extraction
 - [facebook] Parse dash manifests
 - [fox] Extract m3u8 from preview by ischmidt20
 - [funk] Support origin URLs
 - [gfycat] Fix 
uploader - [gfycat] Support embeds by coletdjnz
 - [hotstar] Add extractor args to ignore tags by Ashish0804
 - [hrfernsehen] Fix ardloader extraction by CreaValix
 - [instagram] Fix username extraction for stories and highlights by nyuszika7h
 - [kakao] Detect geo-restriction
 - [line] Remove 
tv.line.meby sian1468 - [mixch] Add 
MixchArchiveIEby Lesmiscore - [mixcloud] Detect restrictions by llacb47
 - [NBCSports] Fix extraction of platform URLs by ischmidt20
 - [Nexx] Extract more metadata by MinePlayersPE
 - [Nexx] Support 3q CDN by MinePlayersPE
 - [pbs] de-prioritize AD formats
 - [PornHub,YouTube] Refresh onion addresses by unit193
 - [RedBullTV] Parse subtitles from manifest by Ashish0804
 - [streamcz] Fix extractor by arkamar, pukkandan
 - [Ted] Rewrite extractor by pukkandan, trassshhub
 - [Theta] Fix valid URL by alerikaisattera
 - [ThisOldHouseIE] Add support for premium videos by Ashish0804
 - [TikTok] Fix extraction for sigi-based webpages, add API fallback by MinePlayersPE
 - [TikTok] Pass cookies to formats, and misc fixes by MinePlayersPE
 - [TikTok] Extract captions, user thumbnail by MinePlayersPE
 - [TikTok] Change app version by MinePlayersPE, llacb47
 - [TVer] Extract message for unaired live by Lesmiscore
 - [twitcasting] Refactor extractor by Lesmiscore
 - [twitter] Fix video in quoted tweets
 - [veoh] Improve extractor by foghawk
 - [vk] Capture 
clipURLs - [vk] Fix VKUserVideosIE by Ashish0804
 - [vk] Improve 
_VALID_URLby k3ns1n - [VrtNU] Handle empty title by pgaig
 - [XVideos] Check HLS formats by MinePlayersPE
 - [yahoo:gyao] Improved playlist handling by hyano
 - [youtube:tab] Extract more playlist metadata by coletdjnz, pukkandan
 - [youtube:tab] Raise error on tab redirect by krichbanana, coletdjnz
 - [youtube] Update Innertube clients by coletdjnz
 - [youtube] Detect live-stream embeds
 - [youtube] Do not return 
upload_datefor playlists - [youtube] Extract channel subscriber count by coletdjnz
 - [youtube] Make invalid storyboard URL non-fatal
 - [youtube] Enforce UTC, update innertube clients and tests by coletdjnz
 - [zdf] Add chapter extraction by iw0nderhow
 - [zee5] Add geo-bypass
 
2021.12.27
- Avoid recursion error when re-extracting info
 - [ffmpeg] Fix position of 
--ppa - [aria2c] Don't show progress when 
--no-progress - [cookies] Support other keyrings by mbway
 - [EmbedThumbnail] Prefer AtomicParsley over ffmpeg if available
 - [generic] Fix HTTP KVS Player by git-anony-mouse
 - [ThumbnailsConvertor] Fix for when there are no thumbnails
 - [docs] Add examples for using 
TYPES:in-P/-o - [PixivSketch] Add extractors by nao20010128nao
 - [tiktok] Add music, sticker and tag IEs by MinePlayersPE
 - [BiliIntl] Fix extractor by MinePlayersPE
 - [CBC] Fix URL regex
 - [tiktok] Fix 
extractor_keyused in archive - [youtube] End 
live-from-startproperly when stream ends with 403 - [Zee5] Fix VALID_URL for tv-shows by Ashish0804
 
2021.12.25
- [dash,youtube] Download live from start to end by nao20010128nao, pukkandan
- Add option 
--live-from-startto enable downloading live videos from start - Add key 
is_from_startin formats to identify formats (of live videos) that downloads from start - [dash] Create protocol 
http_dash_segments_generatorthat allows a function to be passed instead of fragments - [fragment] Allow multiple live dash formats to download simultaneously
 - [youtube] Implement fragment re-fetching for the live dash formats
 - [youtube] Re-extract dash manifest every 5 hours (manifest expires in 6hrs)
 - [postprocessor/ffmpeg] Add 
FFmpegFixupDuplicateMoovPPto fixup duplicated moov atoms - Known issues:
- Ctrl+C doesn't work on Windows when downloading multiple formats
 - If video becomes private, download hangs
 
 
 - Add option 
 - [SponsorBlock] Add 
FillerandHighlightcategories by nihil-admirari, pukkandan- Change 
--sponsorblock-cut allto--sponsorblock-cut defaultif you do not want filler sections to be removed 
 - Change 
 - Add field 
webpage_url_domain - Add interactive format selection with 
-f - - Add option 
--file-access-retriesby ehoogeveen-medweb - [outtmpl] Add alternate forms 
S,Dand improveiddetection - [outtmpl] Add operator 
&for replacement text by PilzAdam - [EmbedSubtitle] Disable duration check temporarily
 - [extractor] Add 
_search_nuxt_databy nao20010128nao - [extractor] Ignore errors in comment extraction when 
-iis given - [extractor] Standardize 
_live_title - [FormatSort] Prevent incorrect deprecation warning
 - [generic] Extract m3u8 formats from JSON-LD
 - [postprocessor/ffmpeg] Always add 
faststart - [utils] Fix parsing 
YYYYMMDDdates in Nov/Dec by wlritchi - [utils] Improve 
parse_count - [utils] Update 
std_headersby kikuyan, fstirlitz - [lazy_extractors] Fix for search IEs
 - [extractor] Support default implicit graph in JSON-LD by zmousm
 - Allow 
--no-write-thumbnailto override--write-all-thumbnail - Fix 
--throttled-rate - Fix control characters being printed to 
--console-title - Fix PostProcessor hooks not registered for some PPs
 - Pre-process when using 
--flat-playlist - Remove known invalid thumbnails from 
info_dict - Add warning when using 
-f best - Use 
parse_durationfor--wait-for-videoand some minor fix - [test/download] Add more fields
 - [test/download] Ignore field 
webpage_url_domainby std-move - [compat] Suppress errors in enabling VT mode
 - [docs] Improve manpage format by iw0nderhow, pukkandan
 - [docs,cleanup] Minor fixes and cleanup
 - [cleanup] Fix some typos by unit193
 - [ABC:iview] Add show extractor by pabs3
 - [dropout] Add extractor by TwoThousandHedgehogs, pukkandan
 - [GameJolt] Add extractors by MinePlayersPE
 - [gofile] Add extractor by Jertzukka, Ashish0804
 - [hse] Add extractors by cypheron, pukkandan
 - [NateTV] Add NateIE and NateProgramIE by Ashish0804, Hyeeji
 - [OpenCast] Add extractors by bwildenhain, C0D3D3V
 - [rtve] Add 
RTVEAudioIEby kebianizao - [Rutube] Add RutubeChannelIE by Ashish0804
 - [skeb] Add extractor by nao20010128nao
 - [soundcloud] Add related tracks extractor by Lapin0t
 - [toggo] Add extractor by nyuszika7h
 - [TrueID] Add extractor by MinePlayersPE
 - [audiomack] Update album and song VALID_URL by abdullah-if, dirkf
 - [CBC Gem] Extract 1080p formats by DavidSkrundz
 - [ceskatelevize] Fetch iframe from nextJS data by mkubecek
 - [crackle] Look for non-DRM formats by raleeper
 - [dplay] Temporary fix for 
discoveryplus.com/it - [DiscoveryPlusShowBaseIE] yield actual video id by Ashish0804
 - [Facebook] Handle redirect URLs
 - [fujitv] Extract 1080p from 
tv_androidm3u8 by YuenSzeHong - [gronkh] Support new URL pattern by Sematre
 - [instagram] Expand valid URL by u-spec-png
 - [Instagram] Try bypassing login wall with embed page by MinePlayersPE
 - [Jamendo] Fix use of 
_VALID_URL_REby jaller94 - [LBRY] Support livestreams by Ashish0804, pukkandan
 - [NJPWWorld] Extract formats from m3u8 by aarubui
 - [NovaEmbed] update player regex by std-move
 - [npr] Make SMIL extraction non-fatal by r5d
 - [ntvcojp] Extract NUXT data by nao20010128nao
 - [ok.ru] add mobile fallback by nao20010128nao
 - [olympics] Add uploader and cleanup by u-spec-png
 - [ondemandkorea] Update 
jw_configregex by julien-hadleyjack - [PlutoTV] Expand 
_VALID_URL - [RaiNews] Fix extractor by nixxo
 - [RCTIPlusSeries] Lazy extraction and video type selection by MinePlayersPE
 - [redtube] Handle formats delivered inside a JSON by dirkf, nixxo
 - [SonyLiv] Add OTP login support by Ashish0804
 - [Steam] Fix extractor by u-spec-png
 - [TikTok] Pass cookies to mobile API by MinePlayersPE
 - [trovo] Fix inheritance of 
TrovoChannelBaseIE - [TVer] Extract better thumbnails by YuenSzeHong
 - [vimeo] Extract chapters
 - [web.archive:youtube] Improve metadata extraction by coletdjnz
 - [youtube:comments] Add more options for limiting number of comments extracted by coletdjnz
 - [youtube:tab] Extract more metadata from feeds/channels/playlists by coletdjnz
 - [youtube:tab] Extract video thumbnails from playlist by coletdjnz, pukkandan
 - [youtube:tab] Ignore query when redirecting channel to playlist and cleanup of related code
 - [youtube] Fix 
ytsearchdate - [zdf] Support videos with different ptmd location by iw0nderhow
 - [zee5] Support /episodes in URL
 
2021.12.01
- Add option 
--wait-for-videoto wait for scheduled streams - Add option 
--break-per-inputto apply --break-on... to each input URL - Add option 
--embed-info-jsonto embed info.json in mkv - Add compat-option 
embed-metadata - Allow using a custom format selector through API
 - [AES] Add ECB mode by nao20010128nao
 - [build] Fix MacOS Build
 - [build] Save Git HEAD at release alongside version info
 - [build] Use 
workflow_dispatchfor release - [downloader/ffmpeg] Fix for direct videos inside mpd manifests
 - [downloader] Add colors to download progress
 - [EmbedSubtitles] Slightly relax duration check and related cleanup
 - [ExtractAudio] Fix conversion to 
wavandvorbis - [ExtractAudio] Support 
alac - [extractor] Extract 
average_ratingfrom JSON-LD - [FixupM3u8] Fixup MPEG-TS in MP4 container
 - [generic] Support mpd manifests without extension by shirt
 - [hls] Better FairPlay DRM detection by nyuszika7h
 - [jsinterp] Fix splice to handle float (for youtube js player f1ca6900)
 - [utils] Allow alignment in 
render_tableand add tests - [utils] Fix 
PagedList - [utils] Fix error when copying 
LazyList - Clarify video/audio-only formats in -F
 - Ensure directory exists when checking formats
 - Ensure path for link files exists by Zirro
 - Ensure same config file is not loaded multiple times
 - Fix 
postprocessor_hooks - Fix 
--break-on-archivewhen pre-checking - Fix 
--check-formatsformhtml - Fix 
--load-info-jsonof playlists with failed entries - Fix 
--trim-filenamewhen filename has. - Fix bug in parsing 
--add-header - Fix error in 
report_unplayable_conflictby shirt - Fix writing playlist infojson with 
--no-clean-infojson - Validate --get-bypass-country
 - [blogger] Add extractor by pabs3
 - [breitbart] Add extractor by Grabien
 - [CableAV] Add extractor by j54vc1bk
 - [CanalAlpha] Add extractor by Ashish0804
 - [CozyTV] Add extractor by Ashish0804
 - [CPTwentyFour] Add extractor by Ashish0804
 - [DiscoveryPlus] Add 
DiscoveryPlusItalyShowIEby Ashish0804 - [ESPNCricInfo] Add extractor by Ashish0804
 - [LinkedIn] Add extractor by u-spec-png
 - [mixch] Add extractor by nao20010128nao
 - [nebula] Add 
NebulaCollectionIEand rewrite extractor by hheimbuerger - [OneFootball] Add extractor by Ashish0804
 - [peer.tv] Add extractor by u-spec-png
 - [radiozet] Add extractor by 0xA7404A (Aurora)
 - [redgifs] Add extractor by chio0hai
 - [RedGifs] Add Search and User extractors by Deer-Spangle
 - [rtrfm] Add extractor by pabs3
 - [Streamff] Add extractor by cntrl-s
 - [Stripchat] Add extractor by zulaport
 - [Aljazeera] Fix extractor by u-spec-png
 - [AmazonStoreIE] Fix regex to not match vdp urls by Ashish0804
 - [ARDBetaMediathek] Handle new URLs
 - [bbc] Get all available formats by nyuszika7h
 - [Bilibili] Fix title extraction by u-spec-png
 - [CBC Gem] Fix for shows that don't have all seasons by makeworld-the-better-one
 - [curiositystream] Add more metadata
 - [CuriosityStream] Fix series
 - [DiscoveryPlus] Rewrite extractors by Ashish0804, pukkandan
 - [HotStar] Set language field from tags by Ashish0804
 - [instagram, cleanup] Refactor extractors
 - [Instagram] Display more login errors by MinePlayersPE
 - [itv] Fix extractor by staubichsauger, pukkandan
 - [mediaklikk] Expand valid URL
 - [MTV] Improve mgid extraction by Sipherdrakon, kikuyan
 - [nexx] Better error message for unsupported format
 - [NovaEmbed] Fix extractor by pukkandan, std-move
 - [PatreonUser] Do not capture RSS URLs
 - [Reddit] Add support for 1080p videos by xenova
 - [RoosterTeethSeries] Fix for multiple pages by MinePlayersPE
 - [sbs] Fix for movies and livestreams
 - [Senate.gov] Add SenateGovIE and fix SenateISVPIE by Grabien, pukkandan
 - [soundcloud:search] Fix pagination
 - [tiktok:user] Set 
webpage_urlcorrectly - [Tokentube] Fix description by u-spec-png
 - [trovo] Fix extractor by nyuszika7h
 - [tv2] Expand valid URL
 - [Tvplayhome] Fix extractor by pukkandan, 18928172992817182
 - [Twitch:vod] Add chapters by mpeter50
 - [twitch:vod] Extract live status by DEvmIb
 - [VidLii] Add 720p support by mrpapersonic
 - [vimeo] Add fallback for config URL
 - [vimeo] Sort http formats higher
 - [WDR] Expand valid URL
 - [willow] Add extractor by aarubui
 - [xvideos] Detect embed URLs by 4a1e2y5
 - [xvideos] Fix extractor by Yakabuff
 - [youtube, cleanup] Reorganize Tab and Search extractor inheritances
 - [youtube:search_url] Add playlist/channel support
 - [youtube] Add 
defaultplayer client by coletdjnz - [youtube] Add storyboard formats
 - [youtube] Decrypt n-sig for URLs with 
ratebypass - [youtube] Minor improvement to format sorting
 - [cleanup] Add deprecation warnings
 - [cleanup] Refactor 
JSInterpreter._seperate - [Cleanup] Remove some unnecessary groups in regexes by Ashish0804
 - [cleanup] Misc cleanup
 
2021.11.10.1
- Temporarily disable MacOS Build
 
2021.11.10
- [youtube] Fix throttling by decrypting n-sig
 - Merging extractors from haruhi-dl by selfisekai
- [extractor] Add 
_search_nextjs_data - [tvp] Fix extractors
 - [tvp] Add TVPStreamIE
 - [wppilot] Add extractors
 - [polskieradio] Add extractors
 - [radiokapital] Add extractors
 - [polsatgo] Add extractor by selfisekai, sdomi
 
 - [extractor] Add 
 - Separate 
--check-all-formatsfrom--check-formats - Approximate filesize from bitrate
 - Don't create console in 
windows_enable_vt_mode - Fix bug in 
--load-infojsonof playlists - [minicurses] Add colors to 
-Fand standardize color-printing code - [outtmpl] Add type 
linkfor internet shortcut files - [outtmpl] Add alternate forms for 
qandj - [outtmpl] Do not traverse 
None - [fragment] Fix progress display in fragmented downloads
 - [downloader/ffmpeg] Fix vtt download with ffmpeg
 - [ffmpeg] Detect presence of setts and libavformat version
 - [ExtractAudio] Rescale 
--audio-qualitycorrectly by CrypticSignal, pukkandan - [ExtractAudio] Use 
libfdk_aacif available by CrypticSignal - [FormatSort] 
eac3is better thanac3 - [FormatSort] Fix some fields' defaults
 - [generic] Detect more json_ld
 - [generic] parse jwplayer with only the json URL
 - [extractor] Add keyword automatically to SearchIE descriptions
 - [extractor] Fix some errors being converted to 
ExtractorError - [utils] Add 
join_nonempty - [utils] Add 
jwt_decode_hs256by Ashish0804 - [utils] Create 
DownloadCancelledexception - [utils] Parse 
vp09as vp9 - [utils] Sanitize URL when determining protocol
 - [test/download] Fallback test to 
bv - [docs] Minor documentation improvements
 - [cleanup] Improvements to error and debug messages
 - [cleanup] Minor fixes and cleanup
 - [3speak] Add extractors by Ashish0804
 - [AmazonStore] Add extractor by Ashish0804
 - [Gab] Add extractor by u-spec-png
 - [mediaset] Add playlist support by nixxo
 - [MLSScoccer] Add extractor by Ashish0804
 - [N1] Add support for nova.rs by u-spec-png
 - [PlanetMarathi] Add extractor by Ashish0804
 - [RaiplayRadio] Add extractors by frafra
 - [roosterteeth] Add series extractor
 - [sky] Add 
SkyNewsStoryIEby ajj8 - [youtube] Fix sorting for some videos
 - [youtube] Populate 
thumbnailwith the best "known" thumbnail - [youtube] Refactor itag processing
 - [youtube] Remove unnecessary no-playlist warning
 - [youtube:tab] Add Invidious list for playlists/channels by rhendric
 - [Bilibili:comments] Fix infinite loop by u-spec-png
 - [ceskatelevize] Fix extractor by flashdagger
 - [Coub] Fix media format identification by wlritchi
 - [crunchyroll] Add extractor-args 
languageandhardsub - [DiscoveryPlus] Allow language codes in URL
 - [imdb] Fix thumbnail by ozburo
 - [instagram] Add IOS URL support by u-spec-png
 - [instagram] Improve login code by u-spec-png
 - [Instagram] Improve metadata extraction by u-spec-png
 - [iPrima] Fix extractor by stanoarn
 - [itv] Add support for ITV News by ajj8
 - [la7] Fix extractor by nixxo
 - [linkedin] Don't login multiple times
 - [mtv] Fix some videos by Sipherdrakon
 - [Newgrounds] Fix description by u-spec-png
 - [Nrk] Minor fixes by fractalf
 - [Olympics] Fix extractor by u-spec-png
 - [piksel] Fix sorting
 - [twitter] Do not sort by codec
 - [viewlift] Add cookie-based login and series support by Ashish0804, pukkandan
 - [vimeo] Detect source extension and misc cleanup by flashdagger
 - [vimeo] Fix ondemand videos and direct URLs with hash
 - [vk] Fix login and add subtitles by kaz-us
 - [VLive] Add upload_date and thumbnail by Ashish0804
 - [VRT] Fix login by pgaig
 - [Vupload] Fix extractor by u-spec-png
 - [wakanim] Add support for MPD manifests by nyuszika7h
 - [wakanim] Detect geo-restriction by nyuszika7h
 - [ZenYandex] Fix extractor by u-spec-png
 
2021.10.22
- [build] Improvements
- Build standalone MacOS packages by smplayer-dev
 - Release windows exe built with 
py2exe - Enable lazy-extractors in releases
- Set env var 
YTDLP_NO_LAZY_EXTRACTORSto forcefully disable this (experimental) 
 - Set env var 
 - Clean up error reporting in update
 - Refactor 
pyinst.py, misc cleanup and improve docs 
 - [docs] Migrate issues to use forms by Ashish0804
 - [downloader] Fix slow progress hooks
- This was causing HLS/DASH downloads to be extremely slow in some situations
 
 - [downloader/ffmpeg] Improve simultaneous download and merge
 - [EmbedMetadata] Allow overwriting all default metadata with 
meta_defaultkey - [ModifyChapters] Add ability for 
--remove-chaptersto remove sections by timestamp - [utils] Allow duration strings in 
--match-filter - Add HDR information to formats
 - Add negative option 
--no-batch-fileby Zirro - Calculate more fields for merged formats
 - Do not verify thumbnail URLs unless 
--check-formatsis specified - Don't create console for subprocesses on Windows
 - Fix 
--restrict-filenamewhen used with default template - Fix 
check_formatsoutput being written to stdout when-qv - Fix bug in storyboards
 - Fix conflict b/w id and ext in format selection
 - Fix verbose head not showing custom configs
 - Load archive only after printing verbose head
 - Make 
duration_stringandresolutionavailable in --match-filter - Re-implement deprecated option 
--id - Reduce default 
--socket-timeout - Write verbose header to logger
 - [outtmpl] Fix bug in expanding environment variables
 - [cookies] Local State should be opened as utf-8
 - [extractor,utils] Detect more codecs/mimetypes
 - [extractor] Detect 
EXT-X-KEYApple FairPlay - [utils] Use 
importlibto load plugins by sulyi - [http] Retry on socket timeout and show the last encountered error
 - [fragment] Print error message when skipping fragment
 - [aria2c] Fix 
--skip-unavailable-fragment - [SponsorBlock] Obey 
extractor-retriesandsleep-requests - [Merger] Do not add 
aac_adtstoascto non-hls audio - [ModifyChapters] Do not mutate original chapters by nihil-admirari
 - [devscripts/run_tests] Use markers to filter tests by sulyi
 - [7plus] Add cookie based authentication by nyuszika7h
 - [AdobePass] Fix RCN MSO by jfogelman
 - [CBC] Fix Gem livestream by makeworld-the-better-one
 - [CBC] Support CBC Gem member content by makeworld-the-better-one
 - [crunchyroll] Add season to flat-playlist
 - [crunchyroll] Add support for 
beta.crunchyrollURLs and fix series URLs with language code - [EUScreen] Add Extractor by Ashish0804
 - [Gronkh] Add extractor by Ashish0804
 - [hidive] Fix typo
 - [Hotstar] Mention Dynamic Range in 
format_idby Ashish0804 - [Hotstar] Raise appropriate error for DRM
 - [instagram] Add login by u-spec-png
 - [instagram] Show appropriate error when login is needed
 - [microsoftstream] Add extractor by damianoamatruda, nixklai
 - [on24] Add extractor by damianoamatruda
 - [patreon] Fix vimeo player regex by zenerdi0de
 - [SkyNewsAU] Add extractor by Ashish0804
 - [tagesschau] Fix extractor by u-spec-png
 - [tbs] Add tbs live streams by llacb47
 - [tiktok] Fix typo and update tests
 - [trovo] Support channel clips and VODs by Ashish0804
 - [Viafree] Add support for Finland by 18928172992817182
 - [vimeo] Fix embedded 
player.vimeo - [vlive:channel] Fix extraction by kikuyan, pukkandan
 - [youtube] Add auto-translated subtitles
 - [youtube] Expose different formats with same itag
 - [youtube:comments] Fix for new layout by coletdjnz
 - [cleanup] Cleanup bilibili code by pukkandan, u-spec-png
 - [cleanup] Remove broken youtube login code
 - [cleanup] Standardize timestamp formatting code
 - [cleanup] Generalize 
getcommentsimplementation for extractors - [cleanup] Simplify search extractors code
 - [cleanup] misc
 
2021.10.10
- [downloader/ffmpeg] Fix bug in initializing 
FFmpegPostProcessor - [minicurses] Fix when printing to file
 - [downloader] Fix throttledratelimit
 - [francetv] Fix extractor by fstirlitz, sarnoud
 - [NovaPlay] Add extractor by Bojidarist
 - [ffmpeg] Revert "Set max probesize" - No longer needed
 - [docs] Remove incorrect dependency on VC++10
 - [build] Allow to release without changelog
 
2021.10.09
- Improved progress reporting
- Separate 
--console-titleand--no-progress - Add option 
--progressto show progress-bar even in quiet mode - Fix and refactor 
minicursesand use it for all progress reporting - Standardize use of terminal sequences and enable color support for windows 10
 - Add option 
--progress-templateto customize progress-bar and console-title - Add postprocessor hooks and progress reporting
 
 - Separate 
 - [postprocessor] Add plugin support with option 
--use-postprocessor - [extractor] Extract storyboards from SMIL manifests by fstirlitz
 - [outtmpl] Alternate form of format type 
lfor\ndelimited list - [outtmpl] Format type 
Ufor unicode normalization - [outtmpl] Allow empty output template to skip a type of file
 - Merge webm formats into mkv if thumbnails are to be embedded
 - [adobepass] Add RCN as MSO by jfogelman
 - [ciscowebex] Add extractor by damianoamatruda
 - [Gettr] Add extractor by i6t
 - [GoPro] Add extractor by i6t
 - [N1] Add extractor by u-spec-png
 - [Theta] Add video extractor by alerikaisattera
 - [Veo] Add extractor by i6t
 - [Vupload] Add extractor by u-spec-png
 - [bbc] Extract better quality videos by ajj8
 - [Bilibili] Add subtitle converter by u-spec-png
 - [CBC] Cleanup tests by makeworld-the-better-one
 - [Douyin] Rewrite extractor by MinePlayersPE
 - [Funimation] Fix for /v/ urls by pukkandan, Jules-A
 - [Funimation] Sort formats according to the relevant extractor-args
 - [Hidive] Fix duplicate and incorrect formats
 - [HotStarSeries] Fix cookies by Ashish0804
 - [LinkedInLearning] Add subtitles by Ashish0804
 - [Mediaite] Relax valid url by coletdjnz
 - [Newgrounds] Add age_limit and fix duration by u-spec-png
 - [Newgrounds] Fix view count on songs by u-spec-png
 - [parliamentlive.tv] Fix extractor by u-spec-png
 - [PolskieRadio] Fix extractors by jakubadamw, u-spec-png
 - [reddit] Add embedded url by u-spec-png
 - [reddit] Fix 429 by generating a random 
reddit_sessionby AjaxGb - [Rumble] Add RumbleChannelIE by Ashish0804
 - [soundcloud:playlist] Detect last page correctly
 - [SovietsCloset] Add duration from m3u8 by ChillingPepper
 - [Streamable] Add codecs by u-spec-png
 - [vidme] Remove extractor by alerikaisattera
 - [youtube:tab] Fallback to API when webpage fails to download by coletdjnz
 - [youtube] Fix non-fatal errors in fetching player
 - Fix 
--flat-playlistwhen neither IE nor id is known - Fix 
-f mp4behaving differently from youtube-dl - Workaround for bug in 
ssl.SSLContext.load_default_certs - [aes] Improve performance slightly by sulyi
 - [cookies] Fix keyring fallback by mbway
 - [embedsubtitle] Fix error when duration is unknown
 - [ffmpeg] Fix error when subtitle file is missing
 - [ffmpeg] Set max probesize to workaround AAC HLS stream issues by shirt
 - [FixupM3u8] Remove redundant run if merged is needed
 - [hls] Fix decryption issues by shirt, pukkandan
 - [http] Respect user-provided chunk size over extractor's
 - [utils] Let traverse_obj accept functions as keys
 - [docs] Add note about our custom ffmpeg builds
 - [docs] Write embedding and contributing documentation by pukkandan, timethrow
 - [update] Check for new version even if not updateable
 - [build] Add more files to the tarball
 - [build] Allow building with py2exe (and misc fixes)
 - [build] Use pycryptodomex by shirt, pukkandan
 - [cleanup] Some minor refactoring, improve docs and misc cleanup
 
2021.09.25
- Add new option 
--netrc-location - [outtmpl] Allow alternate fields using 
, - [outtmpl] Add format type 
Bto treat the value as bytes, e.g. to limit the filename to a certain number of bytes - Separate the options 
--ignore-errorsand--no-abort-on-error - Basic framework for simultaneous download of multiple formats by nao20010128nao
 - [17live] Add 17.live extractor by nao20010128nao
 - [bilibili] Add BiliIntlIE and BiliIntlSeriesIE by Ashish0804
 - [CAM4] Add extractor by alerikaisattera
 - [Chingari] Add extractors by Ashish0804
 - [CGTN] Add extractor by chao813
 - [damtomo] Add extractor by nao20010128nao
 - [gotostage] Add extractor by poschi3
 - [Koo] Add extractor by Ashish0804
 - [Mediaite] Add Extractor by Ashish0804
 - [Mediaklikk] Add Extractor by tmarki, mrx23dot, coletdjnz
 - [MuseScore] Add Extractor by Ashish0804
 - [Newgrounds] Add NewgroundsUserIE and improve extractor by u-spec-png
 - [nzherald] Add NZHeraldIE by coletdjnz
 - [Olympics] Add replay extractor by Ashish0804
 - [Peertube] Add channel and playlist extractors by u-spec-png
 - [radlive] Add extractor by nyuszika7h
 - [SovietsCloset] Add extractor by ChillingPepper
 - [Streamanity] Add Extractor by alerikaisattera
 - [Theta] Add extractor by alerikaisattera
 - [Yandex] Add ZenYandexIE and ZenYandexChannelIE by Ashish0804
 - [9Now] handle episodes of series by dalanmiller
 - [AnimalPlanet] Fix extractor by Sipherdrakon
 - [Arte] Improve description extraction by renalid
 - [atv.at] Use jwt for API by NeroBurner
 - [brightcove] Extract subtitles from manifests
 - [CBC] Fix CBC Gem extractors by makeworld-the-better-one
 - [cbs] Report appropriate error for DRM
 - [comedycentral] Support 
collection-playlistby nixxo - [DIYNetwork] Support new format by Sipherdrakon
 - [downloader/niconico] Pass custom headers by nao20010128nao
 - [dw] Fix extractor
 - [Fancode] Fix live streams by zenerdi0de
 - [funimation] Fix for locations outside US by Jules-A, pukkandan
 - [globo] Fix GloboIE by Ashish0804
 - [HiDive] Fix extractor by Ashish0804
 - [Hotstar] Add referer for subs by Ashish0804
 - [itv] Fix extractor, add subtitles and thumbnails by coletdjnz, sleaux-meaux, Vangelis66
 - [lbry] Show error message from API response
 - [Mxplayer] Use mobile API by Ashish0804
 - [NDR] Rewrite NDRIE by Ashish0804
 - [Nuvid] Fix extractor by u-spec-png
 - [Oreilly] Handle new web url by MKSherbini
 - [pbs] Fix subtitle extraction by coletdjnz, gesa, raphaeldore
 - [peertube] Update instances by u-spec-png
 - [plutotv] Fix extractor for URLs with 
/en - [reddit] Workaround for 429 by redirecting to old.reddit.com
 - [redtube] Fix exts
 - [soundcloud] Make playlist extraction lazy
 - [soundcloud] Retry playlist pages on 
502error and update_CLIENT_ID - [southpark] Fix SouthParkDE by coletdjnz
 - [SovietsCloset] Fix playlists for games with only named categories by ConquerorDopy
 - [SpankBang] Fix uploader by f4pp3rk1ng, coletdjnz
 - [tiktok] Use API to fetch higher quality video by MinePlayersPE, llacb47
 - [TikTokUser] Fix extractor using mobile API by MinePlayersPE, llacb47
 - [videa] Fix some extraction errors by nyuszika7h
 - [VrtNU] Handle login errors by llacb47
 - [vrv] Don't raise error when thumbnails are missing
 - [youtube] Cleanup authentication code by coletdjnz
 - [youtube] Fix 
--mark-watchedwith--cookies-from-browser - [youtube] Improvements to JS player extraction and add extractor-args to skip it by coletdjnz
 - [youtube] Retry on 'Unknown Error' by coletdjnz
 - [youtube] Return full URL instead of just ID
 - [youtube] Warn when trying to download clips
 - [zdf] Improve format sorting
 - [zype] Extract subtitles from the m3u8 manifest by fstirlitz
 - Allow 
--force-write-archiveto work with--flat-playlist - Download subtitles in order of 
--sub-langs - Allow 
0in--playlist-items - Handle more playlist errors with 
-i - Fix 
--no-get-comments - Fix 
extra_infobeing reused across runs - Fix compat options 
no-direct-mergeandplaylist-index - Dump files should obey 
--trim-filenameby sulyi - [aes] Add 
aes_gcm_decrypt_and_verifyby sulyi, pukkandan - [aria2c] Fix IV for some AES-128 streams by shirt
 - [compat] Don't ignore 
HOME(if set) on windows - [cookies] Make browser names case insensitive
 - [cookies] Print warning for cookie decoding error only once
 - [extractor] Fix root-relative URLs in MPD by DigitalDJ
 - [ffmpeg] Add 
aac_adtstoascwhen merging if needed - [fragment,aria2c] Generalize and refactor some code
 - [fragment] Avoid repeated request for AES key
 - [fragment] Fix range header when using 
-Nand media sequence by shirt - [hls,aes] Fallback to native implementation for AES-CBC and detect 
Cryptodomein addition toCrypto - [hls] Byterange + AES128 is supported by native downloader
 - [ModifyChapters] Improve sponsor chapter merge algorithm by nihil-admirari
 - [ModifyChapters] Minor fixes
 - [WebVTT] Adjust parser to accommodate PBS subtitles
 - [utils] Improve 
extract_timezoneby dirkf - [options] Fix 
--no-configand refactor reading of config files - [options] Strip spaces and ignore empty entries in list-like switches
 - [test/cookies] Improve logging
 - [build] Automate more of the release process by animelover1984, pukkandan
 - [build] Fix sha256 by nihil-admirari
 - [build] Bring back brew taps by nao20010128nao
 - [build] Provide 
--onedirzip for windows - [cleanup,docs] Add deprecation warning in docs for some counter intuitive behaviour
 - [cleanup] Fix line endings for 
nebula.pyby glenn-slayden - [cleanup] Improve 
make clean-testby sulyi - [cleanup] Misc
 
2021.09.02
- Native SponsorBlock implementation by nihil-admirari, pukkandan
--sponsorblock-remove CATSremoves specified chapters from file--sponsorblock-mark CATSmarks the specified sponsor sections as chapters--sponsorblock-chapter-title TMPLto specify sponsor chapter template--sponsorblock-api URLto use a different API- No re-encoding is done unless 
--force-keyframes-at-cutsis used - The fetched sponsor sections are written to the infojson
 - Deprecates: 
--sponskrub,--no-sponskrub,--sponskrub-cut,--no-sponskrub-cut,--sponskrub-force,--no-sponskrub-force,--sponskrub-location,--sponskrub-args 
 - Split 
--embed-chaptersfrom--embed-metadata(it still implies the former by default) - Add option 
--remove-chaptersto remove arbitrary chapters by nihil-admirari, pukkandan - Add option 
--force-keyframes-at-cutsfor more accurate cuts when removing and splitting chapters by nihil-admirari - Let 
--match-filterreject entries early- Makes redundant: 
--match-title,--reject-title,--min-views,--max-views 
 - Makes redundant: 
 - [lazy_extractor] Improvements (It now passes all tests)
- Bugfix for when plugin directory doesn't exist by kidonng
 - Create instance only after pre-checking archive
 - Import actual class if an attribute is accessed
 - Fix 
suitableand add flake8 test 
 - [downloader/ffmpeg] Experimental support for DASH manifests (including live)
- Your ffmpeg must have this patch applied for YouTube DASH to work
 
 - [downloader/ffmpeg] Allow passing custom arguments before 
-i - [BannedVideo] Add extractor by smege1001, blackjack4494, pukkandan
 - [bilibili] Add category extractor by animelover1984
 - [Epicon] Add extractors by Ashish0804
 - [filmmodu] Add extractor by mzbaulhaque
 - [GabTV] Add extractor by Ashish0804
 - [Hungama] Fix 
HungamaSongIEand addHungamaAlbumPlaylistIEby Ashish0804 - [ManotoTV] Add new extractors by tandy1000
 - [Niconico] Add Search extractors by animelover1984, pukkandan
 - [Patreon] Add 
PatreonUserIEby zenerdi0de - [peloton] Add extractor by IONECarter, capntrips, pukkandan
 - [ProjectVeritas] Add extractor by Ashish0804
 - [radiko] Add extractors by nao20010128nao
 - [StarTV] Add extractor for 
startv.com.trby mrfade, coletdjnz - [tiktok] Add 
TikTokUserIEby Ashish0804, pukkandan - [Tokentube] Add extractor by u-spec-png
 - [TV2Hu] Fix 
TV2HuIEand addTV2HuSeriesIEby Ashish0804 - [voicy] Add extractor by nao20010128nao
 - [adobepass] Fix Verizon SAML login by nyuszika7h, ParadoxGBB
 - [afreecatv] Fix adult VODs by wlritchi
 - [afreecatv] Tolerate failure to parse date string by wlritchi
 - [aljazeera] Fix extractor by MinePlayersPE
 - [ATV.at] Fix extractor for ATV.at by NeroBurner, coletdjnz
 - [bitchute] Fix test by mahanstreamer
 - [camtube] Remove obsolete extractor by alerikaisattera
 - [CDA] Add more formats by u-spec-png
 - [eroprofile] Fix page skipping in albums by jhwgh1968
 - [facebook] Fix format sorting
 - [facebook] Fix metadata extraction by kikuyan
 - [facebook] Update onion URL by Derkades
 - [HearThisAtIE] Fix extractor by Ashish0804
 - [instagram] Add referrer to prevent throttling by u-spec-png, kikuyan
 - [iwara.tv] Extract more metadata by BunnyHelp
 - [iwara] Add thumbnail by i6t
 - [kakao] Fix extractor
 - [mediaset] Fix extraction for some videos by nyuszika7h
 - [Motherless] Fix extractor by coletdjnz
 - [Nova] fix extractor by std-move
 - [ParamountPlus] Fix geo verification by shirt
 - [peertube] handle new video URL format by Chocobozzz
 - [pornhub] Separate and fix playlist extractor by mzbaulhaque
 - [reddit] Fix for quarantined subreddits by ouwou
 - [ShemarooMe] Fix extractor by Ashish0804
 - [soundcloud] Refetch 
client_idon 403 - [tiktok] Fix metadata extraction
 - [TV2] Fix extractor by Ashish0804
 - [tv5mondeplus] Fix extractor by korli
 - [VH1,TVLand] Fix extractors by Sipherdrakon
 - [Viafree] Fix extractor and extract subtitles by coletdjnz
 - [XHamster] Extract 
uploader_idby octotherp - [youtube] Add 
shortsto_VALID_URL - [youtube] Add av01 itags to known formats list by blackjack4494
 - [youtube] Extract error messages from HTTPError response by coletdjnz
 - [youtube] Fix subtitle names
 - [youtube] Prefer audio stream that YouTube considers default
 - [youtube] Remove annotations and deprecate 
--write-annotationsby coletdjnz - [Zee5] Fix extractor and add subtitles by Ashish0804
 - [aria2c] Obey 
--rate-limit - [EmbedSubtitle] Continue even if some files are missing
 - [extractor] Better error message for DRM
 - [extractor] Common function 
_match_valid_url - [extractor] Show video id in error messages if possible
 - [FormatSort] Remove priority of 
lang - [options] Add 
_set_from_options_callback - [SubtitleConvertor] Fix bug during subtitle conversion
 - [utils] Add 
parse_qs - [webvtt] Fix timestamp overflow adjustment by fstirlitz
 - Bugfix for 
--replace-in-metadata - Don't try to merge with final extension
 - Fix 
--force-overwriteswhen using-k - Fix 
--no-prefer-free-formatsby CeruleanSky - Fix 
-Ffor extractors that directly return url - Fix 
-Jwhen there are failed videos - Fix 
extra_infobeing reused across runs - Fix 
playlist_indexnot obeyingplaylist_startand add tests - Fix resuming of single formats when using 
--no-part - Revert erroneous use of the 
Content-Lengthheader by fstirlitz - Use 
os.replacewhere applicable by; paulwrubel - [build] Add homebrew taps 
yt-dlp/taps/yt-dlpby nao20010128nao - [build] Fix bug in making 
yt-dlp.tar.gz - [docs] Fix some typos by pukkandan, zootedb0t
 - [cleanup] Replace improper use of tab in trovo by glenn-slayden
 
2021.08.10
- Add option 
--replace-in-metadata - Add option 
--no-simulateto not simulate even when--printor--list...are used - Deprecates--print-json - Allow entire infodict to be printed using 
%()s- makes--dump-jsonredundant - Allow multiple 
--execand--exec-before-download - Add regex to 
--match-filter - Add all format filtering operators also to 
--match-filterby max-te - Add compat-option 
no-keep-subs - [adobepass] Add MSO Cablevision by Jessecar96
 - [BandCamp] Add BandcampMusicIE by Ashish0804
 - [blackboardcollaborate] Add new extractor by mzbaulhaque
 - [eroprofile] Add album downloader by jhwgh1968
 - [mirrativ] Add extractors by nao20010128nao
 - [openrec] Add extractors by nao20010128nao
 - [nbcolympics:stream] Fix extractor by nchilada, pukkandan
 - [nbcolympics] Update extractor for 2020 olympics by wesnm
 - [paramountplus] Separate extractor and fix some titles by shirt, pukkandan
 - [RCTIPlus] Support events and TV by MinePlayersPE
 - [Newgrounds] Improve extractor and fix playlist by u-spec-png
 - [aenetworks] Update 
_THEPLATFORM_KEYand_THEPLATFORM_SECRETby wesnm - [crunchyroll] Fix thumbnail by funniray
 - [HotStar] Use API for metadata and extract subtitles by Ashish0804
 - [instagram] Fix comments extraction by u-spec-png
 - [peertube] Fix videos without description by u-spec-png
 - [twitch:clips] Extract 
display_idby dirkf - [viki] Print error message from API request
 - [Vine] Remove invalid formats by u-spec-png
 - [VrtNU] Fix XSRF token by pgaig
 - [vrv] Fix thumbnail extraction by funniray
 - [youtube] Add extractor-arg 
include-live-dashto show live dash formats - [youtube] Improve signature function detection by PSlava
 - [youtube] Raise appropriate error when API pages can't be downloaded
 - Ensure 
_write_ytdl_filecloses file handle on error - Fix 
--compat-options filenameby stdedos - Fix issues with infodict sanitization
 - Fix resuming when using 
--no-part - Fix wrong extension for intermediate files
 - Handle 
BrokenPipeErrorby kikuyan - Show libraries present in verbose head
 - [extractor] Detect 
sttpas subtitles in MPD by fstirlitz - [extractor] Reset non-repeating warnings per video
 - [ffmpeg] Fix streaming 
mp4tostdout - [ffpmeg] Allow 
--ffmpeg-locationto be a file with different name - [utils] Fix 
InAdvancePagedList.__getitem__ - [utils] Fix 
traverse_objdepth whenis_user_input - [webvtt] Merge daisy-chained duplicate cues by fstirlitz
 - [build] Use custom build of 
pyinstallerby shirt - [tests:download] Add batch testing for extractors (
test_YourExtractor_all) - [docs] Document which fields 
--add-metadataadds to the file - [docs] Fix some mistakes and improve doc
 - [cleanup] Misc code cleanup
 
2021.08.02
- Add logo, banner and donate links
 - [outtmpl] Expand and escape environment variables
 - [outtmpl] Add format types 
j(json),l(comma delimited list),q(quoted for terminal) - [downloader] Allow streaming some unmerged formats to stdout using ffmpeg
 - [youtube] Age-gate bypass
- Add 
agegateclients by pukkandan, MinePlayersPE - Add 
thirdPartyto agegate clients to bypass more videos - Simplify client definitions, expose 
embeddedclients - Improve age-gate detection by coletdjnz
 - Fix default global API key by coletdjnz
 - Add 
creatorclients for age-gate bypass using unverified accounts by zerodytrash, coletdjnz, pukkandan 
 - Add 
 - [adobepass] Add MSO Sling TV by wesnm
 - [CBS] Add ParamountPlusSeriesIE by Ashish0804
 - [dplay] Add 
ScienceChannelIEby Sipherdrakon - [UtreonIE] Add extractor by Ashish0804
 - [youtube] Add 
mwebclient by coletdjnz - [youtube] Add 
player_client=all - [youtube] Force 
hl=enfor comments by coletdjnz - [youtube] Fix format sorting when using alternate clients
 - [youtube] Misc cleanup by pukkandan, coletdjnz
 - [youtube] Extract SAPISID only once
 - [CBS] Add fallback by llacb47, pukkandan
 - [Hotstar] Support cookies by Ashish0804
 - [HotStarSeriesIE] Fix regex by Ashish0804
 - [bilibili] Improve 
_VALID_URL - [mediaset] Fix extraction by nixxo
 - [Mxplayer] Add h265 formats by Ashish0804
 - [RCTIPlus] Remove PhantomJS dependency by MinePlayersPE
 - [tenplay] Add MA15+ age limit by pento
 - [vidio] Fix login error detection by MinePlayersPE
 - [vimeo] Better extraction of original file by Ashish0804
 - [generic] Support KVS player (replaces ThisVidIE) by rigstot
 - Add compat-option 
no-clean-infojson - Remove 
asrappearing twice in-F - Set 
home:as the default key for-P - [utils] Fix slicing of reversed 
LazyList - [FormatSort] Fix bug for audio with unknown codec
 - [test:download] Support testing with 
ignore_no_formats_error - [cleanup] Refactor some code
 
2021.07.24
- [youtube:tab] Extract video duration early
 - [downloader] Pass 
info_dicttoprogress_hooks - [youtube] Fix age-gated videos for API clients when cookies are supplied by coletdjnz
 - [youtube] Disable 
get_video_infoage-gate workaround - This endpoint seems to be completely dead - [youtube] Try all clients even if age-gated
 - [youtube] Fix subtitles only being extracted from the first client
 - [youtube] Simplify 
_get_text - [cookies] bugfix for microsoft edge on macOS
 - [cookies] Handle 
sqliteImportErrorgracefully by mbway - [cookies] Handle errors when importing 
keyring 
2021.07.21
- Add option 
--cookies-from-browserto load cookies from a browser by mbway- Usage: 
--cookies-from-browser BROWSER[:PROFILE_NAME_OR_PATH] - Also added 
--no-cookies-from-browser - To decrypt chromium cookies, 
keyringis needed for UNIX andpycryptodomefor Windows 
 - Usage: 
 - Add option 
--exec-before-download - Add field 
live_status - [FFmpegMetadata] Add language of each stream and some refactoring
 - [douyin] Add extractor by pukkandan, pyx
 - [pornflip] Add extractor by mzbaulhaque
 - [youtube] Extract data from multiple clients by pukkandan, coletdjnz
player_clientnow accepts multiple clients- Default 
player_client=android,web- This uses twice as many requests, but avoids throttling for most videos while also not losing any formats
 
 - Music clients can be specifically requested and is enabled by default if 
music.youtube.com - Added 
player_client=ios(Known issue: formats from ios are not sorted correctly) - Add age-gate bypass for android and ios clients
 
 - [youtube] Extract more thumbnails
- The thumbnail URLs are hard-coded and their actual existence is tested lazily
 - Added option 
--no-check-formatsto not test them 
 - [youtube] Misc fixes
- Improve extraction of livestream metadata by pukkandan, krichbanana
 - Hide live dash formats since they can't be downloaded anyway
 - Fix authentication when using multiple accounts by coletdjnz
 - Fix controversial videos when requested via API by coletdjnz
 - Fix session index extraction and headers for non-web player clients by coletdjnz
 - Make 
--extractor-retrieswork for more errors - Fix sorting of 3gp format
 - Sanity check 
chapters(and refactor related code) - Make 
parse_time_textand_extract_chaptersnon-fatal - Misc cleanup and bug fixes by coletdjnz
 
 - [youtube:tab] Fix channels tab
 - [youtube:tab] Extract playlist availability by coletdjnz
 - [youtube:comments] Move comment extraction to new API by coletdjnz
- Adds extractor-args 
comment_sort(top/new),max_comments,max_comment_depth 
 - Adds extractor-args 
 - [youtube:comments] Fix 
is_favorited, improvelike_countparsing by coletdjnz - [BravoTV] Improve metadata extraction by kevinoconnor7
 - [crunchyroll:playlist] Force http
 - [yahoo:gyao:player] Relax 
_VALID_URLby nao20010128nao - [nebula] Authentication via tokens from cookie jar by hheimbuerger, TpmKranz
 - [RTP] Fix extraction and add subtitles by fstirlitz
 - [viki] Rewrite extractors and add extractor-arg 
video_typestovikichannelby zackmark29, pukkandan - [vlive] Extract thumbnail directly in addition to the one from Naver
 - [generic] Extract previously missed subtitles by fstirlitz
 - [generic] Extract everything in the SMIL manifest and detect discarded subtitles by fstirlitz
 - [embedthumbnail] Fix 
_get_thumbnail_resolution - [metadatafromfield] Do not detect numbers as field names
 - Fix selectors 
all,mergealland add tests - Errors in playlist extraction should obey 
--ignore-errors - Fix bug where 
original_urlwas not propagated when_type=url - Revert "Merge webm formats into mkv if thumbnails are to be embedded (#173)"
- This was wrongly checking for 
write_thumbnail 
 - This was wrongly checking for 
 - Improve 
extractor_argsparsing - Rename 
NOTEin-FtoMORE INFOsince it's often confused to be the same asformat_note - Add 
only_onceparam forwrite_debugandreport_warning - [extractor] Allow extracting multiple groups in 
_search_regexby fstirlitz - [utils] Improve 
traverse_obj - [utils] Add 
variadic - [utils] Improve 
js_to_jsoncomment regex by fstirlitz - [webtt] Fix timestamps
 - [compat] Remove unnecessary code
 - [docs] fix default of multistreams
 
2021.07.07
- Merge youtube-dl: Upto commit/a803582
 - Add 
--extractor-argsto pass some extractor-specific arguments. See readme- Add extractor option 
skipforyoutube, e.g.--extractor-args youtube:skip=hls,dash - Deprecates 
--youtube-skip-dash-manifest,--youtube-skip-hls-manifest,--youtube-include-dash-manifest,--youtube-include-hls-manifest 
 - Add extractor option 
 - Allow 
--list...options to work with--print,--quietand other--list...options - [youtube] Use 
playerAPI for additional video extraction requests by coletdjnz- Fixes youtube premium music (format 141) extraction
 - Adds extractor option 
player_client=web/android--extractor-args youtube:player_client=androidworks around the throttling for the time-being
 - Adds extractor option 
player_skip=config - Adds age-gate fallback using embedded client
 
 - [youtube] Choose correct Live chat API for upcoming streams by krichbanana
 - [youtube] Fix subtitle names for age-gated videos
 - [youtube:comments] Fix error handling and add 
itctto params by coletdjnz - [youtube_live_chat] Fix download with cookies by siikamiika
 - [youtube_live_chat] use 
clickTrackingParamsby siikamiika - [Funimation] Rewrite extractor
- Add 
FunimationShowIEby Mevious - Treat the different versions of an episode as different formats of a single video
- This changes the video 
idand will break break existing archives - Compat option 
seperate-video-versionsto fall back to old behavior including using the old video ids 
 - This changes the video 
 - Support direct 
/player/URL - Extractor options 
languageandversionto pre-select them during extraction- These options may be removed in the future if we can extract all formats without additional network requests
 - Do not rely on these for format selection and use 
-ffilters instead 
 
 - Add 
 - [AdobePass] Add Spectrum MSO by kevinoconnor7, ohmybahgosh
 - [facebook] Extract description and fix title
 - [fancode] Fix extraction, support live and allow login with refresh token by zenerdi0de
 - [plutotv] Improve 
_VALID_URL - [RCTIPlus] Add extractor by MinePlayersPE
 - [Soundcloud] Allow login using oauth token by blackjack4494
 - [TBS] Support livestreams by llacb47
 - [videa] Fix extraction by nyuszika7h
 - [yahoo] Fix extraction by llacb47, pukkandan
 - Process videos when using 
--ignore-no-formats-errorby krichbanana - Fix 
--throttled-ratewhen using--load-info-json - Fix 
--flat-playlistwhen entry has noie_key - Fix 
check_formatscatchingExtractorErrorinstead ofDownloadError - Fix deprecated option 
--list-formats-old - [downloader/ffmpeg] Fix 
--ppawhen using simultaneous download - [extractor] Prevent unnecessary download of hls manifests and refactor 
hls_split_discontinuity - [fragment] Handle status of download and errors in threads correctly; and minor refactoring
 - [thumbnailsconvertor] Treat 
jpegasjpg - [utils] Fix issues with 
LazyListreversal - [extractor] Allow extractors to set their own login hint
 - [cleanup] Simplify format selector code with 
LazyListandyield from - [cleanup] Clean 
extractor.common._merge_subtitlessignature - [cleanup] Fix some typos
 
2021.06.23
- Merge youtube-dl: Upto commit/379f52a
 - Add option 
--throttled-ratebelow which video data is re-extracted - [fragment] Merge during download for 
-N, and refactorhls/dash - [websockets] Add 
WebSocketFragmentFDby nao20010128nao, pukkandan - Allow 
imagesformats in addition to video/audio - [downloader/mhtml] Add new downloader for slideshows/storyboards by fstirlitz
 - [youtube] Temporary fix for age-gate
 - [youtube] Support ongoing live chat by siikamiika
 - [youtube] Improve SAPISID cookie handling by coletdjnz
 - [youtube] Login is not needed for 
:ytrec - [youtube] Non-fatal alert reporting for unavailable videos page by coletdjnz
 - [twitcasting] Websocket support by nao20010128nao
 - [mediasite] Extract slides by fstirlitz
 - [funimation] Extract subtitles
 - [pornhub] Extract 
cast - [hotstar] Use server time for authentication instead of local time
 - [EmbedThumbnail] Fix for already downloaded thumbnail
 - [EmbedThumbnail] Add compat-option 
embed-thumbnail-atomicparsley - Expand 
--check-formatsto thumbnails - Fix id sanitization in filenames
 - Skip fixup of existing files and add 
--fixup forceto force it - Better error handling of syntax errors in 
-f - Use 
NamedTemporaryFilefor--check-formats - [aria2c] Lower 
--min-split-sizefor HTTP downloads - [options] Rename 
--add-metadatato--embed-metadata - [utils] Improve 
LazyListand add tests - [build] Build Windows x86 version with py3.7 and remove redundant tests by pukkandan, shirt
 - [docs] Clarify that 
--embed-metadataembeds chapter markers - [cleanup] Refactor fixup
 
2021.06.09
- Fix bug where 
%(field)din filename template throws error - [outtmpl] Improve offset parsing
 - [test] More rigorous tests for 
prepare_filename 
2021.06.08
- Remove support for obsolete Python versions: Only 3.6+ is now supported
 - Merge youtube-dl: Upto commit/c2350ca
 - [hls] Fix decryption for multithreaded downloader
 - [extractor] Fix pre-checking archive for some extractors
 - [extractor] Fix FourCC fallback when parsing ISM by fstirlitz
 - [twitcasting] Add TwitCastingUserIE, TwitCastingLiveIE by pukkandan, nao20010128nao
 - [vidio] Add VidioPremierIE and VidioLiveIE by MinePlayersPE
 - [viki] Fix extraction from ytdl-org/youtube-dl@59e583f
 - [youtube] Support shorts URL
 - [zoom] Extract transcripts as subtitles
 - Add field 
original_urlwith the user-inputted URL - Fix and refactor 
prepare_outtmpl - Make more fields available for 
--printwhen used with--flat-playlist - [utils] Generalize 
traverse_dicttotraverse_obj - [downloader/ffmpeg] Hide FFmpeg banner unless in verbose mode by fstirlitz
 - [build] Release 
yt-dlp.tar.gz - [build,update] Add GNU-style SHA512 and prepare updater for similar SHA256 by nihil-admirari
 - [pyinst] Show Python version in exe metadata by nihil-admirari
 - [docs] Improve documentation of dependencies
 - [cleanup] Mark unused files
 - [cleanup] Point all shebang to 
python3by fstirlitz - [cleanup] Remove duplicate file 
trovolive.py 
2021.06.01
- Merge youtube-dl: Upto commit/d495292
 - Pre-check archive and filters during playlist extraction
 - Handle Basic Auth 
user:passin URLs by hhirtz and pukkandan - [archiveorg] Add YoutubeWebArchiveIE by coletdjnz and alex-gedeon
 - [fancode] Add extractor by rhsmachine
 - [patreon] Support vimeo embeds by rhsmachine
 - [Saitosan] Add new extractor by llacb47
 - [ShemarooMe] Add extractor by Ashish0804 and pukkandan
 - [telemundo] Add extractor by king-millez
 - [SonyLIV] Add SonyLIVSeriesIE and subtitle support by Ashish0804
 - [Hotstar] Add HotStarSeriesIE by Ashish0804
 - [Voot] Add VootSeriesIE by Ashish0804
 - [vidio] Support login and premium videos by MinePlayersPE
 - [fragment] When using 
-N, do not keep the fragment content in memory - [ffmpeg] Download and merge in a single step if possible
 - [ThumbnailsConvertor] Support conversion to 
pngand make it the default by louie-github - [VideoConvertor] Generalize with remuxer and allow conditional recoding
 - [EmbedThumbnail] Embed in 
mp4/m4ausing mutagen by tripulse and pukkandan - [EmbedThumbnail] Embed if any thumbnail was downloaded, not just the best
 - [EmbedThumbnail] Correctly escape filename
 - [update] replace self without launching a subprocess in windows
 - [update] Block further update for unsupported systems
 - Refactor 
__process_playlistby creatingLazyList - Write messages to 
stderrwhen bothquietandverbose - Sanitize and sort playlist thumbnails
 - Remove 
Nonevalues frominfo.json - [extractor] Always prefer native hls downloader by default
 - [extractor] Skip subtitles without URI in m3u8 manifests by hheimbuerger
 - [extractor] Functions to parse 
socket.ioresponse asjsonby pukkandan and llacb47 - [extractor] Allow 
note=Falsewhen extracting manifests - [utils] Escape URLs in 
sanitized_Request, notsanitize_url - [hls] Disable external downloader for 
webtt - [youtube] 
/liveURLs should raise error if channel is not live - [youtube] Bug fixes
 - [zee5] Fix m3u8 formats' extension
 - [ard] Allow URLs without 
-before id by olifre - [cleanup] 
YoutubeDL._match_entry - [cleanup] Refactor updater
 - [cleanup] Refactor ffmpeg convertors
 - [cleanup] setup.py
 
2021.05.20
- Youtube improvements:
- Support youtube music 
MP,VLandbrowsepages - Extract more formats for youtube music by craftingmod, coletdjnz and pukkandan
 - Extract multiple subtitles in same language by pukkandan and tpikonen
 - Redirect channels that doesn't have a 
videostab to theirUUplaylists - Support in-channel search
 - Sort audio-only formats correctly
 - Always extract 
maxresdefaultthumbnail - Extract audio language
 - Add subtitle language names by nixxo and tpikonen
 - Show alerts only from the final webpage
 - Add 
html5=1param toget_video_infopage requests by coletdjnz - Better message when login required
 
 - Support youtube music 
 - Add option 
--print: to print any field/template- Makes redundant: 
--get-description,--get-duration,--get-filename,--get-format,--get-id,--get-thumbnail,--get-title,--get-url 
 - Makes redundant: 
 - Field 
additional_urlsto download additional videos from metadata using--parse-metadata - Merge youtube-dl: Upto commit/dfbbe29
 - Write thumbnail of playlist and add 
pl_thumbnailouttmpl key - [embedthumbnail] Add 
flacsupport and refactormutagencode by pukkandan and tripulse - [audius:artist] Add extractor by king-millez
 - [parlview] Add extractor by king-millez
 - [tenplay] Fix extractor by king-millez
 - [rmcdecouverte] Generalize 
_VALID_URL - Add compat-option 
no-attach-infojson - Add field 
namefor subtitles - Ensure 
post_extractandpre_processonly run once - Fix 
--check-formatswhen there is network error - Standardize 
write_debugandget_param - [options] Alias 
--write-comments,--no-write-comments - [options] Refactor callbacks
 - [test:download] Only extract enough videos for 
playlist_mincount - [extractor] bugfix for when 
compat_optsis not given - [build] Fix x86 build by shirt
 - [cleanup] code formatting, youtube tests and readme
 
2021.05.11
- Deprecate support for python versions < 3.6
 - Subtitle extraction from manifests by fstirlitz. See be6202f for details
 - Improve output template:
- Allow slicing lists/strings using 
field.start:end:step - A field can also be used as offset like 
field1+num+field2 - A default value can be given using 
field|default - Prevent invalid fields from causing errors
 
 - Allow slicing lists/strings using 
 - Merge youtube-dl: Upto commit/a726009
 - Remove options 
-l,-t,-Acompletely and disable--auto-number,--title,--literal,--id - [Plugins] Prioritize plugins over standard extractors and prevent plugins from overwriting the standard extractor classes
 - [downloader] Fix 
quietandto_stderr - [fragment] Ensure the file is closed on error
 - [fragment] Make sure first segment is not skipped
 - [aria2c] Fix whitespace being stripped off
 - [embedthumbnail] Fix bug where jpeg thumbnails were converted again
 - [FormatSort] Fix for when some formats have quality and others don't
 - [utils] Add 
network_exceptions - [utils] Escape URL while sanitizing
 - [ukcolumn] Add Extractor
 - [whowatch] Add extractor by nao20010128nao
 - [CBS] Improve 
_VALID_URLto support movies - [crackle] Improve extraction
 - [curiositystream] Fix collections
 - [francetvinfo] Improve video id extraction
 - [generic] Respect the encoding in manifest
 - [limelight] Obey 
allow_unplayable_formats - [mediasite] Generalize URL pattern by fstirlitz
 - [mxplayer] Add MxplayerShowIE by Ashish0804
 - [nebula] Move to nebula.app by Lamieur
 - [niconico] Fix HLS formats by CXwudi, tsukumijima, nao20010128nao and pukkandan
 - [niconico] Fix title and thumbnail extraction by CXwudi
 - [plutotv] Extract subtitles from manifests
 - [plutotv] Fix format extraction for some urls
 - [rmcdecouverte] Improve 
_VALID_URL - [sonyliv] Fix 
titleandseriesextraction by Ashish0804 - [tubi] Raise "no video formats" error when video url is empty
 - [youtube:tab] Detect playlists inside community posts
 - [youtube] Add 
oembedto reserved names - [zee5] Fix extraction for some URLs by Hadi0609
 - [zee5] Fix py2 compatibility
 - Fix 
playlist_indexand addplaylist_autonumber. See #302 for details - Add experimental option 
--check-formatsto test the URLs before format selection - Option 
--compat-optionsto revert some of yt-dlp's changes- Deprecates 
--list-formats-as-table,--list-formats-old 
 - Deprecates 
 - Fix number of digits in 
%(playlist_index)s - Fix case sensitivity of format selector
 - Revert "[core] be able to hand over id and title using url_result"
 - Do not strip out whitespaces in 
-oand-P - Fix 
preload_download_archivewriting verbose message tostdout - Move option warnings to 
YoutubeDLso that they obey--no-warningsand can output colors - Py2 compatibility for 
FileNotFoundError 
2021.04.22
- Improve output template:
- Objects can be traversed like 
%(field.key1.key2)s - An offset can be added to numeric fields as 
%(field+N)s - Deprecates 
--autonumber-start 
 - Objects can be traversed like 
 - Improve 
--sub-langs:- Treat 
--sub-langsentries as regex allcan be used to refer to all the subtitles- language codes can be prefixed with 
-to exclude it - Deprecates 
--all-subs 
 - Treat 
 - Add option 
--ignore-no-formats-errorto ignore the "no video format" and similar errors - Add option 
--skip-playlist-after-errorsto skip the rest of a playlist after a given number of errors are encountered - Merge youtube-dl: Upto commit/7e8b3f9
 - [downloader] Fix bug in downloader selection
 - [BilibiliChannel] Fix pagination by nao20010128nao and pukkandan
 - [rai] Add support for http formats by nixxo
 - [TubiTv] Add TubiTvShowIE by Ashish0804
 - [twitcasting] Fix extractor
 - [viu:ott] Fix extractor and support series by lkho and pukkandan
 - [youtube:tab] Show unavailable videos in playlists by coletdjnz
 - [youtube:tab] Reload with unavailable videos for all playlists
 - [youtube] Ignore invalid stretch ratio
 - [youtube] Improve channel syncid extraction to support ytcfg by coletdjnz
 - [youtube] Standardize API calls for tabs, mixes and search by coletdjnz
 - [youtube] Bugfix in 
_extract_ytcfg - [mildom:user:vod] Download only necessary amount of pages
 - [mildom] Remove proxy completely by fstirlitz
 - [go] Fix 
_VALID_URL - [MetadataFromField] Improve regex and add tests
 - [Exec] Ensure backward compatibility when the command contains 
% - [extractor] Fix inconsistent use of 
report_warning - Ensure 
mergeallselects best format when multistreams are disabled - Improve the yt-dlp.sh script by fstirlitz
 - [lazy_extractor] Do not load plugins
 - [ci] Disable fail-fast
 - [docs] Clarify which deprecated options still work
 - [docs] Fix typos
 
2021.04.11
- Add option 
--convert-thumbnails(only jpg currently supported) - Format selector 
mergeallto download and merge all formats - Pass any field to 
--execusing similar syntax to output template - Choose downloader for each protocol using 
--downloader PROTO:NAME- Alias 
--downloaderfor--external-downloader - Added 
nativeas an option for the downloader 
 - Alias 
 - Merge youtube-dl: Upto commit/4fb25ff (except vimeo)
 - [DiscoveryPlusIndia] Add DiscoveryPlusIndiaShowIE by Ashish0804
 - [NFHSNetwork] Add extractor by llacb47
 - [nebula] Add extractor (watchnebula.com) by hheimbuerger
 - [nitter] Fix extraction of reply tweets and update instance list by B0pol
 - [nitter] Fix thumbnails by B0pol
 - [youtube] Fix thumbnail URL
 - [youtube] Parse API parameters from initial webpage by coletdjnz
 - [youtube] Extract comments' approximate timestamp by coletdjnz
 - [youtube] Fix alert extraction
 - [bilibili] Fix uploader
 - [utils] Add 
datetime_from_stranddatetime_add_monthsby coletdjnz - Run some 
postprocessorsbefore actual download - Improve argument parsing for 
-P,-o,-S - Fix some 
m3u8not obeying--allow-unplayable-formats - Fix default of 
dynamic_mpd - Deprecate 
--all-formats,--include-ads,--hls-prefer-native,--hls-prefer-ffmpeg - [docs] Improvements
 
2021.04.03
- Merge youtube-dl: Upto commit/654b4f4
 - Ability to set a specific field in the file's metadata using 
--parse-metadata - Ability to select n'th best format like 
-f bv*.2 - [DiscoveryPlus] Add discoveryplus.in
 - [la7] Add podcasts and podcast playlists by nixxo
 - [mildom] Update extractor with current proxy by nao20010128nao
 - [ard:mediathek] Fix video id extraction
 - [generic] Detect Invidious' link element
 - [youtube] Show premium state in 
availabilityby coletdjnz - [viewsource] Add extractor to handle 
view-source: - [sponskrub] Run before embedding thumbnail
 - [docs] Improve 
--parse-metadatadocumentation 
2021.03.24.1
- Revert commit/8562218
 
2021.03.24
- Merge youtube-dl: Upto 2021.03.25 (commit/8562218)
 - Parse metadata from multiple fields using 
--parse-metadata - Ability to load playlist infojson using 
--load-info-json - Write current epoch to infojson when using 
--no-clean-infojson - [youtube_live_chat] fix bug when trying to set cookies
 - [niconico] Fix for when logged in by CXwudi and xtkoba
 - [linuxacadamy] Fix login
 
2021.03.21
- 
Merge youtube-dl: Upto commit/7e79ba7
 - 
Option
--no-clean-infojsonto keep private keys in the infojson - 
[aria2c] Support retry/abort unavailable fragments by damianoamatruda
 - 
[aria2c] Better default arguments
 - 
[movefiles] Fix bugs and make more robust
 - 
[formatSort] Fix
qualitybeing ignored - 
[splitchapters] Fix for older ffmpeg
 - 
[sponskrub] Pass proxy to sponskrub
 - 
Make sure
post_hookgets the final filename - 
Recursively remove any private keys from infojson
 - 
Embed video URL metadata inside
mp4by damianoamatruda and pukkandan - 
Merge
webmformats intomkvif thumbnails are to be embedded by damianoamatruda - 
Use headers and cookies when downloading subtitles by damianoamatruda
 - 
Parse resolution in info dictionary by damianoamatruda
 - 
More consistent warning messages by damianoamatruda and pukkandan
 - 
[docs] Add deprecated options and aliases in readme
 - 
[docs] Fix some minor mistakes
 - 
[niconico] Partial fix adapted from animelover1984/youtube-dl@b5eff52 (login and smile formats still don't work)
 - 
[niconico] Add user extractor by animelover1984
 - 
[bilibili] Add anthology support by animelover1984
 - 
[amcnetworks] Fix extractor by 2ShedsJackson
 - 
[stitcher] Merge from youtube-dl by nixxo
 - 
[rcs] Improved extraction by nixxo
 - 
[linuxacadamy] Improve regex
 - 
[youtube] Show if video is
private,unlistedetc in info (availability) by coletdjnz and pukkandan - 
[youtube] bugfix for channel playlist extraction
 - 
[nbc] Improve metadata extraction by 2ShedsJackson
 
2021.03.15
- Split video by chapters: using option 
--split-chapters- The output file of the split files can be set with 
-o/-Pusing the prefixchapter: - Additional keys 
section_title,section_number,section_start,section_endare available in the output template 
 - The output file of the split files can be set with 
 - Parallel fragment downloads by shirt
- Use option 
--concurrent-fragments(-N) to set the number of threads (default 1) 
 - Use option 
 - Merge youtube-dl: Upto commit/3be0980
 - [zee5] Add Show Extractor by Ashish0804 and pukkandan
 - [rai] fix drm check nixxo
 - [wimtv] Add extractor by nixxo
 - [mtv] Add mtv.it and extract series metadata by nixxo
 - [pluto.tv] Add extractor by kevinoconnor7
 - [youtube] Rewrite comment extraction by coletdjnz
 - [embedthumbnail] Set mtime correctly
 - Refactor some postprocessor/downloader code by pukkandan and shirt
 
2021.03.07
- [youtube] Fix history, mixes, community pages and trending by pukkandan and coletdjnz
 - [youtube] Fix private feeds/playlists on multi-channel accounts by coletdjnz
 - [youtube] Extract alerts from continuation by coletdjnz
 - [cbs] Add support for ParamountPlus by shirt
 - [mxplayer] Rewrite extractor with show support by pukkandan and Ashish0804
 - [gedi] Improvements from youtube-dl by nixxo
 - [vimeo] Fix videos with password by teesid
 - [lbry] Support 
lbry://url by nixxo - [bilibili] Change 
Acceptheader by pukkandan and animelover1984 - [trovo] Pass origin header
 - [rai] Check for DRM by nixxo
 - [downloader] Fix bug for 
ffmpeg/httpie - [update] Fix updater removing the executable bit on some UNIX distros
 - [update] Fix current build hash for UNIX
 - [docs] Include wget/curl/aria2c install instructions for Unix by Ashish0804
 - Fix some videos downloading with 
m3u8extension - Remove "fixup is ignored" warning when fixup wasn't passed by user
 
2021.03.03.2
- [build] Fix bug
 
2021.03.03
- [youtube] Use new browse API for continuation page extraction by coletdjnz and pukkandan
 - Fix HLS playlist downloading by shirt
 - Merge youtube-dl: Upto 2021.03.03
 - [mtv] Fix extractor
 - [nick] Fix extractor by DennyDai
 - [mxplayer] Add new extractor by codeasashu
 - [youtube] Throw error when 
--extractor-retriesare exhausted - Reduce default of 
--extractor-retriesto 3 - Fix packaging bugs by hseg
 
2021.03.01
- Allow specifying path in 
--external-downloader - Add option 
--sleep-requeststo sleep b/w requests - Add option 
--extractor-retriesto retry on known extractor errors - Extract comments only when needed
 --get-commentsdoesn't imply--write-info-jsonif-J,-jor--print-jsonare used- Fix 
get_executable_pathby shirt - [youtube] Retry on more known errors than just HTTP-5xx
 - [youtube] Fix inconsistent 
webpage_url - [tennistv] Fix format sorting
 - [bilibiliaudio] Recognize the file as audio-only
 - [hrfensehen] Fix wrong import
 - [viki] Fix viki play pass authentication by RobinD42
 - [readthedocs] Improvements by shirt
 - [hls] Fix bug with m3u8 format extraction
 - [hls] Enable 
--hls-use-mpegtsby default when downloading live-streams - [embedthumbnail] Fix bug with deleting original thumbnail
 - [build] Fix completion paths, zsh pip completion install by hseg
 - [ci] Disable download tests unless specifically invoked
 - Cleanup some code and fix typos
 
2021.02.24
- Moved project to an organization yt-dlp
 - Completely changed project name to yt-dlp by Pccode66 and pukkandan
- Also, 
youtube-dlcconfig files are no longer loaded 
 - Also, 
 - Merge youtube-dl: Upto commit/4460329 (except tmz, gedi)
 - Readthedocs support by shirt
 - [youtube] Show if video was a live stream in info (
was_live) - [Zee5] Add new extractor by Ashish0804 and pukkandan
 - [jwplatform] Add support for 
hyland.com - [tennistv] Fix extractor
 - [hls] Support media initialization by shirt
 - [hls] Added options 
--hls-split-discontinuityto better support media discontinuity by shirt - [ffmpeg] Allow passing custom arguments before -i using 
--ppa "ffmpeg_i1:ARGS"syntax - Fix 
--windows-filenamesremoving/from UNIX paths - [hls] Show warning if pycryptodome is not found
 - [docs] Improvements
- Fix documentation of 
Extractor Options - Document 
allin format selection - Document 
playable_in_embedin output templates 
 - Fix documentation of 
 
2021.02.19
- Merge youtube-dl: Upto commit/cf2dbec (except kakao)
 - [viki] Fix extractor
 - [niconico] Extract 
channelandchannel_idby kurumigi - [youtube] Multiple page support for hashtag URLs
 - [youtube] Add more invidious instances
 - [youtube] Fix comment extraction when comment text is empty
 - Option 
--windows-filenamesto force use of windows compatible filenames - [ExtractAudio] Bugfix
 - Don't raise 
parser.errorwhen exiting for update - [MoveFiles] Fix for when merger can't run
 - Changed 
--trim-file-nameto--trim-filenamesto be similar to related options - Format Sort improvements:
- Prefer 
vp9.2more than othervp9codecs - Remove forced priority of 
quality - Remove unnecessary 
field_preferenceand misuse ofpreferencefrom extractors 
 - Prefer 
 - Build improvements:
 - [docs] Better document 
--prefer-free-formatsand add--no-prefer-free-format 
2021.02.15
- Merge youtube-dl: Upto 2021.02.10 (except archive.org)
 - [niconico] Improved extraction and support encrypted/SMILE movies by kurumigi, tsukumijima, bbepis, pukkandan
 - Fix HLS AES-128 with multiple keys in external downloaders by shirt
 - [youtube_live_chat] Fix by using POST API by siikamiika
 - [rumble] Add support for video page
 - Option 
--allow-unplayable-formatsto allow downloading unplayable video formats - [ExtractAudio] Don't re-encode when file is already in a common audio format
 - [youtube] Fix search continuations
 - [youtube] Fix for new accounts
 - Improve build/updater: by pukkandan and shirt
- Fix SHA256 calculation in build and implement hash checking for updater
 - Exit immediately in windows once the update process starts
 - Fix updater for 
x86.exe - Updater looks for both 
yt-dlpandyoutube-dlcin releases for future-proofing - Change optional dependency to 
pycryptodome 
 - Fix issue with unicode filenames in aria2c by shirt
 - Fix 
allow_playlist_filesnot being correctly passed through - Fix for empty HTTP head requests by shirt
 - Fix 
get_executable_pathin UNIX - [sponskrub] Print ffmpeg output and errors to terminal
 __real_downloadshould be false when ffmpeg unavailable and no download- Show 
exe/zip/sourceand 32/64bit in verbose message 
2021.02.09
- aria2c support for DASH/HLS: by shirt
 - Implement Updater (
-U) by shirt - [youtube] Fix comment extraction
 - [youtube_live_chat] Improve extraction
 - [youtube] Fix for channel URLs sometimes not downloading all pages
 - [aria2c] Changed default arguments to 
--console-log-level=warn --summary-interval=0 --file-allocation=none -x16 -j16 -s16 - Add fallback for thumbnails
 - [embedthumbnail] Keep original thumbnail after conversion if write_thumbnail given
 - [embedsubtitle] Keep original subtitle after conversion if write_subtitles given
 - [pyinst.py] Move back to root dir
 - [youtube] Simplified renderer parsing and bugfixes
 - [movefiles] Fix compatibility with python2
 - [remuxvideo] Fix validation of conditional remux
 - [sponskrub] Don't raise error when the video does not exist
 - [docs] Crypto is an optional dependency
 
2021.02.04
- Merge youtube-dl: Upto 2021.02.04.1
 - Date/time formatting in output template:
- You can use 
strftimeto format date/time fields. Example:%(upload_date>%Y-%m-%d)s 
 - You can use 
 - Multiple output templates:
- Separate output templates can be given for the different metadata files by using 
-o TYPE:TEMPLATE - The allowed types are: 
subtitle|thumbnail|description|annotation|infojson|pl_description|pl_infojson 
 - Separate output templates can be given for the different metadata files by using 
 - [youtube] More metadata extraction for channel/playlist URLs (channel, uploader, thumbnail, tags)
 - New option 
--no-write-playlist-metafilesto prevent writing playlist metadata files - [audius] Fix extractor
 - [youtube_live_chat] Fix 
parse_yt_initial_dataand addfragment_retries - [postprocessor] Raise errors correctly
 - [metadatafromtitle] Fix bug when extracting data from numeric fields
 - Fix issue with overwriting files
 - Fix "Default format spec" appearing in quiet mode
 - [FormatSort] Allow user to prefer av01 over vp9 (The default is still vp9)
 - [FormatSort] fix bug where 
qualityhad more priority thanhasvid - [pyinst] Automatically detect python architecture and working directory
 - Strip out internal fields such as 
_filenamefrom infojson 
2021.01.29
- Features from animelover1984/youtube-dl: by animelover1984 and bbepis
- Add 
--get-comments - [youtube] Extract comments
 - [billibilli] Added BiliBiliSearchIE, BilibiliChannelIE
 - [billibilli] Extract comments
 - [billibilli] Better video extraction
 - Write playlist data to infojson
 - [FFmpegMetadata] Embed infojson inside the video
 - [EmbedThumbnail] Try embedding in mp4 using ffprobe and 
-disposition - [EmbedThumbnail] Treat mka like mkv and mov like mp4
 - [EmbedThumbnail] Embed in ogg/opus
 - [VideoRemuxer] Conditionally remux video
 - [VideoRemuxer] Add 
-movflags +faststartwhen remuxing to mp4 - [ffmpeg] Print entire stderr in verbose when there is error
 - [EmbedSubtitle] Warn when embedding ass in mp4
 - [anvato] Use NFLTokenGenerator if possible
 
 - Add 
 - Parse additional metadata: New option 
--parse-metadatato extract additional metadata from existing fields- The extracted fields can be used in 
--output - Deprecated 
--metadata-from-title 
 - The extracted fields can be used in 
 - [Audius] Add extractor
 - [youtube] Extract playlist description and write it to 
.descriptionfile - Detect existing files even when using 
recode/remux(extract-audiois partially fixed) - Fix wrong user config from v2021.01.24
 - [youtube] Report error message from youtube as error instead of warning
 - [FormatSort] Fix some fields not sorting from v2021.01.24
 - [postprocessor] Deprecate 
avconv/avprobe. All current functionality is left untouched. But don't expect any new features to work with avconv - [postprocessor] fix 
write_debugto not throw error when there is no_downloader - [movefiles] Don't give "cant find" warning when move is unnecessary
 - Refactor 
update-version,pyinst.pyand related files - [ffmpeg] Document more formats that are supported for remux/recode
 
2021.01.24
- Merge youtube-dl: Upto 2021.01.24
 - Plugin support (documentation)
 - Multiple paths: New option 
-P/--pathsto give different paths for different types of files- The syntax is 
-P "type:path" -P "type:path" - Valid types are: home, temp, description, annotation, subtitle, infojson, thumbnail
 - Additionally, configuration file is taken from home directory or current directory
 
 - The syntax is 
 - Allow passing different arguments to different external downloaders
 - [mildom] Add extractor by nao20010128nao
 - Warn when using old style 
--external-downloader-argsand--post-processor-args - Fix 
--no-overwritewhen using--write-link - [sponskrub] Output 
unrecognized argumenterror message correctly - [cbs] Make failure to extract title non-fatal
 - Fix typecasting when pre-checking archive
 - Fix issue with setting title on UNIX
 - Deprecate redundant aliases in 
formatSort. The aliases remain functional for backward compatibility, but will be left undocumented - [tests] Fix test_post_hooks
 - [tests] Split core and download tests
 
2021.01.20
- [TrovoLive] Add extractor (only VODs)
 - [pokemon] Add 
/#/playerURLs - Improved parsing of multiple postprocessor-args, add 
--ppaas alias - [EmbedThumbnail] Simplify embedding in mkv
 - [sponskrub] Encode filenames correctly, better debug output and error message
 - [readme] Cleanup options
 
2021.01.16
- Merge youtube-dl: Upto 2021.01.16
 - Configuration files:
- Portable configuration file: 
./yt-dlp.conf - Allow the configuration files to be named 
yt-dlpinstead ofyoutube-dlc. See this for details 
 - Portable configuration file: 
 - Add PyPI release
 
2021.01.14
- Added option 
--break-on-reject - [roosterteeth.com] Fix for bonus episodes by Zocker1999NET
 - [tiktok] Fix for when share_info is empty
 - [EmbedThumbnail] Fix bug due to incorrect function name
 - [docs] Changed sponskrub links to point to yt-dlp/SponSkrub since I am now providing both linux and windows releases
 - [docs] Change all links to correctly point to new fork URL
 - [docs] Fixes typos
 
2021.01.12
- [roosterteeth.com] Add subtitle support by samiksome
 - Added 
--force-overwrites,--no-force-overwritesby alxnull - Changed fork name to 
yt-dlp - Fix typos by FelixFrog
 - [ci] Option to skip
 - [changelog] Added unreleased changes in blackjack4494/yt-dlc
 
2021.01.10
- [archive.org] Fix extractor and add support for audio and playlists by wporr
 - [Animelab] Added by mariuszskon
 - [youtube:search] Fix view_count by ohnonot
 - [youtube] Show if video is embeddable in info (
playable_in_embed) - Update version badge automatically in README
 - Enable 
test_youtube_search_matching - Create 
to_screenand similar functions in postprocessor/common 
2021.01.09
- [youtube] Fix bug in automatic caption extraction
 - Add 
post_hooksto YoutubeDL by alexmerkel - Batch file enumeration improvements by glenn-slayden
 - Stop immediately when reaching 
--max-downloadsby glenn-slayden - Fix incorrect ANSI sequence for restoring console-window title by glenn-slayden
 - Kill child processes when yt-dlc is killed by Unrud
 
2021.01.08
- Merge youtube-dl: Upto 2021.01.08 except stitcher (1, 2)
 - Moved changelog to separate file
 
2021.01.07-1
- [Akamai] fix by nixxo
 - [Tiktok] merge youtube-dl tiktok extractor by GreyAlien502
 - [vlive] add support for playlists by kyuyeunk
 - [youtube_live_chat] make sure playerOffsetMs is positive by siikamiika
 - Ignore extra data streams in ffmpeg by jbruchon
 - Allow passing different arguments to different postprocessors using 
--postprocessor-args - Deprecated 
--sponskrub-args. The same can now be done using--postprocessor-args "sponskrub:<args>" - [CI] Split tests into core-test and full-test
 
2021.01.07
- Removed priority of 
av01codec in-Ssince most devices don't support it yet - Added 
duration_stringto be used in--output - Created First Release
 
2021.01.05-1
- Changed defaults:
- Enabled 
--ignore - Disabled 
--video-multistreamsand--audio-multistreams - Changed default format selection to 
bv*+ba/bwhen--audio-multistreamsis disabled - Changed default format sort order to 
res,fps,codec,size,br,asr,proto,ext,has_audio,source,format_id - Changed 
webmto be more preferable thanflvin format sorting - Changed default output template to 
%(title)s [%(id)s].%(ext)s - Enabled 
--list-formats-as-table 
 - Enabled 
 
2021.01.05
- Format Sort: Added 
--format-sort(-S),--format-sort-force(--S-force) - See Sorting Formats for details - Format Selection: See Format Selection for details
- New format selectors: 
best*,worst*,bestvideo*,bestaudio*,worstvideo*,worstaudio* - Changed video format sorting to show video only files and video+audio files together
 - Added 
--video-multistreams,--no-video-multistreams,--audio-multistreams,--no-audio-multistreams - Added 
b,w,v,aas alias forbest,worst,videoandaudiorespectively 
 - New format selectors: 
 - Shortcut Options: Added 
--write-link,--write-url-link,--write-webloc-link,--write-desktop-linkby h-h-h-h - See Internet Shortcut Options for details - Sponskrub integration: Added 
--sponskrub,--sponskrub-cut,--sponskrub-force,--sponskrub-location,--sponskrub-args- See SponSkrub Options for details - Added 
--force-download-archive(--force-write-archive) by h-h-h-h - Added 
--list-formats-as-table,--list-formats-old - Negative Options: Makes it possible to negate most boolean options by adding a 
no-to the switch. Usefull when you want to reverse an option that is defined in a config file- Added 
--no-ignore-dynamic-mpd,--no-allow-dynamic-mpd,--allow-dynamic-mpd,--youtube-include-hls-manifest,--no-youtube-include-hls-manifest,--no-youtube-skip-hls-manifest,--no-download,--no-download-archive,--resize-buffer,--part,--mtime,--no-keep-fragments,--no-cookies,--no-write-annotations,--no-write-info-json,--no-write-description,--no-write-thumbnail,--youtube-include-dash-manifest,--post-overwrites,--no-keep-video,--no-embed-subs,--no-embed-thumbnail,--no-add-metadata,--no-include-ads,--no-write-sub,--no-write-auto-sub,--no-playlist-reverse,--no-restrict-filenames,--youtube-include-dash-manifest,--no-format-sort-force,--flat-videos,--no-list-formats-as-table,--no-sponskrub,--no-sponskrub-cut,--no-sponskrub-force - Renamed: 
--write-subs,--no-write-subs,--no-write-auto-subs,--write-auto-subs. Note that these can still be used without the ending "s" 
 - Added 
 - Relaxed validation for format filters so that any arbitrary field can be used
 - Fix for embedding thumbnail in mp3 by pauldubois98 (ytdl-org/youtube-dl#21569)
 - Make Twitch Video ID output from Playlist and VOD extractor same. This is only a temporary fix
 - Merge youtube-dl: Upto 2021.01.03 - See blackjack4494/yt-dlc#280 for details
 - Cleaned up the fork for public use
 
Note: All uncredited changes above this point are authored by pukkandan
Unreleased changes in blackjack4494/yt-dlc
- Updated to youtube-dl release 2020.11.26 by pukkandan
 - Youtube improvements by pukkandan
- Implemented all Youtube Feeds (ytfav, ytwatchlater, ytsubs, ythistory, ytrec) and SearchURL
 - Fix some improper Youtube URLs
 - Redirect channel home to /video
 - Print youtube's warning message
 - Handle Multiple pages for feeds better
 
 - [youtube] Fix ytsearch not returning results sometimes due to promoted content by coletdjnz
 - [youtube] Temporary fix for automatic captions - disable json3 by blackjack4494
 - Add --break-on-existing by gergesh
 - Pre-check video IDs in the archive before downloading by pukkandan
 - [bitwave.tv] New extractor by lorpus
 - [Gedi] Add extractor by nixxo
 - [Rcs] Add new extractor by nixxo
 - [skyit] New skyitalia extractor by nixxo
 - [france.tv] Fix thumbnail URL by renalid
 - [ina] support mobile links by B0pol
 - [instagram] Fix thumbnail extractor by nao20010128nao
 - [SouthparkDe] Support for English URLs by xypwn
 - [spreaker] fix SpreakerShowIE test URL by pukkandan
 - [Vlive] Fix playlist handling when downloading a channel by kyuyeunk
 - [tmz] Fix extractor by diegorodriguezv
 - [ITV] BTCC URL update by WolfganP
 - [generic] Detect embedded bitchute videos by pukkandan
 - [generic] Extract embedded youtube and twitter videos by diegorodriguezv
 - [ffmpeg] Ensure all streams are copied by pukkandan
 - [embedthumbnail] Fix for os.rename error by pukkandan
 - make_win.bat: don't use UPX to pack vcruntime140.dll by jbruchon
 
Changelog of blackjack4494/yt-dlc till release 2020.11.11-3
Note: This was constructed from the merge commit messages and may not be entirely accurate
- [bandcamp] fix failing test. remove subclass hack by insaneracist
 - [bandcamp] restore album downloads by insaneracist
 - [francetv] fix extractor by Surkal
 - [gdcvault] fix extractor by blackjack4494
 - [hotstar] Move to API v1 by theincognito-inc
 - [hrfernsehen] add extractor by blocktrron
 - [kakao] new apis by blackjack4494
 - [la7] fix missing protocol by nixxo
 - [mailru] removed escaped braces, use urljoin, added tests by nixxo
 - [MTV/Nick] universal mgid extractor + fix nick.de feed by blackjack4494
 - [mtv] Fix a missing match_id by nixxo
 - [Mtv] updated extractor logic & more by blackjack4494
 - [ndr] support Daserste ndr by blackjack4494
 - [Netzkino] Only use video id to find metadata by TobiX
 - [newgrounds] fix: video download by insaneracist
 - [nitter] Add new extractor by B0pol
 - [soundcloud] Resolve audio/x-wav by tfvlrue
 - [soundcloud] sets pattern and tests by blackjack4494
 - [SouthparkDE/MTV] another mgid extraction (mtv_base) feed url updated by blackjack4494
 - [StoryFire] Add new extractor by sgstair
 - [twitch] by geauxlo
 - [videa] Adapt to updates by adrianheine
 - [Viki] subtitles, formats by blackjack4494
 - [vlive] fix extractor for revamped website by exwm
 - [xtube] fix extractor by insaneracist
 - [youtube] Convert subs when download is skipped by blackjack4494
 - [youtube] Fix age gate detection by random-nick
 - [youtube] fix yt-only playback when age restricted/gated - requires cookies by blackjack4494
 - [youtube] fix: extract artist metadata from ytInitialData by insaneracist
 - [youtube] fix: extract mix playlist ids from ytInitialData by insaneracist
 - [youtube] fix: mix playlist title by insaneracist
 - [youtube] fix: Youtube Music playlists by insaneracist
 - [Youtube] Fixed problem with new youtube player by peet1993
 - [zoom] Fix url parsing for url's containing /share/ and dots by Romern
 - [zoom] new extractor by insaneracist
 - abc by adrianheine
 - Added Comcast_SSO fix by merval
 - Added DRM logic to brightcove by merval
 - Added regex for ABC.com site. by kucksdorfs
 - alura by hugohaa
 - Arbitrary merges by fstirlitz
 - ard.py_add_playlist_support by martin54
 - Bugfix/youtube/chapters fix extractor by gschizas
 - bugfix_youtube_like_extraction by RedpointsBots
 - Create build workflow by blackjack4494
 - deezer by LucBerge
 - Detect embedded bitchute videos by pukkandan
 - Don't install tests by l29ah
 - Don't try to embed/convert json subtitles generated by youtube livechat by pukkandan
 - Doodstream by sxvghd
 - duboku by lkho
 - elonet by tpikonen
 - ext/remuxe-video by Zocker1999NET
 - fall-back to the old way to fetch subtitles, if needed by RobinD42
 - feature_subscriber_count by RedpointsBots
 - Fix external downloader when there is no http_header by pukkandan
 - Fix issue triggered by tubeup by nsapa
 - Fix YoutubePlaylistsIE by ZenulAbidin
 - fix-mitele' by DjMoren
 - fix/google-drive-cookie-issue by legraphista
 - fix_tiktok by mervel-mervel
 - Fixed problem with JS player URL by peet1993
 - fixYTSearch by xarantolus
 - FliegendeWurst-3sat-zdf-merger-bugfix-feature
 - gilou-bandcamp_update
 - implement ThisVid extractor by rigstot
 - JensTimmerman-patch-1 by JensTimmerman
 - Keep download archive in memory for better performance by jbruchon
 - la7-fix by iamleot
 - magenta by adrianheine
 - Merge 26564 from adrianheine
 - Merge code from ddland
 - Merge code from nixxo
 - Merge code from ssaqua
 - Merge code from zubearc
 - mkvthumbnail by MrDoritos
 - myvideo_ge by fonkap
 - naver by SeonjaeHyeon
 - ondemandkorea by julien-hadleyjack
 - rai-update by iamleot
 - RFC: youtube: Polymer UI and JSON endpoints for playlists by wlritchi
 - rutv by adrianheine
 - Sc extractor web auth by blackjack4494
 - Switch from binary search tree to Python sets by jbruchon
 - tiktok by skyme5
 - tvnow by TinyToweringTree
 - twitch-fix by lel-amri
 - Twitter shortener by blackjack4494
 - Update README.md by JensTimmerman
 - Update to reflect website changes. by amigatomte
 - use webarchive to fix a dead link in README by B0pol
 - Viki the second by blackjack4494
 - wdr-subtitles by mrtnmtth
 - Webpfix by alexmerkel
 - Youtube live chat by siikamiika