Ticket #261 (closed defect: fixed)
License does not work through REST API
| Reported by: | rgrp | Owned by: | dread |
|---|---|---|---|
| Priority: | major | Milestone: | v1.0 |
| Component: | ckan | Keywords: | |
| Cc: | Repository: | ||
| Theme: |
Description
Presence of license_id field in JSON input show below breaks REST API (with weird error about int not being subscriptable as if license_id field is being subscripted).
Using normal license field does not cause breakage but has no effect.
(Also think we should remove license_id from the API since there is no guarantee this cross system compatible since locally generated on install).
ourjson = '''{
"maintainer" : "Applications Division",
"version" : "1999-01-01",
"license_id" : 9,
"name" : "geogratiswaterfraction1km_v100",
"author_email" : "...",
"author" : "Dissemination Branch",
"tags" : [
"GeoGratis",
"Canada",
"GCMD",
"Hydrosphere",
"Ground Water",
"Surface Water",
"Hydropattern",
"Earth Science",
"Land Surface",
"Land Cover",
"Landscape"
],
"extras" : {
"License" : "http://geogratis.ca/geogratis/en/licence.jsp",
"Ministry" : "Natural Resources Canada",
"Level of Government" : "Federal"
},
"maintainer_email" : "[email protected]",
"notes" : "This product is a raster coverage",
"url" : "http://geogratis.cgdi.gc.ca/geogratis/en/collection/metadata.do?id=67",
"title" : "Geogratis - 1-km Water Fraction From National Topographic Data Base Maps, Canada"
}
'''
def test_15_random(self):
offset = '/api/rest/package'
import urllib
tmpjson = simplejson.dumps(simplejson.loads(self.ourjson))
postparams = urllib.urlencode({tmpjson: 1})
res = self.app.post(offset, params=postparams, status=[200],
extra_environ=self.extra_environ)
model.Session.remove()
Change History
Note: See
TracTickets for help on using
tickets.

Fixed in cset:c024937fc6cb. license_id removed in API.