CKAN CHANGELOG
++++++++++++++

v1.5.1 2011-01-04
=================

Major:
 * Background tasks (#1363, #1371, #1408)
 * Fix for security issue affecting CKAN v1.5 (#1585)

Minor:
 * Language support now excellent for European languages: en de fr it es no sv pl ru pt cs sr ca
 * Web UI improvements:
    * Resource editing refreshed
    * Group editing refreshed
    * Indication that group creation requires logging-in (#1004)
    * Users' pictures displayed using Gravatar (#1409)
    * 'Welcome' banner shown to new users (#1378)
    * Group package list now ordered alphabetically (#1502)
 * Allow managing a dataset's groups also via package entity API (#1381)
 * Dataset listings in API standardised (#1490)
 * Search ordering by modification and creation date (#191)
 * Account creation disallowed with Open ID (create account in CKAN first) (#1386)
 * User name can be modified (#1386)
 * Email address required for registration (for password reset) (#1319)
 * Atom feeds hidden for now
 * New config options to ease CSS insertion into the template (#1380)
 * Removed ETag browser cache headers (#1422)
 * CKAN version number and admin contact in new 'status_show' API (#1087)
 * Upgrade SQLAlchemy to 0.7.3 (#1433)
 * SOLR schema is now versioned (#1498)

Bug fixes:
 * Group ordering on main page was alphabetical but should be by size (since 1.5) (#1487)
 * Package could get added multiple times to same Group, distorting Group size (#1484)
 * Search index corruption when multiple CKAN instances on a server all storing the same object (#1430)
 * Dataset property metadata_created had wrong value (since v1.3) (#1546)
 * Tag browsing showed tags for deleted datasets (#920)
 * User name change field validation error (#1470)
 * You couldn't edit a user with a unicode email address (#1479)
 * Package search API results missed the extra fields (#1455)
 * OpenID registration disablement explained better (#1532)
 * Data upload (with ckanext-storage) failed if spaces in the filename (#1518)
 * Resource download count fixed (integration with ckanext-googleanalytics) (#1451)


v1.5 2011-11-07
===============
**Deprecated due to security issue #1585**

Major:
 * New visual theme (#1108)
    * Package & Resource edit overhaul (#1294/#1348/#1351/#1368/#1296)
    * JS and CSS reorganisation (#1282, #1349, #1380)
 * Apache Solr used for search in core instead of Postgres (#1275, #1361, #1365)
 * Authorization system now embedded in the logic layer (#1253)
 * Captcha added for user registration (#1307, #1431)
 * UI language translations refreshed (#1292, #1350, #1418)
 * Action API improved with docs now (#1315, #1302, #1371)

Minor:
 * Cross-Origin Resource Sharing (CORS) support (#1271)
 * Strings to translate into other languages tidied up (#1249)
 * Resource format autocomplete (#816)
 * Database disconnection gives better error message (#1290)
 * Log-in cookie is preserved between sessions (#78)
 * Extensions can access formalchemy forms (#1301)
 * 'Dataset' is the new name for 'Package' (#1293)
 * Resource standard fields added: type, format, size (#1324)
 * Listing users speeded up (#1268)
 * Basic data preview functionality moved to core from QA extension (#1357)
 * Admin Extension merged into core CKAN (#1264)
 * URLs in the Notes field are automatically linked (#1320)
 * Disallow OpenID for account creation (but can be linked to accounts) (#1386)
 * Tag name now validated for max length (#1418)

Bug fixes:
 * Purging of revisions didn't work (since 1.4.3) (#1258)
 * Search indexing wasn't working for SOLR (since 1.4.3) (#1256)
 * Configuration errors were being ignored (since always) (#1172)
 * Flash messages were temporarily held-back when using proxy cache (since 1.3.2) (#1321)
 * On login, user told 'welcome back' even if he's just registered (#1194)
 * Various minor exceptions cropped up (mostly since 1.4.3) (#1334, #1346)
 * Extra field couldn't be set to original value when key deleted (#1356)
 * JSONP callback parameter didn't work for the Action API (since 1.4.3) (#1437)


v1.4.3.1 2011-09-30
===================
Minor:
 * Added files to allow debian packaging of CKAN
 * Added Catalan translation

Bug fixes:
 * Incorrect Group creation form parameter caused exception (#1347)
 * Incorrect AuthGroup creation form parameter caused exception (#1346)


v1.4.3 2011-09-13
=================
Major:
  * Action API (API v3) (beta version) provides powerful RPC-style API to CKAN data (#1335)
  * Documentation overhaul (#1142, #1192)

Minor:
  * Viewing of a package at a given date (as well as revision) with improved UI (#1236)
  * Extensions can now add functions to the logic layer (#1211)
  * Refactor all remaining database code out of the controllers and into the logic layer (#1229)
  * Any OpenID log-in errors that occur are now displayed (#1228)
  * 'url' field added to search index (e9214)
  * Speed up tag reading (98d72)
  * Cope with new WebOb version 1 (#1267)
  * Avoid exceptions caused by bots hitting error page directly (#1176)
  * Too minor to mention: #1234, 

Bug fixes:
  * Re-adding tags to a package failed (since 1.4.1 in Web UI, 1.4 in API) (#1239)
  * Modified revisions retrieved over API caused exception (since 1.4.2) (#1310)
  * Whichever language you changed to, it announced "Language set to: English" (since 1.3.1) (#1082)
  * Incompatibilities with Python 2.5 (since 1.3.4.1 and maybe earlier) (#1325)
  * You could create an authorization group without a name, causing exceptions displaying it (#1323)
  * Revision list wasn't showing deleted packages (b21f4)
  * User editing error conditions handled badly (#1265)


v1.4.2 2011-08-05
=================
Major:
  * Packages revisions can be marked as 'moderated' (#1141, #1147)
  * Password reset facility (#1186/#1198)

Minor:
  * Viewing of a package at any revision (#1236)
  * API POSTs can be of Content-Type "application/json" as alternative to existing "application/x-www-form-urlencoded" (#1206)
  * Caching of static files (#1223)

Bug fixes:
  * When you removed last row of resource table, you could't add it again - since 1.0 (#1215)
  * Adding a tag to package that had it previously didn't work - since 1.4.1 in UI and 1.4.0 in API (#1239)
  * Search index was not updated if you added a package to a group - since 1.1 (#1140)
  * Exception if you had any Groups and migrated between CKAN v1.0.2 to v1.2 (migration 29) - since v1.0.2 (#1205)
  * API Package edit requests returned the Package in a different format to usual - since 1.4 (#1214)
  * API error responses were not all JSON format and didn't have correct Content-Type (#1214)
  * API package delete doesn't require a Content-Length header (#1214)


v1.4.1 2011-06-27
=================
Major:
  * Refactor Web interface to use logic layer rather than model objects directly. Forms now defined in navl schema and designed in HTML template. Forms use of Formalchemy is deprecated. (#1078)

Minor:
  * Links in user-supplied text made less attractive to spammers (nofollow) #1181 
  * Package change notifications - remove duplicates (#1149)
  * Metadata dump linked to (#1169)
  * Refactor authorization code to be common across Package, Group and Authorization Group (#1074)

Bug fixes
  * Duplicate authorization roles were difficult to delete (#1083)


v1.4 2011-05-19
===============
Major:
  * Authorization forms now in grid format (#1074)
  * Links to RDF, N3 and Turtle metadata formats provided by semantic.ckan.net (#1088)
  * Refactor internal logic to all use packages in one format - a dictionary (#1046)
  * A new button for administrators to change revisions to/from a deleted state (#1076)

Minor:
  * Etags caching can now be disabled in config (#840)
  * Command-line tool to check search index covers all packages (#1073)
  * Command-line tool to load/dump postgres database (#1067)

Bug fixes:
  * Visitor can't create packages on new CKAN install - since v1.3.3 (#1090)
  * OpenID user pages couldn't be accessed - since v1.3.2 (#1056)
  * Default site_url configured to ckan.net, so pages obtains CSS from ckan.net- since v1.3 (#1085)
 

v1.3.3 2011-04-08
=================
Major:
  * Authorization checks added to editing Groups and PackageRelationships (#1052)
  * API: Added package revision history (#1012, #1071)

Minor:
  * API can take auth credentials from cookie (#1001)
  * Theming: Ability to set custom favicon (#1051)
  * Importer code moved out into ckanext-importlib repo (#1042)
  * API: Group can be referred to by ID (in addition to name) (#1045)
  * Command line tool: rights listing can now be filtered (#1072)

Bug fixes:
  * SITE_READ role setting couldn't be overridden by sysadmins (#1044)
  * Default 'reader' role too permissive (#1066)
  * Resource ordering went wrong when editing and adding at same time (#1054)
  * GET followed by PUTting a package stored an incorrect license value (#662)
  * Sibling package relationships were shown for deleted packages (#664)
  * Tags were displayed when they only apply to deleted packages (#920)
  * API: 'Last modified' time was localised - now UTC (#1068)


v1.3.2 2011-03-15
=================
Major:
  * User list in the Web interface (#1010)
  * CKAN packaged as .deb for install on Ubuntu
  * Resources can have extra fields (although not in web interface yet) (#826)
  * CSW Harvesting - numerous of fixes & improvements. Ready for deployment. (#738 etc)
  * Language switcher (82002)
 
Minor:
  * Wordpress integration refactored as a Middleware plugin (#1013)
  * Unauthorized actions lead to a flash message (#366)
  * Resources Groups to group Resources in Packages (#956)
  * Plugin interface for authorization (#1011)
  * Database migrations tested better and corrected (#805, #998)
  * Government form moved out into ckanext-dgu repo (#1018)
  * Command-line user authorization tools extended (#1038, #1026)
  * Default user roles read from config file (#1039)

Bug fixes:
  * Mounting of filesystem (affected versions since 1.0.1) (#1040)
  * Resubmitting a package via the API (affected versions since 0.6?) (#662)
  * Open redirect (affected v1.3) (#1026)


v1.3 2011-02-18
===============
http://ckan.org/milestone/ckan-v1.3

Highlights of changes:
  * Package edit form improved:
     * field instructions (#679)
     * name autofilled from title (#778)
  * Group-based access control - Authorization Groups (#647)
  * Metadata harvest job management (#739, #884, #771)
  * CSW harvesting now uses owslib (#885)
  * Package creation authorization is configurable (#648)
  * Read-only maintenance mode (#777)
  * Stats page (#832) and importer (#950) moved out into CKAN extensions

Minor:
  * site_title and site_description config variables (#974)
  * Package creation/edit timestamps (#806)
  * Caching configuration centralised (#828)
  * Command-line tools - sysadmin management (#782)
  * Group now versioned (#231)


v1.2 2010-11-25
===============
http://ckan.org/milestone/ckan-v1.2

Highlights of changes:
  * Package edit form: attach package to groups (#652) & revealable help
  * Form API - Package/Harvester Create/New (#545)
  * Authorization extended: user groups (#647) and creation of packages (#648)
  * Plug-in interface classes (#741)
  * WordPress twentyten compatible theming (#797)
  * Caching support (ETag) (#693)
  * Harvesting GEMINI2 metadata records from OGC CSW servers (#566)
 
Minor:
  * New API key header (#466)
  * Group metadata now revisioned (#231)


v1.1 2010-08-10
===============
http://ckan.org/milestone/v1.1

Highlights of changes:
  * Changes to the database cause notifications via AMQP for clients (#325)
  * Pluggable search engines (#317), including SOLR (#353)
  * API is versioned and packages & groups can be referred to by invariant ID
    (#313)
  * Resource search in API (#336)
  * Visual theming of CKAN now easy (#340, #320)
  * Greater integration with external Web UIs (#335, #347, #348)
  * Plug-ins can be configured to handle web requests from specified URIs and 
    insert HTML into pages.

Minor:
  * Search engine optimisations e.g. alphabetical browsing (#350)
  * CSV and JSON dumps improved (#315)

  
v1.0.2 2010-08-27
=================

 * Bugfix: API returns error when creating package (#432)


v1.0.1 2010-06-23
=================

Functionality:

  * API: Revision search 'since id' and revision model in API
  * API: Basic API versioning - packages specified by ID (#313)
  * Pluggable search - initial hooks
  * Customisable templates (#340) and external UI hooks (#335)

Bugfixes:

  * Revision primary key lost in migrating data (#311)
  * Local authority license correction in migration (#319)
  * I18n formatting issues
  * Web i/f searches foreign characters (#319)
  * Data importer timezone issue (#330)


v1.0 2010-05-11
===============

CKAN comes of age, having been used successfully in several deployments around
the world. 56 tickets covered in this release. See:
http://ckan.org/milestone/v1.0

Highlights of changes:

  * Package edit form: new pluggable architecture for custom forms (#281, #286)
  * Package revisions: diffs now include tag, license and resource changes
    (#303)
  * Web interface: visual overhaul (#182, #206, #214-#227, #260) including a
    tag cloud (#89)
  * i18n: completion in Web UI - now covers package edit form (#248)
  * API extended: revisions (#251, #265), feeds per package (#266)
  * Developer documentation expanded (#289, #290)
  * Performance improved and CKAN stress-tested (#201)
  * Package relationships (Read-Write in API, Read-Only in Web UI) (#253-257)
  * Statistics page (#184)
  * Group edit: add multiple packages at once (#295)
  * Package view: RDF and JSON formatted metadata linked to from package page
    (#247)

Bugfixes:
 
  * Resources were losing their history (#292)
  * Extra fields now work with spaces in the name (#278, #280) and
    international characters (#288)
  * Updating resources in the REST API (#293)

Infrastructural:

  * Licenses: now uses external License Service ('licenses' Python module)
  * Changesets introduced to support distributed revisioning of CKAN data - see
    doc/distributed.rst for more information.


v0.11 2010-01-25
================

Our biggest release so far (55 tickets) with lots of new features and improvements. This release also saw a major new production deployment with the CKAN software powering http://data.gov.uk/ which had its public launch on Jan 21st!

For a full listing of tickets see: <http://ckan.org/milestone/v0.11>. Main highlights:

  * Package Resource object (multiple download urls per package): each package
    can have multiple 'resources' (urls) with each resource having additional
    metadata such as format, description and hash (#88, #89, #229)
  * "Full-text" searching of packages (#187)
  * Semantic web integration: RDFization of all data plus integration with an
    online RDF store (e.g. for http://www.ckan.net/ at
    http://semantic.ckan.net/ or Talis store) (#90 #163)
  * Package ratings (#77 #194)
  * i18n: we now have translations into German and French with deployments at
    http://de.ckan.net/ and http://fr.ckan.net/ (#202)
  * Package diffs available in package history (#173)
  * Minor:

    * Package undelete (#21, #126)
    * Automated CKAN deployment via Fabric (#213)
    * Listings are sorted alphabetically (#195)
    * Add extras to rest api and to ckanclient (#158 #166)

  * Infrastructural:

    * Change to UUIDs for revisions and all domain objects
    * Improved search performance and better pagination
    * Significantly improved performance in API and WUI via judicious caching 


v0.10 2009-09-30
================

  * Switch to repoze.who for authentication (#64)
  * Explicit User object and improved user account UI with recent edits etc (#111, #66, #67)
  * Generic Attributes for Packages (#43)
  * Use sqlalchemy-migrate to handle db/model upgrades (#94)
  * "Groups" of packages (#105, #110, #130, #121, #123, #131)
  * Package search in the REST API (#108)
  * Full role-based access control for Packages and Groups (#93, #116, #114, #115, #117, #122, #120)
  * New CKAN logo (#72)
  * Infrastructural:

    * Upgrade to Pylons 0.9.7 (#71)
    * Convert to use formalchemy for all forms (#76)
    * Use paginate in webhelpers (#118)

  * Minor: 

    * Add author and maintainer attributes to package (#91)
    * Change package state in the WUI (delete and undelete) (#126)
    * Ensure non-active packages don't show up (#119)
    * Change tags to contain any character (other than space) (#62)
    * Add Is It Open links to package pages (#74)


v0.9 2009-07-31
===============

  * (DM!) Add version attribute for package
  * Fix purge to use new version of vdm (0.4)
  * Link to changed packages when listing revision
  * Show most recently registered or updated packages on front page
  * Bookmarklet to enable easy package registration on CKAN
  * Usability improvements (package search and creation on front page)
  * Use external list of licenses from license repository
  * Convert from py.test to nosetests

v0.8 2009-04-10
===============

  * View information about package history (ticket:53)
  * Basic datapkg integration (ticket:57)
  * Show information about package openness using icons (ticket:56)
  * One-stage package create/registration (r437)
  * Reinstate package attribute validation (r437)
  * Upgrade to vdm 0.4

v0.7 2008-10-31
===============

  * Convert to use SQLAlchemy and vdm v0.3 (v. major)
  * Atom/RSS feed for Recent Changes
  * Package search via name and title
  * Tag lists show number of associated packages

v0.6 2008-07-08
===============

  * Autocompletion (+ suggestion) of tags when adding tags to a package.
  * Paginated lists for packages, tags, and revisions.
  * RESTful machine API for package access, update, listing and creation.
  * API Keys for users who wish to modify information via the REST API. 
  * Update to vdm v0.2 (SQLObject) which fixes ordering of lists.
  * Better immunity to SQL injection attacks.

v0.5 2008-01-22
===============

  * Purging of a Revision and associated changes from cli and wui (ticket:37)
  * Make data available in machine-usable form via sql dump (ticket:38)
  * Upgrade to Pylons 0.9.6.* and deploy (ticket:41)
  * List and search tags (ticket:33)
  * (bugfix) Manage reserved html characters in urls (ticket:40)
  * New spam management utilities including (partial) blacklist support

v0.4 2007-07-04
===============

  * Preview support when editing a package (ticket:36).
  * Correctly list IP address of of not logged in users (ticket:35).
  * Improve read action for revision to list details of changed items (r179).
  * Sort out deployment using modpython.

v0.3 2007-04-12
===============

  * System now in a suitable state for production deployment as a beta
  * Domain model versioning via the vdm package (currently released separately)
  * Basic Recent Changes listing log messages
  * User authentication (login/logout) via open ID
  * License page
  * Myriad of small fixes and improvements

v0.2 2007-02
============

  * Complete rewrite of ckan to use pylons web framework
  * Support for full CRUD on packages and tags
  * No support for users (authentication)
  * No versioning of domain model objects

v0.1 2006-05
============

NB: not an official release

  * Almost functional system with support for persons, packages
  * Tag support only half-functional (tags are per package not global)
  * Limited release and file support
