CKAN Releases

CKAN follows a predictable release cycle so that users can depend on stable releases of CKAN, and can plan their upgrades to new releases. The Changelog documents the main changes in each release.

Each release has a version number of the form M.m (eg. 2.1) or M.m.p (eg. 1.8.2), where M is the major version, m is the minor version and p is the patch version number. There are three types of release:

Major Releases
Major releases, such as CKAN 1.0 and CKAN 2.0, increment the major version number. These releases contain major changes in the CKAN code base, with significant refactorings and breaking changes, for instance in the API or the templates. These releases are very infrequent.
Minor Releases
Minor releases, such as CKAN 1.8 and CKAN 2.1, increment the minor version number. These releases are not as disruptive as major releases, but backwards-incompatible changes may be introduced in minor releases. The Changelog will document any breaking changes. We aim to release a minor version of CKAN roughly every three months.
Patch Releases

Patch releases, such as CKAN 1.8.1 or CKAN 2.0.1, increment the patch version number. These releases do not break backwards-compatibility, they include only bug fixes and non-breaking optimizations and features. Patch releases do not contain:

  • Database schema changes or migrations
  • Function interface changes
  • Plugin interface changes
  • New dependencies
  • Big refactorings or new features in critical parts of the code

Release Process

When the development is ready to start the process of releasing a new version of CKAN, we will:

  1. Create a new release branch from the master branch, named release-v* where * is the release’s version number.
  2. Deploy the release branch on beta.ckan.org for testing.
  3. During the next two-three weeks, we’ll allow changes on the release branch only to stabilize the code, update translations and documentation, etc. (new features are usually not added on the release branch).
  4. During the final week before the release, we’ll only allow critical bug fixes to be committed on the release branch.

At some point during the beta period a strings freeze will begin. That means that no changes to translatable strings are allowed on the release branch (no new strings, or changes to existing strings). This will give translators time to update the translations on Transifex. We’ll publish a call for translations to the ckan-dev and ckan-discuss mailing lists, announcing that the new version is ready to be translated.

At some point before the final release, we’ll announce an end of translations after which no new translations will be pulled into the release branch. At this point we’ll deploy the translations to beta.ckan.org and we’ll put out a request for people to test CKAN in their languages.

Release branches are not merged back into master. All changes on a release branch are cherry-picked from master (or merged from special branches based on the release branch).

To ensure that the release guidelines are enforced one of the CKAN core developers will act as Release Manager. They have the final say on what is merged into the release branches.

Detailed release process instructions for CKAN Developers can be found in the Doing a CKAN Release document:

Changelog

v2.0 2013-05-10

Note

Starting on v2.0, issue numbers with four digits refer to the old ticketing system at http://trac.ckan.org and the ones with three digits refer to GitHub issues. For example:

Some GitHub issues URLs will redirect to GitHub pull request pages.

Note

v2.0 is a huge release so the changes listed here are just the highlights. Bug fixes are not listed.

Note: This version requires a requirements upgrade on source installations

Note: This version requires a database upgrade

Note: This version requires a Solr schema upgrade

Organizations based authorization (see Authorization):

CKAN’s new “organizations” feature replaces the old authorization system with a new one based on publisher organizations. It replaces the “Publisher Profile and Workflow” feature from CKAN 1.X, any instances relying on it will need to be updated.

  • New organization-based authorization and organization of datasets
  • Supports private datasets
  • Publisher workflow
  • New authorization ini file options
New frontend (see Theming):

