Notices


Reply
Thread Tools
Posts: 91 | Thanked: 22 times | Joined on Apr 2010 @ Germany
#431
Just a big THANKS from me.
Now I can tell my Girlfriend about all my events and she can use Google Calendar to remind me of them.
 
Posts: 14 | Thanked: 7 times | Joined on Jan 2010 @ New York City
#432
Originally Posted by lorelei View Post
Hmmm, there's already the support for repeated events (or recurring events) synchronization, unless we are speaking of two different things?

thanks
Hmmm. Maybe I'm running an older version (since I deactivated the devel repository after installing erminig). I am running version 0.2.11 and it only synchronizes the first occurrence of a repeat event and then ignores the rest.

More specifically, I have an event on Google calendar that repeats every two weeks until December starting mid June. Erminig only syncs the first occurrence of the event in June and ignores the repeats every two weeks.

So, is there something I am doing wrong?

Thanks.
 
Posts: 479 | Thanked: 641 times | Joined on Dec 2007 @ Switzerland
#433
Originally Posted by Vishwacorp View Post
Hmmm. Maybe I'm running an older version (since I deactivated the devel repository after installing erminig). I am running version 0.2.11 and it only synchronizes the first occurrence of a repeat event and then ignores the rest.

More specifically, I have an event on Google calendar that repeats every two weeks until December starting mid June. Erminig only syncs the first occurrence of the event in June and ignores the repeats every two weeks.

So, is there something I am doing wrong?

Thanks.
Hmmm, that case should be covered in version 0.2.11. I will investigate what's going on. Could you have a look at the log window to see if Erminig complains about that event?
 
Posts: 14 | Thanked: 7 times | Joined on Jan 2010 @ New York City
#434
Originally Posted by lorelei View Post
Hmmm, that case should be covered in version 0.2.11. I will investigate what's going on. Could you have a look at the log window to see if Erminig complains about that event?
Hey. First, I uninstalled and then reinstalled the application, synchronization profile, and deleted all events from my N900 calendar before resynchronization.

The problem still persisted and I checked the log, which outputs the following.

"RequestError({'status': 400, 'body': 'Invalid recurrence data', 'reason': 'Bad Request'},)"
"RequestError({'status': 400, 'body': 'Invalid recurrence data', 'reason': 'Bad Request'},)"
"RequestError({'status': 400, 'body': 'Invalid recurrence data', 'reason': 'Bad Request'},)"
"RequestError({'status': 400, 'body': 'Invalid recurrence data', 'reason': 'Bad Request'},)"

I was curious as to why only that one event was copying so I clicked on it to check the details on my N900. I have attached a screenshot of the event on my N900 and on my Google Calendar below.

And thanks very much for your help!
Attached Images
  
 
Posts: 26 | Thanked: 36 times | Joined on Dec 2009
#435
I had a problem with the syncing in the newest version:

Code:
ValueError: unknown or illegal ISO-8601 date format: '2007-09-13T12:30:00'
So I had a look around in the file, and I changed line 89 of iso8601.py to read

