Skip to content

[0.0.27] - 2026-04-22

Choose a tag to compare

@ifpen-gp ifpen-gp released this 22 Apr 14:32
· 30 commits to main since this release

Added

  • total_limit argument to restrict the number of records exchanged within the read/write queries.

Fixed

  • Taking into account offset and limit_per_request arguments in datastore_search_sql:
    • The datastore_search_sql entry point led to an infinite loop with default option search_all=True because API arguments limit and offset have no effect.
      When given, the arguments modify the SQL query. Including the LIMIT statement in your initial query is incompatible with default option search_all=True. Please specify search_all=False.
    • Using datastore_search_sql applies default CKAN read limits (ckan.params.default_read_limit_per_request) if argument was left None AND the request does not contain a LIMIT statement.
  • get_resource_id_or_request must raise an exception and never return None with option error_not_found=True (default option).
  • datastore_upsert did not apply offset argument if limit_per_request was None.

Changed

  • Refactored resource builder class: no need to specify the parent package ID when calling the patch functions, renamed attribute parent_package_builder.

Deprecated

  • Argument limit is ambiguous when requesting/uploading lines to DataStores.
    Argument total_limit replaces it for its main usage (limiting the total number of lines read) and limit now is an alias of this argument.
    To limit the number of lines per request/page, the argument limit_per_request was introduced.
  • Method ckan.set_limits was renamed ckan.set_limits_per_request. Previous function still works but is marked as deprecated.

Removed

  • Alias functions of datastore_search: datastore_dump*. To explicitly use API datastore_dump, use option search_method=False.
  • Alias functions of datastore_upsert: datastore_insert, datastore_update. You can change the upsert method
    with argument method=UpsertChoice.Insert for instance.