TextIndexingAbstractionLayer and FullHistory branches for GSoC

1 view
Skip to first unread message

Ben Firshman

unread,
Mar 27, 2008, 3:26:22 PM3/27/08
to django-d...@googlegroups.com
http://code.djangoproject.com/wiki/TextIndexingAbstractionLayer
http://code.djangoproject.com/wiki/FullHistory

I see both were on the GSoC list for last year, but neither have been
touched in a year. On this list, the last mentions of both branches
were a while back too, and nothing conclusive seems to have been
mentioned.

What's the status on both of them? Do they still need to be finished?
Do you think they would be good GSoC projects?

Thanks

Ben

Jacob Kaplan-Moss

unread,
Mar 27, 2008, 3:46:33 PM3/27/08
to django-d...@googlegroups.com
On Thu, Mar 27, 2008 at 2:26 PM, Ben Firshman <b...@firshman.co.uk> wrote:
> What's the status on both of them? Do they still need to be finished?

They are both defunct.

> Do you think they would be good GSoC projects?

Starting from those branches? No. The state-of-the-art has moved on,
and we've gotten wiser about how we maintain open projects. Search,
for example, has a couple of third-party apps out there; working on
any of 'em would make a good proposal. Full history isn't actually all
that much work; look for Marty's AuditTrail (on the wiki) and you can
see he's 80% of the way there in a few hundred LOC. Still, the last
20% is enough work that a project making AuditTrail into a bonafide
extension might be good.

Jacob

Vsevolod Solovyov

unread,
Mar 27, 2008, 3:54:36 PM3/27/08
to django-d...@googlegroups.com
On Thu, Mar 27, 2008 at 9:46 PM, Jacob Kaplan-Moss
<jacob.ka...@gmail.com> wrote:

> > Do you think they would be good GSoC projects?
> Starting from those branches? No. The state-of-the-art has moved on,
> and we've gotten wiser about how we maintain open projects. Search,
> for example, has a couple of third-party apps out there; working on
> any of 'em would make a good proposal.

I wrote some time ago full history application (it stores even m2m
relations). Its code needs to be organized properly, it's still miss
documentation, testing, maybe some API changes. I've thought to make
it as GSoC project after Ben's mail.

--
Vsevolod Solovyov

Ben Firshman

unread,
Mar 27, 2008, 6:55:08 PM3/27/08
to django-d...@googlegroups.com

On 27 Mar 2008, at 19:46, Jacob Kaplan-Moss wrote:
>
> Starting from those branches? No. The state-of-the-art has moved on,
> and we've gotten wiser about how we maintain open projects. Search,
> for example, has a couple of third-party apps out there; working on
> any of 'em would make a good proposal. Full history isn't actually all
> that much work; look for Marty's AuditTrail (on the wiki) and you can
> see he's 80% of the way there in a few hundred LOC. Still, the last
> 20% is enough work that a project making AuditTrail into a bonafide
> extension might be good.

So are you saying I should submit neither as a GSoC project?

From last year, I see much work was done on packaging Django apps ( http://code.google.com/p/django-reusableapps/
, http://code.google.com/p/django-package/ ), but was there any ever
progress with the application repository? Is this still desired? Maybe
I should just give in and pick a project from the '08 ideas list. ;)

As an aside, I have so far come across 3 dead branches, shouldn't they
be removed?

Ben

Ben Firshman

unread,
Mar 27, 2008, 7:00:25 PM3/27/08
to django-d...@googlegroups.com

On 27 Mar 2008, at 19:46, Jacob Kaplan-Moss wrote:
> Still, the last
> 20% is enough work that a project making AuditTrail into a bonafide
> extension might be good.

Sorry, skipped over your last sentence before I sent the last message!
I will investigate AuditTrail some more...

Ben

Brian Armstrong

unread,
Mar 27, 2008, 10:56:58 PM3/27/08
to django-d...@googlegroups.com
Ben, I'd like to hijack, I hope you don't mind

I'm also trying to get a good GSoC project to submit. If I understand
right, even though a lot of commonly-used modules like registration
and search have third-party apps out there, a few of them might still
be fair game to try to implement in Django? I had something like that
in mind but I wasn't sure if add-ons are in the right scope.

Thanks,
Brian

mrts

unread,
Mar 28, 2008, 3:35:42 PM3/28/08
to Django developers
In my humble opinion a search abrastraction app bundled in
django.contrib is a really high priority and has suitable scope for a
SoC project. Qouting James http://www.djangosnippets.org/about/faq/:

"Why isn't there a search system?
Because no-one's yet written a good generic search system for Django.
When somebody does, I'll look into adding it."

If even James doesn't want the trouble of integrating search, you can
imagine the predicament of Django novices :).

