{22} Trac tickets (2647 matches)
Results (701 - 800 of 2647)
Id | Type | Owner | Reporter | Milestone | Status | Resolution | Summary | Description | Posixtime | Modifiedtime | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
#2736 | enhancement | ross | ross | ckan-v1.9 | closed | wontfix | Archiver fixes |
We need to check the archiver to make sure it works as we would expect after the changes in #2732:
Maybe this could/should be implemented as a service rather than a celery task? |
1343121237000000 | 1346670097000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2752 | enhancement | toby | ross | demo phase 2 | closed | fixed | Navigation highlight missing |
When navigating to http://s031.okserver.org:2375/group on the demo server, the Group link in the navbar is not highlighted in the same was as the other links are when visiting those pages. |
1343216582000000 | 1343222618000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2793 | enhancement | toby | ross | demo phase 3 | closed | fixed | Markdown of resource page not rendered as markdown |
As per #2650 (on master/1.8 now) If the resource has a description it isn't rendered as markdown .. |
1343896663000000 | 1343897811000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2796 | enhancement | mark.wainwright | ross | new | Need a datahub one-pager |
A one-pager explaining what the datahub is and with howto/examples for new users. This would make it much easier to explain the value in using the datahub for storing data. |
1343924916000000 | 1345129495000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2851 | enhancement | ross | new | Preview of PDF tries to connect to datastore |
e.g. http://datahub.io/dataset/ccc-gistemp/resource/80ebdbd6-d91b-4fef-9db4-d3dfbd7e868e CKAN attempts to render the PDF as a datastore tabular date even though the mimetype of the PDF is correctly specified. |
1345032766000000 | 1345032766000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2865 | enhancement | ross | ross | closed | fixed | 1.8 unicode error |
URL: http://thedatahub.org/el/tag/jutatt%C3%A1sok Module weberror.errormiddleware:162 in call << traceback_supplement = Supplement, self, environ
Module beaker.middleware:73 in call << self.cache_manager)
Module beaker.middleware:155 in call << headers.append(('Set-cookie', cookie))
Module routes.middleware:131 in call << r'\1', oldpath)
Module pylons.wsgiapp:125 in call <<
Module pylons.wsgiapp:324 in dispatch << if log_debug:
Module ckan.lib.base:239 in call << try:
Module pylons.controllers.core:221 in call << return response(environ, self.start_response)
Module pylons.controllers.core:172 in _dispatch_call << req.environpylons.action_method? = func
Module pylons.controllers.core:107 in _inspect_call << func.name, args)
Module pylons.controllers.core:60 in _perform_call << """Hide the traceback for everything above this method"""
Module ckan.controllers.template:30 in view << """
Module ckan.lib.base:153 in render << try:
Module pylons.templating:249 in cached_template << return content
Module ckan.lib.base:95 in render_template << template = globsapp_globals?.genshi_loader.load(template_name,
Module genshi.template.loader:223 in load << loadfunc = directory(loadfunc)
Module genshi.template.loader:286 in _load_from_directory << def _load_from_directory(filename):
UnicodeEncodeError?: 'ascii' codec can't encode character u'\xe1' in position 73: ordinal not in range(128) CGI Variables CKAN_CURRENT_URL '/el/tag/jutatt%C3%A1sok' CKAN_LANG 'en' CKAN_LANG_IS_DEFAULT True CKAN_PAGE_CACHABLE True CONTENT_TYPE '; charset=utf-8' DOCUMENT_ROOT '/etc/apache2/htdocs' GATEWAY_INTERFACE 'CGI/1.1' HTTP_ACCEPT '*/*' HTTP_ACCEPT_ENCODING 'gzip,deflate' HTTP_CONNECTION 'close' HTTP_FROM 'googlebot(at)googlebot.com' HTTP_HOST 'thedatahub.org' HTTP_USER_AGENT 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)' PATH_INFO '/el/tag/jutatt\xc3\xa1sok' PATH_TRANSLATED '/etc/ckan/datahub/apache.wsgi/el/tag/jutatt\xc3\xa1sok' REMOTE_ADDR '127.0.0.1' REMOTE_PORT '49520' REQUEST_METHOD 'GET' REQUEST_URI '/el/tag/jutatt%c3%a1sok' SCRIPT_FILENAME '/etc/ckan/datahub/apache.wsgi' SERVER_ADDR '127.0.0.1' SERVER_ADMIN '[no address given]' SERVER_NAME 'thedatahub.org' SERVER_PORT '80' SERVER_PROTOCOL 'HTTP/1.0' SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at thedatahub.org Port 80</address>\n' SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)' WSGI Variables application <beaker.middleware.CacheMiddleware? object at 0x7f5312a51650> beaker.cache <beaker.cache.CacheManager? object at 0x7f5312a51790> beaker.get_session <bound method SessionMiddleware?._get_session of <beaker.middleware.SessionMiddleware? object at 0x7f5312a516d0>> beaker.session {'_accessed_time': 1345113298.778472, '_creation_time': 1345113298.778472} mod_wsgi.application_group 'ckan.net|' mod_wsgi.callable_object 'application' mod_wsgi.handler_script mod_wsgi.input_chunked '0' mod_wsgi.listener_host mod_wsgi.listener_port '8080' mod_wsgi.process_group 'datahub' mod_wsgi.request_handler 'wsgi-script' mod_wsgi.script_reloading '1' mod_wsgi.version (3, 3) paste.cookies (<SimpleCookie: >, ) paste.registry <paste.registry.Registry object at 0x7f5309add610> paste.throw_errors True pylons.action_method <bound method TemplateController?.view of <ckan.controllers.template.TemplateController? object at 0x7f52b0ea2d10>> pylons.controller <ckan.controllers.template.TemplateController? object at 0x7f52b0ea2d10> pylons.environ_config {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons <pylons.util.PylonsContext? object at 0x7f52b0ea2b90> pylons.routes_dict {'url': u'el/tag/jutatt\xe1sok', 'action': u'view', 'controller': u'template'} repoze.who.logger <logging.Logger object at 0x7f53127b2b50> repoze.who.plugins {'openid': <OpenIdIdentificationPlugin? 139994769488336>, 'friendlyform': <FriendlyFormPlugin? 139994769488528>, 'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator? object at 0x7f5312d893d0>, 'auth_tkt': <AuthTktCookiePlugin? 139994771858704>, 'ckan.lib.authenticator:OpenIDAuthenticator': <ckan.lib.authenticator.OpenIDAuthenticator object at 0x7f5312d89350>} routes.route <routes.route.Route object at 0x7f531296ea10> routes.url <routes.util.URLGenerator object at 0x7f5309add810> webob._parsed_query_vars (GET([]), ) webob.adhoc_attrs {'language': 'en-us'} wsgi process 'Multi process AND threads (?)' wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7f52d4004990> wsgi.version (1, 1) wsgiorg.routing_args (<routes.util.URLGenerator object at 0x7f5309add810>, {'url': u'el/tag/jutatt\xe1sok', 'action': u'view', 'controller': u'template'}) |
1345114613000000 | 1346670331000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2866 | enhancement | ross | ross | closed | fixed | 1.8 template error |
URL: http://thedatahub.org/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d?key%3Db4c2d03fa8 Module weberror.errormiddleware:162 in call << traceback_supplement = Supplement, self, environ
Module beaker.middleware:73 in call << self.cache_manager)
Module beaker.middleware:155 in call << headers.append(('Set-cookie', cookie))
Module routes.middleware:131 in call << r'\1', oldpath)
Module pylons.wsgiapp:125 in call <<
Module pylons.wsgiapp:324 in dispatch << if log_debug:
Module ckan.lib.base:239 in call << try:
Module pylons.controllers.core:221 in call << return response(environ, self.start_response)
Module pylons.controllers.core:172 in _dispatch_call << req.environpylons.action_method? = func
Module pylons.controllers.core:107 in _inspect_call << func.name, args)
Module pylons.controllers.core:60 in _perform_call << """Hide the traceback for everything above this method"""
Module ckan.controllers.user:409 in perform_reset << c.reset_key = request.params.get('key')
Module ckan.lib.mailer:100 in verify_reset_link << if not user.reset_key or len(user.reset_key) < 5:
AttributeError?: 'NoneType?' object has no attribute 'strip' CGI Variables CKAN_CURRENT_URL '/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d?key%253Db4c2d03fa8' CKAN_LANG 'it' CONTENT_TYPE '; charset=utf-8' DOCUMENT_ROOT '/etc/apache2/htdocs' GATEWAY_INTERFACE 'CGI/1.1' HTTP_ACCEPT '*/*' HTTP_ACCEPT_ENCODING 'gzip,deflate' HTTP_CONNECTION 'close' HTTP_FROM 'googlebot(at)googlebot.com' HTTP_HOST 'thedatahub.org' HTTP_USER_AGENT 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)' PATH_INFO '/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d' PATH_TRANSLATED '/etc/ckan/datahub/apache.wsgi/it/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d' QUERY_STRING 'key%3Db4c2d03fa8' REMOTE_ADDR '127.0.0.1' REMOTE_PORT '54634' REQUEST_METHOD 'GET' REQUEST_URI '/it/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d?key%3Db4c2d03fa8' SCRIPT_FILENAME '/etc/ckan/datahub/apache.wsgi' SERVER_ADDR '127.0.0.1' SERVER_ADMIN '[no address given]' SERVER_NAME 'thedatahub.org' SERVER_PORT '80' SERVER_PROTOCOL 'HTTP/1.0' SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at thedatahub.org Port 80</address>\n' SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)' WSGI Variables application <beaker.middleware.CacheMiddleware? object at 0x7f5312a51650> beaker.cache <beaker.cache.CacheManager? object at 0x7f5312a51790> beaker.get_session <bound method SessionMiddleware?._get_session of <beaker.middleware.SessionMiddleware? object at 0x7f5312a516d0>> beaker.session {'_accessed_time': 1345066159.520708, '_creation_time': 1345066159.520708} mod_wsgi.application_group 'ckan.net|' mod_wsgi.callable_object 'application' mod_wsgi.handler_script mod_wsgi.input_chunked '0' mod_wsgi.listener_host mod_wsgi.listener_port '8080' mod_wsgi.process_group 'datahub' mod_wsgi.request_handler 'wsgi-script' mod_wsgi.script_reloading '1' mod_wsgi.version (3, 3) paste.cookies (<SimpleCookie: >, ) paste.parsed_dict_querystring (MultiDict?([('key=b4c2d03fa8', )]), 'key%3Db4c2d03fa8') paste.parsed_querystring ([('key=b4c2d03fa8', )], 'key%3Db4c2d03fa8') paste.registry <paste.registry.Registry object at 0x7f52eba637d0> paste.throw_errors True pylons.action_method <bound method UserController?.perform_reset of <ckan.controllers.user.UserController? object at 0x7f52e49f7a50>> pylons.controller <ckan.controllers.user.UserController? object at 0x7f52e49f7a50> pylons.environ_config {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons <pylons.util.PylonsContext? object at 0x7f52f5649ad0> pylons.routes_dict {'action': u'perform_reset', 'controller': u'user', 'id': u'3086e91c-fe09-4a98-92e1-19de67a9ac9d'} repoze.who.logger <logging.Logger object at 0x7f53127b2b50> repoze.who.plugins {'openid': <OpenIdIdentificationPlugin? 139994769488336>, 'friendlyform': <FriendlyFormPlugin? 139994769488528>, 'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator? object at 0x7f5312d893d0>, 'auth_tkt': <AuthTktCookiePlugin? 139994771858704>, 'ckan.lib.authenticator:OpenIDAuthenticator': <ckan.lib.authenticator.OpenIDAuthenticator object at 0x7f5312d89350>} routes.route <routes.route.Route object at 0x7f5312961ad0> routes.url <routes.util.URLGenerator object at 0x7f52de7f6390> webob._parsed_query_vars (GET([('key=b4c2d03fa8', )]), 'key%3Db4c2d03fa8') webob.adhoc_attrs {'language': 'en-us'} wsgi process 'Multi process AND threads (?)' wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7f52fc4f1a08> wsgi.version (1, 1) wsgiorg.routing_args (<routes.util.URLGenerator object at 0x7f52de7f6390>, {'action': u'perform_reset', 'controller': u'user', 'id': u'3086e91c-fe09-4a98-92e1-19de67a9ac9d'}) |
1345114641000000 | 1346670324000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2867 | enhancement | ross | new | 1.8 url_for error |
From: <thedatahub.org@…> Date: Thu, Aug 16, 2012 at 10:30 AM Subject: WebApp? Error: <class 'routes.util.GenerationException?'>: url_for can only return a string, got unicode instead: https://ckannet-storage.commondatastorage.googleapis.com/file/fd3e00d9-eb0d-479b-8303-38909e5400ca?Signature=cmuU3CzRHQ86F3aZ0gljxv%2B3IqQ%3D&Expires=1345109432&AWSAccessKeyId=GOOGC6OU3AYPNY47B66M&x-goog-meta-uploaded-by=d5c8ed25-70de-4035-b29d-ddbe363913c6 To: ckan-sysadmin@…, kindly@… URL: http://ckan.net/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca Module weberror.errormiddleware:162 in call << traceback_supplement = Supplement, self, environ
Module beaker.middleware:73 in call << self.cache_manager)
Module beaker.middleware:155 in call << headers.append(('Set-cookie', cookie))
Module routes.middleware:131 in call << r'\1', oldpath)
Module pylons.wsgiapp:125 in call <<
Module pylons.wsgiapp:324 in dispatch << if log_debug:
Module ckan.lib.base:239 in call << try:
Module pylons.controllers.core:221 in call << return response(environ, self.start_response)
Module pylons.controllers.core:172 in _dispatch_call << req.environpylons.action_method? = func
Module pylons.controllers.core:107 in _inspect_call << func.name, args)
Module pylons.controllers.core:60 in _perform_call << """Hide the traceback for everything above this method"""
Module ckan.controllers.storage:190 in file << return fapp(request.environ, self.start_response)
Module ckan.lib.helpers:57 in redirect_to << if are_there_flash_messages():
Module ckan.lib.helpers:79 in url_for << # fix ver to include the slash
Module routes.util:265 in url_for << if not isinstance(url, str) and url is not None:
GenerationException?: url_for can only return a string, got unicode instead: https://ckannet-storage.commondatastorage.googleapis.com/file/fd3e00d9-eb0d-479b-8303-38909e5400ca?Signature=cmuU3CzRHQ86F3aZ0gljxv%2B3IqQ%3D&Expires=1345109432&AWSAccessKeyId=GOOGC6OU3AYPNY47B66M&x-goog-meta-uploaded-by=d5c8ed25-70de-4035-b29d-ddbe363913c6 CGI Variables CKAN_CURRENT_URL '/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca' CKAN_LANG 'en' CKAN_LANG_IS_DEFAULT True CONTENT_TYPE '; charset=utf-8' DOCUMENT_ROOT '/etc/apache2/htdocs' GATEWAY_INTERFACE 'CGI/1.1' HTTP_ACCEPT '*/*' HTTP_ACCEPT_CHARSET 'utf-8;q=0.7,iso-8859-1;q=0.2,*;q=0.1' HTTP_CONNECTION 'close' HTTP_HOST 'ckan.net' HTTP_USER_AGENT 'Mozilla/5.0 (compatible; Ezooms/1.0; ezooms.bot@…)' PATH_INFO '/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca' PATH_TRANSLATED '/etc/ckan/datahub/apache.wsgi/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca' REMOTE_ADDR '127.0.0.1' REMOTE_PORT '37236' REQUEST_METHOD 'GET' REQUEST_URI '/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca' SCRIPT_FILENAME '/etc/ckan/datahub/apache.wsgi' SERVER_ADDR '127.0.0.1' SERVER_ADMIN '[no address given]' SERVER_NAME 'ckan.net' SERVER_PORT '80' SERVER_PROTOCOL 'HTTP/1.0' SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at ckan.net Port 80</address>\n' SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)' WSGI Variables application <beaker.middleware.CacheMiddleware? object at 0x7f5312a51650> beaker.cache <beaker.cache.CacheManager? object at 0x7f5312a51790> beaker.get_session <bound method SessionMiddleware?._get_session of <beaker.middleware.SessionMiddleware? object at 0x7f5312a516d0>> beaker.session {'_accessed_time': 1345109433.273328, '_creation_time': 1345109433.273328} mod_wsgi.application_group 'ckan.net|' mod_wsgi.callable_object 'application' mod_wsgi.handler_script mod_wsgi.input_chunked '0' mod_wsgi.listener_host mod_wsgi.listener_port '8080' mod_wsgi.process_group 'datahub' mod_wsgi.request_handler 'wsgi-script' mod_wsgi.script_reloading '1' mod_wsgi.version (3, 3) paste.cookies (<SimpleCookie: >, ) paste.registry <paste.registry.Registry object at 0x7f5303b05610> paste.throw_errors True pylons.action_method <bound method StorageController?.file of <ckan.controllers.storage.StorageController? object at 0x7f530891fa10>> pylons.controller <ckan.controllers.storage.StorageController? object at 0x7f530891fa10> pylons.environ_config {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons <pylons.util.PylonsContext? object at 0x7f52f864f850> pylons.routes_dict {'action': u'file', 'controller': u'ckan.controllers.storage:StorageController', 'label': u'file/fd3e00d9-eb0d-479b-8303-38909e5400ca'} repoze.who.logger <logging.Logger object at 0x7f53127b2b50> repoze.who.plugins {'openid': <OpenIdIdentificationPlugin? 139994769488336>, 'friendlyform': <FriendlyFormPlugin? 139994769488528>, 'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator? object at 0x7f5312d893d0>, 'auth_tkt': <AuthTktCookiePlugin? 139994771858704>, 'ckan.lib.authenticator:OpenIDAuthenticator': <ckan.lib.authenticator.OpenIDAuthenticator object at 0x7f5312d89350>} routes.route <routes.route.Route object at 0x7f531296e690> routes.url <routes.util.URLGenerator object at 0x7f52f82cd450> webob._parsed_query_vars (GET([]), ) webob.adhoc_attrs {'language': 'en-us'} wsgi process 'Multi process AND threads (?)' wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7f52f5870cd8> wsgi.version (1, 1) wsgiorg.routing_args (<routes.util.URLGenerator object at 0x7f52f82cd450>, {'action': u'file', 'controller': u'ckan.controllers.storage:StorageController', 'label': u'file/fd3e00d9-eb0d-479b-8303-38909e5400ca'}) |
1345114669000000 | 1345128279000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2868 | enhancement | ross | ross | closed | fixed | 1.8 SOLR error |
From: <thedatahub.org@…> Date: Wed, Aug 15, 2012 at 8:34 AM Subject: WebApp? Error: <class 'ckan.lib.search.common.SearchError?'>: SOLR returned an error running query: {'sort': 'metadata_modified desc', 'fq': u'groups:"welcome" capacity:"public" +site_id:"www.ckan.net" +state:active', 'facet.mincount': 1, 'rows': 21, 'facet.limit': '50', 'facet': 'true', 'q': '*:*', 'start': -20, 'wt': 'json', 'fl': 'id data_dict'} Error: "'start' parameter cannot be negative" To: ckan-sysadmin@…, kindly@… URL: http://thedatahub.org/feeds/group/welcome.atom?page=0 Module weberror.errormiddleware:162 in call << traceback_supplement = Supplement, self, environ
Module beaker.middleware:73 in call << self.cache_manager)
Module beaker.middleware:155 in call << headers.append(('Set-cookie', cookie))
Module routes.middleware:131 in call << r'\1', oldpath)
Module pylons.wsgiapp:125 in call <<
Module pylons.wsgiapp:324 in dispatch << if log_debug:
Module ckan.lib.base:239 in call << try:
Module pylons.controllers.core:221 in call << return response(environ, self.start_response)
Module pylons.controllers.core:172 in _dispatch_call << req.environpylons.action_method? = func
Module pylons.controllers.core:107 in _inspect_call << func.name, args)
Module pylons.controllers.core:60 in _perform_call << """Hide the traceback for everything above this method"""
Module ckan.controllers.feed:180 in group << data_dictfq? = 'groups:"%s"' % id
Module ckan.controllers.feed:57 in _package_search << # package_search action modifies the data_dict, so keep our copy intact.
Module ckan.logic.action.get:1130 in package_search << query = search.query_for(model.Package)
Module ckan.lib.search.query:350 in run << except SolrException?, e:
SearchError?: SOLR returned an error running query: {'sort': 'metadata_modified desc', 'fq': u'groups:"welcome" capacity:"public" +site_id:"www.ckan.net" +state:active', 'facet.mincount': 1, 'rows': 21, 'facet.limit': '50', 'facet': 'true', 'q': '*:*', 'start': -20, 'wt': 'json', 'fl': 'id data_dict'} Error: "'start' parameter cannot be negative" CGI Variables CKAN_CURRENT_URL '/feeds/group/welcome.atom?page%3D0' CKAN_LANG 'ja' CONTENT_TYPE '; charset=utf-8' DOCUMENT_ROOT '/etc/apache2/htdocs' GATEWAY_INTERFACE 'CGI/1.1' HTTP_ACCEPT '*/*' HTTP_ACCEPT_ENCODING 'gzip,deflate' HTTP_CONNECTION 'close' HTTP_FROM 'googlebot(at)googlebot.com' HTTP_HOST 'thedatahub.org' HTTP_USER_AGENT 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)' PATH_INFO '/feeds/group/welcome.atom' PATH_TRANSLATED '/etc/ckan/datahub/apache.wsgi/ja/feeds/group/welcome.atom' QUERY_STRING 'page=0' REMOTE_ADDR '127.0.0.1' REMOTE_PORT '33139' REQUEST_METHOD 'GET' REQUEST_URI '/ja/feeds/group/welcome.atom?page=0' SCRIPT_FILENAME '/etc/ckan/datahub/apache.wsgi' SERVER_ADDR '127.0.0.1' SERVER_ADMIN '[no address given]' SERVER_NAME 'thedatahub.org' SERVER_PORT '80' SERVER_PROTOCOL 'HTTP/1.0' SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at thedatahub.org Port 80</address>\n' SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)' WSGI Variables application <beaker.middleware.CacheMiddleware? object at 0x7f5312a51650> beaker.cache <beaker.cache.CacheManager? object at 0x7f5312a51790> beaker.get_session <bound method SessionMiddleware?._get_session of <beaker.middleware.SessionMiddleware? object at 0x7f5312a516d0>> beaker.session {'_accessed_time': 1345016040.884951, '_creation_time': 1345016040.884951} mod_wsgi.application_group 'ckan.net|' mod_wsgi.callable_object 'application' mod_wsgi.handler_script mod_wsgi.input_chunked '0' mod_wsgi.listener_host mod_wsgi.listener_port '8080' mod_wsgi.process_group 'datahub' mod_wsgi.request_handler 'wsgi-script' mod_wsgi.script_reloading '1' mod_wsgi.version (3, 3) paste.cookies (<SimpleCookie: >, ) paste.parsed_dict_querystring (MultiDict?([('page', '0')]), 'page=0') paste.parsed_querystring ([('page', '0')], 'page=0') paste.registry <paste.registry.Registry object at 0x7f5302eef7d0> paste.throw_errors True pylons.action_method <bound method FeedController?.group of <ckan.controllers.feed.FeedController? object at 0x7f52f0341750>> pylons.controller <ckan.controllers.feed.FeedController? object at 0x7f52f0341750> pylons.environ_config {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons <pylons.util.PylonsContext? object at 0x7f52f0341450> pylons.routes_dict {'action': u'group', 'controller': u'feed', 'id': u'welcome'} repoze.who.logger <logging.Logger object at 0x7f53127b2b50> repoze.who.plugins {'openid': <OpenIdIdentificationPlugin? 139994769488336>, 'friendlyform': <FriendlyFormPlugin? 139994769488528>, 'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator? object at 0x7f5312d893d0>, 'auth_tkt': <AuthTktCookiePlugin? 139994771858704>, 'ckan.lib.authenticator:OpenIDAuthenticator': <ckan.lib.authenticator.OpenIDAuthenticator object at 0x7f5312d89350>} routes.route <routes.route.Route object at 0x7f5312961e90> routes.url <routes.util.URLGenerator object at 0x7f52f0341210> webob._parsed_query_vars (GET([('page', '0')]), 'page=0') webob.adhoc_attrs {'language': 'en-us'} wsgi process 'Multi process AND threads (?)' wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7f52ed4873f0> wsgi.version (1, 1) wsgiorg.routing_args (<routes.util.URLGenerator object at 0x7f52f0341210>, {'action': u'group', 'controller': u'feed', 'id': u'welcome'}) |
1345114696000000 | 1345124503000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2870 | enhancement | seanh | ross | new | 1.8 tag_list not defined |
From: <thedatahub.org@…> Date: Thu, Aug 16, 2012 at 3:20 AM Subject: WebApp? Error: <class 'genshi.template.eval.UndefinedError?'>: "tag_list" not defined To: ckan-sysadmin@…, kindly@… URL: http://ckan.net/dataset/uk-postboxes Module weberror.errormiddleware:162 in call << traceback_supplement = Supplement, self, environ
Module beaker.middleware:73 in call << self.cache_manager)
Module beaker.middleware:155 in call << headers.append(('Set-cookie', cookie))
Module routes.middleware:131 in call << r'\1', oldpath)
Module pylons.wsgiapp:125 in call <<
Module pylons.wsgiapp:324 in dispatch << if log_debug:
Module ckan.lib.base:239 in call << try:
Module pylons.controllers.core:221 in call << return response(environ, self.start_response)
Module pylons.controllers.core:172 in _dispatch_call << req.environpylons.action_method? = func
Module pylons.controllers.core:107 in _inspect_call << func.name, args)
Module pylons.controllers.core:60 in _perform_call << """Hide the traceback for everything above this method"""
Module ckan.controllers.package:322 in read << template = template[:template.index('.') + 1] + format
Module ckan.lib.base:153 in render << try:
Module pylons.templating:249 in cached_template << return content
Module ckan.lib.base:102 in render_template << if loader_class == NewTextTemplate?:
Module genshi.core:183 in render << method = self.serializer or 'xml'
Module genshi.output:57 in encode << _encode = lambda string: string
Module genshi.output:569 in call << def call(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1145 in call << :param stream: The marked event stream to filter
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1145 in call << :param stream: The marked event stream to filter
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1145 in call << :param stream: The marked event stream to filter
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module ckanext.googleanalytics.plugin:93 in download_adder << [downloaded %s times]</span>
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1175 in call << """
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1145 in call << :param stream: The marked event stream to filter
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.template.base:605 in _include << from genshi.template.loader import TemplateNotFound?
Module genshi.template.base:565 in _flatten << elif kind is EXPR:
Module genshi.template.base:277 in _eval_expr << if vars:
Module genshi.template.eval:178 in evaluate << traceback_hide = 'before_and_this'
Module ?:51 in <Expression u"tag_list(c.pkg_dict.get('tags', ))"> << <li py:if="c.pkg_dict.get('tags')" class="sidebar-section">
Module genshi.template.eval:309 in lookup_name << val = BUILTINS.get(name, val)
Module genshi.template.eval:410 in undefined << """Raise an UndefinedError? immediately."""
UndefinedError?: "tag_list" not defined CGI Variables CKAN_CURRENT_URL '/dataset/uk-postboxes' CKAN_LANG 'en' CKAN_LANG_IS_DEFAULT True CKAN_PAGE_CACHABLE True CONTENT_TYPE '; charset=utf-8' DOCUMENT_ROOT '/etc/apache2/htdocs' GATEWAY_INTERFACE 'CGI/1.1' HTTP_ACCEPT 'text/html,text/plain,text/xml' HTTP_ACCEPT_CHARSET 'ISO-8859-1,utf-8;q=0.7,*;q=0.7' HTTP_ACCEPT_ENCODING 'gzip' HTTP_ACCEPT_LANGUAGE 'vi,en-us;q=0.7,en;q=0.3' HTTP_CONNECTION 'close' HTTP_HOST 'ckan.net' HTTP_USER_AGENT 'coccoc/1.0 ()' PATH_INFO '/dataset/uk-postboxes' PATH_TRANSLATED '/etc/ckan/datahub/apache.wsgi/dataset/uk-postboxes' REMOTE_ADDR '127.0.0.1' REMOTE_PORT '47065' REQUEST_METHOD 'GET' REQUEST_URI '/dataset/uk-postboxes' SCRIPT_FILENAME '/etc/ckan/datahub/apache.wsgi' SERVER_ADDR '127.0.0.1' SERVER_ADMIN '[no address given]' SERVER_NAME 'ckan.net' SERVER_PORT '80' SERVER_PROTOCOL 'HTTP/1.0' SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at ckan.net Port 80</address>\n' SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)' WSGI Variables application <beaker.middleware.CacheMiddleware? object at 0x7f5312a51650> beaker.cache <beaker.cache.CacheManager? object at 0x7f5312a51790> beaker.get_session <bound method SessionMiddleware?._get_session of <beaker.middleware.SessionMiddleware? object at 0x7f5312a516d0>> beaker.session {'_accessed_time': 1345083636.079552, '_creation_time': 1345083636.079552} mod_wsgi.application_group 'ckan.net|' mod_wsgi.callable_object 'application' mod_wsgi.handler_script mod_wsgi.input_chunked '0' mod_wsgi.listener_host mod_wsgi.listener_port '8080' mod_wsgi.process_group 'datahub' mod_wsgi.request_handler 'wsgi-script' mod_wsgi.script_reloading '1' mod_wsgi.version (3, 3) paste.cookies (<SimpleCookie: >, ) paste.registry <paste.registry.Registry object at 0x7f52e47477d0> paste.throw_errors True pylons.action_method <bound method PackageController?.read of <ckan.controllers.package.PackageController? object at 0x7f52e477b810>> pylons.controller <ckan.controllers.package.PackageController? object at 0x7f52e477b810> pylons.environ_config {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons <pylons.util.PylonsContext? object at 0x7f52e477be90> pylons.routes_dict {'action': u'read', 'controller': u'package', 'id': u'uk-postboxes'} repoze.who.logger <logging.Logger object at 0x7f53127b2b50> repoze.who.plugins {'openid': <OpenIdIdentificationPlugin? 139994769488336>, 'friendlyform': <FriendlyFormPlugin? 139994769488528>, 'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator? object at 0x7f5312d893d0>, 'auth_tkt': <AuthTktCookiePlugin? 139994771858704>, 'ckan.lib.authenticator:OpenIDAuthenticator': <ckan.lib.authenticator.OpenIDAuthenticator object at 0x7f5312d89350>} routes.route <routes.route.Route object at 0x7f5312955a50> routes.url <routes.util.URLGenerator object at 0x7f52eb8c9090> webob._parsed_query_vars (GET([]), ) webob.adhoc_attrs {'language': 'en-us'} wsgi process 'Multi process AND threads (?)' wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7f5308983a80> wsgi.version (1, 1) wsgiorg.routing_args (<routes.util.URLGenerator object at 0x7f52eb8c9090>, {'action': u'read', 'controller': u'package', 'id': u'uk-postboxes'}) |
1345114732000000 | 1345114732000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2878 | enhancement | icmurray | ross | ckan 2.0 | closed | wontfix | Roles and Permissions for Organisations |
As part of merging Organisations into core, it is necessary that we clarify the capacity field with which the users/datasets are added as members to the group 'subclass'. Rather than the capacity being an opaque string that implies auth but doesn't clearly specify it, we will use role names where roles are defined in the database - with a clearly defined set of standard roles. The Role table is expected to have simply a string name/representation and acts as a container for permissions. Each permission is a string of the form object.action (such as package.add, group.delete) of which several are expected to be associated with a role. This means the permission table will contain a string and a reference to the role. This work will require UI changes to the screens allowing users to be added to a group/organisation so that the list of available roles is available to add those users. [x] Model for Role and Permission [ ] Logic layer changes for managing roles/permissions etc. [ ] Determine default roles, perhaps just admin/editor/viewer [ ] Fix the auth layer to use the permissions/roles - may be better implemented as another ticket. |
1345466266000000 | 1350561906000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2879 | enhancement | ross | ross | ckan 2.0 | closed | wontfix | Datasets (Package) should have a 'public' field |
The Package model should have a boolean field added to it describing its visibility beyond that supplied via auth. The related permission for viewing packages where public is set to False would be package.view (show, whatever), and *never* visible for unauthenticated users. |
1345466389000000 | 1350562096000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2880 | enhancement | icmurray | ross | ckan 2.0 | closed | wontfix | Datasets (Package) should have owners |
Each dataset should have an explicit owner that is an organisation. This is the organisation that owns the dataset* and will be used for specifying who can move a dataset out of the default organisation. This should probably be a foreign key link from dataset to organisation (or rather group).
|
1345466535000000 | 1350561968000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2886 | enhancement | ross | ckan 2.0 | new | Configurable related items |
Related items (Apps & Ideas) have a collection of types, which are currently fixed. Some of these types are ambiguous, such as ideas in that they may not have a link - and if they do it is likely to be to a blog post - another existing type. Whilst the URL is required, and we think this should stay required, we should also allow users to change the types found in Apps & Ideas to a shortened list that suits their requirements. |
1345625718000000 | 1345625718000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2902 | enhancement | ross | ckan 2.0 | new | genshi is used in Group controller |
The Group controller uses the genshi module where it may be better for it to use Markup() in the template. |
1346782230000000 | 1346782230000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2916 | enhancement | johnmartin | ross | ckan 2.0 | closed | fixed | User management in orgs needs autocomplete |
The user management in organizations ( http://localhost:5000/organization/users/NAME ) should autocomplete names in the dropdown box so that only valid usernames are added to the table. |
1347451792000000 | 1347970727000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2917 | enhancement | johnmartin | ross | ckan 2.0 | new | Organization admins can delete themselves |
Organization administrators can delete themselves from the user management pages. We should disable this on the front-end as well as the back-end. |
1347451843000000 | 1347455636000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2918 | enhancement | johnmartin | ross | ckan 2.0 | closed | fixed | Can't remove users from organizations |
When you remove someone, without adding them, the text box at the bottom (which should probably autocomplete) is empty, and this causes problems on the server. Ideally when you add a user (select from the autocomplete) it would add another row to the table, defaulting the user to editor and setting the names to user{{X}}name and user{{X}}capacity where X is $('tr').size() |
1347455572000000 | 1347970735000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1202 | enhancement | rgrp | rolf | closed | invalid | Links to datapkg utility don't lead to info about it |
In the presentation of data packages, the link in "The information on this page and the downloads / resources are also available using the datapkg command line utility." (http://knowledgeforge.net/ckan/doc/datapkg/install.html) ends up at the home page of ckan.org Perhaps link it to https://bitbucket.org/okfn/datapkg/overview for now, to save some searching for people who want to find out more? |
1309263613000000 | 1315821804000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1203 | defect | johnglover | rolf | ckan-backlog | new | Moderated edits: html code shows as "changed" although it is not |
I've installed the Moderated Edits extension (ckanext-moderatededits) and am editing a package imported from IATIregistry.org, with an extra field which contains a bit of HTML. The editor indicates the field has changed, although the content hasn't (see screenshot). All I can find so far is a minor difference: in the field content, there is a code — and in the rendered table that is an — |
1309274970000000 | 1313401579000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1 | enhancement | somebody | rgrp | milestone1 | closed | fixed | Visitor visits service |
TitleVisitor visits service As aVisitor (general web user) I want toVisit the website of the service (frontpage) So that
|
1152549417000000 | 1183636342000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#13 | enhancement | somebody | rgrp | closed | invalid | Delete a release | 1152550611000000 | 1218545330000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#16 | enhancement | johnbywater | rgrp | closed | invalid | Update a file |
As aAuthenticated user I want toUpdate a file associated with a release So thatThe file attributes are changed. File attributes are:
Notes
|
1152550796000000 | 1250619162000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#19 | enhancement | somebody | rgrp | closed | invalid | Undelete a user (registered person) | 1152550881000000 | 1199787631000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#29 | enhancement | rgrp | rgrp | milestone16 | closed | fixed | Improve installation process |
|
1152553638000000 | 1183648166000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#30 | enhancement | zool | rgrp | v0.3 | closed | fixed | Tags are added to a package by package owner |
As ASite User I Want ToCreate/Edit/Update/Delete? tags associated with my package Notes
|
1155905753000000 | 1185472559000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#31 | enhancement | somebody | rgrp | closed | wontfix | Add a comment to a package |
As aRegistered user I want toAdd a comment to a package Notes
|
1157374505000000 | 1185472236000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#32 | enhancement | rgrp | rgrp | v0.3 | closed | fixed | View a tag |
As aVisitor I want toView a tag's page which should list all packages associated with that tag (or link to a page containing that list). Notes
|
1157375968000000 | 1185472746000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#33 | enhancement | rgrp | rgrp | v0.5 | closed | fixed | List and search tags |
As aVisitor I want toView a list of the tags on the system and search for a tag by name Notes
|
1157375983000000 | 1199788094000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#35 | defect | rgrp | rgrp | v0.4 | closed | fixed | IP Address for non-logged in users is always 127.0.0.1 when deployed behind a proxy (e.g. on ckan.net) |
When IP address is used to identify non-logged in users (for example on create and editing of packages) it is always 127.0.0.1 when using a reverse proxy (standard deployment configuration on a production machine and used e.g. on http://www.ckan.net). This could be corrected by using HTTP_X_FORWARDED_FOR when available. |
1177006633000000 | 1185471537000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#36 | enhancement | rgrp | rgrp | v0.4 | closed | fixed | Edit package page should support previews |
When editing a package one would like to be able to preview one's changes before saving. |
1177007112000000 | 1185470035000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#37 | enhancement | rgrp | rgrp | v0.5 | closed | fixed | Purge a Revision (i.e. purge all changes associated with that revision) |
Spam entries have started to occur on ckan.net in the last few months. It would be useful to be able to purge these revisions -- that is permanently delete all changes to domain objects associated with those revision (one might also permanently delete that revision -- or alternatively simply mark it as purged). In addition to providing this facility from the shell it would also be useful to be able to do this from the web interface (with associated restrictions on usage via an authorization controller of some sort). |
1192650660000000 | 1199786536000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#38 | enhancement | rgrp | rgrp | v0.5 | closed | fixed | Make data available in machine-usable form |
Currently all data is only available via the web interface which makes it difficult to obtain in bulk. Data should be provided in other more convenient, machine usable forms:
|
1194521614000000 | 1200903004000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#39 | enhancement | johnbywater | rgrp | v0.7 | closed | fixed | When listing packages show more information than just name. |
When a package listing is shown (as on http://ckan.net/package/list) more information than just name should be shown. For example package titles should be shown as well as names (could also list tags and other stuff but simplest is just title). Cost: 1 |
1194608920000000 | 1223908298000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#40 | defect | rgrp | rgrp | v0.5 | closed | fixed | Reserved html characters (such as &) in urls mean package does not render for read view |
A url such as: http://someurl.com/xyz?x=1&VERSION=1.1&Service=WFS when set as url or download_url breaks the rendering of the package with an error like: There was an error rendering the package: not well-formed (invalid token): line 1, column 181 Have checked that removing the & stuff makes the error go away so this looks like an issue with escaping urls when displaying them ... |
1195565228000000 | 1200993319000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#41 | task | rgrp | rgrp | v0.5 | closed | fixed | Upgrade to Latest Version of Pylons (0.9.6.*) and Deploy on Production Machine |
Should do this sooner rather than later to avoid 'clear water' opening up and need to deploy then asap onto production machine to avoid 'clear water' between trunk and production (which then prevents pushing from trunk to production). |
1199786854000000 | 1199787967000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#42 | enhancement | rgrp | rgrp | v0.6 | closed | fixed | In WUI where List of Items to Display is Large Results should be Paged |
As AVisitor I Want ToView lists of items but not have too many on a page (as this leads to slow page loads and difficulty navigating the list). Where there are more items in the results of my action that can be fit on a single page the results should be 'paged' in some manner. DetailsMain place this issue arises:
Should probably have no more than 50 (or so) items on a page. Obvious solution is for actions that return lists to have some kind of pageno parameter and then use this in controller to select what to display. |
1199787162000000 | 1204133257000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#43 | enhancement | rgrp | rgrp | v0.10 | closed | fixed | Generic Attributes for Packages |
As AUser I Want ToAdd arbitrary named attributes to packages (an attribute being a name, type, value triple). Details
Questions (Original)
|
1199788109000000 | 1253709802000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#44 | enhancement | johnbywater | rgrp | v0.7 | closed | fixed | Provide RSS/Atom Feed of Repository History |
As AVisitor I Want ToGet an RSS/Atom Feed of the Repository History to use in my feed reader (or elsewhere). Details
CostLow |
1199788457000000 | 1223390660000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#49 | enhancement | rgrp | rgrp | closed | invalid | Filter Spam in Changes to CKAN Data |
As Asysadmin I Want ToHave revisions to the CKAN data filtered in order to reduce the spam in the system. DetailsIn the long run this is a quite a generic problem common across several OKF systems and probably can become a general component in the okfmisc repo. For time being focus on a well-factored CKAN-specific solution. Suggest we follow path of trac: http://trac.edgewall.org/wiki/SpamFilter Could have a general engine that aggregates spam scores from many different 'plugins' and then marks spam appropriately (actions should be configurable depending on spam level from 'purge' to 'delete' (mark revision as inactive) to 'flag' to 'do nothing'). Main initial plugins would be:
|
1204134691000000 | 1257244973000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#50 | task | rgrp | rgrp | closed | fixed | Investigate apt-get in more detail |
Research apt-get especially wajig and python wrappers for apt-get. Post results on the wiki. |
1215456052000000 | 1267648356000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#51 | enhancement | rgrp | rgrp | v0.7 | closed | fixed | Upgrade CKAN to use sqlalchemy and vdm v0.2 |
Move CKAN codebase to use sqlalchemy (rather than sqlobject) along with vdm v0.2. NB: the upgrade itself should not be too hard, the work will be in providing a satisfactory migration script to convert existing data on ckan.net service. |
1220900438000000 | 1223908230000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#52 | enhancement | rgrp | rgrp | v0.7 | closed | invalid | Paginated results sets should be customizable across domain objects |
|
1223549648000000 | 1223908425000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#53 | enhancement | rgrp | rgrp | v0.8 | closed | fixed | View Information about Package history (i.e. package revisions) |
As AI want toView information about a package history, i.e. what revisions it has. Details
|
1223552139000000 | 1239133021000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#54 | enhancement | johnbywater | rgrp | v0.7 | closed | fixed | Support dump and load of CKAN data to JSON |
As aSysadmin I want toDump (serialize) CKAN data to a simple transport format (e.g. JSON) and be able to load it again. Details
|
1223907883000000 | 1230211256000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#55 | enhancement | rgrp | rgrp | v0.7 | closed | fixed | Code to migrate data from v0.6 to v0.7 using dump and load |
Associated to ticket:51 (upgrade CKAN to new vdm) and ticket:54 (dump/load) need to convert v0.6 data for v0.7. Obvious way to do this is via alteration to data load method. |
1223908240000000 | 1223909891000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#56 | enhancement | rgrp | rgrp | v0.8 | closed | fixed | Show icons indicating package openness |
As AUser or Visitor I Want ToSee simple icons (e.g. tick/cross) next to packages (in lists or on main page) indicating openness status of package. So ThatIt is easy to see the openness status of a package. Details
|
1230211123000000 | 1239018857000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#57 | enhancement | rgrp | rgrp | v0.8 | closed | fixed | Basic datapkg integration with CKAN |
Using datapkg a user can:
|
1238750826000000 | 1239018717000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#58 | enhancement | rgrp | rgrp | v0.9 | closed | fixed | Make bookmarklet to enable easy package registration on CKAN |
Make bookmarklet to enable easy package registration on CKAN Details
|
1239018517000000 | 1239974365000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#59 | enhancement | johnbywater | rgrp | v1.0 | closed | fixed | Provide a basic guide to CKAN on the site |
|
1239018583000000 | 1273080019000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#60 | enhancement | rgrp | rgrp | v0.9 | closed | fixed | Front page usability improvements |
|
1239094266000000 | 1246434921000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#61 | enhancement | rgrp | rgrp | v0.10 | closed | fixed | When dumping data to json do not dump private information like API keys |
Cost: 1h |
1239123529000000 | 1265890790000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#62 | enhancement | dread | rgrp | v0.10 | closed | fixed | Change tags to contain any character (other than space) |
Requires us to url encode the tag names when displaying them ... |
1240585095000000 | 1250181376000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#63 | defect | rgrp | rgrp | v0.9 | closed | fixed | Purge is broken after upgrade of vdm |
Since we upgraded to new vdm (v0.4) which has built in purge support existing purge support looks to be broken. Should be reasonably easy to fix this. Cost: 1h |
1245148623000000 | 1245656000000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#64 | enhancement | rgrp | rgrp | v0.10 | closed | fixed | Switch to repoze.who for authentication |
Switch to repoze.who + openid plugin for authentication from authkit. Already did this in microfacts so should be fairly easy. |
1245168853000000 | 1246127063000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#65 | enhancement | rgrp | rgrp | v0.9 | closed | fixed | Add version attribute to package |
It is essential packages have a version attribute to assist in tracking releases etc (and to allow compatibility with other packaging systems e.g. distutils which is being used by datapkg). cost: 2h |
1245262864000000 | 1246434569000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#66 | enhancement | rgrp | rgrp | v0.10 | closed | fixed | Improve user account UI |
We can think of a bunch of other stuff that could go on their (recent edits, packages you own etc) but these will be separate tickets. |
1245263685000000 | 1250785405000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#67 | enhancement | rgrp | rgrp | v0.10 | closed | fixed | List all of a user's recent edits on their home page |
Additional feature related to ticket:66. cost: 2h |
1245263731000000 | 1250785122000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#68 | enhancement | rgrp | rgrp | v0.9 | closed | fixed | Show affected packages in revision list view |
When listing revisions (at /revision/ or in atom feed) show affected packages. Minor but v. useful UI improvement. Cost: 1h |
1245656153000000 | 1245697554000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#69 | enhancement | rgrp | rgrp | v0.9 | closed | fixed | Change to text-only license field and use external license repo |
Switch from license domain object to a simple license field and use license list from new centralised license repo: <http://knowledgeforge.net/okfn/licenses/>
Cost: 4h (plus migration ...) |
1245687449000000 | 1246437494000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#70 | enhancement | rgrp | rgrp | v0.9 | closed | fixed | Convert from py.test to nosetests |
Cost: 1h |
1246434753000000 | 1247827053000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#71 | enhancement | rgrp | rgrp | v0.10 | closed | fixed | Upgrade to Pylons 0.9.7 |
Cost: 2h |
1246435041000000 | 1250181211000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#72 | enhancement | rgrp | rgrp | v0.10 | closed | fixed | Integrate new logo |
Integrate new logo from http://wiki.okfn.org/ckan/logo into site:
Also can do favicon (separate ticket:48) Cost: 1h |
1246441021000000 | 1251451954000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#73 | enhancement | rgrp | rgrp | closed | invalid | Put enquiry template in db so it can be edited by admins |
Currently stored in the python controller file. This is not the right place and putting it in db will allow editing by admins. May also want to do this for the footer (also in the controller file). Details:
Cost: 2h. |
1247705786000000 | 1266510385000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#74 | enhancement | dread | rgrp | v0.10 | closed | fixed | Add Is It Open links to package pages |
On each package page in the openness field if the package is not open provide a link to is it open create enquiry page. Details:
Cost: 0.5h |
1247828218000000 | 1250182938000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#75 | enhancement | dread | rgrp | closed | duplicate | Record and display package "usage" information |
How do we do this?
|
1247828785000000 | 1296341223000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#76 | enhancement | dread | rgrp | v0.10 | closed | fixed | Convert to use formalchemy for all forms |
Current form stuff is not very good (uses formencode). Switch to formalchemy would improve this, especially on validation. As an extra we could utilize the formalchemy pylons admin interface (pretty much for free). Cost: 12h Details
|
1247829041000000 | 1251301765000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#77 | enhancement | dread | rgrp | v0.11 | closed | fixed | Rate packages |
As a User or VisitorI wish to rate a package in some way. On the package view, below Openness, there is a 'Rating' heading with the star rating which is selectable. Rating out of 5. One user or IP, one vote. package_rating table: package | user | rating annakarenina | joe.bloggs.openid.com | 4 annakarenina | 154.2.5.47 | 1 |
1247829193000000 | 1255176732000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#78 | enhancement | rgrp | rgrp | ckan-sprint-2011-10-28 | closed | fixed | Extend login cookie lifetime |
When you login you get given a cookie but it is very short (life of your browser session I think). Work out how to extend to something reasonable (30 days or perhaps forever with logout unsetting cookie).
Cost: ? |
1247829310000000 | 1314877169000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#79 | enhancement | dread | rgrp | v0.10 | closed | fixed | Improvements to package search |
Several things:
Since we should be moving to a more sophisticated search solution anyway (to allow prioritisation etc) maybe we should cautious as to what we do now. |
1247829864000000 | 1265890806000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#80 | enhancement | dread | rgrp | v0.10 | closed | fixed | Refactor or remove modes code |
Get rid of modes in the RESTful API. Do json stuff directly in controllers.
|
1247844263000000 | 1265890912000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#81 | enhancement | rgrp | rgrp | vdm-0.7 | closed | fixed | Support for sqlalchemy 0.5 | 1248285433000000 | 1268487327000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#82 | enhancement | rgrp | rgrp | closed | fixed | Support diffing of versioned objects |
Should have function/facility to get a diff of a version object between 2 revisions. Function should return a dictionary of fields with diffs. Details:
Cost: 4h (don't think this is a huge request) |
1248289499000000 | 1256565441000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#83 | enhancement | rgrp | rgrp | vdm-0.6 | closed | fixed | Allow "ignored" fields on versioned objects |
Allow 'ignored' fields on versioned objects (i.e. attributes which are not 'versioned'). This is not hard to do as we already have most of the necessary mechanisms set up in the Revisioner object. Cost: 2h |
1248339384000000 | 1267648301000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#84 | enhancement | kindly | rgrp | ckan-future | assigned | Revert support on versioned objects |
Basic revert in the classic wiki form is already support by purging a Revision. However may wish to support:
Seems low priority at present. Cost: ? |
1248339543000000 | 1340626385000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#85 | enhancement | rgrp | rgrp | closed | fixed | Convert state from an object to an enumeration |
No real benefit of having State object as opposed to a simple text field with enumerated values and this second option is both simpler and more flexible. Main hassle here is that it requires migration in all projects that use vdm. If we're going to do this we should do it sooner rather than later. Cost: 2h (+ 1h for a conversion method) |
1248339662000000 | 1263206391000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#86 | enhancement | rgrp | rgrp | closed | fixed | Support for stateful dict-like collections |
Already support stateful list-like collections and should extend this to dict-like collections. (This is prerequisite for implementing versioned "extra" (key/value) attributes on packages in CKAN and elsewhere). |
1248430798000000 | 1249050202000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#87 | enhancement | rgrp | rgrp | closed | duplicate | Multiple download links |
Multiple download links, including links to mirrors and multiple formats/versions |
1248693302000000 | 1258470719000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#88 | enhancement | rgrp | rgrp | v0.11 | closed | fixed | Download (link) metadata |
Support for download metadata (file size, file formats, version information). See also: ticket:87 (multiple download links) |
1248693385000000 | 1265891491000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#89 | enhancement | nickstenning | rgrp | closed | fixed | Tag cloud for package tags |
Should not be hard to do (lots of existing libraries) but not sure that this is very important. |
1248693939000000 | 1265892698000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#90 | enhancement | nickstenning | rgrp | v0.11 | closed | fixed | Link to RDF versions of CKAN data |
We should link to representations on semantic.ckan.net
Cost: 3h Future
|
1248943742000000 | 1265890334000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#91 | enhancement | dread | rgrp | v0.10 | closed | fixed | Add author and maintainer attributes to package |
Add the following attributes to package:
Gives us full compatibility to: http://docs.python.org/distutils/setupscript.html#additional-meta-data Column ordering - should come after name, title, url, download_url. |
1249049780000000 | 1250864156000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#92 | enhancement | rgrp | rgrp | closed | wontfix | Add RDFa to package pages | 1249049927000000 | 1297344859000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#93 | enhancement | rgrp | rgrp | v0.10 | closed | fixed | Access control for packages |
Should be able to limit ability to a user's ability to do things with packages (read, edit etc). This is a big ticket (it may required splitting) and full details are in separate wiki page: AccessControl. Cost: 8d |
1249055049000000 | 1253613274000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#94 | enhancement | dread | rgrp | v0.10 | closed | fixed | Use sqlalchemy-migrate to handle db/model upgrades |
Details of how to go about this here <http://www.rufuspollock.org/2009/07/27/sqlalchemy-migrate-with-pylons/> Cost: 2h |
1249134185000000 | 1250604808000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#95 | enhancement | rgrp | rgrp | closed | fixed | Add manifest support |
Support for listing files (manifest) contained within a package. Traditional manifests just list the files. Suggest in addition we have support for optional metadata in form of key, value pairs. |
1249981842000000 | 1251454716000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#96 | defect | rgrp | rgrp | closed | invalid | info command must give up to date information for python-type distributions |
(2008-09-10) at present when setup.py is edited info command may not give up to date information if pkg-info (in egg.info) is not rebuilt. Suggest: info command needs to rebuilds pkg-info in python-type distributions. |
1249982410000000 | 1311176063000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#97 | enhancement | rgrp | rgrp | closed | duplicate | Do not create a distribution on a path is something already exists there |
(2009-03-09) Do not create a distribution at path X if path X already exists and contains material (unless forced via a force option). Cost: 1h |
1249983557000000 | 1318181317000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#98 | enhancement | rgrp | rgrp | datapkg-0.7 | closed | fixed | Replace use of pastescript templates in PythonDistribution with of something simpler |
Replace use of pastescript templates in PythonDistribution? (write) with of something simpler (allowing us to remove dependency on pastescript). |
1249983810000000 | 1297210774000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#99 | enhancement | rgrp | rgrp | closed | wontfix | Test DbIndex with sqla 0.5 |
Test DbIndex? with sqla 0.5 (and get it working if it does not work). Cost: ?? Priority: low because DbIndex? is not currently that important to us (also wonder whether we should try using CKAN code here to stop us reinventing the wheel). |
1249985537000000 | 1297081088000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#100 | enhancement | rgrp | rgrp | closed | fixed | Convert existing data on disk to a datapkg distribution |
(2008-10-29) convert existing directory on disk to a datapkg distribution (PythonDistribution? by default). This would be presented in the CLI as a convert command. Details:
Cost: 4h |
1249986628000000 | 1318181227000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#101 | enhancement | rgrp | rgrp | closed | fixed | (Improved) Download support |
Once on disk should uncompress (if necessary). Details
Cost: 1d |
1249988866000000 | 1267648607000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#102 | enhancement | rgrp | rgrp | closed | fixed | Switch to using UUIDs for revision ids |
This is better for long term sustainability, especially if we want to "push and pull" from unrelated repositories in the future. Details:
|
1250068175000000 | 1260285104000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#103 | enhancement | kindly | rgrp | ckan-v1.5 | closed | fixed | View a package at a given revision |
As a user I want to view a package at a given revision:
Cost: 2h |
1251289897000000 | 1311180850000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#104 | enhancement | rgrp | rgrp | closed | fixed | View a package at a given version |
As a user i want to see a package at "version" X (NB: not revision X).
|
1251292672000000 | 1311181303000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#105 | enhancement | dread | rgrp | v0.10 | closed | fixed | Package groups (view) |
As a user I want to be able to create groups of packages. This functionality is different from tags:
Group properties
Don't version groups for now. Groups address in the WUI will be:
Group editing and searching will be another ticket. Cost: 3d |
1251392282000000 | 1252488496000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#106 | enhancement | dread | rgrp | closed | duplicate | Regularly convert CKAN data to RDF and put on Talis CC |
Sister to ticket:90 (Link to RDF version of CKAN data on Talis Connected Commons). Talis have already kindly done an initial conversion. We should repeat this process regularly and re-upload the data to Talis CC. In the long run may wish to only re-convert packages changed since the last upload. However given relatively smaller size of full dataset this optimization is probably not yet required. Attached is the ruby script used by Talis for conversion Cost: ? (1d+ depending on e.g. how easy integration with Talis CC is) |
1251454474000000 | 1256140649000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#107 | enhancement | rgrp | rgrp | closed | invalid | Provide information about uploading material |
Often people who are registering resources want to make the associated material available. We should:
In long run (now ticket:186) we may automate this by providing a ckan upload facility which caches the data and then reuploads it to relevant service (disadvantage is "we" are the owner of the data on that service ...) |
1251466274000000 | 1296341644000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#108 | enhancement | dread | rgrp | v0.10 | closed | fixed | Package search in the REST API |
Add package search facility in the rest api at /api/search Queries can be provided as for the normal package search either by posting to that url or by performing a get with a query string. E.g. .../api/search/package?q=xyz Query parameters:
Additional parameters in addition to query ("q" or "qjson") are:
Return value is json encoded dictionary with keys:
Extras (for the future)
|
1251915845000000 | 1252340511000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#124 | enhancement | rgrp | rgrp | v1.0 | closed | fixed | Display Generic Package Attributes in WUI |
Split out from ticket:43 |
1253709702000000 | 1254735558000000 |