diff options
author | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-07-17 17:36:15 +0530 |
---|---|---|
committer | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-07-17 18:45:44 +0530 |
commit | 24093d52a768e624a3ecd9d834f3239f64e1bf2c (patch) | |
tree | 5531967adc06b24c8efd0700f05fa931b777a023 /yt_dlp/update.py | |
parent | f5e438a976dcf8d7d263631ea0b0bf114b6182af (diff) | |
download | hypervideo-pre-24093d52a768e624a3ecd9d834f3239f64e1bf2c.tar.lz hypervideo-pre-24093d52a768e624a3ecd9d834f3239f64e1bf2c.tar.xz hypervideo-pre-24093d52a768e624a3ecd9d834f3239f64e1bf2c.zip |
[update] Prepare to remove Python 3.6 support
Diffstat (limited to 'yt_dlp/update.py')
-rw-r--r-- | yt_dlp/update.py | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/yt_dlp/update.py b/yt_dlp/update.py index 7f15aa211..92c07acc1 100644 --- a/yt_dlp/update.py +++ b/yt_dlp/update.py @@ -88,8 +88,7 @@ class Updater: @functools.cached_property def _tag(self): - latest = self._get_version_info('latest')['tag_name'] - if version_tuple(__version__) >= version_tuple(latest): + if version_tuple(__version__) >= version_tuple(self.latest_version): return 'latest' identifier = f'{detect_variant()} {system_identifier()}' @@ -113,10 +112,17 @@ class Updater: @property def new_version(self): - """Version of the latest release""" + """Version of the latest release we can update to""" + if self._tag.startswith('tags/'): + return self._tag[5:] return self._get_version_info(self._tag)['tag_name'] @property + def latest_version(self): + """Version of the latest release""" + return self._get_version_info('latest')['tag_name'] + + @property def has_update(self): """Whether there is an update available""" return version_tuple(__version__) < version_tuple(self.new_version) @@ -161,13 +167,15 @@ class Updater: """Report whether there is an update available""" try: self.ydl.to_screen( - f'Latest version: {self.new_version}, Current version: {self.current_version}') + f'Latest version: {self.latest_version}, Current version: {self.current_version}') + if not self.has_update: + if self._tag == 'latest': + return self.ydl.to_screen(f'yt-dlp is up to date ({__version__})') + return self.ydl.report_warning( + 'yt-dlp cannot be updated any further since you are on an older Python version') except Exception: return self._report_network_error('obtain version info', delim='; Please try again later or') - if not self.has_update: - return self.ydl.to_screen(f'yt-dlp is up to date ({__version__})') - if not is_non_updateable(): self.ydl.to_screen(f'Current Build Hash {_sha256_file(self.filename)}') return True |