{22} Trac tickets (2647 matches)
Results (1501 - 1600 of 2647)
Id | Type | Owner | Reporter | Milestone | Status | Resolution | Summary | Description | Posixtime | Modifiedtime | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
#59 | enhancement | johnbywater | rgrp | v1.0 | closed | fixed | Provide a basic guide to CKAN on the site |
|
1239018583000000 | 1273080019000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#28 | enhancement | somebody | johnbywater | closed | wontfix | Provide a dump of all packages listed on the system in XML | 1152551416000000 | 1200902911000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#496 | requirement | wwaites | johnbywater | ckan-v1.4-sprint-2 | closed | fixed | Provide a mechanism for exporting GEMINII metadata via a CSW interface | 1282427307000000 | 1299164106000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2774 | enhancement | toby | aron.carroll | demo phase 3 | closed | fixed | Provide a method of passing localised strings into the JavaScript |
We need to be able to do the following:
The JavaScript? can then read this file on page load. |
1343661072000000 | 1344351626000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#401 | task | pudo | pudo | closed | fixed | Provide base worker as queue consumer |
We should create and document a basic queue consumer and task processor for CKAN. It will connect to the CKAN update queue, read messages and dispatch them to a consumer function (such as a downloader or an analysis app) |
1281018724000000 | 1286189243000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#282 | enhancement | thejimmyg | dread | closed | wontfix | Provide diverts when package name changes |
When a package's name is changed, references to the old name (in the WUI and REST) are redirected to the new name (assuming the old name is not being reused by another package). |
1270659003000000 | 1338206417000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#503 | task | dread | rgrp | closed | fixed | Provide exemplar package relationships for some packages |
|
1282659631000000 | 1314031851000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2353 | enhancement | ross | ross | ckan-sprint-2012-05-15 | closed | fixed | Provisional user stories for CMS + Blogging |
Provide some provisional user stories for the CMS/Blogging feature. Should include some of the functionality from wordpresser but be more generic. |
1335884700000000 | 1336566004000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1558 | enhancement | David Raznik | jilly mathews | ckan-future | new | Publisher Tools |
Summarise final set of requirements for this and finish development and test. Estimated 10 working days. |
1324291573000000 | 1324291573000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1675 | enhancement | ross | ross | ckan-sprint-2012-02-20 | closed | fixed | Publisher admin authz |
Super #1669 Authz for the publisher admin (who has permission to administer the publisher group themselves). |
1326802923000000 | 1328709915000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1793 | enhancement | ross | ross | closed | duplicate | Publisher changes |
Changes to publishers for customer |
1329214299000000 | 1329214522000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1794 | enhancement | ross | ross | closed | fixed | Publisher changes |
Changes to publishers for customer that would otherwise clutter up the master branch. |
1329214301000000 | 1332148972000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2590 | enhancement | shevski | ross | ckan-backlog | assigned | Publisher dashboard |
Need proper user stories but ... Publisher admins/editors may need a more useful group read page showing things like:
|
1340618617000000 | 1346663416000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1676 | enhancement | ross | ross | ckan-sprint-2012-02-06 | closed | fixed | Publisher editor authz |
Super #1669 Editor authz for publisher groups need to be implemented and tested. |
1326802971000000 | 1328526670000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1198 | enhancement | dread | ckan-backlog | new | Publisher hierarchy |
'Publisher' entities in the model. They are hierarchical. 'User-Publisher' connections with one or more roles (e.g. drafter, moderator). Authorization settings can control who can set what values in a 'published by' type field. Publishers and User-Publishers available to read in the API. Future tickets will provide:
(This feature deprecates authorization groups) |
1308820592000000 | 1339774200000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1670 | enhancement | ross | ross | ckan-sprint-2012-03-05 | closed | fixed | Publisher profile documentation |
Super #1669 Analysis of all permissions for users given their publishers to ensure that we have covered all of the bases and haven't missed any use-cases. |
1326802549000000 | 1338205180000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1671 | enhancement | ross | ross | ckan-sprint-2012-02-06 | closed | fixed | Publisher profile sysadmin authz |
Super #1669 Implement authz for sysadmins in publisher profile |
1326802607000000 | 1328526614000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1672 | enhancement | ross | ross | ckan-sprint-2012-02-06 | closed | fixed | Publisher profile user authz |
Super #1669 Authz for normal users in publisher profile as per sysadmin |
1326802680000000 | 1328526625000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1731 | enhancement | amercader | amercader | ckan-sprint-2012-03-19 | closed | fixed | Publisher support for harvesting |
Estimate: 4-5d Only sysadmins can manage harvest sources right now, we need to allow publishers to handle their own sources. We need to decide if there will be two different profiles on ckanext-harvest, the current one with only sysadmins allowed to manage the harvesting and a new one supporting publishers (ckan core can be configured to not use the publisher model) Tasks include:
(Talk with Ross about the specific functions to use)
|
1328007919000000 | 1332152540000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#298 | enhancement | johnbywater | johnbywater | closed | duplicate | Pull changesets from remote CKAN instance | 1272279591000000 | 1294407080000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2369 | enhancement | seanh | seanh | ckan-sprint-2012-05-15 | closed | fixed | Pull latest translations from Transifex into CKAN 1.7 | 1335975051000000 | 1335975063000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2506 | enhancement | seanh | seanh | ckan-sprint-2012-06-25 | closed | fixed | Pull latest translations from Transifex into CKAN 1.7.1 | 1339175957000000 | 1339596352000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#568 | story | johnbywater | johnbywater | ckan-v1.3 | closed | Pull metadata documents from given harvest source entity | 1284040131000000 | 1288038207000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#20 | enhancement | johnbywater | johnbywater | v0.3 | closed | fixed | Purge a package |
As AAdministrator I want toPurge a deleted package Notes
|
1152550910000000 | 1185473187000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#18 | enhancement | somebody | johnbywater | closed | invalid | Purge a user (registered person) | 1152550871000000 | 1199787607000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1636 | enhancement | seanh | seanh | ckan-v1.7 | closed | wontfix | Purge items from activity streams when object (package etc.) purged from CKAN | 1326304754000000 | 1338204258000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#777 | task | dread | dread | ckan-v1.3 | closed | fixed | Put 503-returning middleware into a module |
Also configure hmgckan, hmgapi, test-hmg and dev-hmg machines. |
1288608324000000 | 1292586843000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1158 | enhancement | pudo | pudo | pdeu-1 | closed | fixed | Put PDEU into read-only mode and remove unneeded functions |
PDEU should be in a mode where:
|
1306337786000000 | 1309804060000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1247 | task | rgrp | dread | ckan-sprint-2011-10-28 | closed | fixed | Put docs on ReadTheDocs |
Put docs on ReadTheDocs? instead of eu13. |
1311941948000000 | 1311955185000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#495 | story | johnbywater | ckan-v1.2 | closed | Put form for updating remote metadata entity | 1282427150000000 | 1285198898000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1367 | defect | dread | dread | closed | fixed | PyPI ckan broken |
manifest.cfg was not included in the pypi package, causing InvalidRepositoryError? when you do 'paster db init'. Appears to affect most CKAN PyPI releases up to and including 1.4.3. |
1317379931000000 | 1317394273000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#200 | defect | rgrp | rgrp | closed | invalid | PythonDistribution write method should write all available metadata |
Current write method just creates a bare bones package and does not write any of the available metadata other than name. |
1259229583000000 | 1311176118000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1587 | enhancement | johnglover | johnglover | ckan-sprint-2012-06-25 | closed | fixed | QA - Check license as part of 5 star rating |
Super: #1594 From Richard Cyganiak on the CKAN discuss list: According to (most of) the definitions of the five-star scheme, the first star already requires an open license, so a dataset shouldn't get any stars at all if it's not under an open license. |
1324480208000000 | 1339433296000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1589 | enhancement | johnglover | johnglover | ckan-backlog | new | QA - Give 5 star rating to datasets with link metadata |
Super: #1594 From Richard Cyganiak on the CKAN Discuss list: Regarding the fifth star (is the dataset linked to others?). This cannot be automatically determined just by looking at the format. It either requires inspection of the actual data, or information about links in the metadata. As you're probably aware, we've established conventions for recording information on data links in CKAN [1], as part of the work of the lodcloud group on the Data Hub. Link information is captured for hundreds of datasets. I would claim that we have the majority of four-star datasets covered there, and hence you can determine if they should get the fifth star by checking for the presence of a links:xxx field. |
1324480600000000 | 1325475095000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1588 | enhancement | johnglover | johnglover | ckan-backlog | new | QA - Give SPARQL endpoints a 4 star rating |
Super: #1594 From Richard Cyganiak on the CKAN Discuss list: Besides considering the media type of resources, it would also make sense to check for the presence of a SPARQL endpoint. SPARQL endpoints are recorded for more than 300 datasets on the Data Hub using the pseudo-type "api/sparql". A few more are recorded with the format "SPARQL". I suggest that datasets with such resources should also be considered for the fourth star. |
1324480405000000 | 1325475178000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1463 | defect | thejimmyg | ckan-sprint-2011-11-21 | closed | wontfix | QA extension no-longer works with packaged CKAN 1.5 |
The extension needs upgrading:
The other option is to delay this functionality and merge with the publisher dashboards after the group refactor. John, David Raznick, David Read, Ira, what do you think? |
1321375614000000 | 1321874259000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2895 | enhancement | rgrp | new | QA pages (e.g. broken resource links) are not paginated |
And as a result timeout on e.g. the datahub ... |
1346175485000000 | 1346175485000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1584 | enhancement | johnglover | johnglover | ckan-backlog | new | QA report improvements - 2.5d |
Super: #1594
|
1324459433000000 | 1338981975000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#474 | task | dread | dread | closed | wontfix | Questions related to fi.ckan.net |
Several questions to answer (and see file in email). To respond to the Finnish team and copy all Q&A to the ckan-discuss list. 1 ) I have played with two different datasets to get the metadata from those imported to CKAN. The other dataset is in PCAXIS format and other one is in Excel format. Please find the scripts + sample files attached in a zip file that contains instructions too to run the scripts. I looked at import scripts written in object oriented manner and getdata samples in CKAN but it was easier for me too write these from scratch (copied the unicrap function from CKAN samples). If I run the PCAXIS import script I get Unicode decode error (see errors file). When I use the unicrap function then the error does not appear in logs. I assume this is some Python environment setting issue. Of course I would like to run the script without unicrap function to get scandic letter imported correctly to ckan(and displayed in WUI). In Excel case there is no scandic letter issue which is kind of strange but this probably relates how the Excel library handles encoding. To be honest the whole unicode/encoding/decoding issue has been quite difficult to deal with and debug. I hope I would get proper environment configuration to handle scandic letters. 2 ) It seem in CKAN by default the localisation file contains 462 strings. The transifex link Rufus sent contains 400 strings. Is transifex the one we should use as localisation file ? Where are the rest 62 strings then fetched from or are they needed at all. I have found that as I have been using the .po file coming in CKAN source (which has API translations too) this also causes similar unicode problems when an error in API occurs (the API error messages containing scandic letters provide the similar UnicodeDecoding? errors as mentioned above). So, it seems the unicode issues appear in various cases. Maybe a proper environment settings will be able to prevent also these problems... If transifex is the one to use I can prepare it and maybe then you could upload it to fi.ckan.net as there will be also other people checking the translations. To run the test and see the API translation errors especially in pcaxis case I would recommend to install attached FI translations to your environment and include lang = fi configuration. It looks like the API errors does not come when running default lang = en. 3 ) Is it possible to change the license selection/options available in license field drop-down ? Where are these located and can these be modified locally ? 4) It looks like the values stored in package extra fields are not searchable. Is this intentional ? It looks more or less that all other fields can be searched using free-text search in CKAN. 5) How package dependencies are defined and managed ? For instance we want to import some packages in a manner that the other package is a child package of another. Does API support this and/or is this possible to do in WUI ? Best Regards, Henri |
1282312255000000 | 1294916760000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#196 | defect | dread | dread | v1.0 | closed | fixed | RDF URI to resolve on CKAN |
Provide RDF version of a package at the RDF URI: http://ckan.net/package/rdf/32000-naples-florida-businesses-kml See email on OKFN help: For the information to be Linked Data, the following URI (from the api.talis.com SPARQL call) should be resolvable to RDF, or an RDFa enhanced HTML page. |
1258727988000000 | 1265389771000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#250 | enhancement | icmurray | dread | ckan-v1.9 | assigned | RDF link in Atom feed |
Add link to RDF representation of a package in our Atom feed. |
1266507695000000 | 1340631430000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2379 | enhancement | ross | ross | ckan-sprint-2012-06-25 | closed | fixed | RDF output, api/sparql |
From: Pierre-Yves Vandenbussche In my use case I need to fetch every sparql endpoint associated to a dataset. With the previous version of your endpoint, I was doing this query: SELECT DISTINCT ?dataset ?endpoint ?title ?identifier WHERE {
} ORDER BY ?title Using your new version,dcterms:title of a dataset is now a rdfs:label ... OK Unfortunately, I don't have the information of "api/sparql" anymore. So I can not differentiate between a dump file and a SPARQL endpoint... Add the required information to the RDF template. |
1336735947000000 | 1340033026000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#344 | defect | dread | closed | fixed | REST Create package with incorrect format gives 500 error |
PUT to /rest/api/package of {"name": "name", "resources": ["someurl.com/data"] } (i.e. resource is a string, not a dictionary) gives 500 error, when it should give a 400 error and helpful error message. Exception: Module ckan.controllers.rest:154 in create << if register == 'package' and not subregister: fs = ckan.forms.get_standard_fieldset() request_fa_dict = ckan.forms.edit_package_dict(ckan.forms.get_package_dict(fs=fs), request_data) fs = fs.bind(model.Package, data=request_fa_dict, session=model.Session) elif register == 'package' and subregister in model.PackageRelationship.get_all_types(): >> request_fa_dict = ckan.forms.edit_package_dict(ckan.forms.get_package_dict(fs=fs), request_data) Module ckan.forms.package_dict:88 in edit_package_dict << for res_dict in value: res_dict_str = {} for key, value in res_dict.items(): res_dict_str[str(key)] = value resources.append(res_dict_str) >> for key, value in res_dict.items(): AttributeError: 'unicode' object has no attribute 'items' |
1276341172000000 | 1277477712000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#167 | defect | dread | dread | v0.11 | closed | fixed | REST interface you can't update multiple tags |
Only first tag is updated. |
1256209993000000 | 1265891178000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#312 | defect | rgrp | dread | closed | invalid | Race condition creating PackageRating |
On ckan.net there are a few packages which cause a 403 exception when you try to rate them: http://www.ckan.net/package/rate/coins-data?rating=3 The exception is occuring here: ckan.rating:39 in set_rating rating_obj = rating_query.one() InvalidRequestError?: Multiple rows returned for one() It looks like this package got rated twice in quick succession, creating two similar PackageRating? objects. This race condition needs to be solved and these particular rating objects repaired. |
1273482785000000 | 1311176173000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1359 | enhancement | rgrp | rgrp | ckan-sprint-2012-02-20 | closed | fixed | Radically simplify standard list of licenses |
Major UX grip and incredibly simple to do. May also want to have basic autocomplete support within the list (trivial to do as well I believe). (Talk to RP about this re how we define lists of licenses). |
1317077855000000 | 1329132464000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1267 | defect | dread | dread | closed | fixed | Random exception: cannot set the body to a unicode value |
Occasionally see this problem when producing an error page. Here's an example WebApp Error: <type 'exceptions.TypeError'>: You cannot set the body to a unicode value without a charset URL: http://at.ckan.net/authorizationgroup/new 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 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:117 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:284 in __call__ << if log_debug: log.debug("Calling Response object to return WSGI data") return response(environ, self.start_response) if log_debug: >> return response(environ, self.start_response) Module webob.exc:248 in __call__ << return [] if not self.body and not self.empty_body: return self.generate_response(environ, start_response) return Response.__call__(self, environ, start_response) >> return self.generate_response(environ, start_response) Module webob.exc:239 in generate_response << status=self.status, headerlist=headerlist, content_type=content_type ) return resp(environ, start_response) >> content_type=content_type Module webob.response:94 in __init__ << if charset is None: raise TypeError( "You cannot set the body to a unicode value without a charset") body = body.encode(charset) self._body = body >> "You cannot set the body to a unicode value without a charset") TypeError: You cannot set the body to a unicode value without a charset |
1312889084000000 | 1312897724000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#362 | defect | dread | dread | closed | invalid | Ratings should not be created with a GET |
BackgroundIn the Web UI, when you rate a package it simply links to something like: http://ckan.net/package/rate/mke-liquor-licenses?rating=3 This creates a GET request. This is bad because:
|
1278925451000000 | 1311176564000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1406 | enhancement | zephod | ckan-backlog | new | Re-enable RSS subscriptions |
RSS 'subscribe' buttons appeared in many places on the site but were not very helpful. They took (confused) users pointed to the raw feed code, and Google Reader could not understand the feed. Safari, however, could interpret it correctly. Their presentation needs to be clear and consistent; the RSS feed really needs testing in a variety of readers; and we need to decide exactly which items should get a feed. (Package updates? Groups?) |
1318861327000000 | 1320930088000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1023 | defect | pudo | pudo | closed | wontfix | Re-queueing of worker requests with errors |
Schedule worker calls to be ran several times, with certain intervals. |
1299493179000000 | 1340626231000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#637 | task | johnbywater | closed | invalid | Read UKLII package data from given metadata document | 1284222536000000 | 1284223104000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#633 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute '' from local copy of metadata document | 1284221272000000 | 1285443112000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#634 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute '' from local copy of metadata document | 1284221284000000 | 1285443115000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#635 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute '' from local copy of metadata document | 1284221305000000 | 1285443119000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#625 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute 'abstract' from local copy of metadata document | 1284221101000000 | 1284675753000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#628 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute 'bounding-box' from local copy of metadata document | 1284221156000000 | 1285443047000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#627 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute 'guid' from local copy of metadata document | 1284221134000000 | 1284598028000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#629 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute 'keywords' from local copy of metadata document | 1284221191000000 | 1285443055000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#626 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute 'point of contact' from local copy of metadata document | 1284221117000000 | 1285443038000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#631 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute 'resource-locator' from local copy of metadata document | 1284221223000000 | 1284675741000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#624 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute 'title' from local copy of metadata document | 1284221083000000 | 1284675746000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#632 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute 'topic category' from local copy of metadata document | 1284221246000000 | 1285443078000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#630 | task | johnbywater | ckan-v1.2 | closed | fixed | Read attribute 'use constraints' from local copy of metadata document | 1284221210000000 | 1285443069000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#764 | enhancement | thejimmyg | dread | ckan-v1.5 | closed | duplicate | Read-only CKAN Web UI |
Whilse using CKAN web interface, you are not tempted to edit stuff:
|
1288091619000000 | 1310133334000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#761 | story | dread | closed | invalid | Read-only CKAN for maintenance |
Administrator wants to upgrade CKAN or move it to another server. During this time the database is being administered and either edits are lost or can't be done. |
1288090334000000 | 1288091977000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#501 | requirement | pudo | ckan-v1.2 | closed | duplicate | Read-only maintenance mode |
CKAN should have a read-only maintenance mode with a nice little banner on all pages, appropriate REST messages etc. Bonus points if this is triggered via an environment variable and thus can be triggered by the surrounding apache. |
1282554617000000 | 1282724566000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#765 | enhancement | dread | ckan-backlog | assigned | Read-only mode - API usage |
All writes to the API are captured and you are returned an error explaining the reason. Possible errors:
|
1288091897000000 | 1338206123000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#763 | enhancement | dread | ckan-future | assigned | Read-only mode - Setup |
Admin configures entering read-only mode in one of two places:
Once enabled, no writes can occur to the database (including user ratings and other usage stats). |
1288091506000000 | 1338206204000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#523 | requirement | pudo | pudo | iati-1 | closed | fixed | Read/write APIs for users and publishing entities |
Read/write APIs for users and publishing entities to access and register data
|
1282893743000000 | 1283897688000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1807 | enhancement | seanh | seanh | ckan-sprint-2012-03-05 | closed | fixed | Recently added/updated datasets for EC portal |
For EC Portal need a page (or HTML snippet embedded in the front page?) listing recently added or updated datasets.
|
1329742326000000 | 1330809641000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#3011 | enhancement | johnglover | johnglover | ckan 2.0 | new | Recline fixes and updates for CKAN 2.0 |
Fixes and updates to Recline / Datapreview for CKAN 2.0. |
1352288455000000 | 1352288455000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2944 | enhancement | dominik | new | Recline preview does not work in Opera |
Opera cannot show a recline preview. I shows 0 records. |
1349090802000000 | 1349090802000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2955 | defect | dominik | dominik | ckan 2.0 | closed | fixed | Recline should be updated | 1349270534000000 | 1350577952000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#75 | enhancement | dread | rgrp | closed | duplicate | Record and display package "usage" information |
How do we do this?
|
1247828785000000 | 1296341223000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#937 | enhancement | sebbacon | rgrp | ckan-v1.4-sprint-5 | closed | fixed | Record download stats for resources (extension) |
As a User (especially as a Package Owner/Maintainer?) I want to know how many times a resource has been downloaded (and when). So let's record download stats (as in clicks on the link for a resource). Implementation
Old Spec (do it in CKAN)
Questions
|
1296340273000000 | 1302513831000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2947 | enhancement | dominik | new | Redirect to the resource page from /resource/{res-id} |
Use story: As a user of the datasore I want to be able to put the resource id without the dataset name in a url and see the resource page. Proposed redirect: /resource/{res-id} -> dataset/foo-bar/resource/{res-id} |
1349097325000000 | 1349097325000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2427 | enhancement | kindly | seanh | ckan-v1.9 | new | Reduce cruft installed into CKAN's virtualenv due to Pylons | 1337946507000000 | 1341268323000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2428 | enhancement | seanh | seanh | ckan-v1.8 | closed | fixed | Reduce/sort out CKAN's dependencies |
This ticket depends on #2423, #2424, #2425, #2426 and #2427.
|
1337946896000000 | 1341314475000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2949 | defect | amercader | amercader | new | Reenable Data API button on the new theme |
The checks to show or not the button need to be updated for the latest datastore version |
1349107464000000 | 1349107464000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1815 | task | amercader | amercader | ckan-future | new | Reenable Sparql endpoint on publicdata.eu |
Estimate: ? The 4store Sparql endpoint has been down for a long time. It needs to be reenabled and we need to check that the necessary informtion is pushed when creating /editing a dataset. |
1329757723000000 | 1338204641000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1013 | defect | sebbacon | sebbacon | ckan-v1.4-sprint-5 | closed | fixed | Refactor & write tests for Wordpresser extension |
The Wordpresser extension seems to be working well for DataGM, but needs caching and tests. |
1298887392000000 | 1301909717000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#230 | task | dread | dread | v1.0 | closed | fixed | Refactor 'package preview' to use 'package read' |
|
1262788084000000 | 1265293953000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1079 | enhancement | kindly | rgrp | ckan-v1.4-sprint-5 | closed | fixed | Refactor API to use new logic layer and dictization |
|
1302509530000000 | 1302777504000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#910 | enhancement | pudo | pudo | ckan-v1.5 | closed | invalid | Refactor CKANrdf to support extras |
Extra fields should be represented in some manner. |
1295266026000000 | 1310128544000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#921 | enhancement | sebbacon | thejimmyg | closed | fixed | Refactor DGU Harvesting |
Refactor harvesting code to simplify. |
1295389237000000 | 1300197629000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#669 | task | pudo | pudo | closed | fixed | Refactor Solr to become a generic worker | 1286189594000000 | 1293057161000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1229 | enhancement | dread | thejimmyg | ckan-sprint-2011-10-24 | closed | fixed | Refactor all database code out of the controllers and into the logic layer |
Progress can be tracked in this document: |
1311093924000000 | 1319645778000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1372 | refactor | johnglover | johnglover | ckan-sprint-2011-10-24 | closed | fixed | Refactor archiver to work as a celery task |
Take the resource archiver (currently part of ckanext-qa) and make it into a standalone extension that works as a celery task. |
1317808970000000 | 1319625783000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1278 | enhancement | amercader | ckan-backlog | new | Refactor authorized_query calls |
There are some functions that still use the Auhtorizer().authorized_query method: ./ckan/controllers/authorization_group.py:24: query = ckan.authz.Authorizer().authorized_query(c.user, model.AuthorizationGroup) ./ckan/lib/base.py:237: groups = ckan.authz.Authorizer.authorized_query(c.user, model.Group, ./ckan/lib/search/sql.py:55: q = authz.Authorizer().authorized_query(username, model.Group) ./ckan/lib/search/sql.py:118: q = authz.Authorizer().authorized_query(self.options.get('username'), model.Package) ./ckan/logic/action/get.py:154: query = Authorizer().authorized_query(user, model.Group, model.Action.EDIT) ./ckan/tests/test_authz.py:158: q = self.authorizer.authorized_query(self.notadmin.name, model.Package) ./ckan/tests/test_authz.py:353: q = self.authorizer.authorized_query(self.notmember.name, model.Package) ./ckan/tests/test_authz.py:357: q = self.authorizer.authorized_query(self.member.name, model.Package) ./ckan/tests/functional/test_authorization_group.py:44: group_count = Authorizer.authorized_query(u'russianfan', model.AuthorizationGroup).count() |
1313415177000000 | 1313415177000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1596 | enhancement | dread | ckan-future | new | Refactor authz roles |
Suggestions from rgrp:
(This ticket is split off from #1065) |
1324549888000000 | 1338205019000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1074 | enhancement | rgrp | rgrp | ckan-v1.5 | closed | fixed | Refactor authz web user interface to have common code and templating |
Currently repeat the same template and code across Package Authz, Group Authz, and Authz Group authz. Having now implemented a new, cleaner setup in ckanext-admin we should port this back into core.
Will also deliver a significant improvement in the form of ajax user lookup. |
1302271586000000 | 1314303581000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#1420 | enhancement | johnglover | johnglover | ckan-sprint-2011-11-21 | closed | fixed | Refactor ckanext-qa to work as a celery task |
Currently can run as a celery task launched by paster command. Still have to add a CKAN plugin so that QA will run when a resource is added or URL changed, and then update the extension controller/templates to look for QA data from the task_status table instead of directly on the resource. |
1319626138000000 | 1320843789000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#409 | task | rgrp | rgrp | datapkg-0.8 | closed | fixed | Refactor cli to be more 'pluggable' |
|
1281348659000000 | 1297074197000000 |