{22} Trac tickets (2647 matches)
Results (1301 - 1400 of 2647)
Id | Type | Owner | Reporter | Milestone | Status | Resolution | Summary | Description | Posixtime | Modifiedtime | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
#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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#59 | enhancement | johnbywater | rgrp | v1.0 | closed | fixed | Provide a basic guide to CKAN on the site |
|
1239018583000000 | 1273080019000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#156 | enhancement | johnbywater | dread | v1.0 | closed | fixed | Whitelist for html in mark-down field |
Not just links that need to be displayed. Other html should be displayed too, such as tables which can't be represented in markdown. Do a search of the existing fields to see what is needed. |
1255623973000000 | 1271962871000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#210 | enhancement | johnbywater | johnbywater | closed | invalid | User registration |
Native registration scenario: Complete registration form, require unique email address (indicate this not displayed on site), full name (indicate this is displayed on site), password. Dispatch email confirmation message. Respond to email confirmation message causes user to be logged in. Users are assigned a uuid. |
1260292578000000 | 1266509788000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#211 | enhancement | johnbywater | johnbywater | closed | invalid | User login |
Native login scenario: Complete login form, require email address. Any session is resumed. Mandated technical requirement: use Repoze (see plugin:form of repoze.who); borrow from BlastOff?. See CKAN or Microfacts for usage of repose with openid. |
1260292624000000 | 1266509848000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#236 | enhancement | johnbywater | johnbywater | closed | fixed | The system shall present to all users a form for starting data openness enquiries | 1264157100000000 | 1264157324000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#237 | enhancement | johnbywater | johnbywater | closed | fixed | The system shall accept submissions from authenticated owners of activated accounts using the data openness enquiry form by presenting the enquiry summary and prompting for confirmation | 1264157377000000 | 1264157420000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#238 | enhancement | johnbywater | johnbywater | closed | invalid | The system shall accept submissions from unauthenticated users of the data openness enquiry form by creating an anonymous pending enquiry action, and by redirecting the user to login form, passing a reference to the pending action | 1264157814000000 | 1266509806000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#240 | defect | johnbywater | rgrp | v1.0 | closed | fixed | Do not allow creation of PackageResource object without a url |
Currently it is possible (v0.11) to have a PackageResource? object without a url. This should be impossible to do (either at creation time or via modification). |
1265399747000000 | 1272383770000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#251 | enhancement | johnbywater | johnbywater | v1.0 | closed | fixed | Present in the API a list of revision IDs, and present individual revisions when referenced by ID |
Want to have:
Support querying by "since time" and "since revision". Each individual revision should be available in the REST API (read-only):
|
1266519743000000 | 1271423917000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#263 | enhancement | johnbywater | rgrp | v1.1 | closed | fixed | Improve and test openid login |
At the moment the user has to figure out to login with providers -- this is not always obvious (e.g. google). We could improve this with a small bit of javascript. As an example see: http://standalone.demo.civicrm.org/standalone/ Not sure exactly what library that is using (or if bespoke) so alternatives include (NB: we already use jquery): In addition to implementing this we also need to test logging in with main providers: google, wordpress -- as we have had reports of it not working with e.g. wordpress (not sure if this testing can be automated really -- best hope would be selenium I think -- so OK if done by hand). Cost: 3h (2h UI), (1h testing) |
1267605039000000 | 1279292730000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#265 | enhancement | johnbywater | dread | v1.0 | closed | fixed | More detail shown in Atom feed |
Use caseAs a user I want to stay abreast of package changes, such as a new package being created, newer data is available for a package or a new download is available for a package. ImplementationAdd into the Atom feed:
|
1267708364000000 | 1271636891000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#266 | enhancement | johnbywater | dread | v1.0 | closed | fixed | Package feed |
As a user I want to track changes to a particular package. Provide an Atom feed, linked from the package read page. |
1267716417000000 | 1271636901000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#267 | defect | johnbywater | rgrp | vdm-0.7 | closed | fixed | Diffs for object that is created in that revision |
Currently this raises an exception because there is no package/package_revision in existence at from_revision. |
1268041383000000 | 1272960518000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#270 | enhancement | johnbywater | johnbywater | closed | fixed | Refactor ckan/lib/importer and ckanclient/loader. |
There is code to create packages in-process (ckan/lib/importer) and via HTTP (ckanclient/loaders/base). There is also code to read different kinds of package source (Google Spreadsheets spreadsheet, other spreadsheet). Propose to refactor all this to have template method in base command class (subclasses may implement command line interface, graphical user interface, or Web interface), where the template method calls on aggregated strategy objects for: reading raw spreadsheet data from spreadsheet application; for inferring CKAN package entities from the raw spreadsheet data; and for writing package entities to CKAN service. Spreadsheet readers to be factored to allow for variations of spreadsheet application. Raw data inferrers to allow for variations in spreadsheet cell structure. CKAN writer strategies to allow for either CKAN client or direct linking. Actual cases then supported by specifying existing strategies (or defining new ones) in a script that invokes the command class. |
1268671804000000 | 1290596640000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#271 | enhancement | johnbywater | johnbywater | v1.0 | closed | fixed | The system shall support distributing changes. |
See DistributingChanges for analysis and functional requirements. |
1268672137000000 | 1273596144000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#279 | enhancement | johnbywater | dread | v1.0 | closed | fixed | Ensure package's license is an option when it's edited |
With forms configurable to show a subset of licenses and ckan instances moving packages from server to server, there is a chance that a user will edit a package and the existing package's license is not displayed in the form. If the user submits this form without touching the license dropdown, then the value is lost. So for this case we should add the package's license to the list displayed. |
1270205931000000 | 1272451384000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#284 | defect | johnbywater | rgrp | v1.0 | closed | fixed | Move tag/read/xxx to simple tag/xxx like package and group |
Also put in redirect from old locations (see examples with plurals in routing.py) Estimated cost: 20m Actual cost: 40m |
1270664552000000 | 1271852451000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#290 | defect | johnbywater | dread | v1.0 | closed | fixed | Revision API - docs |
doc/api.rst needs to cover the new Revision REST interface. |
1271268759000000 | 1271636910000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#293 | defect | johnbywater | dread | v1.0 | closed | fixed | REST PackageResource update causes exception |
This is caused by editing a package with resources over the REST interface. Exception: URL: http://de.ckan.net/api/rest/package/destatis Module weberror.errormiddleware:162 in __call__ << __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: >> app_iter = self.application(environ, sr_checker) Module repoze.who.middleware:107 in __call__ << wrapper = StartResponseWrapper(start_response) app_iter = app(environ, wrapper.wrap_start_response) # The challenge decider almost(?) always needs information from the >> app_iter = app(environ, wrapper.wrap_start_response) Module beaker.middleware:73 in __call__ << self.cache_manager) environ[self.environ_key] = self.cache_manager return self.app(environ, start_response) >> return self.app(environ, start_response) Module beaker.middleware:152 in __call__ << headers.append(('Set-cookie', cookie)) return start_response(status, headers, exc_info) return self.wrap_app(environ, session_start_response) def _get_session(self): >> return self.wrap_app(environ, session_start_response) Module routes.middleware:130 in __call__ << 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 >> response = self.app(environ, start_response) Module pylons.wsgiapp:125 in __call__ << controller = self.resolve(environ, start_response) response = self.dispatch(controller, environ, start_response) if 'paste.testing_variables' in environ and hasattr(response, >> response = self.dispatch(controller, environ, start_response) Module pylons.wsgiapp:324 in dispatch << if log_debug: log.debug("Calling controller class with WSGI interface") return controller(environ, start_response) def load_test_env(self, environ): >> return controller(environ, start_response) Module ckan.lib.base:51 in __call__ << # available in environ['pylons.routes_dict'] try: return WSGIController.__call__(self, environ, start_response) finally: model.Session.remove() >> return WSGIController.__call__(self, environ, start_response) Module pylons.controllers.core:221 in __call__ << return response(environ, self.start_response) response = self._dispatch_call() if not start_response_called: self.start_response = start_response >> response = self._dispatch_call() Module pylons.controllers.core:172 in _dispatch_call << req.environ['pylons.action_method'] = func response = self._inspect_call(func) else: if log_debug: >> response = self._inspect_call(func) Module pylons.controllers.core:107 in _inspect_call << func.__name__, args) try: result = self._perform_call(func, args) except HTTPException, httpe: if log_debug: >> result = self._perform_call(func, args) Module pylons.controllers.core:60 in _perform_call << """Hide the traceback for everything above this method""" __traceback_hide__ = 'before_and_this' return func(**args) def _inspect_call(self, func): >> return func(**args) Module ckan.controllers.rest:145 in update << fs = ckan.forms.group_fs_combined fs = fs.bind(entity, data=request_fa_dict) validation = fs.validate_on_edit(entity.name, entity.id) if not validation: response.status_int = 409 >> validation = fs.validate_on_edit(entity.name, entity.id) Module ckan.forms.package:385 in validate_on_edit << temp_name = orig_pkg_name self.data['Package-%s-name' % record_id] = u'something_unique' validation = self.validate() if temp_name: # restore it >> validation = self.validate() Module formalchemy.forms:175 in validate << if self.readonly: raise Exception('Cannot validate a read-only FieldSet') return AbstractFieldSet.validate(self) def sync(self): >> return AbstractFieldSet.validate(self) Module formalchemy.forms:104 in validate << success = True for field in self.render_fields.itervalues(): success = field._validate() and success # run this _after_ the field validators, since each field validator # resets its error list. we want to allow the global validator to add >> success = field._validate() and success Module formalchemy.fields:763 in _validate << try: value = self._deserialize() except validators.ValidationError, e: self.errors.append(e) >> value = self._deserialize() Module formalchemy.fields:1354 in _deserialize << if self.is_composite_foreign_key: return self.query(self.relation_type()).get(python_pk(self.renderer.deserialize())) return self.renderer.deserialize() >> return self.renderer.deserialize() Module formalchemy.fields:183 in deserialize << if self.field.is_collection: return [self._deserialize(subdata) for subdata in self._serialized_value()] return self._deserialize(self._serialized_value()) def _deserialize(self, data): >> return self._deserialize(self._serialized_value()) Module formalchemy.fields:167 in _serialized_value << if self.field.is_collection: return self._params.getall(self.name) return self._params.getone(self.name) def deserialize(self): >> return self._params.getone(self.name) Module formalchemy.base:63 in getone << if v is None or isinstance(v, basestring) or isinstance(v, cgi.FieldStorage): return v return v[0] def getall(self, key): v = dict.get(self, key) >> return v[0] TypeError: 'int' object is unsubscriptable Thanks to Friedrich for spotting this. |
1271756102000000 | 1271940083000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#296 | enhancement | johnbywater | johnbywater | closed | duplicate | Commit CKAN revisions to changeset system | 1272279521000000 | 1294407032000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#297 | enhancement | johnbywater | johnbywater | closed | duplicate | Update CKAN repository from changeset system | 1272279556000000 | 1294407051000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#298 | enhancement | johnbywater | johnbywater | closed | duplicate | Pull changesets from remote CKAN instance | 1272279591000000 | 1294407080000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#299 | enhancement | johnbywater | johnbywater | closed | duplicate | Merge diverging lines of changesets | 1272279698000000 | 1294407099000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#302 | enhancement | johnbywater | dread | v1.0 | closed | fixed | Advertise a package's feed visually |
Visual display of a package's feed in the Package Read (/package/xyz) and Package History (/package/history/xyz) pages. Motivation: each package's Atom feed is mentioned in the <link rel="alternate" type="application/atom+xml" ...> tag, which Firefox displays with a feed icon, but the other 3/4 of users may not discover it. The Repo History (/revision) page has a visual link the feed. PS It would be nice to display the feed icon in both these places too. |
1272370397000000 | 1272453821000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#304 | defect | johnbywater | johnbywater | v1.0 | closed | fixed | Previewing package with resource with missing url is broken |
Intended outcome: See resource url validation error when previewing package with a resources that has no url. Recurring Error: URL: http://127.0.0.1:5000/package/new File 'pyenv-ckan/lib/python2.5/site-packages/weberror/evalexception.py', line 431 in respond app_iter = self.application(environ, detect_start_response) File 'pyenv-ckan/lib/python2.5/site-packages/repoze/who/middleware.py', line 107 in __call__ app_iter = app(environ, wrapper.wrap_start_response) File 'pyenv-ckan/lib/python2.5/site-packages/beaker/middleware.py', line 73 in __call__ return self.app(environ, start_response) File 'pyenv-ckan/lib/python2.5/site-packages/beaker/middleware.py', line 152 in __call__ return self.wrap_app(environ, session_start_response) File 'pyenv-ckan/lib/python2.5/site-packages/Routes-1.10.3-py2.5.egg/routes/middleware.py', line 130 in __call__ response = self.app(environ, start_response) File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/wsgiapp.py', line 125 in __call__ response = self.dispatch(controller, environ, start_response) File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/wsgiapp.py', line 324 in dispatch return controller(environ, start_response) File 'pyenv-ckan/src/ckan/ckan/lib/base.py', line 50 in __call__ return WSGIController.__call__(self, environ, start_response) File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/controllers/core.py', line 221 in __call__ response = self._dispatch_call() File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/controllers/core.py', line 172 in _dispatch_call response = self._inspect_call(func) File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/controllers/core.py', line 107 in _inspect_call result = self._perform_call(func, args) File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/controllers/core.py', line 60 in _perform_call return func(**args) File 'pyenv-ckan/src/ckan/ckan/controllers/package.py', line 216 in new clear_session=True) File 'pyenv-ckan/src/ckan/ckan/controllers/package.py', line 357 in _render_edit_form edit_form_html = fs.render() File 'pyenv-ckan/src/ckan/ckan/forms/builder.py', line 13 in render return render(self.form_template) File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/templating.py', line 663 in render format=format, namespace=kargs, **cache_args) File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/templating.py', line 546 in render **options) File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/plugin.py', line 110 in render File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/core.py', line 179 in render File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 60 in encode File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 425 in __call__ File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 592 in __call__ File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 698 in __call__ File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 532 in __call__ File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/core.py', line 283 in _ensure File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 569 in _include File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/markup.py', line 245 in _match File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 543 in _exec File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 533 in _eval File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 520 in _eval File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 286 in _eval_expr File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/eval.py', line 180 in evaluate File 'pyenv-ckan/src/ckan/ckan/templates/package/form_fields.html', line 52 in <Expression u'h.literal(field.render())'> ${h.literal(field.render())} File 'pyenv-ckan/lib/python2.5/site-packages/FormAlchemy-1.3.4-py2.5.egg/formalchemy/fields.py', line 1217 in render return self.renderer.render(**opts) File 'pyenv-ckan/src/ckan/ckan/forms/common.py', line 311 in render return render('package/form_resources') File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/templating.py', line 663 in render format=format, namespace=kargs, **cache_args) File 'pyenv-ckan/lib/python2.5/site-packages/Pylons-0.9.7-py2.5.egg/pylons/templating.py', line 546 in render **options) File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/plugin.py', line 110 in render File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/core.py', line 179 in render File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 60 in encode File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 425 in __call__ File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 592 in __call__ File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 698 in __call__ File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/output.py', line 532 in __call__ File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/core.py', line 283 in _ensure File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 569 in _include File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/markup.py', line 245 in _match File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 543 in _exec File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 510 in _eval File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 520 in _eval File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/base.py', line 286 in _eval_expr File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/eval.py', line 180 in evaluate File 'pyenv-ckan/src/ckan/ckan/templates/package/form_resources.html', line 14 in <Expression u"res['id'] if res else ''"> <td><input name="${c.id}-${i}-id" type="hidden" value="${res['id'] if res else ''}" /></td> File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/eval.py', line 335 in lookup_item File 'pyenv-ckan/lib/python2.5/site-packages/Genshi-0.5.1-py2.5-linux-i686.egg/genshi/template/eval.py', line 405 in undefined UndefinedError: {'url': u'a', 'hash': u'a', 'description': u'a', 'format': u'a'} has no member named "id" How to reproduce:
|
1272379550000000 | 1272447296000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#305 | defect | johnbywater | johnbywater | v1.0 | closed | fixed | Search result pagination is broken |
Expect to page through results. Only page 1 is shown, all other pages fail to display. Reproduce by searching for something common and browsing to the second page. |
1272468229000000 | 1272994804000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#314 | defect | johnbywater | johnbywater | closed | fixed | Bugs getting revisions from the REST API |
Bug report regarding getting revisions: Getting revisons by ID (on the latest ID) GET "http://test-hmg.ckan.net/api/search/revision?since_revision=44aac9b6-ba24-43a8-87a1-f6923dc523ff" Returns a whole load of stuff (it's also quite slow - about 10 seconds) I'm expecting it to return just an empty array - am I doing something wrong here - if so could you clarify correct use of the API? GET "http://test-hmg.ckan.net/api/search/revision?since_time=2010-04-30T23:45" Returns the empty string - I'd expect an empty array ie [] GET "http://test-hmg.ckan.net/api/search/revision?since_time=2010-04-31T23:45" Returns an internal server error 500 - I think it should probably be "bad Request" 400 (the date is invalid) |
1273743755000000 | 1276523983000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#337 | enhancement | johnbywater | rgrp | v1.1 | closed | fixed | Download links for resources should open in new window |
target = _blank Cost: 30m |
1275422151000000 | 1279300972000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#338 | story | johnbywater | johnbywater | v1.1 | closed | Reference groups by ID in addition to name, since group names can change | 1275901137000000 | 1280446480000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#343 | defect | johnbywater | dread | closed | fixed | Packages referred by ID in API |
When you do a Package Search or query a Package Relationship in the API version 2, the responses have relationships which refer to packages by name, not by ID. |
1276180179000000 | 1278066420000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#347 | enhancement | johnbywater | johnbywater | closed | fixed | The system shall present the package edit form in an API | 1276523692000000 | 1277820440000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#348 | enhancement | johnbywater | johnbywater | closed | fixed | The system shall accept package edit form submissions in an API | 1276523793000000 | 1277820496000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#349 | defect | johnbywater | johnbywater | ckan-v1.2 | closed | invalid | The system shall support authorised users to edit packages on data.gov.uk | 1276523851000000 | 1282908974000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#354 | defect | johnbywater | johnbywater | closed | invalid | Collect together requirements and top-level design for user/package 'groups' |
Collect together requirements and top-level design for user/package 'groups': existing tickets, Rufus spec, Sean spec, meeting notes (dread) email, based on existing user authz stuff. http://knowledgeforge.net/ckan/trac/wiki/AccessControl Do we add these into user-role table somehow or new table? To present this to team |
1277131335000000 | 1282908983000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#357 | defect | johnbywater | johnbywater | closed | fixed | Fix API documentation, to correct misleading HTTP_AUTHORIZATION statement. |
Sean Burlington wrote:
|
1277459886000000 | 1277461466000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#372 | bug | johnbywater | johnbywater | ckan-v1.2 | closed | Fix system limits on CKAN for DGU |
Set limits in /etc/security/limits.conf so that we can always ssh in at least. Requested by DGU. |
1279885752000000 | 1281522535000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#374 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Design servicization of CKAN API | 1280223118000000 | 1280398501000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#375 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Integrate Forms API into Drupal |
Requested by DGU. |
1280223168000000 | 1280405812000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#376 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Implement servicization of CKAN API |
Requested by DGU. |
1280223226000000 | 1281000755000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#378 | story | johnbywater | johnbywater | v1.1 | closed | fixed | My user story #1 | 1280325186000000 | 1280326706000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#379 | task | johnbywater | johnbywater | v1.1 | closed | fixed | My dev task #1 | 1280325277000000 | 1280326496000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#380 | task | johnbywater | johnbywater | v1.1 | closed | fixed | My dev task #2 | 1280325304000000 | 1280326595000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#382 | story | johnbywater | johnbywater | v1.1 | closed | Measure quality of service parameters |
As a service administrator, I want to measure responsiveness, throughput, and availability of a CKAN service. |
1280346974000000 | 1280854608000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#383 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Create middleware feature to generate QoS throughput log | 1280347595000000 | 1280854578000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#384 | story | johnbywater | johnbywater | v1.1 | closed | Send alert when QoS measurements break expectation | 1280347841000000 | 1280496812000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#385 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Send email if QoS measurement breaks QoS criteria | 1280355527000000 | 1280496127000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#386 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Set limits in /etc/security/limits.conf | 1280356594000000 | 1281088994000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#387 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Fix failing tests in search sub-system trigged by recent changes | 1280357804000000 | 1280446047000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#388 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Reply to "two projects" question from RS | 1280395503000000 | 1280405288000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#389 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Investigate timezone issue raised by SB | 1280395554000000 | 1280422414000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#391 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Create monitoring feature to generate QoS responsiveness log | 1280446714000000 | 1280854592000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#392 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Create monitoring feature to generate QoS availability log | 1280446769000000 | 1280496140000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#393 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Create aggregation feature to aggregate QoS log | 1280446811000000 | 1280496962000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#394 | task | johnbywater | johnbywater | closed | duplicate | Fix munin on DGU (?) | 1280485351000000 | 1294407189000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#396 | task | johnbywater | johnbywater | closed | fixed | Integrate Forms API into Drupal | 1280854226000000 | 1282324934000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#397 | task | johnbywater | johnbywater | v1.1 | closed | fixed | Implement QoS monitoring for DGU | 1280854935000000 | 1281000745000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#398 | task | johnbywater | johnbywater | ckan-v1.3 | closed | fixed | Create Public API documentation for DGU (draft) | 1281000828000000 | 1294407372000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#400 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Configure DGU Public API with TSO |
Have TSO configure data.ov.uk/api/catalogue. Have TSO register catalogue.data.gov.uk. |
1281000956000000 | 1288003690000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#413 | task | johnbywater | johnbywater | ckan-v1.3 | closed | invalid | Write functional tests for DGU caching | 1281431633000000 | 1294407458000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#414 | task | johnbywater | dread | ckan-v1.2 | closed | fixed | Change the Apache and Varnish ports |
Ask Paul for a new machine for testing. Then one for varnish-live and one for varnish-test. |
1281431639000000 | 1288003770000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#416 | task | johnbywater | dread | ckan-v1.2 | closed | fixed | Meet Evan at COI at 1 o'clock Tuesday 10th August 2010 (to progress Forms API) | 1281431677000000 | 1281529736000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#419 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Meet Paul at COI at 2 o'clock Tuesday 10th August 2010 | 1281431794000000 | 1281529739000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#425 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Document how licenses can be configured in CKAN | 1281436551000000 | 1281605524000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#445 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Add dumps to DGU SLA |
Thinking about putting something like this: Dumps Interface (this is NOT going in the API, it is another interface of the service):
|
1282299380000000 | 1283250620000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#456 | story | johnbywater | dread | ckan-v1.2 | closed | duplicate | Daily dump | 1282299917000000 | 1282665858000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#468 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Default config file has commented out configuration variable | 1282310659000000 | 1283250799000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#497 | story | johnbywater | johnbywater | closed | duplicate | Respond to CSW "GetRecords" request | 1282427334000000 | 1294407718000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#532 | defect | johnbywater | johnbywater | ckan-v1.2 | closed | invalid | Just a test - please ignore | 1282906842000000 | 1282907197000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#534 | defect | johnbywater | dread | ckan-v1.2 | closed | fixed | buildbot config - database machine moved |
Configure buildbot to use postgres db which has been moved to eu5.okfn.org pudo said: Could you perhaps also comment on http://knowledgeforge.net/okfn/tasks/ticket/466 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. |
1283165568000000 | 1288002762000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#545 | requirement | johnbywater | johnbywater | ckan-v1.2 | closed | The system shall support creating packages via the Form API | 1283339310000000 | 1283458648000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#546 | story | johnbywater | johnbywater | ckan-v1.2 | closed | Get the package create form from the API | 1283339414000000 | 1286896814000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#547 | story | johnbywater | johnbywater | ckan-v1.2 | closed | Submit package create form response to the API | 1283339487000000 | 1283458645000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#548 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Functional test for getting package create form from the API | 1283339598000000 | 1283351141000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#549 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Method on API controller to return package create form | 1283339748000000 | 1283353945000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#550 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Routing configuration for package create form API resource | 1283339785000000 | 1283351840000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#551 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Documentation for getting package create form from API | 1283339845000000 | 1283354302000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#552 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Method on API controller to accept valid package create form submission | 1283340009000000 | 1283436028000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#553 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Functional test for submitting valid "package create form" response to the API | 1283340203000000 | 1283433851000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#554 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Functional test for submitting invalid "package create form" response to the API | 1283340226000000 | 1283436393000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#555 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Documentation for submitting package create form submission to API | 1283340290000000 | 1283354313000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#556 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Method on API controller to accept invalid package create form submission | 1283340448000000 | 1283436605000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#566 | requirement | johnbywater | johnbywater | ckan-v1.3 | closed | invalid | The system shall support harvesting remote metadata | 1284039619000000 | 1294232284000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#568 | story | johnbywater | johnbywater | ckan-v1.3 | closed | Pull metadata documents from given harvest source entity | 1284040131000000 | 1288038207000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#570 | story | johnbywater | johnbywater | ckan-v1.3 | closed | duplicate | Validate metadata document against UKLP schematron | 1284040256000000 | 1294407974000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#571 | story | johnbywater | johnbywater | ckan-v1.3 | closed | fixed | Save metadata document and associate with harvest source entity | 1284040495000000 | 1288038218000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#572 | story | johnbywater | johnbywater | ckan-v1.3 | closed | Write CKAN package from metadata document |
The attributes we need to read in are being defined here: http://okfnpad.org/uklii The design advice is to prepare, test, and maintain a dictionary of XPaths for each of the attributes. Work effort is to be directed to the maintainability of the XPath statements. We need to know which are needed for which documents, and to have a way of preventing cruft. |
1284040784000000 | 1288038237000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#610 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Load local copy of metadata document | 1284218592000000 | 1288041706000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#611 | task | johnbywater | johnbywater | ckan-v1.3 | closed | invalid | Load local copy of XML schema for metadata document | 1284218639000000 | 1294408239000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#612 | task | johnbywater | johnbywater | ckan-v1.3 | closed | duplicate | Check given XML schema validates given metadata document | 1284218750000000 | 1294408188000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#613 | task | johnbywater | johnbywater | closed | Store result of schema validation check on metadata document object | 1284218828000000 | 1286798466000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#614 | task | johnbywater | johnbywater | closed | invalid | Acquire local copy of XML schema for remote metadata documents | 1284219077000000 | 1288038898000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#615 | task | johnbywater | johnbywater | closed | invalid | Acquire local implementation of UKLP schematron |
We "just" need a schematron.validate(metadata) method. :-) |
1284219174000000 | 1288038926000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#616 | task | johnbywater | johnbywater | closed | invalid | Store result of schematron validation check on metadata document object | 1284219246000000 | 1288038907000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#617 | task | johnbywater | johnbywater | ckan-v1.3 | closed | duplicate | Check UKLP schematron validates given metadata document | 1284219298000000 | 1294408164000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#621 | task | johnbywater | johnbywater | ckan-v1.3 | closed | fixed | Metadata document links extracted from WAF response | 1284220707000000 | 1288038326000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#622 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | Metadata document identifiers extracted from CSW GetRecords responses | 1284220740000000 | 1287510408000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#623 | task | johnbywater | johnbywater | ckan-v1.2 | closed | fixed | CSW GetRecords request for all identifiers (with CSW authentication) | 1284220777000000 | 1287507837000000 |