{22} Trac tickets (2647 matches)

Results (2101 - 2200 of 2647)

Id Type Owner Reporter Milestone Status Resolution Summary Description Posixtime Modifiedtime
#1451 enhancement johnglover johnglover ckan-sprint-2012-01-09 closed fixed Reintegrate download stats on dataset and resource view page - 0.5d
  • css class: resource-url-analytics
  • Assign to the link tag (a) everywhere we want to count (dataset, resource view) - 0.25d
  • Display counts in same place ...

And deploy on http://thedatahub.org/ - 0.25d

Possible: Also move analytics extension into core (decided not to).

1320677859000000 1324401792000000
#2517 enhancement johnglover johnglover ckan-sprint-2012-06-25 closed fixed Test installation instructions for EC ODP on CentOS 6.2 1339581689000000 1340613194000000
#2343 enhancement johnglover johnglover ckan-sprint-2012-05-15 closed fixed Convert all non-free metadata fields to vocabulary fields
  • convert non-free fields to vocab fields (eg: interoperability_level)
  • store values as JSON files in the ecportal repo
  • translate output on dataset view page
  • add tests
1335876562000000 1335969506000000
#2269 enhancement johnglover johnglover ckan-sprint-2012-04-30 closed fixed EC ODP review and server setup
  • code review with D.R. for ckanext-ecportal
  • merge and test all multilingual code
  • fix server issues: routing, Git access to CKAN repository

Bugs to fix:

  • rename groups to publishers
  • update home page layout (recent updates along side publishers)
  • don't add 'en' to main menu links if english
  • resource edit page, fix missing images
  • change dataset 'settings' to 'edit'
  • translate 'published by' drop-down list
  • fix JS on 'add a dataset page'
  • prepopulate 'published_by' when clicking 'add a dataset' from group
  • chosen broken (dataset edit) if in different language
1333374177000000 1335779180000000
#2518 enhancement johnglover johnglover ckan-sprint-2012-06-25 closed fixed Create EC ODP CKAN release branch
  • branch from 1.7.1
  • apply CKAN patches that are current part of installation instructions
  • create i18n patch so custom i18n directories can be specified via a config option
1339581818000000 1339595863000000
#216 enhancement nickstenning dread v1.0 closed fixed UI Review - Search
  • allow clicking on 'only openly licensed'/'only downloadable' to select/deselect checkboxes: make them <label>s.
  • cut 'only's -- use word 'filter' instead
  • doesn't appear to match substrings!? A search for 'anna' doesn't return match the 'annakarenina' package.
  • autocomplete package names & tags
1260879802000000 1273596102000000
#1580 enhancement johnglover johnglover ckan-sprint-2012-01-09 closed fixed Documenting TaskStatus table and QA changes - 0.5d 1324399664000000 1324478635000000
#519 requirement pudo pudo iati-1 closed fixed IATI look and feel
  • Use what is on iatiregistry.org at the moment.
1282893224000000 1283536828000000
#840 enhancement dread dread ckan-v1.4-sprint-6 closed fixed On/off switch for ETags cache
  • Use config variable to switch ETags caching on or off. Consider joining in with 'cache_enabled'.
  • Default setting for (all) caching should be off.
  • Needs documenting in configuration.rst
1291308727000000 1302694133000000
#1753 enhancement kindly rgrp ckan-sprint-2012-03-05 closed fixed Last fixes of Webstorer + Deploy on the DataHub 1328527932000000 1330990061000000
#1622 enhancement johnglover johnglover ckan-sprint-2012-01-23 closed fixed Deploy QA on DGU UAT test server - 0.5d
  • Update CKAN on DGU UAT to 1.5.1
  • Deploy Celery
  • Deploy QA extension
1326116380000000 1326127702000000
#227 enhancement nickstenning dread v1.1 closed fixed UI Review - General checks
  • There is huge inconsistency in the titles of pages across the site: to give one example "Edit Package:" vs "Package: mypkg [not linked]" vs "History - mypkg [linked to package page]"
    • Normalize and use terminology: "Data Package" - also change in navbar (but nowhere else for the time being). So hvae Data Package - mypkg, Data Package - mypkg - Edit etc
  • pagination is currently lost in amongst the results list. needs to be *much* more obvious, and should appear top and bottom, or at the very least at the bottom!
1260880552000000 1279192621000000
#1810 enhancement johnglover johnglover ckan-backlog closed wontfix Store list of Eurovoc tag names and IDs
  • Tag list not be added to CKAN core, what is the best way to do this in an extension?
  • Does the list need to be updated via API/WUI?
1329746612000000 1335874745000000
#2559 enhancement toby aron.carroll demo phase 2 closed fixed Demo theme add resource has missing functionality
  • Show resources in the sidebar
  • Allow people to go backward and forward
  • Have a back button on each form
  • Lose resource type
  • Add extras as optional metadata
  • Remove save
  • Add back/Previous
  • Add Another
1340035336000000 1342084940000000
#912 defect pudo pudo ckan-v1.5 closed wontfix Rethink result row representation in dcat-tools/rdfsolr
  • Should license go in the bottom line?
  • Formats should be styled as in CKAN
1295266299000000 1306774876000000
#214 enhancement nickstenning dread v0.11 closed fixed UI Review - General template
  • Set hover names on navigation links.
  • Do we really need to display "About CKAN" everywhere? Just on home page.
  • Redirect in routing /groups and /tags rather than /group and /tag. At the very least make the plural versions forward to the singular versions.
1260879581000000 1263406056000000
#1208 enhancement rgrp rgrp ckan-sprint-2011-10-28 closed fixed Webstore: a datastore with web API
  • SQLite based
  • Use Cyclone for async http server on top with auth
  • Designed to not be specific to CKAN or anything else

Current code is here: https://github.com/okfn/webstore.

API Spec

Read

Two basic ways to query::

    GET: /{owner}/{db-name}/?sql=...
    GET: /{owner}/{db-name}/?table=...&attr=value&attr=value&limit=...

Returns::

  {
      u'keys': [u'id', u'name'],
      u'data': [
          [1, u'jones'],
          [u'aaa', u'jones']
          ]
  }

Write

POST to::

