Hello community,

here is the log from the commit of package python-icalendar for 
openSUSE:Factory checked in at 2020-11-26 23:15:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-icalendar (Old)
 and      /work/SRC/openSUSE:Factory/.python-icalendar.new.5913 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-icalendar"

Thu Nov 26 23:15:19 2020 rev:30 rq:850949 version:4.0.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-icalendar/python-icalendar.changes        
2020-06-10 00:45:35.570510916 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-icalendar.new.5913/python-icalendar.changes  
    2020-11-26 23:16:12.777075763 +0100
@@ -1,0 +2,6 @@
+Thu Nov 26 09:27:55 UTC 2020 - Dirk Mueller <dmuel...@suse.com>
+
+- update to 4.0.7:
+  - fixed rrule handling, re-enabled test_create_america_new_york 
+
+-------------------------------------------------------------------

Old:
----
  icalendar-4.0.6.tar.gz

New:
----
  icalendar-4.0.7.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-icalendar.spec ++++++
--- /var/tmp/diff_new_pack.IsWOTY/_old  2020-11-26 23:16:13.621076419 +0100
+++ /var/tmp/diff_new_pack.IsWOTY/_new  2020-11-26 23:16:13.625076422 +0100
@@ -21,7 +21,7 @@
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %define        modname icalendar
 Name:           python-%{modname}
-Version:        4.0.6
+Version:        4.0.7
 Release:        0
 Summary:        Python parser/generator of iCalendar files package
 License:        BSD-2-Clause

++++++ icalendar-4.0.6.tar.gz -> icalendar-4.0.7.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/icalendar-4.0.6/CHANGES.rst 
new/icalendar-4.0.7/CHANGES.rst
--- old/icalendar-4.0.6/CHANGES.rst     2020-05-06 23:01:23.000000000 +0200
+++ new/icalendar-4.0.7/CHANGES.rst     2020-09-07 13:08:41.000000000 +0200
@@ -1,6 +1,14 @@
 Changelog
 =========
 
+4.0.7 (2020-09-07)
+------------------
+
+Bug fixes:
+
+- fixed rrule handling, re-enabled test_create_america_new_york()
+
+
 4.0.6 (2020-05-06)
 ------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/icalendar-4.0.6/PKG-INFO new/icalendar-4.0.7/PKG-INFO
--- old/icalendar-4.0.6/PKG-INFO        2020-05-06 23:01:24.000000000 +0200
+++ new/icalendar-4.0.7/PKG-INFO        2020-09-07 13:08:42.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: icalendar
-Version: 4.0.6
+Version: 4.0.7
 Summary: iCalendar parser/generator
 Home-page: https://github.com/collective/icalendar
 Author: Plone Foundation
@@ -69,6 +69,14 @@
         Changelog
         =========
         
+        4.0.7 (2020-09-07)
+        ------------------
+        
+        Bug fixes:
+        
+        - fixed rrule handling, re-enabled test_create_america_new_york()
+        
+        
         4.0.6 (2020-05-06)
         ------------------
         
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/icalendar-4.0.6/src/icalendar/__init__.py 
new/icalendar-4.0.7/src/icalendar/__init__.py
--- old/icalendar-4.0.6/src/icalendar/__init__.py       2020-05-06 
23:01:23.000000000 +0200
+++ new/icalendar-4.0.7/src/icalendar/__init__.py       2020-09-07 
13:08:41.000000000 +0200
@@ -1,5 +1,5 @@
 # -*- coding: utf-8 -*-
