Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-croniter for openSUSE:Factory checked in at 2021-10-18 21:59:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-croniter (Old) and /work/SRC/openSUSE:Factory/.python-croniter.new.1890 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-croniter" Mon Oct 18 21:59:06 2021 rev:18 rq:925755 version:1.0.15 Changes: -------- --- /work/SRC/openSUSE:Factory/python-croniter/python-croniter.changes 2021-06-19 23:03:36.823724364 +0200 +++ /work/SRC/openSUSE:Factory/.python-croniter.new.1890/python-croniter.changes 2021-10-18 22:01:55.962082309 +0200 @@ -1,0 +2,7 @@ +Sat Oct 16 21:06:49 UTC 2021 - Dirk M??ller <dmuel...@suse.com> + +- update to 1.0.15: + * restore py2 + * better type checks + +------------------------------------------------------------------- Old: ---- croniter-1.0.13.tar.gz New: ---- croniter-1.0.15.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-croniter.spec ++++++ --- /var/tmp/diff_new_pack.zjFIUY/_old 2021-10-18 22:01:56.466082674 +0200 +++ /var/tmp/diff_new_pack.zjFIUY/_new 2021-10-18 22:01:56.466082674 +0200 @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-croniter -Version: 1.0.13 +Version: 1.0.15 Release: 0 Summary: Python iterators for datetime objects with cron-like format License: MIT ++++++ croniter-1.0.13.tar.gz -> croniter-1.0.15.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/croniter-1.0.13/PKG-INFO new/croniter-1.0.15/PKG-INFO --- old/croniter-1.0.13/PKG-INFO 2021-05-06 11:13:11.300265600 +0200 +++ new/croniter-1.0.15/PKG-INFO 2021-06-25 10:17:39.104149800 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: croniter -Version: 1.0.13 +Version: 1.0.15 Summary: croniter provides iteration for datetime object with cron like format Home-page: http://github.com/kiorky/croniter Author: Matsumoto Taichi, kiorky @@ -295,6 +295,18 @@ Changelog ============== + 1.0.15 (2021-06-25) + ------------------- + + - restore py2 [kiorky] + + + 1.0.14 (2021-06-25) + ------------------- + + - better type checks [kiorky] + + 1.0.13 (2021-05-06) ------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/croniter-1.0.13/docs/CHANGES.rst new/croniter-1.0.15/docs/CHANGES.rst --- old/croniter-1.0.13/docs/CHANGES.rst 2021-05-06 11:13:10.000000000 +0200 +++ new/croniter-1.0.15/docs/CHANGES.rst 2021-06-25 10:17:38.000000000 +0200 @@ -1,6 +1,18 @@ Changelog ============== +1.0.15 (2021-06-25) +------------------- + +- restore py2 [kiorky] + + +1.0.14 (2021-06-25) +------------------- + +- better type checks [kiorky] + + 1.0.13 (2021-05-06) ------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/croniter-1.0.13/setup.py new/croniter-1.0.15/setup.py --- old/croniter-1.0.13/setup.py 2021-05-06 11:13:10.000000000 +0200 +++ new/croniter-1.0.15/setup.py 2021-06-25 10:17:38.000000000 +0200 @@ -1,11 +1,12 @@ # -*- coding: utf-8 -*- +import io import os from setuptools import setup, find_packages def read(*rnames): - return open( - os.path.join('.', *rnames) + return io.open( + os.path.join('.', *rnames), encoding="utf-8" ).read() install_requires = [ @@ -23,7 +24,7 @@ setup( name='croniter', - version='1.0.13', + version='1.0.15', py_modules=['croniter', ], description=( 'croniter provides iteration for datetime ' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/croniter-1.0.13/src/croniter/__init__.py new/croniter-1.0.15/src/croniter/__init__.py --- old/croniter-1.0.13/src/croniter/__init__.py 2021-05-06 11:13:10.000000000 +0200 +++ new/croniter-1.0.15/src/croniter/__init__.py 2021-06-25 10:17:38.000000000 +0200 @@ -3,6 +3,7 @@ from .croniter import ( croniter, croniter_range, + CroniterBadTypeRangeError, # noqa CroniterBadDateError, # noqa CroniterBadCronError, # noqa CroniterNotAlphaError, # noqa diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/croniter-1.0.13/src/croniter/croniter.py new/croniter-1.0.15/src/croniter/croniter.py --- old/croniter-1.0.13/src/croniter/croniter.py 2021-05-06 11:13:10.000000000 +0200 +++ new/croniter-1.0.15/src/croniter/croniter.py 2021-06-25 10:17:38.000000000 +0200 @@ -48,6 +48,10 @@ pass +class CroniterBadTypeRangeError(TypeError): + """.""" + + class CroniterBadCronError(CroniterError): """ Syntax, unknown value, or range error within a cron expression """ pass @@ -795,9 +799,15 @@ """ _croniter = _croniter or croniter auto_rt = datetime.datetime - if type(start) != type(stop): - raise TypeError("The start and stop must be same type. {0} != {1}". - format(type(start), type(stop))) + # type is used in first if branch for perfs reasons + if ( + type(start) != type(stop) and not ( + isinstance(start, type(stop)) or + isinstance(stop, type(start))) + ): + raise CroniterBadTypeRangeError( + "The start and stop must be same type. {0} != {1}". + format(type(start), type(stop))) if isinstance(start, (float, int)): start, stop = (datetime.datetime.utcfromtimestamp(t) for t in (start, stop)) auto_rt = float diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/croniter-1.0.13/src/croniter/tests/test_croniter_range.py new/croniter-1.0.15/src/croniter/tests/test_croniter_range.py --- old/croniter-1.0.13/src/croniter/tests/test_croniter_range.py 2021-05-06 11:13:10.000000000 +0200 +++ new/croniter-1.0.15/src/croniter/tests/test_croniter_range.py 2021-06-25 10:17:38.000000000 +0200 @@ -4,10 +4,14 @@ import unittest from datetime import datetime, timedelta import pytz -from croniter import croniter, croniter_range, CroniterBadDateError, CroniterBadCronError +from croniter import croniter, croniter_range, CroniterBadDateError, CroniterBadCronError, CroniterBadTypeRangeError from croniter.tests import base +class mydatetime(datetime): + """.""" + + class CroniterRangeTest(base.TestCase): def test_1day_step(self): @@ -148,6 +152,14 @@ i = croniter_range(datetime(2020, 1, 1), datetime(2020, 12, 31), cron, _croniter=croniter_nosec) next(i) + def test_dt_types(self): + start = mydatetime(2020, 9, 24) + stop = datetime(2020, 9, 28) + try: + list(croniter_range(start, stop, '0 0 * * *')) + except CroniterBadTypeRangeError: + self.fail('should not be triggered') + if __name__ == '__main__': unittest.main() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/croniter-1.0.13/src/croniter.egg-info/PKG-INFO new/croniter-1.0.15/src/croniter.egg-info/PKG-INFO --- old/croniter-1.0.13/src/croniter.egg-info/PKG-INFO 2021-05-06 11:13:11.000000000 +0200 +++ new/croniter-1.0.15/src/croniter.egg-info/PKG-INFO 2021-06-25 10:17:38.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: croniter -Version: 1.0.13 +Version: 1.0.15 Summary: croniter provides iteration for datetime object with cron like format Home-page: http://github.com/kiorky/croniter Author: Matsumoto Taichi, kiorky @@ -295,6 +295,18 @@ Changelog ============== + 1.0.15 (2021-06-25) + ------------------- + + - restore py2 [kiorky] + + + 1.0.14 (2021-06-25) + ------------------- + + - better type checks [kiorky] + + 1.0.13 (2021-05-06) -------------------