{22} Trac tickets (2647 matches)
Results (301 - 400 of 2647)
Id | Type | Owner | Reporter | Milestone | Status | Resolution | Summary | Description | Posixtime | Modifiedtime | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
#2761 | enhancement | seanh | ckan-v1.8 | new | Document all the errors you can get when setting up filestore, and how to fix them |
Add it to a 'Troubleshooting' section on the filestore page: http://docs.ckan.org/en/ckan-1.7.1/filestore.html For the error messages and their solutions, see various threads on ckan-dev |
1343302566000000 | 1343302566000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2762 | defect | seanh | ckan-v1.8 | new | test_related.py crashes |
/home/seanh/Projects/ckan/ckan/ckan/tests/functional/test_related.py ImportError? (cannot import name assert_regexp_matches) |
1343303753000000 | 1343303753000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2763 | defect | seanh | ckan-v1.8.1 | new | Multilingual tests failing |
test_multilingual_plugin.TestDatasetTermTranslation?.test_dataset_index_translation, test_multilingual_plugin.TestDatasetTermTranslation?.test_group_read_translation both failing for me on master |
1343303819000000 | 1350303864000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2766 | enhancement | seanh | shevski | demo phase 4 | assigned | prevent draft datasets making it to activity stream |
The new ckan creates datasets as part of a 3 phase process. To allow for this partially created datasets can have a state that is 'draft' or 'draft-complete'. These datasets should not be seen as active by the activity stream. If we click 'add dataset' and then complete the first phase of adding a dataset then we end up having a activity stream created. When we add a resource in the next phase (add data) again an activity stream item xxx added resource to dataset is created We do not want these adding. Essentially if a dataset has a state.startswith('draft') then we want the activity stream to ignore all actions involving it. finally when the state is changed form state.startswith('draft') to state=='active' we want a xxx has created dataset ... to be added to the stream. The best way to do this would be to branch from 2375-demo-theme-stable and get it to work there. Let me know if you need any help with this ticket or a better explanation of the problem. |
1343318795000000 | 1344543193000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2768 | enhancement | toby | shevski | demo phase 5 | new | normalise excel to xls |
so that data proxy works |
1343319382000000 | 1344351663000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2771 | enhancement | seanh | seanh | ckan-v1.8 | new | Documentation and examples for IDatasetForm and IGroupForm |
Add minimal, working IDatasetForm and IGroupForm example extensions to core, with tests. The IDatasetForm example should use tag vocabularies (two birds with one stone) The IDatasetForm and IGroupForm docs are not very good (and are somewhat spread around different doc chapters), fix them up, and reference the new working examples. Tab Vocabularies docs should reference IDatasetForm example. When using convert_to/from_extras() you have to remove any free extras from the form or it won't work, this needs to be documented (in the docstring maybe) There have been recent changes to the schemas that IDatasetForm and IGroupForm use, make sure the docs are up to date. |
1343392238000000 | 1350303564000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2773 | enhancement | markw | markw | ckan-v1.9 | new | About page needs improving |
The about page for the DataHub? (thedatahub.org/about) could be improved. More importantly the default about page for a generic CKAN instance should be completely different - focus more on Open Data rather than the community hub idea (as this is more relevant for most installations) and remove specific references to tdh. |
1343646795000000 | 1343646795000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2775 | enhancement | toby | aron.carroll | demo phase 4 | new | Add bin/less to paster serve command |
Ideally the ./bin/less command would be run when the server is started.
|
1343685686000000 | 1344543962000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2777 | enhancement | icmurray | new | bug: user attributes | 1343726363000000 | 1343726363000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2780 | enhancement | toby | shevski | demo phase 4 | new | way for admins to undelete datasets |
Since admins can see deleted datasets - there should be a way for them a) to know they are currently deleted & not viewable by normal users - ticket: #2779 b) way to undelete such datasets - this ticket I suggest a button on the edit form instead of the delete button i.e. remove normal delete button with 'deleted dataset, only admins can view' with undelete button next to the message? |
1343737248000000 | 1345023811000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2784 | defect | icmurray | icmurray | new | model dictize sensitive data |
The model dictize layer doesn't consistently remove sensitive data from the dictized models. It should use the current context to decide whether to include sensitive data or not. |
1343814685000000 | 1343814685000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2785 | enhancement | johnmartin | aron.carroll | demo phase 5 | assigned | Allow resources to be re-ordered |
Not sure where this functionality should be added, possibly in one of the sidebar widgets when editing a resource? Ira, what are your thoughts? |
1343816523000000 | 1346235916000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2786 | enhancement | shevski | demo phase 5 | new | target blank HTML downloads |
e.g. if I click on download here: http://s031.okserver.org:2375/dataset/example-dataset/resource/d8797e51-b497-46ca-a274-8675533d110b can it take me to a new tab instead of navigating away from ckan? |
1343819814000000 | 1343819814000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2788 | enhancement | amercader | amercader | ckan-v1.9 | new | Speed improvements on creating/updating and indexing |
Specially needed when importing large numbers of datasets. Profiling the import command from the harvesting extension has shown some areas where improvements could be made. |
1343832992000000 | 1343832992000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2790 | enhancement | kindly | toby | demo phase 4 | new | logic.action.user_show is slow |
This is a very slow call it would benefit from the sort of speed-ups that package-search received for me locally this is taking 6 seconds for rufus using the datahub data I have. I think a lot of this is the dataset retrival/dictization can we just grab json blobs from solr? also is it possible to specify a sort order/paging? I've put this as a demo-theme ticket as it is an big issue on the demo we are at 25 second page loads - which i can get down to about 8.8 secs so this is the main pain point now |
1343852483000000 | 1345023734000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2795 | enhancement | toby | demo phase 5 | new | Check validation of HTML, CSS, JS |
Ensure that we are being standards compliant |
1343903128000000 | 1343903128000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2796 | enhancement | mark.wainwright | ross | new | Need a datahub one-pager |
A one-pager explaining what the datahub is and with howto/examples for new users. This would make it much easier to explain the value in using the datahub for storing data. |
1343924916000000 | 1345129495000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2810 | enhancement | kindly | ckan-future | new | heroku ckan support |
Get ckan working on heroku |
1344364858000000 | 1344364858000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2813 | enhancement | toby | markw | demo phase 5 | new | Confusing sidebar on demo dataset page |
On a dataset page on demo.ckan.org, the left sidebar is confusing.
|
1344420206000000 | 1344445419000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2814 | enhancement | shevski | markw | assigned | Demo: upload file behaves oddly |
When adding a new resource by uploading a file, I select a file called say create-group.png. I expect the following to happen:
Instead of this,
|
1344420360000000 | 1346670381000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2815 | defect | seanh | seanh | ckan-v1.8.1 | new | db_to_form_package_schema() strips tracking summary, isopen |
If an IDatasetForm plugin with a db_to_form_schema() based on db_to_form_package_schema() (which is in turn based on default_package_schema()) is in use then the 'tracking_summary' dict and the 'isopen' bool get stripped from package dicts during validation, e.g. during package_show(), and these values are then not available to templates. |
1344444427000000 | 1350303821000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2818 | defect | seanh | danieljohnlewis | demo phase 4 | assigned | Improve related item schema |
Problem: When creating a related item (e.g. a Visualisation), if you don't put in a URL it succeeds, but on the related items and apps pages it renders it as a link to the same page. Expected: Always require a URL and it should only submit if one is added |
1344504176000000 | 1346231718000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2820 | defect | danieljohnlewis | demo phase 5 | new | English Language: Visualization -> Visualisation |
Problem: In the English version (which has a UK flag, indicating British English), the word "Visualization" is used. For an example see the "Filter by type" drop down on the /apps page. Expected: This should be "Visualisation" in British English. Any instances of "Visualize" should be changed to "Visualise" too. |
1344504455000000 | 1344504455000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2821 | enhancement | danieljohnlewis | demo phase 5 | new | Featured Items on Filter |
Problem: On /apps page in the Filter Results box there is a "Only show featured items" checkbox, on selection it comes up with 0 solutions. Expected: Presumably an admin can create "featured items" so that they can be randomly selected on front page (is this correct)? If there are no "featured items" in the whole database can this check box be hidden? Bug is: no UI or obvious way to create featured items. Also the checkbox looks un-styled |
1344504504000000 | 1344505492000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2822 | enhancement | toby | toby | demo phase 4 | new | Resource additional info titles format/i18n |
the title for additional info should be translated capitalised etc |
1344504620000000 | 1344543985000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2823 | enhancement | toby | toby | demo phase 5 | new | resource additional info title order |
Order the items so that none user fields are first from ticket #2707 |
1344504773000000 | 1344504773000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2828 | enhancement | toby | shevski | demo phase 4 | new | Draft datasets are confusing - tickets need creating |
reported as editing datasets incorrect e.g. clicking on edit here http://s031.okserver.org:2375/dataset/ff takes you to create dataset page http://s031.okserver.org:2375/dataset/edit/ff but this is the correct behaviour of a draft dataset We need to show draft datasets correctly proper tickets need making for the different issues after review of issues with them - who can see, where, admins and viewing, orgs too etc |
1344506178000000 | 1344547324000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2829 | enhancement | johnglover | toby | ckan-v1.9 | new | Archiver fails on 403 http response |
Had this issue with the archiver on my local machine need to be logged in (I am admin) to see via web front end $ paster archiver update -c ../ckan/development.ini 2012-08-09 11:01:37,636 INFO [ckanext.archiver.commands] Archival of dataset resource data added to celery queue: opencontext-chogha-mish-fauna (1 resources) 2012-08-09 11:01:37,671 INFO [ckanext.archiver.commands] Getting dataset metadata: south-african-national-gov-budget-2012-13 2012-08-09 11:01:37,900 INFO [ckan.lib.base] /api/action/package_show render time 0.043 seconds Traceback (most recent call last): File "/home/toby/okfn/pyenv/bin/paster", line 8, in <module> load_entry_point('PasteScript==1.7.5', 'console_scripts', 'paster')() File "/home/toby/okfn/pyenv/lib/python2.7/site-packages/paste/script/command.py", line 104, in run invoke(command, command_name, options, args[1:]) File "/home/toby/okfn/pyenv/lib/python2.7/site-packages/paste/script/command.py", line 143, in invoke exit_code = runner.run(args) File "/home/toby/okfn/pyenv/lib/python2.7/site-packages/paste/script/command.py", line 238, in run result = self.command() File "/home/toby/okfn/pyenv/src/ckanext-archiver/ckanext/archiver/commands.py", line 98, in command response = app.post(api_url + '/package_show', data) File "/home/toby/okfn/pyenv/lib/python2.7/site-packages/paste/fixture.py", line 262, in post expect_errors=expect_errors) File "/home/toby/okfn/pyenv/lib/python2.7/site-packages/paste/fixture.py", line 243, in _gen_request return self.do_request(req, status=status) File "/home/toby/okfn/pyenv/lib/python2.7/site-packages/paste/fixture.py", line 406, in do_request self._check_status(status, res) File "/home/toby/okfn/pyenv/lib/python2.7/site-packages/paste/fixture.py", line 439, in _check_status res.body)) paste.fixture.AppError: Bad response: 403 Forbidden (not 200 OK or 3xx redirect for /api/action/package_show) {"help": "Return the metadata of a dataset (package) and its resources.\n\n :param id: the id or name of the dataset\n :type id: string\n\n :rtype: dictionary\n\n ", "success": false, "error": {"message": "Access denied", "__type": "Authorization Error"}} |
1344508484000000 | 1344508484000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2830 | enhancement | toby | toby | demo phase 4 | new | Need method to undelete groups |
need controller action and front-end method |
1344509408000000 | 1344547341000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2831 | enhancement | aron.carroll | ckan 2.0 | new | Create a limited subset of markdown that's supported |
Allowing people to use the full range of markdown results in extremely messy output across the site. I'd suggest limiting support to only a subset of common use cases.
Disallow
This way you get markdowns paragraph handling and a few inline styles without breaking the entire layout of the page. Here's the full syntax if anyone is interested http://daringfireball.net/projects/markdown/syntax |
1344512467000000 | 1344512467000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2833 | enhancement | aron.carroll | demo phase 5 | new | Load module templates before calling .initialize() |
I think this would be a nice feature for remote loading templates if the options.template value ends in ".html". ckan.module('my-module', { options: { template: 'my-template.html' }, initialize: function () { this.template // This is the loaded template. } }); |
1344531939000000 | 1344531939000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2834 | enhancement | aron.carroll | demo phase 4 | new | Defer all publish calls until all modules have been initialised |
Currently if a module uses sandbox.publish() in its initilaize() function then any modules initialised afterwards will miss the event. We should queue all calls to .publish() in the pubsub module in an array until all modules have loaded then iterate over and execute them. |
1344532093000000 | 1344856692000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2835 | enhancement | aron.carroll | demo phase 5 | new | Client module needs a template loading method |
Client#getTemplate(name, params, success, error); Where params, success and error are optional arguments. test/index.html already has an implementation called loadFixture(). |
1344532233000000 | 1344532233000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2838 | enhancement | seanh | ckan-v1.9 | new | Context variables accepted by action functions need to be documented |
I was doing this: context = {'model': base.model, 'session': base.model.Session, 'user': toolkit.c.user or toolkit.c.author, 'extras_as_string': True} group_dict = logic.get_action('group_show')(context, {'id': group_id}) in an extension and one of the group_dicts fields, one that uses convert_to/from_extras, was coming out with the wrong value. It took me ages to realise that I had to pass 'extras_as_string': True in the context. I don't think this or other context variables are documented anywhere. |
1344630911000000 | 1344630911000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2844 | enhancement | rgrp | new | SQL-only (no solr) version of CKAN |
|
1344859168000000 | 1345454527000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2846 | defect | seanh | ckan-v1.8.1 | new | Organizations allows you to set an organization as the parent organization of itself |
that doesn't make any sense |
1344860536000000 | 1350303844000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2850 | enhancement | aron.carroll | demo phase 4 | new | Add JSON support for IE7 |
The JavaScript? just isn't going to work without it. Look into either the newer JSON3: http://bestiejs.github.com/json3/ or the old faithful: |
1344940692000000 | 1344940692000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2851 | enhancement | ross | new | Preview of PDF tries to connect to datastore |
e.g. http://datahub.io/dataset/ccc-gistemp/resource/80ebdbd6-d91b-4fef-9db4-d3dfbd7e868e CKAN attempts to render the PDF as a datastore tabular date even though the mimetype of the PDF is correctly specified. |
1345032766000000 | 1345032766000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2854 | enhancement | shevski | demo phase 5 | new | no way to see which dataset an app is related to on /apps page |
e.g. from http://s031.okserver.org:2375/apps?page=1 you cannot edit a related item as an admin or view what dataset the item is related to |
1345048728000000 | 1345048728000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2857 | defect | toby | shevski | demo phase 4 | new | no UI to follow another user although option on dashboard |
e.g. second option in left hand sidebar is follow another user' http://s031.okserver.org:2375/user/dashboard but if you click on that and then any user, there's no follow button to me the dashboard user stuff is highly unfinished and probably should not be included unless someone is very keen for it |
1345049983000000 | 1345107097000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2859 | defect | icmurray | icmurray | ckan-v1.8 | new | Fix the build |
The requires files have been removed. These were required by buildkit. We've lost the information regarding which packages were already in ubuntu repos, which conflicted and which were missing. But perhaps we can just package everything up. |
1345109217000000 | 1345109217000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2861 | enhancement | toby | shevski | demo phase 4 | new | Add qa breadcrumb |
can we add in the breadcrumb navigation to qa pages so that you can go back to http://s031.okserver.org:2375/qa from sub pages such as http://s031.okserver.org:2375/qa/dataset/five_stars |
1345114046000000 | 1345483270000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2862 | enhancement | toby | markw | demo phase 4 | new | Revised revised groups description |
Revised text for 'What are groups?' box at demo.ckan.org/group (after discussion with IB re #2812): What are groups? Groups allow you to group users and data together so that they are easier to manage. Group owners can assign roles and authorisations, giving each project or department control of its own data publishing. Users can browse or facet by groups, which could be an organisation (for example, the Department of Health) or topic (e.g. Transport, Health), making it easier to find the data they are looking for. |
1345114322000000 | 1345115072000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2863 | defect | toby | shevski | demo phase 4 | new | non-admin users can edit other's draft datasets |
edit button shows up for daniel lewis for http://s031.okserver.org:2375/dataset/ff |
1345114479000000 | 1345201502000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2867 | enhancement | ross | new | 1.8 url_for error |
From: <thedatahub.org@…> Date: Thu, Aug 16, 2012 at 10:30 AM Subject: WebApp? Error: <class 'routes.util.GenerationException?'>: url_for can only return a string, got unicode instead: https://ckannet-storage.commondatastorage.googleapis.com/file/fd3e00d9-eb0d-479b-8303-38909e5400ca?Signature=cmuU3CzRHQ86F3aZ0gljxv%2B3IqQ%3D&Expires=1345109432&AWSAccessKeyId=GOOGC6OU3AYPNY47B66M&x-goog-meta-uploaded-by=d5c8ed25-70de-4035-b29d-ddbe363913c6 To: ckan-sysadmin@…, kindly@… URL: http://ckan.net/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca Module weberror.errormiddleware:162 in call << traceback_supplement = Supplement, self, environ
Module beaker.middleware:73 in call << self.cache_manager)
Module beaker.middleware:155 in call << headers.append(('Set-cookie', cookie))
Module routes.middleware:131 in call << r'\1', oldpath)
Module pylons.wsgiapp:125 in call <<
Module pylons.wsgiapp:324 in dispatch << if log_debug:
Module ckan.lib.base:239 in call << try:
Module pylons.controllers.core:221 in call << return response(environ, self.start_response)
Module pylons.controllers.core:172 in _dispatch_call << req.environpylons.action_method? = func
Module pylons.controllers.core:107 in _inspect_call << func.name, args)
Module pylons.controllers.core:60 in _perform_call << """Hide the traceback for everything above this method"""
Module ckan.controllers.storage:190 in file << return fapp(request.environ, self.start_response)
Module ckan.lib.helpers:57 in redirect_to << if are_there_flash_messages():
Module ckan.lib.helpers:79 in url_for << # fix ver to include the slash
Module routes.util:265 in url_for << if not isinstance(url, str) and url is not None:
GenerationException?: url_for can only return a string, got unicode instead: https://ckannet-storage.commondatastorage.googleapis.com/file/fd3e00d9-eb0d-479b-8303-38909e5400ca?Signature=cmuU3CzRHQ86F3aZ0gljxv%2B3IqQ%3D&Expires=1345109432&AWSAccessKeyId=GOOGC6OU3AYPNY47B66M&x-goog-meta-uploaded-by=d5c8ed25-70de-4035-b29d-ddbe363913c6 CGI Variables CKAN_CURRENT_URL '/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca' CKAN_LANG 'en' CKAN_LANG_IS_DEFAULT True CONTENT_TYPE '; charset=utf-8' DOCUMENT_ROOT '/etc/apache2/htdocs' GATEWAY_INTERFACE 'CGI/1.1' HTTP_ACCEPT '*/*' HTTP_ACCEPT_CHARSET 'utf-8;q=0.7,iso-8859-1;q=0.2,*;q=0.1' HTTP_CONNECTION 'close' HTTP_HOST 'ckan.net' HTTP_USER_AGENT 'Mozilla/5.0 (compatible; Ezooms/1.0; ezooms.bot@…)' PATH_INFO '/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca' PATH_TRANSLATED '/etc/ckan/datahub/apache.wsgi/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca' REMOTE_ADDR '127.0.0.1' REMOTE_PORT '37236' REQUEST_METHOD 'GET' REQUEST_URI '/storage/f/file/fd3e00d9-eb0d-479b-8303-38909e5400ca' SCRIPT_FILENAME '/etc/ckan/datahub/apache.wsgi' SERVER_ADDR '127.0.0.1' SERVER_ADMIN '[no address given]' SERVER_NAME 'ckan.net' SERVER_PORT '80' SERVER_PROTOCOL 'HTTP/1.0' SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at ckan.net Port 80</address>\n' SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)' WSGI Variables application <beaker.middleware.CacheMiddleware? object at 0x7f5312a51650> beaker.cache <beaker.cache.CacheManager? object at 0x7f5312a51790> beaker.get_session <bound method SessionMiddleware?._get_session of <beaker.middleware.SessionMiddleware? object at 0x7f5312a516d0>> beaker.session {'_accessed_time': 1345109433.273328, '_creation_time': 1345109433.273328} mod_wsgi.application_group 'ckan.net|' mod_wsgi.callable_object 'application' mod_wsgi.handler_script mod_wsgi.input_chunked '0' mod_wsgi.listener_host mod_wsgi.listener_port '8080' mod_wsgi.process_group 'datahub' mod_wsgi.request_handler 'wsgi-script' mod_wsgi.script_reloading '1' mod_wsgi.version (3, 3) paste.cookies (<SimpleCookie: >, ) paste.registry <paste.registry.Registry object at 0x7f5303b05610> paste.throw_errors True pylons.action_method <bound method StorageController?.file of <ckan.controllers.storage.StorageController? object at 0x7f530891fa10>> pylons.controller <ckan.controllers.storage.StorageController? object at 0x7f530891fa10> pylons.environ_config {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons <pylons.util.PylonsContext? object at 0x7f52f864f850> pylons.routes_dict {'action': u'file', 'controller': u'ckan.controllers.storage:StorageController', 'label': u'file/fd3e00d9-eb0d-479b-8303-38909e5400ca'} repoze.who.logger <logging.Logger object at 0x7f53127b2b50> repoze.who.plugins {'openid': <OpenIdIdentificationPlugin? 139994769488336>, 'friendlyform': <FriendlyFormPlugin? 139994769488528>, 'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator? object at 0x7f5312d893d0>, 'auth_tkt': <AuthTktCookiePlugin? 139994771858704>, 'ckan.lib.authenticator:OpenIDAuthenticator': <ckan.lib.authenticator.OpenIDAuthenticator object at 0x7f5312d89350>} routes.route <routes.route.Route object at 0x7f531296e690> routes.url <routes.util.URLGenerator object at 0x7f52f82cd450> webob._parsed_query_vars (GET([]), ) webob.adhoc_attrs {'language': 'en-us'} wsgi process 'Multi process AND threads (?)' wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7f52f5870cd8> wsgi.version (1, 1) wsgiorg.routing_args (<routes.util.URLGenerator object at 0x7f52f82cd450>, {'action': u'file', 'controller': u'ckan.controllers.storage:StorageController', 'label': u'file/fd3e00d9-eb0d-479b-8303-38909e5400ca'}) |
1345114669000000 | 1345128279000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2869 | defect | shevski | demo phase 4 | new | user profile not linked on disqus until page refresh |
Reported by Daniel: Problem: DISQUS comments don't appear with profile details (inc. username). How to reproduce: 1) Go to a dataset, e.g. I went to http://s031.okserver.org:2375/dataset/ff 2) I logged into DISQUS using the Google Authentication, e.g. in my case that is okfn.daniel.lewis@… 3) I made a comment and submitted 4) It comes up with the comment, but no linked profile until the page gets refreshed |
1345114714000000 | 1345114714000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2870 | enhancement | seanh | ross | new | 1.8 tag_list not defined |
From: <thedatahub.org@…> Date: Thu, Aug 16, 2012 at 3:20 AM Subject: WebApp? Error: <class 'genshi.template.eval.UndefinedError?'>: "tag_list" not defined To: ckan-sysadmin@…, kindly@… URL: http://ckan.net/dataset/uk-postboxes Module weberror.errormiddleware:162 in call << traceback_supplement = Supplement, self, environ
Module beaker.middleware:73 in call << self.cache_manager)
Module beaker.middleware:155 in call << headers.append(('Set-cookie', cookie))
Module routes.middleware:131 in call << r'\1', oldpath)
Module pylons.wsgiapp:125 in call <<
Module pylons.wsgiapp:324 in dispatch << if log_debug:
Module ckan.lib.base:239 in call << try:
Module pylons.controllers.core:221 in call << return response(environ, self.start_response)
Module pylons.controllers.core:172 in _dispatch_call << req.environpylons.action_method? = func
Module pylons.controllers.core:107 in _inspect_call << func.name, args)
Module pylons.controllers.core:60 in _perform_call << """Hide the traceback for everything above this method"""
Module ckan.controllers.package:322 in read << template = template[:template.index('.') + 1] + format
Module ckan.lib.base:153 in render << try:
Module pylons.templating:249 in cached_template << return content
Module ckan.lib.base:102 in render_template << if loader_class == NewTextTemplate?:
Module genshi.core:183 in render << method = self.serializer or 'xml'
Module genshi.output:57 in encode << _encode = lambda string: string
Module genshi.output:569 in call << def call(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1145 in call << :param stream: The marked event stream to filter
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1145 in call << :param stream: The marked event stream to filter
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1145 in call << :param stream: The marked event stream to filter
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module ckanext.googleanalytics.plugin:93 in download_adder << [downloaded %s times]</span>
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1175 in call << """
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.core:288 in _ensure << # unchanged
Module genshi.filters.transform:686 in _unmark << def _unmark(self, stream):
Module genshi.filters.transform:1145 in call << :param stream: The marked event stream to filter
Module genshi.filters.transform:714 in call << stream = iter(stream)
Module genshi.filters.transform:682 in _mark << def _mark(self, stream):
Module genshi.template.base:605 in _include << from genshi.template.loader import TemplateNotFound?
Module genshi.template.base:565 in _flatten << elif kind is EXPR:
Module genshi.template.base:277 in _eval_expr << if vars:
Module genshi.template.eval:178 in evaluate << traceback_hide = 'before_and_this'
Module ?:51 in <Expression u"tag_list(c.pkg_dict.get('tags', ))"> << <li py:if="c.pkg_dict.get('tags')" class="sidebar-section">
Module genshi.template.eval:309 in lookup_name << val = BUILTINS.get(name, val)
Module genshi.template.eval:410 in undefined << """Raise an UndefinedError? immediately."""
UndefinedError?: "tag_list" not defined CGI Variables CKAN_CURRENT_URL '/dataset/uk-postboxes' CKAN_LANG 'en' CKAN_LANG_IS_DEFAULT True CKAN_PAGE_CACHABLE True CONTENT_TYPE '; charset=utf-8' DOCUMENT_ROOT '/etc/apache2/htdocs' GATEWAY_INTERFACE 'CGI/1.1' HTTP_ACCEPT 'text/html,text/plain,text/xml' HTTP_ACCEPT_CHARSET 'ISO-8859-1,utf-8;q=0.7,*;q=0.7' HTTP_ACCEPT_ENCODING 'gzip' HTTP_ACCEPT_LANGUAGE 'vi,en-us;q=0.7,en;q=0.3' HTTP_CONNECTION 'close' HTTP_HOST 'ckan.net' HTTP_USER_AGENT 'coccoc/1.0 ()' PATH_INFO '/dataset/uk-postboxes' PATH_TRANSLATED '/etc/ckan/datahub/apache.wsgi/dataset/uk-postboxes' REMOTE_ADDR '127.0.0.1' REMOTE_PORT '47065' REQUEST_METHOD 'GET' REQUEST_URI '/dataset/uk-postboxes' SCRIPT_FILENAME '/etc/ckan/datahub/apache.wsgi' SERVER_ADDR '127.0.0.1' SERVER_ADMIN '[no address given]' SERVER_NAME 'ckan.net' SERVER_PORT '80' SERVER_PROTOCOL 'HTTP/1.0' SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at ckan.net Port 80</address>\n' SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)' WSGI Variables application <beaker.middleware.CacheMiddleware? object at 0x7f5312a51650> beaker.cache <beaker.cache.CacheManager? object at 0x7f5312a51790> beaker.get_session <bound method SessionMiddleware?._get_session of <beaker.middleware.SessionMiddleware? object at 0x7f5312a516d0>> beaker.session {'_accessed_time': 1345083636.079552, '_creation_time': 1345083636.079552} mod_wsgi.application_group 'ckan.net|' mod_wsgi.callable_object 'application' mod_wsgi.handler_script mod_wsgi.input_chunked '0' mod_wsgi.listener_host mod_wsgi.listener_port '8080' mod_wsgi.process_group 'datahub' mod_wsgi.request_handler 'wsgi-script' mod_wsgi.script_reloading '1' mod_wsgi.version (3, 3) paste.cookies (<SimpleCookie: >, ) paste.registry <paste.registry.Registry object at 0x7f52e47477d0> paste.throw_errors True pylons.action_method <bound method PackageController?.read of <ckan.controllers.package.PackageController? object at 0x7f52e477b810>> pylons.controller <ckan.controllers.package.PackageController? object at 0x7f52e477b810> pylons.environ_config {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons <pylons.util.PylonsContext? object at 0x7f52e477be90> pylons.routes_dict {'action': u'read', 'controller': u'package', 'id': u'uk-postboxes'} repoze.who.logger <logging.Logger object at 0x7f53127b2b50> repoze.who.plugins {'openid': <OpenIdIdentificationPlugin? 139994769488336>, 'friendlyform': <FriendlyFormPlugin? 139994769488528>, 'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator? object at 0x7f5312d893d0>, 'auth_tkt': <AuthTktCookiePlugin? 139994771858704>, 'ckan.lib.authenticator:OpenIDAuthenticator': <ckan.lib.authenticator.OpenIDAuthenticator object at 0x7f5312d89350>} routes.route <routes.route.Route object at 0x7f5312955a50> routes.url <routes.util.URLGenerator object at 0x7f52eb8c9090> webob._parsed_query_vars (GET([]), ) webob.adhoc_attrs {'language': 'en-us'} wsgi process 'Multi process AND threads (?)' wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7f5308983a80> wsgi.version (1, 1) wsgiorg.routing_args (<routes.util.URLGenerator object at 0x7f52eb8c9090>, {'action': u'read', 'controller': u'package', 'id': u'uk-postboxes'}) |
1345114732000000 | 1345114732000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2873 | defect | toby | danieljohnlewis | demo phase 4 | assigned | ckanext-qa: dataset summary incorrect |
For example see: http://s031.okserver.org:2375/qa/dataset/five_stars Which has: Example dataset as a score of: 4 After examination of the dataset ( http://s031.okserver.org:2375/dataset/example-dataset ) it is made up of a CSV and an HTML file. |
1345126429000000 | 1345208283000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2874 | enhancement | rgrp | rgrp | assigned | Clean up bin directory |
Full of obsolete material |
1345190508000000 | 1345190515000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2877 | enhancement | kindly | rgrp | assigned | Bugs with datastore v2 |
In progress
Multiple query valuesTry a query such as: "second UK" and you will get 500 error: ProgrammingError: (ProgrammingError) syntax error in tsquery: "second UK" 'select "_id", "id", "date", "x", "y", "z", "country", "title", "lat", "lon", count(*) over() as "_full_count"\n from "4f1299ab-a100-4e5f-ba81-e6d234a2f3bd" where _full_text @@ to_tsquery(%s) limit 100 offset 0' (u'second UK',) SuggestionsFilter support: should think in more detail about this (may want to follow recline style) Simple filters in query parameters would be nice too ... |
1345250002000000 | 1346320395000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2881 | defect | seanh | ckan-v1.8.1 | new | Remove or improve 'Domain Model' docs page |
http://docs.ckan.org/en/ckan-1.8/domain-model.html Currently not very useful. Also these pages: http://docs.ckan.org/en/latest/domain-model-dataset.html http://docs.ckan.org/en/latest/domain-model-resource.html http://docs.ckan.org/en/latest/domain-model-task-status.html This just seems very incomplete to me (surely there is more to the domain model the dataset, resource and task status?) and very likely to not get updated as changes are mode to the code. Would anyone seriously refer to this rather than just looking at the source code? If we want to have something along these lines in the docs, I suggest adding docstrings to packages, modules, classes and methods and then using autodoc to pull them into sphinx. |
1345539917000000 | 1345626056000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2882 | defect | seanh | ckan-v1.8.1 | new | Remove User Stories Overview from docs? |
Why is this here? Is it up to date? Is anyone keeping it up to date? Does this belong in some sort of CKAN planning or roadmap document rather than in the documentation? |
1345540723000000 | 1345540723000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2883 | enhancement | seanh | ckan-v1.8.1 | new | Add high level dev overview to 'For CKAN Developers' section of docs |
Here's a draft: https://gist.github.com/3414107 |
1345546355000000 | 1345629890000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2884 | defect | seanh | ckan-v1.8.1 | new | Lock icon shown next to unknown licenses |
Set the license of a dataset to blank (the first option) or to 'License Not Specified' or 'Other (Non-Commercial)' and a lock icon appears next to the license on the dataset read page. Shouldn't this be a question mark or something? |
1345564873000000 | 1345564873000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2885 | enhancement | seanh | ckan-v1.9 | new | Labels (editor, admin) not translated in authorization pages for datasets or groups | 1345625351000000 | 1345625524000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2886 | enhancement | ross | ckan 2.0 | new | Configurable related items |
Related items (Apps & Ideas) have a collection of types, which are currently fixed. Some of these types are ambiguous, such as ideas in that they may not have a link - and if they do it is likely to be to a blog post - another existing type. Whilst the URL is required, and we think this should stay required, we should also allow users to change the types found in Apps & Ideas to a shortened list that suits their requirements. |
1345625718000000 | 1345625718000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2887 | defect | seanh | ckan-v1.8.1 | new | "Welcome to CKAN!" on front page is untranslatable |
ckan/templates/home/index.html contains:
which means that just "Welcome to" ends up in the ckan.po files for translation. This makes the phrase untranslatable in languages that have a different word ordering than English where the site title needs to be somewhere other than at the end of the sentence. |
1345627079000000 | 1345627233000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2888 | enhancement | kindly | new | Datapreview in Iframe |
Try and put datapreview in Iframe. |
1345745461000000 | 1345745461000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2889 | enhancement | seanh | ckan-v1.9 | new | Support JSON values in extras, when returning JSON from API |
For example, edit the warandpeace dataset and add an extra with key "comments" and value "[{u'date': u'Tue Aug 21 13:01:48 GMT 2012', u'comment': u'testing ckan', u'userId': u'11702'}, {u'date': u'Wed Aug 22 13:01:48 GMT 2012', u'comment': u'testing ckan again', u'userId': u'11702'}]", now visit API URLs such as: /api/search/dataset?sort=metadata_modified+desc&all_fields=1&limit=10 /api/rest/dataset/warandpeace /api/action/package_show?id=warandpeace The value of the extra comes out as a string in the dataset JSON, rather than having its contents unpacked into a list of JSON objects. |
1345811737000000 | 1345811737000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2890 | enhancement | seanh | ckan-v1.8.1 | new | Collect data previews and data store docs in one chapter |
Currently there is this page: http://docs.ckan.org/en/latest/data-viewer.html which covers Recline Data Explorer and other kinds of data preview in CKAN. It is under the Publishing Datasets section in the documentation. I had to to a search for 'recline' to find it. Separately there is this page: http://docs.ckan.org/en/ckan-1.7.1/datastore.html which covers datastore, datastorer, and the data api. I suggest collecting this together in one chapter called 'Data Previews'. If I understand it right the general gist would be: CKAN has builtin previews of data resources on resource pages, enabled by default. Images, Google Documents, and web page resources will be loaded into embedded iframes for preview. Text-like files will be displayed raw. CSV or Excel files uploaded to CKAN will be previewed using Recline Data Explorer. Additionally, you can enable CKAN's DataStore?, requires you to install ElasticSearch? and nginx and put datastore.enabled=1 in your ini file. Lets you use the Data API to query data. Does having DataStore? enabled mean you get preview of more types of resources? Any resource that's available via the Data API will be previewed using Recline, You can install ckanext-datastorer, and then CSV and Excel files _linked to_ as CKAN resources will be previewed using Recline also. Requires celeryd. |
1346149236000000 | 1346175867000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2891 | defect | seanh | ckan-v1.8.1 | new | Update or remove DataStore google presentation |
Currently this page: http://docs.ckan.org/en/ckan-1.8/datastore.html has an embedded Google docs presentation about data store which contains some outdated information, e.g. links to datastoreclient which was merged into ckanclient. Suggest moving the google presentation into the documentation proper, so it works with grep etc. |
1346149423000000 | 1346154177000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2892 | defect | seanh | ckan-v1.8.1 | new | IDatasetForm's form_to_db_schema() breaks API? |
It looks like when an IDatasetForm plugin with a form_to_db_schema() method is active, then the posted data dict is validated against the schema even if the user is posting to an API endpoint like /api/action/package_update etc. This breaks the API, for example 'name' and 'title' are optional keys for package_update (you can supply only the 'id'), but the schema validation will fail if either are not present in the posted dict. It may be we need different schema for package create and package update, currently IDatasetForm has just the one form_to_db_schema() method. |
1346154125000000 | 1346154163000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2893 | defect | seanh | ckan-v1.8.1 | new | Tags missing from form_to_db_package_schema() |
With an IDatasetForm plugin active with a form_to_db_package_schema() method that returns a schema based on ckan/logic/schema.py:form_to_db_package_schema() I'm getting validation errors like this: [ckan.controllers.api] Validation error: "{'type': 'Validation Error', 'junk': [u'The input field junk was not expected.']}" They seem to be caused when a data dict with key 'tags' is passed to e.g. the package_update API, for example in ckan/tests/functional/api/model/test_vocabulary.py there are various tests that get this error when they call package_update (if you run the tests with a suitable IDatasetForm plugin active). In ckan/logic/schema.py:form_to_db_package_schema() 'tags' is for some reason deliberately removed from the schema. |
1346155864000000 | 1346155864000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2894 | defect | seanh | ckan-v1.8.1 | new | Empty lists get stripped from package dicst in package_show() |
If there's an IDatasetForm plugin active with a form_to_db_schema(), then packages with e.g. no extras get the 'extras' key entirely stripped by the validation in package_show, which causes some tests to crash, e.g. in ckan/tests/functional/api/test_activity.py (if the tests are run with a suitable IDatasetForm plugin active). If a package has no extras the dict returned by package_show should still have an 'extras' key with an empty list as the value. Suspect this also effects packages with no tags, no groups, etc. |
1346157634000000 | 1346157634000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2896 | defect | seanh | ckan-v1.8.1 | new | resource_create crashes on ValidationErrors with KeyError: 'resources' |
ckan/logic/action/create.py:resource_create():
This assumes that package_update always returns an error dict with 'resources' in it. This assumption doesn't hold. |
1346257754000000 | 1346257754000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2897 | defect | seanh | ckan-v1.8.1 | new | db_to_form_package_schema() crashes historical dataset page |
If there's an IDatasetForm plugin active with a db_to_form_schema() method based on db_to_form_package_schema(), then viewing historical versions of datasets (e.g. http://127.0.0.1:5000/dataset/dasd%402012-08-30T12%3A26%3A18.524191) crashes. Reason is that revison_id and revision_timestamp need to be added to db_to_form_package_schema(), something like:
|
1346330495000000 | 1346330495000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2898 | defect | johnmartin | demo phase 5 | new | Looses data entered on step 1 of create dataset after login |
To reproduce:
|
1346332094000000 | 1346332120000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2899 | enhancement | johnmartin | demo phase 5 | new | Step 2 > Save & add another bug |
Goto:
Should: fail to validate and remain on step 2 |
1346332519000000 | 1346332519000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2900 | defect | seanh | ckan-v1.8.1 | new | snippets/package_list.html template crashes on dataset that has no 'notes' |
Sometimes a dataset dict comes through package_show() with 'notes': None and then the 'notes' key gets stripped from the dict when validation happens (validation only happens if there's an IDatasetForm plugin with a db_to_form_schema() method) and then package_list.html template crashes, e.g. on user profile pages. Fix in the template? Or in the schema? The template also crashes on packages with no tags (empty list gets stripped from dict) and probably other empty fields as well |
1346335207000000 | 1346335788000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2901 | enhancement | johnmartin | demo phase 5 | new | Language Dropdown bug in footer with IE7 |
The language dropdown in Internet Explorer 7 behaves oddly. Essentially I think the problem is with the way that the dropdown decides to go into "drop-up mode" (e.g there aint enough screen space below the initial state so it has to drop up). |
1346754674000000 | 1346754674000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2902 | enhancement | ross | ckan 2.0 | new | genshi is used in Group controller |
The Group controller uses the genshi module where it may be better for it to use Markup() in the template. |
1346782230000000 | 1346782230000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2904 | enhancement | johnmartin | demo phase 5 | new | Show more formats/groups/tags shouldn't display if there aren't more |
On the search results page when there are no more formats, groups or tags to display it should not display the show more links. |
1346854444000000 | 1346854444000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2905 | enhancement | johnmartin | demo phase 5 | new | Add dataset URL key behaviour |
On step 1 for adding a dataset can we add a ajax ping that checks if the URL that is generated by the JS is taken? Behaviour should be as follows:
4a. If the user hasn't clicked the edit button then: it automatically updates the URL key field with the URL key supplied in the ajax 4b. If the user has clicked the edit button then: a form error next to the input appears saying that the URL key is taken and within that error is suggests the URL key returned by the ajax as alternative (the user can click said URL key within the error to automatically choose that one) The URL key isn't reserved by the ajax and upon form submission the usual validation should still apply. |
1346855283000000 | 1346855283000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2906 | defect | dominik | demo phase 5 | new | Wrong flags in language dropdown |
The flags in the dropdown on details pages are not right. You can see the error on http://s031.okserver.org:2375/dataset/malawi-aid-projects/resource/b717c20e-2006-4ad4-82d2-59b57ebc1ab0. |
1346861144000000 | 1346862889000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2908 | enhancement | johnmartin | demo phase 5 | new | Dataset related with image should retain aspect ratio |
At the moment if you have an related item with an image associated to a dataset that appears in the side column it's resized but doesn't keep it's original aspect ratio. |
1346931162000000 | 1346931162000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2909 | enhancement | johnmartin | demo phase 5 | new | User profile headers are a bit weird |
They seem to be not exactly well thought out. Needs some thought on better display of the information that they contain. |
1346931348000000 | 1346931348000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2910 | enhancement | johnmartin | demo phase 5 | new | User listings are not very compelling |
They are currently are just a small image / name. They should be: Larger image, Full name (username), description, edits/dataset |
1346931587000000 | 1346931587000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2911 | enhancement | kindly | new | Internal documentation of Organization Groups |
A summary/user story doc of how organizations and groups are expected to work. |
1346941384000000 | 1346941384000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2912 | defect | seanh | ckan-v1.8.1 | new | ckanext/organizations: Neither public or private initially selected when adding dataset |
When adding a dataset with the organizations extension on, neither the Public or the Private radio button is initially selected. Public should be selected. |
1347271076000000 | 1350303897000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2913 | defect | seanh | ckan 2.0 | new | IGroupForm has package_form() method |
Should be group_form() I think |
1347374739000000 | 1350303779000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2914 | defect | seanh | ckan-v1.8.1 | new | Add form_to_db_schema_options() to IDatasetForm and IGroupForm |
This optional method is supported when creating or updating groups and packages and is used in DefaultGroupForm? and DefaultPackageForm?, but seems to be missing from the interfaces. Should be added with docstring. |
1347445795000000 | 1350303928000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2915 | refactor | seanh | ckan 2.0 | new | Refactor form_to_db_schema_options() |
Having two methods form_to_db_schema(self) and form_to_db_schema_options(self, options) seems unnecessary, why not just have form_to_db_schema(self, options=None)? Fixing this might break existing extensions although I don't think any are using form_to_db_schema_options() so it should be okay. The same thing goes for db_to_form_schema_options(). Also why are we passing a dict 'options' that always contains the same three keys 'api', 'context' and 'type'? Why not three params api=None, contenxt=None, type=None? |
1347446269000000 | 1347447588000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2917 | enhancement | johnmartin | ross | ckan 2.0 | new | Organization admins can delete themselves |
Organization administrators can delete themselves from the user management pages. We should disable this on the front-end as well as the back-end. |
1347451843000000 | 1347455636000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2919 | defect | seanh | ckan-v1.8 | new | Remove IController from docs |
Still in docs but seems gone from code |
1347461253000000 | 1347461253000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2920 | defect | seanh | ckan 2.0 | new | Genshi text template message extractor no longer needed? |
In setup.py, do we still need:
in message_extractors? Doesn't like there are any txt files in there anymore. |
1347530249000000 | 1347530249000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2921 | defect | seanh | ckan 2.0 | new | Add docstring to top of lib/extract.py file |
I think it couldn't hurt for this module to have a docstring at the top of the file explaining what the module is for. I know from setup.py that it's there to provide the extract_ckan() string extractor function for Babel, but I think looking at the file on its own it's not so obvious. Also a couple of other small fixes: jinja2_cleaner looks like a helper function only meant to be used by extract_ckan(), might make things clearer if it was called _jinja2_cleaner(), just so it doesn't look like a public function the module wants to export. jinja_extensions seems to be a module-level variable that is only used in one function, could be moved into the function, unless you think there might be more functions that want it in future. |
1347530407000000 | 1347530407000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2922 | defect | seanh | ckan 2.0 | new | Better docstring for CKANInternationalizationExtension |
I'm unsure about what's going on here. As I understand it, when we run python setup.py extract_messages it's going to use the extract_ckan() function from ckan/lib/extract.py to process the HTML files. For the HTML files that are jinja2 templates, extract_ckan() will call jinja2_cleaner() which will call regularise_html() on the strings. So the strings are regularised when they are extracted from the source files. But then we have the parse() method of CkanInternationalizationExtension? also calling regularise_html(). I don't get what's happening here. Why do the strings need to be regularised twice? My guess is that CkanInternationalizationExtension? is used when the strings are extracted from the templates at runtime, and they need to be regularised at this time in order to match them against the regularised strings in the mo files to find the translations to output? Maybe CkanInternationalizationExtension? needs a better docstring saying what it does? |
1347530507000000 | 1347530507000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2923 | defect | seanh | ckan 2.0 | new | Change regularise -> regularize |
The function is called regularise_html(), can't remember what file it's in. |
1347530582000000 | 1347530582000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2924 | defect | seanh | ckan 2.0 | new | Better docs for trans js command, and add to release process |
Add a better docstring to for trans js command explaining what it does and why, and how to use it. Also add this command to the CKAN Release Process as it's needed there |
1347530671000000 | 1347530671000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2925 | defect | seanh | ckan 2.0 | new | Remove trans mangle paster command? |
|
1347530768000000 | 1347530768000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2926 | enhancement | seanh | ckan 2.0 | new | I*Form tests for per-type templates |
Finish the tests for the per-package-type custom template support in IPackageForm, IGroupForm and IOrganizationForm (i.e. the new_template(), read_template() etc. methods). The new way that template inheritance works in jinja looks like it should allow this to be tested nicely without duplicating entire templates in the example extensions. |
1347552081000000 | 1347552081000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2927 | enhancement | seanh | ckan 2.0 | new | Test new package/group/organization type URLs support |
IPackageForm, IGroupForm and IOrganizationForm allow you to define e.g. new package types with new top-level URLs, but the example extensions don't have tests for this yet. |
1347552153000000 | 1347552153000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2928 | enhancement | seanh | ckan 2.0 | new | Run CKAN tests with example_i*form extensions enabled |
Before releasing CKAN 2.0 we need to run all the CKAN tests with a modified test-core.ini with the example_idatasetform, example_igroupform and example_iorganizationform plugins enabled. If any tests fail, fix the bugs. This needs to be done for each release so add it to the release process. |
1347552334000000 | 1347552334000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2929 | enhancement | seanh | ckan 2.0 | new | Remove is_fallback() from I*Form extension interfaces? |
If a plugin wants to take over the default package type for example, it can return dataset? from its package_types() method. I don't see how there can be a package type that is not the default 'package' and is not returned by the package_types() method of a plugin, because the URLs for such a package type would not be mapped. Am I missing something or is is_fallback() not needed? Same for IGroupForm and IOrganizationForm |
1347552597000000 | 1347552597000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2931 | enhancement | seanh | ckan 2.0 | new | Better docstring for app_globals.py |
The application's Globals object is not very informative. |
1347891194000000 | 1347891378000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2932 | enhancement | seanh | ckan 2.0 | new | Add docstring to system_info.py |
What is the system_info table for? It looks like a way to override config file settings in the database, perhaps so that admins can use a web interface to change site title etc. Could do with a docstring explaining the intended purpose of the table. |
1347893429000000 | 1347893429000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2933 | enhancement | seanh | ckan 2.0 | new | Update theming docs |
There's quite a lot of custom stuff going on, with all the custom jinja extensions, and the use of Fanstatic plus custom fanstatic extensions. People who are new to CKAN wanting to write CKAN themes are likely to be confused. I think the whole lot could do with documentation, maybe in the Theming and Customizing chapter in the sphinx docs. I suggest completely replacing the contents of doc/theming.rst, and putting a 'legacy theming' link at the bottom linking to a doc/legacy_theming.rst file with the old contents. |
1347895272000000 | 1347895272000000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2934 | enhancement | Dominik | new | Webtests for CKAN |
The tests in CKAN only test single pages (functional tests) or single methods (unit tests). In order to make sure that the whole system still works as expected, we need tests that cover whole processes. An example user story to be tested would be: "As a user with create permissions I want to be able to log in, create a new resource, save it and then make sure that it is in the system." or: "As a user I want to use the search functionality and open a resource from the search page." These user stories require a different testing system with interaction and processes. |
1347966647000000 | 1348060201000000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
#2936 | defect | seanh | ckan-v1.8 | new | Updating a group via the API clears its packages |
If the group dict that you post to the API does not have any 'packages' key then all the group's packages get removed. I think it would be better if you could just update e.g. the group's description without having to also post the list of packages, and apparently this is how other update API actions work. Might be worth checking all the update API actions for this behaviour, and making sure they're all consistent |
1348048066000000 | 1348048066000000 |