Code:
__tzd_re = "(?P<tzd>[-+](?P<tzdhours>\d\d)(?::?(<tzdminutes>\d\d))|Z)?"
That is, I added a ? at the very end of the expression, making the entire thing optional (since the date in the exception doesn't have timezone info)

This allowed erminig to run an entire sync cycle without throwing an exception and stopping, This might not be the right thing as those fields are now just nones in the match object, but it might be part of a correct fix,

If you would prefer I rapport this elsewhere I shall off course do that.

And finally a thank you for a great application.
 

The Following User Says Thank You to Pengman For This Useful Post:
Posts: 479 | Thanked: 641 times | Joined on Dec 2007 @ Switzerland
#436
@Pengman: thanks for the fix. I will look if I should integrate it as it is, or if I should take another path for that problem. That iso8601.py file has not been written by myself, but it's rather part of a package, that I had to hard-include in Erminig due to dependencies issues, so this is the reason why I'm not too enthusiast in changing it, but would rather prefer doing it directly in Erminig itself.
 
Posts: 26 | Thanked: 36 times | Joined on Dec 2009
#437
Originally Posted by lorelei View Post
That iso8601.py file has not been written by myself, ... would rather prefer doing it directly in Erminig itself.
That makes sense. It was just a simple hackjob that worked for me. I'm sure you can find a better solution that fits with the rest of your code.
 
Posts: 22 | Thanked: 5 times | Joined on May 2010 @ Slovenia
#438
I think I found another bug. Can't really say what has happened, I didn't do anything special in the calendar, so apparently some strange event came within the sync period, but I can't find out, which. I've deleted and recreated a few stranger looking, but apparently not the right one, because I keep getting this.

Lorelei, is it possible to implement "skip" in case of such failures? Erminig tells me the error is probably not fatal, but then it forces me to quit, so I can't sync any other event in the calendar. I think it would be better if the bug was reported, then the sync would continue with the next event in the same calendar, thus syncing as many events as possible.

Also, is this the correct bug tracker for Erminig? Is it active, do I use it next time to post bugs?

Regards,
Gasper

Traceback:
Code:
Traceback (most recent call last):
  File "/usr/bin/erminig", line 80, sync_profile(widget=<gtk.ToolButton object at 0x40cee530 (GtkToolButton at 0x4c7168)>, data=<hildon.StackableWindow object at 0x40cecaf8 (HildonStackableWindow at 0x457060)>)
      if selected_id:
        do_profile_sync(selected_id, data)
  variables: {'data': ('local', <hildon.StackableWindow object at 0x40cecaf8 (HildonStackableWindow at 0x457060)>), 'selected_id': ('local', 15), 'do_profile_sync': ('global', <function do_profile_sync at 0x40d19230>)}
  File "/usr/bin/erminig", line 125, do_profile_sync(id=15, data=<hildon.StackableWindow object at 0x40cecaf8 (HildonStackableWindow at 0x457060)>)
            profile['remoteSource'], \
            profile['lastUpdate'], progress)
  variables: {'profile': ('local', {'lastUpdate': 1278047225, 'direction': 0, 'lastLocalUpdate': 1278047226, 'remoteSourceTitle': u'moje!', 'remoteAccountId': 1, 'enabled': 1, 'localSource': u'1', 'remoteSource': u'gasper.kozak@gmail.com', 'localSourceTitle': u'N900', 'id': 15}), 'progress': ('local', <gtk.ProgressBar object at 0x40cf1da0 (GtkProgressBar at 0x4dd0d0)>)}
  File "/usr/share/erminig/erminig_core.py", line 504, syncFromGoogle(pid=15, localSource=u'1', remoteSource=u'gasper.kozak@gmail.com', lastSync=1278047225, progress=<gtk.ProgressBar object at 0x40cf1da0 (GtkProgressBar at 0x4dd0d0)>)
      getNewEventsFromGoogle(pid, int(localSource), remoteSource, lastSync, \
          progress)
  variables: {'progress': ('local', <gtk.ProgressBar object at 0x40cf1da0 (GtkProgressBar at 0x4dd0d0)>)}
  File "/usr/share/erminig/erminig_core.py", line 265, getNewEventsFromGoogle(pid=15, localSource=1, remoteSource=u'gasper.kozak@gmail.com', lastSync=1278047225, progress=<gtk.ProgressBar object at 0x40cf1da0 (GtkProgressBar at 0x4dd0d0)>)
        else:
          insertGoogleEventLocally(event, int(localSource), pid)
  variables: {'int': ('builtin', <type 'int'>), 'localSource': ('local', 1), 'pid': ('local', 15), 'event': ('local', <Event.Event instance at 0x40ec4148>), 'insertGoogleEventLocally': ('global', <function insertGoogleEventLocally at 0x40c3e9b0>)}
  File "/usr/share/erminig/erminig_core.py", line 89, insertGoogleEventLocally(event=<Event.Event instance at 0x40ec4148>, cid=1, pid=15)
      if localID:  
        updateGoogleEventLocally(event, cid, localID)
      else:
  variables: {'updateGoogleEventLocally': ('global', <function updateGoogleEventLocally at 0x40c3e9f0>), 'localID': ('local', u'1998'), 'event': ('local', <Event.Event instance at 0x40ec4148>), 'cid': ('local', 1)}
  File "/usr/share/erminig/erminig_core.py", line 98, updateGoogleEventLocally(event=<Event.Event instance at 0x40ec4148>, cid=1, localID=u'1998')
      # XXX Check for failed updates!
      cwrapper.updateLocalEvent(cid, event, localID)
  variables: {'cwrapper.updateLocalEvent': ('global', <function updateLocalEvent at 0x4089ae70>), 'localID': ('local', u'1998'), 'event': ('local', <Event.Event instance at 0x40ec4148>), 'cid': ('local', 1)}
  File "/usr/share/erminig/cwrapper.py", line 97, updateLocalEvent(cid=1, evt=<Event.Event instance at 0x40ec4148>, lid=u'1998')
          evt.get_start(), evt.get_end(), evt.get_rrule(), \
          evt.get_rtype(), evt.get_until())
  variables: {'evt.get_until': ('local', <bound method Event.get_until of <Event.Event instance at 0x40ec4148>>), 'evt.get_rtype': ('local', <bound method Event.get_rtype of <Event.Event instance at 0x40ec4148>>)}
  File "/usr/share/erminig/Event.py", line 104, get_until(self=<Event.Event instance at 0x40ec4148>)
        # ??
        return int(iso8601.parse(iso_date)) + 1
  variables: {'int': ('builtin', <type 'int'>), 'iso8601.parse': ('global', <function parse at 0x40c3e3b0>), 'iso_date': ('local', '2100-12-31')}
  File "/usr/share/erminig/iso8601.py", line 24, parse(s='2100-12-31')
        gmt = __extract_date(m) + __extract_time(m) + (0, 0, 0)
        return time.mktime(gmt) + __extract_tzd(m) - time.timezone
  variables: {'time.timezone': ('global', -3600), 'time.mktime': ('global', <built-in function mktime>), 'm': ('local', <_sre.SRE_Match object at 0x40e96ad0>), '__extract_tzd': ('global', <function __extract_tzd at 0x40c3e530>), 'gmt': ('local', (2100, 12, 31, 0, 0, 0, 0, 0, 0))}
OverflowError: mktime argument out of range
 
Posts: 3 | Thanked: 1 time | Joined on May 2010
#439
Since I am considering using erminig-ng to sync my Google calendars I have a question about it.

Is this app using any encryption (e.g. https) to communicate with Google?

Also it would be nice to have a feature in erminig-ng to set a value for how far back I want to sync. Imagine if my N900 gets stolen, I wouldn't want to have a couple of years of history on it but I would want to have a couple of weeks worth of data.

Cheers
 
Posts: 18 | Thanked: 0 times | Joined on Feb 2010
#440
great piece of software !

until it will be completely stable, i liked the option to one way sync things
 
Reply

Tags
erminig, erminig-ng, ernie nig, google calendar, google sync, synchronization

Thread Tools

 
Forum Jump


All times are GMT. The time now is 10:41.