-__version__ = '4.0.6'
+__version__ = '4.0.7'
 
 from icalendar.cal import (
     Calendar,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/icalendar-4.0.6/src/icalendar/cal.py 
new/icalendar-4.0.7/src/icalendar/cal.py
--- old/icalendar-4.0.6/src/icalendar/cal.py    2020-05-06 23:01:23.000000000 
+0200
+++ new/icalendar-4.0.7/src/icalendar/cal.py    2020-09-07 13:08:41.000000000 
+0200
@@ -17,7 +17,7 @@
 from icalendar.timezone_cache import _timezone_cache
 
 import pytz
-import dateutil.rrule
+import dateutil.rrule, dateutil.tz
 from pytz.tzinfo import DstTzInfo
 
 from icalendar.compat import unicode_type
@@ -536,15 +536,23 @@
 
         # expand recurrences
         if 'RRULE' in component:
+            # to be paranoid about correct weekdays
+            # evaluate the rrule with the current offset
+            tzi = dateutil.tz.tzoffset ("(offsetfrom)", offsetfrom)
+            rrstart = dtstart.replace (tzinfo=tzi)
+
             rrulestr = component['RRULE'].to_ical().decode('utf-8')
-            rrule = dateutil.rrule.rrulestr(rrulestr, dtstart=dtstart)
+            rrule = dateutil.rrule.rrulestr(rrulestr, dtstart=rrstart)
             if not {'UNTIL', 'COUNT'}.intersection(component['RRULE'].keys()):
                 # pytz.timezones don't know any transition dates after 2038
                 # either
-                rrule._until = datetime(2038, 12, 31)
-            elif 'UNTIL' in component['RRULE'] and rrule._until.tzinfo:
-                rrule._until = rrule._until.replace(tzinfo=None)
-            transtimes = rrule
+                rrule._until = datetime(2038, 12, 31, tzinfo=pytz.UTC)
+
+            # constructing the pytz-timezone requires UTC transition times.
+            # here we construct local times without tzinfo, the offset to UTC
+            # gets subtracted in to_tz().
+            transtimes = [dt.replace (tzinfo=None) for dt in rrule]
+
         # or rdates
         elif 'RDATE' in component:
             if not isinstance(component['RDATE'], list):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icalendar-4.0.6/src/icalendar/tests/test_timezoned.py 
new/icalendar-4.0.7/src/icalendar/tests/test_timezoned.py
--- old/icalendar-4.0.6/src/icalendar/tests/test_timezoned.py   2020-05-06 
23:01:23.000000000 +0200
+++ new/icalendar-4.0.7/src/icalendar/tests/test_timezoned.py   2020-09-07 
13:08:41.000000000 +0200
@@ -149,14 +149,9 @@
 
 class TestTimezoneCreation(unittest.TestCase):
 
-    @unittest.expectedFailure
     def test_create_america_new_york(self):
         """testing America/New_York, the most complex example from the
         RFC"""
-        # FIXME
-        # This currently fails because of mixed naive and timezone
-        # aware datetimes in dtstart and until which breaks
-        # dateutil recurrence.
 
         directory = os.path.dirname(__file__)
         with open(os.path.join(directory, 'america_new_york.ics'), 'rb') as fp:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/icalendar-4.0.6/src/icalendar.egg-info/PKG-INFO 
new/icalendar-4.0.7/src/icalendar.egg-info/PKG-INFO
--- old/icalendar-4.0.6/src/icalendar.egg-info/PKG-INFO 2020-05-06 
23:01:24.000000000 +0200
+++ new/icalendar-4.0.7/src/icalendar.egg-info/PKG-INFO 2020-09-07 
13:08:42.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: icalendar
-Version: 4.0.6
+Version: 4.0.7
 Summary: iCalendar parser/generator
 Home-page: https://github.com/collective/icalendar
 Author: Plone Foundation
@@ -69,6 +69,14 @@
         Changelog
         =========
         
+        4.0.7 (2020-09-07)
+        ------------------
+        
+        Bug fixes:
+        
+        - fixed rrule handling, re-enabled test_create_america_new_york()
+        
+        
         4.0.6 (2020-05-06)
         ------------------
         
_______________________________________________
openSUSE Commits mailing list -- commit@lists.opensuse.org
To unsubscribe, email commit-le...@lists.opensuse.org
List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette
List Archives: 
https://lists.opensuse.org/archives/list/commit@lists.opensuse.org

Reply via email to