Notices


Reply
Thread Tools
Posts: 20 | Thanked: 7 times | Joined on Apr 2010
#441
I get this error a lot at the moment, can't seem to connect at all. Any idea where I might be going wrong?

Code:
Traceback (most recent call last):
  File "/usr/share/erminig/profile_ui.py", line 386, account_selector_changed(selector=<hildon.TouchSelector object at 0x40bade90 (HildonTouchSelector at 0x4bc2d8)>, user_data=0)
      current_google_account_selected = account_id
      update_remote_data_source(consts.SYNC_TYPE_CAL, account_id)
  variables: {'update_remote_data_source': ('global', <function update_remote_data_source at 0x40b40fb0>), 'account_id': ('local', 2), 'consts.SYNC_TYPE_CAL': ('global', <module 'consts' from '/usr/share/erminig/consts.py'>)}
  File "/usr/share/erminig/profile_ui.py", line 289, update_remote_data_source(sync_type=0, google_acct_id=2)
        google_item_picker.set_sensitive(True)
        for id, title in google_api.get_all_calendars():
          logger.append("ID->")
  variables: {'id': ('builtin', <built-in function id>), 'google_api.get_all_calendars': ('global', <function get_all_calendars at 0x40b408f0>), 'title': (None, None)}
  File "/usr/share/erminig/google_api.py", line 79, get_all_calendars()
      feed = run_google_action(gd_client.GetAllCalendarsFeed)
      for i,cal in enumerate(feed.entry):
        title = cal.title.text
  variables: {'i': (None, None), 'feed': ('local', None), 'enumerate': ('builtin', <type 'enumerate'>), 'cal': (None, None)}
AttributeError: 'NoneType' object has no attribute 'entry'
John

EDIT: It still seems to work on wifi connection, but not over 3G (despite the fact that I am getting 3G speeds of over 150KB/s with browsing and downloading).

EDIT 2: If an event is created in Google calendar, then changed in Google calendar (eg open and change times), then sync-ed in Erminig, then it will not appear on the phone. (is this clear?)

Last edited by jwshale; 2010-07-07 at 14:41.
 
Posts: 479 | Thanked: 641 times | Joined on Dec 2007 @ Switzerland
#442
Originally Posted by crism View Post
Is this app using any encryption (e.g. https) to communicate with Google?
it should, at least for the login part. In fact Erminig relies completely on python-gdata, so it's up to the python-gdata package to set-up proper encryption...

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.
Good point, I should add this option. I'll take into account this suggestion for the next version.
 
Posts: 11 | Thanked: 5 times | Joined on Nov 2009
#443
I noticed a bug with repeating monthly events. It's simple enough to repeat: create an event that repeats the 2nd Tuesday of each month (instead of the same day of the month each month). Erminig will crash when it attempts to sync that calendar. I've even created a new google calendar with just that single entry and created a new calendar on the n900 to sync with and the crash happened so I know it's being caused by this particular type of recurring event.

I did notice that the N900 calendar didn't seem to support this type of recurring event so maybe that's the cause of the problem?
 
dmcconachie's Avatar
Posts: 117 | Thanked: 18 times | Joined on Dec 2009 @ Edinburgh
#444
I'm getting loads of errors along the lines of

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

Whenever this happens it also seems to drop the remote source from the settings too.

As far as I can see, nothing is being synced at all.
 
Posts: 1,335 | Thanked: 3,931 times | Joined on Jul 2010 @ Brittany, France
#445
Hi there!

I'm getting an issue using Erminig on my N900. It worked fine the first time I used this great app, but now I'm getting the following error when launching it (I cannot reach the menu of Erminig):

A programming error has been detected during the execution of this program. It probably isn't fatal, but should be reported to the developers nonetheless (that's why I'm here ).

