Hello,

The official coding period has started a week ago, therefore I guess a
progress report is in order.

As far as changes to the proposal are concerned, it seems there aren't
any. There haven't been any objections or other suggestions to improve
the proposal, other than the updatable primary key part, which is very
unlikely to happen as part of this project anyway (and was proposed as
such as well). That means I'll try to stick to the original plan as
outlined in my proposal [1].

Initially I had big plans to start a bit earlier in order to get a
head start, unfortunately, I only managed to pass my final exam last
Thursday, which means I spent most of this week revising. Luckily, I
had enough good sense while laying out my timeline not to put too much
work into the first week.

This week's goal was to port the basic virtual field functionality,
especially make most of the required changes in Model._meta. I think I
have most of this ready, though I had to modify GenericForeignKey and
GenericRelation a bit (since they are both handled as virtual fields,
although each in a different way) and I stumbled upon a couple of
unexpected complications with the handling of GenericRelation in joins
and cascading deletes.

I'm confident I should be able to sort these out tomorrow.

I also wrote some docs on the updated API of ForeignKey I have
planned. I'll also document the changes themselves in the release
notes as soon as I figure out what exactly is going to change and in
what way.

The code is accessible in a new branch of my github repo [2].

The plan for the next week is to begin porting the ForeignKey
refactor. Since this is easily the most extensive change that is a
part of this project, it is going to take more than a single week,
especially considering how the implementation of related fields has
changed since I first did the refactor. Anyway, the timeline takes
this into account, so let's hope my estimates weren't too optimistic.

That's it for this week's status report, have a great day.

Michal


[1] https://gist.github.com/koniiiik/5408673
[2] https://github.com/koniiiik/django/tree/soc2013/foreignkey-refactor

Attachment: signature.asc
Description: Digital signature

Reply via email to