<?xml version="1.0"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>CKAN: Ticket Query</title>
    <link>http://localhost/query?milestone=ckan-v1.2&amp;group=status&amp;order=type</link>
    <description>The open source data portal software</description>
    <language>en-US</language>
    <image>
      <title>CKAN</title>
      <url>http://assets.okfn.org/p/ckan/img/ckan_logo_shortname.png</url>
      <link>http://localhost/query?milestone=ckan-v1.2&amp;group=status&amp;order=type</link>
    </image>
    <generator>Trac 0.12.3</generator>
    <item>
        <link>http://localhost/ticket/372</link>
        <guid isPermaLink="false">http://localhost/ticket/372</guid>
        <title>#372: Fix system limits on CKAN for DGU</title>
        <pubDate>Fri, 23 Jul 2010 11:49:12 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description>&lt;p&gt;
Set limits in /etc/security/limits.conf so that we can always ssh in at least.  Requested by DGU.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/372#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/436</link>
        <guid isPermaLink="false">http://localhost/ticket/436</guid>
        <title>#436: Investigate exception: resource search JSON</title>
        <pubDate>Thu, 19 Aug 2010 08:35:59 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
Here's the dump from 22:10 last night:
&lt;/p&gt;
&lt;p&gt;
URL: &lt;a class="ext-link" href="http://ckan.net/api/search/resource?all_fields=1&amp;amp;offset=0&amp;amp;limit=20&amp;amp;qjson=%3Cspan%20class="&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://ckan.net/api/search/resource?all_fields=1&amp;amp;offset=0&amp;amp;limit=20&amp;amp;qjson=%3Cspan%20class=&lt;/a&gt;
Module weberror.errormiddleware:162 in &lt;span class="underline"&gt;call&lt;/span&gt;
&amp;lt;&amp;lt;              &lt;span class="underline"&gt;traceback_supplement&lt;/span&gt; = Supplement, self, environ
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
sr_checker = &lt;a class="missing wiki"&gt;ResponseStartChecker?&lt;/a&gt;(start_response)
app_iter = self.application(environ, sr_checker)
return self.make_catching_iter(app_iter, environ, sr_checker)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
except:
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
app_iter = self.application(environ, sr_checker)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module beaker.middleware:73 in &lt;span class="underline"&gt;call&lt;/span&gt;
&amp;lt;&amp;lt;                                                     self.cache_manager)
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
environ[self.environ_key] = self.cache_manager
return self.app(environ, start_response)
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
return self.app(environ, start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module beaker.middleware:152 in &lt;span class="underline"&gt;call&lt;/span&gt;
&amp;lt;&amp;lt;                          headers.append(('Set-cookie', cookie))
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
return start_response(status, headers, exc_info)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
return self.wrap_app(environ, session_start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
def _get_session(self):
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
return self.wrap_app(environ, session_start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module routes.middleware:130 in &lt;span class="underline"&gt;call&lt;/span&gt;
&amp;lt;&amp;lt;                  environ&lt;a class="missing wiki"&gt;SCRIPT_NAME?&lt;/a&gt; = environ&lt;a class="missing wiki"&gt;SCRIPT_NAME?&lt;/a&gt;[:-1]
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
response = self.app(environ, start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
# Wrapped in try as in rare cases the attribute will be gone already
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
response = self.app(environ, start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module pylons.wsgiapp:125 in &lt;span class="underline"&gt;call&lt;/span&gt;
&amp;lt;&amp;lt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
controller = self.resolve(environ, start_response)
response = self.dispatch(controller, environ, start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
if 'paste.testing_variables' in environ and hasattr(response,
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
response = self.dispatch(controller, environ, start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module pylons.wsgiapp:324 in dispatch
&amp;lt;&amp;lt;          if log_debug:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
log.debug("Calling controller class with WSGI interface")
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
return controller(environ, start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
def load_test_env(self, environ):
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
return controller(environ, start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module ckan.lib.base:73 in &lt;span class="underline"&gt;call&lt;/span&gt;
&amp;lt;&amp;lt;          # available in environ&lt;a class="missing wiki"&gt;pylons.routes_dict?&lt;/a&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
try:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
return WSGIController.&lt;span class="underline"&gt;call&lt;/span&gt;(self, environ, start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
finally:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
model.Session.remove()
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
return WSGIController.&lt;span class="underline"&gt;call&lt;/span&gt;(self, environ, start_response)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module pylons.controllers.core:221 in &lt;span class="underline"&gt;call&lt;/span&gt;
&amp;lt;&amp;lt;                  return response(environ, self.start_response)
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
response = self._dispatch_call()
if not start_response_called:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
self.start_response = start_response
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
response = self._dispatch_call()
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module pylons.controllers.core:172 in _dispatch_call
&amp;lt;&amp;lt;              req.environ&lt;a class="missing wiki"&gt;pylons.action_method?&lt;/a&gt; = func
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
response = self._inspect_call(func)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
else:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
if log_debug:
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
response = self._inspect_call(func)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module pylons.controllers.core:107 in _inspect_call
&amp;lt;&amp;lt;                        func.&lt;span class="underline"&gt;name&lt;/span&gt;, args)
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
try:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
result = self._perform_call(func, args)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
except HTTPException, httpe:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
if log_debug:
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
result = self._perform_call(func, args)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module pylons.controllers.core:60 in _perform_call
&amp;lt;&amp;lt;          """Hide the traceback for everything above this method"""
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
&lt;span class="underline"&gt;traceback_hide&lt;/span&gt; = 'before_and_this'
return func(&lt;strong&gt;args)
&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
def _inspect_call(self, func):
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
return func(&lt;strong&gt;args)
&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module ckan.controllers.rest:400 in search
&amp;lt;&amp;lt;                      response.status_int = 400
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
return gettext('Blank qjson parameter')
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
params = json.loads(request.params&lt;a class="missing wiki"&gt;qjson?&lt;/a&gt;)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
elif request.params.values() and request.params.values() != [u&lt;em&gt;] and request.params.values() != [u'1']:
&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
params = request.params
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
params = json.loads(request.params&lt;a class="missing wiki"&gt;qjson?&lt;/a&gt;)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module simplejson:384 in loads
&amp;lt;&amp;lt;              parse_constant is None and object_pairs_hook is None
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
and not use_decimal and not kw):
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
return _default_decoder.decode(s)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
if cls is None:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
cls = JSONDecoder
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
return _default_decoder.decode(s)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module simplejson.decoder:402 in decode
&amp;lt;&amp;lt;          """
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
end = _w(s, end).end()
if end != len(s):
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Module simplejson.decoder:420 in raw_decode
&amp;lt;&amp;lt;              obj, end = self.scan_once(s, idx)
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
except &lt;a class="missing wiki"&gt;StopIteration?&lt;/a&gt;:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
raise JSONDecodeError("No JSON object could be decoded", s, idx)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
return obj, end
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote class="citation"&gt;
&lt;blockquote&gt;
&lt;p&gt;
raise JSONDecodeError("No JSON object could be decoded", s, idx)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
JSONDecodeError: No JSON object could be decoded: line 1 column 0 (char 0)
CGI Variables
DOCUMENT_ROOT        '/htdocs'
GATEWAY_INTERFACE        'CGI/1.1'
HTTP_ACCEPT        'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, application/json'
HTTP_ACCEPT_CHARSET        'ISO-8859-1,utf-8;q=0.7,*;q=0.7'
HTTP_ACCEPT_ENCODING        'gzip,deflate'
HTTP_ACCEPT_LANGUAGE        'en-us,en;q=0.5'
HTTP_CONNECTION        'keep-alive'
HTTP_COOKIE        '&lt;span class="underline"&gt;utma=27730403.1245320310.1281386803.1281386803.1282164955.2; &lt;/span&gt;utmz=27730403.1282164955.2.2.utmcsr=jira|utmccn=(referral)|utmcmd=referral|utmcct=/browse/PLATFORM-892; &lt;span class="underline"&gt;utmb=27730403.3.10.1282164955; &lt;/span&gt;utmc=27730403'
HTTP_HOST        'ckan.net'
HTTP_KEEP_ALIVE        '300'
HTTP_REFERER        '&lt;a class="ext-link" href="http://jira/browse/PLATFORM-892"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://jira/browse/PLATFORM-892&lt;/a&gt;'
HTTP_USER_AGENT        'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.7) Gecko/20091221 Firefox/3.5.7'
PATH        '/usr/local/bin:/usr/bin:/bin'
PATH_INFO        '/api/search/resource'
PATH_TRANSLATED        '/home/okfn/var/srvc/ckan.net/pyenv/bin/ckan.net.py/api/search/resource'
QUERY_STRING        'all_fields=1&amp;amp;offset=0&amp;amp;limit=20&amp;amp;qjson=%3Cspan%20class='
REMOTE_ADDR        '64.235.97.218'
REMOTE_PORT        '20720'
REQUEST_METHOD        'GET'
REQUEST_URI        '/api/search/resource?all_fields=1&amp;amp;offset=0&amp;amp;limit=20&amp;amp;qjson=%3Cspan%20class='
SCRIPT_FILENAME        '/home/okfn/var/srvc/ckan.net/pyenv/bin/ckan.net.py'
SCRIPT_URI        '&lt;a class="ext-link" href="http://ckan.net/api/search/resource"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://ckan.net/api/search/resource&lt;/a&gt;'
SCRIPT_URL        '/api/search/resource'
SERVER_ADDR        '10.226.226.118'
SERVER_ADMIN        '[no address given]'
SERVER_NAME        'ckan.net'
SERVER_PORT        '80'
SERVER_PROTOCOL        'HTTP/1.1'
SERVER_SIGNATURE        '&amp;lt;address&amp;gt;Apache/2.2.9 (Debian) mod_wsgi/2.5 Python/2.5.2 Server at ckan.net Port 80&amp;lt;/address&amp;gt;\n'
SERVER_SOFTWARE        'Apache/2.2.9 (Debian) mod_wsgi/2.5 Python/2.5.2'
WSGI Variables
application        &amp;lt;beaker.middleware.&lt;a class="missing wiki"&gt;CacheMiddleware?&lt;/a&gt; object at 0xa1c13ec&amp;gt;
beaker.cache        &amp;lt;beaker.cache.&lt;a class="missing wiki"&gt;CacheManager?&lt;/a&gt; object at 0xa1c142c&amp;gt;
beaker.get_session        &amp;lt;bound method &lt;a class="missing wiki"&gt;SessionMiddleware?&lt;/a&gt;._get_session of &amp;lt;beaker.middleware.&lt;a class="missing wiki"&gt;SessionMiddleware?&lt;/a&gt; object at 0xa1c12ac&amp;gt;&amp;gt;
beaker.session        {'_accessed_time': 1282165818.0880959, '_creation_time': 1282165818.0880959}
mod_wsgi.application_group        'ckan.net|'
mod_wsgi.callable_object        'application'
mod_wsgi.listener_host        &lt;em&gt;
mod_wsgi.listener_port        '80'
mod_wsgi.process_group        &lt;/em&gt;
mod_wsgi.reload_mechanism        '0'
mod_wsgi.script_reloading        '1'
mod_wsgi.version        (2, 5)
paste.cookies        (&amp;lt;SimpleCookie: __utma='27730403.1245320310.1281386803.1281386803.1282164955.2' __utmb='27730403.3.10.1282164955' __utmc='27730403' __utmz='27730403.1282164955.2.2.utmcsr=jira|utmccn=(referral)|utmcmd=referral|utmcct=/browse/PLATFORM-892'&amp;gt;, '&lt;span class="underline"&gt;utma=27730403.1245320310.1281386803.1281386803.1282164955.2; &lt;/span&gt;utmz=27730403.1282164955.2.2.utmcsr=jira|utmccn=(referral)|utmcmd=referral|utmcct=/browse/PLATFORM-892; &lt;span class="underline"&gt;utmb=27730403.3.10.1282164955; &lt;/span&gt;utmc=27730403')
paste.parsed_querystring        ([('all_fields', '1'), ('offset', '0'), ('limit', '20'), ('qjson', '&amp;lt;span class=')], 'all_fields=1&amp;amp;offset=0&amp;amp;limit=20&amp;amp;qjson=%3Cspan%20class=')
paste.registry        &amp;lt;paste.registry.Registry object at 0x130ed84c&amp;gt;
paste.throw_errors        True
pylons.action_method        &amp;lt;bound method &lt;a class="missing wiki"&gt;RestController?&lt;/a&gt;.search of &amp;lt;ckan.controllers.rest.&lt;a class="missing wiki"&gt;RestController?&lt;/a&gt; object at 0xe9bbe0c&amp;gt;&amp;gt;
pylons.controller        &amp;lt;ckan.controllers.rest.&lt;a class="missing wiki"&gt;RestController?&lt;/a&gt; object at 0xe9bbe0c&amp;gt;
pylons.environ_config        {'session': 'beaker.session', 'cache': 'beaker.cache'}
pylons.pylons        &amp;lt;pylons.util.&lt;a class="missing wiki"&gt;PylonsContext?&lt;/a&gt; object at 0xe9bbe8c&amp;gt;
pylons.routes_dict        {'action': u'search', 'controller': u'rest', 'register': u'resource'}
repoze.who.logger        &amp;lt;logging.Logger instance at 0xa3cb0cc&amp;gt;
repoze.who.plugins        {'openid': &amp;lt;&lt;a class="missing wiki"&gt;OpenIdIdentificationPlugin?&lt;/a&gt; 170067148&amp;gt;, 'auth_tkt': &amp;lt;&lt;a class="missing wiki"&gt;AuthTktCookiePlugin?&lt;/a&gt; 171739788&amp;gt;}
routes.route        &amp;lt;routes.route.Route object at 0xa102fac&amp;gt;
routes.url        &amp;lt;routes.util.URLGenerator object at 0x13a5a3cc&amp;gt;
webob._parsed_query_vars        (GET([('all_fields', '1'), ('offset', '0'), ('limit', '20'), ('qjson', '&amp;lt;span class=')]), 'all_fields=1&amp;amp;offset=0&amp;amp;limit=20&amp;amp;qjson=%3Cspan%20class=')
webob.adhoc_attrs        {'language': 'en-us'}
wsgi process        'Multi process AND threads (?)'
wsgi.file_wrapper        &amp;lt;built-in method file_wrapper of mod_wsgi.Adapter object at 0x12f53530&amp;gt;
wsgiorg.routing_args        (&amp;lt;routes.util.URLGenerator object at 0x13a5a3cc&amp;gt;, {'action': u'search', 'controller': u'rest', 'register': u'resource'})
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/436#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/437</link>
        <guid isPermaLink="false">http://localhost/ticket/437</guid>
        <title>#437: Buildbot test failures - ascii codec</title>
        <pubDate>Thu, 19 Aug 2010 13:14:00 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
On today's buildbot: &lt;a class="ext-link" href="http://buildbot.okfn.org/builders/buildbot-test/builds/201"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://buildbot.okfn.org/builders/buildbot-test/builds/201&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
2 failures about ascii (ignore other 2)
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/437#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/459</link>
        <guid isPermaLink="false">http://localhost/ticket/459</guid>
        <title>#459: Versions on branches are broken</title>
        <pubDate>Fri, 20 Aug 2010 10:26:13 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/459#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/654</link>
        <guid isPermaLink="false">http://localhost/ticket/654</guid>
        <title>#654: Harvest sources and jobs should return 404 when missing (not 500)</title>
        <pubDate>Wed, 22 Sep 2010 15:51:57 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/654#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/349</link>
        <guid isPermaLink="false">http://localhost/ticket/349</guid>
        <title>#349: The system shall support authorised users to edit packages on data.gov.uk</title>
        <pubDate>Mon, 14 Jun 2010 13:57:31 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/349#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/432</link>
        <guid isPermaLink="false">http://localhost/ticket/432</guid>
        <title>#432: Creating package over REST gives 500 error</title>
        <pubDate>Tue, 17 Aug 2010 17:11:41 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
This occurs when CKAN is run with mod_wsgi (not under paster).
&lt;/p&gt;
&lt;p&gt;
This is because of a unicode header being creating in rest.py.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/432#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/434</link>
        <guid isPermaLink="false">http://localhost/ticket/434</guid>
        <title>#434: Logged in user to si.ckan.net causes genshi exception</title>
        <pubDate>Wed, 18 Aug 2010 11:21:55 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
Here's the trace:
&lt;/p&gt;
&lt;pre class="wiki"&gt;[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197] Error - &amp;lt;type 'exceptions.IndexError'&amp;gt;: list index out of range
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197] mod_wsgi (pid=6195): Exception occurred processing WSGI script '/home/okfn/var/srvc/si.ckan.net/py
env/bin/si.ckan.net.py'.
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197] Traceback (most recent call last):
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/paste/cascade.py", line
130, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return self.apps[-1](environ, start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/paste/registry.py", line
 375, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     app_iter = self.application(environ, start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/repoze/who/middleware.py
", line 107, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     app_iter = app(environ, wrapper.wrap_start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/pylons/middleware.py", l
ine 214, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     self.app, new_environ, catch_exc_info=True)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/pylons/util.py", line 94
, in call_wsgi_application
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     app_iter = application(environ, start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/weberror/errormiddleware
.py", line 156, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return self.application(environ, start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/beaker/middleware.py", l
ine 73, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return self.app(environ, start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/beaker/middleware.py", l
ine 152, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return self.wrap_app(environ, session_start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/routes/middleware.py", l
ine 130, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     response = self.app(environ, start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/pylons/wsgiapp.py", line
 125, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     response = self.dispatch(controller, environ, start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/pylons/wsgiapp.py", line
 324, in dispatch
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return controller(environ, start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/src/ckan/ckan/lib/base.py", line 73, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return WSGIController.__call__(self, environ, start_response)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/pylons/controllers/core.
py", line 221, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     response = self._dispatch_call()
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/pylons/controllers/core.
py", line 172, in _dispatch_call
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     response = self._inspect_call(func)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/pylons/controllers/core.
py", line 107, in _inspect_call
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     result = self._perform_call(func, args)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/pylons/controllers/core.
py", line 60, in _perform_call
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return func(**args)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/src/ckan/ckan/controllers/error.py", line 32, in doc
ument
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     ckan_template = render('error_document_template.html')
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/src/ckan/ckan/lib/base.py", line 38, in render
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return render_template()
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/src/ckan/ckan/lib/base.py", line 36, in render_templ
ate
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return literal(stream.render(method=method, encoding=None))
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/core.py", line 18
3, in render
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return encode(generator, method=method, encoding=encoding, out=out)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/output.py", line
57, in encode
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     return _encode(''.join(list(iterator)))
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/output.py", line 339, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for kind, data, pos in stream:
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/output.py", line 670, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for kind, data, pos in stream:
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/output.py", line 771, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for kind, data, pos in chain(stream, [(None, None, None)]):
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/output.py", line 586, in __call__
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for ev in stream:
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/core.py", line 288, in _ensure
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for event in stream:
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/template/base.py", line 618, in _include
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for event in tmpl.generate(ctxt, **vars):
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/template/base.py", line 618, in _include
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for event in tmpl.generate(ctxt, **vars):
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/template/base.py", line 605, in _include
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for event in stream:
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/template/markup.py", line 327, in _match
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for event in stream:
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/template/base.py", line 545, in _flatten
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for kind, data, pos in stream:
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/filters/i18n.py", line 177, in _generate
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     for event in msgbuf.translate(gettext(msgbuf.format())):
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/filters/i18n.py", line 1029, in translate
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     parts = parse_msg(string)
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]   File "/home/okfn/var/srvc/si.ckan.net/pyenv/lib/python2.5/site-packages/genshi/filters/i18n.py", line 1143, in parse_msg
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197]     parts.append((stack[-1], string))
[Wed Aug 18 11:10:19 2010] [error] [client 89.212.104.197] IndexError: list index out of range
&lt;/pre&gt;&lt;p&gt;
ckan: 1e403927f2bb (metastable)
genshi: 0.6
lang: slovenian
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/434#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/500</link>
        <guid isPermaLink="false">http://localhost/ticket/500</guid>
        <title>#500: Exception from diff</title>
        <pubDate>Mon, 23 Aug 2010 08:43:53 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
Investigate exception occured occasionally in last couple of days on ckan.net:
&lt;/p&gt;
&lt;pre class="wiki"&gt;WebApp Error: &amp;lt;type 'exceptions.AttributeError'&amp;gt;: 'NoneType' object has no attribute 'key'
URL: http://ckan.net/revision/diff/dbtune-audioscrobbler?diff=66a47b9e-232a-4838-8674-66fa1a5c76e1&amp;amp;oldid=a99c98be-767a-4e49-9025-2472b2d18b9c
Module weberror.errormiddleware:162 in __call__
&amp;lt;&amp;lt;              __traceback_supplement__ = Supplement, self, environ
                   sr_checker = ResponseStartChecker(start_response)
                   app_iter = self.application(environ, sr_checker)
                   return self.make_catching_iter(app_iter, environ, sr_checker)
               except:
&amp;gt;&amp;gt;  app_iter = self.application(environ, sr_checker)
Module beaker.middleware:73 in __call__
&amp;lt;&amp;lt;                                                     self.cache_manager)
               environ[self.environ_key] = self.cache_manager
               return self.app(environ, start_response)
&amp;gt;&amp;gt;  return self.app(environ, start_response)
Module beaker.middleware:152 in __call__
&amp;lt;&amp;lt;                          headers.append(('Set-cookie', cookie))
                   return start_response(status, headers, exc_info)
               return self.wrap_app(environ, session_start_response)
           def _get_session(self):
&amp;gt;&amp;gt;  return self.wrap_app(environ, session_start_response)
Module routes.middleware:130 in __call__
&amp;lt;&amp;lt;                  environ['SCRIPT_NAME'] = environ['SCRIPT_NAME'][:-1]
               response = self.app(environ, start_response)
               # Wrapped in try as in rare cases the attribute will be gone already
&amp;gt;&amp;gt;  response = self.app(environ, start_response)
Module pylons.wsgiapp:125 in __call__
&amp;lt;&amp;lt;
               controller = self.resolve(environ, start_response)
               response = self.dispatch(controller, environ, start_response)
               if 'paste.testing_variables' in environ and hasattr(response,
&amp;gt;&amp;gt;  response = self.dispatch(controller, environ, start_response)
Module pylons.wsgiapp:324 in dispatch
&amp;lt;&amp;lt;          if log_debug:
                   log.debug("Calling controller class with WSGI interface")
               return controller(environ, start_response)
           def load_test_env(self, environ):
&amp;gt;&amp;gt;  return controller(environ, start_response)
Module ckan.lib.base:73 in __call__
&amp;lt;&amp;lt;          # available in environ['pylons.routes_dict']
               try:
                   return WSGIController.__call__(self, environ, start_response)
               finally:
                   model.Session.remove()
&amp;gt;&amp;gt;  return WSGIController.__call__(self, environ, start_response)
Module pylons.controllers.core:221 in __call__
&amp;lt;&amp;lt;                  return response(environ, self.start_response)
               response = self._dispatch_call()
               if not start_response_called:
                   self.start_response = start_response
&amp;gt;&amp;gt;  response = self._dispatch_call()
Module pylons.controllers.core:172 in _dispatch_call
&amp;lt;&amp;lt;              req.environ['pylons.action_method'] = func
                   response = self._inspect_call(func)
               else:
                   if log_debug:
&amp;gt;&amp;gt;  response = self._inspect_call(func)
Module pylons.controllers.core:107 in _inspect_call
&amp;lt;&amp;lt;                        func.__name__, args)
               try:
                   result = self._perform_call(func, args)
               except HTTPException, httpe:
                   if log_debug:
&amp;gt;&amp;gt;  result = self._perform_call(func, args)
Module pylons.controllers.core:60 in _perform_call
&amp;lt;&amp;lt;          """Hide the traceback for everything above this method"""
               __traceback_hide__ = 'before_and_this'
               return func(**args)
           def _inspect_call(self, func):
&amp;gt;&amp;gt;  return func(**args)
Module ckan.controllers.revision:119 in diff
&amp;lt;&amp;lt;          c.revision_to = model.Session.query(model.Revision).get(
                   request.params.getone('diff'))
               diff = pkg.diff(c.revision_to, c.revision_from)
               c.diff = diff.items()
               c.diff.sort()
&amp;gt;&amp;gt;  diff = pkg.diff(c.revision_to, c.revision_from)
Module ckan.model.package:340 in diff
&amp;lt;&amp;lt;                              display_id = to_obj_rev.tag.name
                               elif obj_class.__name__ == 'PackageExtra':
                                   display_id = to_obj_rev.key
                               else:
                                   display_id = related_obj_id[:4]
&amp;gt;&amp;gt;  display_id = to_obj_rev.key
AttributeError: 'NoneType' object has no attribute 'key'
CGI Variables
DOCUMENT_ROOT	'/htdocs'
GATEWAY_INTERFACE	'CGI/1.1'
HTTP_ACCEPT	'*/*'
HTTP_ACCEPT_ENCODING	'gzip'
HTTP_ACCEPT_LANGUAGE	'zh-cn,zh-tw'
HTTP_CONNECTION	'close'
HTTP_HOST	'ckan.net'
HTTP_USER_AGENT	'Baiduspider+(+http://www.baidu.com/search/spider.htm)'
PATH	'/usr/local/bin:/usr/bin:/bin'
PATH_INFO	'/revision/diff/dbtune-audioscrobbler'
PATH_TRANSLATED	'/home/okfn/var/srvc/ckan.net/pyenv/bin/ckan.net.py/revision/diff/dbtune-audioscrobbler'
QUERY_STRING	'diff=66a47b9e-232a-4838-8674-66fa1a5c76e1&amp;amp;oldid=a99c98be-767a-4e49-9025-2472b2d18b9c'
REMOTE_ADDR	'123.125.66.32'
REMOTE_PORT	'63767'
REQUEST_METHOD	'GET'
REQUEST_URI	'/revision/diff/dbtune-audioscrobbler?diff=66a47b9e-232a-4838-8674-66fa1a5c76e1&amp;amp;oldid=a99c98be-767a-4e49-9025-2472b2d18b9c'
SCRIPT_FILENAME	'/home/okfn/var/srvc/ckan.net/pyenv/bin/ckan.net.py'
SCRIPT_URI	'http://ckan.net/revision/diff/dbtune-audioscrobbler'
SCRIPT_URL	'/revision/diff/dbtune-audioscrobbler'
SERVER_ADDR	'10.226.226.118'
SERVER_ADMIN	'[no address given]'
SERVER_NAME	'ckan.net'
SERVER_PORT	'80'
SERVER_PROTOCOL	'HTTP/1.1'
SERVER_SIGNATURE	'&amp;lt;address&amp;gt;Apache/2.2.9 (Debian) mod_wsgi/2.5 Python/2.5.2 Server at ckan.net Port 80&amp;lt;/address&amp;gt;\n'
SERVER_SOFTWARE	'Apache/2.2.9 (Debian) mod_wsgi/2.5 Python/2.5.2'
WSGI Variables
application	&amp;lt;beaker.middleware.CacheMiddleware object at 0x9f603ec&amp;gt;
beaker.cache	&amp;lt;beaker.cache.CacheManager object at 0x9f6042c&amp;gt;
beaker.get_session	&amp;lt;bound method SessionMiddleware._get_session of &amp;lt;beaker.middleware.SessionMiddleware object at 0x9f602ac&amp;gt;&amp;gt;
beaker.session	{'_accessed_time': 1282385101.4243281, '_creation_time': 1282385101.4243281}
mod_wsgi.application_group	'ckan.net|'
mod_wsgi.callable_object	'application'
mod_wsgi.listener_host	''
mod_wsgi.listener_port	'80'
mod_wsgi.process_group	''
mod_wsgi.reload_mechanism	'0'
mod_wsgi.script_reloading	'1'
mod_wsgi.version	(2, 5)
paste.cookies	(&amp;lt;SimpleCookie: &amp;gt;, '')
paste.parsed_querystring	([('diff', '66a47b9e-232a-4838-8674-66fa1a5c76e1'), ('oldid', 'a99c98be-767a-4e49-9025-2472b2d18b9c')], 'diff=66a47b9e-232a-4838-8674-66fa1a5c76e1&amp;amp;oldid=a99c98be-767a-4e49-9025-2472b2d18b9c')
paste.registry	&amp;lt;paste.registry.Registry object at 0x104552ec&amp;gt;
paste.throw_errors	True
pylons.action_method	&amp;lt;bound method RevisionController.diff of &amp;lt;ckan.controllers.revision.RevisionController object at 0xfb17aec&amp;gt;&amp;gt;
pylons.controller	&amp;lt;ckan.controllers.revision.RevisionController object at 0xfb17aec&amp;gt;
pylons.environ_config	{'session': 'beaker.session', 'cache': 'beaker.cache'}
pylons.pylons	&amp;lt;pylons.util.PylonsContext object at 0x10286d4c&amp;gt;
pylons.routes_dict	{'action': u'diff', 'controller': u'revision', 'id': u'dbtune-audioscrobbler'}
repoze.who.logger	&amp;lt;logging.Logger instance at 0xa16e0cc&amp;gt;
repoze.who.plugins	{'openid': &amp;lt;OpenIdIdentificationPlugin 167584972&amp;gt;, 'auth_tkt': &amp;lt;AuthTktCookiePlugin 169253516&amp;gt;}
routes.route	&amp;lt;routes.route.Route object at 0x9f3690c&amp;gt;
routes.url	&amp;lt;routes.util.URLGenerator object at 0xfd8d7cc&amp;gt;
webob._parsed_query_vars	(GET([('diff', '66a47b9e-232a-4838-8674-66fa1a5c76e1'), ('oldid', 'a99c98be-767a-4e49-9025-2472b2d18b9c')]), 'diff=66a47b9e-232a-4838-8674-66fa1a5c76e1&amp;amp;oldid=a99c98be-767a-4e49-9025-2472b2d18b9c')
webob.adhoc_attrs	{'language': 'en-us'}
wsgi process	'Multi process AND threads (?)'
wsgi.file_wrapper	&amp;lt;built-in method file_wrapper of mod_wsgi.Adapter object at 0x103a5bf0&amp;gt;
wsgiorg.routing_args	(&amp;lt;routes.util.URLGenerator object at 0xfd8d7cc&amp;gt;, {'action': u'diff', 'controller': u'revision', 'id': u'dbtune-audioscrobbler'})
&lt;/pre&gt;</description>
        <category>Results</category>
        <comments>http://localhost/ticket/500#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/514</link>
        <guid isPermaLink="false">http://localhost/ticket/514</guid>
        <title>#514: Inconsistent use of 'location' header in API</title>
        <pubDate>Wed, 25 Aug 2010 17:29:17 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
When you create a package then the 'location' header gets set. This doesn't happen for any other domain objects. I think this should be consistent - either none or all.
&lt;/p&gt;
&lt;p&gt;
I've removed the info about the header in the docs in the meantime.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/514#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/516</link>
        <guid isPermaLink="false">http://localhost/ticket/516</guid>
        <title>#516: Double-escaped text visible - revision page</title>
        <pubDate>Thu, 26 Aug 2010 13:32:19 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
At: &lt;a class="ext-link" href="http://ckan.net/revision"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://ckan.net/revision&lt;/a&gt;
you can see:
"Next &amp;amp;raquo;" on pager
This doesn't seem to be a problem with earlier (1.0.1) version.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/516#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/532</link>
        <guid isPermaLink="false">http://localhost/ticket/532</guid>
        <title>#532: Just a test - please ignore</title>
        <pubDate>Fri, 27 Aug 2010 11:00:42 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/532#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/534</link>
        <guid isPermaLink="false">http://localhost/ticket/534</guid>
        <title>#534: buildbot config - database machine moved</title>
        <pubDate>Mon, 30 Aug 2010 10:52:48 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
Configure buildbot to use postgres db which has been moved to eu5.okfn.org
&lt;/p&gt;
&lt;p&gt;
pudo said: Could you perhaps also comment on &lt;a class="ext-link" href="http://knowledgeforge.net/okfn/tasks/ticket/466"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://knowledgeforge.net/okfn/tasks/ticket/466&lt;/a&gt; with a hint on how to update this properly? I only edited /home/buildslave/okfn/full/build/buildandsmoke/buildandsmoke.ini which was the only occurence of the DB credentials I could find there.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/534#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/535</link>
        <guid isPermaLink="false">http://localhost/ticket/535</guid>
        <title>#535: genshi error when logged into sl.ckan.net</title>
        <pubDate>Mon, 30 Aug 2010 10:56:14 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
Genshi exception when rendering the page whilst logged in to sl.ckan.net.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/535#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/558</link>
        <guid isPermaLink="false">http://localhost/ticket/558</guid>
        <title>#558: Sort extras, relationships by key/object alphabetically</title>
        <pubDate>Fri, 03 Sep 2010 19:38:00 GMT</pubDate>
        
        <dc:creator>pudo</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/558#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/561</link>
        <guid isPermaLink="false">http://localhost/ticket/561</guid>
        <title>#561: Deleted packages are returned in the API</title>
        <pubDate>Mon, 06 Sep 2010 12:19:38 GMT</pubDate>
        
        <dc:creator>pudo</dc:creator>

        <description>&lt;p&gt;
Anja is reporting this, severe bug, I think.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/561#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/562</link>
        <guid isPermaLink="false">http://localhost/ticket/562</guid>
        <title>#562: OpenID Login fails using Yahoo and Google</title>
        <pubDate>Wed, 08 Sep 2010 10:18:39 GMT</pubDate>
        
        <dc:creator>pudo</dc:creator>

        <description>&lt;p&gt;
reported by LOD folks.
&lt;/p&gt;
&lt;p&gt;
subsidary bug: error messages from OpenID providers are not shown on the form return page.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/562#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/741</link>
        <guid isPermaLink="false">http://localhost/ticket/741</guid>
        <title>#741: Extension / Plugin system for CKAN</title>
        <pubDate>Mon, 25 Oct 2010 08:54:50 GMT</pubDate>
        
        <dc:creator>ollyc</dc:creator>

        <description>&lt;p&gt;
Create plugin system using
&amp;lt;&lt;a class="ext-link" href="http://pypi.python.org/pypi/pyutilib.component.core/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://pypi.python.org/pypi/pyutilib.component.core/&lt;/a&gt;&amp;gt;
&lt;/p&gt;
&lt;p&gt;
Specification in CEP-003 (&lt;a class="source" href="http://localhost/browser/doc/cep/cep-003.txt"&gt;browser:doc/cep/cep-003.txt&lt;/a&gt;) and &amp;lt;&lt;a class="ext-link" href="http://okfnpad.org/ckan-plugins"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://okfnpad.org/ckan-plugins&lt;/a&gt;&amp;gt;
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/741#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/408</link>
        <guid isPermaLink="false">http://localhost/ticket/408</guid>
        <title>#408: Integrate CMS via proxying</title>
        <pubDate>Mon, 09 Aug 2010 10:09:41 GMT</pubDate>
        
        <dc:creator>pudo</dc:creator>

        <description>&lt;ul&gt;&lt;li&gt;As sysadmin/user of CKAN I want to integrate a CMS to support easy addition of additional content ...
&lt;/li&gt;&lt;li&gt;I want to integrate with navigation
&lt;/li&gt;&lt;li&gt;As a minimum I want to be able to add content pages (more stuff would be e.g. comments, sidebars, main menu ...)
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Why: CMS are great at creating content and have very good editors and theme support ...
&lt;/p&gt;
&lt;h3 id="Previouswork"&gt;Previous work&lt;/h3&gt;
&lt;p&gt;
&lt;a class="ext-link" href="http://groups.google.com/group/pylons-discuss/browse_thread/thread/f8969e28b0a007c7"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://groups.google.com/group/pylons-discuss/browse_thread/thread/f8969e28b0a007c7&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;deliverance: retheming on the fly
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
&lt;a class="ext-link" href="http://knowledgeforge.net/shakespeare/hg/file/677eef9402e6/shakespeare/controllers/template.py"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://knowledgeforge.net/shakespeare/hg/file/677eef9402e6/shakespeare/controllers/template.py&lt;/a&gt;
&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Rewrite urls for proxying
&lt;/li&gt;&lt;li&gt;You need a theme to substitute into
&lt;/li&gt;&lt;li&gt;pylons
&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;
Extreme version:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;2 sources -&amp;gt; pylons/ckan app, cms
&lt;/li&gt;&lt;li&gt;1 theme source: ckan or cms
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
1 frontend/proxy app which re-themes everything
&lt;/p&gt;
&lt;p&gt;
Owned by CKAN:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;package/
&lt;/li&gt;&lt;li&gt;tag/
&lt;/li&gt;&lt;li&gt;group/
&lt;/li&gt;&lt;li&gt;api/
&lt;/li&gt;&lt;li&gt;/
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Everything else proxied.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/408#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/410</link>
        <guid isPermaLink="false">http://localhost/ticket/410</guid>
        <title>#410: Latest comments widget on home page</title>
        <pubDate>Mon, 09 Aug 2010 10:12:13 GMT</pubDate>
        
        <dc:creator>pudo</dc:creator>

        <description>&lt;p&gt;
This would be an extension to the disqus plugin that would patch itself into home/index.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/410#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/411</link>
        <guid isPermaLink="false">http://localhost/ticket/411</guid>
        <title>#411: Deploy and test Varnish on eu3</title>
        <pubDate>Mon, 09 Aug 2010 10:21:15 GMT</pubDate>
        
        <dc:creator>pudo</dc:creator>

        <description>&lt;ul&gt;&lt;li&gt;Need to figure out cache invalidation for CKAN
&lt;/li&gt;&lt;li&gt;Evaluate against an internal cache (i.e. memcached)
&lt;/li&gt;&lt;/ul&gt;</description>
        <category>Results</category>
        <comments>http://localhost/ticket/411#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/428</link>
        <guid isPermaLink="false">http://localhost/ticket/428</guid>
        <title>#428: Daily dump of DGU CKAN available</title>
        <pubDate>Fri, 13 Aug 2010 12:40:51 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
End users want to get hold of a JSON &amp;amp; CSV dump of the DGU data.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/428#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/429</link>
        <guid isPermaLink="false">http://localhost/ticket/429</guid>
        <title>#429: ONS data is imported daily to DGU</title>
        <pubDate>Fri, 13 Aug 2010 12:41:34 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/429#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/501</link>
        <guid isPermaLink="false">http://localhost/ticket/501</guid>
        <title>#501: Read-only maintenance mode</title>
        <pubDate>Mon, 23 Aug 2010 09:10:17 GMT</pubDate>
        
        <dc:creator>pudo</dc:creator>

        <description>&lt;p&gt;
CKAN should have a read-only maintenance mode with a nice little banner on all pages, appropriate REST messages etc. Bonus points if this is triggered via an environment variable and thus can be triggered by the surrounding apache.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/501#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/545</link>
        <guid isPermaLink="false">http://localhost/ticket/545</guid>
        <title>#545: The system shall support creating packages via the Form API</title>
        <pubDate>Wed, 01 Sep 2010 11:08:30 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/545#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/575</link>
        <guid isPermaLink="false">http://localhost/ticket/575</guid>
        <title>#575: The system shall notify remote metadata harvesting errors</title>
        <pubDate>Thu, 09 Sep 2010 15:59:19 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/575#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/652</link>
        <guid isPermaLink="false">http://localhost/ticket/652</guid>
        <title>#652: Allow for addition and removal of groups on package/edit</title>
        <pubDate>Mon, 20 Sep 2010 15:55:34 GMT</pubDate>
        
        <dc:creator>pudo</dc:creator>

        <description>&lt;p&gt;
Much more natural place to do this, even at the risk of overloading the package edit form.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/652#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/666</link>
        <guid isPermaLink="false">http://localhost/ticket/666</guid>
        <title>#666: The system shall support updating packages from new versions of previously harvested dataset or service metadata</title>
        <pubDate>Mon, 27 Sep 2010 12:26:14 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/666#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/690</link>
        <guid isPermaLink="false">http://localhost/ticket/690</guid>
        <title>#690: The system shall support Gemini2 service records</title>
        <pubDate>Mon, 11 Oct 2010 18:43:33 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description>&lt;p&gt;
Wish to fold service records into package resources. Trouble is that service records don't necessarily refer to a data record, so should this be a new package?
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/690#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/693</link>
        <guid isPermaLink="false">http://localhost/ticket/693</guid>
        <title>#693: Support ETag in cache decorator</title>
        <pubDate>Mon, 11 Oct 2010 21:04:11 GMT</pubDate>
        
        <dc:creator>wwaites</dc:creator>

        <description>&lt;p&gt;
... and make cache-control header optional
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/693#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/702</link>
        <guid isPermaLink="false">http://localhost/ticket/702</guid>
        <title>#702: The system shall support changing package groups when editing a package</title>
        <pubDate>Mon, 18 Oct 2010 12:09:38 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/702#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/454</link>
        <guid isPermaLink="false">http://localhost/ticket/454</guid>
        <title>#454: Import ONS data via API</title>
        <pubDate>Fri, 20 Aug 2010 10:24:11 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/454#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/456</link>
        <guid isPermaLink="false">http://localhost/ticket/456</guid>
        <title>#456: Daily dump</title>
        <pubDate>Fri, 20 Aug 2010 10:25:17 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/456#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/457</link>
        <guid isPermaLink="false">http://localhost/ticket/457</guid>
        <title>#457: Dump database on a daily basis</title>
        <pubDate>Fri, 20 Aug 2010 10:25:21 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/457#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/462</link>
        <guid isPermaLink="false">http://localhost/ticket/462</guid>
        <title>#462: Visitor downloads a daily database dump</title>
        <pubDate>Fri, 20 Aug 2010 11:55:05 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/462#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/471</link>
        <guid isPermaLink="false">http://localhost/ticket/471</guid>
        <title>#471: API user sends API key in correctly named header</title>
        <pubDate>Fri, 20 Aug 2010 13:48:08 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/471#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/472</link>
        <guid isPermaLink="false">http://localhost/ticket/472</guid>
        <title>#472: API user sends API key in incorrectly named header</title>
        <pubDate>Fri, 20 Aug 2010 13:48:28 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/472#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/473</link>
        <guid isPermaLink="false">http://localhost/ticket/473</guid>
        <title>#473: API user discovers correct header for sending API key</title>
        <pubDate>Fri, 20 Aug 2010 13:50:03 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/473#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/491</link>
        <guid isPermaLink="false">http://localhost/ticket/491</guid>
        <title>#491: Get form for creating harvest source entity</title>
        <pubDate>Sat, 21 Aug 2010 21:43:28 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/491#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/492</link>
        <guid isPermaLink="false">http://localhost/ticket/492</guid>
        <title>#492: Submit harvest source create form response to the API</title>
        <pubDate>Sat, 21 Aug 2010 21:44:02 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/492#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/493</link>
        <guid isPermaLink="false">http://localhost/ticket/493</guid>
        <title>#493: Get harvest source entity</title>
        <pubDate>Sat, 21 Aug 2010 21:44:43 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/493#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/494</link>
        <guid isPermaLink="false">http://localhost/ticket/494</guid>
        <title>#494: Get form for updating remote metadata entity</title>
        <pubDate>Sat, 21 Aug 2010 21:45:06 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/494#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/495</link>
        <guid isPermaLink="false">http://localhost/ticket/495</guid>
        <title>#495: Put form for updating remote metadata entity</title>
        <pubDate>Sat, 21 Aug 2010 21:45:50 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/495#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/546</link>
        <guid isPermaLink="false">http://localhost/ticket/546</guid>
        <title>#546: Get the package create form from the API</title>
        <pubDate>Wed, 01 Sep 2010 11:10:14 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/546#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/547</link>
        <guid isPermaLink="false">http://localhost/ticket/547</guid>
        <title>#547: Submit package create form response to the API</title>
        <pubDate>Wed, 01 Sep 2010 11:11:27 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/547#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/567</link>
        <guid isPermaLink="false">http://localhost/ticket/567</guid>
        <title>#567: Post new harvest job for given harvest source</title>
        <pubDate>Thu, 09 Sep 2010 13:45:43 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/567#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/577</link>
        <guid isPermaLink="false">http://localhost/ticket/577</guid>
        <title>#577: Get remote metadata harvest job errors</title>
        <pubDate>Sat, 11 Sep 2010 12:49:41 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/577#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/578</link>
        <guid isPermaLink="false">http://localhost/ticket/578</guid>
        <title>#578: Get remote metadata harvest job</title>
        <pubDate>Sat, 11 Sep 2010 12:50:07 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/578#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/579</link>
        <guid isPermaLink="false">http://localhost/ticket/579</guid>
        <title>#579: Delete remote metadata harvest job</title>
        <pubDate>Sat, 11 Sep 2010 12:50:40 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/579#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/598</link>
        <guid isPermaLink="false">http://localhost/ticket/598</guid>
        <title>#598: List remote metadata entities for given publisher</title>
        <pubDate>Sat, 11 Sep 2010 14:02:10 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/598#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/650</link>
        <guid isPermaLink="false">http://localhost/ticket/650</guid>
        <title>#650: WUI editing for Authorization Groups</title>
        <pubDate>Sun, 19 Sep 2010 09:54:33 GMT</pubDate>
        
        <dc:creator>pudo</dc:creator>

        <description>&lt;ul&gt;&lt;li&gt;Copy &amp;amp; adapt Group controller tests to suit &lt;a class="missing wiki"&gt;AuthorizationGroups?&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;Copy &amp;amp; adapt Group controllers and templates for Authorization Groups
&lt;/li&gt;&lt;/ul&gt;</description>
        <category>Results</category>
        <comments>http://localhost/ticket/650#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/655</link>
        <guid isPermaLink="false">http://localhost/ticket/655</guid>
        <title>#655: Return status code 404 when harvest source is not found</title>
        <pubDate>Thu, 23 Sep 2010 14:33:19 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/655#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/656</link>
        <guid isPermaLink="false">http://localhost/ticket/656</guid>
        <title>#656: Return status code 404 when harvesting job is not found</title>
        <pubDate>Thu, 23 Sep 2010 14:33:49 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/656#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/390</link>
        <guid isPermaLink="false">http://localhost/ticket/390</guid>
        <title>#390: Remove a package for SB</title>
        <pubDate>Thu, 29 Jul 2010 15:50:25 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/390#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/399</link>
        <guid isPermaLink="false">http://localhost/ticket/399</guid>
        <title>#399: Import BIS data for SD</title>
        <pubDate>Thu, 05 Aug 2010 09:34:50 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/399#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/400</link>
        <guid isPermaLink="false">http://localhost/ticket/400</guid>
        <title>#400: Configure DGU Public API with TSO</title>
        <pubDate>Thu, 05 Aug 2010 09:35:56 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description>&lt;p&gt;
Have TSO configure data.ov.uk/api/catalogue. Have TSO register catalogue.data.gov.uk.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/400#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/414</link>
        <guid isPermaLink="false">http://localhost/ticket/414</guid>
        <title>#414: Change the Apache and Varnish ports</title>
        <pubDate>Tue, 10 Aug 2010 09:13:59 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
Ask Paul for a new machine for testing. Then one for varnish-live and one for varnish-test.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/414#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/415</link>
        <guid isPermaLink="false">http://localhost/ticket/415</guid>
        <title>#415: Chase Talis about loading RDF from CKAN.</title>
        <pubDate>Tue, 10 Aug 2010 09:14:16 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/415#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/416</link>
        <guid isPermaLink="false">http://localhost/ticket/416</guid>
        <title>#416: Meet Evan at COI at 1 o'clock Tuesday 10th August 2010 (to progress Forms API)</title>
        <pubDate>Tue, 10 Aug 2010 09:14:37 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/416#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/419</link>
        <guid isPermaLink="false">http://localhost/ticket/419</guid>
        <title>#419: Meet Paul at COI at 2 o'clock Tuesday 10th August 2010</title>
        <pubDate>Tue, 10 Aug 2010 09:16:34 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/419#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/420</link>
        <guid isPermaLink="false">http://localhost/ticket/420</guid>
        <title>#420: Release ckan 1.1</title>
        <pubDate>Tue, 10 Aug 2010 09:28:38 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/420#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/421</link>
        <guid isPermaLink="false">http://localhost/ticket/421</guid>
        <title>#421: Upgrade test-hmg.ckan.net to latest ckan 1.1</title>
        <pubDate>Tue, 10 Aug 2010 09:29:01 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/421#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/424</link>
        <guid isPermaLink="false">http://localhost/ticket/424</guid>
        <title>#424: Tell JF the format spec &amp; examples</title>
        <pubDate>Tue, 10 Aug 2010 10:35:34 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/424#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/425</link>
        <guid isPermaLink="false">http://localhost/ticket/425</guid>
        <title>#425: Document how licenses can be configured in CKAN</title>
        <pubDate>Tue, 10 Aug 2010 10:35:51 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/425#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/426</link>
        <guid isPermaLink="false">http://localhost/ticket/426</guid>
        <title>#426: Ask list for suggestions improving API docs</title>
        <pubDate>Tue, 10 Aug 2010 10:36:14 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/426#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/443</link>
        <guid isPermaLink="false">http://localhost/ticket/443</guid>
        <title>#443: Get DGU daily dump working (local)</title>
        <pubDate>Fri, 20 Aug 2010 10:10:46 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;ul&gt;&lt;li&gt;Producing daily dump file
&lt;/li&gt;&lt;li&gt;Publishing at ckan.net/dumps/ or better
&lt;/li&gt;&lt;/ul&gt;</description>
        <category>Results</category>
        <comments>http://localhost/ticket/443#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/445</link>
        <guid isPermaLink="false">http://localhost/ticket/445</guid>
        <title>#445: Add dumps to DGU SLA</title>
        <pubDate>Fri, 20 Aug 2010 10:16:20 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description>&lt;p&gt;
Thinking about putting something like this:
&lt;/p&gt;
&lt;p&gt;
Dumps Interface (this is NOT going in the API, it is another interface of the service):
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;resources:
&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
Daily Dump Folder
Daily Dump File
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;ul&gt;&lt;li&gt;locations:
&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
/dump/hmg.ckan.net-YYYY-MM-DD.[json|csv].zip
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;ul&gt;&lt;li&gt;data format:
&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
Dump Folder is a HTML document containing a table of links to Dump Files
Dump File has either JSON or CSV format.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;ul&gt;&lt;li&gt;status codes (200, 404, 500)
&lt;/li&gt;&lt;/ul&gt;</description>
        <category>Results</category>
        <comments>http://localhost/ticket/445#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/461</link>
        <guid isPermaLink="false">http://localhost/ticket/461</guid>
        <title>#461: Change ONS data importing to work via API</title>
        <pubDate>Fri, 20 Aug 2010 11:23:31 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description>&lt;ul&gt;&lt;li&gt;Move script out to ckandgu repo
&lt;/li&gt;&lt;li&gt;Change script to convert xml into package dicts
&lt;/li&gt;&lt;li&gt;Test (against test.ckan.net, hmg.test.ckan.net)
&lt;/li&gt;&lt;li&gt;Deploy
&lt;/li&gt;&lt;/ul&gt;</description>
        <category>Results</category>
        <comments>http://localhost/ticket/461#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/468</link>
        <guid isPermaLink="false">http://localhost/ticket/468</guid>
        <title>#468: Default config file has commented out configuration variable</title>
        <pubDate>Fri, 20 Aug 2010 13:24:19 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/468#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/469</link>
        <guid isPermaLink="false">http://localhost/ticket/469</guid>
        <title>#469: Unit test to check API key in correctly named HTTP header is accepted by server</title>
        <pubDate>Fri, 20 Aug 2010 13:26:00 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/469#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/475</link>
        <guid isPermaLink="false">http://localhost/ticket/475</guid>
        <title>#475: Unit test to check API key in incorrectly named HTTP header is not accepted by server</title>
        <pubDate>Fri, 20 Aug 2010 14:00:02 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/475#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/478</link>
        <guid isPermaLink="false">http://localhost/ticket/478</guid>
        <title>#478: Unit test for "interface resource" in API</title>
        <pubDate>Fri, 20 Aug 2010 14:37:47 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description>&lt;p&gt;
We don't want /api to be an HTML page, but rather provide information about the API in a JSON structure.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/478#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/479</link>
        <guid isPermaLink="false">http://localhost/ticket/479</guid>
        <title>#479: Suggest DGU presents database dumps through front end</title>
        <pubDate>Fri, 20 Aug 2010 17:12:45 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/479#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/508</link>
        <guid isPermaLink="false">http://localhost/ticket/508</guid>
        <title>#508: Create branch ultrastable</title>
        <pubDate>Tue, 24 Aug 2010 15:27:43 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;ul&gt;&lt;li&gt;Create a branch named ultrastable that represents latest version of 1.0 &lt;em&gt;as found on dgu&lt;/em&gt;
&lt;ul&gt;&lt;li&gt;Going forward ultrastable will act as stable - 1 (and either ultrastable or stable will be on the rock-solid production systems such as dgu)
&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Do &lt;strong&gt;not&lt;/strong&gt; deprecate the stable or metastable branch for the present
&lt;/li&gt;&lt;li&gt;Ask for recommendations on mailing list about best practice for branching (e.g. versioned based versus a simple HEAD versus stable) and how this affects standard operations such as applying bugfixes.
&lt;ul&gt;&lt;li&gt;For useful discussion of how to do backporting and applying bugfix patches see: &lt;a class="ext-link" href="http://www.python.org/dev/peps/pep-0374/#backport"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.python.org/dev/peps/pep-0374/#backport&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;NB: in general do &lt;strong&gt;not&lt;/strong&gt; always have to apply in stable/ultrastable and merge upwards for bugfixes -- can use transplant extension as well.
&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;</description>
        <category>Results</category>
        <comments>http://localhost/ticket/508#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/536</link>
        <guid isPermaLink="false">http://localhost/ticket/536</guid>
        <title>#536: Extend base importer merging in resources</title>
        <pubDate>Mon, 30 Aug 2010 13:01:53 GMT</pubDate>
        
        <dc:creator>dread</dc:creator>

        <description>&lt;p&gt;
Multiple ONS records can go into one package e.g. Stats for Jan, Stats for Feb, Stats for Mar etc.
&lt;/p&gt;
&lt;p&gt;
We already identify an existing package by 'external_id'. Now need to find package by title and an extra field (department in ONS case) and allow it to merge in resource and tags. Alert if rest of meta data is different.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/536#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/548</link>
        <guid isPermaLink="false">http://localhost/ticket/548</guid>
        <title>#548: Functional test for getting package create form from the API</title>
        <pubDate>Wed, 01 Sep 2010 11:13:18 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/548#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/549</link>
        <guid isPermaLink="false">http://localhost/ticket/549</guid>
        <title>#549: Method on API controller to return package create form</title>
        <pubDate>Wed, 01 Sep 2010 11:15:48 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/549#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/550</link>
        <guid isPermaLink="false">http://localhost/ticket/550</guid>
        <title>#550: Routing configuration for package create form API resource</title>
        <pubDate>Wed, 01 Sep 2010 11:16:25 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/550#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/551</link>
        <guid isPermaLink="false">http://localhost/ticket/551</guid>
        <title>#551: Documentation for getting package create form from API</title>
        <pubDate>Wed, 01 Sep 2010 11:17:25 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/551#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/552</link>
        <guid isPermaLink="false">http://localhost/ticket/552</guid>
        <title>#552: Method on API controller to accept valid package create form submission</title>
        <pubDate>Wed, 01 Sep 2010 11:20:09 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/552#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/553</link>
        <guid isPermaLink="false">http://localhost/ticket/553</guid>
        <title>#553: Functional test for submitting valid "package create form" response to the API</title>
        <pubDate>Wed, 01 Sep 2010 11:23:23 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/553#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/554</link>
        <guid isPermaLink="false">http://localhost/ticket/554</guid>
        <title>#554: Functional test for submitting invalid "package create form" response to the API</title>
        <pubDate>Wed, 01 Sep 2010 11:23:46 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/554#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/555</link>
        <guid isPermaLink="false">http://localhost/ticket/555</guid>
        <title>#555: Documentation for submitting package create form submission to API</title>
        <pubDate>Wed, 01 Sep 2010 11:24:50 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/555#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/556</link>
        <guid isPermaLink="false">http://localhost/ticket/556</guid>
        <title>#556: Method on API controller to accept invalid package create form submission</title>
        <pubDate>Wed, 01 Sep 2010 11:27:28 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/556#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/581</link>
        <guid isPermaLink="false">http://localhost/ticket/581</guid>
        <title>#581: Determine package name from metadata document</title>
        <pubDate>Sat, 11 Sep 2010 13:14:34 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description>&lt;p&gt;
Need to establish procedure for automatically generating package names from metadata documents.
&lt;/p&gt;
</description>
        <category>Results</category>
        <comments>http://localhost/ticket/581#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/582</link>
        <guid isPermaLink="false">http://localhost/ticket/582</guid>
        <title>#582: Domain object class for harvest source</title>
        <pubDate>Sat, 11 Sep 2010 13:18:24 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/582#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/583</link>
        <guid isPermaLink="false">http://localhost/ticket/583</guid>
        <title>#583: Define fieldset object for harvest source forms</title>
        <pubDate>Sat, 11 Sep 2010 13:19:29 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/583#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/584</link>
        <guid isPermaLink="false">http://localhost/ticket/584</guid>
        <title>#584: Migration script to add harvest source table</title>
        <pubDate>Sat, 11 Sep 2010 13:20:04 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/584#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/585</link>
        <guid isPermaLink="false">http://localhost/ticket/585</guid>
        <title>#585: Method on API controller to return harvest source create form</title>
        <pubDate>Sat, 11 Sep 2010 13:21:42 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/585#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/586</link>
        <guid isPermaLink="false">http://localhost/ticket/586</guid>
        <title>#586: Routing configuration for harvest source create form API resource</title>
        <pubDate>Sat, 11 Sep 2010 13:22:16 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/586#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/587</link>
        <guid isPermaLink="false">http://localhost/ticket/587</guid>
        <title>#587: Documentation for getting harvest source create form from API</title>
        <pubDate>Sat, 11 Sep 2010 13:22:44 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/587#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/588</link>
        <guid isPermaLink="false">http://localhost/ticket/588</guid>
        <title>#588: Method on API controller to accept valid harvest source create form submission</title>
        <pubDate>Sat, 11 Sep 2010 13:26:15 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/588#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/589</link>
        <guid isPermaLink="false">http://localhost/ticket/589</guid>
        <title>#589: Method on API controller to reject invalid harvest source create form submission</title>
        <pubDate>Sat, 11 Sep 2010 13:27:00 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/589#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/590</link>
        <guid isPermaLink="false">http://localhost/ticket/590</guid>
        <title>#590: Documentation for submitting harvest source create form submission to API</title>
        <pubDate>Sat, 11 Sep 2010 13:27:39 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/590#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/591</link>
        <guid isPermaLink="false">http://localhost/ticket/591</guid>
        <title>#591: Routing configuration for harvest source entity API resource</title>
        <pubDate>Sat, 11 Sep 2010 13:34:42 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/591#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/592</link>
        <guid isPermaLink="false">http://localhost/ticket/592</guid>
        <title>#592: Methods to return harvest source entity as JSON</title>
        <pubDate>Sat, 11 Sep 2010 13:38:58 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/592#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/593</link>
        <guid isPermaLink="false">http://localhost/ticket/593</guid>
        <title>#593: Method on API controller to return remote metadata edit form</title>
        <pubDate>Sat, 11 Sep 2010 13:41:38 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/593#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/594</link>
        <guid isPermaLink="false">http://localhost/ticket/594</guid>
        <title>#594: Routing configuration for remote metadata edit form API resource</title>
        <pubDate>Sat, 11 Sep 2010 13:42:12 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/594#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/595</link>
        <guid isPermaLink="false">http://localhost/ticket/595</guid>
        <title>#595: Documentation for getting remote metadata edit form from API</title>
        <pubDate>Sat, 11 Sep 2010 13:42:52 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/595#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/596</link>
        <guid isPermaLink="false">http://localhost/ticket/596</guid>
        <title>#596: Method on API controller to accept valid remote metadata edit form submission</title>
        <pubDate>Sat, 11 Sep 2010 13:44:22 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/596#changelog</comments>
    </item><item>
        <link>http://localhost/ticket/597</link>
        <guid isPermaLink="false">http://localhost/ticket/597</guid>
        <title>#597: Method on API controller to reject invalid remote metadata edit form submission</title>
        <pubDate>Sat, 11 Sep 2010 13:44:49 GMT</pubDate>
        
        <dc:creator>johnbywater</dc:creator>

        <description></description>
        <category>Results</category>
        <comments>http://localhost/ticket/597#changelog</comments>
    </item>
 </channel>
</rss>