The search system should be "generic" enough to support both full-text
search features of different databases and various indexing backends.

What I would like to see as a Django user, is something in the lines
of the following (this is just from the top of my head, feel free to
improve the spec):

models.py:

from django.contrib import search

class Foo(models.Model)
foo = models.TextField()
bar = models.CharField()
baz = models.TextField()
def get_absolute_url(self):
...

class FooSearch(search.ModelSearch):
fields = ('foo', 'bar')

search.register(Foo, FooSearch)

views.py:
from django.contrib.search import search_all, search_model
from models import Foo

# search for matches in all models that define searchable_fields
def search_all(request):
query = request.GET["q"]
return render_to_response("search.html", { 'results' :
search_all(query) })

# search for matches in a particular model that defines
searchable_fields
def search_foo(request):
query = request.GET["q"]
return render_to_response("search.html", { 'results' :
search_model(Foo, query) })

search.html:
<ul>
{% for result in results %}
<li><a href="{{ result.get_absolute_url }}">{{ result }}</a></li>
{% endfor %}
</ul>

Best,
Mart Sõmermaa

On Mar 27, 9:46 pm, "Jacob Kaplan-Moss" <jacob.kaplanm...@gmail.com>
wrote:

Brian Armstrong

unread,
Mar 28, 2008, 4:32:02 PM3/28/08
to django-d...@googlegroups.com
Interesting. I wasn't sure if it'd be valid since I believe in 2006
Search was a GSoC idea. I guess I assumed it wasn't going to be
considered since it has been 2 years since and it's not on the list
any more, but I did realize of course it doesn't exist. :D

I think I will likely take your reply into consideration when
applying. Hopefully the mentors feel the same way, this looks like a
very fun project to work on.

--Brian

mrts

unread,
Mar 28, 2008, 6:25:35 PM3/28/08
to Django developers
Though search is of primary importance, object history is obviously
very important as well -- both auditing (Audit Log pattern) and
rolling back/comparing changes (Temporal Object pattern) are very
common use cases (see Martin Fowler's treatment of these and some
other patterns for things that change with time at
http://martinfowler.com/ap2/timeNarrative.html ). It's nice that Marty
has worked on it, but as Jacob said, it needs finishing. Audit Log,
Temporal Object and Temporal Property patterns should be implemented
and it should be possible to activate any combination of these. And
there needs to be an intuitive way to access the snapshots.
Considering its general applicability it should perhaps also be
integrated in django.contrib.

P.S. s/abrastraction/abstraction/ in my previous post... what a
bastardly word!

Brian Armstrong

unread,
Mar 30, 2008, 3:46:51 PM3/30/08
to django-d...@googlegroups.com
Thanks for that info :) That looks very interesting. I wonder if
combining all three notions into one project is going to fit within
the time constraints of one summer, especially when you include things
like getting MtM fields working and testing. I think I'm going to
definitely run with it, though. Thanks again!

Brian

Joseph Kocherhans

unread,
Mar 30, 2008, 10:17:28 PM3/30/08
to Django developers


On Mar 27, 2:46 pm, "Jacob Kaplan-Moss" <jacob.kaplanm...@gmail.com>
wrote:
So this is kinda of late, and the deadline is coming up soon, but if
someone wants to add some new full text search backends to
djangosearch [1], I'll try to mentor you if you put together a good
proposal. :) Feel free to mail me off-list if you have any questions.

Joseph

[1] http://code.google.com/p/djangosearch/

Reply all
Reply to author
Forward
0 new messages