Details: Traceback (most recent call last):
File "/usr/bin/erminig", line 857, <module>()
else:
import gtk.glade
import gobject
variables: ('gtk': (None, None))
ImportError: No module named glade
What should I do? I don't know what is "glade". :/ I tried to uninstall and reinstall the application to ensure this is not a corruption problem with the /usr/bin/erminig file, but Erminig still crashes when I try to launch it.

Thanks in advance for you help.
 
Posts: 9 | Thanked: 5 times | Joined on Dec 2009
#446
I get the following traceback:

Traceback (most recent call last):
File "/usr/bin/erminig", line 153, sync_all_profiles(widget=<gtk.ToolButton object at 0x41d07a58 (GtkToolButton at 0x4c69b8)>, data=<hildon.StackableWindow object at 0x41d07030 (HildonStackableWindow at 0x456060)>)
id = i[0]
do_profile_sync(id, data)
variables: {'data': ('local', <hildon.StackableWindow object at 0x41d07030 (HildonStackableWindow at 0x456060)>), 'id': ('local', 2), 'do_profile_sync': ('global', <function do_profile_sync at 0x41d332f0>)}
File "/usr/bin/erminig", line 125, do_profile_sync(id=2, data=<hildon.StackableWindow object at 0x41d07030 (HildonStackableWindow at 0x456060)>)
profile['remoteSource'], \
profile['lastUpdate'], progress)
variables: {'profile': ('local', {'lastUpdate': 1278953736, 'direction': 0, 'lastLocalUpdate': 1278953738, 'remoteSourceTitle': u'Belgie', 'remoteAccountId': 1, 'enabled': 1, 'localSource': u'8', 'remoteSource': u'rfiu8krjre5je6t5i3kdkd3fdc@group.calendar.google .com', 'localSourceTitle': u'Belgie', 'id': 2}), 'progress': ('local', <gtk.ProgressBar object at 0x41d0a260 (GtkProgressBar at 0x4d80b0)>)}
File "/usr/share/erminig/erminig_core.py", line 495, syncFromGoogle(pid=2, localSource=u'8', remoteSource=u'rfiu8krjre5je6t5i3kdkd3fdc@group.ca lendar.google.com', lastSync=1278953736, progress=<gtk.ProgressBar object at 0x41d0a260 (GtkProgressBar at 0x4d80b0)>)
getNewEventsFromGoogle(pid, int(localSource), remoteSource, lastSync, \
progress)
variables: {'progress': ('local', <gtk.ProgressBar object at 0x41d0a260 (GtkProgressBar at 0x4d80b0)>)}
File "/usr/share/erminig/erminig_core.py", line 256, getNewEventsFromGoogle(pid=2, localSource=8, remoteSource=u'rfiu8krjre5je6t5i3kdkd3fdc@group.ca lendar.google.com', lastSync=1278953736, progress=<gtk.ProgressBar object at 0x41d0a260 (GtkProgressBar at 0x4d80b0)>)
else:
insertGoogleEventLocally(event, int(localSource), pid)
variables: {'int': ('builtin', <type 'int'>), 'localSource': ('local', 8), 'pid': ('local', 2), 'event': ('local', <Event.Event instance at 0x41ae9b70>), 'insertGoogleEventLocally': ('global', <function insertGoogleEventLocally at 0x419c2a70>)}
File "/usr/share/erminig/erminig_core.py", line 91, insertGoogleEventLocally(event=<Event.Event instance at 0x41ae9b70>, cid=8, pid=2)
if localID:
updateGoogleEventLocally(event, cid, localID)
else:
variables: {'updateGoogleEventLocally': ('global', <function updateGoogleEventLocally at 0x419c2ab0>), 'localID': ('local', u'2360'), 'event': ('local', <Event.Event instance at 0x41ae9b70>), 'cid': ('local', 8)}
File "/usr/share/erminig/erminig_core.py", line 100, updateGoogleEventLocally(event=<Event.Event instance at 0x41ae9b70>, cid=8, localID=u'2360')
# XXX Check for failed updates!
cwrapper.updateLocalEvent(cid, event, localID)
variables: {'cwrapper.updateLocalEvent': ('global', <function updateLocalEvent at 0x413f5eb0>), 'localID': ('local', u'2360'), 'event': ('local', <Event.Event instance at 0x41ae9b70>), 'cid': ('local', 8)}
File "/usr/share/erminig/cwrapper.py", line 97, updateLocalEvent(cid=8, evt=<Event.Event instance at 0x41ae9b70>, lid=u'2360')
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 0x41ae9b70>>), 'evt.get_rtype': ('local', <bound method Event.get_rtype of <Event.Event instance at 0x41ae9b70>>)}
File "/usr/share/erminig/Event.py", line 98, get_until(self=<Event.Event instance at 0x41ae9b70>)
# ??
return int(iso8601.parse(iso_date)) + 1
variables: {'int': ('builtin', <type 'int'>), 'iso8601.parse': ('global', <function parse at 0x419c24b0>), 'iso_date': ('local', '--::')}
File "/usr/share/erminig/iso8601.py", line 22, parse(s='--::')
if m is None or m.group() != s:
raise ValueError, "unknown or illegal ISO-8601 date format: " + `s`
gmt = __extract_date(m) + __extract_time(m) + (0, 0, 0)
variables: {'s': ('local', '--::'), 'ValueError': ('builtin', <type 'exceptions.ValueError'>)}
ValueError: unknown or illegal ISO-8601 date format: '--::'

