Stephen Burrows [Sat, 27 Aug 2011 23:39:53 +0000 (16:39 -0700)]
Removed philo.models.Tag entry from the docs.
Stephen Burrows [Sat, 27 Aug 2011 23:38:48 +0000 (16:38 -0700)]
Incremented version number to 0.9.1rc and cleaned up README a tiny bit.
Stephen Burrows [Sat, 27 Aug 2011 23:04:50 +0000 (16:04 -0700)]
Merge branch 'taggit' into develop
Conflicts:
philo/admin/widgets.py
philo/contrib/penfield/admin.py
Stephen Burrows [Fri, 26 Aug 2011 01:10:43 +0000 (18:10 -0700)]
Merge branch 'optimization' into develop
Stephen Burrows [Fri, 22 Jul 2011 15:03:22 +0000 (11:03 -0400)]
Tweaked AttributeMapper._fill_cache to also store values on the Attribute instance itself. Made everything about AttributeMapper._fill_cache lazier.
Stephen Burrows [Thu, 21 Jul 2011 20:39:28 +0000 (16:39 -0400)]
Lazy-eval the values of AttributeValues instead of loading them all during AttributeMapper._fill_cache.
Stephen Burrows [Thu, 21 Jul 2011 18:27:16 +0000 (14:27 -0400)]
Removed Node.render_to_response select_related call since it is not clearly more efficient. Delayed page evaluation in FeedView.page_view to the end of the inner function.
Stephen Burrows [Wed, 20 Jul 2011 03:40:59 +0000 (23:40 -0400)]
Added a 'contributing' page to the philo docs. This is meant primarily as an initial effort, which can be expanded upon more later.
Stephen Burrows [Tue, 19 Jul 2011 03:45:43 +0000 (23:45 -0400)]
Corrections to Blog.entry_tags to use taggit APIs. Tweaks to penfield migration 0005 because of South issue 428 (and some incorrect filters obscured by that issue.)
Stephen Burrows [Fri, 15 Jul 2011 19:32:46 +0000 (15:32 -0400)]
Minor correction to EmbedWidget.js to handle window names with dashes.
Stephen Burrows [Fri, 15 Jul 2011 19:24:10 +0000 (15:24 -0400)]
Overrides TemplateField widget on admin container forms instead of on the ModelAdmin.
Stephen Burrows [Fri, 15 Jul 2011 19:08:23 +0000 (15:08 -0400)]
Reverted TemplateField parent to models.TextField and moved EmbedWidget into philo.admin.widgets. Added EmbedWidget use on the appropriate ModelAdmins. Cleaned up ContentletAdmin and ContentReferenceAdmin.
Stephen Burrows [Fri, 15 Jul 2011 18:44:59 +0000 (14:44 -0400)]
Removed TagCreation.js and the admin widget that used it.
Stephen Burrows [Mon, 11 Jul 2011 16:15:11 +0000 (12:15 -0400)]
Added django-taggit extra requirement to setup.py.
Stephen Burrows [Mon, 11 Jul 2011 15:28:43 +0000 (11:28 -0400)]
Removed oberlin references.
Stephen Burrows [Mon, 11 Jul 2011 15:26:41 +0000 (11:26 -0400)]
Merge branch 'hotfix/oberlin_references' into taggit
Stephen Burrows [Mon, 11 Jul 2011 15:18:56 +0000 (11:18 -0400)]
Removed references to oberlin-specific models.
Stephen Burrows [Mon, 11 Jul 2011 15:13:44 +0000 (11:13 -0400)]
Initial philo commit to use django-taggit instead of native tags.
Stephen Burrows [Sun, 10 Jul 2011 19:27:15 +0000 (15:27 -0400)]
Merge remote-tracking branch 'ithinksw/develop' into develop
Joseph Spiros [Fri, 8 Jul 2011 22:13:18 +0000 (18:13 -0400)]
Merge branch 'embed-widget' of git://github.com/lapilofu/philo into develop
* 'embed-widget' of git://github.com/lapilofu/philo:
Updated the grappelli styles to override the default styles.
Updated styles to work in the original admin. Updated the javascript to overload the dismissAddAnotherPopup function as well.
Made the embed widget javascript work by overloading the dismissRelatedLookupPopup function.
Made the embed widget automatically generate URLs based on the ADMIN_URL global, which is provided by Grappelli. Unfortunately, this introduces a dependency on Grappelli. I'll return to this branch at a later date when my thinking is clearer.
Initial work on a widget for TemplateFields that allows javascript selection of an object to embed.
Stephen Burrows [Wed, 6 Jul 2011 20:05:53 +0000 (16:05 -0400)]
Moved to a more flexible BlogView method arrangement which leverages the general presence of the results of get_object to better provide certain functionality.
Harris Lapiroff [Wed, 6 Jul 2011 18:50:33 +0000 (14:50 -0400)]
Updated the grappelli styles to override the default styles.
Harris Lapiroff [Wed, 6 Jul 2011 18:40:29 +0000 (14:40 -0400)]
Updated styles to work in the original admin. Updated the javascript to overload the dismissAddAnotherPopup function as well.
Harris Lapiroff [Wed, 6 Jul 2011 18:09:50 +0000 (14:09 -0400)]
Made the embed widget javascript work by overloading the dismissRelatedLookupPopup function.
Joseph Spiros [Wed, 29 Jun 2011 11:17:55 +0000 (07:17 -0400)]
Merge branch 'develop' of git://github.com/melinath/philo into develop
* 'develop' of git://github.com/melinath/philo:
Added ordering to NavigationItemInline and removed the extra form a) because it's unnecessary, and b) to avoid grappelli issue #337.
Added memoization to TargetURLModel.get_target_url.
Removed unnecessary foreign key evaluations from MultiView subclass urlpatterns and get_reverse_params().
Cleaned up shipherd docs.
Added philo-root reversal caching to Node.construct_url.
Pre-fetching the contentreference content may have been premature optimization. Switched to a simple fetch, as it seems to run slightly faster.
Minor correction to ContainerContext.get_references().
Moved caching of contentlets/contentreferences so that (for example) a page with only contentlets will not fetch content references. Set up content references to pre-fetch all related pieces of content to save queries.
Removed template container discovery in favor of (potentially) larger queries.
Moved container finding code into philo/utils/templates, along with template utils from philo/utils. Moved initial container fetching code for container template tags from ContainerContext.__init__ to ContainerNode.get_container_content and cleaned things up a little.
Removed automatic interpretation of contentlets as templates as per issue #168.
Tweaked the FeedView API slightly to pass the object from get_object into the get_items callback. This allows for FeedViews that do not have FK relationships to the object.
A fair amount of effort is wasted getting container content. Initial commit of a branch to fix that. There's a large speedup on container fetching, but the container detection algorithm is prohibitively slow. Should be sped up or bypassed.
Added link generation example, and fixed a typo.
Note about context processor in Shipherd tutorial.
Joseph Spiros [Wed, 29 Jun 2011 11:17:40 +0000 (07:17 -0400)]
Merge branch 'master' of git://github.com/lapilofu/philo into develop
* 'master' of git://github.com/lapilofu/philo:
Small correction to a bug that was raising an error on the account_required method of AccountMultiView in instances where no manage_account_page is specified. 'node' should be instead 'request.node'.
Stephen Burrows [Tue, 28 Jun 2011 19:22:10 +0000 (15:22 -0400)]
Added ordering to NavigationItemInline and removed the extra form a) because it's unnecessary, and b) to avoid grappelli issue #337.
Harris Lapiroff [Tue, 28 Jun 2011 14:28:03 +0000 (10:28 -0400)]
Small correction to a bug that was raising an error on the account_required method of AccountMultiView in instances where no manage_account_page is specified. 'node' should be instead 'request.node'.
Stephen Burrows [Tue, 28 Jun 2011 16:05:20 +0000 (12:05 -0400)]
Added memoization to TargetURLModel.get_target_url.
Stephen Burrows [Tue, 28 Jun 2011 14:46:05 +0000 (10:46 -0400)]
Removed unnecessary foreign key evaluations from MultiView subclass urlpatterns and get_reverse_params().
Stephen Burrows [Mon, 27 Jun 2011 20:42:53 +0000 (16:42 -0400)]
Merge git://github.com/derega/philo into develop. Merged derega's nav example changes into templatetag docstring as well.
Conflicts:
docs/tutorials/shipherd.rst
Stephen Burrows [Mon, 27 Jun 2011 20:36:56 +0000 (16:36 -0400)]
Cleaned up shipherd docs.
Stephen Burrows [Mon, 27 Jun 2011 20:36:38 +0000 (16:36 -0400)]
Added philo-root reversal caching to Node.construct_url.
Stephen Burrows [Mon, 27 Jun 2011 18:38:52 +0000 (14:38 -0400)]
Pre-fetching the contentreference content may have been premature optimization. Switched to a simple fetch, as it seems to run slightly faster.
Stephen Burrows [Mon, 27 Jun 2011 18:14:16 +0000 (14:14 -0400)]
Minor correction to ContainerContext.get_references().
Stephen Burrows [Mon, 27 Jun 2011 18:09:22 +0000 (14:09 -0400)]
Merge branch 'fast_containers' into develop
Stephen Burrows [Mon, 27 Jun 2011 17:52:44 +0000 (13:52 -0400)]
Moved caching of contentlets/contentreferences so that (for example) a page with only contentlets will not fetch content references. Set up content references to pre-fetch all related pieces of content to save queries.
Stephen Burrows [Mon, 27 Jun 2011 16:27:02 +0000 (12:27 -0400)]
Removed template container discovery in favor of (potentially) larger queries.
Stephen Burrows [Mon, 27 Jun 2011 15:23:28 +0000 (11:23 -0400)]
Moved container finding code into philo/utils/templates, along with template utils from philo/utils. Moved initial container fetching code for container template tags from ContainerContext.__init__ to ContainerNode.get_container_content and cleaned things up a little.
Stephen Burrows [Mon, 27 Jun 2011 14:11:50 +0000 (10:11 -0400)]
Merge branch 'develop' into fast_containers
Conflicts:
philo/templatetags/containers.py
Stephen Burrows [Sun, 26 Jun 2011 18:29:28 +0000 (14:29 -0400)]
Removed automatic interpretation of contentlets as templates as per issue #168.
Stephen Burrows [Sun, 26 Jun 2011 15:55:54 +0000 (11:55 -0400)]
Tweaked the FeedView API slightly to pass the object from get_object into the get_items callback. This allows for FeedViews that do not have FK relationships to the object.
Joseph Spiros [Sat, 25 Jun 2011 02:41:43 +0000 (22:41 -0400)]
Merge branch 'develop' of git://github.com/melinath/philo into develop
* 'develop' of git://github.com/melinath/philo:
Added catch to NavigationManager.get_for_node for cases where items do not have a target node.
Added a local cache to NavigationMapper - avoids some unpickling costs.
Tweaked NavigationItem.is_active to better leverage the caching.
Generalized the 'single step' case in TreeEntity.get_path to include the case where the root is the direct parent of the current instance.
Forced path memoization prior to node caching for better performance.
Added django cache backend use on top of cacheless shipherd.
Corrections to has_navigation and navigation_host to use the new NavigationMapper correctly. Also added select_related calls to the NavigationManager.get_for_node method.
Removed shipherd cache to see if it was really helping at all.
Removed extraneous evaluations of TreeEntity.parent.
Set handles_subpath to be a class method rather than trying to resolve the url based on instance data. Added a select_related depth of 1 to a node's view when trying to render it.
Corrected a feed_patterns call in NewsletterView.urlpatterns.
Minor optimization: only call patterns at the end of winer.FeedView.feed_patterns.
Minor optimization to AttributeForm. Very slightly reduces the number of queries in the admin for Entities.
Added memoization (optional but enabled by default) to TreeEntity.get_path.
Eliminated (Generic)ForeignKey evaluations in shipherd's NavigationManager.update_cache_for, Node.accepts_subpath, and templatetages.nodes.NodeURLNode.render.
Corrections to frozen models in migration 18 so that south knows what happened in 15-17.
Eliminated unnecessary ContentType queries that used applabel/model-based lookups.
Eliminated unnecessary ContentType queries from AttributeMapper._fill_cache.
Stephen Burrows [Fri, 24 Jun 2011 21:13:27 +0000 (17:13 -0400)]
Merge branch 'optimization' into develop
Stephen Burrows [Fri, 24 Jun 2011 21:13:00 +0000 (17:13 -0400)]
A fair amount of effort is wasted getting container content. Initial commit of a branch to fix that. There's a large speedup on container fetching, but the container detection algorithm is prohibitively slow. Should be sped up or bypassed.
Stephen Burrows [Fri, 24 Jun 2011 19:21:27 +0000 (15:21 -0400)]
Added catch to NavigationManager.get_for_node for cases where items do not have a target node.
Stephen Burrows [Fri, 24 Jun 2011 18:40:13 +0000 (14:40 -0400)]
Merge branch 'better_cache' into optimization
Stephen Burrows [Fri, 24 Jun 2011 18:39:58 +0000 (14:39 -0400)]
Added a local cache to NavigationMapper - avoids some unpickling costs.
Stephen Burrows [Fri, 24 Jun 2011 18:11:12 +0000 (14:11 -0400)]
Tweaked NavigationItem.is_active to better leverage the caching.
Stephen Burrows [Fri, 24 Jun 2011 17:09:56 +0000 (13:09 -0400)]
Merge branch 'optimization' into better_cache
Stephen Burrows [Fri, 24 Jun 2011 17:09:33 +0000 (13:09 -0400)]
Generalized the 'single step' case in TreeEntity.get_path to include the case where the root is the direct parent of the current instance.
Stephen Burrows [Fri, 24 Jun 2011 16:42:38 +0000 (12:42 -0400)]
Forced path memoization prior to node caching for better performance.
Stephen Burrows [Fri, 24 Jun 2011 15:30:47 +0000 (11:30 -0400)]
Added django cache backend use on top of cacheless shipherd.
Stephen Burrows [Fri, 24 Jun 2011 14:18:19 +0000 (10:18 -0400)]
Corrections to has_navigation and navigation_host to use the new NavigationMapper correctly. Also added select_related calls to the NavigationManager.get_for_node method.
Stephen Burrows [Thu, 23 Jun 2011 21:04:14 +0000 (17:04 -0400)]
Removed shipherd cache to see if it was really helping at all.
Stephen Burrows [Thu, 23 Jun 2011 19:22:48 +0000 (15:22 -0400)]
Removed extraneous evaluations of TreeEntity.parent.
Stephen Burrows [Thu, 23 Jun 2011 16:36:28 +0000 (12:36 -0400)]
Merge remote-tracking branch 'ithinksw/develop' into develop
Stephen Burrows [Wed, 22 Jun 2011 21:06:10 +0000 (17:06 -0400)]
Set handles_subpath to be a class method rather than trying to resolve the url based on instance data. Added a select_related depth of 1 to a node's view when trying to render it.
Stephen Burrows [Wed, 22 Jun 2011 20:04:53 +0000 (16:04 -0400)]
Corrected a feed_patterns call in NewsletterView.urlpatterns.
Stephen Burrows [Wed, 22 Jun 2011 20:02:22 +0000 (16:02 -0400)]
Minor optimization: only call patterns at the end of winer.FeedView.feed_patterns.
Stephen Burrows [Wed, 22 Jun 2011 17:11:23 +0000 (13:11 -0400)]
Minor optimization to AttributeForm. Very slightly reduces the number of queries in the admin for Entities.
Joseph Spiros [Wed, 22 Jun 2011 17:07:51 +0000 (13:07 -0400)]
Merge branch 'develop' of git://github.com/melinath/philo into develop
* 'develop' of git://github.com/melinath/philo:
Added winer doc file. Improved the docstrings for FeedView from the penfield version.
Renamed syndication to winer.
Added information about request context processor to shipherd docs. See issue #160.
Minor correction to shipherd howto.
Moved a migration after the master migrations.
Tweaked FeedView to more correctly generate links vs feed urls.
Improved penfield docstrings. Added urlpatterns and support for all registered feed types. Resolves issue #141.
Initial implementation of a separate syndication contrib app based on penfield's FeedView, updated to use a registry instead of a dict.
Moved sobol's search registry into core as a generic registry utility. Added support for RegistryIterators directly to SlugMultipleChoiceField since it is a common use case.
Made views optional on nodes; nodes without views will raise a 404 when rendering and will return False for accepting and handling subpaths. Implements feature #131.
Stephen Burrows [Wed, 22 Jun 2011 16:30:25 +0000 (12:30 -0400)]
Added memoization (optional but enabled by default) to TreeEntity.get_path.
Stephen Burrows [Wed, 22 Jun 2011 15:48:31 +0000 (11:48 -0400)]
Eliminated (Generic)ForeignKey evaluations in shipherd's NavigationManager.update_cache_for, Node.accepts_subpath, and templatetages.nodes.NodeURLNode.render.
Stephen Burrows [Wed, 22 Jun 2011 14:24:43 +0000 (10:24 -0400)]
Corrections to frozen models in migration 18 so that south knows what happened in 15-17.
Stephen Burrows [Wed, 22 Jun 2011 14:12:25 +0000 (10:12 -0400)]
Eliminated unnecessary ContentType queries that used applabel/model-based lookups.
Stephen Burrows [Wed, 22 Jun 2011 13:54:41 +0000 (09:54 -0400)]
Eliminated unnecessary ContentType queries from AttributeMapper._fill_cache.
Stephen Burrows [Wed, 22 Jun 2011 02:12:22 +0000 (22:12 -0400)]
Merge branch 'syndication' into develop
Stephen Burrows [Wed, 22 Jun 2011 02:10:04 +0000 (22:10 -0400)]
Added winer doc file. Improved the docstrings for FeedView from the penfield version.
Stephen Burrows [Tue, 21 Jun 2011 22:38:28 +0000 (18:38 -0400)]
Merge branch 'develop' into syndication
Stephen Burrows [Tue, 21 Jun 2011 22:38:08 +0000 (18:38 -0400)]
Renamed syndication to winer.
Ilkka Hakkari [Sat, 18 Jun 2011 18:23:40 +0000 (11:23 -0700)]
Added link generation example, and fixed a typo.
Ilkka Hakkari [Sat, 18 Jun 2011 18:10:35 +0000 (11:10 -0700)]
Note about context processor in Shipherd tutorial.
Stephen Burrows [Wed, 15 Jun 2011 21:55:14 +0000 (17:55 -0400)]
Merge branch '0.9.X' into develop
Stephen Burrows [Wed, 15 Jun 2011 21:50:22 +0000 (17:50 -0400)]
Added information about request context processor to shipherd docs. See issue #160.
Stephen Burrows [Wed, 15 Jun 2011 13:51:28 +0000 (09:51 -0400)]
Minor correction to shipherd howto.
Joseph Spiros [Wed, 15 Jun 2011 10:05:04 +0000 (06:05 -0400)]
Fixing setup.py to reference README instead of README.markdown as otherwise sdist installations will fail.
Joseph Spiros [Wed, 15 Jun 2011 09:19:38 +0000 (05:19 -0400)]
Merge branch 'master' of git://github.com/melinath/philo
* 'master' of git://github.com/melinath/philo:
Last-minute tweaks to the tutorials based on user input.
Stephen Burrows [Tue, 14 Jun 2011 23:24:09 +0000 (19:24 -0400)]
Merge branch 'master' into develop
Stephen Burrows [Tue, 14 Jun 2011 23:24:01 +0000 (19:24 -0400)]
Last-minute tweaks to the tutorials based on user input.
Joseph Spiros [Tue, 14 Jun 2011 11:06:46 +0000 (07:06 -0400)]
Updated links to the "project website" and made the READMEs consistent with the docs.
Joseph Spiros [Tue, 14 Jun 2011 10:44:45 +0000 (06:44 -0400)]
Updated version and made a slight change to bring the two READMEs in sync.
Joseph Spiros [Tue, 14 Jun 2011 10:32:11 +0000 (06:32 -0400)]
Merge branch 'master' of git://github.com/melinath/philo
* 'master' of git://github.com/melinath/philo:
Added docs for the Http404/Http500 handling that philo does. Resolves issue #156. Added status codes to the responses for that handling.
Hotfix correction of SOBOL_USE_CACHE setting fetching.
Stephen Burrows [Mon, 13 Jun 2011 22:40:22 +0000 (18:40 -0400)]
Added docs for the Http404/Http500 handling that philo does. Resolves issue #156. Added status codes to the responses for that handling.
Harris Lapiroff [Mon, 13 Jun 2011 18:40:06 +0000 (14:40 -0400)]
Made the embed widget automatically generate URLs based on the ADMIN_URL global, which is provided by Grappelli. Unfortunately, this introduces a dependency on Grappelli. I'll return to this branch at a later date when my thinking is clearer.
Harris Lapiroff [Fri, 10 Jun 2011 20:25:56 +0000 (16:25 -0400)]
Initial work on a widget for TemplateFields that allows javascript selection of an object to embed.
Stephen Burrows [Fri, 10 Jun 2011 19:03:33 +0000 (15:03 -0400)]
Merge branch 'sobol_use_cache_hotfix' into develop
Stephen Burrows [Fri, 10 Jun 2011 19:03:07 +0000 (15:03 -0400)]
Merge branch 'sobol_use_cache_hotfix' into release
Stephen Burrows [Fri, 10 Jun 2011 18:59:50 +0000 (14:59 -0400)]
Hotfix correction of SOBOL_USE_CACHE setting fetching.
Stephen Burrows [Fri, 10 Jun 2011 18:52:48 +0000 (14:52 -0400)]
Merge branch 'release' into develop
Conflicts:
philo/contrib/sobol/models.py
philo/contrib/sobol/search.py
Joseph Spiros [Fri, 10 Jun 2011 18:25:26 +0000 (14:25 -0400)]
Merge branch 'master' of git://github.com/melinath/philo
* 'master' of git://github.com/melinath/philo:
Removed results action from SearchAdmin. Added support for vanilla django result viewing.
Refactored BaseSearch/Result to use templates to render the title and content entries in the Result's context. Removed rendered results from the ajax API. Added favored result support to _list for ajax and non-ajax versions.
Clarified sobol Search framework - now automatically finds result templates at "sobol/search/<slug>/result.html" and supports the notion of link 'content'. Search.get_result_url and Search.more_results_url actually return urls. Improved grappelli admin integration for Search model instances.
Added docs for result list template. Moved success/error handling into hooks on sobol. Added slug to JSON response dict. Added script suppression option to _list.html.
Removed json version of results from the ajax API. Improved checks for search existence. Added default search list template and a static js file for the ajax api.
Added a 'how are we different' section to the 'what is philo' page.
Adjusted sobol cache usage to make an entry for every string/search combination or not use the cache at all. This is a more correct way of handling things, and anyone worried about too many cache entries from sobol can just increase the size of their cache. Also, sobol now caches search instances rather than just results - searches like GoogleSearch can now persist non-result state acquired with the results.
Stephen Burrows [Fri, 10 Jun 2011 17:52:10 +0000 (13:52 -0400)]
Removed results action from SearchAdmin. Added support for vanilla django result viewing.
Stephen Burrows [Fri, 10 Jun 2011 17:24:42 +0000 (13:24 -0400)]
Refactored BaseSearch/Result to use templates to render the title and content entries in the Result's context. Removed rendered results from the ajax API. Added favored result support to _list for ajax and non-ajax versions.
Stephen Burrows [Thu, 9 Jun 2011 21:20:50 +0000 (17:20 -0400)]
Clarified sobol Search framework - now automatically finds result templates at "sobol/search/<slug>/result.html" and supports the notion of link 'content'. Search.get_result_url and Search.more_results_url actually return urls. Improved grappelli admin integration for Search model instances.
Stephen Burrows [Thu, 9 Jun 2011 17:16:56 +0000 (13:16 -0400)]
Added docs for result list template. Moved success/error handling into hooks on sobol. Added slug to JSON response dict. Added script suppression option to _list.html.
Stephen Burrows [Wed, 8 Jun 2011 21:31:27 +0000 (17:31 -0400)]
Removed json version of results from the ajax API. Improved checks for search existence. Added default search list template and a static js file for the ajax api.
Stephen Burrows [Wed, 8 Jun 2011 03:05:20 +0000 (23:05 -0400)]
Added a 'how are we different' section to the 'what is philo' page.
Stephen Burrows [Tue, 7 Jun 2011 21:05:02 +0000 (17:05 -0400)]
Adjusted sobol cache usage to make an entry for every string/search combination or not use the cache at all. This is a more correct way of handling things, and anyone worried about too many cache entries from sobol can just increase the size of their cache. Also, sobol now caches search instances rather than just results - searches like GoogleSearch can now persist non-result state acquired with the results.
Joseph Spiros [Tue, 7 Jun 2011 19:55:58 +0000 (15:55 -0400)]
Merge branch 'master' of git://github.com/melinath/philo
* 'master' of git://github.com/melinath/philo:
Added scheduled posting of blog entries and newsletter articles. Implements feature #153.
Added Content-Disposition header to File's response - keeps the name of the file separate from the node's slug. Further resolves issue #136.
Added name field to File for easier finding in the database. Added automatic mimetype generation for users who don't understand what that means. ;-) Resolves (partially) issue #136.
Added AttributeMapper caching to entity.attributes, since anyone who really needs no caching can clear the cache manually. Switched _populate to _fill on all AttributeMappers. Resolves feature #73.
Stephen Burrows [Tue, 7 Jun 2011 17:09:21 +0000 (13:09 -0400)]
Moved a migration after the master migrations.