20111026

Release & upgrade in Eupen

Released /releases/2011/1026 and upgrade in Eupen from 2056:b7dcbc73707e to 2057:3d185f19e083:

pulling from https://lino.googlecode.com/hg/
searching for changes
adding changesets
adding manifests
adding file changes
added 24 changesets with 360 changes to 183 files
178 files updated, 0 files merged, 0 files removed, 0 files unresolved

The data migration lino.apps.dsbe.migrate.migrate_from_1_2_3() is less complex this time. the following generated code in the dpy dump caused a traceback when owner_type_id was None:

def create_cal_task(id, user_id, created, modified, owner_type_id, owner_id, …):
owner_type_id = ContentType.objects.get_for_model(owner_type_id).pk return cal_Task(id=id,user_id=user_id,…)

After release 1.2.4

It is almost working. But the end users get the following error message in their JavaScript console:

Uncaught TypeError: Object #<HTMLAppletElement> has no method 'open'

ryanhowdy had a similar problem in April 2010. But that thread doesn’t seem to help us.

Maybe the problem is related to the two “notes” that appear when compiling?

javac  davlink/DavLink.java
Note: davlink\DavLink.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

Indeed, compiling with -Xlint tells us more:

javac -Xlint:unchecked davlink/DavLink.java
davlink\DavLink.java:161: warning: [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
            docTypes.put(ext,t);
                        ^
davlink\DavLink.java:172: warning: [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
            launchers.put(fileName,l);
                         ^
2 warnings

Richard’s Ramblings gives the explanation. So I added type checking to DavLink by replacing

Hashtable docTypes = new Hashtable();
Hashtable launchers = new Hashtable();

by

Hashtable<String,DocType> docTypes = new Hashtable<String,DocType>();
Hashtable<String,Launcher> launchers = new Hashtable<String,Launcher>();

But that’s not the problem. It probably has to do with the security profily of end users. Nicolas will work on it.

Check-in 20111026b

Tasks, Events and reminders

  • removed fields alarm_value, alarm_unit and dt_alarm from lino.modlib.cal.models.Component (i.e. tables cal.Task and cal.Event) Lino does not actually do what caldav calls an “alarm”. Tasks are to be displayed as long as they are not done.
  • lino.utils.choicelists.ChoiceList has a new feature: the list items (BabelChoice instances) have a __get__´ method that looks for a class method of that name and return it (after having it curried with self). Usage example is :meth:`lino.modlib.cal.utils.DurationUnit.add_duration.

Miscellaneous

  • lino.modlib.jobs.models.Functions : added column_names to have mandatory field sector at the beginning.
  • AttributeError “‘Candidature’ object has no attribute ‘contract’” at /api/jobs/ContractsSituationReport. Fixed.
  • The test suite has been tidied up.

Check-in 20111026c

New model CourseOffer

Check-in 20111026d Released /releases/2011/1026b