Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-guessit for openSUSE:Factory checked in at 2023-02-18 17:12:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-guessit (Old) and /work/SRC/openSUSE:Factory/.python-guessit.new.22824 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-guessit" Sat Feb 18 17:12:59 2023 rev:21 rq:1066542 version:3.7.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-guessit/python-guessit.changes 2022-11-02 12:48:14.301902093 +0100 +++ /work/SRC/openSUSE:Factory/.python-guessit.new.22824/python-guessit.changes 2023-02-18 17:13:11.391798320 +0100 @@ -1,0 +2,24 @@ +Sat Feb 18 13:23:05 UTC 2023 - Luigi Baldoni <aloi...@gmx.com> + +- Update to version 3.7.0 + Feature: + * week: Add week property + Fix: + * episode: Fix invalid episode range when a weak episode is + present before the match + * expected: Build output from input string for + expected_title/expected_group + * release_group: Properly extract group name from format "Title + * edition: Improve remastered/restored detection + * container: Add m2ts to container extensions + Documentation: + * contributing: Update branch name + +------------------------------------------------------------------- +Sat Feb 18 10:31:32 UTC 2023 - Luigi Baldoni <aloi...@gmx.com> + +- Update to version 3.6.0 + Feature: + * audio_codec: Detect "DTS:X" + +------------------------------------------------------------------- Old: ---- guessit-3.5.0.tar.gz New: ---- guessit-3.7.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-guessit.spec ++++++ --- /var/tmp/diff_new_pack.z1sk4v/_old 2023-02-18 17:13:14.195816025 +0100 +++ /var/tmp/diff_new_pack.z1sk4v/_new 2023-02-18 17:13:14.199816051 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-guessit # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ %define skip_python2 1 Name: python-guessit -Version: 3.5.0 +Version: 3.7.0 Release: 0 Summary: A library for guessing information from video files License: LGPL-3.0-only @@ -30,7 +30,7 @@ BuildRequires: %{python_module importlib_resources} BuildRequires: %{python_module pytest >= 5} BuildRequires: %{python_module pytest-benchmark} -BuildRequires: %{python_module pytest-mock} +BuildRequires: %{python_module pytest-mock >= 3.3.1} BuildRequires: %{python_module python-dateutil} BuildRequires: %{python_module rebulk >= 3.1.0} BuildRequires: %{python_module setuptools} ++++++ guessit-3.5.0.tar.gz -> guessit-3.7.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/CHANGELOG.md new/guessit-3.7.0/CHANGELOG.md --- old/guessit-3.5.0/CHANGELOG.md 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/CHANGELOG.md 2023-02-18 13:20:37.000000000 +0100 @@ -3,6 +3,18 @@ <!--next-version-placeholder--> +## v3.6.0 (2023-02-18) +### Feature +* **audio_codec:** Detect "DTS:X" (closes #728) ([`2bdd8f5`](https://github.com/guessit-io/guessit/commit/2bdd8f568a0fa6c5eb97e1f29d5e4d488d86a2aa)) + +## v3.5.0 (2022-11-01) +### Feature +* **dependencies:** Drop Python 3.6 support ([`47f5718`](https://github.com/guessit-io/guessit/commit/47f57184a9d0a25c1b415638d0b003dad88ce607)) + +### Fix +* **audio_codec:** Detect "E-AC-3" and "AC-3" ([`72dc12e`](https://github.com/guessit-io/guessit/commit/72dc12e2489d240839a216041ffe47e9dd128b0f)) +* **typo:** Fix common typo ([`42a80f0`](https://github.com/guessit-io/guessit/commit/42a80f0992387c96fc120480aaea35e4b3d9f5b8)) + ## v3.4.3 (2021-11-20) ### Fix * **setuptools:** Drop usage of test_requires and setup_requires ([#720](https://github.com/guessit-io/guessit/issues/720)) ([`324b38c`](https://github.com/guessit-io/guessit/commit/324b38ce62cd43efc51074dbd8c5e2ed64fc7573)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/CONTRIBUTING.md new/guessit-3.7.0/CONTRIBUTING.md --- old/guessit-3.5.0/CONTRIBUTING.md 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/CONTRIBUTING.md 2023-02-18 13:20:37.000000000 +0100 @@ -8,7 +8,7 @@ for issues that should be ideal for people who are not very familiar with the codebase yet. 2. Fork [the repository][] on Github to start making your changes to - the **master** branch (or branch off of it). + the **develop** branch (or branch off of it). 3. Write a test which shows that the bug was fixed or that the feature works as expected. 4. Send a pull request and bug the maintainer until it gets merged and diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/PKG-INFO new/guessit-3.7.0/PKG-INFO --- old/guessit-3.5.0/PKG-INFO 2022-11-01 22:55:39.330994800 +0100 +++ new/guessit-3.7.0/PKG-INFO 2023-02-18 13:20:53.439736000 +0100 @@ -1,12 +1,12 @@ Metadata-Version: 2.1 Name: guessit -Version: 3.5.0 +Version: 3.7.0 Summary: GuessIt - a library for guessing information from video filenames. -Home-page: https://guessit.io +Home-page: https://guessit-io.github.io/guessit Author: Rémi Alvergnat Author-email: toilal....@gmail.com License: LGPLv3 -Download-URL: https://pypi.python.org/packages/source/g/guessit/guessit-3.5.0.tar.gz +Download-URL: https://pypi.python.org/packages/source/g/guessit/guessit-3.7.0.tar.gz Keywords: python library release parser name filename movies series episodes animes Platform: UNKNOWN Classifier: Development Status :: 5 - Production/Stable @@ -59,7 +59,7 @@ "type": "episode" } -More information are available at [guessit.io](http://guessit.io/). +More information is available at [guessit-io.github.io/guessit](https://guessit-io.github.io/guessit). Support ------- @@ -79,6 +79,18 @@ <!--next-version-placeholder--> +## v3.6.0 (2023-02-18) +### Feature +* **audio_codec:** Detect "DTS:X" (closes #728) ([`2bdd8f5`](https://github.com/guessit-io/guessit/commit/2bdd8f568a0fa6c5eb97e1f29d5e4d488d86a2aa)) + +## v3.5.0 (2022-11-01) +### Feature +* **dependencies:** Drop Python 3.6 support ([`47f5718`](https://github.com/guessit-io/guessit/commit/47f57184a9d0a25c1b415638d0b003dad88ce607)) + +### Fix +* **audio_codec:** Detect "E-AC-3" and "AC-3" ([`72dc12e`](https://github.com/guessit-io/guessit/commit/72dc12e2489d240839a216041ffe47e9dd128b0f)) +* **typo:** Fix common typo ([`42a80f0`](https://github.com/guessit-io/guessit/commit/42a80f0992387c96fc120480aaea35e4b3d9f5b8)) + ## v3.4.3 (2021-11-20) ### Fix * **setuptools:** Drop usage of test_requires and setup_requires ([#720](https://github.com/guessit-io/guessit/issues/720)) ([`324b38c`](https://github.com/guessit-io/guessit/commit/324b38ce62cd43efc51074dbd8c5e2ed64fc7573)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/README.md new/guessit-3.7.0/README.md --- old/guessit-3.5.0/README.md 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/README.md 2023-02-18 13:20:37.000000000 +0100 @@ -30,7 +30,7 @@ "type": "episode" } -More information are available at [guessit.io](http://guessit.io/). +More information is available at [guessit-io.github.io/guessit](https://guessit-io.github.io/guessit). Support ------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/__version__.py new/guessit-3.7.0/guessit/__version__.py --- old/guessit-3.5.0/guessit/__version__.py 2022-11-01 22:55:38.000000000 +0100 +++ new/guessit-3.7.0/guessit/__version__.py 2023-02-18 13:20:53.000000000 +0100 @@ -4,4 +4,4 @@ Version module """ # pragma: no cover -__version__ = '3.5.0' +__version__ = '3.7.0' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/config/options.json new/guessit-3.7.0/guessit/config/options.json --- old/guessit-3.5.0/guessit/config/options.json 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/config/options.json 2023-02-18 13:20:37.000000000 +0100 @@ -62,6 +62,7 @@ "FLAC": "Flac", "DTS": "DTS", "DTS-HD": {"regex": ["DTS-?HD", "DTS(?=-?MA)"], "conflict_solver": "lambda match, other: other if other.name == 'audio_codec' else '__default__'"}, + "DTS:X": {"string": ["DTS:X", "DTS-X", "DTSX"] }, "Dolby TrueHD": {"regex": ["True-?HD"] }, "Opus": "Opus", "Vorbis": "Vorbis", @@ -189,6 +190,7 @@ "ram", "rm", "ts", + "m2ts", "vob", "wav", "webm", @@ -241,12 +243,10 @@ "Extended": {"string": ["extended"], "regex": ["extended-?cut", "extended-?version"], "tags": ["has-neighbor", "release-group-prefix"]}, "Alternative Cut": {"regex": ["alternat(e|ive)(?:-?Cut)?"], "tags": ["has-neighbor", "release-group-prefix"]}, "Remastered": [ - {"string": "Remastered", "tags": ["has-neighbor", "release-group-prefix"]}, - {"regex": "4k-remaster(?:ed)?", "tags": ["release-group-prefix"]} + {"regex": "(?:4k.)?remaster(?:ed)?", "tags": ["release-group-prefix"]} ], "Restored": [ - {"string": "Restored", "tags": ["has-neighbor", "release-group-prefix"]}, - {"regex": "4k-restore(?:d)?", "tags": ["release-group-prefix"]} + {"regex": "(?:4k.)?restore(?:d)?", "tags": ["release-group-prefix"]} ], "Uncensored": {"string": "Uncensored", "tags": ["has-neighbor", "release-group-prefix"]}, "Uncut": {"string": "Uncut", "tags": ["has-neighbor", "release-group-prefix"]}, @@ -839,6 +839,9 @@ "Yahoo": "YHOO", "YouTube Red": "RED", "ZDF": "ZDF" + }, + "date": { + "week_words": ["week"] } } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/rules/common/date.py new/guessit-3.7.0/guessit/rules/common/date.py --- old/guessit-3.5.0/guessit/rules/common/date.py 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/rules/common/date.py 2023-02-18 13:20:37.000000000 +0100 @@ -34,6 +34,11 @@ return 1920 <= year < 2030 +def valid_week(week): + """Check if number is a valid week""" + return 1 <= week < 53 + + def _is_int(string): """ Check if the input string is an integer diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/rules/common/expected.py new/guessit-3.7.0/guessit/rules/common/expected.py --- old/guessit-3.5.0/guessit/rules/common/expected.py 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/rules/common/expected.py 2023-02-18 13:20:37.000000000 +0100 @@ -3,9 +3,8 @@ """ Expected property factory """ -from rebulk.remodule import re - from rebulk import Rebulk +from rebulk.remodule import re from rebulk.utils import find_all from . import dash, seps @@ -42,12 +41,13 @@ for match in matches: ret.append(match.span) else: - value = search for sep in seps: input_string = input_string.replace(sep, ' ') search = search.replace(sep, ' ') for start in find_all(input_string, search, ignore_case=True): - ret.append({'start': start, 'end': start + len(search), 'value': value}) + end = start + len(search) + value = input_string[start:end] + ret.append({'start': start, 'end': end, 'value': value}) return ret return expected diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/rules/properties/date.py new/guessit-3.7.0/guessit/rules/properties/date.py --- old/guessit-3.5.0/guessit/rules/properties/date.py 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/rules/properties/date.py 2023-02-18 13:20:37.000000000 +0100 @@ -1,13 +1,17 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- """ -date and year properties +date, week and year properties """ +import re + from rebulk import Rebulk, RemoveMatch, Rule -from ..common.date import search_date, valid_year +from ..common import dash +from ..common.date import search_date, valid_year, valid_week from ..common.pattern import is_disabled from ..common.validators import seps_surround +from ...reutils import build_or_pattern def date(config): # pylint:disable=unused-argument @@ -28,6 +32,15 @@ else '__default__', validator=lambda match: seps_surround(match) and valid_year(match.value)) + rebulk.regex(build_or_pattern(config.get('week_words')) + r"-?(\d{1,2})", + name="week", formatter=int, + children=True, + flags=re.IGNORECASE, abbreviations=[dash], + conflict_solver=lambda match, other: other + if other.name in ('episode', 'season') and len(other.raw) < len(match.raw) + else '__default__', + validator=lambda match: seps_surround(match) and valid_week(match.value)) + def date_functional(string, context): # pylint:disable=inconsistent-return-statements """ Search for date in the string and retrieves match diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/rules/properties/episodes.py new/guessit-3.7.0/guessit/rules/properties/episodes.py --- old/guessit-3.5.0/guessit/rules/properties/episodes.py 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/rules/properties/episodes.py 2023-02-18 13:20:37.000000000 +0100 @@ -68,8 +68,8 @@ if other.name in ('video_codec', 'audio_codec', 'container', 'date'): return match if (other.name == 'audio_channels' and 'weak-audio_channels' not in other.tags - and not match.initiator.children.named(match.name + 'Marker')) or ( - other.name == 'screen_size' and not int_coercable(other.raw)): + and not match.initiator.children.named(match.name + 'Marker')) or ( + other.name == 'screen_size' and not int_coercable(other.raw)): return match if other.name in ('season', 'episode') and match.initiator != other.initiator: if (match.initiator.name in ('weak_episode', 'weak_duplicate') @@ -172,7 +172,7 @@ disabled=is_season_episode_disabled) \ .defaults(tags=['SxxExx']) \ .regex(build_or_pattern(season_markers, name='seasonMarker') + r'(?P<season>\d+)@?' + - build_or_pattern(episode_markers + disc_markers, name='episodeMarker') + r'@?(?P<episode>\d+)')\ + build_or_pattern(episode_markers + disc_markers, name='episodeMarker') + r'@?(?P<episode>\d+)') \ .repeater('+') \ .regex(build_or_pattern(episode_markers + disc_markers + discrete_separators + range_separators, name='episodeSeparator', @@ -186,7 +186,7 @@ .defaults(tags=['SxxExx']) \ .regex(r'(?P<season>\d+)@?' + build_or_pattern(season_ep_markers, name='episodeMarker') + - r'@?(?P<episode>\d+)').repeater('+') \ + r'@?(?P<episode>\d+)').repeater('+') rebulk.chain(tags=['SxxExx'], validate_all=True, @@ -511,7 +511,6 @@ """ Remove separator matches and create matches for season range. """ - priority = 128 consequence = [RemoveMatch, AppendMatch] def __init__(self, range_separators, property_name): @@ -519,6 +518,9 @@ self.range_separators = range_separators self.property_name = property_name + def _can_start_range(self, match): # pylint: disable=unused-argument + return True + def when(self, matches, context): to_remove = [] to_append = [] @@ -539,7 +541,10 @@ to_remove.append(separator) previous_match = None - for next_match in matches.named(self.property_name): + sorted_matches = sorted(matches.named(self.property_name), key=lambda x: x.span[0]) + for next_match in sorted_matches: + if not previous_match and not self._can_start_range(next_match): + continue if previous_match: separator = matches.input_string[previous_match.initiator.end:next_match.initiator.start] if separator not in self.range_separators: @@ -605,15 +610,20 @@ """ Remove separator matches and create matches for episoderNumber range. """ + priority = 128 def __init__(self, range_separators): super().__init__(range_separators, "episode") + def _can_start_range(self, match): + return 'weak-episode' not in match.tags + class SeasonSeparatorRange(AbstractSeparatorRange): """ Remove separator matches and create matches for season range. """ + priority = 128 def __init__(self, range_separators): super().__init__(range_separators, "season") @@ -727,7 +737,7 @@ for filepart in matches.markers.named('path'): strong_season = matches.range(filepart.start, filepart.end, index=0, predicate=lambda m: m.name == 'season' - and not m.private and 'SxxExx' in m.tags) + and not m.private and 'SxxExx' in m.tags) if strong_season: if strong_season.initiator.children.named('episode'): for season in matches.range(strong_season.end, filepart.end, @@ -755,7 +765,7 @@ for filepart in matches.markers.named('path'): strong_episode = matches.range(filepart.start, filepart.end, index=0, predicate=lambda m: m.name == 'episode' - and not m.private and 'SxxExx' in m.tags) + and not m.private and 'SxxExx' in m.tags) if strong_episode: strong_ep_marker = RemoveInvalidEpisode.get_episode_prefix(matches, strong_episode) for episode in matches.range(strong_episode.end, filepart.end, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/rules/properties/release_group.py new/guessit-3.7.0/guessit/rules/properties/release_group.py --- old/guessit-3.5.0/guessit/rules/properties/release_group.py 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/rules/properties/release_group.py 2023-02-18 13:20:37.000000000 +0100 @@ -4,6 +4,7 @@ release_group property """ import copy +import re from rebulk import Rebulk, Rule, AppendMatch, RemoveMatch from rebulk.match import Match @@ -50,7 +51,10 @@ if string.lower().endswith(forbidden) and string[-len(forbidden) - 1:-len(forbidden)] in seps: string = string[:len(forbidden)] string = string.strip(groupname_seps) - return string.strip() + + # Release groups that credit individual members often use a format like "Title (MediaInfo Individual) [Group]". + # This results in a group name of "Individual) [Group]", which should be transformed to "Individual Group". + return re.sub(r'(.+)\)\s?\[(.+)\]', r'\1 \2', string.strip()) rebulk = Rebulk(disabled=lambda context: is_disabled(context, 'release_group')) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/test/episodes.yml new/guessit-3.7.0/guessit/test/episodes.yml --- old/guessit-3.5.0/guessit/test/episodes.yml 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/test/episodes.yml 2023-02-18 13:20:37.000000000 +0100 @@ -2340,7 +2340,7 @@ ? /11.22.63/Season 1/11.22.63.106.hdtv-abc : options: -T 11.22.63 - title: 11.22.63 + title: 11 22 63 season: 1 episode: 6 source: HDTV @@ -4672,7 +4672,7 @@ episode: 1 screen_size: 1080p streaming_service: Viki - source: Web + source: Web release_group: BLUEBERRY container: mp4 mimetype: video/mp4 @@ -4702,7 +4702,6 @@ video_codec: H.264 audio_codec: FLAC container: mkv - mimetype: video/x-matroska type: episode ? "[EveTaku] Kyouso Giga ONA v2 [540p][128BAC43].mkv" @@ -4713,7 +4712,6 @@ screen_size: 540p crc32: 128BAC43 container: mkv - mimetype: video/x-matroska type: episode ? '[Erai-raws] Fumetsu no Anata e - 03 [720p][Multiple Subtitle].mkv' @@ -4723,7 +4721,6 @@ screen_size: 720p subtitle_language: mul container: mkv - mimetype: video/x-matroska type: episode ? Mom.S06E08.Jell-O.Shots.and.the.Truth.About.Santa.1080p.AMZN.WEB-DL.DDP5.1.H.264-NTb.mkv @@ -4739,7 +4736,6 @@ video_codec: H.264 release_group: NTb container: mkv - mimetype: video/x-matroska type: episode ? Archer.2009.S12E05.Shots.720p.HULU.WEB-DL.DDP5.1.H.264-NOGRP diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/test/movies.yml new/guessit-3.7.0/guessit/test/movies.yml --- old/guessit-3.5.0/guessit/test/movies.yml 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/test/movies.yml 2023-02-18 13:20:37.000000000 +0100 @@ -1711,6 +1711,20 @@ release_group: LAZY type: movie +? The.Movie.2016.2160p.UHD.BluRay.REMUX.HDR.HEVC.DTS-X-NOGROUP +: title: The Movie + year: 2016 + screen_size: 2160p + source: Ultra HD Blu-ray + other: + - HDR10 + - Remux + video_codec: H.265 + video_profile: High Efficiency Video Coding + audio_codec: DTS:X + release_group: NOGROUP + type: movie + ? Test (2013) [WEBDL-1080p] [x264 AC3] [ENG+RU+PT] [NTb].mkv : title: Test year: 2013 @@ -1857,5 +1871,4 @@ video_codec: H.264 release_group: DON container: mkv - mimetype: video/x-matroska type: movie diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/test/rules/audio_codec.yml new/guessit-3.7.0/guessit/test/rules/audio_codec.yml --- old/guessit-3.5.0/guessit/test/rules/audio_codec.yml 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/test/rules/audio_codec.yml 2023-02-18 13:20:37.000000000 +0100 @@ -120,6 +120,11 @@ : audio_codec: DTS audio_profile: Extended Surround +? DTS:X +? DTS-X +? DTSX +: audio_codec: DTS:X + ? DD-EX ? DDEX ? -EX diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/test/rules/edition.yml new/guessit-3.7.0/guessit/test/rules/edition.yml --- old/guessit-3.5.0/guessit/test/rules/edition.yml 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/test/rules/edition.yml 2023-02-18 13:20:37.000000000 +0100 @@ -31,6 +31,22 @@ ? Super Movie Alternative Cut XViD : edition: Alternative Cut +? Remaster +? Remastered +? 4k-Remaster +? 4k-Remastered +? 4k Remaster +? 4k Remastered +: edition: Remastered + +? Restore +? Restored +? 4k-Restore +? 4k-Restored +? 4k Restore +? 4k Restored +: edition: Restored + ? ddc : edition: Director's Definitive Cut diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/test/rules/episodes.yml new/guessit-3.7.0/guessit/test/rules/episodes.yml --- old/guessit-3.5.0/guessit/test/rules/episodes.yml 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/test/rules/episodes.yml 2023-02-18 13:20:37.000000000 +0100 @@ -293,7 +293,7 @@ ? Something 4x05-06 ? Something-4x05-06 : options: -T something - title: something + title: Something season: 4 episode: - 5 @@ -329,3 +329,15 @@ year: 2010 season: 2010 episode: 2 + +? Show Name - S32-Dummy 45-Ep 6478 +: title: Show Name + episode_title: Dummy 45 + season: 32 + episode: 6478 + +? Show Name - S32-Week 45-Ep 6478 +: title: Show Name + season: 32 + week: 45 + episode: 6478 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit/test/rules/release_group.yml new/guessit-3.7.0/guessit/test/rules/release_group.yml --- old/guessit-3.5.0/guessit/test/rules/release_group.yml 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/guessit/test/rules/release_group.yml 2023-02-18 13:20:37.000000000 +0100 @@ -69,3 +69,12 @@ : title: Show Name video_codec: H.264 release_group: RiPRG + +? Archer (2009) S13E01 The Big Con (1080p AMZN Webrip x265 10bit EAC3 5.1 - JBENT)[TAoE] +: release_group: JBENT TAoE + +? Dark Phoenix (2019) (1080p BluRay x265 HEVC 10bit AAC 7.1 Tigole) [QxR] +: release_group: Tigole QxR + +? The Peripheral (2022) Season 1 S01 (1080p AMZN WEB-DL x265 HEVC 10bit DDP5.1 D0ct0rLew) [SEV] +: release_group: D0ct0rLew SEV \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit.egg-info/PKG-INFO new/guessit-3.7.0/guessit.egg-info/PKG-INFO --- old/guessit-3.5.0/guessit.egg-info/PKG-INFO 2022-11-01 22:55:39.000000000 +0100 +++ new/guessit-3.7.0/guessit.egg-info/PKG-INFO 2023-02-18 13:20:53.000000000 +0100 @@ -1,12 +1,12 @@ Metadata-Version: 2.1 Name: guessit -Version: 3.5.0 +Version: 3.7.0 Summary: GuessIt - a library for guessing information from video filenames. -Home-page: https://guessit.io +Home-page: https://guessit-io.github.io/guessit Author: Rémi Alvergnat Author-email: toilal....@gmail.com License: LGPLv3 -Download-URL: https://pypi.python.org/packages/source/g/guessit/guessit-3.5.0.tar.gz +Download-URL: https://pypi.python.org/packages/source/g/guessit/guessit-3.7.0.tar.gz Keywords: python library release parser name filename movies series episodes animes Platform: UNKNOWN Classifier: Development Status :: 5 - Production/Stable @@ -59,7 +59,7 @@ "type": "episode" } -More information are available at [guessit.io](http://guessit.io/). +More information is available at [guessit-io.github.io/guessit](https://guessit-io.github.io/guessit). Support ------- @@ -79,6 +79,18 @@ <!--next-version-placeholder--> +## v3.6.0 (2023-02-18) +### Feature +* **audio_codec:** Detect "DTS:X" (closes #728) ([`2bdd8f5`](https://github.com/guessit-io/guessit/commit/2bdd8f568a0fa6c5eb97e1f29d5e4d488d86a2aa)) + +## v3.5.0 (2022-11-01) +### Feature +* **dependencies:** Drop Python 3.6 support ([`47f5718`](https://github.com/guessit-io/guessit/commit/47f57184a9d0a25c1b415638d0b003dad88ce607)) + +### Fix +* **audio_codec:** Detect "E-AC-3" and "AC-3" ([`72dc12e`](https://github.com/guessit-io/guessit/commit/72dc12e2489d240839a216041ffe47e9dd128b0f)) +* **typo:** Fix common typo ([`42a80f0`](https://github.com/guessit-io/guessit/commit/42a80f0992387c96fc120480aaea35e4b3d9f5b8)) + ## v3.4.3 (2021-11-20) ### Fix * **setuptools:** Drop usage of test_requires and setup_requires ([#720](https://github.com/guessit-io/guessit/issues/720)) ([`324b38c`](https://github.com/guessit-io/guessit/commit/324b38ce62cd43efc51074dbd8c5e2ed64fc7573)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/guessit.egg-info/requires.txt new/guessit-3.7.0/guessit.egg-info/requires.txt --- old/guessit-3.5.0/guessit.egg-info/requires.txt 2022-11-01 22:55:39.000000000 +0100 +++ new/guessit-3.7.0/guessit.egg-info/requires.txt 2023-02-18 13:20:53.000000000 +0100 @@ -1,4 +1,4 @@ -rebulk>=3.1.0 +rebulk>=3.2.0 babelfish>=0.6.0 python-dateutil diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/mkdocs.yml new/guessit-3.7.0/mkdocs.yml --- old/guessit-3.5.0/mkdocs.yml 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/mkdocs.yml 2023-02-18 13:20:37.000000000 +0100 @@ -1,6 +1,6 @@ site_name: GuessIt -site_url: https://guessit.io +site_url: https://guessit-io.github.io/guessit site_description: GuessIt is a python library that extracts as much information as possible from a video filename. site_author: Rémi Alvergnat <toilal....@gmail.com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/pylintrc new/guessit-3.7.0/pylintrc --- old/guessit-3.5.0/pylintrc 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/pylintrc 2023-02-18 13:20:37.000000000 +0100 @@ -307,8 +307,8 @@ [EXCEPTIONS] # Exceptions that will emit a warning when caught. -overgeneral-exceptions=BaseException, - Exception +overgeneral-exceptions=builtins.BaseException, + builtins.Exception [FORMAT] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/setup.py new/guessit-3.7.0/setup.py --- old/guessit-3.5.0/setup.py 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/setup.py 2023-02-18 13:20:37.000000000 +0100 @@ -15,7 +15,7 @@ with io.open(os.path.join(here, 'CHANGELOG.md'), encoding='utf-8') as f: changelog = f.read() -install_requires = ['rebulk>=3.1.0', 'babelfish>=0.6.0', 'python-dateutil', 'importlib-resources;python_version<"3.9"'] +install_requires = ['rebulk>=3.2.0', 'babelfish>=0.6.0', 'python-dateutil', 'importlib-resources;python_version<"3.9"'] dev_require = ['tox', 'mkdocs', 'mkdocs-material', 'pyinstaller', 'python-semantic-release'] @@ -54,7 +54,7 @@ keywords='python library release parser name filename movies series episodes animes', author='Rémi Alvergnat', author_email='toilal....@gmail.com', - url='https://guessit.io', + url='https://guessit-io.github.io/guessit', download_url='https://pypi.python.org/packages/source/g/guessit/guessit-%s.tar.gz' % version, license='LGPLv3', packages=find_packages(), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/guessit-3.5.0/tox.ini new/guessit-3.7.0/tox.ini --- old/guessit-3.5.0/tox.ini 2022-11-01 22:55:17.000000000 +0100 +++ new/guessit-3.7.0/tox.ini 2023-02-18 13:20:37.000000000 +0100 @@ -1,5 +1,5 @@ [tox] -envlist = py37,py38,py39,py310,py311,pypy3 +envlist = py37,py38,py39,py310,py311,pypy3.8,pypy3.9 [testenv] commands =