CKAN’s frontend has been completely redesigned, inside and out. There is a new default theme and the template engine has moved from Genshi to Jinja2. Any custom templates using Genshi will need to be updated, although there is a ckan.legacy_templates setting to aid in the migration.

  • Block-based template inheritance
  • Custom jinja tags: {% ckan_extends %}, {% snippet %} and {% url_for %} (#2502, #2503)
  • CSS “primer” page for theme developers
  • We’re now using LESS for CSS
  • Scalable font icons (#2563)
  • Social sharing buttons (google plus, facebook, twitter) (this replaces the ckanext-social extension)
  • Three-stage dataset creation form (#2501)
  • New paster front-end-build command does everything needed to build the frontend for a production CKAN site (runs paster less to compile the css files, paster minify to minify the css and js files, etc.)
Plugins & Extensions:
  • New plugins toolkit provides a stable set of utility and helper functions for CKAN plugins to depend on.
  • The IDatasetForm plugin interface has been redesigned (note: this breaks backwards-compatibility with existing IDatasetForm plugins) (#649)
  • Many IDatasetForm bugs were fixed
  • New example extensions in core, and better documentation for the relevant plugin interfaces: example_itemplatehelpers (#447), example_idatasetform (#2750), hopefully more to come in 2.1!
  • New IFacets interface that allows to modify the facets shown on various pages. (#400)
  • The get_action() function now automatically adds ‘model’ and ‘session’ to the context dict (this saves on boiler-plate code, and means plugins don’t have to import ckan.model in order to call get_action()) (#172)
Activity Streams, Following & User Dashboard:
  • New visual design for activity streams (#2941)
  • Group activity streams now include activities for changes to any of the group’s datasets (#1664)
  • Group activity streams now appear on group pages (previously they could only be retrieved via the api)
  • Dataset activity streams now appear on dataset pages (previously they could only be retrieved via the api) (#3024)
  • Users can now follow groups (previously you could only follow users or datasets) (#3005)
  • Activity streams and following are also supported for organizations (#505)
  • When you’re logged into CKAN, you now get a notifications count in the top-right corner of the site, telling you how many new notifications you have on your dashboard. Clicking on the count takes you to your dashboard page to view your notifications. (#3009)
  • Optionally, you can also receive notifications by email when you have new activities on your dashboard (#1635)
  • Infinite scrolling of activity streams (if you scroll to the bottom of a an activity stream, CKAN will automatically load more activities) (#3018)
  • Redesigned user dashboard (#3028):
    • New dropdown-menu enables you to filter you dashboard activity stream to show only activities from a particular user, dataset, group or organization that you’re following
    • New sidebar shows previews and unfollow buttons (when the activity stream is filtered)
  • New ckan.activity_streams_enabled config file setting allows you to disable the generation of activity streams (#654)
Data Preview:
  • PDF files preview (#2203)
  • JSON files preview
  • HTML pages preview (in an iframe) (#2888)
  • New plugin extension point that allows plugins to add custom data previews for different data types (#2961)
  • Improved Recline Data Explorer previews (CSV files, Excel files..)
  • Plain text files preview
API:
  • The Action API is now CKAN’s default API, and the API documentation has been rewritten (#357)
Other highlights:
  • CKAN now has continuous integration testing at https://travis-ci.org/okfn/ckan/
  • Dataset pages now have <link rel=”alternate” type=”application/rdf+xml” links in the HTML headers, allows linked-data tools to find CKAN’s RDF rendering of a dataset’s metadata (#413)
  • CKAN’s DataStore and Data API have been rewritten, and now use PostgreSQL instead of elasticsearch, so there’s no need to install elasticsearch anymore (this feature was also back-ported to CKAN 1.8) (#2733)
  • New Config page for sysadmins (/ckan-admin/config) enables sysadmins to set the site title, tag line, logo, the intro text shown on the front page, the about text shown on the /about page, select a theme, and add custom CSS (#2302, #2781)
  • New paster color command for creating color schemes
  • Fanstatic integration (#2371):
    • CKAN now uses Fanstatic to specify required static resource files (js, css..) for web pages
    • Enables each page to only include the static files that it needs, reducing page loads
    • Enables CKAN to use bundled and minified static files, further reducing page loads
    • CKAN’s new paster minify command is used to create minified js and css files (#2950) (also see paster front-end-build)
  • CKAN will now recognise common file format strings such as “application/json”, “JSON”, ”.json” and “json” as a single file type “json” (#2416)
  • CKAN now supports internalization of strings in javascript files, the new paster trans command is used to pull translatable strings out of javascript files (#2774, #2750)
  • convert_to/from_extras have been fixed to not add quotes around strings (#2930)
  • Updated CKAN coding standards (#3020) and CONTRIBUTING.rst file
  • Built-in page view counting and ‘popular’ badges on datasets and resources There’s also a paster command to export the tracking data to a csv file (#195)
  • Updated CKAN Coding Standards and new CONTRIBUTING.rst file
  • You can now change the sort ordering of datasets on the dataset search page
Deprecated and removed:
  • The IGenshiStreamFilter plugin interface is deprecated (#271), use the ITemplateHelpers plugin interface instead
  • The Model, Search and Util APIs are deprecated, use the Action API instead
  • Removed restrict_template_vars config setting (#2257)
  • Removed deprecated facet_title() template helper function, use get_facet_title() instead (#2257)
  • Removed deprecated am_authorized() template helper function, use check_access() instead (#2257)
  • Removed deprecated datetime_to_datestr() template helper function (#2257)

v1.8.1 2013-05-10

Bug fixes:
  • Fixed possible XSS vulnerability on html input (#703)
  • Fix unicode template 500 error (#808)
  • Fix error on related controller

v1.8 2012-10-19

Note: This version requires a requirements upgrade on source installations

Note: This version requires a database upgrade

Note: This version does not require a Solr schema upgrade

Major
  • New ‘follow’ feature that allows logged in users to follow other users or datasets (#2304)
  • New user dashboard that shows an activity stream of all the datasets and users you are following. Thanks to Sven R. Kunze for his work on this (#2305)
  • New version of the Datastore. It has been completely rewritten to use PostgreSQL as backend, it is more stable and fast and supports SQL queries (#2733)
  • Clean up and simplifyng of CKAN’s dependencies and source install instructions. Ubuntu 12.04 is now supported for source installs (#2428,#2592)
  • Big speed improvements when indexing datasets (#2788)
  • New action API reference docs, which individually document each function and its arguments and return values (#2345)
  • Updated translations, added Japanese and Korean translations
Minor
  • Add source install upgrade docs (#2757)
  • Mark more strings for translation (#2770)
  • Allow sort ordering of dataset listings on group pages (#2842)
  • Reenable simple search option (#2844)
  • Editing organization removes all datasets (#2845)
  • Accessibility enhancements on templates
Bug fixes
  • Fix for relative url being used when doing file upload to local storage
  • Various fixes on IGroupFrom (#2750)
  • Fix group dataset sort (#2722)
  • Fix adding existing datasets to organizations (#2843)
  • Fix 500 error in related controller (#2856)
  • Fix for non-open licenses appearing open
  • Editing organization removes all datasets (#2845)
API changes and deprecation:
  • Template helper functions are now restricted by default. By default only those helper functions listed in lib.helpers.__allowed_functions__ are available to templates. The full functions can still be made available by setting ckan.restrict_template_vars = false in your ini file. Only restricted functions will be allowed in future versions of CKAN.
  • Deprecated functions related to the old faceting data structure have been removed: helpers.py:facet_items(), facets.html:facet_sidebar(), facets.html:facet_list_items(). Internal use of the old facets datastructure (attached to the context, c.facets) has been superseded by use of the improved facet data structure, c.search_facets. The old data structure is still available on c.facets, but is deprecated, and will be removed in future versions. (#2313)

v1.7.3 2013-05-10

Bug fixes:
  • Fixed possible XSS vulnerability on html input (#703)

v1.7.2 2012-10-19

Minor:
  • Documentation enhancements regarding file uploads
Bug fixes:
  • Fixes for lincences i18n
  • Remove sensitive data from user dict (#2784)
  • Fix bug in feeds controller (#2869)
  • Show dataset author and maintainer names even if they have no emails
  • Fix URLs for some Amazon buckets
  • Other minor fixes

v1.7.1 2012-06-20

Minor:
  • Documentation enhancements regarding install and extensions (#2505)
  • Home page and search results speed improvements (#2402,#2403)
  • I18n: Added Greek translation and updated other ones (#2506)
Bug fixes:
  • UI fixes (#2507)
  • Fixes for i18n login and logout issues (#2497)
  • Date on add/edit resource breaks if offset is specified (#2383)
  • Fix in organizations read page (#2509)
  • Add synchronous_search plugin to deployment.ini template (#2521)
  • Inconsistent language on license dropdown (#2575)
  • Fix bug in translating lists in multilingual plugin
  • Group autocomplete doesn’t work with multiple words (#2373)
  • Other minor fixes

v1.7 2012-05-09

Major:
  • Updated SOLR schema (#2327). Note: This will require and update of the SOLR schema file and a reindex.
  • Support for Organization based workflow, with membership determinig access permissions to datasets (#1669,#2255)
  • Related items such as visualizations, applications or ideas can now be added to datasets (#2204)
  • Restricted vocabularies for tags, allowing grouping related tags together (#1698)
  • Internal analytics that track number of views and downloads for datasets and resources (#2251)
  • Consolidated multilingual features in an included extension (#1821,#1820)
  • Atom feeds for publishers, tags and search results (#1593,#2277)
  • RDF dump paster command (#2303)
  • Better integration with the DataStore, based on ElasticSearch, with nice helper docs (#1797)
  • Updated the Recline data viewer with new features such as better graphs and a map view (#2236,#2283)
  • Improved and redesigned documentation (#2226,#2245,#2248)
Minor:
  • Groups can have an image associated (#2275)
  • Basic resource validation (#1711)
  • Ability to search without accents for accented words (#906)
  • Weight queries so that title is more important than rest of body (#1826)
  • Enhancements in the dataset and resource forms (#1506)
  • OpenID can now be disabled (#1830)
  • API and forms use same validation (#1792)
  • More robust bulk search indexing, with options to ignore exceptions and just refresh (#1616i,#2232)
  • Modify where the language code is placed in URLs (#2261)
  • Simplified licenses list (#1359)
  • Add extension point for dataset view (#1741)
Bug fixes:
  • Catch exceptions on the QA archiver (#1809)
  • Error when changing language when CKAN is mounted in URL (#1804)
  • Naming of a new package/group can clash with a route (#1742)
  • Can’t delete all of a package’s resources over REST API (#2266)
  • Group edit form didn’t allow adding multiple datasets at once (#2292)
  • Fix layout bugs in IE 7 (#1788)
  • Bug with Portugese translation and Javascript (#2318)
  • Fix broken parse_rfc_2822 helper function (#2314)

v1.6 2012-02-24

Major:
  • Resources now have their own pages, as well as showing in the Dataset (#1445, #1449)
  • Group pages enhanced, including in-group search (#1521)
  • User pages enhanced with lists of datasets (#1396) and recent activity (#1515)
  • Dataset view page decluttered (#1450)
  • Tags not restricted to just letters and dashes (#1453)
  • Stats Extension and Storage Extension moved into core CKAN (#1576, #1608)
  • Ability to mounting CKAN at a sub-URL (#1401, #1659)
  • 5 Stars of Openness ratings show by resources, if ckanext-qa is installed (#1583)
  • Recline Data Explorer (for previewing and plotting data) improved and v2 moved into core CKAN (#1602, #1630)
Minor:
  • ‘About’ page rewritten and easily customisable in the config (#1626)
  • Gravatar picture displayed next to My Account link (#1528)
  • ‘Delete’ button for datasets (#1425)
  • Relationships API more RESTful, validated and documented (#1695)
  • User name displayed when logged in (#1529)
  • Database dumps now exclude deleted packages (#1623)
  • Dataset/Tag name length now limited to 100 characters in API (#1473)
  • ‘Status’ API call now includes installed extensions (#1488)
  • Command-line interface for list/read/deleting datasets (#1499)
  • Slug API calls tidied up and documented (#1500)
  • Users nagged to add email address if missing from their account (#1413)
  • Model and API for Users to become Members of a Group in a certain Capacity (#1531, #1477)
  • Extension interface to adjust search queries, indexing and results (#1547, #1738)
  • API for changing permissions (#1688)
Bug fixes:
  • Group deletion didn’t work (#1536)
  • metadata_created used to return an entirely wrong date (#1546)
  • Unicode characters in field-specific API search queries caused exception (since CKAN 1.5) (#1798)
  • Sometimes task_status errors weren’t being recorded (#1483)
  • Registering or Logging in failed silently when already logged in (#1799)
  • Deleted packages were browseable by administrators and appeared in dumps (#1283, #1623)
  • Facicon was a broken link unless corrected in config file (#1627)
  • Dataset search showed last result of each page out of order (#1683)
  • ‘Simple search’ mode showed 0 packages on home page (#1709)
  • Occasionally, ‘My Account’ shows when user is not logged in (#1513)
  • Could not change language when on a tag page that had accented characters or dataset creation page (#1783, #1791)
  • Editing package via API deleted its relationships (#1786)

v1.5.1 2012-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 (compatible with Postgres up to 9.1) (#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)
  • Multiple CKANs with same dataset IDs on the same SOLR core would conflict (#1462)

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)
  • The same tag could be added to a package multiple times (#1331)

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