Adding some prints to the code, it seems this type of recurrence rule triggers it:

DTSTART;VALUE=DATE:20090901
DTEND;VALUE=DATE:20090902
RRULE:FREQ=YEARLY;WKST=MO

THOMAS: rules ['FREQ=YEARLY', 'WKST=MO']

I'll see if I can work up a patch.

Is ermining maintained somewhere where it's easier to see the code repository, collaborate, submit patches, and get downloads ? A forum thread is a really horrible place to go look for bugs and updates...
 
Posts: 9 | Thanked: 5 times | Joined on Dec 2009
#447
Digging a little deeper, I'd like to understand the API better. Is there any API docs for libcalaccess ? I'm looking at updateLocalEvent and not finding it in these docs for example: http://maemo.org/api_refs/5.0/5.0-fi...endar-backend/
 
Posts: 53 | Thanked: 8 times | Joined on Apr 2010
#448
I've been eager to try this for a long time, but was a bit wary of installing something so early in development.

I'm about to take the plunge, is there somewhere (e.g. a wiki page) which gives instructions?

The thread is a bit unwieldy.

Thanks for all the hard work in getting it to this stage.
 
Posts: 56 | Thanked: 11 times | Joined on Jan 2010
#449
is it possible to let erminig update the calender more than once a day?

like with an interval of 1 / 2 hours?
 
Posts: 55 | Thanked: 11 times | Joined on Mar 2010
#450
A couple of things I've noticed...

It didn't delete anything (that I've noticed), and I managed to actually send my calendar to google... so thank's very much for your efforts so far!

problems...

I can't create more than 1 profile... which is annoying since I've just organised my google calendar into multiple calendars for this purpose.
Whenever I click the + button, it presents the add profile screen, but when I save it, it overwrites the first one.

The log is always empty, so I can't send you the log of what happened.

Also, what does the 1 button and 'refresh' looking buttons actually do? I pressed both anyway.

So far though.... looking very promising! If you haven't already got a lot of supporters, you will soon. Please keep ontop of this.

Edit: Just noticed that every time I edit the first (and only possible) profile, the google calendar it want's to sync with is changed to "Weather" (a google created calendar).

Last edited by Gazzlam; 2010-07-28 at 12:28. Reason: Addition
 
Reply

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

Thread Tools

 
Forum Jump


All times are GMT. The time now is 12:37.