/{owner/{database}/{table}

Payload is json data structured as follows::

{

unique_keys: [list of key attributes] data: {dict of values}

}

Authentication and Authorization

Authentication: use basic auth header.

Authorization:

  • Default: all read, owner can write
  • Restricted: owner can read and write, everyone can do nothing

Possible future: config file can specify a python method (TODO: method signature)

Integration with Other Systems

TODO: Specify how to delegate authenatication to user database in some other system.

1309804460000000 1312191646000000
#1292 enhancement dread dread ckan-sprint-2011-11-07 closed fixed Internationalization improvements
  • Review process of releases and updating strings (pot) and translations (po) files
  • Get language changing thing to get home page to mostly work - push to key strings translated (or don't advertise the translation?)
  • Review long list of strings for improvement
    • Consolidate any?
    • Get rid of i18n for strings in api
    • Try and remove javascript
    • Add in extensions
  • #1374 Fix switching to en from other default language
  • #1417 Fix browser language detection
1314303314000000 1320145732000000
#230 task dread dread v1.0 closed fixed Refactor 'package preview' to use 'package read'
  • Requires Package Read to not use the side-bar
  • Need to sync params to a package object that is taken out of the session so that it doesn't go into the database.
1262788084000000 1265293953000000
#1782 enhancement zephod rgrp ckan-future new Improvements to datasets page UX (Feb 2012)
  • Relationships in sidebar [WONTFIX yet without some link to documentation or datastructure, something for me to render?]
  • Icons for *types* of resources in resource list
  • List of 'Owners' (administrators) at top right of sidebar (a la group page)
    • Much prefer owner to administrator ...
1328609441000000 1338205232000000
#522 requirement pudo pudo iati-2 closed fixed Create publishing entity account
  • Publishing entity emails system editors
  • System editor creates publishing entity account and emails publishing entity with details
  • Priority: 4/5
1282893668000000 1287392999000000
#219 enhancement nickstenning dread closed wontfix UI Review - Package
  • Propose three-column package listing: two lists of highest-scorers on some metric and last column is an invitation to register a new package, with a little copy explaining what's involved and why you'd want to.
  • Add in search widget
1260879947000000 1294914901000000
#1711 enhancement icmurray icmurray ckan-sprint-2012-03-19 closed fixed Resource validation page
  • On the resources tab, there's a "Check Resources" button which, when clicked makes an ajax request with the list of URLs entered by the user.

  • The server checka each link for errors and header information about the linked resource. (Using ckanext/archiver/tasks.py:link_checker()).

  • The server returns a list of dicts (json), containing information about the linked resource, and the client uses that to:
  • populate the format field of each resource

The (guessed) 'file_extension' populates the 'format' field. If it's 'htm' or 'html', then we assume it's a listing page, and so don't populate the format field with 'htm' or 'html'.

  • provide feedback if a URL appears to be invalid

If the URL doesn't appear to be a URL at all, or returns a HTTP error, or times-out, then URL field is highlighted in red to indicate it's a bad URL. A tooltip shows the error message to the user.

  • [Optional] provide feedback if a URL appears to point to "Additional Information" - ie the Resource should be entered under "Additional Resources", rather than "Timeseries" or "Individual" datasets.

Analysis and further description on etherpad: http://ckan.okfnpad.org/dgu-package-form? [Section I]

1327589759000000 1332151557000000
#1221 defect dread dread ckan-sprint-2011-10-28 closed fixed Password reset tidy up
  • No tests.
  • 500 error given when user is not found.
1310475661000000 1310556607000000
#2558 enhancement aron.carroll aron.carroll demo phase 1 closed fixed Demo site add dataset has missing functionality
  • Needs tags
  • Needs groups
  • Needs slug
  • Licenses links to something
  • Needs tooltips (Ira to write some tooltips)
1340035280000000 1340615257000000
#1576 enhancement rgrp rgrp ckan-sprint-2012-01-09 closed fixed Move stats extension back into core - 0.5d

Est: 0.5d.

Questions:

  • Why do this?
    • tiny extension with few dependencies - and really nice to have out of the box
    • trial for doing this on larger scale
  • Do we keep as extension (even if in core)?
    • Ans: Yes, keep as extension because:
      • Already set up that way
      • Cleaner
      • Easier to disable / enable
  • How do we integrate with main them (e.g. have stats link)
    • Ans: not sure (this is part of more general issue of how we update theme for varying changes elsewhere). Best answer is to have some widgetization in theme.
  • Hide ratings section (at least until we reinstate ratings #1598)
    • Ans: no, let's not bother (and having ratings there encourages us to do #1598 and/or find out whether people are interested in ratings)
1324317313000000 1327056070000000
#944 defect pudo pudo iati-4 closed fixed Upgrade IATI to CKAN 'default'
  • Move code base, fix any breakage.
  • Deploy to eu8
  • Test
  • Deploy to eu14

Why

Later CKAN codebase has a bunch of improvements / fixes that it would be good to have.

Estimate

  • 8h
1296469688000000 1306774766000000
#1307 enhancement zephod rgrp ckan-sprint-2011-09-12 closed fixed Implement captcha for signup
  • Major issue with spam signup on thedatahub.org
  • Suggest using recaptcha

Est cost: 1d

1315153860000000 1317649963000000
#1787 enhancement dread ckan-future new [super] Improve RESTful API
  • Lists of entities should be full URLs, rather than just the names
  • Discoverability - /api/v3/rest should list the entity types that can be listed

This could be v3 of the RESTful interface.

1328702082000000 1328702082000000
#2560 enhancement toby aron.carroll demo phase 2 closed fixed Demo theme add metadata is missing functionality
  • Hide remove button when adding new field
  • Finish takes you to the newly created dataset
1340035384000000 1342084988000000
#2965 defect amercader ckan-v1.8 new Stats extension broken on 1.8
  • Graphs not showing (looks like a flot related file is missing)
  • Wrong groups counts (e.g. Data Explorer Examples show 1800 datasets when it onlu has 8)
1350296141000000 1350296157000000
#2224 enhancement rgrp rgrp ckan-sprint-2012-04-02 closed wontfix Simplify javascript and css dependencies and add minified version
  • Get rid of jquery UI
  • Remove modernizr (what do we use it for?)
  • Convert jquery.tmpl to jquery mustache (?)
  • Remove ckanjs moving core parts of it directly into our code.

Compress everything for releases and add minified version to build (with switch to enable use of this?)

1331385623000000 1338205358000000
#138 enhancement rgrp dread v1.0 closed fixed User has editable home page
  • Generic text box for markdown about the user 'About'

Model's user table reflects these:

  • 'about' attribute
  • 'created' attribute is a default=datetime.now() - so when user was created

Need edit page for this.

Only user should be able to edit it.

Follows on from ticket:136 and ticket:142

Cost: 2h

1254741789000000 1258466074000000
#137 enhancement rgrp dread closed duplicate User has editable home page
  • Generic text box for markdown about the user 'About'

Model's user table reflects these:

  • 'about' attribute
1254741703000000 1254741830000000
#1009 enhancement pudo rgrp ckan-backlog new Improvements to user accounts sytem
  • Forgot password (email a new password)
  • Confirm email
  • Do not show register page if you are logged in (redirect to home page)
  • ticket:1010 - listing of users.
    • Do not use /user for general user account home page (either user normal user page /user/{id} or /user/myaccount)
1298635991000000 1310128574000000
#158 enhancement dread dread v0.11 closed fixed Add 'extras' to REST API
  • Ensure you can add/change/delete extra fields from packages using the REST API.
  • Update API docs to cover this.

On Package get, ensure separation of extra attributes from other attributes.

What is the meaning of posting an incomplete dictionary (updating a package)? Option 1 - if field not present, leave field alone

  • Delete field if field value is None

Option 2 - user must supply all fields

  • Delete field if field absent

Prefer option 1. Document this.

Follows on from ticket:152

1255703259000000 1255949818000000
#1143 enhancement dread dread ckan-v1.5-sprint-2 closed fixed Improve stats page
  • Ensure we don't include deleted packages in the stats
  • Some visual improvements:
    • Number of packages:
      • fix x axis to start at first revision
      • fix y axis to start at zero
    • Fix problem with legend to 'Revisions to packages' graph.
    • Hide sidebar in the template, so it isn't right-cropped in the DGU theme
  • Add some testing of the stats lib - results of basic stats
1305734836000000 1307024681000000
#446 task dread closed invalid Server configuration query (?)
  • Ensure use case is in design - "an admin writes to the CKAN API" (and see JB notes on paper)
  • Communicate how this is planned to be achieved in design to JF
1282299385000000 1294414077000000
#1343 enhancement rgrp rgrp ckan-backlog new [super] User related improvements (login, user pages etc)
  • Disallow account creation via openid - #1386
  • Require email field - #1319
    • Require email confirmation to be activated (?)
  • Improvements to user page (e.g. show activity and more info about user) - #1396
  • Modal user login - #1311
1316017098000000 1318528138000000
#1078 enhancement kindly rgrp ckan-v1.5 closed fixed Refactors WUI controllers and forms to use logic layer
  • Deserialize forms to new dict format.
  • Replace controllers/forms to use dictization.
1302509347000000 1305828973000000
#1423 enhancement markbrough ckan-backlog new Edit resources suggestions
  • Description vs Name - Edit Resources view is showing the name of the package rather than the description, and a lot (all?) of the packages before the upgrade don't have names, so might be good to swap this round again, e.g.: http://thedatahub.org/dataset/edit/iati-registry
  • Moving resources - Moving them up or down the list used to be quite useful if you had a lot of resources that you might want to leave on the resources page, but only one or two that were actually current and that you wanted to draw attention to. This doesn't exist any more on CKAN but I think it would be good to add it back in.
1319641906000000 1338203678000000
#1048 enhancement dread dread ckan-v1.4-sprint-4 closed fixed Complete making groups versioned
  • Deleting a group changes state to 'deleted' rather than purging it
  • Adding authz tests for deleted groups
1300387655000000 1300702752000000
#2405 defect icmurray rgrp ckan-v1.9 assigned Improvements to data viewer embed
  • Decent powered by icon for the Embed for the DataHub?? (make this text customizable and allow html ...)
    • Current icon and text looks really bad
  • Embed link uses uuid rather than dataset name (this goes to perma-url question ...)
  • Data viewer embed url includes all the resource info (not needed -- just url and backend info ...)
  • Embed extension urls do not respect original domain but instead use site_url (I'm guessing). E.g. datahub.io domain ends up with links to embed on thedatahub.org
1337583565000000 1340635981000000
#2258 enhancement rgrp ckan-future new Customizable contributor agreement
  • Customize text at bottom of forms
  • Also need to make clear that this does not apply to the data itself (that is covered by the license you choose on your dataset ...)
1332751549000000 1338204747000000
#2557 enhancement aron.carroll aron.carroll demo phase 1 closed fixed Demo issues on the search dataset page
  • Crosses have disappeared
  • Formats should stretch across the page
1340035222000000 1340185609000000
#1400 enhancement johnglover rgrp ckan-sprint-2012-03-05 closed fixed Document Archiver Extension
  • Create page on http://wiki.ckan.org/ about setting up a queue (this will merge into core docs when this is stable) - having a queue will now become a generic requirement for a bunch of extensions
  • README with install instructions in ckanext-archiver
  • Create an entry in http://wiki.ckan.org/Extensions
  • Write a blog post
1318600705000000 1331544816000000
#678 task dread dread ckan-v1.2 closed fixed Form for DGU metadata v3
  • Create form
  • Deploy on test
  • Deploy on live
1286385712000000 1286979133000000
#518 requirement pudo pudo iati-1 closed fixed IATI WUI Editing
  • Create custom form
1282893167000000 1283896718000000
#914 defect pudo pudo ckan-v1.3-sprint-3 closed fixed Handle formats in dcat-tools
  • Create a list of valid predicates for format information (accessURL et al)
  • Execute #235 via Google Spreadsheets and include in DCat enrichment
1295266569000000 1297069958000000
#913 enhancement pudo pudo ckan-v1.5 closed wontfix Handle licenses in dcat-tools
  • Create a list of all valid predicates where licenses are stored.
  • Create a license normalization registry in GSpread
  • Fill spreadsheet from OKD/OSI lists.
1295266407000000 1306774962000000
#508 task dread dread ckan-v1.2 closed fixed Create branch ultrastable
  • Create a branch named ultrastable that represents latest version of 1.0 as found on dgu
    • Going forward ultrastable will act as stable - 1 (and either ultrastable or stable will be on the rock-solid production systems such as dgu)
  • Do not deprecate the stable or metastable branch for the present
  • Ask for recommendations on mailing list about best practice for branching (e.g. versioned based versus a simple HEAD versus stable) and how this affects standard operations such as applying bugfixes.
    • For useful discussion of how to do backporting and applying bugfix patches see: http://www.python.org/dev/peps/pep-0374/#backport
    • NB: in general do not always have to apply in stable/ultrastable and merge upwards for bugfixes -- can use transplant extension as well.
1282663663000000 1282908795000000
#2295 enhancement icmurray icmurray ckan-sprint-2012-04-16 closed fixed Migrate CKAN packaging and apt.ckan.org from dgu-buildbot
  • Create Jenkins task for packaging CKAN
  • ... and publishing to s3://apt.ckan.org
1334566976000000 1334566986000000
#650 story pudo pudo ckan-v1.2 closed fixed WUI editing for Authorization Groups
  • Copy & adapt Group controller tests to suit AuthorizationGroups?
  • Copy & adapt Group controllers and templates for Authorization Groups
1284890073000000 1287391932000000
#1079 enhancement kindly rgrp ckan-v1.4-sprint-5 closed fixed Refactor API to use new logic layer and dictization
  • Convert current api saves to the new standard dict format.
1302509530000000 1302777504000000
#722 story pudo pudo iati-3 closed fixed Further adapt l10n for IATI
  • Change "Publishing Entity" to "Publisher"
1287584314000000 1288459703000000
#2203 enhancement kindly rgrp ckan-v1.9 assigned Data Viewer support for PDF
  • Boot viewer for format/mimetype: application/pdf, application/x-pdf, application/acrobat, applications/vnd.pdf, text/pdf, text/x-pdf
  • propose we use pdf.js - https://github.com/mozilla/pdf.js
  • We could also try iframing for browsers with native support but this seems more complex
1330860293000000 1348568961000000
#2283 enhancement rgrp ckan-v1.8 closed wontfix [super] Data Previewer / Viewer v3
  • Basic geo map
  • Facets
  • Filtering
  • Pivot table support (?)
  • Export data (?)
  • Save data query and share
  • More and better graphing
  • Embedding! - /resource/../embed

User stories and analysis: http://ckan.okfnpad.org/feature-2283-data-viewer-v3

1334138341000000 1340623843000000
#2464 enhancement johnglover johnglover ckan-sprint-2012-06-25 closed fixed Rename 'organization' to 'publisher'
  • Already done for basic publisher forms (index, read, edit), but needs to be done for additional forms (in particular, form paths like 'organization_apply' that are hardcoded into the organizations controller).
  • change organization mapping to /publisher
1338212553000000 1338910189000000
#2317 enhancement rgrp ckan-v1.7 closed wontfix Corrections to dataset creation form for v1.7
  • Add home page url
  • Remove group option (seen it confuse several users) - perhaps replace with tags (?)
  • Check form looks ok in portugese (seems to be a problem with css)
1335022061000000 1340033433000000
#679 task thejimmyg dread ckan-v1.3 closed fixed Improve standard package edit form 1286386050000000 1294166120000000
#2327 enhancement kindly kindly ckan-sprint-2012-04-30 closed fixed Upgrade solr schema to version 1.4
  • Add Ascii folding filter to text fields.
  • Add capacity field for public, private access.
  • Add title_string so you can sort alphabetically on title.
  • Fields related to analytics, access and view counts.
  • Add data_dict field for the whole package_dict.

Actual implementation of data_dict adding will be added later.

1335374973000000 1338205397000000
#1500 defect dread dread ckan-sprint-2011-12-05 closed fixed Slug API calls tidy up
  • API call documented but don't exist any more: dataset create_slug
  • API call not documented but exists: is_slug_valid
  • API call not documented, badly sited in API and using custom code in controller (not logic layer): /package/autocomplete
1322600285000000 1323166918000000
#2236 enhancement rgrp rgrp ckan-sprint-2012-03-19 closed fixed Updates to Recline and integrate them
  • (Recline) Better graphing (multiple graph types etc)
  • (Recline) Bootstrapify
  • Integrate
1331910381000000 1332153688000000
#215 enhancement rgrp dread v1.0 closed fixed UI Review - Home page
  • 'Login via OpenID' -> 'Login with OpenID'?
  • Elements:
    • Search
    • about CKAN
    • 3 column Packages view (see ticket:219)
    • Small tag cloud (RHS)

Also, what about ticket:143 ?

1260879732000000 1266513523000000
#1457 defect jilly.mathews ckan-future new Bug with DataNL instance

"when logging into http://register.data.overheid.nl/ with OpenID, the /user/me page gives a 404. CKAN version 1.3.4."

n the manual it says an API key kan be created via http://test.ckan.net/user/me /. However, when I try the corresponding http://register.data.overheid.nl/user/me, I get a 404 error (not found).

1320925041000000 1320925041000000
#29 enhancement rgrp rgrp milestone16 closed fixed Improve installation process
  1. install documentation (currently source:trunk/INSTALL is empty)
  2. improve ckan-admin as necessary
  3. create default data (such as licenses)
1152553638000000 1183648166000000
#146 defect pudo rgrp closed worksforme Problem when an admin user logs in between commencing editing and saving
  1. Visitor starts editing a package (or creates a new package)
  2. Visitor logs in before previewing or committing
  3. Visitor is an admin (or sysadmin)
  4. Preview or commit fails

Reason (conjecture): the form we use for package editing is now dependent on whether you have admin privileges (we allow editing of state by admins). When you login the old form is now incorrect and this results in the formalchemy fieldset breaking.

1255013773000000 1291829862000000
#59 enhancement johnbywater rgrp v1.0 closed fixed Provide a basic guide to CKAN on the site
  1. Use contents from ckan package notes section (rgrp)
  2. Update that section to be more guide-like (jwyg)
1239018583000000 1273080019000000
#52 enhancement rgrp rgrp v0.7 closed invalid Paginated results sets should be customizable across domain objects
  1. Tag results could/should show number of associated packages
  2. Package results should show title (and be in list)
  3. Pagination should be able to be applied to other result sets than simply register listing (e.g. search results ...)
  4. Revisions should be listed in a table with full details
1223549648000000 1223908425000000
#101 enhancement rgrp rgrp closed fixed (Improved) Download support
  1. Given a url download from that url to disk
  2. Given a package use download url to download to disk

Once on disk should uncompress (if necessary).

Details

  • Should download either to tmp directory (defaulted in config) or a specified path on disk
  • In download would like to support as many types of target urls as possible:
    1. Single files (usually compressed filesets but could be individual files)
    2. Index pages listing files to download
    3. Revision control repositories
    4. ...

This will obviously be a significant amount of work. Suggest:

  1. Start off just supporting the first option.
  2. Have something like a plugin system to handle new target types
  3. Reuse existing work (e.g. easy_install and pip handle standard vcs such as svn, hg, git etc)

Cost: 1d

1249988866000000 1267648607000000
#503 task dread rgrp closed fixed Provide exemplar package relationships for some packages
  1. Find some relationships.
  2. Add them via API
  3. Notify DGU of completion and point to exemplars
1282659631000000 1314031851000000
#409 task rgrp rgrp datapkg-0.8 closed fixed Refactor cli to be more 'pluggable'
  • (Load cli commands from setuptools entry point name datapkg.cli)
  • Document how other can write new commands
  • Refactor base Command class to support this pluggability (if necessary)
1281348659000000 1297074197000000
#843 enhancement wwaites closed fixed user list ui for group curation
  • perhaps we should show the openid as well to distinguish between users with the same name.
  • perhaps on account creation, the user should be redirected to their personal details page to encourage them to fill in a human readable name.
  • also the list is much too long. can we make it work some other way? javascript is an option, but must be careful to fail gracefully when the browser does not support it.
1291484245000000 1319721601000000
#531 task pudo rgrp closed fixed Load sample IATI metadata
  • Parse data
  • Load via API
  • Develop test for load via API (can be local or remote -- with paste webfixture may be easier)
1282899244000000 1283536676000000
#75 enhancement dread rgrp closed duplicate Record and display package "usage" information
  • Number of package page visits on ckan (can we get this straight from google analytics)
  • Number of times url or download url is used - now ticket:937 (Record download stats for resoures)

How do we do this?

  • Google analytics will miss a lot of this usage (and how do we get that data out anyway)
  • Could use javascript but again misses usage.
  • One option is to redirect link but that is kind of nasty (but may be only option ...)
1247828785000000 1296341223000000
#461 task dread johnbywater ckan-v1.2 closed fixed Change ONS data importing to work via API
  • Move script out to ckandgu repo
  • Change script to convert xml into package dicts
  • Test (against test.ckan.net, hmg.test.ckan.net)
  • Deploy
1282303411000000 1283250478000000
#2708 enhancement kindly toby ckan-v1.9 new limit extra data for package/group show

contextpackage_limits? = { 'tags': 5, <- get first 5

'extras': 0, <- get all

}

only get what you ask for have to be explicit

contextgroup_limits? = {} only main item

start with datasets/groups expand if we like it

1342622420000000 1342622420000000
#648 requirement pudo ckan-v1.3 closed fixed Enable lock-down of package creation
  • copy exisiting tests, modify authz in setUp, adapt and extend tests
    • Problem: default_role_actions is read by init_db
    • Solution: nuke db after monkey-patching
    • role = model.Role('Reader'), del role.actions[...]

self.PRE_MAUTHZ_RULES = copy(mauthz.default_role_actions) mauthz.default_role_actions.remove((Role.READER, Action.CREATE)) #raise Exception(mauthz.default_role_actions) model.Session.remove() model.repo.rebuild_db()

  1. Start from the functional

is_authorized(user, Action.Create, model.Package)

-> Doing this will put 'Package' in the context field of the user_object_role table. This will trigger SQLAlchemy to attempt a join towards PackageRole? in all queries. Since for class-level role assignments there never is a PackageRole? join table entry, this will never return any results.

  • have a ckan install that would not allow visitors to either list packages or list groups
    • two paths: create the listing, but for each group/pkg decide that you cannot show this
    • lock down the whole page (/package/list)
      • this is class-based, not object-based

is_authorized(user, Action.Package_Create, model.System()) is_authorized(user, Action.Group_Create, model.System())

[Separating Package and Group roles may be useful going forward: PackageEditor?, GroupEditor? etc]

  1. Find a standard way to lock down classes
    • possibly add default rows in user_object_role
    • introduce lock-down into controllers: group new, package new, REST equivalents,
    • confirm tests
1284889519000000 1284889656000000
#525 requirement pudo pudo iati-2 closed fixed Confirm and approve publishing entity account

  • So some kind of confirmation or approval by someone more senior?
  • Alternative: just have an account request.
  • Priority: 3
1282894040000000 1285595152000000
#952 task wwaites pudo ckan-backlog closed invalid CKAN should run under nginx/uswgi

second part of #908

1296730498000000 1310125204000000
#2349 enhancement ross ross ckan-sprint-2012-06-25 closed fixed Make sure semantic.datahub.io gets created

[x] Redeploy Sparql endpoint

Done at linkeddata.openlinksw.com/sparql

[x] Make sure it is available at datahub.io/sparql or semantic.datahub.io/sparql

[x] Generate daily dumps

[x] Make dumps available via web

[x] Notify Hugh once running

[x] Announce to LD guys

[x] Think about how we can apply this to publicdata.eu (can we do the same?) ... (being done elsewhere)

1335880412000000 1340356629000000
#2519 enhancement ross ross ckan-v1.9 closed fixed Dataproxy (converters) enhancement

Whilst the error messages returned from the dataproxy are informative, they aren't particularly human readable. It isn't clear to the user whether they should retry, or whether the format of their data is causing the problem etc...

Would be lovely if the error messages returned contained a human readable version of the error.

1339584955000000 1345565215000000
#2865 enhancement ross ross closed fixed 1.8 unicode error

URL: http://thedatahub.org/el/tag/jutatt%C3%A1sok Module weberror.errormiddleware:162 in call << traceback_supplement = Supplement, self, environ

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:155 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:131 in call << r'\1', oldpath)

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:239 in call << try:

res = WSGIController.call(self, environ, start_response)

finally:

model.Session.remove()

res = 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.environpylons.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.template:30 in view << """

try:

return render(url)

except TemplateNotFound?:

if url.endswith('.html'):

return render(url)

Module ckan.lib.base:153 in render << try:

return cached_template(template_name, render_template,

loader_class=loader_class)

except ckan.exceptions.CkanUrlException?, e:

raise

loader_class=loader_class)

Module pylons.templating:249 in cached_template << return content

else:

return render_func()

return render_func()

Module ckan.lib.base:95 in render_template << template = globsapp_globals?.genshi_loader.load(template_name,

cls=loader_class)

stream = template.generate(globs)

cls=loader_class)

Module genshi.template.loader:223 in load << loadfunc = directory(loadfunc)

try:

filepath, filename, fileobj, uptodate = loadfunc(filename)

except IOError:

continue

filepath, filename, fileobj, uptodate = loadfunc(filename)

Module genshi.template.loader:286 in _load_from_directory << def _load_from_directory(filename):

filepath = os.path.join(path, filename) fileobj = open(filepath, 'U') mtime = os.path.getmtime(filepath) def _uptodate():

fileobj = open(filepath, 'U')

UnicodeEncodeError?: 'ascii' codec can't encode character u'\xe1' in position 73: ordinal not in range(128) CGI Variables CKAN_CURRENT_URL '/el/tag/jutatt%C3%A1sok' CKAN_LANG 'en' CKAN_LANG_IS_DEFAULT True CKAN_PAGE_CACHABLE True CONTENT_TYPE '; charset=utf-8' DOCUMENT_ROOT '/etc/apache2/htdocs' GATEWAY_INTERFACE 'CGI/1.1' HTTP_ACCEPT '*/*' HTTP_ACCEPT_ENCODING 'gzip,deflate' HTTP_CONNECTION 'close' HTTP_FROM 'googlebot(at)googlebot.com' HTTP_HOST 'thedatahub.org' HTTP_USER_AGENT 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)' PATH_INFO '/el/tag/jutatt\xc3\xa1sok' PATH_TRANSLATED '/etc/ckan/datahub/apache.wsgi/el/tag/jutatt\xc3\xa1sok' REMOTE_ADDR '127.0.0.1' REMOTE_PORT '49520' REQUEST_METHOD 'GET' REQUEST_URI '/el/tag/jutatt%c3%a1sok' SCRIPT_FILENAME '/etc/ckan/datahub/apache.wsgi' SERVER_ADDR '127.0.0.1' SERVER_ADMIN '[no address given]' SERVER_NAME 'thedatahub.org' SERVER_PORT '80' SERVER_PROTOCOL 'HTTP/1.0' SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at thedatahub.org Port 80</address>\n' SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)' WSGI Variables application <beaker.middleware.CacheMiddleware? object at 0x7f5312a51650> beaker.cache <beaker.cache.CacheManager? object at 0x7f5312a51790> beaker.get_session <bound method SessionMiddleware?._get_session of <beaker.middleware.SessionMiddleware? object at 0x7f5312a516d0>> beaker.session {'_accessed_time': 1345113298.778472, '_creation_time': 1345113298.778472} mod_wsgi.application_group 'ckan.net|' mod_wsgi.callable_object 'application' mod_wsgi.handler_script mod_wsgi.input_chunked '0' mod_wsgi.listener_host mod_wsgi.listener_port '8080' mod_wsgi.process_group 'datahub' mod_wsgi.request_handler 'wsgi-script' mod_wsgi.script_reloading '1' mod_wsgi.version (3, 3) paste.cookies (<SimpleCookie: >, ) paste.registry <paste.registry.Registry object at 0x7f5309add610> paste.throw_errors True pylons.action_method <bound method TemplateController?.view of <ckan.controllers.template.TemplateController? object at 0x7f52b0ea2d10>> pylons.controller <ckan.controllers.template.TemplateController? object at 0x7f52b0ea2d10> pylons.environ_config {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons <pylons.util.PylonsContext? object at 0x7f52b0ea2b90> pylons.routes_dict {'url': u'el/tag/jutatt\xe1sok', 'action': u'view', 'controller': u'template'} repoze.who.logger <logging.Logger object at 0x7f53127b2b50> repoze.who.plugins {'openid': <OpenIdIdentificationPlugin? 139994769488336>, 'friendlyform': <FriendlyFormPlugin? 139994769488528>, 'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator? object at 0x7f5312d893d0>, 'auth_tkt': <AuthTktCookiePlugin? 139994771858704>, 'ckan.lib.authenticator:OpenIDAuthenticator': <ckan.lib.authenticator.OpenIDAuthenticator object at 0x7f5312d89350>} routes.route <routes.route.Route object at 0x7f531296ea10> routes.url <routes.util.URLGenerator object at 0x7f5309add810> webob._parsed_query_vars (GET([]), ) webob.adhoc_attrs {'language': 'en-us'} wsgi process 'Multi process AND threads (?)' wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7f52d4004990> wsgi.version (1, 1) wsgiorg.routing_args (<routes.util.URLGenerator object at 0x7f5309add810>, {'url': u'el/tag/jutatt\xe1sok', 'action': u'view', 'controller': u'template'})

1345114613000000 1346670331000000
#2916 enhancement johnmartin ross ckan 2.0 closed fixed User management in orgs needs autocomplete

The user management in organizations ( http://localhost:5000/organization/users/NAME ) should autocomplete names in the dropdown box so that only valid usernames are added to the table.

1347451792000000 1347970727000000
#2347 enhancement icmurray ross ckan-v1.8 closed fixed Related stuff dashboard and changes

Some additions to the related stuff functionality to make it more useful post the 1.7 release.

[x] Edit item (after checking auth)

[x] My related things on my user page

[x] Show user created related things on the users' page with links direct to the related page of that dataset. {0.5d}

[x] Related stuff usage counts { 1d }

Record the number of times the link for a related item is clicked. This is likely to mean that the link fires to call CKAN and then redirects to the actual URL.

[x] Un-attached related items {0.25d}

Allow related items to be created without being attached to datasets. This may mean that the dataset field is optional in the API.

[ ] Dashboard for related

A dashboard for related items, site-wide (not package specific) and orderable by date, views, {rating}, popularity of the dataset. Would be useful (possibly) for site-admin to mark one or more as 'featured'

[x] Dashboard + Controller (Related) {1d}

[x] Ordering at logic layer (date, views, rating, popularity of package, featured) {1d}

[x] date [x] views [x] featured

[x] 'Featured' related item with mechanism to fetch it. {0.5d}

[ ] UI within dashboard for sysadmins to check/uncheck feature status {0.5d}

[x] Changing auth for related.

Currently auth is based on deletion being possible by dataset owner and the related owner but it may be that a lot of the auth for related items should be configured to have more restrictive auth.

[x] Implement auth changes for publisher auth profile. { 0.5d }

[x] General issues

[x] Serverside validation of URLs

[x] Activity updates

[x] Make optional

[x] Related item only includes App, Idea, Visualization but not API | Post | Paper | News Article options as in original ticket #2204

[ ] UI Changes

[ ] General tidy up, fix form etc (icon for menu bar)

[ ] Highlight featured items py:if="related.featured"

[ ] Show either view count or popularity ${ related.view_count }

[ ] A user's related items should be on their home page

[ ] Related item plus sign is very poorly aligned within box

[ ] Add related items should be in drop down like for resources (?) to make it easy to add items

[ ] Hover should show a title that gives some information about what related are (not at all clear)

"Apps, Ideas, Visualization and other material related to this dataset"

[x] Related is a pretty terrible name in the UI - much better to have it called Apps, Ideas etc (perhaps title tag could even give more details e.g. "Apps, Ideas, Visualization and other material related to this dataset") -- btw i thought this was in #2332 but realize it wasn't (apologies for that!)

  • Went with Apps & Ideas (for now)

[x] Documentation, documentation, documentation - AFAICT I can't see anything in v1.7 or master docs. I imagine this would be a short section like http://docs.ckan.org/en/ckan-1.7/commenting.html (and probably coming right after that in the ToC) which says

  • What it does
  • How to enable (and perhaps includes a nice-screenshot!)
  • How to customize (e.g. can one customize the list of options of things one can create (e.g. can I set it to just be app and idea or ...)
  • Also liase with Mark W re a blog post about this from the user perspective (a screenshot walkthrough ...)

[ ] Clearly mark the old extension as deprecated from v1.7 forward: https://github.com/okfn/ckanext-apps (I just met someone last week who was working on integrating this and had no idea it was replaced by something better in v1.7)

1335879539000000 1343226149000000
#368 defect anonymous closed wontfix 500 Server error when creating package

I've just started writing the importer from cap.open.org.nz and was running an initial import of just the package name and titles. The packages were created however I received a 500 error in response:

"publish: New Zealand Coastline (new-zealand-coastline)" opening connection to nz.ckan.net... opened <- "POST /api/rest/package HTTP/1.1\r\nContent-Type: application/x-www-form-urlencoded\r\nConnection: close\r\nAuthorization: 81179ade-fa4a-4632-9b89-3d0c98bfc8b8\r\nContent-Length: 64\r\nHost: nz.ckan.net\r\n\r\n" <- "{\"name\":\"new-zealand-coastline\",\"title\":\"New Zealand Coastline\"}" -> "HTTP/1.1 500 Internal Server Error\r\n" -> "Date: Tue, 20 Jul 2010 10:20:35 GMT\r\n" -> "Server: Apache/2.2.9 (Debian) mod_wsgi/2.5 Python/2.5.2\r\n" -> "Vary: Accept-Encoding\r\n" -> "Content-Type: text/html; charset=iso-8859-1\r\n" -> "Cache-Control: proxy-revalidate\r\n" -> "Content-Length: 640\r\n" -> "Connection: close\r\n" -> "\r\n" reading 640 bytes... -> "<!DOCTYPE HTML PUBLIC \"-IETFDTD HTML 2.0EN\">\n<html><head>\n<title>500 Internal Server Error</title>\n</head><body>\n<h1>Internal Server Error</h1>\n<p>The server encountered an internal error or\nmisconfiguration and was unable to complete\nyour request.</p>\n<p>Please contact the server administrator,\n [no address given] and inform them of the time the error occurred,\nand anything you might have done that may have\ncaused the error.</p>\n<p>More information about this error may be available\nin the server error log.</p>\n<hr>\n<address>Apache/2.2.9 (Debian) mod_wsgi/2.5 Python/2.5.2 Server at nz.ckan.net Port 80</address>\n</body></html>\n" read 640 bytes Conn close

The server should not respond with a 500 error if the package was created.

1279622462000000 1291831811000000
#2551 enhancement johnglover ross datahub-oct closed fixed Feature metrics

Requirements

Would be useful if we could extend the Google Analytics extension to push track events to GA so that we can determine how the system is being used, and where we can optimise the workflow.

Assuming it isn't configured to be off, track events should be added to some key action buttons so that the information on what users are doing is logged for analysis.

Interface

This could possibly just be a list of JS calls to $('x').click(_gaq.push('track'...))

User Stories

  • As a developer I would like to know which components of the system are used the most so I can streamline the processes.
  • As a support developer I would like to know which parts add complexity to the system for minimal gain and could possibly be removed, de-prioritised.

For which metrics, as many of the following as possible that are achievable without changing the templates. I think for now it is enough to just record counts of these pages/actions.

  • Any group link on homepage

  • Clicking on username (to go to profile)

  • In user profile, clicking on Edit Profile

  • Clicking Save Changes on Edit Profile page

  • Clicking on any dataset link on User Profile page

  • Any of the group links on /group

  • Clicking any of the right hand sidebar tags on /group/X

  • Visiting /group/history/X

  • Compare Button on /group/history/X

  • Compare Button on /dataset/history/X

  • Tags on right hand sidebar of /dataset/X

  • Download button on any /dataset/X/resource/* page

  • Data API button on any /dataset/X/resource/* page

Tasks

[ ] Analysis/Clarification?

[ ] Code/Config? changes

[ ] Documentation

Estimates

1340017689000000 1343042712000000
#2545 requirement ross ross opendatasuite 1 closed fixed Need to build DataGM site based on ODS

Requirements

We need to clone the demo ODS site for DataGM as soon as we have a mostly working demo so that the DataGM team can try it out and comment/feedback on functionality.

Interface

None

User Stories

None

Tasks

[ ] Deploy demo DataGM site.

Estimates

1340016640000000 1344337973000000
#2548 enhancement kindly ross datahub-july assigned Object ownership for groups/package

Requirements

We need to be able to easily determine who the owner of a dataset or group is. Datasets and Groups should have an Owner, who may change over time but is a specific user within the CKAN instance. It should be easy for CKAN components to determine the user and for the initial version we should ignore the can of worms labelled 'ownership transfer'.

At this point migration is likely to be the biggest issue, and would suggest that it is acceptable that the last user to edit a dataset be set as the current owner.

More tickets should arise as a result of this work where we may be able to optimise some queries to use the new feature.

Interface

None

User Stories

None

Tasks

[ ] Analysis/Clarification?

[ ] Tests

[ ] Migration

[ ] Code/Schema? changes

[ ] Documentation

Estimates

1340017331000000 1340706539000000
#2547 enhancement shevski ross opendatasuite 2 assigned ODS Initial data sets

Requirements

The ODS demo site will need data adding, initially as fixtures but it would also be useful if we started evaluating datasets that we can ship with ODS installations (at least in the UK) from places such as DGU and ONS.

May wish to create a ticket for making sure the datasets within the system are reset every X hours. Perhaps.

Interface

None

User Stories

  • As a new system administrator for an ODS instance, I don't want to have a site devoid of any data. Geographically relevant datasets would be welcomed.
  • As a bizdev person I would like to be able to demonstrate how ODS works with real datasets.

Tasks

[ ] Identify relevant sources for datasets

[ ] Pick datasets

[ ] Set them up for import

Estimates

1340016906000000 1340705614000000
#2546 requirement ross ckan-backlog assigned ODS Managing homepage content

Requirements

Require the ability for users to control some level of content that is visible on the home page of their ODS installation. This may be through RSS/Atom feeds (see #2234) or another mechanism but should result in admins being able to change blocks of text on their homepage.

This should not be configuration, but accessible through WUI.

Interface

None

User Stories

  • As a system administrator I want to have control over content displayed on the front page beyond featured/popular items.

  • As a system administrator I don't want to manage content through having to write an extension.

Tasks

[ ] Analysis

Estimates

1340016842000000 1346663437000000
#2549 enhancement ross ross ckan 2.0 closed wontfix Merge organization logic into groups

Requirements

Merge the organizations plugin into the core groups functionality. Most of this is templating and a small number of changes to the group controller.

Investigate the possibility of removing the Membership model and using FKs.

Interface

This is likely to consist of:

  • Updating the templates in templates/group/
  • Configuring whether we want to constrain datasets to a single group (as per organizations)
  • Implementing the separate user management (add users to group).
  • Checking the publisher auth to not necessarily rely on group type = 'organization'
  • Making sure that the changes still work with publisher auth.

User Stories

None

Tasks

[ ] Code

[ ] Configuration

[ ] Model/Migration?

[ ] Fix templates

[ ] Documentation

Estimates

1340017421000000 1350562037000000
#2691 enhancement toby shevski demo phase 2 closed fixed Tag 404 error

404 Not Found The resource could not be found.

1342538490000000 1342604273000000
#1652 enhancement kindly ross ckan-backlog assigned How we intergrate with Drupal Multiligual?
  • Analysis of how/where we can integrate with Drupal Multilingual
  • Is it likely to access CKAN via /en/data/... or /data/en/... (not sure, probably former) and we need to make sure that it ends up at /en/...
  • Check with Ian for other issues.
1326709894000000 1340187535000000
#1398 enhancement kindly rgrp ckan-sprint-2011-11-21 closed fixed Automated conversion of resource data into webstore
  • Possible sibling / requirement: #1397 (resource archiving)
  • Setup test environment. 1d
  • Make task to upload files to webstorer. 3d
    • This includes writing back webstore_url and updated date. 0.5d
    • Type guessing of file format. 1d
    • Make cron to upload all un webstored resources. 0.5d
  • Testing for errors by running cron 2d
  • Make nice way to deploy celery 1d.
  • Documentation. 1d
  • Deployment. 1d
1318529724000000 1321827970000000
#2388 enhancement amercader amercader ckan-v1.8 closed fixed Update "out of the box" settings for CKAN
  • Only logged in users able to create
  • Creation permissions have only creators able to update a dataset
  • Synchronous search is enabled (#1678)
1337095269000000 1342104475000000
#2584 enhancement aron.carroll toby demo phase 1 closed fixed edit profile needs new theme

http://localhost:5000/user/edit/<my user name>

1340359925000000 1340620576000000
#2866 enhancement ross ross closed fixed 1.8 template error

URL: http://thedatahub.org/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d?key%3Db4c2d03fa8 Module weberror.errormiddleware:162 in call << traceback_supplement = Supplement, self, environ

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:155 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:131 in call << r'\1', oldpath)

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:239 in call << try:

res = WSGIController.call(self, environ, start_response)

finally:

model.Session.remove()

res = 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.environpylons.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.user:409 in perform_reset << c.reset_key = request.params.get('key')

if not mailer.verify_reset_link(user_obj, c.reset_key):

h.flash_error(_('Invalid reset key. Please try again.')) abort(403)

if not mailer.verify_reset_link(user_obj, c.reset_key):

Module ckan.lib.mailer:100 in verify_reset_link << if not user.reset_key or len(user.reset_key) < 5:

return False

return key.strip() == user.reset_key

return key.strip() == user.reset_key

AttributeError?: 'NoneType?' object has no attribute 'strip' CGI Variables CKAN_CURRENT_URL '/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d?key%253Db4c2d03fa8' CKAN_LANG 'it' CONTENT_TYPE '; charset=utf-8' DOCUMENT_ROOT '/etc/apache2/htdocs' GATEWAY_INTERFACE 'CGI/1.1' HTTP_ACCEPT '*/*' HTTP_ACCEPT_ENCODING 'gzip,deflate' HTTP_CONNECTION 'close' HTTP_FROM 'googlebot(at)googlebot.com' HTTP_HOST 'thedatahub.org' HTTP_USER_AGENT 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)' PATH_INFO '/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d' PATH_TRANSLATED '/etc/ckan/datahub/apache.wsgi/it/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d' QUERY_STRING 'key%3Db4c2d03fa8' REMOTE_ADDR '127.0.0.1' REMOTE_PORT '54634' REQUEST_METHOD 'GET' REQUEST_URI '/it/user/reset/3086e91c-fe09-4a98-92e1-19de67a9ac9d?key%3Db4c2d03fa8' SCRIPT_FILENAME '/etc/ckan/datahub/apache.wsgi' SERVER_ADDR '127.0.0.1' SERVER_ADMIN '[no address given]' SERVER_NAME 'thedatahub.org' SERVER_PORT '80' SERVER_PROTOCOL 'HTTP/1.0' SERVER_SIGNATURE '<address>Apache/2.2.22 (Ubuntu) Server at thedatahub.org Port 80</address>\n' SERVER_SOFTWARE 'Apache/2.2.22 (Ubuntu)' WSGI Variables application <beaker.middleware.CacheMiddleware? object at 0x7f5312a51650> beaker.cache <beaker.cache.CacheManager? object at 0x7f5312a51790> beaker.get_session <bound method SessionMiddleware?._get_session of <beaker.middleware.SessionMiddleware? object at 0x7f5312a516d0>> beaker.session {'_accessed_time': 1345066159.520708, '_creation_time': 1345066159.520708} mod_wsgi.application_group 'ckan.net|' mod_wsgi.callable_object 'application' mod_wsgi.handler_script mod_wsgi.input_chunked '0' mod_wsgi.listener_host mod_wsgi.listener_port '8080' mod_wsgi.process_group 'datahub' mod_wsgi.request_handler 'wsgi-script' mod_wsgi.script_reloading '1' mod_wsgi.version (3, 3) paste.cookies (<SimpleCookie: >, ) paste.parsed_dict_querystring (MultiDict?([('key=b4c2d03fa8', )]), 'key%3Db4c2d03fa8') paste.parsed_querystring ([('key=b4c2d03fa8', )], 'key%3Db4c2d03fa8') paste.registry <paste.registry.Registry object at 0x7f52eba637d0> paste.throw_errors True pylons.action_method <bound method UserController?.perform_reset of <ckan.controllers.user.UserController? object at 0x7f52e49f7a50>> pylons.controller <ckan.controllers.user.UserController? object at 0x7f52e49f7a50> pylons.environ_config {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons <pylons.util.PylonsContext? object at 0x7f52f5649ad0> pylons.routes_dict {'action': u'perform_reset', 'controller': u'user', 'id': u'3086e91c-fe09-4a98-92e1-19de67a9ac9d'} repoze.who.logger <logging.Logger object at 0x7f53127b2b50> repoze.who.plugins {'openid': <OpenIdIdentificationPlugin? 139994769488336>, 'friendlyform': <FriendlyFormPlugin? 139994769488528>, 'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator? object at 0x7f5312d893d0>, 'auth_tkt': <AuthTktCookiePlugin? 139994771858704>, 'ckan.lib.authenticator:OpenIDAuthenticator': <ckan.lib.authenticator.OpenIDAuthenticator object at 0x7f5312d89350>} routes.route <routes.route.Route object at 0x7f5312961ad0> routes.url <routes.util.URLGenerator object at 0x7f52de7f6390> webob._parsed_query_vars (GET([('key=b4c2d03fa8', )]), 'key%3Db4c2d03fa8') webob.adhoc_attrs {'language': 'en-us'} wsgi process 'Multi process AND threads (?)' wsgi.file_wrapper <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7f52fc4f1a08> wsgi.version (1, 1) wsgiorg.routing_args (<routes.util.URLGenerator object at 0x7f52de7f6390>, {'action': u'perform_reset', 'controller': u'user', 'id': u'3086e91c-fe09-4a98-92e1-19de67a9ac9d'})

1345114641000000 1346670324000000
#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
#13 enhancement somebody rgrp closed invalid Delete a release 1152550611000000 1218545330000000
Note: See TracReports for help on using and creating reports.