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?
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.
On Thu, Mar 27, 2008 at 9:46 PM, Jacob Kaplan-Moss
<jacob.kaplanm...@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.
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?
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.
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:
> 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.
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.
On Fri, Mar 28, 2008 at 2:35 PM, mrts <m...@mrts.pri.ee> wrote:
> 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>
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!
On Mar 28, 10:32 pm, "Brian Armstrong" <cptm...@gmail.com> wrote:
> 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.
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!
On Fri, Mar 28, 2008 at 5:25 PM, mrts <m...@mrts.pri.ee> wrote:
> 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!
On Mar 27, 2:46 pm, "Jacob Kaplan-Moss" <jacob.kaplanm...@gmail.com>
wrote:
> 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.
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.