[ckan-changes] [ckan/ckan] 962ca4: Remove trash because there are no revisions to get...

Adrià Mercader noreply at github.com
Fri Jan 10 11:08:30 UTC 2020


  Branch: refs/heads/5031-fix-res-url-after-werkzeug-upgrade
  Home:   https://github.com/ckan/ckan
  Commit: 962ca4221c12f582ccac26229c0de1d6731a0710
      https://github.com/ckan/ckan/commit/962ca4221c12f582ccac26229c0de1d6731a0710
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-02-22 (Fri, 22 Feb 2019)

  Changed paths:
    M ckan/controllers/admin.py
    M ckan/templates-bs2/admin/base.html
    R ckan/templates-bs2/admin/trash.html
    M ckan/templates/admin/base.html
    R ckan/templates/admin/trash.html
    M ckan/views/admin.py

  Log Message:
  -----------
  Remove trash because there are no revisions to get rid of now


  Commit: e6401d17806bccbef45e272a3d49c3de83171d5f
      https://github.com/ckan/ckan/commit/e6401d17806bccbef45e272a3d49c3de83171d5f
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-02-22 (Fri, 22 Feb 2019)

  Changed paths:
    M ckan/controllers/group.py
    M ckan/lib/cli.py
    M ckan/lib/create_test_data.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/get.py
    M ckan/logic/action/update.py
    M ckan/logic/auth/get.py
    M ckan/logic/schema.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/core.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/resource.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/user.py
    M ckan/public-bs2/base/javascript/modules/popover-context.js
    M ckan/public/base/javascript/modules/popover-context.js
    M ckan/templates-bs2/snippets/context.html
    M ckan/templates-bs2/snippets/context/user.html
    M ckan/templates-bs2/user/read_base.html
    M ckan/templates/snippets/context.html
    M ckan/templates/snippets/context/user.html
    M ckan/templates/user/read_base.html
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_user.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/lib/test_dictization_schema.py
    M ckan/tests/legacy/lib/test_solr_package_search.py
    M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/logic/test_tag.py
    M ckan/tests/legacy/logic/test_tag_vocab.py
    R ckan/tests/legacy/misc/test_sync.py
    M ckan/tests/legacy/models/test_extras.py
    M ckan/tests/legacy/models/test_follower.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/models/test_misc.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/models/test_package_relationships.py
    R ckan/tests/legacy/models/test_purge_revision.py
    R ckan/tests/legacy/models/test_revision.py
    M ckan/tests/legacy/models/test_user.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/test_jobs.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_system_info.py
    M ckanext/datastore/logic/action.py
    M ckanext/multilingual/solr/schema.xml
    M ckanext/stats/controller.py
    M ckanext/stats/stats.py
    M ckanext/stats/templates/ckanext/stats/index.html
    M ckanext/stats/tests/test_stats_lib.py

  Log Message:
  -----------
  Rip out lots of revisioning


  Commit: aacd9e2ac6774ae029adb97811fe6d6b6fa146a3
      https://github.com/ckan/ckan/commit/aacd9e2ac6774ae029adb97811fe6d6b6fa146a3
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-02-22 (Fri, 22 Feb 2019)

  Changed paths:
    M ckan/lib/activity_streams_session_extension.py
    M ckan/logic/schema.py
    M ckan/model/group_extra.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/system_info.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/models/test_package.py

  Log Message:
  -----------
  More revision removals and fixes


  Commit: fc48aa128eb7ae32952b9246323feb5236103f44
      https://github.com/ckan/ckan/commit/fc48aa128eb7ae32952b9246323feb5236103f44
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-02-22 (Fri, 22 Feb 2019)

  Changed paths:
    M ckan/controllers/admin.py
    M ckan/controllers/group.py

  Log Message:
  -----------
  Restore controllers - should not be changed


  Commit: d81a83a643f8f94a31b6369ec68c0d5664401df3
      https://github.com/ckan/ckan/commit/d81a83a643f8f94a31b6369ec68c0d5664401df3
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-02-22 (Fri, 22 Feb 2019)

  Changed paths:
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_member.py

  Log Message:
  -----------
  Fix test cruft


  Commit: d3203f6e3d6927398be2fe29159947565462b84b
      https://github.com/ckan/ckan/commit/d3203f6e3d6927398be2fe29159947565462b84b
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-18 (Mon, 18 Mar 2019)

  Changed paths:
    M .travis.yml
    M CHANGELOG.rst
    M ckan/controllers/package.py
    M ckan/controllers/user.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/search/__init__.py
    M ckan/logic/action/get.py
    M ckan/migration/migrate_package_activity.py
    M ckan/migration/revision_legacy_code.py
    M ckan/migration/versions/065_add_email_notifications_preference.py
    A ckan/migration/versions/088_package_activity_migration_check.py
    M ckan/model/__init__.py
    M ckan/public-bs2/base/less/ckan.less
    M ckan/public/base/less/ckan.less
    M ckan/templates-bs2/package/base.html
    M ckan/templates/user/read_base.html
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/migration/test_migrate_package_activity.py
    M ckan/tests/migration/test_revision_legacy_code.py
    M ckan/views/user.py
    M contrib/docker/solr/solrconfig.xml

  Log Message:
  -----------
  Merge branch '3484_revision_ui_removal2' into remove-vdm


  Commit: 797a18f6ac6f0ba2e4d433d0b63f4131e9a5f608
      https://github.com/ckan/ckan/commit/797a18f6ac6f0ba2e4d433d0b63f4131e9a5f608
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-22 (Fri, 22 Mar 2019)

  Changed paths:
    M ckan/lib/dictization/model_save.py
    M ckan/migration/versions/077_add_revisions_to_system_info.py
    A ckan/migration/versions/088_delete_extras_which_are_deleted_state.py
    R ckan/migration/versions/088_package_activity_migration_check.py
    A ckan/migration/versions/089_package_activity_migration_check.py
    M ckan/model/core.py
    M ckan/model/domain_object.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/resource.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/user.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/models/test_extras.py
    M ckan/tests/logic/action/test_delete.py

  Log Message:
  -----------
  Merge branch 'integrate-vdm-stateful' into remove-vdm


  Commit: 7aa0f04a2de99f1e460669a5c2da64fdb5bf00b6
      https://github.com/ckan/ckan/commit/7aa0f04a2de99f1e460669a5c2da64fdb5bf00b6
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-22 (Fri, 22 Mar 2019)

  Changed paths:
    R ckan/migration/versions/089_package_activity_migration_check.py
    M ckan/model/__init__.py

  Log Message:
  -----------
  Remove requirement to do migrate_package_activity before upgrade


  Commit: 02d323f358d9b7191d2b7ac2e5ff4abef0d49cec
      https://github.com/ckan/ckan/commit/02d323f358d9b7191d2b7ac2e5ff4abef0d49cec
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-22 (Fri, 22 Mar 2019)

  Changed paths:
    M ckan/migration/versions/012_add_resources.py
    M ckan/migration/versions/022_add_group_extras.py
    M ckan/migration/versions/025_add_authorization_groups.py
    M ckan/migration/versions/026_authorization_group_user_pk.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/resource.py
    M ckan/model/system_info.py
    M ckan/model/tag.py

  Log Message:
  -----------
  Remove unnecessary vdm imports


  Commit: 88d0e9f749b8ad0acab59592134c584f4916b931
      https://github.com/ckan/ckan/commit/88d0e9f749b8ad0acab59592134c584f4916b931
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-29 (Fri, 29 Mar 2019)

  Changed paths:
    M ckan/lib/dictization/__init__.py
    M ckan/migration/migrate_package_activity.py
    M ckan/migration/revision_legacy_code.py
    M ckan/model/domain_object.py
    M ckan/model/package.py
    M ckan/tests/migration/test_migrate_package_activity.py

  Log Message:
  -----------
  Get migration_package_activity and tests working, by putting revision model in revision_legacy_code.py

* Having removed the revision model (Revision, PackageRevision etc) from the core ckan code, now we add it back into ckan/migration/revision_legacy_code.py (RevisionTableMappings) so it can be used by the migration_package_activity.py and its tests. Also includes associated vdm functions:
    * make_revisioned_table
    * make_revision_table
    * make_Revision
* Fix up some tests in test_migration_package_activity associated with revision_id now being missing from domain objects.
    * migration tests have to make revisions manually now (make_revision()), because previously the revisioned tables (e.g. Package) had a mapper extension vdm.sqlalchemy.Revisioner(package_revision_table) that triggered on table changes and records a copy in the corresponding revision table (e.g. PackageRevision). HOWEVER we can't add this to the mapping for the migration test and then remove it for the rest of the CKAN tests.
* Fix up some tests following test_migration_package_activity - PackageDictizeMonkeyPatch is introduced to monkeypatch package_dictize. Previously it was being patched in test_migration_package_activity but not being put back for the following tests.
* vdm is now only required by migration_package_activity.py and its tests.


  Commit: fef756d73b33ce3c1554973fe7404f314a11339b
      https://github.com/ckan/ckan/commit/fef756d73b33ce3c1554973fe7404f314a11339b
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-29 (Fri, 29 Mar 2019)

  Changed paths:
    M ckanext/stats/tests/test_stats_lib.py

  Log Message:
  -----------
  Fix test


  Commit: b06945882f2723a95d67a76e0de19ba5a4ec5b4c
      https://github.com/ckan/ckan/commit/b06945882f2723a95d67a76e0de19ba5a4ec5b4c
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-29 (Fri, 29 Mar 2019)

  Changed paths:
    M ckan/logic/action/get.py
    M ckan/logic/auth/get.py

  Log Message:
  -----------
  Remove revision_show logic function


  Commit: 300097359db7d162919cc10d2c1df5204704a3f5
      https://github.com/ckan/ckan/commit/300097359db7d162919cc10d2c1df5204704a3f5
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-29 (Fri, 29 Mar 2019)

  Changed paths:
    M ckan/migration/revision_legacy_code.py
    M ckan/model/package.py
    M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
    M ckan/tests/legacy/models/test_extras.py
    M ckan/tests/legacy/models/test_resource.py
    M ckan/tests/migration/test_revision_legacy_code.py

  Log Message:
  -----------
  Fix tests


  Commit: a68f4a10979bcab4bda4452573dec2b85bb95e13
      https://github.com/ckan/ckan/commit/a68f4a10979bcab4bda4452573dec2b85bb95e13
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-29 (Fri, 29 Mar 2019)

  Changed paths:
    M ckan/migration/revision_legacy_code.py
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Copy in last bits of vdm that are used by the migration.


  Commit: 28cf7e3993c574359aa332f3eef9b10ccf111a08
      https://github.com/ckan/ckan/commit/28cf7e3993c574359aa332f3eef9b10ccf111a08
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-29 (Fri, 29 Mar 2019)

  Changed paths:
    M ckan/migration/migrate_package_activity.py
    M ckan/migration/revision_legacy_code.py
    M ckan/tests/migration/test_migrate_package_activity.py

  Log Message:
  -----------
  Add missing func add_fake_relation and PEP8.


  Commit: 71477baef31fc2eff0930cc39c40649976e4db0d
      https://github.com/ckan/ckan/commit/71477baef31fc2eff0930cc39c40649976e4db0d
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-03-29 (Fri, 29 Mar 2019)

  Changed paths:
    M ckan/migration/revision_legacy_code.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/migration/test_migrate_package_activity.py

  Log Message:
  -----------
  Remove stray revision tests. py3 literals. Pep8


  Commit: feec9dca063fc2bbc0577812e74563ee5eb704be
      https://github.com/ckan/ckan/commit/feec9dca063fc2bbc0577812e74563ee5eb704be
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-04-05 (Fri, 05 Apr 2019)

  Changed paths:
    M ckan/migration/revision_legacy_code.py

  Log Message:
  -----------
  Try to make package_dictize_with_revisions backwards compatible


  Commit: 82bfed013fe00804bbd8a8fad455a691b295325d
      https://github.com/ckan/ckan/commit/82bfed013fe00804bbd8a8fad455a691b295325d
  Author: Konstantin Sivakov <konstantin.sivakov at gmail.com>
  Date:   2019-05-07 (Tue, 07 May 2019)

  Changed paths:
    M ckan/cli/cli.py

  Log Message:
  -----------
  Add user commands


  Commit: 287831dcab1a5f95b3830be5b09c0096624b96e2
      https://github.com/ckan/ckan/commit/287831dcab1a5f95b3830be5b09c0096624b96e2
  Author: Konstantin Sivakov <konstantin.sivakov at gmail.com>
  Date:   2019-05-07 (Tue, 07 May 2019)

  Changed paths:
    M CHANGELOG.rst
    M ckan/authz.py
    M ckan/config/deployment.ini_tmpl
    M ckan/config/routing.py
    R ckan/controllers/revision.py
    M ckan/lib/activity_streams_session_extension.py
    M ckan/lib/app_globals.py
    M ckan/lib/base.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/helpers.py
    M ckan/lib/jinja_extensions.py
    M ckan/lib/plugins.py
    M ckan/lib/uploader.py
    M ckan/logic/action/get.py
    M ckan/logic/auth/__init__.py
    M ckan/logic/auth/get.py
    M ckan/logic/schema.py
    A ckan/migration/migrate_package_activity.py
    A ckan/migration/revision_legacy_code.py
    A ckan/migration/versions/089_package_activity_migration_check.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/resource.py
    M ckan/model/tag.py
    M ckan/pastertemplates/template/+dot+travis.yml_tmpl
    M ckan/pastertemplates/template/bin/travis-build.bash_tmpl
    M ckan/pastertemplates/template/bin/travis-run.sh_tmpl
    M ckan/pastertemplates/template/dev-requirements.txt_tmpl
    M ckan/plugins/interfaces.py
    M ckan/plugins/toolkit.py
    M ckan/public/base/css/main.css
    M ckan/public/base/less/dataset.less
    R ckan/templates-bs2/group/history.html
    R ckan/templates-bs2/group/snippets/history_revisions.html
    R ckan/templates-bs2/group/snippets/revisions_table.html
    M ckan/templates-bs2/package/base.html
    M ckan/templates-bs2/package/base_form_page.html
    R ckan/templates-bs2/package/history.html
    M ckan/templates-bs2/package/new_resource_not_draft.html
    M ckan/templates-bs2/package/read.html
    M ckan/templates-bs2/package/read_base.html
    M ckan/templates-bs2/package/resource_edit.html
    M ckan/templates-bs2/package/resource_read.html
    M ckan/templates-bs2/package/resources.html
    R ckan/templates-bs2/package/snippets/history_revisions.html
    M ckan/templates-bs2/package/snippets/info.html
    M ckan/templates-bs2/package/snippets/resource_item.html
    M ckan/templates-bs2/package/snippets/resources.html
    M ckan/templates-bs2/package/snippets/resources_list.html
    R ckan/templates-bs2/package/snippets/revisions_table.html
    M ckan/templates-bs2/package/snippets/tags.html
    R ckan/templates-bs2/revision/diff.html
    R ckan/templates-bs2/revision/list.html
    R ckan/templates-bs2/revision/read.html
    R ckan/templates-bs2/revision/read_base.html
    R ckan/templates-bs2/revision/snippets/revisions_list.html
    A ckan/templates-bs2/snippets/activities/added_tag.html
    A ckan/templates-bs2/snippets/activities/changed_group.html
    A ckan/templates-bs2/snippets/activities/changed_organization.html
    A ckan/templates-bs2/snippets/activities/changed_package.html
    A ckan/templates-bs2/snippets/activities/changed_resource.html
    A ckan/templates-bs2/snippets/activities/changed_user.html
    A ckan/templates-bs2/snippets/activities/deleted_group.html
    A ckan/templates-bs2/snippets/activities/deleted_organization.html
    A ckan/templates-bs2/snippets/activities/deleted_package.html
    A ckan/templates-bs2/snippets/activities/deleted_resource.html
    A ckan/templates-bs2/snippets/activities/fallback.html
    A ckan/templates-bs2/snippets/activities/follow_dataset.html
    A ckan/templates-bs2/snippets/activities/follow_group.html
    A ckan/templates-bs2/snippets/activities/follow_user.html
    A ckan/templates-bs2/snippets/activities/new_group.html
    A ckan/templates-bs2/snippets/activities/new_organization.html
    A ckan/templates-bs2/snippets/activities/new_package.html
    A ckan/templates-bs2/snippets/activities/new_resource.html
    A ckan/templates-bs2/snippets/activities/new_user.html
    A ckan/templates-bs2/snippets/activities/removed_tag.html
    R ckan/templates-bs2/snippets/activity_item.html
    M ckan/templates-bs2/snippets/activity_stream.html
    M ckan/templates-bs2/snippets/tag_list.html
    R ckan/templates/group/history.html
    R ckan/templates/group/snippets/history_revisions.html
    R ckan/templates/group/snippets/revisions_table.html
    M ckan/templates/macros/form.html
    M ckan/templates/package/base.html
    M ckan/templates/package/base_form_page.html
    A ckan/templates/package/changes.html
    R ckan/templates/package/history.html
    M ckan/templates/package/new_resource.html
    M ckan/templates/package/new_resource_not_draft.html
    M ckan/templates/package/read.html
    M ckan/templates/package/read_base.html
    M ckan/templates/package/resource_edit.html
    M ckan/templates/package/resource_read.html
    M ckan/templates/package/resources.html
    R ckan/templates/package/snippets/history_revisions.html
    M ckan/templates/package/snippets/info.html
    M ckan/templates/package/snippets/resource_item.html
    M ckan/templates/package/snippets/resources.html
    M ckan/templates/package/snippets/resources_list.html
    R ckan/templates/package/snippets/revisions_table.html
    M ckan/templates/package/snippets/tags.html
    R ckan/templates/revision/diff.html
    R ckan/templates/revision/list.html
    R ckan/templates/revision/read.html
    R ckan/templates/revision/read_base.html
    R ckan/templates/revision/snippets/revisions_list.html
    A ckan/templates/snippets/activities/fallback.html
    R ckan/templates/snippets/activity_item.html
    M ckan/templates/snippets/activity_stream.html
    M ckan/templates/snippets/tag_list.html
    M ckan/tests/controllers/test_package.py
    M ckan/tests/factories.py
    R ckan/tests/legacy/functional/api/model/test_revisions.py
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_pagination.py
    R ckan/tests/legacy/functional/test_revision.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/logic/test_action.py
    R ckan/tests/legacy/models/test_activity.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/auth/test_get.py
    A ckan/tests/migration/test_migrate_package_activity.py
    A ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/test_coding_standards.py
    M ckan/views/dataset.py
    M ckan/views/group.py
    M ckan/views/resource.py
    M ckan/views/user.py
    M ckanext/datapusher/tests/test.py
    M ckanext/datapusher/tests/test_interfaces.py
    M ckanext/resourceproxy/tests/test_proxy.py
    M ckanext/test_tag_vocab_plugin.py
    M contrib/docker/docker-compose.yml
    M dev-requirements.txt
    M doc/maintaining/configuration.rst
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'master' into cli-user


  Commit: c22158d3dbe775605b72175a74f9e3354cc2464a
      https://github.com/ckan/ckan/commit/c22158d3dbe775605b72175a74f9e3354cc2464a
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-05-14 (Tue, 14 May 2019)

  Changed paths:
    M .gitignore
    M .travis.yml
    M CHANGELOG.rst
    M ckan/authz.py
    M ckan/cli/cli.py
    A ckan/cli/config_tool.py
    M ckan/cli/db.py
    M ckan/cli/search_index.py
    A ckan/cli/seed.py
    A ckan/cli/translation.py
    M ckan/config/deployment.ini_tmpl
    M ckan/config/environment.py
    M ckan/config/install.py
    M ckan/config/middleware/flask_app.py
    M ckan/config/middleware/pylons_app.py
    M ckan/controllers/api.py
    M ckan/controllers/group.py
    M ckan/controllers/package.py
    M ckan/controllers/util.py
    M ckan/i18n/check_po_files.py
    M ckan/lib/app_globals.py
    M ckan/lib/captcha.py
    M ckan/lib/cli.py
    M ckan/lib/create_test_data.py
    M ckan/lib/datapreview.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/helpers.py
    M ckan/lib/mailer.py
    M ckan/lib/munge.py
    M ckan/lib/uploader.py
    M ckan/logic/__init__.py
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/get.py
    M ckan/logic/action/patch.py
    M ckan/logic/schema.py
    M ckan/logic/validators.py
    M ckan/migration/README
    M ckan/migration/__init__.py
    A ckan/migration/alembic.ini
    A ckan/migration/env.py
    R ckan/migration/manage.py
    R ckan/migration/migrate.cfg
    M ckan/migration/migrate_package_activity.py
    M ckan/migration/revision_legacy_code.py
    A ckan/migration/script.py.mako
    A ckan/migration/versions/001_103676e0a497_create_existing_tables.py
    R ckan/migration/versions/001_add_existing_tables.py
    A ckan/migration/versions/002_86fdd8c54775_add_author_and_maintainer.py
    R ckan/migration/versions/002_add_author_and_maintainer.py
    R ckan/migration/versions/003_add_user_object.py
    A ckan/migration/versions/003_f22b4f5241a5_add_user_object.py
    R ckan/migration/versions/004_add_group_object.py
    A ckan/migration/versions/004_f92ee205e46d_add_group_object.py
    A ckan/migration/versions/005_12c2232c15f5_add_authorization_tables.py
    R ckan/migration/versions/005_add_authorization_tables.py
    R ckan/migration/versions/006_add_ratings.py
    A ckan/migration/versions/006_c83955e7acb6_add_ratings.py
    A ckan/migration/versions/007_1928d4af1cda_add_system_roles.py
    R ckan/migration/versions/007_add_system_roles.py
    A ckan/migration/versions/008_e8283ffb257e_update_vdm_ids.py
    R ckan/migration/versions/008_update_vdm_ids.py
    R ckan/migration/versions/009_add_creation_timestamps.py
    A ckan/migration/versions/009_b739a48de5c4_add_creation_timestamps.py
    A ckan/migration/versions/010_a6f13bf14d0c_add_user_about.py
    R ckan/migration/versions/010_add_user_about.py
    A ckan/migration/versions/011_866f6370b4ac_add_package_search_vector.py
    R ckan/migration/versions/011_add_package_search_vector.py
    R ckan/migration/versions/012_add_resources.py
    A ckan/migration/versions/012_e5ca33a5d445_add_resources.py
    A ckan/migration/versions/013_8a3a5af39797_add_hash.py
    R ckan/migration/versions/013_add_hash.py
    A ckan/migration/versions/014_93519b684820_hash_2.py
    R ckan/migration/versions/014_hash_2.py
    A ckan/migration/versions/015_6d8ffebcaf54_remove_state_object.py
    R ckan/migration/versions/015_remove_state_object.py
    A ckan/migration/versions/016_37ada738328e_uuids_everywhere.py
    R ckan/migration/versions/016_uuids_everywhere.py
    A ckan/migration/versions/017_1250b2ff3e36_add_pkg_relationships.py
    R ckan/migration/versions/017_add_pkg_relationships.py
    A ckan/migration/versions/018_05a0778051ca_adjust_licenses.py
    R ckan/migration/versions/018_adjust_licenses.py
    A ckan/migration/versions/019_b2eb6f34a638_pkg_relationships_state.py
    R ckan/migration/versions/019_pkg_relationships_state.py
    A ckan/migration/versions/020_69a0b0efc609_add_changeset.py
    R ckan/migration/versions/020_add_changeset.py
    A ckan/migration/versions/021_765143af2ba3_postgresql_upgrade_sql.py
    R ckan/migration/versions/021_postgres_downgrade.sql
    R ckan/migration/versions/021_postgres_upgrade.sql
    R ckan/migration/versions/021_postgresql_downgrade.sql
    R ckan/migration/versions/021_postgresql_upgrade.sql
    A ckan/migration/versions/022_7b324ca6c0dc_add_group_extras.py
    R ckan/migration/versions/022_add_group_extras.py
    A ckan/migration/versions/023_87fdd05f0744_add_harvesting.py
    R ckan/migration/versions/023_add_harvesting.py
    A ckan/migration/versions/024_12981fe12484_add_harvested_document.py
    R ckan/migration/versions/024_add_harvested_document.py
    R ckan/migration/versions/025_add_authorization_groups.py
    A ckan/migration/versions/025_b581622ad327_add_authorization_groups.py
    A ckan/migration/versions/026_3615b25af443_authorization_group_user_pk.py
    R ckan/migration/versions/026_authorization_group_user_pk.py
    A ckan/migration/versions/027_11e5745c6fc9_adjust_harvester.py
    R ckan/migration/versions/027_adjust_harvester.py
    A ckan/migration/versions/028_cdd68fe9ba21_drop_harvest_source_status.py
    R ckan/migration/versions/028_drop_harvest_source_status.py
    A ckan/migration/versions/029_1bfdf4240915_version_groups.py
    R ckan/migration/versions/029_version_groups.py
    R ckan/migration/versions/030_additional_user_attributes.py
    A ckan/migration/versions/030_b16cbf164c8a_additional_user_attributes.py
    A ckan/migration/versions/031_1b05245167d6_move_openid_to_new_field.py
    R ckan/migration/versions/031_move_openid_to_new_field.py
    R ckan/migration/versions/032_add_extra_info_field_to_resources.py
    A ckan/migration/versions/032_d89e0731422d_add_extra_info_field_to_resources.py
    A ckan/migration/versions/033_6da92ef2df15_auth_group_user_id_add_conditional.py
    R ckan/migration/versions/033_auth_group_user_id_add_conditional.py
    A ckan/migration/versions/034_6c600693af5b_resource_group_table.py
    R ckan/migration/versions/034_resource_group_table.py
    A ckan/migration/versions/035_81148ccebd6c_harvesting_doc_versioning.py
    R ckan/migration/versions/035_harvesting_doc_versioning.py
    A ckan/migration/versions/036_ecaa8b38782f_lockdown_roles.py
    R ckan/migration/versions/036_lockdown_roles.py
    A ckan/migration/versions/037_edcf3b8c3c1b_role_anon_editor.py
    R ckan/migration/versions/037_role_anon_editor.py
    R ckan/migration/versions/038_delete_migration_tables.py
    A ckan/migration/versions/038_fd6622e3d964_delete_migration_tables.py
    R ckan/migration/versions/039_add_expired_id_and_dates.py
    A ckan/migration/versions/039_cca459c76d45_add_expired_id_and_dates.py
    A ckan/migration/versions/040_500a08f4818e_reset_key_on_user.py
    R ckan/migration/versions/040_reset_key_on_user.py
    A ckan/migration/versions/041_6817d4e3bdc3_resource_new_fields.py
    R ckan/migration/versions/041_resource_new_fields.py
    A ckan/migration/versions/042_da65e2877034_user_revision_indexes.py
    R ckan/migration/versions/042_user_revision_indexes.py
    A ckan/migration/versions/043_bd38cd6502b2_drop_postgres_search.py
    R ckan/migration/versions/043_drop_postgres_search.py
    A ckan/migration/versions/044_4190eeeb8d73_add_task_status.py
    R ckan/migration/versions/044_add_task_status.py
    A ckan/migration/versions/045_54e3f155d945_user_name_unique.py
    R ckan/migration/versions/045_user_name_unique.py
    A ckan/migration/versions/046_b69e9b80396f_drop_changesets.py
    R ckan/migration/versions/046_drop_changesets.py
    A ckan/migration/versions/047_883a7c406926_rename_package_group_member.py
    R ckan/migration/versions/047_rename_package_group_member.py
    A ckan/migration/versions/048_4a7011172b3f_add_activity_streams_tables.py
    R ckan/migration/versions/048_add_activity_streams_tables.py
    R ckan/migration/versions/049_add_group_approval_status.py
    A ckan/migration/versions/049_e0c06c2177b5_add_group_approval_status.py
    A ckan/migration/versions/050_01a6b058cb7f_term_translation_table.py
    R ckan/migration/versions/050_term_translation_table.py
    A ckan/migration/versions/051_a4fb0d85ced6_add_tag_vocabulary.py
    R ckan/migration/versions/051_add_tag_vocabulary.py
    A ckan/migration/versions/052_ba693d64c6d7_update_member_capacities.py
    R ckan/migration/versions/052_update_member_capacities.py
    A ckan/migration/versions/053_9d051a099097_add_group_logo.py
    R ckan/migration/versions/053_add_group_logo.py
    R ckan/migration/versions/054_add_resource_created_date.py
    A ckan/migration/versions/054_da21b38da4db_add_resource_created_date.py
    A ckan/migration/versions/055_048f7db947bf_update_user_and_activity_detail.py
    R ckan/migration/versions/055_update_user_and_activity_detail.py
    A ckan/migration/versions/056_11af3215ae89_add_related_table.py
    R ckan/migration/versions/056_add_related_table.py
    A ckan/migration/versions/057_660a5aae527e_tracking.py
    R ckan/migration/versions/057_tracking.py
    R ckan/migration/versions/058_add_follower_tables.py
    A ckan/migration/versions/058_bd36d1826a5d_add_follower_tables.py
    A ckan/migration/versions/059_9291bb46f352_add_related_count_and_flag.py
    R ckan/migration/versions/059_add_related_count_and_flag.py
    A ckan/migration/versions/060_31ad11c518fc_add_system_info_table.py
    R ckan/migration/versions/060_add_system_info_table.py
    A ckan/migration/versions/061_338d460bc460_add_follower_group_table.py
    R ckan/migration/versions/061_add_follower__group_table.py
    A ckan/migration/versions/062_6deb2bbab394_add_dashboard_table.py
    R ckan/migration/versions/062_add_dashboard_table.py
    A ckan/migration/versions/063_8b633852cb7a_org_changes.py
    R ckan/migration/versions/063_org_changes.py
    A ckan/migration/versions/064_4f8becd4919a_add_email_last_sent_column.py
    R ckan/migration/versions/064_add_email_last_sent_column.py
    A ckan/migration/versions/065_1fab0bc6439e_add_email_notifications_preference.py
    R ckan/migration/versions/065_add_email_notifications_preference.py
    A ckan/migration/versions/066_ad16b3bd8cb6_default_package_type.py
    R ckan/migration/versions/066_default_package_type.py
    A ckan/migration/versions/067_266c110eafec_turn_extras_to_strings.py
    R ckan/migration/versions/067_turn_extras_to_strings.py
    R ckan/migration/versions/068_add_package_extras_index.py
    A ckan/migration/versions/068_e33a5f2b2a84_add_package_extras_index.py
    A ckan/migration/versions/069_e7524c675cdb_resource_url_and_metadata_modified.py
    R ckan/migration/versions/069_resource_url_and_metadata_modified.py
    R ckan/migration/versions/070_add_activity_and_resource_indexes.py
    A ckan/migration/versions/070_cfb544112fa7_add_activity_and_resource_indexes.py
    R ckan/migration/versions/071_add_state_column_to_user_table.py
    A ckan/migration/versions/071_c16f081ef73a_add_state_column_to_user_table.py
    A ckan/migration/versions/072_08dcb9233ad7_add_resource_view.py
    R ckan/migration/versions/072_add_resource_view.py
    A ckan/migration/versions/073_011f51208be3_update_resource_view_resource_id_.py
    R ckan/migration/versions/073_update_resource_view_resource_id_constraint.py
    A ckan/migration/versions/074_a4ca55f0f45e_remove_resource_groups.py
    R ckan/migration/versions/074_remove_resource_groups.py
    A ckan/migration/versions/075_9cdc88c8896a_rename_view_plugins.py
    R ckan/migration/versions/075_rename_view_plugins.py
    A ckan/migration/versions/076_59995aa965c0_rename_view_plugins_2.py
    R ckan/migration/versions/076_rename_view_plugins_2.py
    A ckan/migration/versions/077_51171a04d86d_add_revisions_to_system_info.py
    R ckan/migration/versions/077_add_revisions_to_system_info.py
    A ckan/migration/versions/078_ae821876532a_remove_old_authz_model.py
    R ckan/migration/versions/078_remove_old_authz_model.py
    A ckan/migration/versions/079_e0177a15d2c9_resource_revision_index.py
    R ckan/migration/versions/079_resource_revision_index.py
    A ckan/migration/versions/080_8224d872c64f_continuity_id_indexes.py
    R ckan/migration/versions/080_continuity_id_indexes.py
    A ckan/migration/versions/081_a64cf4a79182_set_datastore_active.py
    R ckan/migration/versions/081_set_datastore_active.py
    A ckan/migration/versions/082_8ea886d0ede4_create_index_creator_user_id.py
    R ckan/migration/versions/082_create_index_creator_user_id.py
    A ckan/migration/versions/083_f98d8fa2a7f7_remove_related_items.py
    R ckan/migration/versions/083_remove_related_items.py
    R ckan/migration/versions/084_add_metadata_created.py
    A ckan/migration/versions/084_d85ce5783688_add_metadata_created.py
    R ckan/migration/versions/085_adjust_activity_timestamps.py
    A ckan/migration/versions/085_f9bf3d5c4b4d_adjust_activity_timestamps.py
    A ckan/migration/versions/086_19663581b3bb_drop_openid_column.py
    R ckan/migration/versions/086_drop_openid_column.py
    A ckan/migration/versions/087_ff1b303cab77_remove_old_authorization_tables.py
    R ckan/migration/versions/087_remove_old_authorization_tables.py
    A ckan/migration/versions/088_3537d5420e0e_delete_extrase_which_are_deleted_state.py
    R ckan/migration/versions/088_delete_extras_which_are_deleted_state.py
    A ckan/migration/versions/089_23c92480926e_package_activity_migration_check.py
    A ckan/migration/versions/090_980dcd44de4b_delete_migrate_version_table.py
    R ckan/migration/versions/__init__.py
    M ckan/model/__init__.py
    M ckan/model/license.py
    A ckan/model/revision.py
    M ckan/model/tag.py
    M ckan/pastertemplates/template/+dot+travis.yml_tmpl
    M ckan/pastertemplates/template/bin/travis-build.bash_tmpl
    M ckan/pastertemplates/template/bin/travis-run.sh_tmpl
    M ckan/pastertemplates/template/dev-requirements.txt_tmpl
    M ckan/plugins/toolkit.py
    R ckan/public-bs2/base/css/.gitignore
    R ckan/public-bs2/base/css/fuchsia.css
    R ckan/public-bs2/base/css/green.css
    R ckan/public-bs2/base/css/main.css
    R ckan/public-bs2/base/css/maroon.css
    R ckan/public-bs2/base/css/red.css
    R ckan/public-bs2/base/i18n/.gitignore
    R ckan/public-bs2/base/images/background-tag-ie7.png
    R ckan/public-bs2/base/images/background-tag.png
    R ckan/public-bs2/base/images/background-tile.png
    R ckan/public-bs2/base/images/bg.png
    R ckan/public-bs2/base/images/breadcrumb-slash-ie7.png
    R ckan/public-bs2/base/images/ckan-logo-footer.png
    R ckan/public-bs2/base/images/ckan-logo-white.svg
    R ckan/public-bs2/base/images/ckan-logo.png
    R ckan/public-bs2/base/images/ckan-logo.svg
    R ckan/public-bs2/base/images/ckan.ico
    R ckan/public-bs2/base/images/dashboard-followee-related.png
    R ckan/public-bs2/base/images/dotted.png
    R ckan/public-bs2/base/images/editing.png
    R ckan/public-bs2/base/images/full-width-nav-right.png
    R ckan/public-bs2/base/images/icon-search-27x26.png
    R ckan/public-bs2/base/images/loading-spinner.gif
    R ckan/public-bs2/base/images/nav-active.png
    R ckan/public-bs2/base/images/nav.png
    R ckan/public-bs2/base/images/od_80x15_blue.png
    R ckan/public-bs2/base/images/placeholder-200x125.png
    R ckan/public-bs2/base/images/placeholder-420x220.png
    R ckan/public-bs2/base/images/placeholder-680x400.png
    R ckan/public-bs2/base/images/placeholder-application.png
    R ckan/public-bs2/base/images/placeholder-group.png
    R ckan/public-bs2/base/images/placeholder-image.png
    R ckan/public-bs2/base/images/placeholder-organization.png
    R ckan/public-bs2/base/images/sprite-ckan-icons.png
    R ckan/public-bs2/base/images/sprite-resource-icons.png
    R ckan/public-bs2/base/images/table-seperator.png
    R ckan/public-bs2/base/javascript/client.js
    R ckan/public-bs2/base/javascript/i18n.js
    R ckan/public-bs2/base/javascript/main.js
    R ckan/public-bs2/base/javascript/module.js
    R ckan/public-bs2/base/javascript/modules/activity-stream.js
    R ckan/public-bs2/base/javascript/modules/api-info.js
    R ckan/public-bs2/base/javascript/modules/autocomplete.js
    R ckan/public-bs2/base/javascript/modules/basic-form.js
    R ckan/public-bs2/base/javascript/modules/confirm-action.js
    R ckan/public-bs2/base/javascript/modules/custom-fields.js
    R ckan/public-bs2/base/javascript/modules/dashboard.js
    R ckan/public-bs2/base/javascript/modules/data-viewer.js
    R ckan/public-bs2/base/javascript/modules/dataset-visibility.js
    R ckan/public-bs2/base/javascript/modules/follow.js
    R ckan/public-bs2/base/javascript/modules/followers-counter.js
    R ckan/public-bs2/base/javascript/modules/image-upload.js
    R ckan/public-bs2/base/javascript/modules/media-grid.js
    R ckan/public-bs2/base/javascript/modules/popover-context.js
    R ckan/public-bs2/base/javascript/modules/resource-form.js
    R ckan/public-bs2/base/javascript/modules/resource-reorder.js
    R ckan/public-bs2/base/javascript/modules/resource-upload-field.js
    R ckan/public-bs2/base/javascript/modules/resource-view-embed.js
    R ckan/public-bs2/base/javascript/modules/resource-view-filters-form.js
    R ckan/public-bs2/base/javascript/modules/resource-view-filters.js
    R ckan/public-bs2/base/javascript/modules/resource-view-reorder.js
    R ckan/public-bs2/base/javascript/modules/select-switch.js
    R ckan/public-bs2/base/javascript/modules/slug-preview.js
    R ckan/public-bs2/base/javascript/modules/table-selectable-rows.js
    R ckan/public-bs2/base/javascript/modules/table-toggle-more.js
    R ckan/public-bs2/base/javascript/notify.js
    R ckan/public-bs2/base/javascript/plugins/jquery.date-helpers.js
    R ckan/public-bs2/base/javascript/plugins/jquery.form-warning.js
    R ckan/public-bs2/base/javascript/plugins/jquery.images-loaded.js
    R ckan/public-bs2/base/javascript/plugins/jquery.inherit.js
    R ckan/public-bs2/base/javascript/plugins/jquery.masonry.js
    R ckan/public-bs2/base/javascript/plugins/jquery.proxy-all.js
    R ckan/public-bs2/base/javascript/plugins/jquery.slug-preview.js
    R ckan/public-bs2/base/javascript/plugins/jquery.slug.js
    R ckan/public-bs2/base/javascript/plugins/jquery.truncator.js
    R ckan/public-bs2/base/javascript/plugins/jquery.url-helpers.js
    R ckan/public-bs2/base/javascript/pubsub.js
    R ckan/public-bs2/base/javascript/resource.config
    R ckan/public-bs2/base/javascript/sandbox.js
    R ckan/public-bs2/base/javascript/tracking.js
    R ckan/public-bs2/base/javascript/view-filters.js
    R ckan/public-bs2/base/less/activity.less
    R ckan/public-bs2/base/less/ckan.less
    R ckan/public-bs2/base/less/custom.less
    R ckan/public-bs2/base/less/dashboard.less
    R ckan/public-bs2/base/less/datapusher.less
    R ckan/public-bs2/base/less/dataset.less
    R ckan/public-bs2/base/less/dropdown.less
    R ckan/public-bs2/base/less/footer.less
    R ckan/public-bs2/base/less/forms.less
    R ckan/public-bs2/base/less/group.less
    R ckan/public-bs2/base/less/homepage.less
    R ckan/public-bs2/base/less/icons.less
    R ckan/public-bs2/base/less/iehacks.less
    R ckan/public-bs2/base/less/layout.less
    R ckan/public-bs2/base/less/main.less
    R ckan/public-bs2/base/less/masthead.less
    R ckan/public-bs2/base/less/media.less
    R ckan/public-bs2/base/less/mixins.less
    R ckan/public-bs2/base/less/module.less
    R ckan/public-bs2/base/less/nav.less
    R ckan/public-bs2/base/less/profile.less
    R ckan/public-bs2/base/less/prose.less
    R ckan/public-bs2/base/less/resource-view.less
    R ckan/public-bs2/base/less/search.less
    R ckan/public-bs2/base/less/tables.less
    R ckan/public-bs2/base/less/toolbar.less
    R ckan/public-bs2/base/less/variables.less
    R ckan/public-bs2/base/test/index.html
    R ckan/public-bs2/base/test/primer/index.html
    R ckan/public-bs2/base/test/spec/ckan.spec.js
    R ckan/public-bs2/base/test/spec/client.spec.js
    R ckan/public-bs2/base/test/spec/i18n.spec.js
    R ckan/public-bs2/base/test/spec/module.spec.js
    R ckan/public-bs2/base/test/spec/modules/autocomplete.spec.js
    R ckan/public-bs2/base/test/spec/modules/basic-form.spec.js
    R ckan/public-bs2/base/test/spec/modules/confirm-action.spec.js
    R ckan/public-bs2/base/test/spec/modules/custom-fields.spec.js
    R ckan/public-bs2/base/test/spec/modules/followers-counter.spec.js
    R ckan/public-bs2/base/test/spec/modules/image-upload.spec.js
    R ckan/public-bs2/base/test/spec/modules/resource-form.spec.js
    R ckan/public-bs2/base/test/spec/modules/resource-upload-field.spec.js
    R ckan/public-bs2/base/test/spec/notify.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.date-helpers.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.form-warning.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.inherit.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.proxy-all.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.slug-preview.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.slug.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.url-helpers.spec.js
    R ckan/public-bs2/base/test/spec/pubsub.spec.js
    R ckan/public-bs2/base/test/spec/sandbox.spec.js
    R ckan/public-bs2/base/test/spec/view-filters.spec.js
    R ckan/public-bs2/base/test/vendor/chai.js
    R ckan/public-bs2/base/test/vendor/less.js
    R ckan/public-bs2/base/test/vendor/mocha.css
    R ckan/public-bs2/base/test/vendor/mocha.js
    R ckan/public-bs2/base/test/vendor/sinon.js
    R ckan/public-bs2/base/vendor/bootstrap.js
    R ckan/public-bs2/base/vendor/bootstrap.min.js
    R ckan/public-bs2/base/vendor/bootstrap/img/glyphicons-halflings-white.png
    R ckan/public-bs2/base/vendor/bootstrap/img/glyphicons-halflings.png
    R ckan/public-bs2/base/vendor/bootstrap/js/bootstrap.js
    R ckan/public-bs2/base/vendor/bootstrap/js/bootstrap.min.js
    R ckan/public-bs2/base/vendor/bootstrap/less/accordion.less
    R ckan/public-bs2/base/vendor/bootstrap/less/alerts.less
    R ckan/public-bs2/base/vendor/bootstrap/less/bootstrap.less
    R ckan/public-bs2/base/vendor/bootstrap/less/breadcrumbs.less
    R ckan/public-bs2/base/vendor/bootstrap/less/button-groups.less
    R ckan/public-bs2/base/vendor/bootstrap/less/buttons.less
    R ckan/public-bs2/base/vendor/bootstrap/less/carousel.less
    R ckan/public-bs2/base/vendor/bootstrap/less/close.less
    R ckan/public-bs2/base/vendor/bootstrap/less/code.less
    R ckan/public-bs2/base/vendor/bootstrap/less/component-animations.less
    R ckan/public-bs2/base/vendor/bootstrap/less/dropdowns.less
    R ckan/public-bs2/base/vendor/bootstrap/less/forms.less
    R ckan/public-bs2/base/vendor/bootstrap/less/grid.less
    R ckan/public-bs2/base/vendor/bootstrap/less/hero-unit.less
    R ckan/public-bs2/base/vendor/bootstrap/less/labels-badges.less
    R ckan/public-bs2/base/vendor/bootstrap/less/layouts.less
    R ckan/public-bs2/base/vendor/bootstrap/less/media.less
    R ckan/public-bs2/base/vendor/bootstrap/less/mixins.less
    R ckan/public-bs2/base/vendor/bootstrap/less/modals.less
    R ckan/public-bs2/base/vendor/bootstrap/less/navbar.less
    R ckan/public-bs2/base/vendor/bootstrap/less/navs.less
    R ckan/public-bs2/base/vendor/bootstrap/less/pager.less
    R ckan/public-bs2/base/vendor/bootstrap/less/pagination.less
    R ckan/public-bs2/base/vendor/bootstrap/less/popovers.less
    R ckan/public-bs2/base/vendor/bootstrap/less/progress-bars.less
    R ckan/public-bs2/base/vendor/bootstrap/less/reset.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-1200px-min.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-767px-max.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-768px-979px.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-navbar.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-utilities.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive.less
    R ckan/public-bs2/base/vendor/bootstrap/less/scaffolding.less
    R ckan/public-bs2/base/vendor/bootstrap/less/sprites.less
    R ckan/public-bs2/base/vendor/bootstrap/less/tables.less
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/buttons.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/css-tests.css
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/css-tests.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/forms-responsive.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/forms.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/navbar-fixed-top.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/navbar-static-top.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/navbar.html
    R ckan/public-bs2/base/vendor/bootstrap/less/thumbnails.less
    R ckan/public-bs2/base/vendor/bootstrap/less/tooltip.less
    R ckan/public-bs2/base/vendor/bootstrap/less/type.less
    R ckan/public-bs2/base/vendor/bootstrap/less/utilities.less
    R ckan/public-bs2/base/vendor/bootstrap/less/variables.less
    R ckan/public-bs2/base/vendor/bootstrap/less/wells.less
    R ckan/public-bs2/base/vendor/font-awesome/css/font-awesome.css
    R ckan/public-bs2/base/vendor/font-awesome/css/font-awesome.min.css
    R ckan/public-bs2/base/vendor/font-awesome/fonts/FontAwesome.otf
    R ckan/public-bs2/base/vendor/font-awesome/fonts/fontawesome-webfont.eot
    R ckan/public-bs2/base/vendor/font-awesome/fonts/fontawesome-webfont.svg
    R ckan/public-bs2/base/vendor/font-awesome/fonts/fontawesome-webfont.ttf
    R ckan/public-bs2/base/vendor/font-awesome/fonts/fontawesome-webfont.woff
    R ckan/public-bs2/base/vendor/font-awesome/less/bordered-pulled.less
    R ckan/public-bs2/base/vendor/font-awesome/less/core.less
    R ckan/public-bs2/base/vendor/font-awesome/less/extras.less
    R ckan/public-bs2/base/vendor/font-awesome/less/fixed-width.less
    R ckan/public-bs2/base/vendor/font-awesome/less/font-awesome.less
    R ckan/public-bs2/base/vendor/font-awesome/less/icons.less
    R ckan/public-bs2/base/vendor/font-awesome/less/larger.less
    R ckan/public-bs2/base/vendor/font-awesome/less/list.less
    R ckan/public-bs2/base/vendor/font-awesome/less/mixins.less
    R ckan/public-bs2/base/vendor/font-awesome/less/path.less
    R ckan/public-bs2/base/vendor/font-awesome/less/rotated-flipped.less
    R ckan/public-bs2/base/vendor/font-awesome/less/spinning.less
    R ckan/public-bs2/base/vendor/font-awesome/less/stacked.less
    R ckan/public-bs2/base/vendor/font-awesome/less/variables.less
    R ckan/public-bs2/base/vendor/html5.js
    R ckan/public-bs2/base/vendor/html5.min.js
    R ckan/public-bs2/base/vendor/jed.js
    R ckan/public-bs2/base/vendor/jed.min.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.fileupload-ui.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.fileupload-ui.min.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.fileupload.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.fileupload.min.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.iframe-transport.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.iframe-transport.min.js
    R ckan/public-bs2/base/vendor/jquery.js
    R ckan/public-bs2/base/vendor/jquery.min.js
    R ckan/public-bs2/base/vendor/jquery.ui.core.js
    R ckan/public-bs2/base/vendor/jquery.ui.mouse.js
    R ckan/public-bs2/base/vendor/jquery.ui.sortable.js
    R ckan/public-bs2/base/vendor/jquery.ui.widget.js
    R ckan/public-bs2/base/vendor/moment-with-locales.js
    R ckan/public-bs2/base/vendor/polyfill-object-keys.js
    R ckan/public-bs2/base/vendor/resource.config
    R ckan/public-bs2/base/vendor/select2/.gitignore
    R ckan/public-bs2/base/vendor/select2/CONTRIBUTING.md
    R ckan/public-bs2/base/vendor/select2/LICENSE
    R ckan/public-bs2/base/vendor/select2/README.md
    R ckan/public-bs2/base/vendor/select2/bower.json
    R ckan/public-bs2/base/vendor/select2/component.json
    R ckan/public-bs2/base/vendor/select2/composer.json
    R ckan/public-bs2/base/vendor/select2/package.json
    R ckan/public-bs2/base/vendor/select2/release.sh
    R ckan/public-bs2/base/vendor/select2/select2-bootstrap.css
    R ckan/public-bs2/base/vendor/select2/select2-spinner.gif
    R ckan/public-bs2/base/vendor/select2/select2.css
    R ckan/public-bs2/base/vendor/select2/select2.jquery.json
    R ckan/public-bs2/base/vendor/select2/select2.js
    R ckan/public-bs2/base/vendor/select2/select2.min.js
    R ckan/public-bs2/base/vendor/select2/select2.png
    R ckan/public-bs2/base/vendor/select2/select2_locale_ar.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_az.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_bg.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ca.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_cs.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_da.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_de.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_el.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_en.js.template
    R ckan/public-bs2/base/vendor/select2/select2_locale_es.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_et.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_eu.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_fa.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_fi.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_fr.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_gl.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_he.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_hr.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_hu.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_id.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_is.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_it.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ja.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ka.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ko.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_lt.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_lv.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_mk.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ms.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_nb.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_nl.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_pl.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_pt-BR.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_pt-PT.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ro.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_rs.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ru.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_sk.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_sv.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_th.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_tr.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ug-CN.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_uk.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_vi.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_zh-CN.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_zh-TW.js
    R ckan/public-bs2/base/vendor/select2/select2x2.png
    R ckan/templates-bs2/activity_streams/activity_stream_email_notifications.text
    R ckan/templates-bs2/activity_streams/activity_stream_items.html
    R ckan/templates-bs2/admin/base.html
    R ckan/templates-bs2/admin/config.html
    R ckan/templates-bs2/admin/confirm_reset.html
    R ckan/templates-bs2/admin/index.html
    R ckan/templates-bs2/ajax_snippets/custom_fields.html
    R ckan/templates-bs2/ajax_snippets/follow_button.html
    R ckan/templates-bs2/base.html
    R ckan/templates-bs2/dataviewer/base.html
    R ckan/templates-bs2/dataviewer/snippets/data_preview.html
    R ckan/templates-bs2/dataviewer/snippets/no_preview.html
    R ckan/templates-bs2/development/primer.html
    R ckan/templates-bs2/development/snippets/actions.html
    R ckan/templates-bs2/development/snippets/breadcrumb.html
    R ckan/templates-bs2/development/snippets/context.html
    R ckan/templates-bs2/development/snippets/facet.html
    R ckan/templates-bs2/development/snippets/form.html
    R ckan/templates-bs2/development/snippets/form_stages.html
    R ckan/templates-bs2/development/snippets/list.html
    R ckan/templates-bs2/development/snippets/media_grid.html
    R ckan/templates-bs2/development/snippets/module.html
    R ckan/templates-bs2/development/snippets/nav.html
    R ckan/templates-bs2/development/snippets/page_header.html
    R ckan/templates-bs2/development/snippets/pagination.html
    R ckan/templates-bs2/development/snippets/simple-input.html
    R ckan/templates-bs2/emails/invite_user.txt
    R ckan/templates-bs2/emails/invite_user_subject.txt
    R ckan/templates-bs2/emails/reset_password.txt
    R ckan/templates-bs2/emails/reset_password_subject.txt
    R ckan/templates-bs2/error_document_template.html
    R ckan/templates-bs2/footer.html
    R ckan/templates-bs2/group/about.html
    R ckan/templates-bs2/group/activity_stream.html
    R ckan/templates-bs2/group/admins.html
    R ckan/templates-bs2/group/base_form_page.html
    R ckan/templates-bs2/group/confirm_delete.html
    R ckan/templates-bs2/group/confirm_delete_member.html
    R ckan/templates-bs2/group/edit.html
    R ckan/templates-bs2/group/edit_base.html
    R ckan/templates-bs2/group/followers.html
    R ckan/templates-bs2/group/index.html
    R ckan/templates-bs2/group/member_new.html
    R ckan/templates-bs2/group/members.html
    R ckan/templates-bs2/group/new.html
    R ckan/templates-bs2/group/new_group_form.html
    R ckan/templates-bs2/group/read.html
    R ckan/templates-bs2/group/read_base.html
    R ckan/templates-bs2/group/snippets/feeds.html
    R ckan/templates-bs2/group/snippets/group_form.html
    R ckan/templates-bs2/group/snippets/group_item.html
    R ckan/templates-bs2/group/snippets/group_list.html
    R ckan/templates-bs2/group/snippets/helper.html
    R ckan/templates-bs2/group/snippets/info.html
    R ckan/templates-bs2/header.html
    R ckan/templates-bs2/home/about.html
    R ckan/templates-bs2/home/index.html
    R ckan/templates-bs2/home/layout1.html
    R ckan/templates-bs2/home/layout2.html
    R ckan/templates-bs2/home/layout3.html
    R ckan/templates-bs2/home/snippets/about_text.html
    R ckan/templates-bs2/home/snippets/featured_group.html
    R ckan/templates-bs2/home/snippets/featured_organization.html
    R ckan/templates-bs2/home/snippets/promoted.html
    R ckan/templates-bs2/home/snippets/search.html
    R ckan/templates-bs2/home/snippets/stats.html
    R ckan/templates-bs2/macros/autoform.html
    R ckan/templates-bs2/macros/form.html
    R ckan/templates-bs2/organization/about.html
    R ckan/templates-bs2/organization/activity_stream.html
    R ckan/templates-bs2/organization/admins.html
    R ckan/templates-bs2/organization/base_form_page.html
    R ckan/templates-bs2/organization/bulk_process.html
    R ckan/templates-bs2/organization/confirm_delete.html
    R ckan/templates-bs2/organization/confirm_delete_member.html
    R ckan/templates-bs2/organization/edit.html
    R ckan/templates-bs2/organization/edit_base.html
    R ckan/templates-bs2/organization/index.html
    R ckan/templates-bs2/organization/member_new.html
    R ckan/templates-bs2/organization/members.html
    R ckan/templates-bs2/organization/new.html
    R ckan/templates-bs2/organization/new_organization_form.html
    R ckan/templates-bs2/organization/read.html
    R ckan/templates-bs2/organization/read_base.html
    R ckan/templates-bs2/organization/snippets/feeds.html
    R ckan/templates-bs2/organization/snippets/help.html
    R ckan/templates-bs2/organization/snippets/helper.html
    R ckan/templates-bs2/organization/snippets/info.html
    R ckan/templates-bs2/organization/snippets/organization_form.html
    R ckan/templates-bs2/organization/snippets/organization_item.html
    R ckan/templates-bs2/organization/snippets/organization_list.html
    R ckan/templates-bs2/package/activity.html
    R ckan/templates-bs2/package/base.html
    R ckan/templates-bs2/package/base_form_page.html
    R ckan/templates-bs2/package/confirm_delete.html
    R ckan/templates-bs2/package/confirm_delete_resource.html
    R ckan/templates-bs2/package/edit.html
    R ckan/templates-bs2/package/edit_base.html
    R ckan/templates-bs2/package/edit_view.html
    R ckan/templates-bs2/package/followers.html
    R ckan/templates-bs2/package/group_list.html
    R ckan/templates-bs2/package/new.html
    R ckan/templates-bs2/package/new_package_form.html
    R ckan/templates-bs2/package/new_resource.html
    R ckan/templates-bs2/package/new_resource_not_draft.html
    R ckan/templates-bs2/package/new_view.html
    R ckan/templates-bs2/package/read.html
    R ckan/templates-bs2/package/read_base.html
    R ckan/templates-bs2/package/resource_edit.html
    R ckan/templates-bs2/package/resource_edit_base.html
    R ckan/templates-bs2/package/resource_read.html
    R ckan/templates-bs2/package/resource_views.html
    R ckan/templates-bs2/package/resources.html
    R ckan/templates-bs2/package/search.html
    R ckan/templates-bs2/package/snippets/additional_info.html
    R ckan/templates-bs2/package/snippets/cannot_create_package.html
    R ckan/templates-bs2/package/snippets/info.html
    R ckan/templates-bs2/package/snippets/new_package_breadcrumb.html
    R ckan/templates-bs2/package/snippets/package_basic_fields.html
    R ckan/templates-bs2/package/snippets/package_form.html
    R ckan/templates-bs2/package/snippets/package_metadata_fields.html
    R ckan/templates-bs2/package/snippets/resource_edit_form.html
    R ckan/templates-bs2/package/snippets/resource_form.html
    R ckan/templates-bs2/package/snippets/resource_help.html
    R ckan/templates-bs2/package/snippets/resource_info.html
    R ckan/templates-bs2/package/snippets/resource_item.html
    R ckan/templates-bs2/package/snippets/resource_view.html
    R ckan/templates-bs2/package/snippets/resource_view_embed.html
    R ckan/templates-bs2/package/snippets/resource_view_filters.html
    R ckan/templates-bs2/package/snippets/resource_views_list.html
    R ckan/templates-bs2/package/snippets/resource_views_list_item.html
    R ckan/templates-bs2/package/snippets/resources.html
    R ckan/templates-bs2/package/snippets/resources_list.html
    R ckan/templates-bs2/package/snippets/stages.html
    R ckan/templates-bs2/package/snippets/tags.html
    R ckan/templates-bs2/package/snippets/view_form.html
    R ckan/templates-bs2/package/snippets/view_form_filters.html
    R ckan/templates-bs2/package/snippets/view_help.html
    R ckan/templates-bs2/package/view_edit_base.html
    R ckan/templates-bs2/page.html
    R ckan/templates-bs2/revision/__init__.py
    R ckan/templates-bs2/robots.txt
    R ckan/templates-bs2/snippets/activities/added_tag.html
    R ckan/templates-bs2/snippets/activities/changed_group.html
    R ckan/templates-bs2/snippets/activities/changed_organization.html
    R ckan/templates-bs2/snippets/activities/changed_package.html
    R ckan/templates-bs2/snippets/activities/changed_resource.html
    R ckan/templates-bs2/snippets/activities/changed_user.html
    R ckan/templates-bs2/snippets/activities/deleted_group.html
    R ckan/templates-bs2/snippets/activities/deleted_organization.html
    R ckan/templates-bs2/snippets/activities/deleted_package.html
    R ckan/templates-bs2/snippets/activities/deleted_resource.html
    R ckan/templates-bs2/snippets/activities/fallback.html
    R ckan/templates-bs2/snippets/activities/follow_dataset.html
    R ckan/templates-bs2/snippets/activities/follow_group.html
    R ckan/templates-bs2/snippets/activities/follow_user.html
    R ckan/templates-bs2/snippets/activities/new_group.html
    R ckan/templates-bs2/snippets/activities/new_organization.html
    R ckan/templates-bs2/snippets/activities/new_package.html
    R ckan/templates-bs2/snippets/activities/new_resource.html
    R ckan/templates-bs2/snippets/activities/new_user.html
    R ckan/templates-bs2/snippets/activities/removed_tag.html
    R ckan/templates-bs2/snippets/activity_stream.html
    R ckan/templates-bs2/snippets/additional_info.html
    R ckan/templates-bs2/snippets/context.html
    R ckan/templates-bs2/snippets/context/dataset.html
    R ckan/templates-bs2/snippets/context/group.html
    R ckan/templates-bs2/snippets/context/user.html
    R ckan/templates-bs2/snippets/custom_form_fields.html
    R ckan/templates-bs2/snippets/datapreview_embed_dialog.html
    R ckan/templates-bs2/snippets/datapusher_status.html
    R ckan/templates-bs2/snippets/debug.html
    R ckan/templates-bs2/snippets/disqus_trackback.html
    R ckan/templates-bs2/snippets/facet_list.html
    R ckan/templates-bs2/snippets/follow_button.html
    R ckan/templates-bs2/snippets/group.html
    R ckan/templates-bs2/snippets/group_item.html
    R ckan/templates-bs2/snippets/home_breadcrumb_item.html
    R ckan/templates-bs2/snippets/language_selector.html
    R ckan/templates-bs2/snippets/license.html
    R ckan/templates-bs2/snippets/local_friendly_datetime.html
    R ckan/templates-bs2/snippets/organization.html
    R ckan/templates-bs2/snippets/organization_item.html
    R ckan/templates-bs2/snippets/package_grid.html
    R ckan/templates-bs2/snippets/package_item.html
    R ckan/templates-bs2/snippets/package_list.html
    R ckan/templates-bs2/snippets/popular.html
    R ckan/templates-bs2/snippets/private.html
    R ckan/templates-bs2/snippets/search_form.html
    R ckan/templates-bs2/snippets/search_result_text.html
    R ckan/templates-bs2/snippets/simple_search.html
    R ckan/templates-bs2/snippets/social.html
    R ckan/templates-bs2/snippets/sort_by.html
    R ckan/templates-bs2/snippets/subscribe.html
    R ckan/templates-bs2/snippets/tag_list.html
    R ckan/templates-bs2/tag/index.html
    R ckan/templates-bs2/tests/broken_helper_as_attribute.html
    R ckan/templates-bs2/tests/broken_helper_as_item.html
    R ckan/templates-bs2/tests/flash_messages.html
    R ckan/templates-bs2/tests/helper_as_attribute.html
    R ckan/templates-bs2/tests/helper_as_item.html
    R ckan/templates-bs2/tests/mock_json_resource_preview_template.html
    R ckan/templates-bs2/tests/mock_resource_preview_template.html
    R ckan/templates-bs2/user/activity_stream.html
    R ckan/templates-bs2/user/dashboard.html
    R ckan/templates-bs2/user/dashboard_datasets.html
    R ckan/templates-bs2/user/dashboard_groups.html
    R ckan/templates-bs2/user/dashboard_organizations.html
    R ckan/templates-bs2/user/edit.html
    R ckan/templates-bs2/user/edit_base.html
    R ckan/templates-bs2/user/edit_user_form.html
    R ckan/templates-bs2/user/followers.html
    R ckan/templates-bs2/user/list.html
    R ckan/templates-bs2/user/login.html
    R ckan/templates-bs2/user/logout.html
    R ckan/templates-bs2/user/logout_first.html
    R ckan/templates-bs2/user/new.html
    R ckan/templates-bs2/user/new_user_form.html
    R ckan/templates-bs2/user/perform_reset.html
    R ckan/templates-bs2/user/read.html
    R ckan/templates-bs2/user/read_base.html
    R ckan/templates-bs2/user/request_reset.html
    R ckan/templates-bs2/user/snippets/followee_dropdown.html
    R ckan/templates-bs2/user/snippets/followers.html
    R ckan/templates-bs2/user/snippets/login_form.html
    R ckan/templates-bs2/user/snippets/recaptcha.html
    R ckan/templates-bs2/user/snippets/user_search.html
    M ckan/templates/macros/form.html
    M ckan/templates/package/new_resource.html
    M ckan/templates/package/new_resource_not_draft.html
    M ckan/templates/package/resource_edit.html
    M ckan/templates/user/snippets/recaptcha.html
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/helpers.py
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/legacy/logic/test_action.py
    R ckan/tests/legacy/models/test_extras.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/test_validators.py
    M ckan/tests/migration/test_migrate_package_activity.py
    M ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/model/licenses.v1
    M ckan/tests/model/licenses.v2
    M ckan/tests/model/test_license.py
    A ckan/tests/model/test_package.py
    A ckan/tests/model/test_package_extra.py
    A ckan/tests/model/test_tags.py
    M ckan/tests/test_coding_standards.py
    M ckan/views/dataset.py
    M ckan/views/group.py
    M ckan/views/home.py
    M ckan/views/user.py
    M ckanext/datapusher/tests/test.py
    M ckanext/datapusher/tests/test_interfaces.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/controller.py
    M ckanext/datastore/tests/test_chained_action.py
    M ckanext/datastore/tests/test_chained_auth_functions.py
    M ckanext/datatablesview/controller.py
    M ckanext/example_idatasetform/plugin_v4.py
    M ckanext/example_idatasetform/tests/test_example_idatasetform.py
    M ckanext/example_ivalidators/plugin.py
    M ckanext/imageview/plugin.py
    M ckanext/resourceproxy/controller.py
    M ckanext/resourceproxy/tests/test_proxy.py
    M contrib/docker/docker-compose.yml
    M dev-requirements.txt
    M doc/conf.py
    M doc/extensions/adding-custom-fields.rst
    M doc/extensions/tutorial.rst
    M doc/maintaining/configuration.rst
    M doc/maintaining/installing/install-from-source.rst
    M doc/maintaining/paster.rst
    M requirements.in
    M requirements.txt
    M setup.py

  Log Message:
  -----------
  Merge branch 'master' into remove-vdm


  Commit: 3ab8db5d23cd5219a93c14541cf6061a0058349c
      https://github.com/ckan/ckan/commit/3ab8db5d23cd5219a93c14541cf6061a0058349c
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-05-17 (Fri, 17 May 2019)

  Changed paths:
    M ckan/migration/revision_legacy_code.py
    M ckan/model/__init__.py
    M ckan/tests/migration/test_revision_legacy_code.py

  Log Message:
  -----------
  Fixes


  Commit: 9890954d309d24a5363b2c91a67426e6f82c438b
      https://github.com/ckan/ckan/commit/9890954d309d24a5363b2c91a67426e6f82c438b
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-05-17 (Fri, 17 May 2019)

  Changed paths:
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_tags.py

  Log Message:
  -----------
  Remove new_revision that have popped up


  Commit: 6876b1a56f8ee9959e42611c8095a9fcafa88a7d
      https://github.com/ckan/ckan/commit/6876b1a56f8ee9959e42611c8095a9fcafa88a7d
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-05-24 (Fri, 24 May 2019)

  Changed paths:
    M ckan/migration/revision_legacy_code.py
    M ckan/tests/legacy/models/test_package_relationships.py

  Log Message:
  -----------
  Fix tests


  Commit: b4a7206f95689a41add1c89e98819ec71ccdb3f2
      https://github.com/ckan/ckan/commit/b4a7206f95689a41add1c89e98819ec71ccdb3f2
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-05-24 (Fri, 24 May 2019)

  Changed paths:
    M LICENSE.txt
    M README.rst
    A ckan/cli/asset.py
    M ckan/cli/cli.py
    A ckan/cli/datapusher.py
    A ckan/cli/dataset.py
    A ckan/cli/datastore.py
    M ckan/config/deployment.ini_tmpl
    M ckan/config/environment.py
    M ckan/config/middleware/flask_app.py
    M ckan/lib/extract.py
    M ckan/lib/helpers.py
    M ckan/lib/jinja_extensions.py
    A ckan/lib/webassets_tools.py
    M ckan/model/package.py
    M ckan/plugins/toolkit.py
    A ckan/public/base/css/webassets.yml
    A ckan/public/base/javascript/apply-html-class.js
    M ckan/public/base/javascript/modules/resource-reorder.js
    M ckan/public/base/javascript/resource.config
    A ckan/public/base/javascript/webassets.yml
    M ckan/public/base/vendor/resource.config
    A ckan/public/base/vendor/webassets.yml
    M ckan/templates/base.html
    M ckan/templates/package/new_resource.html
    M ckan/templates/package/resource_edit_base.html
    M ckan/templates/package/resource_views.html
    M ckan/templates/package/resources.html
    M ckan/templates/page.html
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/test_none_root.py
    M ckan/views/group.py
    M ckanext/datatablesview/public/resource.config
    A ckanext/datatablesview/public/webassets.yml
    M ckanext/datatablesview/templates/datatables/datatables_view.html
    A ckanext/example_theme_docs/v15_fanstatic/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v15_fanstatic/templates/base.html
    A ckanext/example_theme_docs/v16_initialize_a_javascript_module/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v16_initialize_a_javascript_module/templates/snippets/package_item.html
    A ckanext/example_theme_docs/v17_popover/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v17_popover/templates/snippets/package_item.html
    A ckanext/example_theme_docs/v18_snippet_api/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v18_snippet_api/templates/snippets/package_item.html
    A ckanext/example_theme_docs/v19_01_error/fanstatic/webassets.yml
    A ckanext/example_theme_docs/v19_02_error_handling/fanstatic/webassets.yml
    A ckanext/example_theme_docs/v20_pubsub/fanstatic/webassets.yml
    A ckanext/example_theme_docs/v21_custom_jquery_plugin/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v21_custom_jquery_plugin/templates/snippets/package_item.html
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/__init__.py
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/fanstatic/example_theme.js
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/fanstatic/resource.config
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/fanstatic/webassets.yml
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/plugin.py
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/public/promoted-image.jpg
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/templates/base.html
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/templates/home
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/templates/snippets
    M ckanext/reclineview/theme/public/resource.config
    A ckanext/reclineview/theme/public/webassets.yml
    M ckanext/reclineview/theme/templates/recline_view.html
    A ckanext/stats/public/ckanext/stats/webassets.yml
    M ckanext/stats/templates/ckanext/stats/index.html
    M ckanext/textview/tests/test_view.py
    A ckanext/textview/theme/public/webassets.yml
    M ckanext/textview/theme/templates/text_view.html
    M doc/conf.py
    M requirements.in
    M requirements.txt
    M setup.py

  Log Message:
  -----------
  Merge branch 'master' into remove-vdm


  Commit: f031d2f9063bc80d5e41840b12f57d0683d60980
      https://github.com/ckan/ckan/commit/f031d2f9063bc80d5e41840b12f57d0683d60980
  Author: Konstantin Sivakov <konstantin.sivakov at gmail.com>
  Date:   2019-07-09 (Tue, 09 Jul 2019)

  Changed paths:
    A ckan/cli/user.py

  Log Message:
  -----------
  Updates on new add user command


  Commit: 327652fb70f6edd74b0183d02a15b7cb1e28c568
      https://github.com/ckan/ckan/commit/327652fb70f6edd74b0183d02a15b7cb1e28c568
  Author: Konstantin Sivakov <konstantin.sivakov at gmail.com>
  Date:   2019-07-09 (Tue, 09 Jul 2019)

  Changed paths:
    M .gitignore
    M .travis.yml
    M CHANGELOG.rst
    M Dockerfile
    M LICENSE.txt
    M README.rst
    M ckan/authz.py
    A ckan/cli/asset.py
    M ckan/cli/cli.py
    A ckan/cli/datapusher.py
    A ckan/cli/dataset.py
    A ckan/cli/datastore.py
    M ckan/cli/db.py
    A ckan/cli/plugin_info.py
    M ckan/config/deployment.ini_tmpl
    M ckan/config/environment.py
    M ckan/config/middleware/flask_app.py
    A ckan/i18n/am/LC_MESSAGES/ckan.mo
    A ckan/i18n/am/LC_MESSAGES/ckan.po
    M ckan/i18n/ar/LC_MESSAGES/ckan.po
    M ckan/i18n/bg/LC_MESSAGES/ckan.po
    M ckan/i18n/ca/LC_MESSAGES/ckan.po
    M ckan/i18n/cs_CZ/LC_MESSAGES/ckan.po
    M ckan/i18n/da_DK/LC_MESSAGES/ckan.po
    M ckan/i18n/de/LC_MESSAGES/ckan.po
    M ckan/i18n/el/LC_MESSAGES/ckan.po
    M ckan/i18n/en_AU/LC_MESSAGES/ckan.po
    M ckan/i18n/en_GB/LC_MESSAGES/ckan.po
    M ckan/i18n/es/LC_MESSAGES/ckan.po
    M ckan/i18n/es_AR/LC_MESSAGES/ckan.po
    A ckan/i18n/eu/LC_MESSAGES/ckan.mo
    A ckan/i18n/eu/LC_MESSAGES/ckan.po
    M ckan/i18n/fa_IR/LC_MESSAGES/ckan.po
    M ckan/i18n/fi/LC_MESSAGES/ckan.mo
    M ckan/i18n/fi/LC_MESSAGES/ckan.po
    M ckan/i18n/fr/LC_MESSAGES/ckan.po
    M ckan/i18n/gl/LC_MESSAGES/ckan.po
    M ckan/i18n/he/LC_MESSAGES/ckan.po
    M ckan/i18n/hr/LC_MESSAGES/ckan.po
    M ckan/i18n/hu/LC_MESSAGES/ckan.po
    M ckan/i18n/id/LC_MESSAGES/ckan.po
    M ckan/i18n/is/LC_MESSAGES/ckan.po
    M ckan/i18n/it/LC_MESSAGES/ckan.po
    M ckan/i18n/ja/LC_MESSAGES/ckan.po
    M ckan/i18n/km/LC_MESSAGES/ckan.po
    M ckan/i18n/ko_KR/LC_MESSAGES/ckan.po
    M ckan/i18n/lt/LC_MESSAGES/ckan.po
    M ckan/i18n/lv/LC_MESSAGES/ckan.po
    M ckan/i18n/mk/LC_MESSAGES/ckan.po
    M ckan/i18n/mn_MN/LC_MESSAGES/ckan.po
    M ckan/i18n/nl/LC_MESSAGES/ckan.po
    M ckan/i18n/no/LC_MESSAGES/ckan.mo
    M ckan/i18n/no/LC_MESSAGES/ckan.po
    M ckan/i18n/pl/LC_MESSAGES/ckan.po
    M ckan/i18n/pt_BR/LC_MESSAGES/ckan.mo
    M ckan/i18n/pt_BR/LC_MESSAGES/ckan.po
    M ckan/i18n/pt_PT/LC_MESSAGES/ckan.po
    M ckan/i18n/ro/LC_MESSAGES/ckan.mo
    M ckan/i18n/ro/LC_MESSAGES/ckan.po
    M ckan/i18n/ru/LC_MESSAGES/ckan.mo
    M ckan/i18n/ru/LC_MESSAGES/ckan.po
    M ckan/i18n/sk/LC_MESSAGES/ckan.po
    M ckan/i18n/sl/LC_MESSAGES/ckan.po
    M ckan/i18n/sq/LC_MESSAGES/ckan.po
    M ckan/i18n/sr/LC_MESSAGES/ckan.po
    M ckan/i18n/sr_Latn/LC_MESSAGES/ckan.mo
    M ckan/i18n/sr_Latn/LC_MESSAGES/ckan.po
    M ckan/i18n/sv/LC_MESSAGES/ckan.mo
    M ckan/i18n/sv/LC_MESSAGES/ckan.po
    M ckan/i18n/th/LC_MESSAGES/ckan.po
    M ckan/i18n/tr/LC_MESSAGES/ckan.mo
    M ckan/i18n/tr/LC_MESSAGES/ckan.po
    M ckan/i18n/uk/LC_MESSAGES/ckan.po
    M ckan/i18n/uk_UA/LC_MESSAGES/ckan.po
    M ckan/i18n/vi/LC_MESSAGES/ckan.po
    M ckan/i18n/zh_CN/LC_MESSAGES/ckan.po
    M ckan/i18n/zh_TW/LC_MESSAGES/ckan.po
    M ckan/lib/base.py
    M ckan/lib/cli.py
    M ckan/lib/create_test_data.py
    M ckan/lib/extract.py
    M ckan/lib/helpers.py
    M ckan/lib/jinja_extensions.py
    A ckan/lib/webassets_tools.py
    M ckan/logic/__init__.py
    M ckan/logic/action/create.py
    M ckan/logic/action/get.py
    M ckan/logic/auth/get.py
    M ckan/logic/schema.py
    M ckan/migration/README
    M ckan/migration/__init__.py
    A ckan/migration/alembic.ini
    A ckan/migration/env.py
    R ckan/migration/manage.py
    R ckan/migration/migrate.cfg
    M ckan/migration/revision_legacy_code.py
    A ckan/migration/script.py.mako
    A ckan/migration/versions/001_103676e0a497_create_existing_tables.py
    R ckan/migration/versions/001_add_existing_tables.py
    A ckan/migration/versions/002_86fdd8c54775_add_author_and_maintainer.py
    R ckan/migration/versions/002_add_author_and_maintainer.py
    R ckan/migration/versions/003_add_user_object.py
    A ckan/migration/versions/003_f22b4f5241a5_add_user_object.py
    R ckan/migration/versions/004_add_group_object.py
    A ckan/migration/versions/004_f92ee205e46d_add_group_object.py
    A ckan/migration/versions/005_12c2232c15f5_add_authorization_tables.py
    R ckan/migration/versions/005_add_authorization_tables.py
    R ckan/migration/versions/006_add_ratings.py
    A ckan/migration/versions/006_c83955e7acb6_add_ratings.py
    A ckan/migration/versions/007_1928d4af1cda_add_system_roles.py
    R ckan/migration/versions/007_add_system_roles.py
    A ckan/migration/versions/008_e8283ffb257e_update_vdm_ids.py
    R ckan/migration/versions/008_update_vdm_ids.py
    R ckan/migration/versions/009_add_creation_timestamps.py
    A ckan/migration/versions/009_b739a48de5c4_add_creation_timestamps.py
    A ckan/migration/versions/010_a6f13bf14d0c_add_user_about.py
    R ckan/migration/versions/010_add_user_about.py
    A ckan/migration/versions/011_866f6370b4ac_add_package_search_vector.py
    R ckan/migration/versions/011_add_package_search_vector.py
    R ckan/migration/versions/012_add_resources.py
    A ckan/migration/versions/012_e5ca33a5d445_add_resources.py
    A ckan/migration/versions/013_8a3a5af39797_add_hash.py
    R ckan/migration/versions/013_add_hash.py
    A ckan/migration/versions/014_93519b684820_hash_2.py
    R ckan/migration/versions/014_hash_2.py
    A ckan/migration/versions/015_6d8ffebcaf54_remove_state_object.py
    R ckan/migration/versions/015_remove_state_object.py
    A ckan/migration/versions/016_37ada738328e_uuids_everywhere.py
    R ckan/migration/versions/016_uuids_everywhere.py
    A ckan/migration/versions/017_1250b2ff3e36_add_pkg_relationships.py
    R ckan/migration/versions/017_add_pkg_relationships.py
    A ckan/migration/versions/018_05a0778051ca_adjust_licenses.py
    R ckan/migration/versions/018_adjust_licenses.py
    A ckan/migration/versions/019_b2eb6f34a638_pkg_relationships_state.py
    R ckan/migration/versions/019_pkg_relationships_state.py
    A ckan/migration/versions/020_69a0b0efc609_add_changeset.py
    R ckan/migration/versions/020_add_changeset.py
    A ckan/migration/versions/021_765143af2ba3_postgresql_upgrade_sql.py
    R ckan/migration/versions/021_postgres_downgrade.sql
    R ckan/migration/versions/021_postgres_upgrade.sql
    R ckan/migration/versions/021_postgresql_downgrade.sql
    R ckan/migration/versions/021_postgresql_upgrade.sql
    A ckan/migration/versions/022_7b324ca6c0dc_add_group_extras.py
    R ckan/migration/versions/022_add_group_extras.py
    A ckan/migration/versions/023_87fdd05f0744_add_harvesting.py
    R ckan/migration/versions/023_add_harvesting.py
    A ckan/migration/versions/024_12981fe12484_add_harvested_document.py
    R ckan/migration/versions/024_add_harvested_document.py
    R ckan/migration/versions/025_add_authorization_groups.py
    A ckan/migration/versions/025_b581622ad327_add_authorization_groups.py
    A ckan/migration/versions/026_3615b25af443_authorization_group_user_pk.py
    R ckan/migration/versions/026_authorization_group_user_pk.py
    A ckan/migration/versions/027_11e5745c6fc9_adjust_harvester.py
    R ckan/migration/versions/027_adjust_harvester.py
    A ckan/migration/versions/028_cdd68fe9ba21_drop_harvest_source_status.py
    R ckan/migration/versions/028_drop_harvest_source_status.py
    A ckan/migration/versions/029_1bfdf4240915_version_groups.py
    R ckan/migration/versions/029_version_groups.py
    R ckan/migration/versions/030_additional_user_attributes.py
    A ckan/migration/versions/030_b16cbf164c8a_additional_user_attributes.py
    A ckan/migration/versions/031_1b05245167d6_move_openid_to_new_field.py
    R ckan/migration/versions/031_move_openid_to_new_field.py
    R ckan/migration/versions/032_add_extra_info_field_to_resources.py
    A ckan/migration/versions/032_d89e0731422d_add_extra_info_field_to_resources.py
    A ckan/migration/versions/033_6da92ef2df15_auth_group_user_id_add_conditional.py
    R ckan/migration/versions/033_auth_group_user_id_add_conditional.py
    A ckan/migration/versions/034_6c600693af5b_resource_group_table.py
    R ckan/migration/versions/034_resource_group_table.py
    A ckan/migration/versions/035_81148ccebd6c_harvesting_doc_versioning.py
    R ckan/migration/versions/035_harvesting_doc_versioning.py
    A ckan/migration/versions/036_ecaa8b38782f_lockdown_roles.py
    R ckan/migration/versions/036_lockdown_roles.py
    A ckan/migration/versions/037_edcf3b8c3c1b_role_anon_editor.py
    R ckan/migration/versions/037_role_anon_editor.py
    R ckan/migration/versions/038_delete_migration_tables.py
    A ckan/migration/versions/038_fd6622e3d964_delete_migration_tables.py
    R ckan/migration/versions/039_add_expired_id_and_dates.py
    A ckan/migration/versions/039_cca459c76d45_add_expired_id_and_dates.py
    A ckan/migration/versions/040_500a08f4818e_reset_key_on_user.py
    R ckan/migration/versions/040_reset_key_on_user.py
    A ckan/migration/versions/041_6817d4e3bdc3_resource_new_fields.py
    R ckan/migration/versions/041_resource_new_fields.py
    A ckan/migration/versions/042_da65e2877034_user_revision_indexes.py
    R ckan/migration/versions/042_user_revision_indexes.py
    A ckan/migration/versions/043_bd38cd6502b2_drop_postgres_search.py
    R ckan/migration/versions/043_drop_postgres_search.py
    A ckan/migration/versions/044_4190eeeb8d73_add_task_status.py
    R ckan/migration/versions/044_add_task_status.py
    A ckan/migration/versions/045_54e3f155d945_user_name_unique.py
    R ckan/migration/versions/045_user_name_unique.py
    A ckan/migration/versions/046_b69e9b80396f_drop_changesets.py
    R ckan/migration/versions/046_drop_changesets.py
    A ckan/migration/versions/047_883a7c406926_rename_package_group_member.py
    R ckan/migration/versions/047_rename_package_group_member.py
    A ckan/migration/versions/048_4a7011172b3f_add_activity_streams_tables.py
    R ckan/migration/versions/048_add_activity_streams_tables.py
    R ckan/migration/versions/049_add_group_approval_status.py
    A ckan/migration/versions/049_e0c06c2177b5_add_group_approval_status.py
    A ckan/migration/versions/050_01a6b058cb7f_term_translation_table.py
    R ckan/migration/versions/050_term_translation_table.py
    A ckan/migration/versions/051_a4fb0d85ced6_add_tag_vocabulary.py
    R ckan/migration/versions/051_add_tag_vocabulary.py
    A ckan/migration/versions/052_ba693d64c6d7_update_member_capacities.py
    R ckan/migration/versions/052_update_member_capacities.py
    A ckan/migration/versions/053_9d051a099097_add_group_logo.py
    R ckan/migration/versions/053_add_group_logo.py
    R ckan/migration/versions/054_add_resource_created_date.py
    A ckan/migration/versions/054_da21b38da4db_add_resource_created_date.py
    A ckan/migration/versions/055_048f7db947bf_update_user_and_activity_detail.py
    R ckan/migration/versions/055_update_user_and_activity_detail.py
    A ckan/migration/versions/056_11af3215ae89_add_related_table.py
    R ckan/migration/versions/056_add_related_table.py
    A ckan/migration/versions/057_660a5aae527e_tracking.py
    R ckan/migration/versions/057_tracking.py
    R ckan/migration/versions/058_add_follower_tables.py
    A ckan/migration/versions/058_bd36d1826a5d_add_follower_tables.py
    A ckan/migration/versions/059_9291bb46f352_add_related_count_and_flag.py
    R ckan/migration/versions/059_add_related_count_and_flag.py
    A ckan/migration/versions/060_31ad11c518fc_add_system_info_table.py
    R ckan/migration/versions/060_add_system_info_table.py
    A ckan/migration/versions/061_338d460bc460_add_follower_group_table.py
    R ckan/migration/versions/061_add_follower__group_table.py
    A ckan/migration/versions/062_6deb2bbab394_add_dashboard_table.py
    R ckan/migration/versions/062_add_dashboard_table.py
    A ckan/migration/versions/063_8b633852cb7a_org_changes.py
    R ckan/migration/versions/063_org_changes.py
    A ckan/migration/versions/064_4f8becd4919a_add_email_last_sent_column.py
    R ckan/migration/versions/064_add_email_last_sent_column.py
    A ckan/migration/versions/065_1fab0bc6439e_add_email_notifications_preference.py
    R ckan/migration/versions/065_add_email_notifications_preference.py
    A ckan/migration/versions/066_ad16b3bd8cb6_default_package_type.py
    R ckan/migration/versions/066_default_package_type.py
    A ckan/migration/versions/067_266c110eafec_turn_extras_to_strings.py
    R ckan/migration/versions/067_turn_extras_to_strings.py
    R ckan/migration/versions/068_add_package_extras_index.py
    A ckan/migration/versions/068_e33a5f2b2a84_add_package_extras_index.py
    A ckan/migration/versions/069_e7524c675cdb_resource_url_and_metadata_modified.py
    R ckan/migration/versions/069_resource_url_and_metadata_modified.py
    R ckan/migration/versions/070_add_activity_and_resource_indexes.py
    A ckan/migration/versions/070_cfb544112fa7_add_activity_and_resource_indexes.py
    R ckan/migration/versions/071_add_state_column_to_user_table.py
    A ckan/migration/versions/071_c16f081ef73a_add_state_column_to_user_table.py
    A ckan/migration/versions/072_08dcb9233ad7_add_resource_view.py
    R ckan/migration/versions/072_add_resource_view.py
    A ckan/migration/versions/073_011f51208be3_update_resource_view_resource_id_.py
    R ckan/migration/versions/073_update_resource_view_resource_id_constraint.py
    A ckan/migration/versions/074_a4ca55f0f45e_remove_resource_groups.py
    R ckan/migration/versions/074_remove_resource_groups.py
    A ckan/migration/versions/075_9cdc88c8896a_rename_view_plugins.py
    R ckan/migration/versions/075_rename_view_plugins.py
    A ckan/migration/versions/076_59995aa965c0_rename_view_plugins_2.py
    R ckan/migration/versions/076_rename_view_plugins_2.py
    A ckan/migration/versions/077_51171a04d86d_add_revisions_to_system_info.py
    R ckan/migration/versions/077_add_revisions_to_system_info.py
    A ckan/migration/versions/078_ae821876532a_remove_old_authz_model.py
    R ckan/migration/versions/078_remove_old_authz_model.py
    A ckan/migration/versions/079_e0177a15d2c9_resource_revision_index.py
    R ckan/migration/versions/079_resource_revision_index.py
    A ckan/migration/versions/080_8224d872c64f_continuity_id_indexes.py
    R ckan/migration/versions/080_continuity_id_indexes.py
    A ckan/migration/versions/081_a64cf4a79182_set_datastore_active.py
    R ckan/migration/versions/081_set_datastore_active.py
    A ckan/migration/versions/082_8ea886d0ede4_create_index_creator_user_id.py
    R ckan/migration/versions/082_create_index_creator_user_id.py
    A ckan/migration/versions/083_f98d8fa2a7f7_remove_related_items.py
    R ckan/migration/versions/083_remove_related_items.py
    R ckan/migration/versions/084_add_metadata_created.py
    A ckan/migration/versions/084_d85ce5783688_add_metadata_created.py
    R ckan/migration/versions/085_adjust_activity_timestamps.py
    A ckan/migration/versions/085_f9bf3d5c4b4d_adjust_activity_timestamps.py
    A ckan/migration/versions/086_19663581b3bb_drop_openid_column.py
    R ckan/migration/versions/086_drop_openid_column.py
    A ckan/migration/versions/087_ff1b303cab77_remove_old_authorization_tables.py
    R ckan/migration/versions/087_remove_old_authorization_tables.py
    A ckan/migration/versions/088_3537d5420e0e_delete_extrase_which_are_deleted_state.py
    R ckan/migration/versions/088_delete_extras_which_are_deleted_state.py
    A ckan/migration/versions/089_23c92480926e_package_activity_migration_check.py
    R ckan/migration/versions/089_package_activity_migration_check.py
    A ckan/migration/versions/090_980dcd44de4b_delete_migrate_version_table.py
    R ckan/migration/versions/__init__.py
    M ckan/model/__init__.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/tag.py
    M ckan/pastertemplates/template/README.rst_tmpl
    M ckan/plugins/interfaces.py
    M ckan/plugins/toolkit.py
    R ckan/public-bs2/base/css/.gitignore
    R ckan/public-bs2/base/css/fuchsia.css
    R ckan/public-bs2/base/css/green.css
    R ckan/public-bs2/base/css/main.css
    R ckan/public-bs2/base/css/maroon.css
    R ckan/public-bs2/base/css/red.css
    R ckan/public-bs2/base/i18n/.gitignore
    R ckan/public-bs2/base/images/background-tag-ie7.png
    R ckan/public-bs2/base/images/background-tag.png
    R ckan/public-bs2/base/images/background-tile.png
    R ckan/public-bs2/base/images/bg.png
    R ckan/public-bs2/base/images/breadcrumb-slash-ie7.png
    R ckan/public-bs2/base/images/ckan-logo-footer.png
    R ckan/public-bs2/base/images/ckan-logo-white.svg
    R ckan/public-bs2/base/images/ckan-logo.png
    R ckan/public-bs2/base/images/ckan-logo.svg
    R ckan/public-bs2/base/images/ckan.ico
    R ckan/public-bs2/base/images/dashboard-followee-related.png
    R ckan/public-bs2/base/images/dotted.png
    R ckan/public-bs2/base/images/editing.png
    R ckan/public-bs2/base/images/full-width-nav-right.png
    R ckan/public-bs2/base/images/icon-search-27x26.png
    R ckan/public-bs2/base/images/loading-spinner.gif
    R ckan/public-bs2/base/images/nav-active.png
    R ckan/public-bs2/base/images/nav.png
    R ckan/public-bs2/base/images/od_80x15_blue.png
    R ckan/public-bs2/base/images/placeholder-200x125.png
    R ckan/public-bs2/base/images/placeholder-420x220.png
    R ckan/public-bs2/base/images/placeholder-680x400.png
    R ckan/public-bs2/base/images/placeholder-application.png
    R ckan/public-bs2/base/images/placeholder-group.png
    R ckan/public-bs2/base/images/placeholder-image.png
    R ckan/public-bs2/base/images/placeholder-organization.png
    R ckan/public-bs2/base/images/sprite-ckan-icons.png
    R ckan/public-bs2/base/images/sprite-resource-icons.png
    R ckan/public-bs2/base/images/table-seperator.png
    R ckan/public-bs2/base/javascript/client.js
    R ckan/public-bs2/base/javascript/i18n.js
    R ckan/public-bs2/base/javascript/main.js
    R ckan/public-bs2/base/javascript/module.js
    R ckan/public-bs2/base/javascript/modules/activity-stream.js
    R ckan/public-bs2/base/javascript/modules/api-info.js
    R ckan/public-bs2/base/javascript/modules/autocomplete.js
    R ckan/public-bs2/base/javascript/modules/basic-form.js
    R ckan/public-bs2/base/javascript/modules/confirm-action.js
    R ckan/public-bs2/base/javascript/modules/custom-fields.js
    R ckan/public-bs2/base/javascript/modules/dashboard.js
    R ckan/public-bs2/base/javascript/modules/data-viewer.js
    R ckan/public-bs2/base/javascript/modules/dataset-visibility.js
    R ckan/public-bs2/base/javascript/modules/follow.js
    R ckan/public-bs2/base/javascript/modules/followers-counter.js
    R ckan/public-bs2/base/javascript/modules/image-upload.js
    R ckan/public-bs2/base/javascript/modules/media-grid.js
    R ckan/public-bs2/base/javascript/modules/popover-context.js
    R ckan/public-bs2/base/javascript/modules/resource-form.js
    R ckan/public-bs2/base/javascript/modules/resource-reorder.js
    R ckan/public-bs2/base/javascript/modules/resource-upload-field.js
    R ckan/public-bs2/base/javascript/modules/resource-view-embed.js
    R ckan/public-bs2/base/javascript/modules/resource-view-filters-form.js
    R ckan/public-bs2/base/javascript/modules/resource-view-filters.js
    R ckan/public-bs2/base/javascript/modules/resource-view-reorder.js
    R ckan/public-bs2/base/javascript/modules/select-switch.js
    R ckan/public-bs2/base/javascript/modules/slug-preview.js
    R ckan/public-bs2/base/javascript/modules/table-selectable-rows.js
    R ckan/public-bs2/base/javascript/modules/table-toggle-more.js
    R ckan/public-bs2/base/javascript/notify.js
    R ckan/public-bs2/base/javascript/plugins/jquery.date-helpers.js
    R ckan/public-bs2/base/javascript/plugins/jquery.form-warning.js
    R ckan/public-bs2/base/javascript/plugins/jquery.images-loaded.js
    R ckan/public-bs2/base/javascript/plugins/jquery.inherit.js
    R ckan/public-bs2/base/javascript/plugins/jquery.masonry.js
    R ckan/public-bs2/base/javascript/plugins/jquery.proxy-all.js
    R ckan/public-bs2/base/javascript/plugins/jquery.slug-preview.js
    R ckan/public-bs2/base/javascript/plugins/jquery.slug.js
    R ckan/public-bs2/base/javascript/plugins/jquery.truncator.js
    R ckan/public-bs2/base/javascript/plugins/jquery.url-helpers.js
    R ckan/public-bs2/base/javascript/pubsub.js
    R ckan/public-bs2/base/javascript/resource.config
    R ckan/public-bs2/base/javascript/sandbox.js
    R ckan/public-bs2/base/javascript/tracking.js
    R ckan/public-bs2/base/javascript/view-filters.js
    R ckan/public-bs2/base/less/activity.less
    R ckan/public-bs2/base/less/ckan.less
    R ckan/public-bs2/base/less/custom.less
    R ckan/public-bs2/base/less/dashboard.less
    R ckan/public-bs2/base/less/datapusher.less
    R ckan/public-bs2/base/less/dataset.less
    R ckan/public-bs2/base/less/dropdown.less
    R ckan/public-bs2/base/less/footer.less
    R ckan/public-bs2/base/less/forms.less
    R ckan/public-bs2/base/less/group.less
    R ckan/public-bs2/base/less/homepage.less
    R ckan/public-bs2/base/less/icons.less
    R ckan/public-bs2/base/less/iehacks.less
    R ckan/public-bs2/base/less/layout.less
    R ckan/public-bs2/base/less/main.less
    R ckan/public-bs2/base/less/masthead.less
    R ckan/public-bs2/base/less/media.less
    R ckan/public-bs2/base/less/mixins.less
    R ckan/public-bs2/base/less/module.less
    R ckan/public-bs2/base/less/nav.less
    R ckan/public-bs2/base/less/profile.less
    R ckan/public-bs2/base/less/prose.less
    R ckan/public-bs2/base/less/resource-view.less
    R ckan/public-bs2/base/less/search.less
    R ckan/public-bs2/base/less/tables.less
    R ckan/public-bs2/base/less/toolbar.less
    R ckan/public-bs2/base/less/variables.less
    R ckan/public-bs2/base/test/index.html
    R ckan/public-bs2/base/test/primer/index.html
    R ckan/public-bs2/base/test/spec/ckan.spec.js
    R ckan/public-bs2/base/test/spec/client.spec.js
    R ckan/public-bs2/base/test/spec/i18n.spec.js
    R ckan/public-bs2/base/test/spec/module.spec.js
    R ckan/public-bs2/base/test/spec/modules/autocomplete.spec.js
    R ckan/public-bs2/base/test/spec/modules/basic-form.spec.js
    R ckan/public-bs2/base/test/spec/modules/confirm-action.spec.js
    R ckan/public-bs2/base/test/spec/modules/custom-fields.spec.js
    R ckan/public-bs2/base/test/spec/modules/followers-counter.spec.js
    R ckan/public-bs2/base/test/spec/modules/image-upload.spec.js
    R ckan/public-bs2/base/test/spec/modules/resource-form.spec.js
    R ckan/public-bs2/base/test/spec/modules/resource-upload-field.spec.js
    R ckan/public-bs2/base/test/spec/notify.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.date-helpers.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.form-warning.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.inherit.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.proxy-all.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.slug-preview.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.slug.spec.js
    R ckan/public-bs2/base/test/spec/plugins/jquery.url-helpers.spec.js
    R ckan/public-bs2/base/test/spec/pubsub.spec.js
    R ckan/public-bs2/base/test/spec/sandbox.spec.js
    R ckan/public-bs2/base/test/spec/view-filters.spec.js
    R ckan/public-bs2/base/test/vendor/chai.js
    R ckan/public-bs2/base/test/vendor/less.js
    R ckan/public-bs2/base/test/vendor/mocha.css
    R ckan/public-bs2/base/test/vendor/mocha.js
    R ckan/public-bs2/base/test/vendor/sinon.js
    R ckan/public-bs2/base/vendor/bootstrap.js
    R ckan/public-bs2/base/vendor/bootstrap.min.js
    R ckan/public-bs2/base/vendor/bootstrap/img/glyphicons-halflings-white.png
    R ckan/public-bs2/base/vendor/bootstrap/img/glyphicons-halflings.png
    R ckan/public-bs2/base/vendor/bootstrap/js/bootstrap.js
    R ckan/public-bs2/base/vendor/bootstrap/js/bootstrap.min.js
    R ckan/public-bs2/base/vendor/bootstrap/less/accordion.less
    R ckan/public-bs2/base/vendor/bootstrap/less/alerts.less
    R ckan/public-bs2/base/vendor/bootstrap/less/bootstrap.less
    R ckan/public-bs2/base/vendor/bootstrap/less/breadcrumbs.less
    R ckan/public-bs2/base/vendor/bootstrap/less/button-groups.less
    R ckan/public-bs2/base/vendor/bootstrap/less/buttons.less
    R ckan/public-bs2/base/vendor/bootstrap/less/carousel.less
    R ckan/public-bs2/base/vendor/bootstrap/less/close.less
    R ckan/public-bs2/base/vendor/bootstrap/less/code.less
    R ckan/public-bs2/base/vendor/bootstrap/less/component-animations.less
    R ckan/public-bs2/base/vendor/bootstrap/less/dropdowns.less
    R ckan/public-bs2/base/vendor/bootstrap/less/forms.less
    R ckan/public-bs2/base/vendor/bootstrap/less/grid.less
    R ckan/public-bs2/base/vendor/bootstrap/less/hero-unit.less
    R ckan/public-bs2/base/vendor/bootstrap/less/labels-badges.less
    R ckan/public-bs2/base/vendor/bootstrap/less/layouts.less
    R ckan/public-bs2/base/vendor/bootstrap/less/media.less
    R ckan/public-bs2/base/vendor/bootstrap/less/mixins.less
    R ckan/public-bs2/base/vendor/bootstrap/less/modals.less
    R ckan/public-bs2/base/vendor/bootstrap/less/navbar.less
    R ckan/public-bs2/base/vendor/bootstrap/less/navs.less
    R ckan/public-bs2/base/vendor/bootstrap/less/pager.less
    R ckan/public-bs2/base/vendor/bootstrap/less/pagination.less
    R ckan/public-bs2/base/vendor/bootstrap/less/popovers.less
    R ckan/public-bs2/base/vendor/bootstrap/less/progress-bars.less
    R ckan/public-bs2/base/vendor/bootstrap/less/reset.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-1200px-min.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-767px-max.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-768px-979px.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-navbar.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive-utilities.less
    R ckan/public-bs2/base/vendor/bootstrap/less/responsive.less
    R ckan/public-bs2/base/vendor/bootstrap/less/scaffolding.less
    R ckan/public-bs2/base/vendor/bootstrap/less/sprites.less
    R ckan/public-bs2/base/vendor/bootstrap/less/tables.less
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/buttons.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/css-tests.css
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/css-tests.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/forms-responsive.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/forms.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/navbar-fixed-top.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/navbar-static-top.html
    R ckan/public-bs2/base/vendor/bootstrap/less/tests/navbar.html
    R ckan/public-bs2/base/vendor/bootstrap/less/thumbnails.less
    R ckan/public-bs2/base/vendor/bootstrap/less/tooltip.less
    R ckan/public-bs2/base/vendor/bootstrap/less/type.less
    R ckan/public-bs2/base/vendor/bootstrap/less/utilities.less
    R ckan/public-bs2/base/vendor/bootstrap/less/variables.less
    R ckan/public-bs2/base/vendor/bootstrap/less/wells.less
    R ckan/public-bs2/base/vendor/font-awesome/css/font-awesome.css
    R ckan/public-bs2/base/vendor/font-awesome/css/font-awesome.min.css
    R ckan/public-bs2/base/vendor/font-awesome/fonts/FontAwesome.otf
    R ckan/public-bs2/base/vendor/font-awesome/fonts/fontawesome-webfont.eot
    R ckan/public-bs2/base/vendor/font-awesome/fonts/fontawesome-webfont.svg
    R ckan/public-bs2/base/vendor/font-awesome/fonts/fontawesome-webfont.ttf
    R ckan/public-bs2/base/vendor/font-awesome/fonts/fontawesome-webfont.woff
    R ckan/public-bs2/base/vendor/font-awesome/less/bordered-pulled.less
    R ckan/public-bs2/base/vendor/font-awesome/less/core.less
    R ckan/public-bs2/base/vendor/font-awesome/less/extras.less
    R ckan/public-bs2/base/vendor/font-awesome/less/fixed-width.less
    R ckan/public-bs2/base/vendor/font-awesome/less/font-awesome.less
    R ckan/public-bs2/base/vendor/font-awesome/less/icons.less
    R ckan/public-bs2/base/vendor/font-awesome/less/larger.less
    R ckan/public-bs2/base/vendor/font-awesome/less/list.less
    R ckan/public-bs2/base/vendor/font-awesome/less/mixins.less
    R ckan/public-bs2/base/vendor/font-awesome/less/path.less
    R ckan/public-bs2/base/vendor/font-awesome/less/rotated-flipped.less
    R ckan/public-bs2/base/vendor/font-awesome/less/spinning.less
    R ckan/public-bs2/base/vendor/font-awesome/less/stacked.less
    R ckan/public-bs2/base/vendor/font-awesome/less/variables.less
    R ckan/public-bs2/base/vendor/html5.js
    R ckan/public-bs2/base/vendor/html5.min.js
    R ckan/public-bs2/base/vendor/jed.js
    R ckan/public-bs2/base/vendor/jed.min.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.fileupload-ui.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.fileupload-ui.min.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.fileupload.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.fileupload.min.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.iframe-transport.js
    R ckan/public-bs2/base/vendor/jquery-fileupload/jquery.iframe-transport.min.js
    R ckan/public-bs2/base/vendor/jquery.js
    R ckan/public-bs2/base/vendor/jquery.min.js
    R ckan/public-bs2/base/vendor/jquery.ui.core.js
    R ckan/public-bs2/base/vendor/jquery.ui.mouse.js
    R ckan/public-bs2/base/vendor/jquery.ui.sortable.js
    R ckan/public-bs2/base/vendor/jquery.ui.widget.js
    R ckan/public-bs2/base/vendor/moment-with-locales.js
    R ckan/public-bs2/base/vendor/polyfill-object-keys.js
    R ckan/public-bs2/base/vendor/resource.config
    R ckan/public-bs2/base/vendor/select2/.gitignore
    R ckan/public-bs2/base/vendor/select2/CONTRIBUTING.md
    R ckan/public-bs2/base/vendor/select2/LICENSE
    R ckan/public-bs2/base/vendor/select2/README.md
    R ckan/public-bs2/base/vendor/select2/bower.json
    R ckan/public-bs2/base/vendor/select2/component.json
    R ckan/public-bs2/base/vendor/select2/composer.json
    R ckan/public-bs2/base/vendor/select2/package.json
    R ckan/public-bs2/base/vendor/select2/release.sh
    R ckan/public-bs2/base/vendor/select2/select2-bootstrap.css
    R ckan/public-bs2/base/vendor/select2/select2-spinner.gif
    R ckan/public-bs2/base/vendor/select2/select2.css
    R ckan/public-bs2/base/vendor/select2/select2.jquery.json
    R ckan/public-bs2/base/vendor/select2/select2.js
    R ckan/public-bs2/base/vendor/select2/select2.min.js
    R ckan/public-bs2/base/vendor/select2/select2.png
    R ckan/public-bs2/base/vendor/select2/select2_locale_ar.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_az.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_bg.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ca.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_cs.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_da.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_de.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_el.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_en.js.template
    R ckan/public-bs2/base/vendor/select2/select2_locale_es.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_et.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_eu.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_fa.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_fi.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_fr.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_gl.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_he.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_hr.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_hu.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_id.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_is.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_it.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ja.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ka.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ko.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_lt.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_lv.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_mk.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ms.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_nb.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_nl.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_pl.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_pt-BR.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_pt-PT.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ro.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_rs.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ru.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_sk.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_sv.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_th.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_tr.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_ug-CN.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_uk.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_vi.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_zh-CN.js
    R ckan/public-bs2/base/vendor/select2/select2_locale_zh-TW.js
    R ckan/public-bs2/base/vendor/select2/select2x2.png
    M ckan/public/base/css/fuchsia.css
    M ckan/public/base/css/green.css
    M ckan/public/base/css/main.css
    M ckan/public/base/css/maroon.css
    M ckan/public/base/css/red.css
    A ckan/public/base/css/webassets.yml
    M ckan/public/base/images/sprite-resource-icons.png
    A ckan/public/base/javascript/apply-html-class.js
    M ckan/public/base/javascript/modules/followers-counter.js
    M ckan/public/base/javascript/modules/resource-reorder.js
    M ckan/public/base/javascript/resource.config
    A ckan/public/base/javascript/webassets.yml
    M ckan/public/base/less/icons.less
    M ckan/public/base/vendor/resource.config
    A ckan/public/base/vendor/webassets.yml
    R ckan/templates-bs2/activity_streams/activity_stream_email_notifications.text
    R ckan/templates-bs2/activity_streams/activity_stream_items.html
    R ckan/templates-bs2/admin/base.html
    R ckan/templates-bs2/admin/config.html
    R ckan/templates-bs2/admin/confirm_reset.html
    R ckan/templates-bs2/admin/index.html
    R ckan/templates-bs2/admin/trash.html
    R ckan/templates-bs2/ajax_snippets/custom_fields.html
    R ckan/templates-bs2/ajax_snippets/follow_button.html
    R ckan/templates-bs2/base.html
    R ckan/templates-bs2/dataviewer/base.html
    R ckan/templates-bs2/dataviewer/snippets/data_preview.html
    R ckan/templates-bs2/dataviewer/snippets/no_preview.html
    R ckan/templates-bs2/development/primer.html
    R ckan/templates-bs2/development/snippets/actions.html
    R ckan/templates-bs2/development/snippets/breadcrumb.html
    R ckan/templates-bs2/development/snippets/context.html
    R ckan/templates-bs2/development/snippets/facet.html
    R ckan/templates-bs2/development/snippets/form.html
    R ckan/templates-bs2/development/snippets/form_stages.html
    R ckan/templates-bs2/development/snippets/list.html
    R ckan/templates-bs2/development/snippets/media_grid.html
    R ckan/templates-bs2/development/snippets/module.html
    R ckan/templates-bs2/development/snippets/nav.html
    R ckan/templates-bs2/development/snippets/page_header.html
    R ckan/templates-bs2/development/snippets/pagination.html
    R ckan/templates-bs2/development/snippets/simple-input.html
    R ckan/templates-bs2/emails/invite_user.txt
    R ckan/templates-bs2/emails/invite_user_subject.txt
    R ckan/templates-bs2/emails/reset_password.txt
    R ckan/templates-bs2/emails/reset_password_subject.txt
    R ckan/templates-bs2/error_document_template.html
    R ckan/templates-bs2/footer.html
    R ckan/templates-bs2/group/about.html
    R ckan/templates-bs2/group/activity_stream.html
    R ckan/templates-bs2/group/admins.html
    R ckan/templates-bs2/group/base_form_page.html
    R ckan/templates-bs2/group/confirm_delete.html
    R ckan/templates-bs2/group/confirm_delete_member.html
    R ckan/templates-bs2/group/edit.html
    R ckan/templates-bs2/group/edit_base.html
    R ckan/templates-bs2/group/followers.html
    R ckan/templates-bs2/group/index.html
    R ckan/templates-bs2/group/member_new.html
    R ckan/templates-bs2/group/members.html
    R ckan/templates-bs2/group/new.html
    R ckan/templates-bs2/group/new_group_form.html
    R ckan/templates-bs2/group/read.html
    R ckan/templates-bs2/group/read_base.html
    R ckan/templates-bs2/group/snippets/feeds.html
    R ckan/templates-bs2/group/snippets/group_form.html
    R ckan/templates-bs2/group/snippets/group_item.html
    R ckan/templates-bs2/group/snippets/group_list.html
    R ckan/templates-bs2/group/snippets/helper.html
    R ckan/templates-bs2/group/snippets/info.html
    R ckan/templates-bs2/header.html
    R ckan/templates-bs2/home/about.html
    R ckan/templates-bs2/home/index.html
    R ckan/templates-bs2/home/layout1.html
    R ckan/templates-bs2/home/layout2.html
    R ckan/templates-bs2/home/layout3.html
    R ckan/templates-bs2/home/snippets/about_text.html
    R ckan/templates-bs2/home/snippets/featured_group.html
    R ckan/templates-bs2/home/snippets/featured_organization.html
    R ckan/templates-bs2/home/snippets/promoted.html
    R ckan/templates-bs2/home/snippets/search.html
    R ckan/templates-bs2/home/snippets/stats.html
    R ckan/templates-bs2/macros/autoform.html
    R ckan/templates-bs2/macros/form.html
    R ckan/templates-bs2/organization/about.html
    R ckan/templates-bs2/organization/activity_stream.html
    R ckan/templates-bs2/organization/admins.html
    R ckan/templates-bs2/organization/base_form_page.html
    R ckan/templates-bs2/organization/bulk_process.html
    R ckan/templates-bs2/organization/confirm_delete.html
    R ckan/templates-bs2/organization/confirm_delete_member.html
    R ckan/templates-bs2/organization/edit.html
    R ckan/templates-bs2/organization/edit_base.html
    R ckan/templates-bs2/organization/index.html
    R ckan/templates-bs2/organization/member_new.html
    R ckan/templates-bs2/organization/members.html
    R ckan/templates-bs2/organization/new.html
    R ckan/templates-bs2/organization/new_organization_form.html
    R ckan/templates-bs2/organization/read.html
    R ckan/templates-bs2/organization/read_base.html
    R ckan/templates-bs2/organization/snippets/feeds.html
    R ckan/templates-bs2/organization/snippets/help.html
    R ckan/templates-bs2/organization/snippets/helper.html
    R ckan/templates-bs2/organization/snippets/info.html
    R ckan/templates-bs2/organization/snippets/organization_form.html
    R ckan/templates-bs2/organization/snippets/organization_item.html
    R ckan/templates-bs2/organization/snippets/organization_list.html
    R ckan/templates-bs2/package/activity.html
    R ckan/templates-bs2/package/base.html
    R ckan/templates-bs2/package/base_form_page.html
    R ckan/templates-bs2/package/confirm_delete.html
    R ckan/templates-bs2/package/confirm_delete_resource.html
    R ckan/templates-bs2/package/edit.html
    R ckan/templates-bs2/package/edit_base.html
    R ckan/templates-bs2/package/edit_view.html
    R ckan/templates-bs2/package/followers.html
    R ckan/templates-bs2/package/group_list.html
    R ckan/templates-bs2/package/new.html
    R ckan/templates-bs2/package/new_package_form.html
    R ckan/templates-bs2/package/new_resource.html
    R ckan/templates-bs2/package/new_resource_not_draft.html
    R ckan/templates-bs2/package/new_view.html
    R ckan/templates-bs2/package/read.html
    R ckan/templates-bs2/package/read_base.html
    R ckan/templates-bs2/package/resource_edit.html
    R ckan/templates-bs2/package/resource_edit_base.html
    R ckan/templates-bs2/package/resource_read.html
    R ckan/templates-bs2/package/resource_views.html
    R ckan/templates-bs2/package/resources.html
    R ckan/templates-bs2/package/search.html
    R ckan/templates-bs2/package/snippets/additional_info.html
    R ckan/templates-bs2/package/snippets/cannot_create_package.html
    R ckan/templates-bs2/package/snippets/info.html
    R ckan/templates-bs2/package/snippets/new_package_breadcrumb.html
    R ckan/templates-bs2/package/snippets/package_basic_fields.html
    R ckan/templates-bs2/package/snippets/package_form.html
    R ckan/templates-bs2/package/snippets/package_metadata_fields.html
    R ckan/templates-bs2/package/snippets/resource_edit_form.html
    R ckan/templates-bs2/package/snippets/resource_form.html
    R ckan/templates-bs2/package/snippets/resource_help.html
    R ckan/templates-bs2/package/snippets/resource_info.html
    R ckan/templates-bs2/package/snippets/resource_item.html
    R ckan/templates-bs2/package/snippets/resource_view.html
    R ckan/templates-bs2/package/snippets/resource_view_embed.html
    R ckan/templates-bs2/package/snippets/resource_view_filters.html
    R ckan/templates-bs2/package/snippets/resource_views_list.html
    R ckan/templates-bs2/package/snippets/resource_views_list_item.html
    R ckan/templates-bs2/package/snippets/resources.html
    R ckan/templates-bs2/package/snippets/resources_list.html
    R ckan/templates-bs2/package/snippets/stages.html
    R ckan/templates-bs2/package/snippets/tags.html
    R ckan/templates-bs2/package/snippets/view_form.html
    R ckan/templates-bs2/package/snippets/view_form_filters.html
    R ckan/templates-bs2/package/snippets/view_help.html
    R ckan/templates-bs2/package/view_edit_base.html
    R ckan/templates-bs2/page.html
    R ckan/templates-bs2/revision/__init__.py
    R ckan/templates-bs2/robots.txt
    R ckan/templates-bs2/snippets/activities/added_tag.html
    R ckan/templates-bs2/snippets/activities/changed_group.html
    R ckan/templates-bs2/snippets/activities/changed_organization.html
    R ckan/templates-bs2/snippets/activities/changed_package.html
    R ckan/templates-bs2/snippets/activities/changed_resource.html
    R ckan/templates-bs2/snippets/activities/changed_user.html
    R ckan/templates-bs2/snippets/activities/deleted_group.html
    R ckan/templates-bs2/snippets/activities/deleted_organization.html
    R ckan/templates-bs2/snippets/activities/deleted_package.html
    R ckan/templates-bs2/snippets/activities/deleted_resource.html
    R ckan/templates-bs2/snippets/activities/fallback.html
    R ckan/templates-bs2/snippets/activities/follow_dataset.html
    R ckan/templates-bs2/snippets/activities/follow_group.html
    R ckan/templates-bs2/snippets/activities/follow_user.html
    R ckan/templates-bs2/snippets/activities/new_group.html
    R ckan/templates-bs2/snippets/activities/new_organization.html
    R ckan/templates-bs2/snippets/activities/new_package.html
    R ckan/templates-bs2/snippets/activities/new_resource.html
    R ckan/templates-bs2/snippets/activities/new_user.html
    R ckan/templates-bs2/snippets/activities/removed_tag.html
    R ckan/templates-bs2/snippets/activity_stream.html
    R ckan/templates-bs2/snippets/additional_info.html
    R ckan/templates-bs2/snippets/context.html
    R ckan/templates-bs2/snippets/context/dataset.html
    R ckan/templates-bs2/snippets/context/group.html
    R ckan/templates-bs2/snippets/context/user.html
    R ckan/templates-bs2/snippets/custom_form_fields.html
    R ckan/templates-bs2/snippets/datapreview_embed_dialog.html
    R ckan/templates-bs2/snippets/datapusher_status.html
    R ckan/templates-bs2/snippets/debug.html
    R ckan/templates-bs2/snippets/disqus_trackback.html
    R ckan/templates-bs2/snippets/facet_list.html
    R ckan/templates-bs2/snippets/follow_button.html
    R ckan/templates-bs2/snippets/group.html
    R ckan/templates-bs2/snippets/group_item.html
    R ckan/templates-bs2/snippets/home_breadcrumb_item.html
    R ckan/templates-bs2/snippets/language_selector.html
    R ckan/templates-bs2/snippets/license.html
    R ckan/templates-bs2/snippets/local_friendly_datetime.html
    R ckan/templates-bs2/snippets/organization.html
    R ckan/templates-bs2/snippets/organization_item.html
    R ckan/templates-bs2/snippets/package_grid.html
    R ckan/templates-bs2/snippets/package_item.html
    R ckan/templates-bs2/snippets/package_list.html
    R ckan/templates-bs2/snippets/popular.html
    R ckan/templates-bs2/snippets/private.html
    R ckan/templates-bs2/snippets/search_form.html
    R ckan/templates-bs2/snippets/search_result_text.html
    R ckan/templates-bs2/snippets/simple_search.html
    R ckan/templates-bs2/snippets/social.html
    R ckan/templates-bs2/snippets/sort_by.html
    R ckan/templates-bs2/snippets/subscribe.html
    R ckan/templates-bs2/snippets/tag_list.html
    R ckan/templates-bs2/tag/index.html
    R ckan/templates-bs2/tests/broken_helper_as_attribute.html
    R ckan/templates-bs2/tests/broken_helper_as_item.html
    R ckan/templates-bs2/tests/flash_messages.html
    R ckan/templates-bs2/tests/helper_as_attribute.html
    R ckan/templates-bs2/tests/helper_as_item.html
    R ckan/templates-bs2/tests/mock_json_resource_preview_template.html
    R ckan/templates-bs2/tests/mock_resource_preview_template.html
    R ckan/templates-bs2/user/activity_stream.html
    R ckan/templates-bs2/user/dashboard.html
    R ckan/templates-bs2/user/dashboard_datasets.html
    R ckan/templates-bs2/user/dashboard_groups.html
    R ckan/templates-bs2/user/dashboard_organizations.html
    R ckan/templates-bs2/user/edit.html
    R ckan/templates-bs2/user/edit_base.html
    R ckan/templates-bs2/user/edit_user_form.html
    R ckan/templates-bs2/user/followers.html
    R ckan/templates-bs2/user/list.html
    R ckan/templates-bs2/user/login.html
    R ckan/templates-bs2/user/logout.html
    R ckan/templates-bs2/user/logout_first.html
    R ckan/templates-bs2/user/new.html
    R ckan/templates-bs2/user/new_user_form.html
    R ckan/templates-bs2/user/perform_reset.html
    R ckan/templates-bs2/user/read.html
    R ckan/templates-bs2/user/read_base.html
    R ckan/templates-bs2/user/request_reset.html
    R ckan/templates-bs2/user/snippets/followee_dropdown.html
    R ckan/templates-bs2/user/snippets/followers.html
    R ckan/templates-bs2/user/snippets/login_form.html
    R ckan/templates-bs2/user/snippets/recaptcha.html
    R ckan/templates-bs2/user/snippets/user_search.html
    M ckan/templates/base.html
    M ckan/templates/group/member_new.html
    M ckan/templates/organization/member_new.html
    M ckan/templates/organization/snippets/feeds.html
    M ckan/templates/package/changes.html
    M ckan/templates/package/new_resource.html
    M ckan/templates/package/resource_edit_base.html
    M ckan/templates/package/resource_views.html
    M ckan/templates/package/resources.html
    M ckan/templates/page.html
    M ckan/tests/controllers/test_package.py
    R ckan/tests/legacy/models/test_extras.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/logic/action/test_get.py
    A ckan/tests/model/test_package.py
    A ckan/tests/model/test_package_extra.py
    A ckan/tests/model/test_tags.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_none_root.py
    M ckan/views/api.py
    M ckan/views/dataset.py
    M ckan/views/group.py
    M ckan/views/user.py
    M ckanext/datapusher/logic/action.py
    M ckanext/datapusher/tests/test.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/tests/test_chained_auth_functions.py
    M ckanext/datastore/tests/test_create.py
    M ckanext/datatablesview/public/resource.config
    A ckanext/datatablesview/public/webassets.yml
    M ckanext/datatablesview/templates/datatables/datatables_view.html
    M ckanext/example_iconfigurer/tests/test_example_iconfigurer.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_toolkit.py
    A ckanext/example_theme_docs/v15_fanstatic/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v15_fanstatic/templates/base.html
    A ckanext/example_theme_docs/v16_initialize_a_javascript_module/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v16_initialize_a_javascript_module/templates/snippets/package_item.html
    A ckanext/example_theme_docs/v17_popover/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v17_popover/templates/snippets/package_item.html
    A ckanext/example_theme_docs/v18_snippet_api/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v18_snippet_api/templates/snippets/package_item.html
    A ckanext/example_theme_docs/v19_01_error/fanstatic/webassets.yml
    A ckanext/example_theme_docs/v19_02_error_handling/fanstatic/webassets.yml
    A ckanext/example_theme_docs/v20_pubsub/fanstatic/webassets.yml
    A ckanext/example_theme_docs/v21_custom_jquery_plugin/fanstatic/webassets.yml
    M ckanext/example_theme_docs/v21_custom_jquery_plugin/templates/snippets/package_item.html
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/__init__.py
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/fanstatic/example_theme.js
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/fanstatic/resource.config
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/fanstatic/webassets.yml
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/plugin.py
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/public/promoted-image.jpg
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/templates/base.html
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/templates/home
    A ckanext/example_theme_docs/v22_fanstatic_and_webassets/templates/snippets
    M ckanext/reclineview/plugin.py
    M ckanext/reclineview/theme/public/recline_view.js
    M ckanext/reclineview/theme/public/resource.config
    A ckanext/reclineview/theme/public/webassets.yml
    M ckanext/reclineview/theme/templates/recline_view.html
    A ckanext/stats/public/ckanext/stats/webassets.yml
    M ckanext/stats/templates/ckanext/stats/index.html
    M ckanext/textview/tests/test_view.py
    A ckanext/textview/theme/public/webassets.yml
    M ckanext/textview/theme/templates/text_view.html
    M doc/conf.py
    M doc/contributing/frontend/template-blocks.rst
    M doc/maintaining/configuration.rst
    M doc/user-guide.rst
    M requirements.in
    M requirements.txt
    M setup.py

  Log Message:
  -----------
  Merge branch 'master' into cli-user


  Commit: 6dea3b788480981748b8b8636472039646086498
      https://github.com/ckan/ckan/commit/6dea3b788480981748b8b8636472039646086498
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-07-12 (Fri, 12 Jul 2019)

  Changed paths:
    M ckan/logic/action/delete.py
    M ckan/templates/admin/base.html
    A ckan/templates/admin/trash.html
    M ckan/tests/controllers/test_admin.py
    M ckan/views/admin.py

  Log Message:
  -----------
  Add back the trash page - just purge the dataset, not its revisions


  Commit: 1cbf1fdc2baa94ff341293673aa454e624de5cb0
      https://github.com/ckan/ckan/commit/1cbf1fdc2baa94ff341293673aa454e624de5cb0
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-07-12 (Fri, 12 Jul 2019)

  Changed paths:
    M ckan/migration/revision_legacy_code.py

  Log Message:
  -----------
  PEP8


  Commit: b1a45906d03c1903ace9dc338bf6e53e23f94bc4
      https://github.com/ckan/ckan/commit/b1a45906d03c1903ace9dc338bf6e53e23f94bc4
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-07-12 (Fri, 12 Jul 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_group.py

  Log Message:
  -----------
  Fix test


  Commit: 27603fb95617098476e808e9ef1e11bfe6e551df
      https://github.com/ckan/ckan/commit/27603fb95617098476e808e9ef1e11bfe6e551df
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-07-12 (Fri, 12 Jul 2019)

  Changed paths:
    M Dockerfile
    M ckan/authz.py
    M ckan/config/environment.py
    M ckan/config/middleware/flask_app.py
    M ckan/lib/base.py
    M ckan/lib/cli.py
    M ckan/lib/create_test_data.py
    M ckan/lib/helpers.py
    M ckan/lib/webassets_tools.py
    M ckan/logic/action/create.py
    M ckan/logic/action/get.py
    M ckan/logic/auth/get.py
    M ckan/logic/schema.py
    M ckan/migration/revision_legacy_code.py
    M ckan/migration/versions/089_23c92480926e_package_activity_migration_check.py
    M ckan/pastertemplates/template/README.rst_tmpl
    M ckan/plugins/interfaces.py
    M ckan/plugins/toolkit.py
    M ckan/public/base/css/fuchsia.css
    M ckan/public/base/css/green.css
    M ckan/public/base/css/main.css
    M ckan/public/base/css/maroon.css
    M ckan/public/base/css/red.css
    M ckan/public/base/images/sprite-resource-icons.png
    M ckan/public/base/javascript/modules/followers-counter.js
    M ckan/public/base/javascript/modules/resource-reorder.js
    M ckan/public/base/less/icons.less
    M ckan/templates/group/member_new.html
    M ckan/templates/organization/member_new.html
    M ckan/templates/organization/snippets/feeds.html
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/model/test_package.py
    M ckan/views/api.py
    M ckan/views/user.py
    M ckanext/datapusher/logic/action.py
    M ckanext/datapusher/tests/test.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/tests/test_chained_auth_functions.py
    M ckanext/datastore/tests/test_create.py
    M ckanext/example_iconfigurer/tests/test_example_iconfigurer.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_toolkit.py
    M ckanext/reclineview/plugin.py
    M ckanext/reclineview/theme/public/recline_view.js
    M ckanext/reclineview/theme/public/webassets.yml
    M ckanext/reclineview/theme/templates/recline_view.html
    M doc/contributing/frontend/template-blocks.rst
    M doc/maintaining/configuration.rst
    M doc/user-guide.rst
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'master' into remove-vdm


  Commit: 3bffbd6758c0277023188c7cb9d2577d43e77842
      https://github.com/ckan/ckan/commit/3bffbd6758c0277023188c7cb9d2577d43e77842
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-07-12 (Fri, 12 Jul 2019)

  Changed paths:
    M ckan/tests/model/test_license.py

  Log Message:
  -----------
  Fix license test cleanup

This fixes a test error with these two tests in combination:

    nosetests --ckan --with-pylons=test-core.ini  ckan/tests/model/test_license.py:TestLicenseRegister.test_import_v1_style_register_i18n ckan/tests/model/test_package.py:TestPackage.test_create


  Commit: d21ceddc4676142bff5f194522255c3db0a4c902
      https://github.com/ckan/ckan/commit/d21ceddc4676142bff5f194522255c3db0a4c902
  Author: Konstantin Sivakov <konstantin.sivakov at gmail.com>
  Date:   2019-07-19 (Fri, 19 Jul 2019)

  Changed paths:
    M ckan/config/routing.py
    R ckan/controllers/util.py
    M ckan/templates/snippets/language_selector.html
    M ckan/tests/controllers/test_util.py
    M ckan/tests/model/test_license.py
    M ckan/views/dataset.py
    A ckan/views/util.py
    M doc/maintaining/installing/install-from-package.rst
    M doc/maintaining/installing/postgres.rst
    M doc/maintaining/installing/solr.rst

  Log Message:
  -----------
  Merge branch 'master' into cli-user


  Commit: 75a4899f921e8bccd7f783fe347b5f0ee99c7bb3
      https://github.com/ckan/ckan/commit/75a4899f921e8bccd7f783fe347b5f0ee99c7bb3
  Author: Konstantin Sivakov <konstantin.sivakov at gmail.com>
  Date:   2019-07-19 (Fri, 19 Jul 2019)

  Changed paths:
    M ckan/cli/cli.py
    M ckan/cli/user.py

  Log Message:
  -----------
  Add remove user command


  Commit: 5a034b8aaa33a9295f25109819613f6e0be166f3
      https://github.com/ckan/ckan/commit/5a034b8aaa33a9295f25109819613f6e0be166f3
  Author: Konstantin Sivakov <konstantin.sivakov at gmail.com>
  Date:   2019-07-19 (Fri, 19 Jul 2019)

  Changed paths:
    M .circleci/config.yml

  Log Message:
  -----------
  Merge branch 'master' into cli-user


  Commit: 2a48be21f3fedaa82246807f33d886b00a1ceed7
      https://github.com/ckan/ckan/commit/2a48be21f3fedaa82246807f33d886b00a1ceed7
  Author: Konstantin Sivakov <konstantin.sivakov at gmail.com>
  Date:   2019-07-19 (Fri, 19 Jul 2019)

  Changed paths:
    M ckan/cli/user.py

  Log Message:
  -----------
  Set new password, added


  Commit: 1d921ba3758ebd577db05ed5a447d30ab021a196
      https://github.com/ckan/ckan/commit/1d921ba3758ebd577db05ed5a447d30ab021a196
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-10 (Tue, 10 Sep 2019)

  Changed paths:
    A ckanext/resourceproxy/blueprint.py
    M ckanext/resourceproxy/plugin.py
    M ckanext/resourceproxy/tests/test_proxy.py

  Log Message:
  -----------
  ResourceProxy Controller -> Blueprint


  Commit: b08db790406733346cffc112a50ec5070f63235c
      https://github.com/ckan/ckan/commit/b08db790406733346cffc112a50ec5070f63235c
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-10 (Tue, 10 Sep 2019)

  Changed paths:
    M ckan/tests/legacy/test_coding_standards.py
    M ckanext/resourceproxy/plugin.py

  Log Message:
  -----------
  Drop resourceproxy/plugin from pep8 blacklist


  Commit: a1564a6ec3315065744a46055ab231a4fd96087d
      https://github.com/ckan/ckan/commit/a1564a6ec3315065744a46055ab231a4fd96087d
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-10 (Tue, 10 Sep 2019)

  Changed paths:
    M ckanext/resourceproxy/plugin.py
    M ckanext/textview/tests/test_view.py

  Log Message:
  -----------
  Do not modify resource url if proxy not enabled


  Commit: 0fe14b220792f7ca256af77335f9ee34801e6fe6
      https://github.com/ckan/ckan/commit/0fe14b220792f7ca256af77335f9ee34801e6fe6
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-10 (Tue, 10 Sep 2019)

  Changed paths:
    M ckanext/resourceproxy/blueprint.py

  Log Message:
  -----------
  Prepare urlsplit to py3


  Commit: 68d8738f983ef516257d6c7a2260ea48f47a8142
      https://github.com/ckan/ckan/commit/68d8738f983ef516257d6c7a2260ea48f47a8142
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-13 (Fri, 13 Sep 2019)

  Changed paths:
    M ckan/config/environment.py
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/common_middleware.py
    M ckan/config/middleware/flask_app.py
    M ckan/controllers/api.py
    M ckan/controllers/feed.py
    M ckan/controllers/group.py
    M ckan/controllers/package.py
    M ckan/lib/captcha.py
    M ckan/lib/datapreview.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/helpers.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/common.py
    M ckan/logic/validators.py
    M ckan/model/license.py
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    R ckan/tests/legacy/misc/test_sync.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckanext/datapusher/logic/action.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datatablesview/controller.py
    M ckanext/resourceproxy/controller.py
    M ckanext/resourceproxy/plugin.py
    M ckanext/textview/tests/test_view.py

  Log Message:
  -----------
  Merge upstream'


  Commit: c5654ba6dc6d5a6bafb90731df0ddf070f801cbf
      https://github.com/ckan/ckan/commit/c5654ba6dc6d5a6bafb90731df0ddf070f801cbf
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-13 (Fri, 13 Sep 2019)

  Changed paths:
    R ckanext/resourceproxy/controller.py

  Log Message:
  -----------
  Remove resourceproxy controller


  Commit: 31852d254c3671f76569d6f2334ca1b0fd981339
      https://github.com/ckan/ckan/commit/31852d254c3671f76569d6f2334ca1b0fd981339
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-13 (Fri, 13 Sep 2019)

  Changed paths:
    R ckanext/datastore/controller.py

  Log Message:
  -----------
  Remove datastore controller


  Commit: f0c4f837fabcb87ccfbb45ea9471c365fbfe7dbb
      https://github.com/ckan/ckan/commit/f0c4f837fabcb87ccfbb45ea9471c365fbfe7dbb
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-13 (Fri, 13 Sep 2019)

  Changed paths:
    M ckan/tests/test_coding_standards.py
    M ckanext/datastore/tests/test_dump.py

  Log Message:
  -----------
  Fix tests


  Commit: 1193aa67b318cd1f4693514e00a50de88c8df04c
      https://github.com/ckan/ckan/commit/1193aa67b318cd1f4693514e00a50de88c8df04c
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-19 (Thu, 19 Sep 2019)

  Changed paths:
    M ckan/tests/legacy/test_coding_standards.py
    A ckanext/stats/blueprint.py
    R ckanext/stats/controller.py
    M ckanext/stats/plugin.py
    M ckanext/stats/stats.py
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'master' into resourceproxy-blueprint


  Commit: 7587ca20d715242a8b7f50300b329416fdfd67bc
      https://github.com/ckan/ckan/commit/7587ca20d715242a8b7f50300b329416fdfd67bc
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-19 (Thu, 19 Sep 2019)

  Changed paths:
    M ckan/cli/datastore.py
    A ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    M ckanext/datastore/plugin.py
    R ckanext/datastore/view.py

  Log Message:
  -----------
  rename datastore.view to datastore.blueprint


  Commit: 5e6424faa8d221dc5eb9d4d74bba2f74c673032a
      https://github.com/ckan/ckan/commit/5e6424faa8d221dc5eb9d4d74bba2f74c673032a
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-19 (Thu, 19 Sep 2019)

  Changed paths:
    R ckanext/example_iconfigurer/controller.py

  Log Message:
  -----------
  remove iconfigurer.controller because blacklist for pep8 update


  Commit: 9b8b2a378cb592b1d2382d12869c92898d61d84a
      https://github.com/ckan/ckan/commit/9b8b2a378cb592b1d2382d12869c92898d61d84a
  Author: amercader <amercadero at gmail.com>
  Date:   2019-09-20 (Fri, 20 Sep 2019)

  Changed paths:
    M .circleci/config.yml
    M CHANGELOG.rst
    M ckan/authz.py
    M ckan/cli/cli.py
    M ckan/cli/datastore.py
    A ckan/cli/less.py
    A ckan/cli/minify.py
    A ckan/cli/notify.py
    A ckan/cli/plugin_info.py
    A ckan/cli/tracking.py
    M ckan/common.py
    M ckan/config/deployment.ini_tmpl
    M ckan/config/environment.py
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/common_middleware.py
    M ckan/config/middleware/flask_app.py
    M ckan/config/middleware/pylons_app.py
    M ckan/config/routing.py
    M ckan/config/who.ini
    M ckan/controllers/api.py
    M ckan/controllers/feed.py
    M ckan/controllers/group.py
    M ckan/controllers/package.py
    M ckan/controllers/user.py
    R ckan/controllers/util.py
    A ckan/i18n/am/LC_MESSAGES/ckan.mo
    A ckan/i18n/am/LC_MESSAGES/ckan.po
    M ckan/i18n/ar/LC_MESSAGES/ckan.po
    M ckan/i18n/bg/LC_MESSAGES/ckan.po
    M ckan/i18n/ca/LC_MESSAGES/ckan.po
    M ckan/i18n/ckan.pot
    M ckan/i18n/cs_CZ/LC_MESSAGES/ckan.po
    M ckan/i18n/da_DK/LC_MESSAGES/ckan.po
    M ckan/i18n/de/LC_MESSAGES/ckan.po
    M ckan/i18n/el/LC_MESSAGES/ckan.po
    M ckan/i18n/en_AU/LC_MESSAGES/ckan.po
    M ckan/i18n/en_GB/LC_MESSAGES/ckan.po
    M ckan/i18n/es/LC_MESSAGES/ckan.po
    M ckan/i18n/es_AR/LC_MESSAGES/ckan.po
    A ckan/i18n/eu/LC_MESSAGES/ckan.mo
    A ckan/i18n/eu/LC_MESSAGES/ckan.po
    M ckan/i18n/fa_IR/LC_MESSAGES/ckan.po
    M ckan/i18n/fi/LC_MESSAGES/ckan.mo
    M ckan/i18n/fi/LC_MESSAGES/ckan.po
    M ckan/i18n/fr/LC_MESSAGES/ckan.po
    M ckan/i18n/gl/LC_MESSAGES/ckan.po
    M ckan/i18n/he/LC_MESSAGES/ckan.po
    M ckan/i18n/hr/LC_MESSAGES/ckan.po
    M ckan/i18n/hu/LC_MESSAGES/ckan.po
    M ckan/i18n/id/LC_MESSAGES/ckan.po
    M ckan/i18n/is/LC_MESSAGES/ckan.po
    M ckan/i18n/it/LC_MESSAGES/ckan.po
    M ckan/i18n/ja/LC_MESSAGES/ckan.po
    M ckan/i18n/km/LC_MESSAGES/ckan.po
    M ckan/i18n/ko_KR/LC_MESSAGES/ckan.po
    M ckan/i18n/lt/LC_MESSAGES/ckan.po
    M ckan/i18n/lv/LC_MESSAGES/ckan.po
    M ckan/i18n/mk/LC_MESSAGES/ckan.po
    M ckan/i18n/mn_MN/LC_MESSAGES/ckan.po
    M ckan/i18n/nl/LC_MESSAGES/ckan.po
    M ckan/i18n/no/LC_MESSAGES/ckan.mo
    M ckan/i18n/no/LC_MESSAGES/ckan.po
    M ckan/i18n/pl/LC_MESSAGES/ckan.po
    M ckan/i18n/pt_BR/LC_MESSAGES/ckan.mo
    M ckan/i18n/pt_BR/LC_MESSAGES/ckan.po
    M ckan/i18n/pt_PT/LC_MESSAGES/ckan.po
    M ckan/i18n/ro/LC_MESSAGES/ckan.mo
    M ckan/i18n/ro/LC_MESSAGES/ckan.po
    M ckan/i18n/ru/LC_MESSAGES/ckan.mo
    M ckan/i18n/ru/LC_MESSAGES/ckan.po
    M ckan/i18n/sk/LC_MESSAGES/ckan.po
    M ckan/i18n/sl/LC_MESSAGES/ckan.po
    M ckan/i18n/sq/LC_MESSAGES/ckan.po
    M ckan/i18n/sr/LC_MESSAGES/ckan.po
    M ckan/i18n/sr_Latn/LC_MESSAGES/ckan.mo
    M ckan/i18n/sr_Latn/LC_MESSAGES/ckan.po
    M ckan/i18n/sv/LC_MESSAGES/ckan.mo
    M ckan/i18n/sv/LC_MESSAGES/ckan.po
    M ckan/i18n/th/LC_MESSAGES/ckan.po
    M ckan/i18n/tr/LC_MESSAGES/ckan.mo
    M ckan/i18n/tr/LC_MESSAGES/ckan.po
    M ckan/i18n/uk/LC_MESSAGES/ckan.po
    M ckan/i18n/uk_UA/LC_MESSAGES/ckan.po
    M ckan/i18n/vi/LC_MESSAGES/ckan.po
    M ckan/i18n/zh_CN/LC_MESSAGES/ckan.po
    M ckan/i18n/zh_TW/LC_MESSAGES/ckan.po
    M ckan/lib/activity_streams_session_extension.py
    M ckan/lib/app_globals.py
    R ckan/lib/auth_tkt.py
    M ckan/lib/captcha.py
    A ckan/lib/changes.py
    M ckan/lib/cli.py
    M ckan/lib/datapreview.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/mailer.py
    A ckan/lib/repoze_plugins/__init__.py
    A ckan/lib/repoze_plugins/auth_tkt.py
    A ckan/lib/repoze_plugins/friendly_form.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/common.py
    M ckan/lib/search/index.py
    M ckan/lib/search/query.py
    M ckan/logic/__init__.py
    M ckan/logic/action/create.py
    M ckan/logic/action/get.py
    M ckan/logic/action/patch.py
    M ckan/logic/action/update.py
    M ckan/logic/auth/get.py
    M ckan/logic/validators.py
    A ckan/migration/versions/091_0ffc0b277141_group_extra_group_id_index.py
    A ckan/migration/versions/092_01afcadbd8c0_resource_package_id_index.py
    M ckan/model/license.py
    M ckan/model/meta.py
    M ckan/plugins/core.py
    M ckan/plugins/interfaces.py
    M ckan/plugins/toolkit.py
    M ckan/public/base/css/main.css
    M ckan/public/base/css/webassets.yml
    A ckan/public/base/javascript/modules/metadata-button.js
    M ckan/public/base/javascript/webassets.yml
    M ckan/public/base/less/activity.less
    M ckan/public/base/vendor/select2/select2.js
    M ckan/templates/group/edit_base.html
    M ckan/templates/group/read_base.html
    M ckan/templates/organization/edit_base.html
    M ckan/templates/organization/read_base.html
    M ckan/templates/package/changes.html
    M ckan/templates/package/edit_base.html
    M ckan/templates/package/read_base.html
    M ckan/templates/package/resource_edit_base.html
    M ckan/templates/package/resource_read.html
    A ckan/templates/package/snippets/change_item.html
    A ckan/templates/snippets/changes/author.html
    A ckan/templates/snippets/changes/author_email.html
    A ckan/templates/snippets/changes/delete_resource.html
    A ckan/templates/snippets/changes/extension_fields.html
    A ckan/templates/snippets/changes/extra_fields.html
    A ckan/templates/snippets/changes/license.html
    A ckan/templates/snippets/changes/maintainer.html
    A ckan/templates/snippets/changes/maintainer_email.html
    A ckan/templates/snippets/changes/name.html
    A ckan/templates/snippets/changes/new_file.html
    A ckan/templates/snippets/changes/new_resource.html
    A ckan/templates/snippets/changes/no_change.html
    A ckan/templates/snippets/changes/notes.html
    A ckan/templates/snippets/changes/org.html
    A ckan/templates/snippets/changes/private.html
    A ckan/templates/snippets/changes/resource_desc.html
    A ckan/templates/snippets/changes/resource_extras.html
    A ckan/templates/snippets/changes/resource_format.html
    A ckan/templates/snippets/changes/resource_name.html
    A ckan/templates/snippets/changes/tags.html
    A ckan/templates/snippets/changes/title.html
    A ckan/templates/snippets/changes/url.html
    A ckan/templates/snippets/changes/version.html
    M ckan/templates/snippets/language_selector.html
    M ckan/templates/user/dashboard.html
    M ckan/templates/user/read_base.html
    M ckan/tests/config/test_middleware.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_util.py
    M ckan/tests/helpers.py
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/functional/test_preview_interface.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/legacy/test_plugins.py
    M ckan/tests/lib/test_auth_tkt.py
    A ckan/tests/lib/test_changes.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/views/__init__.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckan/views/home.py
    M ckan/views/user.py
    A ckan/views/util.py
    M ckanext/datapusher/logic/action.py
    M ckanext/datapusher/tests/test.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/commands.py
    M ckanext/datastore/helpers.py
    M ckanext/datastore/plugin.py
    M ckanext/datastore/templates-bs2/datastore/dictionary.html
    M ckanext/datastore/templates-bs2/package/resource_edit_base.html
    M ckanext/datastore/templates/datastore/dictionary.html
    M ckanext/datastore/templates/package/resource_edit_base.html
    M ckanext/datastore/tests/helpers.py
    M ckanext/datastore/tests/test_db.py
    M ckanext/datastore/tests/test_dictionary.py
    M ckanext/datastore/tests/test_info.py
    M ckanext/datastore/tests/test_search.py
    A ckanext/datastore/view.py
    A ckanext/datatablesview/blueprint.py
    R ckanext/datatablesview/controller.py
    M ckanext/datatablesview/plugin.py
    A ckanext/datatablesview/public/datatables_view.css
    M ckanext/datatablesview/public/webassets.yml
    M ckanext/datatablesview/templates/datatables/datatables_view.html
    M ckanext/example_flask_iblueprint/plugin.py
    M ckanext/example_flask_iblueprint/tests/test_routes.py
    A ckanext/example_iconfigurer/blueprint.py
    R ckanext/example_iconfigurer/controller.py
    M ckanext/example_iconfigurer/plugin.py
    M ckanext/example_iconfigurer/tests/test_example_iconfigurer.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_update_config.py
    M ckanext/example_idatasetform/tests/test_controllers.py
    M ckanext/example_iuploader/test/test_plugin.py
    M ckanext/multilingual/tests/test_multilingual_plugin.py
    M ckanext/reclineview/plugin.py
    M ckanext/resourceproxy/controller.py
    M ckanext/resourceproxy/plugin.py
    A ckanext/stats/blueprint.py
    R ckanext/stats/controller.py
    M ckanext/stats/plugin.py
    M ckanext/stats/stats.py
    M ckanext/textview/tests/test_view.py
    M doc/maintaining/installing/deployment.rst
    M doc/maintaining/installing/index.rst
    M doc/maintaining/installing/install-from-docker-compose.rst
    M doc/maintaining/installing/install-from-package.rst
    M doc/maintaining/installing/install-from-source.rst
    M doc/maintaining/installing/postgres.rst
    M doc/maintaining/installing/solr.rst
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'master' into remove-vdm


  Commit: f36dd8c9b239f31b36c1e157ee42c03685a16a90
      https://github.com/ckan/ckan/commit/f36dd8c9b239f31b36c1e157ee42c03685a16a90
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-23 (Mon, 23 Sep 2019)

  Changed paths:
    M ckan/lib/dictization/model_dictize.py
    A ckan/migration/versions/091_0ffc0b277141_group_extra_group_id_index.py
    A ckan/migration/versions/092_01afcadbd8c0_resource_package_id_index.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    A ckanext/datatablesview/blueprint.py
    R ckanext/datatablesview/controller.py
    M ckanext/datatablesview/plugin.py
    A ckanext/datatablesview/public/datatables_view.css
    M ckanext/datatablesview/public/webassets.yml
    M ckanext/datatablesview/templates/datatables/datatables_view.html
    A ckanext/example_iconfigurer/blueprint.py
    M ckanext/example_iconfigurer/plugin.py
    M ckanext/example_iconfigurer/tests/test_example_iconfigurer.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_update_config.py

  Log Message:
  -----------
  Merge branch 'master' into resourceproxy-blueprint


  Commit: 239e4eae4641905efafedaa68f487acf174fefb9
      https://github.com/ckan/ckan/commit/239e4eae4641905efafedaa68f487acf174fefb9
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-24 (Tue, 24 Sep 2019)

  Changed paths:
    M .circleci/config.yml
    M ckan/common.py
    M ckan/model/__init__.py
    A ckan/pytest_load_config.py
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/functional/test_tracking.py
    A conftest.py
    M dev-requirements.txt
    M setup.cfg

  Log Message:
  -----------
  Install pytest/replicate existing workflos


  Commit: 3be143bfcd8c52b4d68d699cdcd1764e0d11d480
      https://github.com/ckan/ckan/commit/3be143bfcd8c52b4d68d699cdcd1764e0d11d480
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-24 (Tue, 24 Sep 2019)

  Changed paths:
    M .circleci/config.yml
    M ckan/tests/legacy/functional/api/test_email_notifications.py

  Log Message:
  -----------
  Fixed test order


  Commit: 2e59b902aad23eb776c158cb265d59907ef6a4bd
      https://github.com/ckan/ckan/commit/2e59b902aad23eb776c158cb265d59907ef6a4bd
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-24 (Tue, 24 Sep 2019)

  Changed paths:
    R ckan/pytest_load_config.py
    M ckan/tests/config/test_middleware.py
    A ckan/tests/pytest/__init__.py
    A ckan/tests/pytest/ckan_setup.py
    A ckan/tests/pytest/fixtures.py
    M conftest.py

  Log Message:
  -----------
  play with new test style


  Commit: f1d921df8777cdeb407ac4d67ca6936526b83ba9
      https://github.com/ckan/ckan/commit/f1d921df8777cdeb407ac4d67ca6936526b83ba9
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-26 (Thu, 26 Sep 2019)

  Changed paths:
    M ckan/tests/config/test_middleware.py
    M ckan/tests/pytest/fixtures.py
    M ckan/tests/test_coding_standards.py
    M setup.cfg

  Log Message:
  -----------
  Rewrite test_middleware to pytest


  Commit: 36753a211f20973a6d3fcb572dd1e3391760edcf
      https://github.com/ckan/ckan/commit/36753a211f20973a6d3fcb572dd1e3391760edcf
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-26 (Thu, 26 Sep 2019)

  Changed paths:
    M ckan/tests/config/test_middleware.py
    M ckan/tests/pytest/fixtures.py
    A ckanext/datastore/tests/conftest.py
    M ckanext/datastore/tests/test_create.py

  Log Message:
  -----------
  Fix datastore_create tests


  Commit: 168f2129a93b905650a47c838f0288b1b8bc573b
      https://github.com/ckan/ckan/commit/168f2129a93b905650a47c838f0288b1b8bc573b
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-26 (Thu, 26 Sep 2019)

  Changed paths:
    M ckan/templates/organization/member_new.html
    M doc/contributing/test.rst

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: 5729e94b3f9834b16a2771153fc6822e277c2a32
      https://github.com/ckan/ckan/commit/5729e94b3f9834b16a2771153fc6822e277c2a32
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-26 (Thu, 26 Sep 2019)

  Changed paths:
    M ckan/tests/legacy/logic/test_member.py

  Log Message:
  -----------
  Fix legacy_member tests


  Commit: ca4464ab1de2a8cb51a4f9254725d6f8da0b80b9
      https://github.com/ckan/ckan/commit/ca4464ab1de2a8cb51a4f9254725d6f8da0b80b9
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-26 (Thu, 26 Sep 2019)

  Changed paths:
    M ckan/logic/action/update.py
    M ckan/tests/legacy/logic/test_action.py

  Log Message:
  -----------
  Fix legacy_action tests


  Commit: d223448e106050402c7d2809e63060e293ba6607
      https://github.com/ckan/ckan/commit/d223448e106050402c7d2809e63060e293ba6607
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-27 (Fri, 27 Sep 2019)

  Changed paths:
    M .circleci/config.yml
    M ckan/tests/config/test_middleware.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/legacy/functional/api/test_email_notifications.py
    M ckan/tests/legacy/functional/api/test_follow.py
    M ckan/tests/legacy/lib/test_cli.py
    M ckan/tests/legacy/logic/test_auth.py
    M ckanext/datastore/tests/conftest.py
    M ckanext/datastore/tests/test_create.py
    M ckanext/datastore/tests/test_disable.py
    M setup.cfg

  Log Message:
  -----------
  Merge some of stateful tests


  Commit: 68b4eec4378487b6f4f3533afc2674264ee12234
      https://github.com/ckan/ckan/commit/68b4eec4378487b6f4f3533afc2674264ee12234
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-27 (Fri, 27 Sep 2019)

  Changed paths:
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/models/test_package_relationships.py

  Log Message:
  -----------
  Merge more stateful tests


  Commit: 6e4765a6dcb662b32789fb3e657bb8e1b3052909
      https://github.com/ckan/ckan/commit/6e4765a6dcb662b32789fb3e657bb8e1b3052909
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-28 (Sat, 28 Sep 2019)

  Changed paths:
    M ckan/tests/legacy/functional/api/test_email_notifications.py
    M ckan/tests/legacy/functional/test_preview_interface.py

  Log Message:
  -----------
  Merge more legacy email_notification statefultests


  Commit: fcef79f905923ccf60bf7e7589fe618e52326ed4
      https://github.com/ckan/ckan/commit/fcef79f905923ccf60bf7e7589fe618e52326ed4
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-28 (Sat, 28 Sep 2019)

  Changed paths:
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/test_plugins.py

  Log Message:
  -----------
  Made some alterations in legacy auth/plugin tests


  Commit: 4afac59f963fddffe02ab1ff552d62a9e0287e8e
      https://github.com/ckan/ckan/commit/4afac59f963fddffe02ab1ff552d62a9e0287e8e
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-09-28 (Sat, 28 Sep 2019)

  Changed paths:
    M ckan/tests/legacy/logic/test_action.py

  Log Message:
  -----------
  Merge few legacy action tests


  Commit: 06d0a3f347d458a84442b4b609fb18fd125e680d
      https://github.com/ckan/ckan/commit/06d0a3f347d458a84442b4b609fb18fd125e680d
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-01 (Tue, 01 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/logic/test_action.py
    M ckanext/datastore/tests/test_delete.py

  Log Message:
  -----------
  Continue with stateful tests...


  Commit: 6c84202ea50d557a0415dd06d6f94aa2a7ac93c2
      https://github.com/ckan/ckan/commit/6c84202ea50d557a0415dd06d6f94aa2a7ac93c2
  Author: Jari Voutilainen <jari.voutilainen at iki.fi>
  Date:   2019-10-07 (Mon, 07 Oct 2019)

  Changed paths:
    M ckan/public/base/javascript/modules/autocomplete.js

  Log Message:
  -----------
  Make creating new tags in autocomplete module optional


  Commit: b33a29d63470c0db61e819f04c336653b3a0ff75
      https://github.com/ckan/ckan/commit/b33a29d63470c0db61e819f04c336653b3a0ff75
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-08 (Tue, 08 Oct 2019)

  Changed paths:
    M ckan/lib/cli.py
    A ckanext/datapusher/blueprint.py
    M ckanext/datapusher/plugin.py
    M ckanext/datapusher/templates-bs2/datapusher/resource_data.html
    M ckanext/datapusher/templates-bs2/package/resource_edit_base.html
    M ckanext/datapusher/templates/datapusher/resource_data.html
    M ckanext/datapusher/templates/package/resource_edit_base.html
    M ckanext/datapusher/tests/test_controller.py
    M ckanext/datastore/tests/test_dictionary.py
    M ckanext/stats/blueprint.py
    M contrib/docker/postgresql/Dockerfile

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: 776a3e306007066de2e6f7bbc6782473f860a53c
      https://github.com/ckan/ckan/commit/776a3e306007066de2e6f7bbc6782473f860a53c
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-08 (Tue, 08 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/migration/test_revision_legacy_code.py

  Log Message:
  -----------
  And again i merged stateful tests


  Commit: d36d11548e9681d8bd9377e9a79ba2772c5e4e4d
      https://github.com/ckan/ckan/commit/d36d11548e9681d8bd9377e9a79ba2772c5e4e4d
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-09 (Wed, 09 Oct 2019)

  Changed paths:
    M ckan/tests/config/test_middleware.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/legacy/test_plugins.py
    M ckan/tests/pytest/fixtures.py
    A ckan/tests/pytest/test_fixtures.py
    M ckanext/datastore/tests/conftest.py
    M ckanext/datastore/tests/test_create.py
    M ckanext/datastore/tests/test_delete.py

  Log Message:
  -----------
  Add fixture tests


  Commit: acb1be02d73c48728c62ba383e4aa7953a0158e9
      https://github.com/ckan/ckan/commit/acb1be02d73c48728c62ba383e4aa7953a0158e9
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-09 (Wed, 09 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/model/test_user.py

  Log Message:
  -----------
  Guess, what i have done in this commit...


  Commit: 531cad36df8d71644616cdb4ff516248c51ef25d
      https://github.com/ckan/ckan/commit/531cad36df8d71644616cdb4ff516248c51ef25d
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-09 (Wed, 09 Oct 2019)

  Changed paths:
    M ckanext/example_flask_streaming/tests/test_streaming_responses.py

  Log Message:
  -----------
  Adapt flask_streaming_responses tests


  Commit: 0d602fdfa6821ba2573b95ad1bc14a13a6e8922e
      https://github.com/ckan/ckan/commit/0d602fdfa6821ba2573b95ad1bc14a13a6e8922e
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-10 (Thu, 10 Oct 2019)

  Changed paths:
    M ckan/tests/config/test_middleware.py
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/legacy/test_plugins.py

  Log Message:
  -----------
  Fix pagination tests


  Commit: 6d773e226fd47606c82cfd4ca92fe883cb0aff61
      https://github.com/ckan/ckan/commit/6d773e226fd47606c82cfd4ca92fe883cb0aff61
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-10 (Thu, 10 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/pytest/fixtures.py

  Log Message:
  -----------
  Reduce number of stateful tests


  Commit: 09f5f85416594be6311316ca23dd2551e170352f
      https://github.com/ckan/ckan/commit/09f5f85416594be6311316ca23dd2551e170352f
  Author: Konstantin Sivakov <konstantin.sivakov at gmail.com>
  Date:   2019-10-10 (Thu, 10 Oct 2019)

  Changed paths:
    M .travis.yml
    M CHANGELOG.rst
    M ckan/authz.py
    M ckan/cli/cli.py
    M ckan/cli/datastore.py
    A ckan/cli/generate.py
    A ckan/cli/less.py
    A ckan/cli/minify.py
    A ckan/cli/notify.py
    A ckan/cli/tracking.py
    M ckan/common.py
    M ckan/config/environment.py
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/common_middleware.py
    M ckan/config/middleware/flask_app.py
    M ckan/config/middleware/pylons_app.py
    M ckan/config/who.ini
    M ckan/controllers/api.py
    M ckan/controllers/feed.py
    M ckan/controllers/group.py
    M ckan/controllers/package.py
    M ckan/controllers/user.py
    M ckan/i18n/ckan.pot
    M ckan/lib/activity_streams_session_extension.py
    M ckan/lib/app_globals.py
    R ckan/lib/auth_tkt.py
    M ckan/lib/captcha.py
    A ckan/lib/changes.py
    M ckan/lib/cli.py
    M ckan/lib/datapreview.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/mailer.py
    A ckan/lib/repoze_plugins/__init__.py
    A ckan/lib/repoze_plugins/auth_tkt.py
    A ckan/lib/repoze_plugins/friendly_form.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/common.py
    M ckan/lib/search/index.py
    M ckan/lib/search/query.py
    M ckan/logic/action/create.py
    M ckan/logic/action/get.py
    M ckan/logic/action/patch.py
    M ckan/logic/action/update.py
    M ckan/logic/auth/get.py
    M ckan/logic/validators.py
    A ckan/migration/versions/091_0ffc0b277141_group_extra_group_id_index.py
    A ckan/migration/versions/092_01afcadbd8c0_resource_package_id_index.py
    M ckan/model/license.py
    M ckan/model/meta.py
    M ckan/plugins/core.py
    M ckan/plugins/toolkit.py
    M ckan/public/base/css/main.css
    A ckan/public/base/javascript/modules/metadata-button.js
    M ckan/public/base/javascript/webassets.yml
    M ckan/public/base/less/activity.less
    M ckan/public/base/vendor/select2/select2.js
    M ckan/templates/group/edit_base.html
    M ckan/templates/group/read_base.html
    M ckan/templates/organization/edit_base.html
    M ckan/templates/organization/member_new.html
    M ckan/templates/organization/read_base.html
    M ckan/templates/package/changes.html
    M ckan/templates/package/edit_base.html
    M ckan/templates/package/read_base.html
    M ckan/templates/package/resource_edit_base.html
    M ckan/templates/package/resource_read.html
    A ckan/templates/package/snippets/change_item.html
    A ckan/templates/snippets/changes/author.html
    A ckan/templates/snippets/changes/author_email.html
    A ckan/templates/snippets/changes/delete_resource.html
    A ckan/templates/snippets/changes/extension_fields.html
    A ckan/templates/snippets/changes/extra_fields.html
    A ckan/templates/snippets/changes/license.html
    A ckan/templates/snippets/changes/maintainer.html
    A ckan/templates/snippets/changes/maintainer_email.html
    A ckan/templates/snippets/changes/name.html
    A ckan/templates/snippets/changes/new_file.html
    A ckan/templates/snippets/changes/new_resource.html
    A ckan/templates/snippets/changes/no_change.html
    A ckan/templates/snippets/changes/notes.html
    A ckan/templates/snippets/changes/org.html
    A ckan/templates/snippets/changes/private.html
    A ckan/templates/snippets/changes/resource_desc.html
    A ckan/templates/snippets/changes/resource_extras.html
    A ckan/templates/snippets/changes/resource_format.html
    A ckan/templates/snippets/changes/resource_name.html
    A ckan/templates/snippets/changes/tags.html
    A ckan/templates/snippets/changes/title.html
    A ckan/templates/snippets/changes/url.html
    A ckan/templates/snippets/changes/version.html
    M ckan/templates/user/dashboard.html
    M ckan/templates/user/read_base.html
    M ckan/tests/config/test_middleware.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/helpers.py
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/functional/test_preview_interface.py
    R ckan/tests/legacy/misc/test_sync.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/legacy/test_plugins.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/test_auth_tkt.py
    A ckan/tests/lib/test_changes.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/views/__init__.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckan/views/home.py
    M ckan/views/user.py
    A ckanext/datapusher/blueprint.py
    M ckanext/datapusher/logic/action.py
    M ckanext/datapusher/plugin.py
    M ckanext/datapusher/templates-bs2/datapusher/resource_data.html
    M ckanext/datapusher/templates-bs2/package/resource_edit_base.html
    M ckanext/datapusher/templates/datapusher/resource_data.html
    M ckanext/datapusher/templates/package/resource_edit_base.html
    M ckanext/datapusher/tests/test.py
    M ckanext/datapusher/tests/test_controller.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/commands.py
    M ckanext/datastore/helpers.py
    M ckanext/datastore/plugin.py
    M ckanext/datastore/templates-bs2/datastore/dictionary.html
    M ckanext/datastore/templates-bs2/package/resource_edit_base.html
    M ckanext/datastore/templates/datastore/dictionary.html
    M ckanext/datastore/templates/package/resource_edit_base.html
    M ckanext/datastore/tests/helpers.py
    M ckanext/datastore/tests/test_db.py
    M ckanext/datastore/tests/test_dictionary.py
    M ckanext/datastore/tests/test_info.py
    M ckanext/datastore/tests/test_search.py
    A ckanext/datastore/view.py
    A ckanext/datatablesview/blueprint.py
    R ckanext/datatablesview/controller.py
    M ckanext/datatablesview/plugin.py
    A ckanext/datatablesview/public/datatables_view.css
    M ckanext/datatablesview/public/webassets.yml
    M ckanext/datatablesview/templates/datatables/datatables_view.html
    M ckanext/example_flask_iblueprint/plugin.py
    M ckanext/example_flask_iblueprint/tests/test_routes.py
    A ckanext/example_iconfigurer/blueprint.py
    R ckanext/example_iconfigurer/controller.py
    M ckanext/example_iconfigurer/plugin.py
    M ckanext/example_iconfigurer/tests/test_example_iconfigurer.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_update_config.py
    M ckanext/example_idatasetform/tests/test_controllers.py
    M ckanext/example_iuploader/test/test_plugin.py
    M ckanext/multilingual/tests/test_multilingual_plugin.py
    M ckanext/reclineview/plugin.py
    M ckanext/resourceproxy/controller.py
    M ckanext/resourceproxy/plugin.py
    A ckanext/stats/blueprint.py
    R ckanext/stats/controller.py
    M ckanext/stats/plugin.py
    M ckanext/stats/stats.py
    M ckanext/textview/tests/test_view.py
    A contrib/cookiecutter/ckan_extension/.travis.yml
    A contrib/cookiecutter/ckan_extension/LICENSE
    A contrib/cookiecutter/ckan_extension/README.md
    A contrib/cookiecutter/ckan_extension/cookiecutter.json
    A contrib/cookiecutter/ckan_extension/hooks/post_gen_project.py
    A contrib/cookiecutter/ckan_extension/hooks/pre_gen_project.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/.coveragerc
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/.travis.yml
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/LICENSE
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/MANIFEST.in
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/README.rst
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-build.bash
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-run.sh
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/__init__.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/__init__.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/fanstatic/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/i18n/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/plugin.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/public/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/templates/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/tests/__init__.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/tests/test_plugin.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/dev-requirements.txt
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/requirements.txt
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/setup.cfg
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/setup.py
    M contrib/docker/postgresql/Dockerfile
    M dev-requirements.txt
    M doc/contributing/test.rst
    M doc/extensions/tutorial.rst
    M doc/maintaining/installing/deployment.rst
    M doc/maintaining/installing/index.rst
    M doc/maintaining/installing/install-from-docker-compose.rst
    M doc/maintaining/installing/install-from-package.rst
    M doc/maintaining/installing/install-from-source.rst
    M doc/maintaining/installing/solr.rst
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'master' into cli-user


  Commit: 1b62a9df7c3d7d218c07c0cae98bc567af1ba40d
      https://github.com/ckan/ckan/commit/1b62a9df7c3d7d218c07c0cae98bc567af1ba40d
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-11 (Fri, 11 Oct 2019)

  Changed paths:
    M .travis.yml
    M ckan/cli/cli.py
    A ckan/cli/generate.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_coding_standards.py
    A contrib/cookiecutter/ckan_extension/.travis.yml
    A contrib/cookiecutter/ckan_extension/LICENSE
    A contrib/cookiecutter/ckan_extension/README.md
    A contrib/cookiecutter/ckan_extension/cookiecutter.json
    A contrib/cookiecutter/ckan_extension/hooks/post_gen_project.py
    A contrib/cookiecutter/ckan_extension/hooks/pre_gen_project.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/.coveragerc
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/.travis.yml
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/LICENSE
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/MANIFEST.in
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/README.rst
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-build.bash
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-run.sh
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/__init__.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/__init__.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/fanstatic/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/i18n/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/plugin.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/public/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/templates/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/tests/__init__.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/tests/test_plugin.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/dev-requirements.txt
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/requirements.txt
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/setup.cfg
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/setup.py
    M dev-requirements.txt
    M doc/extensions/tutorial.rst

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: 84669b8fd6b6083e0e37c913686eb9dd233bbf65
      https://github.com/ckan/ckan/commit/84669b8fd6b6083e0e37c913686eb9dd233bbf65
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-11 (Fri, 11 Oct 2019)

  Changed paths:
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/model/test_user.py

  Log Message:
  -----------
  Switch to functions in user tests


  Commit: c452d5131363bab626442ae701cc45428b65b8e4
      https://github.com/ckan/ckan/commit/c452d5131363bab626442ae701cc45428b65b8e4
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-11 (Fri, 11 Oct 2019)

  Changed paths:
    M .circleci/config.yml

  Log Message:
  -----------
  Fix order of tests


  Commit: 3cb03aa9d1a03e6c9ae4527dbb81678b1103e479
      https://github.com/ckan/ckan/commit/3cb03aa9d1a03e6c9ae4527dbb81678b1103e479
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-11 (Fri, 11 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_package.py

  Log Message:
  -----------
  Reset db and index more frequently


  Commit: 8610b732467c2f886ce6215b77c6e2e41b34fa27
      https://github.com/ckan/ckan/commit/8610b732467c2f886ce6215b77c6e2e41b34fa27
  Author: shasan <shasan at marsdd.com>
  Date:   2019-10-11 (Fri, 11 Oct 2019)

  Changed paths:
    M ckan/lib/uploader.py

  Log Message:
  -----------
  Issue occurs when updating groups/organizations, it changes the saved filename for the file_url field when I'm not actually uploading a new file, just changing other metadata (such as description).  This effectively kills kills the uploaded image link for the organization/groups.


  Commit: e69a5038579a15957abb9f148949358de7ff58dc
      https://github.com/ckan/ckan/commit/e69a5038579a15957abb9f148949358de7ff58dc
  Author: shasan <shasan at marsdd.com>
  Date:   2019-10-11 (Fri, 11 Oct 2019)

  Changed paths:
    M ckan/lib/uploader.py

  Log Message:
  -----------
  Fixing pep-8 error


  Commit: 408f53a5161c9eace415cf2a08afc8e4403bbbc9
      https://github.com/ckan/ckan/commit/408f53a5161c9eace415cf2a08afc8e4403bbbc9
  Author: f-osorio <f.osorio at zbw.eu>
  Date:   2019-10-14 (Mon, 14 Oct 2019)

  Changed paths:
    M ckan/config/deployment.ini_tmpl

  Log Message:
  -----------
  [#4673] Add `reply_to` to ckan config


  Commit: 9f27f7b1f1415c0970f5fee961010c25ff4ca2a5
      https://github.com/ckan/ckan/commit/9f27f7b1f1415c0970f5fee961010c25ff4ca2a5
  Author: f-osorio <f.osorio at zbw.eu>
  Date:   2019-10-14 (Mon, 14 Oct 2019)

  Changed paths:
    M ckan/lib/mailer.py

  Log Message:
  -----------
  [#4673] Add `reply-to` to _mail_recipient

If `smtp.replay_to` is available in CKAN's config file, it'll be used
when notifications are sent.


  Commit: 027f291d941389558d4c6b2a97651779d43a57da
      https://github.com/ckan/ckan/commit/027f291d941389558d4c6b2a97651779d43a57da
  Author: f-osorio <f.osorio at zbw.eu>
  Date:   2019-10-14 (Mon, 14 Oct 2019)

  Changed paths:
    M ckan/tests/lib/test_mailer.py

  Log Message:
  -----------
  [#4673] Add test for 'reply-to'


  Commit: f2908cf335ad5dfb4312969caf4a49069b61b783
      https://github.com/ckan/ckan/commit/f2908cf335ad5dfb4312969caf4a49069b61b783
  Author: f-osorio <f.osorio at zbw.eu>
  Date:   2019-10-14 (Mon, 14 Oct 2019)

  Changed paths:
    M doc/maintaining/configuration.rst
    M doc/maintaining/email-notifications.rst

  Log Message:
  -----------
  [#4673] Update documentation to reflect addition


  Commit: e2e58db052e5d2a77b42540585d2fbcb0b2eb15b
      https://github.com/ckan/ckan/commit/e2e58db052e5d2a77b42540585d2fbcb0b2eb15b
  Author: shasan <shasan at marsdd.com>
  Date:   2019-10-15 (Tue, 15 Oct 2019)

  Changed paths:
    M ckan/lib/uploader.py

  Log Message:
  -----------
  Changed code in order to account for backwards compatibility with cgi.Fieldstorage


  Commit: 408982dce5c3aa23c8631dbe540b34aa46e0252b
      https://github.com/ckan/ckan/commit/408982dce5c3aa23c8631dbe540b34aa46e0252b
  Author: shasan <shasan at marsdd.com>
  Date:   2019-10-15 (Tue, 15 Oct 2019)

  Changed paths:
    M ckan/lib/uploader.py

  Log Message:
  -----------
  Changed code in order to account for backwards compatibility with cgi.Fieldstorage (correction code)


  Commit: 02c4c922a88b29292bb0ddcb134296c5afc7c23a
      https://github.com/ckan/ckan/commit/02c4c922a88b29292bb0ddcb134296c5afc7c23a
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-15 (Tue, 15 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/logic/action/test_create.py

  Log Message:
  -----------
  Update legacy package tests


  Commit: 9ce981764ace6b68a2af285d474b840c1d36b2cd
      https://github.com/ckan/ckan/commit/9ce981764ace6b68a2af285d474b840c1d36b2cd
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M .travis.yml
    M ckan/cli/cli.py
    A ckan/cli/generate.py
    M ckan/lib/cli.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/templates/organization/member_new.html
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/test_coding_standards.py
    A ckanext/datapusher/blueprint.py
    M ckanext/datapusher/plugin.py
    M ckanext/datapusher/templates-bs2/datapusher/resource_data.html
    M ckanext/datapusher/templates-bs2/package/resource_edit_base.html
    M ckanext/datapusher/templates/datapusher/resource_data.html
    M ckanext/datapusher/templates/package/resource_edit_base.html
    M ckanext/datapusher/tests/test_controller.py
    M ckanext/datastore/tests/test_dictionary.py
    M ckanext/stats/blueprint.py
    A contrib/cookiecutter/ckan_extension/.travis.yml
    A contrib/cookiecutter/ckan_extension/LICENSE
    A contrib/cookiecutter/ckan_extension/README.md
    A contrib/cookiecutter/ckan_extension/cookiecutter.json
    A contrib/cookiecutter/ckan_extension/hooks/post_gen_project.py
    A contrib/cookiecutter/ckan_extension/hooks/pre_gen_project.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/.coveragerc
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/.travis.yml
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/LICENSE
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/MANIFEST.in
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/README.rst
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-build.bash
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-run.sh
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/__init__.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/__init__.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/fanstatic/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/i18n/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/plugin.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/public/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/templates/.gitignore
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/tests/__init__.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/ckanext/{{cookiecutter.project_shortname}}/tests/test_plugin.py
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/dev-requirements.txt
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/requirements.txt
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/setup.cfg
    A contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/setup.py
    M contrib/docker/postgresql/Dockerfile
    M dev-requirements.txt
    M doc/contributing/test.rst
    M doc/extensions/tutorial.rst

  Log Message:
  -----------
  Merge branch 'master' into remove-vdm


  Commit: 7aa70a94de2a0ac979975dce079f15823a990f9e
      https://github.com/ckan/ckan/commit/7aa70a94de2a0ac979975dce079f15823a990f9e
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/logic/action/update.py

  Log Message:
  -----------
  Use user performing the action on activity context on user_update


  Commit: 3de60432a5e0ebfdca01e1de66c6c7cc86b4c748
      https://github.com/ckan/ckan/commit/3de60432a5e0ebfdca01e1de66c6c7cc86b4c748
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/tests/controllers/test_package.py

  Log Message:
  -----------
  Remove revision mention from test


  Commit: e5a08990bd36fe3db869af9f78a6bb7ff5f7d102
      https://github.com/ckan/ckan/commit/e5a08990bd36fe3db869af9f78a6bb7ff5f7d102
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/migration/env.py

  Log Message:
  -----------
  init_model expects an engine, not a connection


  Commit: 304878729bf11503f83ef3051b2431414d108894
      https://github.com/ckan/ckan/commit/304878729bf11503f83ef3051b2431414d108894
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    R ckan/tests/migration/__init__.py
    R ckan/tests/migration/test_migrate_package_activity.py
    R ckan/tests/migration/test_revision_legacy_code.py

  Log Message:
  -----------
  Remove migration tests for now


  Commit: c003166ac4f2071d45696e3edd37a2f9ed143e21
      https://github.com/ckan/ckan/commit/c003166ac4f2071d45696e3edd37a2f9ed143e21
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/update.py
    M ckan/model/meta.py

  Log Message:
  -----------
  Create dataset activities explicitly rather than with a SQLAlchemy session extension


  Commit: e4c8530e3ba5cfa16213eb1640ff3a8f8a2567f0
      https://github.com/ckan/ckan/commit/e4c8530e3ba5cfa16213eb1640ff3a8f8a2567f0
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/tests/logic/action/test_create.py

  Log Message:
  -----------
  Remove unbound revision


  Commit: 7ab81fb80c7c654231833f445d2a4224161db25e
      https://github.com/ckan/ckan/commit/7ab81fb80c7c654231833f445d2a4224161db25e
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/update.py

  Log Message:
  -----------
  Register anonymous activities with 'not logged in'


  Commit: aa4897cef8ded68a591f2c812d4747906c404de8
      https://github.com/ckan/ckan/commit/aa4897cef8ded68a591f2c812d4747906c404de8
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/update.py

  Log Message:
  -----------
  Don't decode user name


  Commit: c8dcd08fb63dbb9227c107b81b03a77e5ec89530
      https://github.com/ckan/ckan/commit/c8dcd08fb63dbb9227c107b81b03a77e5ec89530
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/tests/logic/action/test_get.py

  Log Message:
  -----------
  Revisions no longer returned


  Commit: 33731d2d2232f187ba9d455497e74715dc1bca31
      https://github.com/ckan/ckan/commit/33731d2d2232f187ba9d455497e74715dc1bca31
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    A ckan/tests/migrations/__init__.py

  Log Message:
  -----------
  Add folder to avoid docs failure


  Commit: 6ab6b1ae22c6ed09f03364e98cc546e1b469edb9
      https://github.com/ckan/ckan/commit/6ab6b1ae22c6ed09f03364e98cc546e1b469edb9
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/test_coding_standards.py

  Log Message:
  -----------
  pep8


  Commit: 9236f1847aa389868f81f838686d620793ee861a
      https://github.com/ckan/ckan/commit/9236f1847aa389868f81f838686d620793ee861a
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/update.py

  Log Message:
  -----------
  Don't create actiivites on private datasets


  Commit: 85e5dff81db6298696fdc6fa43e20687d61c3451
      https://github.com/ckan/ckan/commit/85e5dff81db6298696fdc6fa43e20687d61c3451
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    R ckan/tests/migrations/__init__.py

  Log Message:
  -----------
  Revert "Add folder to avoid docs failure"

This reverts commit 33731d2d2232f187ba9d455497e74715dc1bca31.


  Commit: ba015a5f8ec256a52c97571384930254c209d0b1
      https://github.com/ckan/ckan/commit/ba015a5f8ec256a52c97571384930254c209d0b1
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    A ckan/tests/migration/__init__.py
    A ckan/tests/migration/test_migrate_package_activity.py
    A ckan/tests/migration/test_revision_legacy_code.py

  Log Message:
  -----------
  Revert "Remove migration tests for now"

This reverts commit 304878729bf11503f83ef3051b2431414d108894.


  Commit: 3d9f8ee476f215f672a0d91d397e6645c469a131
      https://github.com/ckan/ckan/commit/3d9f8ee476f215f672a0d91d397e6645c469a131
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/lib/create_test_data.py
    M ckan/tests/migration/test_revision_legacy_code.py

  Log Message:
  -----------
  Emit activities in create tests data, avoid leaky tests


  Commit: 8ab3ad000ebbf800c82dc2ba8c79dd6afea15a24
      https://github.com/ckan/ckan/commit/8ab3ad000ebbf800c82dc2ba8c79dd6afea15a24
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-18 (Fri, 18 Oct 2019)

  Changed paths:
    M ckan/tests/pytest/fixtures.py
    M ckan/tests/pytest/test_fixtures.py
    M ckanext/example_iauthfunctions/tests/test_example_iauthfunctions.py
    M doc/contributing/test.rst
    M doc/extensions/testing-extensions.rst

  Log Message:
  -----------
  Update docs a bit


  Commit: c39fed58fa3596257f9b376137de98c52a8b71b9
      https://github.com/ckan/ckan/commit/c39fed58fa3596257f9b376137de98c52a8b71b9
  Author: pdelboca <patriciodelboca at gmail.com>
  Date:   2019-10-20 (Sun, 20 Oct 2019)

  Changed paths:
    M ckan/lib/dictization/model_save.py

  Log Message:
  -----------
  [#5027] Fix datetime comparison


  Commit: 3d13793882421bb82920cd55a2485f232acc882b
      https://github.com/ckan/ckan/commit/3d13793882421bb82920cd55a2485f232acc882b
  Author: pdelboca <patriciodelboca at gmail.com>
  Date:   2019-10-20 (Sun, 20 Oct 2019)

  Changed paths:
    M ckan/config/resource_formats.json

  Log Message:
  -----------
  Improve and reorder resource_formats.json


  Commit: 43e07b4a93709a7d76d60d71a92af6ccff5e7c71
      https://github.com/ckan/ckan/commit/43e07b4a93709a7d76d60d71a92af6ccff5e7c71
  Author: pdelboca <patriciodelboca at gmail.com>
  Date:   2019-10-20 (Sun, 20 Oct 2019)

  Changed paths:
    M ckan/config/resource_formats.json

  Log Message:
  -----------
  Unindent to match previous indent


  Commit: 7d2d5101da95958a342fc3f91c0eadb312af8f9b
      https://github.com/ckan/ckan/commit/7d2d5101da95958a342fc3f91c0eadb312af8f9b
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-21 (Mon, 21 Oct 2019)

  Changed paths:
    M ckan/tests/migration/test_migrate_package_activity.py

  Log Message:
  -----------
  Clean db after each tests


  Commit: e1135f9b77991899db51309a9153162589525b00
      https://github.com/ckan/ckan/commit/e1135f9b77991899db51309a9153162589525b00
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-21 (Mon, 21 Oct 2019)

  Changed paths:
    M ckan/tests/migration/test_migrate_package_activity.py

  Log Message:
  -----------
  Revert "Clean db after each tests"

This reverts commit 7d2d5101da95958a342fc3f91c0eadb312af8f9b.


  Commit: 3a16d791b97b496cec098856a7d4eefe5e105b11
      https://github.com/ckan/ckan/commit/3a16d791b97b496cec098856a7d4eefe5e105b11
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-21 (Mon, 21 Oct 2019)

  Changed paths:
    R ckan/tests/migration/test_revision_legacy_code.py

  Log Message:
  -----------
  Remove test module again


  Commit: 9436916a4acacd46e45aa4c0d1a71678bf9543dc
      https://github.com/ckan/ckan/commit/9436916a4acacd46e45aa4c0d1a71678bf9543dc
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-21 (Mon, 21 Oct 2019)

  Changed paths:
    A ckan/tests/migration/test_revision_legacy_code.py

  Log Message:
  -----------
  Revert "Remove test module again"

This reverts commit 3a16d791b97b496cec098856a7d4eefe5e105b11.


  Commit: 5f8bacf7cab1f563f629f28a099385ad5075ecaa
      https://github.com/ckan/ckan/commit/5f8bacf7cab1f563f629f28a099385ad5075ecaa
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-21 (Mon, 21 Oct 2019)

  Changed paths:
    R ckan/tests/migration/test_migrate_package_activity.py

  Log Message:
  -----------
  Remove the other suspect


  Commit: 1505fb6398e4afcb147d8dc4453c2e4f544bb3a1
      https://github.com/ckan/ckan/commit/1505fb6398e4afcb147d8dc4453c2e4f544bb3a1
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/pytest/fixtures.py

  Log Message:
  -----------
  update legacy test_group/package


  Commit: a1936813a46c6b81f491c4cad0c3ac220f1a5881
      https://github.com/ckan/ckan/commit/a1936813a46c6b81f491c4cad0c3ac220f1a5881
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/config/resource_formats.json

  Log Message:
  -----------
  Merge pull request #5034 from pdelboca/Upgrade-resource_formats.json

Improve and reorder resource_formats.json


  Commit: 4fad994d846719159acc3525b22a2412dfd4a40e
      https://github.com/ckan/ckan/commit/4fad994d846719159acc3525b22a2412dfd4a40e
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/lib/dictization/model_save.py

  Log Message:
  -----------
  Merge pull request #5033 from pdelboca/5027-Fix-bug-when-add/update-resources-on-datasets

[#5027] Fix datetime comparison in resource_dict_save


  Commit: 677f8af59fe610137c6511fa8cb5275b7f6263ee
      https://github.com/ckan/ckan/commit/677f8af59fe610137c6511fa8cb5275b7f6263ee
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/test_coding_standards.py
    R ckan/tests/pytest/__init__.py
    R ckan/tests/pytest/ckan_setup.py
    R ckan/tests/pytest/fixtures.py
    R ckan/tests/pytest/test_fixtures.py
    A ckan/tests/pytest_ckan/__init__.py
    A ckan/tests/pytest_ckan/ckan_setup.py
    A ckan/tests/pytest_ckan/fixtures.py
    A ckan/tests/pytest_ckan/test_fixtures.py
    M ckan/tests/test_authz.py
    M ckan/tests/test_common.py
    M ckan/tests/test_factories.py
    M ckan/tests/test_none_root.py
    M ckan/tests/test_robots_txt.py
    M conftest.py
    M setup.cfg

  Log Message:
  -----------
  Update top level tests


  Commit: 04c39f8de092f962ff0d8bfa8c7ee276bc3eb300
      https://github.com/ckan/ckan/commit/04c39f8de092f962ff0d8bfa8c7ee276bc3eb300
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/config/resource_formats.json
    M ckan/lib/dictization/model_save.py

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: 5ab7cc577093684a51126dffe6b67b2a8c501ea8
      https://github.com/ckan/ckan/commit/5ab7cc577093684a51126dffe6b67b2a8c501ea8
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/tests/config/test_environment.py
    M ckan/tests/config/test_middleware.py
    M ckan/tests/config/test_sessions.py

  Log Message:
  -----------
  Update config tests


  Commit: dbb7bab6938a020d4f7abeaf8d0e79d591634b71
      https://github.com/ckan/ckan/commit/dbb7bab6938a020d4f7abeaf8d0e79d591634b71
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/tests/i18n/test_check_po_files.py
    M ckan/tests/pytest_ckan/ckan_setup.py

  Log Message:
  -----------
  Update i18n tests


  Commit: b8216111c5c85e2ca561a2314c5a14cd89a8ddcf
      https://github.com/ckan/ckan/commit/b8216111c5c85e2ca561a2314c5a14cd89a8ddcf
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/tests/plugins/test_toolkit.py
    M ckan/tests/pytest_ckan/ckan_setup.py

  Log Message:
  -----------
  Update plugins tests


  Commit: 01f4255751c5cf100551feaf88d9e9be42eba4ef
      https://github.com/ckan/ckan/commit/01f4255751c5cf100551feaf88d9e9be42eba4ef
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/tests/model/test_license.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_resource_view.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/model/test_user.py

  Log Message:
  -----------
  Update model tests


  Commit: 61be4611e274d69dd3749139e0f0f3f13e8e1698
      https://github.com/ckan/ckan/commit/61be4611e274d69dd3749139e0f0f3f13e8e1698
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/tests/migration/test_migrate_package_activity.py
    M ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_tags.py

  Log Message:
  -----------
  Update migration tests


  Commit: d6efc3a0ce9db3ec82d15118f0f642a4d11a76a7
      https://github.com/ckan/ckan/commit/d6efc3a0ce9db3ec82d15118f0f642a4d11a76a7
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/test_coding_standards.py
    M ckanext/datastore/tests/test_upsert.py

  Log Message:
  -----------
  Modernize upsert tests


  Commit: 3bf2aab325fbe59a2e7aefef513adc1b52292ad4
      https://github.com/ckan/ckan/commit/3bf2aab325fbe59a2e7aefef513adc1b52292ad4
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-10-22 (Tue, 22 Oct 2019)

  Changed paths:
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datastore/tests/test_upsert.py

  Log Message:
  -----------
  Fix exceptions seen with percent in column name eg datastore search filter


  Commit: fbe638c0b6a5e25cb890031795e23a7af7a59d7b
      https://github.com/ckan/ckan/commit/fbe638c0b6a5e25cb890031795e23a7af7a59d7b
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-23 (Wed, 23 Oct 2019)

  Changed paths:
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_patch.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/auth/test_create.py
    M ckan/tests/logic/auth/test_delete.py
    M ckan/tests/logic/auth/test_get.py
    M ckan/tests/logic/auth/test_init.py
    M ckan/tests/logic/auth/test_update.py
    M ckan/tests/logic/test_conversion.py
    M ckan/tests/logic/test_converters.py
    M ckan/tests/logic/test_schema.py
    M ckan/tests/logic/test_validators.py
    M ckan/tests/pytest_ckan/fixtures.py

  Log Message:
  -----------
  Update logic tests


  Commit: 4e6b74849cab3cfaed74e8487250c49aa572efcb
      https://github.com/ckan/ckan/commit/4e6b74849cab3cfaed74e8487250c49aa572efcb
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-23 (Wed, 23 Oct 2019)

  Changed paths:
    M ckan/tests/logic/action/__init__.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_patch.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  lint fixes


  Commit: 1e53bf3aff2fe00477514b5dca1308d05f88aa09
      https://github.com/ckan/ckan/commit/1e53bf3aff2fe00477514b5dca1308d05f88aa09
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-23 (Wed, 23 Oct 2019)

  Changed paths:
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/auth/__init__.py
    M ckan/tests/logic/auth/test_get.py
    M ckan/tests/logic/auth/test_init.py
    M ckan/tests/logic/test_conversion.py
    M ckan/tests/logic/test_schema.py
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  More lint fixes


  Commit: ebd12fcc03bb9f697fcd2786db6991fe46c1eef3
      https://github.com/ckan/ckan/commit/ebd12fcc03bb9f697fcd2786db6991fe46c1eef3
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-23 (Wed, 23 Oct 2019)

  Changed paths:
    M ckan/tests/controllers/__init__.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_feed.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/controllers/test_template.py
    M ckan/tests/controllers/test_user.py
    M ckan/tests/controllers/test_util.py

  Log Message:
  -----------
  start updating controllers tests


  Commit: 60711513f05ad25a2833e647102da68502fe6b75
      https://github.com/ckan/ckan/commit/60711513f05ad25a2833e647102da68502fe6b75
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-24 (Thu, 24 Oct 2019)

  Changed paths:
    M ckan/tests/config/test_environment.py
    M ckan/tests/config/test_middleware.py
    M ckan/tests/config/test_sessions.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_feed.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/controllers/test_user.py
    M ckan/tests/controllers/test_util.py
    M ckan/tests/factories.py
    M ckan/tests/helpers.py
    M ckan/tests/i18n/test_check_po_files.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_patch.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/auth/test_create.py
    M ckan/tests/logic/auth/test_delete.py
    M ckan/tests/logic/auth/test_get.py
    M ckan/tests/logic/auth/test_init.py
    M ckan/tests/logic/auth/test_update.py
    M ckan/tests/logic/test_conversion.py
    M ckan/tests/logic/test_converters.py
    M ckan/tests/logic/test_validators.py
    M ckan/tests/migration/__init__.py
    M ckan/tests/migration/test_migrate_package_activity.py
    M ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/model/__init__.py
    M ckan/tests/model/test_license.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/plugins/__init__.py
    M ckan/tests/test_authz.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_common.py

  Log Message:
  -----------
  reformat with black


  Commit: 5db060f17c2c691c65d170cc80fa75c4dc1064bb
      https://github.com/ckan/ckan/commit/5db060f17c2c691c65d170cc80fa75c4dc1064bb
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-24 (Thu, 24 Oct 2019)

  Changed paths:
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_feed.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/controllers/test_template.py
    M ckan/tests/controllers/test_user.py
    M ckan/tests/controllers/test_util.py

  Log Message:
  -----------
  Update controller tests


  Commit: 72a36566d493a2222a12d854baa301e633df1857
      https://github.com/ckan/ckan/commit/72a36566d493a2222a12d854baa301e633df1857
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-24 (Thu, 24 Oct 2019)

  Changed paths:
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/controllers/test_template.py
    M ckan/tests/factories.py
    M ckan/tests/helpers.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/migration/test_migrate_package_activity.py
    M ckan/tests/model/test_package.py
    M ckan/tests/test_coding_standards.py

  Log Message:
  -----------
  pep8 alts


  Commit: cefe30b7f0116c0299c66e469fa14adf830bbda7
      https://github.com/ckan/ckan/commit/cefe30b7f0116c0299c66e469fa14adf830bbda7
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-25 (Fri, 25 Oct 2019)

  Changed paths:
    M ckan/tests/lib/__init__.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/navl/test_dictization_functions.py
    M ckan/tests/lib/navl/test_validators.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_app_globals.py
    M ckan/tests/lib/test_auth_tkt.py
    M ckan/tests/lib/test_base.py
    M ckan/tests/lib/test_changes.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/lib/test_config_tool.py
    M ckan/tests/lib/test_datapreview.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/lib/test_i18n.py
    M ckan/tests/lib/test_io.py
    M ckan/tests/lib/test_jobs.py
    M ckan/tests/lib/test_mailer.py
    M ckan/tests/lib/test_munge.py
    M ckan/tests/lib/test_navl.py

  Log Message:
  -----------
  Update lib tests


  Commit: 998745dec2c9c33c65d1dc30c5308735c391a329
      https://github.com/ckan/ckan/commit/998745dec2c9c33c65d1dc30c5308735c391a329
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-25 (Fri, 25 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/lib/test_base.py
    M ckan/tests/lib/test_changes.py

  Log Message:
  -----------
  style fixes


  Commit: 8c65eefdc98c28adfe7d422b6715b22874c81157
      https://github.com/ckan/ckan/commit/8c65eefdc98c28adfe7d422b6715b22874c81157
  Author: Christian Clauss <cclauss at me.com>
  Date:   2019-10-26 (Sat, 26 Oct 2019)

  Changed paths:
    M .travis.yml

  Log Message:
  -----------
  Travis CI: Add more flake8 tests and lint on Python 3.8


  Commit: 567bb0b959615316453297eeb78411974cd92611
      https://github.com/ckan/ckan/commit/567bb0b959615316453297eeb78411974cd92611
  Author: Ian Ward <ian at excess.org>
  Date:   2019-10-28 (Mon, 28 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/test_coding_standards.py
    M ckanext/datastore/tests/test_upsert.py

  Log Message:
  -----------
  Merge pull request #5036 from ckan/modernize-upsert-tests

Modernize upsert tests


  Commit: 36d8db1ddbd120f4efe78f933c4c2b924a02e435
      https://github.com/ckan/ckan/commit/36d8db1ddbd120f4efe78f933c4c2b924a02e435
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-10-28 (Mon, 28 Oct 2019)

  Changed paths:
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datastore/tests/test_upsert.py

  Log Message:
  -----------
  Merge pull request #5042 from ckan/5037-fix-percent-filter

5037 fix percent filter


  Commit: 51b32dd7b2d9911f75108feee73e27679172cd17
      https://github.com/ckan/ckan/commit/51b32dd7b2d9911f75108feee73e27679172cd17
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-28 (Mon, 28 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/test_coding_standards.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datastore/tests/test_upsert.py

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: a42ebd32c5694bb5d95bc0b1da28eba815804c28
      https://github.com/ckan/ckan/commit/a42ebd32c5694bb5d95bc0b1da28eba815804c28
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-28 (Mon, 28 Oct 2019)

  Changed paths:
    M ckan/model/meta.py
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/ckantestplugins.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/misc/test_mock_mail_server.py
    M ckan/tests/legacy/models/test_follower.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/models/test_misc.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/models/test_package_relationships.py
    M ckan/tests/legacy/models/test_purge_revision.py
    M ckan/tests/legacy/models/test_resource.py
    M ckan/tests/legacy/models/test_revision.py
    M ckan/tests/legacy/models/test_user.py
    M ckan/tests/legacy/schema/test_schema.py
    M ckan/tests/legacy/test_plugins.py
    R ckan/tests/legacy/test_versions.py
    M setup.cfg
    M setup.py

  Log Message:
  -----------
  Start rewriting legacy tests


  Commit: 5b88ee5dde2d430cc0c650d1abd2b8c129f642ac
      https://github.com/ckan/ckan/commit/5b88ee5dde2d430cc0c650d1abd2b8c129f642ac
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-29 (Tue, 29 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/ckantestplugins.py
    M ckan/tests/legacy/functional/api/__init__.py
    M ckan/tests/legacy/functional/api/base.py
    R ckan/tests/legacy/functional/api/model/test_group.py
    R ckan/tests/legacy/functional/api/model/test_package.py
    R ckan/tests/legacy/functional/api/model/test_ratings.py
    R ckan/tests/legacy/functional/api/model/test_tag.py
    M ckan/tests/legacy/functional/api/model/test_vocabulary.py
    M ckan/tests/legacy/functional/api/test_api.py
    M ckan/tests/legacy/functional/api/test_email_notifications.py
    M ckan/tests/legacy/functional/api/test_follow.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/functional/api/test_resource.py
    R ckan/tests/legacy/functional/api/test_resource_search.py
    M ckan/tests/legacy/functional/api/test_user.py
    M ckan/tests/legacy/functional/api/test_util.py
    M ckan/tests/legacy/functional/base.py
    M ckan/tests/legacy/functional/test_admin.py
    M ckan/tests/legacy/functional/test_error.py
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/legacy/functional/test_preview_interface.py
    M ckan/tests/legacy/functional/test_tag.py
    M ckan/tests/legacy/functional/test_tracking.py
    M ckan/tests/legacy/functional/test_user.py
    M ckan/tests/legacy/html_check.py
    M ckan/tests/legacy/lib/__init__.py
    M ckan/tests/legacy/lib/test_authenticator.py
    M ckan/tests/legacy/lib/test_cli.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/lib/test_dictization_schema.py
    M ckan/tests/legacy/lib/test_email_notifications.py
    M ckan/tests/legacy/lib/test_hash.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/legacy/lib/test_navl.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/lib/test_solr_package_search.py
    M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
    M ckan/tests/legacy/lib/test_solr_schema_version.py
    M ckan/tests/legacy/lib/test_solr_search_index.py
    M ckan/tests/legacy/lib/test_tag_search.py
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_init.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/logic/test_tag.py
    M ckan/tests/legacy/logic/test_tag_vocab.py
    M ckan/tests/legacy/logic/test_validators.py
    M ckan/tests/legacy/mock_mail_server.py
    M ckan/tests/legacy/mock_plugin.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/pytest_ckan/ckan_setup.py
    M ckan/tests/pytest_ckan/fixtures.py

  Log Message:
  -----------
  Rewrite legacy tests


  Commit: f62f30593f128e837e66bb870b5f5db972b8e4b6
      https://github.com/ckan/ckan/commit/f62f30593f128e837e66bb870b5f5db972b8e4b6
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-29 (Tue, 29 Oct 2019)

  Changed paths:
    M ckan/tests/config/test_middleware.py
    M ckan/tests/config/test_sessions.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/controllers/test_user.py
    M ckan/tests/helpers.py
    M ckan/tests/i18n/test_check_po_files.py
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/lib/test_tag_search.py
    M ckan/tests/legacy/models/test_user.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/auth/test_create.py
    M ckan/tests/logic/auth/test_get.py
    M ckan/tests/logic/test_conversion.py
    M ckan/tests/migration/test_migrate_package_activity.py
    M ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/pytest_ckan/fixtures.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/tests/test_robots_txt.py

  Log Message:
  -----------
  Update fixtures and fix lint errors


  Commit: 285f2b3bc2f03e4488c1178cf45cf8d405da3806
      https://github.com/ckan/ckan/commit/285f2b3bc2f03e4488c1178cf45cf8d405da3806
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-29 (Tue, 29 Oct 2019)

  Changed paths:
    M ckan/model/meta.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/legacy/schema/test_schema.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/pytest_ckan/fixtures.py
    M ckan/tests/pytest_ckan/test_fixtures.py
    M ckan/tests/test_coding_standards.py
    M ckanext/datapusher/tests/test.py
    M ckanext/datapusher/tests/test_action.py
    M ckanext/datapusher/tests/test_controller.py
    M ckanext/datapusher/tests/test_default_views.py
    M ckanext/datapusher/tests/test_interfaces.py
    M ckanext/datastore/tests/conftest.py
    M ckanext/datastore/tests/helpers.py
    M ckanext/datastore/tests/sample_datastore_plugin.py
    M ckanext/datastore/tests/test_chained_action.py
    M ckanext/datastore/tests/test_chained_auth_functions.py
    M ckanext/datastore/tests/test_create.py
    M ckanext/datastore/tests/test_db.py
    M ckanext/datastore/tests/test_delete.py
    M ckanext/datastore/tests/test_dictionary.py
    M ckanext/datastore/tests/test_disable.py
    M ckanext/datastore/tests/test_dump.py
    M ckanext/datastore/tests/test_helpers.py
    M ckanext/datastore/tests/test_info.py
    M ckanext/datastore/tests/test_interface.py
    M ckanext/datastore/tests/test_plugin.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datastore/tests/test_unit.py
    M ckanext/datastore/tests/test_upsert.py
    M ckanext/example_iuploader/test/test_plugin.py
    M ckanext/imageview/tests/test_view.py

  Log Message:
  -----------
  Update datastore/datapusher tests


  Commit: b436d61bb7c0df75661bf1bce70d7f2c3f4bfeef
      https://github.com/ckan/ckan/commit/b436d61bb7c0df75661bf1bce70d7f2c3f4bfeef
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-29 (Tue, 29 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckanext/datapusher/tests/test_controller.py
    M ckanext/datastore/tests/test_dictionary.py

  Log Message:
  -----------
  lint fixes


  Commit: 4ec0ae36377f2e65ca320bd2fc151fbfdf701424
      https://github.com/ckan/ckan/commit/4ec0ae36377f2e65ca320bd2fc151fbfdf701424
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-10-29 (Tue, 29 Oct 2019)

  Changed paths:
    M .circleci/config.yml
    R ckan/lib/activity_streams_session_extension.py
    M ckan/model/meta.py
    M ckan/tests/legacy/test_coding_standards.py
    R ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/test_coding_standards.py
    A test_revision_legacy_code.py

  Log Message:
  -----------
  test_revision_legacy_code is tested outside of the main run

Also, activity_streams_session_extension is removed as no longer used


  Commit: a979368bb9a60a735fddf28eea35e921ef489a19
      https://github.com/ckan/ckan/commit/a979368bb9a60a735fddf28eea35e921ef489a19
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-30 (Wed, 30 Oct 2019)

  Changed paths:
    M ckan/pastertemplates/template/README.rst_tmpl
    M ckan/pastertemplates/template/bin/travis-run.sh_tmpl
    M ckan/tests/factories.py
    M ckan/tests/helpers.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/pytest_ckan/fixtures.py
    M ckan/tests/pytest_ckan/test_fixtures.py
    M ckan/tests/test_common.py
    M ckan/tests/test_factories.py
    M contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/README.rst
    M contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-run.sh
    M doc/contributing/database-migrations.rst
    M doc/contributing/release-process.rst
    M doc/contributing/testing.rst
    M doc/maintaining/multilingual.rst

  Log Message:
  -----------
  Update documentation


  Commit: ab72ca2991111c0155457d307cad6df28567cb5e
      https://github.com/ckan/ckan/commit/ab72ca2991111c0155457d307cad6df28567cb5e
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-30 (Wed, 30 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/test_plugins.py
    M ckan/tests/pytest_ckan/test_fixtures.py
    M ckan/tests/test_common.py
    M ckan/tests/test_factories.py

  Log Message:
  -----------
  flake8


  Commit: 8e56b50e73dcab46e23a050b5e33e88acfd4ae9e
      https://github.com/ckan/ckan/commit/8e56b50e73dcab46e23a050b5e33e88acfd4ae9e
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/ckantestplugins.py
    M ckan/tests/legacy/test_plugins.py

  Log Message:
  -----------
  Safer test_mapper_plugin


  Commit: 986e1cadf320a5339b89734da91c523e66aa67f4
      https://github.com/ckan/ckan/commit/986e1cadf320a5339b89734da91c523e66aa67f4
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M ckan/cli/datastore.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_coding_standards.py
    A ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    R ckanext/datastore/controller.py
    M ckanext/datastore/plugin.py
    M ckanext/datastore/tests/test_dump.py
    R ckanext/datastore/view.py
    A ckanext/resourceproxy/blueprint.py
    R ckanext/resourceproxy/controller.py
    M ckanext/resourceproxy/plugin.py
    M ckanext/resourceproxy/tests/test_proxy.py
    M ckanext/textview/tests/test_view.py

  Log Message:
  -----------
  Merge pull request #4976 from DataShades/resourceproxy-blueprint

ResourceProxy Controller -> Blueprint


  Commit: 5cbd6f7ba3cdcd547593c8e0653812d8eaa8006e
      https://github.com/ckan/ckan/commit/5cbd6f7ba3cdcd547593c8e0653812d8eaa8006e
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M ckan/logic/action/create.py
    M ckan/model/activity.py
    M ckan/model/package.py
    R ckan/model/revision.py
    M ckan/tests/lib/dictization/test_model_dictize.py

  Log Message:
  -----------
  Rip out some more revision_id stuff. Needs a migration script.


  Commit: 42afcbe0293a74cde38fdd32b977286b445b860b
      https://github.com/ckan/ckan/commit/42afcbe0293a74cde38fdd32b977286b445b860b
  Author: amercader <amercadero at gmail.com>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M ckan/views/user.py

  Log Message:
  -----------
  Fix wrong _ function reference in user blueprint


  Commit: f7bc190de627b6aa7be45c2b6cfc8394f4a9a4d8
      https://github.com/ckan/ckan/commit/f7bc190de627b6aa7be45c2b6cfc8394f4a9a4d8
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M ckan/cli/datastore.py
    M ckan/config/resource_formats.json
    M ckan/lib/dictization/model_save.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_coding_standards.py
    M ckanext/datastore/backend/postgres.py
    A ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    R ckanext/datastore/controller.py
    M ckanext/datastore/plugin.py
    M ckanext/datastore/tests/test_dump.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datastore/tests/test_upsert.py
    R ckanext/datastore/view.py
    A ckanext/resourceproxy/blueprint.py
    R ckanext/resourceproxy/controller.py
    M ckanext/resourceproxy/plugin.py
    M ckanext/resourceproxy/tests/test_proxy.py
    M ckanext/textview/tests/test_view.py

  Log Message:
  -----------
  Merge branch 'master' into remove-vdm


  Commit: 2f56f39f4b0a90292af608090db7deca9a2e0866
      https://github.com/ckan/ckan/commit/2f56f39f4b0a90292af608090db7deca9a2e0866
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M ckan/cli/datastore.py
    A ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    R ckanext/datastore/controller.py
    M ckanext/datastore/plugin.py
    M ckanext/datastore/tests/test_dump.py
    R ckanext/datastore/view.py
    A ckanext/resourceproxy/blueprint.py
    R ckanext/resourceproxy/controller.py
    M ckanext/resourceproxy/plugin.py
    M ckanext/resourceproxy/tests/test_proxy.py
    M ckanext/textview/tests/test_view.py

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: db7e098f6fcb96d916fcdaa45c0522269138cfa0
      https://github.com/ckan/ckan/commit/db7e098f6fcb96d916fcdaa45c0522269138cfa0
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M ckanext/datastore/tests/test_dump.py

  Log Message:
  -----------
  Restore test name from datastore_dump


  Commit: ac0f890ad5632dcdcf6efb19cb15cc5194441555
      https://github.com/ckan/ckan/commit/ac0f890ad5632dcdcf6efb19cb15cc5194441555
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M ckan/tests/legacy/test_coding_standards.py
    M ckanext/datastore/tests/test_dump.py

  Log Message:
  -----------
  pep8


  Commit: 1cbb93f97028051c6f8eb1fe13e3a192fbc22bbf
      https://github.com/ckan/ckan/commit/1cbb93f97028051c6f8eb1fe13e3a192fbc22bbf
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-10-31 (Thu, 31 Oct 2019)

  Changed paths:
    M doc/contributing/database-migrations.rst

  Log Message:
  -----------
  Added docs for the alembic migration creation


  Commit: 9eba882feec0fb36158217f1adb54c3d6e902c2f
      https://github.com/ckan/ckan/commit/9eba882feec0fb36158217f1adb54c3d6e902c2f
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M ckan/tests/controllers/test_package.py

  Log Message:
  -----------
  Add tests to ensure all activities are created


  Commit: e897455455e1307f7e71df5d02db9be84a5caa44
      https://github.com/ckan/ckan/commit/e897455455e1307f7e71df5d02db9be84a5caa44
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M ckan/tests/controllers/test_package.py

  Log Message:
  -----------
  pep8


  Commit: 5986f32d335c647958601748d89c71f109ff9364
      https://github.com/ckan/ckan/commit/5986f32d335c647958601748d89c71f109ff9364
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M ckan/tests/controllers/test_package.py

  Log Message:
  -----------
  Merge branch 'remove-vdm' of github.com:ckan/ckan into remove-vdm


  Commit: 777c36cb23a15040a2102dc13ce3c1d618ae98c9
      https://github.com/ckan/ckan/commit/777c36cb23a15040a2102dc13ce3c1d618ae98c9
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M ckan/migration/env.py
    A ckan/migration/versions/093_7f70d7d15445_remove_activity_revision_id.py

  Log Message:
  -----------
  Trial migration script. Include the legacy model, so the tables dont get deleted.


  Commit: 9bc1c350cee96d0cf252a550104ad9a5367dbc88
      https://github.com/ckan/ckan/commit/9bc1c350cee96d0cf252a550104ad9a5367dbc88
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M ckan/migration/env.py
    M ckan/migration/revision_legacy_code.py
    M ckan/migration/versions/093_7f70d7d15445_remove_activity_revision_id.py

  Log Message:
  -----------
  Remove package.revision_id etc from the revision_legacy_code and regenerate migration script


  Commit: 3f532ae1ae8b158d19eca1def5fc6aefbe8497e9
      https://github.com/ckan/ckan/commit/3f532ae1ae8b158d19eca1def5fc6aefbe8497e9
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M ckan/migration/env.py

  Log Message:
  -----------
  env.py is used in tests, so dont import revision tables unless creating migration scripts


  Commit: 248f1d89cff1b04bf4714509d7d9b09e3f50be15
      https://github.com/ckan/ckan/commit/248f1d89cff1b04bf4714509d7d9b09e3f50be15
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M ckan/migration/versions/093_7f70d7d15445_remove_activity_revision_id.py

  Log Message:
  -----------
  Manually fix migration script. Not quite sure how to auto-generate it correctly.


  Commit: b0adebba8940e823f28ff146318d169d569973ce
      https://github.com/ckan/ckan/commit/b0adebba8940e823f28ff146318d169d569973ce
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M ckan/migration/versions/093_7f70d7d15445_remove_activity_revision_id.py

  Log Message:
  -----------
  PEP8


  Commit: 389026a0c077e9c37eff2499a9091dc0f2b52d83
      https://github.com/ckan/ckan/commit/389026a0c077e9c37eff2499a9091dc0f2b52d83
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-01 (Fri, 01 Nov 2019)

  Changed paths:
    M ckan/migration/versions/093_7f70d7d15445_remove_activity_revision_id.py
    M ckan/model/activity.py

  Log Message:
  -----------
  The migration needs activity.revision_id values, after all


  Commit: 0316640c7d9096182cfaa39efb9d144c63eea129
      https://github.com/ckan/ckan/commit/0316640c7d9096182cfaa39efb9d144c63eea129
  Author: Jinil Lee <usingsky at gmail.com>
  Date:   2019-11-04 (Mon, 04 Nov 2019)

  Changed paths:
    M ckan/templates/package/snippets/additional_info.html
    M ckan/templates/snippets/additional_info.html

  Log Message:
  -----------
  fix xss in extra keys


  Commit: 0fc57cf86a02ec0a5273f177d96e26cf276b5d98
      https://github.com/ckan/ckan/commit/0fc57cf86a02ec0a5273f177d96e26cf276b5d98
  Author: Jinil Lee <usingsky at gmail.com>
  Date:   2019-11-04 (Mon, 04 Nov 2019)

  Changed paths:
    M ckan/templates/user/edit_user_form.html
    M ckan/templates/user/read_base.html

  Log Message:
  -----------
  small ui fixes

private label does not appear on the user page.
element id is duplicated in the edit_user_form page.


  Commit: c25eddfaad9ceae83889a17c0992553232873eb8
      https://github.com/ckan/ckan/commit/c25eddfaad9ceae83889a17c0992553232873eb8
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-11-04 (Mon, 04 Nov 2019)

  Changed paths:
    M ckan/public/base/javascript/modules/autocomplete.js

  Log Message:
  -----------
  Merge pull request #5012 from Zharktas/make_creating_tags_in_autocomplete_optional

Make creating new tags in autocomplete module optional


  Commit: 0554c2e9b1d480d2f7f859add90b443090c3462e
      https://github.com/ckan/ckan/commit/0554c2e9b1d480d2f7f859add90b443090c3462e
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-11-04 (Mon, 04 Nov 2019)

  Changed paths:
    M ckan/lib/uploader.py

  Log Message:
  -----------
  Merge pull request #5020 from marsdd/hotfix-file-upload-update-issue

Bug caused by updated to how Flask handles the file upload field


  Commit: 5ec3f8c6f248269f451f9bfe8d12208e3b5f8f38
      https://github.com/ckan/ckan/commit/5ec3f8c6f248269f451f9bfe8d12208e3b5f8f38
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-11-04 (Mon, 04 Nov 2019)

  Changed paths:
    M ckan/views/user.py

  Log Message:
  -----------
  Merge pull request #5046 from ckan/fix-exception-on-user-blueprint

Fix wrong _ function reference in user blueprint


  Commit: 6f64165549d834b707b8c49a297b0ab61c9e1661
      https://github.com/ckan/ckan/commit/6f64165549d834b707b8c49a297b0ab61c9e1661
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-11-04 (Mon, 04 Nov 2019)

  Changed paths:
    M doc/contributing/database-migrations.rst

  Log Message:
  -----------
  Merge pull request #5047 from ckan/migration-docs

Added docs for the alembic migration creation


  Commit: df28ba23ffdf12672719f8fe59e7841a45a0d8c2
      https://github.com/ckan/ckan/commit/df28ba23ffdf12672719f8fe59e7841a45a0d8c2
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-05 (Tue, 05 Nov 2019)

  Changed paths:
    M ckan/lib/uploader.py
    M ckan/public/base/javascript/modules/autocomplete.js
    M ckan/views/user.py
    M doc/contributing/database-migrations.rst

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: 5bd7fd9f9a12f35589c895b9c9298d59926b8ef0
      https://github.com/ckan/ckan/commit/5bd7fd9f9a12f35589c895b9c9298d59926b8ef0
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-05 (Tue, 05 Nov 2019)

  Changed paths:
    M ckan/templates/user/edit_user_form.html
    M ckan/templates/user/read_base.html

  Log Message:
  -----------
  Merge pull request #5051 from usingsky/fix_private_label

small ui fixes


  Commit: a06276c4bb23bc76298da02d4589601cb2fac35f
      https://github.com/ckan/ckan/commit/a06276c4bb23bc76298da02d4589601cb2fac35f
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-05 (Tue, 05 Nov 2019)

  Changed paths:
    M .travis.yml

  Log Message:
  -----------
  Merge pull request #5040 from cclauss/patch-2

Travis CI: Add more flake8 tests and lint on Python 3.8


  Commit: 47e87a1b5b3397f944abe3fcdd1cf23b912938a0
      https://github.com/ckan/ckan/commit/47e87a1b5b3397f944abe3fcdd1cf23b912938a0
  Author: iamarnavgarg <arnav.garg at india.nec.com>
  Date:   2019-11-05 (Tue, 05 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py
    M ckan/logic/validators.py
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  Fixes #4800


  Commit: 3ae3f138365ff7d38913e6aaad485d43954556c2
      https://github.com/ckan/ckan/commit/3ae3f138365ff7d38913e6aaad485d43954556c2
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-05 (Tue, 05 Nov 2019)

  Changed paths:
    M ckan/views/feed.py
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  webhelpers.feedgenerator -> feedgen


  Commit: 31f0877cc871cb1ba7660fe769265e7aee167a11
      https://github.com/ckan/ckan/commit/31f0877cc871cb1ba7660fe769265e7aee167a11
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-06 (Wed, 06 Nov 2019)

  Changed paths:
    M ckan/views/feed.py

  Log Message:
  -----------
  Fake enclosure


  Commit: 16131945338ea812168d8d470453f01d70e129d0
      https://github.com/ckan/ckan/commit/16131945338ea812168d8d470453f01d70e129d0
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-07 (Thu, 07 Nov 2019)

  Changed paths:
    M ckan/views/feed.py

  Log Message:
  -----------
  Improved fake enclosure


  Commit: 59006ac45e0f2df48e22fe15e7a35a5f6b67a5d1
      https://github.com/ckan/ckan/commit/59006ac45e0f2df48e22fe15e7a35a5f6b67a5d1
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-07 (Thu, 07 Nov 2019)

  Changed paths:
    M .circleci/config.yml
    R ckan/lib/activity_streams_session_extension.py
    M ckan/lib/cli.py
    M ckan/lib/create_test_data.py
    M ckan/lib/dictization/__init__.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/get.py
    M ckan/logic/action/update.py
    M ckan/logic/auth/get.py
    M ckan/logic/schema.py
    M ckan/migration/env.py
    M ckan/migration/migrate_package_activity.py
    M ckan/migration/revision_legacy_code.py
    A ckan/migration/versions/093_7f70d7d15445_remove_activity_revision_id.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/core.py
    M ckan/model/domain_object.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/resource.py
    R ckan/model/revision.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/user.py
    M ckan/public/base/javascript/modules/popover-context.js
    M ckan/templates/snippets/context.html
    M ckan/templates/snippets/context/user.html
    M ckan/templates/user/read_base.html
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_user.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/lib/test_dictization_schema.py
    M ckan/tests/legacy/lib/test_solr_package_search.py
    M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/logic/test_tag.py
    M ckan/tests/legacy/logic/test_tag_vocab.py
    M ckan/tests/legacy/models/test_follower.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/models/test_misc.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/models/test_package_relationships.py
    R ckan/tests/legacy/models/test_purge_revision.py
    M ckan/tests/legacy/models/test_resource.py
    R ckan/tests/legacy/models/test_revision.py
    M ckan/tests/legacy/models/test_user.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/test_jobs.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    R ckan/tests/migration/test_migrate_package_activity.py
    R ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/test_coding_standards.py
    M ckan/views/admin.py
    M ckanext/datastore/logic/action.py
    M ckanext/multilingual/solr/schema.xml
    M ckanext/stats/stats.py
    M ckanext/stats/templates/ckanext/stats/index.html
    M ckanext/stats/tests/test_stats_lib.py
    M requirements.in
    M requirements.txt
    A test_revision_legacy_code.py

  Log Message:
  -----------
  Merge branch 'remove-vdm'

Bye bye VDM!


  Commit: 2bdaad9113026631c64a8c0d9626392427101086
      https://github.com/ckan/ckan/commit/2bdaad9113026631c64a8c0d9626392427101086
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-07 (Thu, 07 Nov 2019)

  Changed paths:
    M .circleci/config.yml
    M .travis.yml
    M ckan/cli/datastore.py
    M ckan/config/resource_formats.json
    R ckan/lib/activity_streams_session_extension.py
    M ckan/lib/cli.py
    M ckan/lib/create_test_data.py
    M ckan/lib/dictization/__init__.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/lib/uploader.py
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/get.py
    M ckan/logic/action/update.py
    M ckan/logic/auth/get.py
    M ckan/logic/schema.py
    M ckan/migration/env.py
    M ckan/migration/migrate_package_activity.py
    M ckan/migration/revision_legacy_code.py
    A ckan/migration/versions/093_7f70d7d15445_remove_activity_revision_id.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/core.py
    M ckan/model/domain_object.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/resource.py
    R ckan/model/revision.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/user.py
    M ckan/public/base/javascript/modules/autocomplete.js
    M ckan/public/base/javascript/modules/popover-context.js
    M ckan/templates/snippets/context.html
    M ckan/templates/snippets/context/user.html
    M ckan/templates/user/edit_user_form.html
    M ckan/templates/user/read_base.html
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_user.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/lib/test_dictization_schema.py
    M ckan/tests/legacy/lib/test_solr_package_search.py
    M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/logic/test_tag.py
    M ckan/tests/legacy/logic/test_tag_vocab.py
    M ckan/tests/legacy/models/test_follower.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/models/test_misc.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/models/test_package_relationships.py
    R ckan/tests/legacy/models/test_purge_revision.py
    M ckan/tests/legacy/models/test_resource.py
    R ckan/tests/legacy/models/test_revision.py
    M ckan/tests/legacy/models/test_user.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/test_jobs.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    R ckan/tests/migration/test_migrate_package_activity.py
    R ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/test_coding_standards.py
    M ckan/views/admin.py
    M ckan/views/user.py
    M ckanext/datastore/backend/postgres.py
    A ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    R ckanext/datastore/controller.py
    M ckanext/datastore/logic/action.py
    M ckanext/datastore/plugin.py
    M ckanext/datastore/tests/test_dump.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datastore/tests/test_upsert.py
    R ckanext/datastore/view.py
    M ckanext/multilingual/solr/schema.xml
    A ckanext/resourceproxy/blueprint.py
    R ckanext/resourceproxy/controller.py
    M ckanext/resourceproxy/plugin.py
    M ckanext/resourceproxy/tests/test_proxy.py
    M ckanext/stats/stats.py
    M ckanext/stats/templates/ckanext/stats/index.html
    M ckanext/stats/tests/test_stats_lib.py
    M ckanext/textview/tests/test_view.py
    M doc/contributing/database-migrations.rst
    M requirements.in
    M requirements.txt
    A test_revision_legacy_code.py

  Log Message:
  -----------
  Merge remote-tracking branch 'upstream/master' into cli-user


  Commit: 20d207e8a3df7b154d261ab2c36ca65ec40e8a9a
      https://github.com/ckan/ckan/commit/20d207e8a3df7b154d261ab2c36ca65ec40e8a9a
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-07 (Thu, 07 Nov 2019)

  Changed paths:
    A SECURITY.md

  Log Message:
  -----------
  Create SECURITY.md

Having this file means GitHub UI highlights this as the policy when people create issues.

More:
https://help.github.com/en/github/managing-security-vulnerabilities/adding-a-security-policy-to-your-repository


  Commit: dbe325296b44e9c0c108b8463a71b85f8572a614
      https://github.com/ckan/ckan/commit/dbe325296b44e9c0c108b8463a71b85f8572a614
  Author: Arnav Garg <arnav.garg at india.nec.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/logic/validators.py

  Log Message:
  -----------
  Update validators.py


  Commit: 5f5a4e5b603a1b2a73f99ba9704b0226f4c53c1b
      https://github.com/ckan/ckan/commit/5f5a4e5b603a1b2a73f99ba9704b0226f4c53c1b
  Author: Arnav Garg <arnav.garg at india.nec.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  Update test_validators.py


  Commit: 93ee5d624e5e30920fb7426460c8e6c856a45966
      https://github.com/ckan/ckan/commit/93ee5d624e5e30920fb7426460c8e6c856a45966
  Author: Arnav Garg <arnav.garg at india.nec.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py

  Log Message:
  -----------
  Update __init__.py


  Commit: 5021e632b0c0e434e00f100e3c68a1ec4ab9558c
      https://github.com/ckan/ckan/commit/5021e632b0c0e434e00f100e3c68a1ec4ab9558c
  Author: Arnav Garg <arnav.garg at india.nec.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py

  Log Message:
  -----------
  Update __init__.py


  Commit: fc2b417c3d0112cf5d0888650c3006bcc6204440
      https://github.com/ckan/ckan/commit/fc2b417c3d0112cf5d0888650c3006bcc6204440
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    A SECURITY.md

  Log Message:
  -----------
  Merge pull request #5059 from ckan/add-security-md

Create SECURITY.md


  Commit: 9ae0a9c84b2ade262400cdda53b8e0e918c9fba8
      https://github.com/ckan/ckan/commit/9ae0a9c84b2ade262400cdda53b8e0e918c9fba8
  Author: Jinil Lee <usingsky at gmail.com>
  Date:   2019-11-09 (Sat, 09 Nov 2019)

  Changed paths:
    M ckan/views/group.py

  Log Message:
  -----------
  fix server error in new_member page


  Commit: c7cfef5a9281b48cc898a21f56695ae91ac88f88
      https://github.com/ckan/ckan/commit/c7cfef5a9281b48cc898a21f56695ae91ac88f88
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckanext/example_idatastorebackend/example_sqlite.py
    M setup.py

  Log Message:
  -----------
  Replace usage of map unsupported on Python 3

In Python 3, map returns a map object not a list. Replaced the
occurrences I could find with list comprehensions.


  Commit: 66effbd0417b3a31b9b687b79cfd2390ebe80506
      https://github.com/ckan/ckan/commit/66effbd0417b3a31b9b687b79cfd2390ebe80506
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckanext/example_idatastorebackend/example_sqlite.py
    M setup.py

  Log Message:
  -----------
  Merge pull request #5062 from ckan/replace-usage-of-map

Replace usage of map unsupported on Python 3


  Commit: 521f78abc99ac1d31f194fb27973e5a79233f649
      https://github.com/ckan/ckan/commit/521f78abc99ac1d31f194fb27973e5a79233f649
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M .circleci/config.yml
    M Dockerfile
    M bin/travis-install-dependencies
    M ckan/common.py
    M doc/maintaining/installing/install-from-source.rst
    M doc/maintaining/upgrading/index.rst
    A doc/maintaining/upgrading/upgrade-to-python3.rst
    A requirements-py2.in
    A requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Add requirements.txt for python 3

Also:
* Install-by-source instructions is for python 3
* Adds initial python2->3 upgrade instructions
* Initial adjustments to ckan/common.py for import in python3

I'm keen to do 'trunk based development' for python 3 work now. So python 3 is the default in the docs and requirements.txt. I realize that the devs who use master for other work might be a bit surprised/disrupted by these changes. However I think it is worth it because the focus now needs to be python3, and it's better to switch master's default now rather than just before release.


  Commit: 5552739893036faeab10c8ae1c4561ea03011e54
      https://github.com/ckan/ckan/commit/5552739893036faeab10c8ae1c4561ea03011e54
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/controllers/api.py
    M ckan/include/rjsmin.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/lib/search/index.py
    M ckan/model/license.py
    M ckan/tests/legacy/functional/test_package.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/example_idatastorebackend/example_sqlite.py

  Log Message:
  -----------
  'map' usage made python3 compatible

Used automated tool:

    python-modernize --fix=map .

As suggested: https://github.com/ckan/ckan/pull/5062#issuecomment-551903816
And did a little manual tidying.


  Commit: 487c13e8525e593894f91bfa774378618d38c510
      https://github.com/ckan/ckan/commit/487c13e8525e593894f91bfa774378618d38c510
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/lib/dictization/model_dictize.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    M ckan/tests/legacy/functional/api/model/test_vocabulary.py
    M ckan/tests/legacy/lib/test_solr_search_index.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_datapreview.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/test_conversion.py

  Log Message:
  -----------
  Improvement according to C407 flake8 comprehension rule

C407 Unnecessary list comprehension - 'sorted' can take a generator


  Commit: 9a13a4b71a458d943d9110b0a814e79ff7f90792
      https://github.com/ckan/ckan/commit/9a13a4b71a458d943d9110b0a814e79ff7f90792
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/tests/legacy/lib/test_resource_search.py

  Log Message:
  -----------
  Improvement according to C406 flake8 comprehension rule

C406 Unnecessary (list/tuple) literal - rewrite as a dict literal.


  Commit: 44cf609e7e0455fd234e9199f1d38a129ec1ee05
      https://github.com/ckan/ckan/commit/44cf609e7e0455fd234e9199f1d38a129ec1ee05
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/tests/helpers.py

  Log Message:
  -----------
  Improvement according to C409 flake8 comprehension rule

C409 Unnecessary (list/tuple) passed to tuple() - (remove the outer call to tuple()/rewrite as a tuple literal).


  Commit: d59c0b6bc223de0343ef7a71b4f60b6b1da6c4eb
      https://github.com/ckan/ckan/commit/d59c0b6bc223de0343ef7a71b4f60b6b1da6c4eb
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/controllers/api.py
    M ckan/include/rjsmin.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/lib/search/index.py
    M ckan/model/license.py
    M ckan/tests/legacy/functional/test_package.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/example_idatastorebackend/example_sqlite.py

  Log Message:
  -----------
  Merge pull request #5065 from ckan/py3-map

'map' usage made python3 compatible


  Commit: 203ea778b3a59f1490a4554c097316cc5f55a6e9
      https://github.com/ckan/ckan/commit/203ea778b3a59f1490a4554c097316cc5f55a6e9
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/controllers/api.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/model/license.py

  Log Message:
  -----------
  "map" improved, courtesy @cclauss


  Commit: 6c474b403834c9b96833835a493f14dac0e65cc5
      https://github.com/ckan/ckan/commit/6c474b403834c9b96833835a493f14dac0e65cc5
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-08 (Fri, 08 Nov 2019)

  Changed paths:
    M ckan/config/middleware/flask_app.py
    M ckan/lib/changes.py
    M ckan/lib/cli.py
    M ckan/lib/config_tool.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/search/__init__.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/test_plugins.py
    M ckan/tests/logic/action/test_get.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/reclineview/plugin.py

  Log Message:
  -----------
  Improvement according to C403/C404 flake8 comprehension rule

C403 Unnecessary list comprehension - rewrite as a set comprehension.
C404 Unnecessary list comprehension - rewrite as a dict comprehension.

However I left 7 C403 violations where I think it is clearer to leave as
it is - tests that compare a set() to a set().


  Commit: bdf0e7884ffcde40d83b92e587e6eaab91a93c36
      https://github.com/ckan/ckan/commit/bdf0e7884ffcde40d83b92e587e6eaab91a93c36
  Author: iamarnavgarg <arnav.garg at india.nec.com>
  Date:   2019-11-10 (Sun, 10 Nov 2019)

  Changed paths:
    M ckan/logic/validators.py
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  Incorporated the changes suggested by @amercader


  Commit: c67c23c087db5372f8185e4cc953e32d7dda5ef0
      https://github.com/ckan/ckan/commit/c67c23c087db5372f8185e4cc953e32d7dda5ef0
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-10 (Sun, 10 Nov 2019)

  Changed paths:
    M ckan/config/middleware/flask_app.py
    M ckan/lib/changes.py
    M ckan/lib/cli.py
    M ckan/lib/config_tool.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/search/__init__.py
    M ckan/tests/helpers.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    M ckan/tests/legacy/functional/api/model/test_vocabulary.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/lib/test_solr_search_index.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/test_plugins.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_datapreview.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/test_conversion.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/reclineview/plugin.py

  Log Message:
  -----------
  Merge pull request #5066 from ckan/flake8-comprehensions

Flake8 comprehensions


  Commit: 74560cb6d19c63828a11c168454ce33d63451acd
      https://github.com/ckan/ckan/commit/74560cb6d19c63828a11c168454ce33d63451acd
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-10 (Sun, 10 Nov 2019)

  Changed paths:
    M ckan/controllers/api.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/model/license.py

  Log Message:
  -----------
  Merge pull request #5067 from ckan/py3-map

"map" improved as comprehensions


  Commit: cd70abf9b5b7a7187f061798ca2cd93c93531064
      https://github.com/ckan/ckan/commit/cd70abf9b5b7a7187f061798ca2cd93c93531064
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-10 (Sun, 10 Nov 2019)

  Changed paths:
    M ckan/controllers/admin.py
    M ckan/controllers/package.py
    M ckan/lib/cli.py
    M ckan/lib/helpers.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/redis.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/index.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/core.py
    M ckan/model/dashboard.py
    M ckan/model/domain_object.py
    M ckan/model/follower.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/rating.py
    M ckan/model/resource.py
    M ckan/model/resource_view.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/task_status.py
    M ckan/model/term_translation.py
    M ckan/model/tracking.py
    M ckan/model/types.py
    M ckan/model/user.py
    M ckan/model/vocabulary.py

  Log Message:
  -----------
  [#4801] Transform relative imports into absolute ones


  Commit: cfff60e062e597affd23ff8593dc74f16feb0511
      https://github.com/ckan/ckan/commit/cfff60e062e597affd23ff8593dc74f16feb0511
  Author: howff <3064316+howff at users.noreply.github.com>
  Date:   2019-11-11 (Mon, 11 Nov 2019)

  Changed paths:
    M ckan/views/api.py

  Log Message:
  -----------
  Allow vocabulary_id in /api/2/util/tag/autocomplete

/api/2/util/tag/autocomplete is still used by scheming (for example) but only autocompletes from the free text tags. Add an argument vocabulary_id to allow autocompletion from the specified tag vocabulary. The user can then add their own preset to build their schema and UI using it.


  Commit: 1df691fa47275f66f3bb6920a0edf4a8251939e6
      https://github.com/ckan/ckan/commit/1df691fa47275f66f3bb6920a0edf4a8251939e6
  Author: howff <3064316+howff at users.noreply.github.com>
  Date:   2019-11-11 (Mon, 11 Nov 2019)

  Changed paths:
    M ckan/views/api.py

  Log Message:
  -----------
  Prefix string literals with u


  Commit: 345df2be9de0d18ea1ad8e54ee953fc6d94f80c0
      https://github.com/ckan/ckan/commit/345df2be9de0d18ea1ad8e54ee953fc6d94f80c0
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-12 (Tue, 12 Nov 2019)

  Changed paths:
    M ckan/views/api.py

  Log Message:
  -----------
  Merge pull request #5071 from howff/patch-1

Allow vocabulary_id in /api/2/util/tag/autocomplete


  Commit: 91a780b436f00997f846588e7ae40835596c5d45
      https://github.com/ckan/ckan/commit/91a780b436f00997f846588e7ae40835596c5d45
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-12 (Tue, 12 Nov 2019)

  Changed paths:
    M ckan/views/group.py

  Log Message:
  -----------
  Merge pull request #5061 from usingsky/fix_new_memeber_error

fix server error in new_member page


  Commit: 746cd7e321fd7a16d8cc051b6854c2f7741bb8ca
      https://github.com/ckan/ckan/commit/746cd7e321fd7a16d8cc051b6854c2f7741bb8ca
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-12 (Tue, 12 Nov 2019)

  Changed paths:
    M ckan/config/deployment.ini_tmpl
    M ckan/lib/mailer.py
    M ckan/tests/lib/test_mailer.py
    M doc/maintaining/configuration.rst
    M doc/maintaining/email-notifications.rst

  Log Message:
  -----------
  Merge pull request #5024 from f-osorio/4673-allow-reply-to-emails

4673 allow reply to emails


  Commit: 01383c33a40cf26adecc4022d540df6c7e27c35c
      https://github.com/ckan/ckan/commit/01383c33a40cf26adecc4022d540df6c7e27c35c
  Author: iamarnavgarg <arnav.garg at india.nec.com>
  Date:   2019-11-13 (Wed, 13 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py
    M ckan/logic/validators.py
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  incorporated the changes


  Commit: 76e1e6c0e6b4e195174ad504d53e237b472838b4
      https://github.com/ckan/ckan/commit/76e1e6c0e6b4e195174ad504d53e237b472838b4
  Author: iamarnavgarg <arnav.garg at india.nec.com>
  Date:   2019-11-14 (Thu, 14 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  minor changes for build


  Commit: 6b6a6c2d248f44662f76f2bd443bbb1944295741
      https://github.com/ckan/ckan/commit/6b6a6c2d248f44662f76f2bd443bbb1944295741
  Author: howff <3064316+howff at users.noreply.github.com>
  Date:   2019-11-14 (Thu, 14 Nov 2019)

  Changed paths:
    M doc/maintaining/configuration.rst

  Log Message:
  -----------
  Change to root_path also needs who.ini edited


  Commit: 7c3f4419496aa4f37e9124928440cf2d42b99e96
      https://github.com/ckan/ckan/commit/7c3f4419496aa4f37e9124928440cf2d42b99e96
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-14 (Thu, 14 Nov 2019)

  Changed paths:
    A SECURITY.md
    M ckan/config/deployment.ini_tmpl
    M ckan/config/middleware/flask_app.py
    M ckan/controllers/api.py
    M ckan/include/rjsmin.py
    M ckan/lib/changes.py
    M ckan/lib/cli.py
    M ckan/lib/config_tool.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/lib/mailer.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/index.py
    M ckan/model/license.py
    M ckan/tests/helpers.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    M ckan/tests/legacy/functional/api/model/test_vocabulary.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/lib/test_solr_search_index.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/test_plugins.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_datapreview.py
    M ckan/tests/lib/test_mailer.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/test_conversion.py
    M ckan/views/api.py
    M ckan/views/group.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/example_idatastorebackend/example_sqlite.py
    M ckanext/reclineview/plugin.py
    M doc/maintaining/configuration.rst
    M doc/maintaining/email-notifications.rst
    M setup.py

  Log Message:
  -----------
  Merge branch 'master' into cli-user


  Commit: 15d8f461edba8adace5f3017d5f35894c4352d6f
      https://github.com/ckan/ckan/commit/15d8f461edba8adace5f3017d5f35894c4352d6f
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-14 (Thu, 14 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    M ckan/cli/user.py

  Log Message:
  -----------
  User add fix


  Commit: 68ed0bd5965c35dac678c526b77bac6893ee4b75
      https://github.com/ckan/ckan/commit/68ed0bd5965c35dac678c526b77bac6893ee4b75
  Author: Arnav Garg <arnav.garg at india.nec.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/logic/validators.py

  Log Message:
  -----------
  Update validators.py


  Commit: 34a53bbea1355fcbcf4d59dc2be7a735d6067d5d
      https://github.com/ckan/ckan/commit/34a53bbea1355fcbcf4d59dc2be7a735d6067d5d
  Author: Arnav Garg <arnav.garg at india.nec.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  Update test_validators.py


  Commit: f397f4d8969d0b2adb672faba4b633f5e532172f
      https://github.com/ckan/ckan/commit/f397f4d8969d0b2adb672faba4b633f5e532172f
  Author: Arnav Garg <arnav.garg at india.nec.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py

  Log Message:
  -----------
  Update __init__.py


  Commit: 87cd3ffc71d1b35da71a21d7a58f00cf1ea511d1
      https://github.com/ckan/ckan/commit/87cd3ffc71d1b35da71a21d7a58f00cf1ea511d1
  Author: Arnav Garg <arnav.garg at india.nec.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/logic/validators.py

  Log Message:
  -----------
  Update validators.py


  Commit: 712647f327d3357f85bf1a2b296e733a1c1823e1
      https://github.com/ckan/ckan/commit/712647f327d3357f85bf1a2b296e733a1c1823e1
  Author: Arnav Garg <arnav.garg at india.nec.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  Update test_validators.py


  Commit: cb8f33674708648ce6ecce19eec58e4754d13373
      https://github.com/ckan/ckan/commit/cb8f33674708648ce6ecce19eec58e4754d13373
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py
    M ckan/logic/validators.py
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  Merge branch 'iamarnavgarg-patch-1' of https://github.com/iamarnavgarg/ckan into iamarnavgarg-iamarnavgarg-patch-1


  Commit: 534144940a686f49efcc2d8b900307393bcc2e42
      https://github.com/ckan/ckan/commit/534144940a686f49efcc2d8b900307393bcc2e42
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/templates/package/snippets/additional_info.html
    M ckan/templates/snippets/additional_info.html

  Log Message:
  -----------
  Merge pull request #5049 from usingsky/xss_extra_keys

fix xss in extra keys


  Commit: ad8825046327bf7ae1cdd6a41164bc6a7fafb41d
      https://github.com/ckan/ckan/commit/ad8825046327bf7ae1cdd6a41164bc6a7fafb41d
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py
    M ckan/logic/validators.py
    M ckan/tests/logic/test_validators.py

  Log Message:
  -----------
  [#4800] Minor fixes and improvements


  Commit: 2d5217c10cec03c1c506bbe428ada1afc60de758
      https://github.com/ckan/ckan/commit/2d5217c10cec03c1c506bbe428ada1afc60de758
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/logic/schema.py
    M ckanext/datapusher/logic/schema.py
    M ckanext/datastore/blueprint.py
    M ckanext/datastore/logic/schema.py

  Log Message:
  -----------
  [#4800] Rename OneOf usages to one_of for consistency


  Commit: 745285153dc45fb3b5ba0682c2f14e89f7bd21ba
      https://github.com/ckan/ckan/commit/745285153dc45fb3b5ba0682c2f14e89f7bd21ba
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M .circleci/config.yml
    M .travis.yml
    A SECURITY.md
    M ckan/cli/dataset.py
    M ckan/config/deployment.ini_tmpl
    M ckan/config/middleware/flask_app.py
    M ckan/controllers/api.py
    M ckan/include/rjsmin.py
    R ckan/lib/activity_streams_session_extension.py
    M ckan/lib/changes.py
    M ckan/lib/cli.py
    M ckan/lib/config_tool.py
    M ckan/lib/create_test_data.py
    M ckan/lib/dictization/__init__.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/lib/mailer.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/index.py
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/get.py
    M ckan/logic/action/update.py
    M ckan/logic/auth/get.py
    M ckan/logic/schema.py
    M ckan/migration/env.py
    M ckan/migration/migrate_package_activity.py
    M ckan/migration/revision_legacy_code.py
    A ckan/migration/versions/093_7f70d7d15445_remove_activity_revision_id.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/core.py
    M ckan/model/domain_object.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/license.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/resource.py
    R ckan/model/revision.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/user.py
    M ckan/public/base/javascript/modules/popover-context.js
    M ckan/templates/snippets/context.html
    M ckan/templates/snippets/context/user.html
    M ckan/templates/user/edit_user_form.html
    M ckan/templates/user/read_base.html
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/helpers.py
    M ckan/tests/legacy/functional/api/base.py
    A ckan/tests/legacy/functional/api/model/test_group.py
    M ckan/tests/legacy/functional/api/model/test_vocabulary.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_user.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/lib/test_dictization_schema.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/lib/test_solr_package_search.py
    M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/logic/test_tag.py
    M ckan/tests/legacy/logic/test_tag_vocab.py
    M ckan/tests/legacy/models/test_follower.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/models/test_misc.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/models/test_package_relationships.py
    R ckan/tests/legacy/models/test_purge_revision.py
    M ckan/tests/legacy/models/test_resource.py
    R ckan/tests/legacy/models/test_revision.py
    M ckan/tests/legacy/models/test_user.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/test_datapreview.py
    M ckan/tests/lib/test_jobs.py
    M ckan/tests/lib/test_mailer.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    R ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/test_coding_standards.py
    M ckan/views/admin.py
    M ckan/views/api.py
    M ckan/views/group.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/logic/action.py
    M ckanext/example_idatastorebackend/example_sqlite.py
    M ckanext/multilingual/solr/schema.xml
    M ckanext/reclineview/plugin.py
    M ckanext/stats/stats.py
    M ckanext/stats/templates/ckanext/stats/index.html
    M ckanext/stats/tests/test_stats_lib.py
    M doc/maintaining/configuration.rst
    M doc/maintaining/email-notifications.rst
    M requirements.in
    M requirements.txt
    M setup.py

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: f2cea089bc0aaeede06d98449c4e9eb65e8c2f14
      https://github.com/ckan/ckan/commit/f2cea089bc0aaeede06d98449c4e9eb65e8c2f14
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py
    M ckan/logic/schema.py
    M ckan/logic/validators.py
    M ckan/tests/logic/test_validators.py
    M ckanext/datapusher/logic/schema.py
    M ckanext/datastore/blueprint.py
    M ckanext/datastore/logic/schema.py

  Log Message:
  -----------
  Merge branch 'iamarnavgarg-iamarnavgarg-patch-1'


  Commit: 7fc8ba2840c744e05c8f89615b957d4bd11e0e4d
      https://github.com/ckan/ckan/commit/7fc8ba2840c744e05c8f89615b957d4bd11e0e4d
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/model/__init__.py
    M ckan/model/core.py
    M ckan/model/package.py
    A ckan/model/system.py
    M ckan/model/tag.py
    M ckan/model/vocabulary.py
    M ckan/plugins/__init__.py
    M ckan/plugins/core.py

  Log Message:
  -----------
  Fix some circular imports, ready for py3.


  Commit: ab6cf89cf76685815b660af2fa1296680008f750
      https://github.com/ckan/ckan/commit/ab6cf89cf76685815b660af2fa1296680008f750
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-15 (Fri, 15 Nov 2019)

  Changed paths:
    M ckan/lib/redis.py

  Log Message:
  -----------
  Fix redis import error - otherwise it tries to import itself?


  Commit: 160455c63cba29d72fb1c0d531b6ac310e370498
      https://github.com/ckan/ckan/commit/160455c63cba29d72fb1c0d531b6ac310e370498
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-17 (Sun, 17 Nov 2019)

  Changed paths:
    M ckan/cli/user.py

  Log Message:
  -----------
  PEP 8


  Commit: 08bd54ac754160ec7c86d59fd999fa55c5adff2a
      https://github.com/ckan/ckan/commit/08bd54ac754160ec7c86d59fd999fa55c5adff2a
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-17 (Sun, 17 Nov 2019)

  Changed paths:
    M ckan/cli/user.py

  Log Message:
  -----------
  PEP 8


  Commit: c461d99270f4ba99ceb077457957432522dfaa7f
      https://github.com/ckan/ckan/commit/c461d99270f4ba99ceb077457957432522dfaa7f
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-17 (Sun, 17 Nov 2019)

  Changed paths:
    M ckan/cli/user.py

  Log Message:
  -----------
  PEP 8


  Commit: ab7636b747071e1531d79b1e5ca852966c25bb41
      https://github.com/ckan/ckan/commit/ab7636b747071e1531d79b1e5ca852966c25bb41
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-18 (Mon, 18 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/jobs.py

  Log Message:
  -----------
  CLI. jobs


  Commit: b52ee90b4e39a27c7af711af4438b539b5671248
      https://github.com/ckan/ckan/commit/b52ee90b4e39a27c7af711af4438b539b5671248
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-18 (Mon, 18 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/front_end_build.py

  Log Message:
  -----------
  CLI. front-end-build


  Commit: 57593c07caededf965df676afa744026942f8192
      https://github.com/ckan/ckan/commit/57593c07caededf965df676afa744026942f8192
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-18 (Mon, 18 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/profile.py

  Log Message:
  -----------
  CLI. profile


  Commit: 77310b6b71453383c97c73c2cbeddac6f811a544
      https://github.com/ckan/ckan/commit/77310b6b71453383c97c73c2cbeddac6f811a544
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-18 (Mon, 18 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/sysadmin.py

  Log Message:
  -----------
  CLI. sysadmin


  Commit: dffaaa0660a54c45186a1472a89ada8a4067f11d
      https://github.com/ckan/ckan/commit/dffaaa0660a54c45186a1472a89ada8a4067f11d
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-18 (Mon, 18 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/views.py

  Log Message:
  -----------
  CLI. views


  Commit: 02a1242b5fbc211467a4a97da1b41533f17bbb04
      https://github.com/ckan/ckan/commit/02a1242b5fbc211467a4a97da1b41533f17bbb04
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-18 (Mon, 18 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py
    M ckan/logic/schema.py
    M ckan/logic/validators.py
    M ckan/templates/package/snippets/additional_info.html
    M ckan/templates/snippets/additional_info.html
    M ckan/tests/logic/test_validators.py
    M ckanext/datapusher/logic/schema.py
    M ckanext/datastore/blueprint.py
    M ckanext/datastore/logic/schema.py

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: f04c2da03c43f6e92aa1d2987c5174e054703d9f
      https://github.com/ckan/ckan/commit/f04c2da03c43f6e92aa1d2987c5174e054703d9f
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-18 (Mon, 18 Nov 2019)

  Changed paths:
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/logic/test_validators.py
    M ckanext/example_iconfigurer/tests/test_example_iconfigurer.py
    M ckanext/example_idatasetform/tests/test_controllers.py
    M ckanext/example_idatasetform/tests/test_example_idatasetform.py
    M ckanext/example_igroupform/tests/test_controllers.py
    M ckanext/example_ipermissionlabels/tests/test_example_ipermissionlabels.py
    M ckanext/example_ivalidators/tests/test_ivalidators.py
    M ckanext/example_theme_docs/custom_emails/tests.py

  Log Message:
  -----------
  Remove few extra nose asserts


  Commit: 5d8dcdc6aaee79674407b4941d5dea2de4988c0d
      https://github.com/ckan/ckan/commit/5d8dcdc6aaee79674407b4941d5dea2de4988c0d
  Author: howff <3064316+howff at users.noreply.github.com>
  Date:   2019-11-19 (Tue, 19 Nov 2019)

  Changed paths:
    M ckan/public/base/javascript/client.js

  Log Message:
  -----------
  parseCompletions handles v3 api result

v2 api returns a ResultSet: { Result: { Name: xxx } } but the v3 api returns result: [ xxx ] so map the latter to the former.


  Commit: d6f3a8398c30ea7148eb2bf0ff18bf9b81085232
      https://github.com/ckan/ckan/commit/d6f3a8398c30ea7148eb2bf0ff18bf9b81085232
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-19 (Tue, 19 Nov 2019)

  Changed paths:
    M ckan/cli/user.py

  Log Message:
  -----------
  Update imports


  Commit: a12b565948e0fe82d671f5d08f012685f3bacd0f
      https://github.com/ckan/ckan/commit/a12b565948e0fe82d671f5d08f012685f3bacd0f
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-19 (Tue, 19 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/profile.py

  Log Message:
  -----------
  Merge pull request #5083 from DataShades/cli-profile

CLI. profile


  Commit: 0378262ac901ac93fdf3981717c749169fcfe5f2
      https://github.com/ckan/ckan/commit/0378262ac901ac93fdf3981717c749169fcfe5f2
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-19 (Tue, 19 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/front_end_build.py

  Log Message:
  -----------
  Merge pull request #5082 from DataShades/cli-front-end-build

CLI. front-end-build


  Commit: 68aa5316be247d57cae5de2192ff56599f3a7cf1
      https://github.com/ckan/ckan/commit/68aa5316be247d57cae5de2192ff56599f3a7cf1
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-19 (Tue, 19 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/jobs.py

  Log Message:
  -----------
  Merge pull request #5081 from DataShades/cli-jobs

CLI. jobs


  Commit: cb73287777c6dad9f3144c785123660de1ad9b33
      https://github.com/ckan/ckan/commit/cb73287777c6dad9f3144c785123660de1ad9b33
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-19 (Tue, 19 Nov 2019)

  Changed paths:
    M .circleci/config.yml
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/legacy/functional/api/__init__.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    M ckan/tests/legacy/functional/api/test_util.py
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/misc/test_mock_mail_server.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/test_mailer.py
    M ckan/tests/logic/action/test_delete.py
    R ckan/tests/migration/test_migrate_package_activity.py
    M ckan/tests/model/test_system_info.py
    M ckanext/example_flask_iblueprint/tests/test_routes.py
    M ckanext/example_flask_streaming/tests/test_streaming_responses.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_toolkit.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_update_config.py
    M ckanext/example_idatastorebackend/test/test_plugin.py
    M ckanext/example_itranslation/tests/test_plugin.py
    M ckanext/stats/tests/test_stats_lib.py
    M ckanext/webpageview/tests/test_view.py

  Log Message:
  -----------
  replace nose asserts


  Commit: bdd9c1b6c4ac20e54a2a721493737ffc680422cd
      https://github.com/ckan/ckan/commit/bdd9c1b6c4ac20e54a2a721493737ffc680422cd
  Author: Jinil Lee <usingsky at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/public/base/css/fuchsia.css
    M ckan/public/base/css/green.css
    M ckan/public/base/css/main-rtl.css
    M ckan/public/base/css/main.css
    M ckan/public/base/css/maroon.css
    M ckan/public/base/css/red.css

  Log Message:
  -----------
  add difflib style


  Commit: 5b880ca71e7ecf4985a6d5c8bd92b0bd8c9106e8
      https://github.com/ckan/ckan/commit/5b880ca71e7ecf4985a6d5c8bd92b0bd8c9106e8
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-20 (Wed, 20 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/views.py

  Log Message:
  -----------
  Merge pull request #5086 from DataShades/cli-views

CLI. views


  Commit: ccaeaaeb58f579f4fb5b366b00768dda8fe861b4
      https://github.com/ckan/ckan/commit/ccaeaaeb58f579f4fb5b366b00768dda8fe861b4
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M requirements-py2.in
    M requirements.in

  Log Message:
  -----------
  Minor tweaks


  Commit: c16531ef948d16c694a492549adad00d6a54f483
      https://github.com/ckan/ckan/commit/c16531ef948d16c694a492549adad00d6a54f483
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/cli/generate.py

  Log Message:
  -----------
  [#5079] use cookiecutter only as extension template engine


  Commit: 92135715bf40e2b1f0200946132779f0d7e61fb3
      https://github.com/ckan/ckan/commit/92135715bf40e2b1f0200946132779f0d7e61fb3
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/public/base/css/fuchsia.css
    M ckan/public/base/css/green.css
    M ckan/public/base/css/main-rtl.css
    M ckan/public/base/css/main.css
    M ckan/public/base/css/maroon.css
    M ckan/public/base/css/red.css

  Log Message:
  -----------
  Merge pull request #5092 from usingsky/add_difflib_style

add difflib style


  Commit: 34800583ff497e27dfc3360261f78be1c0e1ec93
      https://github.com/ckan/ckan/commit/34800583ff497e27dfc3360261f78be1c0e1ec93
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/cli/generate.py

  Log Message:
  -----------
  Fix pep8 issues


  Commit: 18ae657203bb4b865f4732ad659af4fa42788d6c
      https://github.com/ckan/ckan/commit/18ae657203bb4b865f4732ad659af4fa42788d6c
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M .circleci/config.yml
    M Dockerfile
    M bin/travis-install-dependencies
    M ckan/common.py
    M doc/maintaining/installing/install-from-source.rst
    M doc/maintaining/upgrading/index.rst
    A doc/maintaining/upgrading/upgrade-to-python3.rst
    A requirements-py2.in
    A requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge pull request #5063 from ckan/py3-requirements

Add requirements.txt for python 3


  Commit: dfd93eec82d813cfae980bd4eedc880dc42a26d2
      https://github.com/ckan/ckan/commit/dfd93eec82d813cfae980bd4eedc880dc42a26d2
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/lib/base.py
    M ckan/lib/helpers.py
    M ckan/plugins/toolkit.py

  Log Message:
  -----------
  Replace webhelpers.html.tags.literal


  Commit: 2001c688f77e9294a4f0681e12d033d59c642b4b
      https://github.com/ckan/ckan/commit/2001c688f77e9294a4f0681e12d033d59c642b4b
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/cli/generate.py

  Log Message:
  -----------
  Merge pull request #5093 from DataShades/5079-avoid-using-cookiecutter-in-prod

[#5079] use cookiecutter only as extension template engine


  Commit: ef103f02292e0b50fbe7edc6a9e07f70d2fb9f45
      https://github.com/ckan/ckan/commit/ef103f02292e0b50fbe7edc6a9e07f70d2fb9f45
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/controllers/admin.py
    M ckan/controllers/package.py
    M ckan/lib/cli.py
    M ckan/lib/helpers.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/redis.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/index.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/core.py
    M ckan/model/dashboard.py
    M ckan/model/domain_object.py
    M ckan/model/follower.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/rating.py
    M ckan/model/resource.py
    M ckan/model/resource_view.py
    A ckan/model/system.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/task_status.py
    M ckan/model/term_translation.py
    M ckan/model/tracking.py
    M ckan/model/types.py
    M ckan/model/user.py
    M ckan/model/vocabulary.py
    M ckan/plugins/__init__.py
    M ckan/plugins/core.py

  Log Message:
  -----------
  Merge pull request #5069 from ckan/py3-imports

[#4801] Transform relative imports into absolute ones


  Commit: 032ee106cc4ae51880087243bd25bfa3b9a6ab59
      https://github.com/ckan/ckan/commit/032ee106cc4ae51880087243bd25bfa3b9a6ab59
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/lib/search/index.py

  Log Message:
  -----------
  [#4801] string.letters not present in py3


  Commit: 3e2efb621c0f84f7a0fb73f849993c5839aaea24
      https://github.com/ckan/ckan/commit/3e2efb621c0f84f7a0fb73f849993c5839aaea24
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/config/environment.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/tests/legacy/lib/test_navl.py
    R ckan/tests/lib/test_navl.py
    M doc/extensions/adding-custom-fields.rst

  Log Message:
  -----------
  [#4800] Remove formencode support


  Commit: 1e51ff3030c23dcd4a26aaf8a131173a70721426
      https://github.com/ckan/ckan/commit/1e51ff3030c23dcd4a26aaf8a131173a70721426
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/config/environment.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/tests/legacy/lib/test_navl.py
    R ckan/tests/lib/test_navl.py
    M doc/extensions/adding-custom-fields.rst

  Log Message:
  -----------
  [#4800] [#4800] Remove formencode support


  Commit: fd361629673d7dd6f44ccb2ff405d0bea435582b
      https://github.com/ckan/ckan/commit/fd361629673d7dd6f44ccb2ff405d0bea435582b
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/lib/helpers.py
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Use dominate instead of webhelpers.html.tags


  Commit: 53a258cf153661edd6c24ebeae2089310388bdd1
      https://github.com/ckan/ckan/commit/53a258cf153661edd6c24ebeae2089310388bdd1
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/controllers/error.py
    M ckan/lib/helpers.py
    M ckan/tests/legacy/functional/api/base.py

  Log Message:
  -----------
  Completely drop webhelpers.html


  Commit: 6bc09dfe8a59c9c5fc3088d06bfab18fbc431e42
      https://github.com/ckan/ckan/commit/6bc09dfe8a59c9c5fc3088d06bfab18fbc431e42
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M .circleci/config.yml
    M Dockerfile
    M bin/travis-install-dependencies
    M ckan/cli/generate.py
    M ckan/common.py
    M ckan/controllers/admin.py
    M ckan/controllers/package.py
    M ckan/lib/cli.py
    M ckan/lib/helpers.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/redis.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/index.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/core.py
    M ckan/model/dashboard.py
    M ckan/model/domain_object.py
    M ckan/model/follower.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/rating.py
    M ckan/model/resource.py
    M ckan/model/resource_view.py
    A ckan/model/system.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/task_status.py
    M ckan/model/term_translation.py
    M ckan/model/tracking.py
    M ckan/model/types.py
    M ckan/model/user.py
    M ckan/model/vocabulary.py
    M ckan/plugins/__init__.py
    M ckan/plugins/core.py
    M doc/maintaining/installing/install-from-source.rst
    M doc/maintaining/upgrading/index.rst
    A doc/maintaining/upgrading/upgrade-to-python3.rst
    A requirements-py2.in
    A requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into drop-webhelpers-html-utils


  Commit: c7c0dee13563dd2459ec1411606ca05a79285e8e
      https://github.com/ckan/ckan/commit/c7c0dee13563dd2459ec1411606ca05a79285e8e
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/lib/helpers.py

  Log Message:
  -----------
  Drop webhelpers.text


  Commit: 8a650abea56add5ca007704c193920f1949f7610
      https://github.com/ckan/ckan/commit/8a650abea56add5ca007704c193920f1949f7610
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/lib/helpers.py
    A ckan/lib/pagination.py
    M requirements-py2.in
    M requirements-py2.txt

  Log Message:
  -----------
  Replace pager


  Commit: 5db6a46938b4a65bd817f44d268319291a6fca42
      https://github.com/ckan/ckan/commit/5db6a46938b4a65bd817f44d268319291a6fca42
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/config/environment.py
    M ckan/lib/base.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    A ckan/tests/migration/revision_legacy_code_tests.py

  Log Message:
  -----------
  [#4801] Conditional imports for pylons / py2 only stuff

The webhelpers ones should be removed once #4794 is done


  Commit: 4bd483bc9880d1a12a27d99a71e5ffed92eec180
      https://github.com/ckan/ckan/commit/4bd483bc9880d1a12a27d99a71e5ffed92eec180
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M ckan/tests/controllers/test_api.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_update.py
    M ckanext/datastore/backend/postgres.py

  Log Message:
  -----------
  [#4801] StringIO is no longer a module on py3


  Commit: 52e6f5e0bc6e0a8b97f3989f4adc5962090d6ac7
      https://github.com/ckan/ckan/commit/52e6f5e0bc6e0a8b97f3989f4adc5962090d6ac7
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-21 (Thu, 21 Nov 2019)

  Changed paths:
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  [#4801] Add beaker as requirement (previously came via Pylons)


  Commit: 0b27bde48fc34bd0bd6301455461ae1b6314a2f3
      https://github.com/ckan/ckan/commit/0b27bde48fc34bd0bd6301455461ae1b6314a2f3
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/tests/legacy/functional/api/base.py

  Log Message:
  -----------
  Re-add needed import


  Commit: 465400c2def4d42cf3ec37a12cf14369d727f02c
      https://github.com/ckan/ckan/commit/465400c2def4d42cf3ec37a12cf14369d727f02c
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/cli/datastore.py
    M ckan/lib/cli.py
    M ckan/model/__init__.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/tests/helpers.py

  Log Message:
  -----------
  [#4801] Refactor parse_db_config to avoid importing from old cli


  Commit: 472663aa4648e58f2c2b6b99604b68118b11c5fd
      https://github.com/ckan/ckan/commit/472663aa4648e58f2c2b6b99604b68118b11c5fd
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/plugins/toolkit.py

  Log Message:
  -----------
  [#4801] Selective loading in plugins toolkit

This took a while to get right because exceptions raised during the
toolkit initialization fail silently and the sympton would be the an
import error later on when trying to import something from the toolkit:

from ckan.plugins.toolkit import get_action

ImportError: cannot import name 'get_action'

TODO: Sort out what gets exposed to extensions in terms of CLI commands


  Commit: 9097ebc180d55f99b07560c950208fb2a8177ba4
      https://github.com/ckan/ckan/commit/9097ebc180d55f99b07560c950208fb2a8177ba4
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/controllers/error.py
    M ckan/lib/helpers.py
    M ckan/lib/pagination.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/lib/test_helpers.py

  Log Message:
  -----------
  Update tests


  Commit: 40895ddce7803499e813e6a2b4f87bf5da07b7d8
      https://github.com/ckan/ckan/commit/40895ddce7803499e813e6a2b4f87bf5da07b7d8
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/config/middleware/__init__.py

  Log Message:
  -----------
  [#4801] Use only Flask WSGI app in py3


  Commit: 3ed55d6530b8a6b95cf9ced6341e3df132f54f1f
      https://github.com/ckan/ckan/commit/3ed55d6530b8a6b95cf9ced6341e3df132f54f1f
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckanext/datastore/blueprint.py

  Log Message:
  -----------
  [#4801] izip_longest renamed in py3


  Commit: 14540fc235c8ae8ad8b6e09329861d1868061f76
      https://github.com/ckan/ckan/commit/14540fc235c8ae8ad8b6e09329861d1868061f76
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/common.py

  Log Message:
  -----------
  [#4801] Don't proxy keys to pylons config on py3


  Commit: da100c82ce4da90f8267879ef11789c65d0da8d8
      https://github.com/ckan/ckan/commit/da100c82ce4da90f8267879ef11789c65d0da8d8
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/config/environment.py

  Log Message:
  -----------
  [#4801] Selective execution in environment.py


  Commit: ce577f295ac15277aac935363c1a8e961681ce1e
      https://github.com/ckan/ckan/commit/ce577f295ac15277aac935363c1a8e961681ce1e
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/lib/mailer.py

  Log Message:
  -----------
  [#4801] Normalize email module name


  Commit: 1a0e96515ed8b75866bf459a062c386744205467
      https://github.com/ckan/ckan/commit/1a0e96515ed8b75866bf459a062c386744205467
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py

  Log Message:
  -----------
  [#4801] Avoid auto-importing proxies like request

As otherwise Flask will raise a RuntimeError exceptions on startup as
they are not in the context of a web request.


  Commit: 2654012830e36b849a998c4c90d81d6894ee7e74
      https://github.com/ckan/ckan/commit/2654012830e36b849a998c4c90d81d6894ee7e74
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/lib/helpers.py

  Log Message:
  -----------
  Update file/submit helpers


  Commit: 78a54dd0afcd5a8d72ef0c48ca1337f6e0a286b4
      https://github.com/ckan/ckan/commit/78a54dd0afcd5a8d72ef0c48ca1337f6e0a286b4
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M .circleci/config.yml
    M Dockerfile
    M bin/travis-install-dependencies
    M ckan/cli/cli.py
    A ckan/cli/front_end_build.py
    M ckan/cli/generate.py
    A ckan/cli/jobs.py
    A ckan/cli/profile.py
    A ckan/cli/views.py
    M ckan/common.py
    M ckan/controllers/admin.py
    M ckan/controllers/package.py
    M ckan/lib/cli.py
    M ckan/lib/helpers.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/redis.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/index.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/core.py
    M ckan/model/dashboard.py
    M ckan/model/domain_object.py
    M ckan/model/follower.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/rating.py
    M ckan/model/resource.py
    M ckan/model/resource_view.py
    A ckan/model/system.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/task_status.py
    M ckan/model/term_translation.py
    M ckan/model/tracking.py
    M ckan/model/types.py
    M ckan/model/user.py
    M ckan/model/vocabulary.py
    M ckan/plugins/__init__.py
    M ckan/plugins/core.py
    M ckan/public/base/css/fuchsia.css
    M ckan/public/base/css/green.css
    M ckan/public/base/css/main-rtl.css
    M ckan/public/base/css/main.css
    M ckan/public/base/css/maroon.css
    M ckan/public/base/css/red.css
    M doc/maintaining/installing/install-from-source.rst
    M doc/maintaining/upgrading/index.rst
    A doc/maintaining/upgrading/upgrade-to-python3.rst
    A requirements-py2.in
    A requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: fe4f38771b329645f94c3cdbeee07438003ae4eb
      https://github.com/ckan/ckan/commit/fe4f38771b329645f94c3cdbeee07438003ae4eb
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/plugins/toolkit.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/test_coding_standards.py

  Log Message:
  -----------
  pep8 et al


  Commit: 19bf78ca08fb3beda3c6cc728ce5b4cba8247403
      https://github.com/ckan/ckan/commit/19bf78ca08fb3beda3c6cc728ce5b4cba8247403
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-22 (Fri, 22 Nov 2019)

  Changed paths:
    M ckanext/datastore/commands.py

  Log Message:
  -----------
  Fix wrong import from 465400


  Commit: 5184cb59ae6e688f29f369c877c95544a3e369df
      https://github.com/ckan/ckan/commit/5184cb59ae6e688f29f369c877c95544a3e369df
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-24 (Sun, 24 Nov 2019)

  Changed paths:
    M ckan/cli/user.py

  Log Message:
  -----------
  Change secho with error_shout


  Commit: b22020c3804befa58cb7222912c6e72d9483f983
      https://github.com/ckan/ckan/commit/b22020c3804befa58cb7222912c6e72d9483f983
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-26 (Tue, 26 Nov 2019)

  Changed paths:
    M ckan/public/base/less/dataset.less

  Log Message:
  -----------
  Add diff styles from #5092 to less

Otherwise they will be lost when the frontend is rebuilt


  Commit: e7ed73214b3b56222b417b63169c504a1dfd573c
      https://github.com/ckan/ckan/commit/e7ed73214b3b56222b417b63169c504a1dfd573c
  Author: Konstantin Sivakov <konstantin.sivakov at keitaro.com>
  Date:   2019-11-26 (Tue, 26 Nov 2019)

  Changed paths:
    M ckan/config/environment.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/tests/legacy/lib/test_navl.py
    R ckan/tests/lib/test_navl.py
    M doc/extensions/adding-custom-fields.rst

  Log Message:
  -----------
  Merge pull request #5094 from ckan/4800-remove-formencode-support-2

[#4800] Remove formencode support


  Commit: e35235770c5d146f07a1311779e768ea8fc76a81
      https://github.com/ckan/ckan/commit/e35235770c5d146f07a1311779e768ea8fc76a81
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M ckan/authz.py
    M ckan/cli/translation.py
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/flask_app.py
    M ckan/controllers/package.py
    M ckan/i18n/check_po_files.py
    M ckan/lib/base.py
    M ckan/lib/dictization/__init__.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/lazyjson.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/navl/validators.py
    M ckan/lib/search/index.py
    M ckan/logic/__init__.py
    M ckan/logic/action/__init__.py
    M ckan/logic/action/update.py
    M ckan/logic/converters.py
    M ckan/migration/revision_legacy_code.py
    M ckan/tests/controllers/test_template.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/views/api.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckan/views/resource.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/multilingual/plugin.py
    M ckanext/reclineview/plugin.py
    M ckanext/textview/plugin.py

  Log Message:
  -----------
  [#4801] Replace usage of iteritems() with six.iteritems()


  Commit: e7b569bd6c877d8dad4ea272877f11b5a1bd9bce
      https://github.com/ckan/ckan/commit/e7b569bd6c877d8dad4ea272877f11b5a1bd9bce
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:

  Log Message:
  -----------
  Merge branch 'master' into py3-general-support


  Commit: a6c15d6792d33c87efd6a5e30c99db1d4316db96
      https://github.com/ckan/ckan/commit/a6c15d6792d33c87efd6a5e30c99db1d4316db96
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M ckan/authz.py
    M ckan/cli/translation.py
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/flask_app.py
    M ckan/controllers/package.py
    M ckan/i18n/check_po_files.py
    M ckan/lib/base.py
    M ckan/lib/dictization/__init__.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/lazyjson.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/navl/validators.py
    M ckan/lib/search/index.py
    M ckan/logic/__init__.py
    M ckan/logic/action/__init__.py
    M ckan/logic/action/update.py
    M ckan/logic/converters.py
    M ckan/migration/revision_legacy_code.py
    M ckan/tests/controllers/test_template.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/views/api.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckan/views/resource.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/multilingual/plugin.py
    M ckanext/reclineview/plugin.py
    M ckanext/textview/plugin.py

  Log Message:
  -----------
  [#4801] Replace usage of iteritems() with six.iteritems()


  Commit: f97addb57bf21a0040bca141e451f3abc510dcee
      https://github.com/ckan/ckan/commit/f97addb57bf21a0040bca141e451f3abc510dcee
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M ckan/tests/config/test_middleware.py

  Log Message:
  -----------
  [#4801] Update test to use Flask exception


  Commit: 8840b9ef0c46a90e71afe3b0a1efcb4f1cbeb93f
      https://github.com/ckan/ckan/commit/8840b9ef0c46a90e71afe3b0a1efcb4f1cbeb93f
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M ckan/lib/i18n.py

  Log Message:
  -----------
  [#4801] Add missing import


  Commit: 82e7e1de4853d6cd3b91ab8ea188547bdffa29d8
      https://github.com/ckan/ckan/commit/82e7e1de4853d6cd3b91ab8ea188547bdffa29d8
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M ckan/config/middleware/__init__.py
    M ckan/lib/base.py

  Log Message:
  -----------
  [#4801] Add more missing imports


  Commit: ee78b742a7e49969e4f890f5df62475fa087309c
      https://github.com/ckan/ckan/commit/ee78b742a7e49969e4f890f5df62475fa087309c
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M ckan/lib/search/index.py

  Log Message:
  -----------
  [#4801] Yet another missing import


  Commit: f6dbc7cf32bf25efcde0cffddc9d3433a9a13343
      https://github.com/ckan/ckan/commit/f6dbc7cf32bf25efcde0cffddc9d3433a9a13343
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M ckan/config/middleware/__init__.py
    M ckan/lib/base.py
    M ckan/lib/i18n.py
    M ckan/lib/search/index.py
    M ckan/tests/legacy/test_coding_standards.py

  Log Message:
  -----------
  Merge branch 'py3-iteritems' into py3-general-support


  Commit: ad15a78950eed436e212302e828cca69437829a0
      https://github.com/ckan/ckan/commit/ad15a78950eed436e212302e828cca69437829a0
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M ckan/lib/helpers.py

  Log Message:
  -----------
  [#4801] Last one promise


  Commit: 5f240f4a21b1f192fe634cac626d9656ccd18bc8
      https://github.com/ckan/ckan/commit/5f240f4a21b1f192fe634cac626d9656ccd18bc8
  Author: David Read <david.read at hackneyworkshop.com>
  Date:   2019-11-27 (Wed, 27 Nov 2019)

  Changed paths:
    M ckan/authz.py
    M ckan/cli/translation.py
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/flask_app.py
    M ckan/controllers/package.py
    M ckan/i18n/check_po_files.py
    M ckan/lib/base.py
    M ckan/lib/dictization/__init__.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/lazyjson.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/navl/validators.py
    M ckan/lib/search/index.py
    M ckan/logic/__init__.py
    M ckan/logic/action/__init__.py
    M ckan/logic/action/update.py
    M ckan/logic/converters.py
    M ckan/migration/revision_legacy_code.py
    M ckan/tests/controllers/test_template.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/views/api.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckan/views/resource.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/multilingual/plugin.py
    M ckanext/reclineview/plugin.py
    M ckanext/textview/plugin.py

  Log Message:
  -----------
  Merge pull request #5104 from ckan/py3-iteritems

[#4801] Replace usage of iteritems() with six.iteritems()


  Commit: cd8ef0449623f27ecbb2f508e631e92849e8b250
      https://github.com/ckan/ckan/commit/cd8ef0449623f27ecbb2f508e631e92849e8b250
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:

  Log Message:
  -----------
  Merge branch 'master' into py3-general-support


  Commit: 8500baea2867dcad771617ac84764d0ac990d9b7
      https://github.com/ckan/ckan/commit/8500baea2867dcad771617ac84764d0ac990d9b7
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py

  Log Message:
  -----------
  [#4801] Catch exception outside request context


  Commit: 9dff2edc47facd39808bb897fe9fda300c74418a
      https://github.com/ckan/ckan/commit/9dff2edc47facd39808bb897fe9fda300c74418a
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/lib/fanstatic_resources.py
    M scripts/4042_fix_resource_extras.py

  Log Message:
  -----------
  [#4801] Rename configparser module


  Commit: 313f6515b2f704312126d9868afb63b54b9c0890
      https://github.com/ckan/ckan/commit/313f6515b2f704312126d9868afb63b54b9c0890
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  [#4801] Upgrade fanstatic on to a py3 compatible version (only in py3)


  Commit: aa2a57ef656ae0349d14ef555f46ccbc82161880
      https://github.com/ckan/ckan/commit/aa2a57ef656ae0349d14ef555f46ccbc82161880
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/logic/__init__.py

  Log Message:
  -----------
  [#4801] Catch exception outside request context


  Commit: 690a33f9da2df204acf99aa46550b2514342a8d5
      https://github.com/ckan/ckan/commit/690a33f9da2df204acf99aa46550b2514342a8d5
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/lib/fanstatic_resources.py
    M scripts/4042_fix_resource_extras.py

  Log Message:
  -----------
  [#4801] Rename configparser module


  Commit: 9851dd372a71af3097971893ea6825f70e7e65d0
      https://github.com/ckan/ckan/commit/9851dd372a71af3097971893ea6825f70e7e65d0
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  [#4801] Upgrade fanstatic on to a py3 compatible version (only in py3)


  Commit: 5a6e7ad0888bfab6b28fa64819a63db6ebc9fada
      https://github.com/ckan/ckan/commit/5a6e7ad0888bfab6b28fa64819a63db6ebc9fada
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/views/admin.py
    M ckan/views/dataset.py
    M ckan/views/home.py
    M ckan/views/resource.py

  Log Message:
  -----------
  [#4801] Don't import stuff from the old controllers


  Commit: 0018cc2fec696f65080bbe42cbc15c1c904d3135
      https://github.com/ckan/ckan/commit/0018cc2fec696f65080bbe42cbc15c1c904d3135
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/lib/app_globals.py

  Log Message:
  -----------
  [#4801] Don't decode str in py3


  Commit: 1640a46fac313c389d790966562f58cba0bc7bd9
      https://github.com/ckan/ckan/commit/1640a46fac313c389d790966562f58cba0bc7bd9
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/plugins/toolkit.py

  Log Message:
  -----------
  [#4801] Avoid using h.url_for_static when adding a public folder

As at this point there isn't a Flask app context yet and we can't call
the url_for function. But if I understand the code correctly we just
want a link to the root of the site, taking into account stuff like root
path settings etc


  Commit: 3d9c30d5a33d82d6ba39d392f9ca48a813cd8623
      https://github.com/ckan/ckan/commit/3d9c30d5a33d82d6ba39d392f9ca48a813cd8623
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/lib/authenticator.py
    M ckan/lib/repoze_plugins/friendly_form.py

  Log Message:
  -----------
  [#4801] Use the implementer decorator from zope.interface

Rather than the implements method, as this is only supported on py2

https://twistedmatrix.com/pipermail/twisted-python/2013-January/026414.html


  Commit: d309e140055fc4dbedb5621b89cb9b9ffdbdc1fc
      https://github.com/ckan/ckan/commit/d309e140055fc4dbedb5621b89cb9b9ffdbdc1fc
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/controllers/error.py
    M ckan/lib/base.py
    M ckan/lib/helpers.py
    A ckan/lib/pagination.py
    M ckan/plugins/toolkit.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/lib/test_helpers.py
    M requirements-py2.in
    M requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'drop-webhelpers-html-utils' of https://github.com/DataShades/ckan into DataShades-drop-webhelpers-html-utils


  Commit: b4d7606f391ed8bead98d7cc9edfc7d916c2e13e
      https://github.com/ckan/ckan/commit/b4d7606f391ed8bead98d7cc9edfc7d916c2e13e
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/lib/pagination.py

  Log Message:
  -----------
  Add license header to the pagination module


  Commit: 0afd7da86b55c34a1efbea74c0a58247689c44fe
      https://github.com/ckan/ckan/commit/0afd7da86b55c34a1efbea74c0a58247689c44fe
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/controllers/error.py
    M ckan/lib/base.py
    M ckan/lib/helpers.py
    A ckan/lib/pagination.py
    M ckan/plugins/toolkit.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/lib/test_helpers.py
    M requirements-py2.in
    M requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'DataShades-drop-webhelpers-html-utils'


  Commit: 8f8e0218f47c14afbeaa0f54a979b0f4f433cca2
      https://github.com/ckan/ckan/commit/8f8e0218f47c14afbeaa0f54a979b0f4f433cca2
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/views/feed.py
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'dont-use-webhelpers-in-feeds' of https://github.com/DataShades/ckan into DataShades-dont-use-webhelpers-in-feeds


  Commit: 871bb21c574915e0499515e2281417c73643cf19
      https://github.com/ckan/ckan/commit/871bb21c574915e0499515e2281417c73643cf19
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M requirements-py2.in
    M requirements-py2.txt
    M requirements.txt

  Log Message:
  -----------
  Add proper requirements for feedgen in both py2 and py3


  Commit: aaac4804a465c3bf61f11f2c89cfa4b28e3389f5
      https://github.com/ckan/ckan/commit/aaac4804a465c3bf61f11f2c89cfa4b28e3389f5
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/views/feed.py

  Log Message:
  -----------
  Remove debug call


  Commit: 26a790c5100796363935d66684ad6201ffb7a137
      https://github.com/ckan/ckan/commit/26a790c5100796363935d66684ad6201ffb7a137
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/controllers/error.py
    M ckan/lib/base.py
    M ckan/lib/helpers.py
    A ckan/lib/pagination.py
    M ckan/plugins/toolkit.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/lib/test_helpers.py
    M ckan/views/feed.py
    M requirements-py2.in
    M requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'master' into py3-general-support-2


  Commit: d1ef3fa53fea632c751d45bc87438d65157581b6
      https://github.com/ckan/ckan/commit/d1ef3fa53fea632c751d45bc87438d65157581b6
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/views/feed.py

  Log Message:
  -----------
  Remove webhelpers based class


  Commit: 01605f1d436cfb2ed5ebc3509e36ee2d98d79c86
      https://github.com/ckan/ckan/commit/01605f1d436cfb2ed5ebc3509e36ee2d98d79c86
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/views/group.py

  Log Message:
  -----------
  [#4801] Remove unused imports (including pylons one) in group view


  Commit: 202ca1eb76c65428cf9937e5b113434b547e8bf4
      https://github.com/ckan/ckan/commit/202ca1eb76c65428cf9937e5b113434b547e8bf4
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/public/base/less/dataset.less

  Log Message:
  -----------
  Merge pull request #5101 from ckan/diff-styles-in-less

Add diff styles from #5092 to less


  Commit: 25e286e3e39f9d24eb4f7542fcc7d8b38ff55adb
      https://github.com/ckan/ckan/commit/25e286e3e39f9d24eb4f7542fcc7d8b38ff55adb
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/user.py

  Log Message:
  -----------
  Merge pull request #5080 from tino097/cli-user

Migrate User CLI


  Commit: 0121ee1be7bec92a61ef374268403e22578dbb50
      https://github.com/ckan/ckan/commit/0121ee1be7bec92a61ef374268403e22578dbb50
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/sysadmin.py

  Log Message:
  -----------
  Merge branch 'cli-sysadmin' of https://github.com/DataShades/ckan into DataShades-cli-sysadmin


  Commit: 6d68cd9a9215e2d636c13197681e4020b31b1341
      https://github.com/ckan/ckan/commit/6d68cd9a9215e2d636c13197681e4020b31b1341
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M doc/maintaining/getting-started.rst

  Log Message:
  -----------
  Update docs with ckan sysadmin command


  Commit: fbab8f51b36a293206fdd998d71ece27d2565951
      https://github.com/ckan/ckan/commit/fbab8f51b36a293206fdd998d71ece27d2565951
  Author: amercader <amercadero at gmail.com>
  Date:   2019-11-28 (Thu, 28 Nov 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/sysadmin.py
    M doc/maintaining/getting-started.rst

  Log Message:
  -----------
  Merge branch 'DataShades-cli-sysadmin'


  Commit: dd4f1c134a2aa8238a0e979a4d8ec6f35a957c62
      https://github.com/ckan/ckan/commit/dd4f1c134a2aa8238a0e979a4d8ec6f35a957c62
  Author: calexandr <cherniavskyi.alexandr at linkdigital.com.au>
  Date:   2019-12-03 (Tue, 03 Dec 2019)

  Changed paths:
    M ckan/cli/cli.py
    M ckan/plugins/interfaces.py

  Log Message:
  -----------
  [#5108] Alloe extensions to define Click commands

Currently, there is no way for extension to add commands
to the main ckan one

This changes implements the possibility for extensions
to do it.


  Commit: 750bbf30634080bfdd1d5913261279c906ad1144
      https://github.com/ckan/ckan/commit/750bbf30634080bfdd1d5913261279c906ad1144
  Author: Cody Boyko <cody.boyko2 at ontario.ca>
  Date:   2019-12-03 (Tue, 03 Dec 2019)

  Changed paths:
    M ckan/templates/page.html

  Log Message:
  -----------
  Remove alert-warning from flash div.

This class was added a while ago and overrides the passed in flash message category.


  Commit: 35298a2685075e99455ecfaeaf80c00c49c010a1
      https://github.com/ckan/ckan/commit/35298a2685075e99455ecfaeaf80c00c49c010a1
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-03 (Tue, 03 Dec 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/sysadmin.py
    A ckan/cli/user.py
    M ckan/controllers/error.py
    M ckan/lib/base.py
    M ckan/lib/helpers.py
    A ckan/lib/pagination.py
    M ckan/plugins/toolkit.py
    M ckan/public/base/less/dataset.less
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/lib/test_helpers.py
    M ckan/views/feed.py
    M doc/maintaining/getting-started.rst
    M requirements-py2.in
    M requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge branch 'master' into py3-general-support


  Commit: f93fc060f3dcfd0aa0f93d3a70f23ddb92d3486e
      https://github.com/ckan/ckan/commit/f93fc060f3dcfd0aa0f93d3a70f23ddb92d3486e
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-03 (Tue, 03 Dec 2019)

  Changed paths:
    M ckan/cli/cli.py
    A ckan/cli/sysadmin.py
    A ckan/cli/user.py
    M ckan/public/base/less/dataset.less
    M doc/maintaining/getting-started.rst

  Log Message:
  -----------
  Merge branch 'master' into py3-general-support-2


  Commit: c1bfc70fb371190ea8c591992f92d96c761130f2
      https://github.com/ckan/ckan/commit/c1bfc70fb371190ea8c591992f92d96c761130f2
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-03 (Tue, 03 Dec 2019)

  Changed paths:
    M ckan/lib/fanstatic_resources.py
    M scripts/4042_fix_resource_extras.py

  Log Message:
  -----------
  [#4801] Fix configparser imports


  Commit: 99fcae46c5240aa8da15332f43ebae5fd22c0b54
      https://github.com/ckan/ckan/commit/99fcae46c5240aa8da15332f43ebae5fd22c0b54
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-03 (Tue, 03 Dec 2019)

  Changed paths:
    M ckan/lib/fanstatic_resources.py
    M scripts/4042_fix_resource_extras.py

  Log Message:
  -----------
  [#4801] Fix configparser imports


  Commit: 6e456b264e95867740fb97452eb6348c9ff8be39
      https://github.com/ckan/ckan/commit/6e456b264e95867740fb97452eb6348c9ff8be39
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-04 (Wed, 04 Dec 2019)

  Changed paths:
    M ckan/plugins/toolkit.py

  Log Message:
  -----------
  Fix bad merge


  Commit: 360e32a043878ca5c8ddcef97f8795bea5c7d8b8
      https://github.com/ckan/ckan/commit/360e32a043878ca5c8ddcef97f8795bea5c7d8b8
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-12-05 (Thu, 05 Dec 2019)

  Changed paths:
    M ckan/templates/page.html

  Log Message:
  -----------
  Merge pull request #5113 from boykoc/patch-1

Remove alert-warning from flash div.


  Commit: 4f61ed8b45ff9957c03ea513b1d2526f44844c95
      https://github.com/ckan/ckan/commit/4f61ed8b45ff9957c03ea513b1d2526f44844c95
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/authz.py
    M ckan/cli/cli.py
    A ckan/cli/sysadmin.py
    M ckan/cli/translation.py
    A ckan/cli/user.py
    M ckan/config/environment.py
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/flask_app.py
    M ckan/controllers/error.py
    M ckan/controllers/package.py
    M ckan/i18n/check_po_files.py
    M ckan/lib/base.py
    M ckan/lib/dictization/__init__.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/lazyjson.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/navl/validators.py
    A ckan/lib/pagination.py
    M ckan/lib/search/index.py
    M ckan/logic/__init__.py
    M ckan/logic/action/__init__.py
    M ckan/logic/action/update.py
    M ckan/logic/converters.py
    M ckan/migration/revision_legacy_code.py
    M ckan/plugins/toolkit.py
    M ckan/public/base/less/dataset.less
    M ckan/templates/page.html
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/lib/test_navl.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/test_common.py
    M ckan/views/api.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckan/views/resource.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/multilingual/plugin.py
    M ckanext/reclineview/plugin.py
    M ckanext/textview/plugin.py
    M doc/extensions/adding-custom-fields.rst
    M doc/maintaining/getting-started.rst
    M requirements-py2.in
    M requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: 421691ca682ac4bb87204c2cb9d08eb36082c70d
      https://github.com/ckan/ckan/commit/421691ca682ac4bb87204c2cb9d08eb36082c70d
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/tests/legacy/lib/test_helpers.py
    R ckan/tests/lib/test_navl.py

  Log Message:
  -----------
  Fix errors after merging upstream


  Commit: 126f862293ab145f516bcd4e3d85f613278c7eed
      https://github.com/ckan/ckan/commit/126f862293ab145f516bcd4e3d85f613278c7eed
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/config/middleware/flask_app.py
    M ckan/views/__init__.py

  Log Message:
  -----------
  [#4801] Add routes.named_routes config option


  Commit: 92326d1b357e128bdd08bcb26a1eda255675830c
      https://github.com/ckan/ckan/commit/92326d1b357e128bdd08bcb26a1eda255675830c
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/lib/repoze_plugins/friendly_form.py

  Log Message:
  -----------
  [#4801] Handle webob py2/3 differences in friendly form


  Commit: 15440ebba7ed96ed1e9e93c93a6216e0a643395b
      https://github.com/ckan/ckan/commit/15440ebba7ed96ed1e9e93c93a6216e0a643395b
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/lib/navl/dictization_functions.py

  Log Message:
  -----------
  [#4801] Don't modify dict while in loop


  Commit: 3f44157c7efdb73ff1f5356224e02eb9988091f6
      https://github.com/ckan/ckan/commit/3f44157c7efdb73ff1f5356224e02eb9988091f6
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/model/license.py

  Log Message:
  -----------
  [#4801] Don't decode to unicode on py3, mark regexp in license model


  Commit: 621b008c9b2e7e07aef7410f85a61fec94154df0
      https://github.com/ckan/ckan/commit/621b008c9b2e7e07aef7410f85a61fec94154df0
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/lib/jinja_extensions.py

  Log Message:
  -----------
  [#4801] Use buitin next() function rather than the method


  Commit: 976b7072280a694e59de35f9095b9985bef882bc
      https://github.com/ckan/ckan/commit/976b7072280a694e59de35f9095b9985bef882bc
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/lib/helpers.py

  Log Message:
  -----------
  [#4801] No paster cli in py3


  Commit: b678bdc6b5c8327ae504ffdc58927d43833be46b
      https://github.com/ckan/ckan/commit/b678bdc6b5c8327ae504ffdc58927d43833be46b
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/lib/webassets_tools.py

  Log Message:
  -----------
  [#4801] Webassets requires a proper boolean for debug in py3


  Commit: 7da99d248b8e5760ffbb9cb68d984a786b7b0a83
      https://github.com/ckan/ckan/commit/7da99d248b8e5760ffbb9cb68d984a786b7b0a83
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M ckan/lib/helpers.py

  Log Message:
  -----------
  [#4801] Handle local URLs in url_for

In some cases we call `helpers.url_for()` with an actual URL path rather
than an endpoint name or controller/action kwargs. The main use case for
this is building static URLs that take into account the root path, etc

    h.url_for('/base/css/main.css')

The Pylons router (`routes`) was find with this, but the Flask one will
fail because it requires the first arg to be an actual `endpoint` name
like `dataset.new`. Up until now the Flask router was failing and the
url was then picked up by the fallback Pylons one, which returned the
expected URL.

On python 3 Pylons and its router is gone, so the generation of these
URLs (eg during the initialization of webassets) raises a
`FlaskRouteBuildError` exception.

This commit adds the routes behaviour to our wrapper if the Flask router
fails and the URL starts with `/`. The URL will get prepended with
`environ['SCRIPT_NAME']` if present, and any keyword args will be added
as query string (which is unlikely that will get used but will preserve
the current behaviour)


  Commit: 733787ca0d63e22501ffe9f0f02e8d1fc37eb015
      https://github.com/ckan/ckan/commit/733787ca0d63e22501ffe9f0f02e8d1fc37eb015
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    R ckan/tests/migration/__init__.py
    R ckan/tests/migration/revision_legacy_code_tests.py

  Log Message:
  -----------
  [#4801] Remove test file added by mistake


  Commit: 8d09297e4f8bfa841ae18af817b037ff979d98d2
      https://github.com/ckan/ckan/commit/8d09297e4f8bfa841ae18af817b037ff979d98d2
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    M doc/contributing/testing.rst

  Log Message:
  -----------
  Fix sphinx warning


  Commit: ebb8e0ffe3161da918e4078b6afa7f69c523119e
      https://github.com/ckan/ckan/commit/ebb8e0ffe3161da918e4078b6afa7f69c523119e
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-06 (Fri, 06 Dec 2019)

  Changed paths:
    R ckan/tests/migration/__init__.py
    R ckan/tests/migration/revision_legacy_code_tests.py
    M doc/contributing/testing.rst

  Log Message:
  -----------
  Merge branch 'py3-general-support' into py3-general-support-2


  Commit: fde7aee8ad69ef0706cf854d523b1f7eaab8ada7
      https://github.com/ckan/ckan/commit/fde7aee8ad69ef0706cf854d523b1f7eaab8ada7
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-07 (Sat, 07 Dec 2019)

  Changed paths:
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_coding_standards.py

  Log Message:
  -----------
  Remove files from coding standards tests


  Commit: 8c40f3908369d340e57689268ba811616021cbc3
      https://github.com/ckan/ckan/commit/8c40f3908369d340e57689268ba811616021cbc3
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-12-07 (Sat, 07 Dec 2019)

  Changed paths:
    M ckan/cli/datastore.py
    M ckan/common.py
    M ckan/config/environment.py
    M ckan/config/middleware/__init__.py
    M ckan/lib/base.py
    M ckan/lib/cli.py
    M ckan/lib/fanstatic_resources.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/mailer.py
    M ckan/lib/search/index.py
    M ckan/logic/__init__.py
    M ckan/model/__init__.py
    M ckan/plugins/toolkit.py
    M ckan/tests/config/test_middleware.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_update.py
    R ckan/tests/migration/__init__.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    M ckanext/datastore/tests/helpers.py
    M doc/contributing/testing.rst
    M requirements.in
    M requirements.txt
    M scripts/4042_fix_resource_extras.py

  Log Message:
  -----------
  Merge pull request #5096 from ckan/py3-general-support

PY3 general support - Part 1


  Commit: 6c51a519735ee713f64fd91c9dc48050f744699d
      https://github.com/ckan/ckan/commit/6c51a519735ee713f64fd91c9dc48050f744699d
  Author: Jari Voutilainen <jari.voutilainen at iki.fi>
  Date:   2019-12-07 (Sat, 07 Dec 2019)

  Changed paths:
    M ckanext/imageview/theme/templates/image_form.html

  Log Message:
  -----------
  [#5099] Fix broken translation in image view placeholder


  Commit: a84859efcbfdd335b42e8f80c21f96a5ec045b3d
      https://github.com/ckan/ckan/commit/a84859efcbfdd335b42e8f80c21f96a5ec045b3d
  Author: howff <3064316+howff at users.noreply.github.com>
  Date:   2019-12-09 (Mon, 09 Dec 2019)

  Changed paths:
    M ckan/public/base/javascript/client.js

  Log Message:
  -----------
  Change arrow notation to lambda function

so that it's compatible with Internet Explorer


  Commit: a63207806c9474ed736c1a4fc774155042a45a51
      https://github.com/ckan/ckan/commit/a63207806c9474ed736c1a4fc774155042a45a51
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-09 (Mon, 09 Dec 2019)

  Changed paths:
    M ckan/lib/navl/dictization_functions.py

  Log Message:
  -----------
  [#4801] Refactor processing of errors in NAVL

At the end of the `validate` function run the errors are processed and
return as a dict. The current implementation was complex and
incompatible with Python 3, as it changed dictionaries inside loops.
Also it returned unnecessary key, eg before the changes:

    {
      'resources': [
        {'position': [u'Missing value']}, {}],
      'tags': [{}, {}, {}],
      'extras': [{}, {}]
    }

After the changes:

    {
      'resources: [
        {'position': [u'Missing value']}
      ]
    }


  Commit: c8954433e0006097d9c388e776147bc5b5accf48
      https://github.com/ckan/ckan/commit/c8954433e0006097d9c388e776147bc5b5accf48
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-09 (Mon, 09 Dec 2019)

  Changed paths:
    M ckan/lib/helpers.py
    M ckan/lib/navl/dictization_functions.py

  Log Message:
  -----------
  [#4801] Fix bug in url_for


  Commit: 8f74fef344ecac5171e682206be528621ce45caf
      https://github.com/ckan/ckan/commit/8f74fef344ecac5171e682206be528621ce45caf
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-12-10 (Tue, 10 Dec 2019)

  Changed paths:
    M ckan/public/base/javascript/client.js

  Log Message:
  -----------
  Merge pull request #5091 from howff/patch-2

parseCompletions handles v3 api result


  Commit: b47341d635c56364076ce0aead86a5f1c265c879
      https://github.com/ckan/ckan/commit/b47341d635c56364076ce0aead86a5f1c265c879
  Author: calexandr <cherniavskyi.alexandr at linkdigital.com.au>
  Date:   2019-12-10 (Tue, 10 Dec 2019)

  Changed paths:
    M ckan/plugins/toolkit.py

  Log Message:
  -----------
  add error_shot to toolkit


  Commit: bde4b68832f09c23b4caeed4f2ce8720431d3dc4
      https://github.com/ckan/ckan/commit/bde4b68832f09c23b4caeed4f2ce8720431d3dc4
  Author: Alexandr <55234934+mutantsan at users.noreply.github.com>
  Date:   2019-12-10 (Tue, 10 Dec 2019)

  Changed paths:
    M ckan/cli/datastore.py
    M ckan/common.py
    M ckan/config/environment.py
    M ckan/config/middleware/__init__.py
    M ckan/lib/base.py
    M ckan/lib/cli.py
    M ckan/lib/fanstatic_resources.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/mailer.py
    M ckan/lib/search/index.py
    M ckan/logic/__init__.py
    M ckan/model/__init__.py
    M ckan/plugins/toolkit.py
    M ckan/public/base/javascript/client.js
    M ckan/templates/page.html
    M ckan/tests/config/test_middleware.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_update.py
    R ckan/tests/migration/__init__.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    M ckanext/datastore/tests/helpers.py
    M doc/contributing/testing.rst
    M requirements.in
    M requirements.txt
    M scripts/4042_fix_resource_extras.py

  Log Message:
  -----------
  Merge branch 'master' into 5108-allow-extensions-define-click-cmds


  Commit: fc4250df66f28e91a9676cfb2e2c04600e468642
      https://github.com/ckan/ckan/commit/fc4250df66f28e91a9676cfb2e2c04600e468642
  Author: calexandr <cherniavskyi.alexandr at linkdigital.com.au>
  Date:   2019-12-10 (Tue, 10 Dec 2019)

  Changed paths:
    M ckan/cli/cli.py

  Log Message:
  -----------
  code refinement, allow get multiple commands


  Commit: 0478f1a4d92103c997f6f797dbdea556e3eafc74
      https://github.com/ckan/ckan/commit/0478f1a4d92103c997f6f797dbdea556e3eafc74
  Author: calexandr <cherniavskyi.alexandr at linkdigital.com.au>
  Date:   2019-12-10 (Tue, 10 Dec 2019)

  Changed paths:
    M ckan/cli/datastore.py
    M ckan/common.py
    M ckan/config/environment.py
    M ckan/config/middleware/__init__.py
    M ckan/lib/base.py
    M ckan/lib/cli.py
    M ckan/lib/fanstatic_resources.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/mailer.py
    M ckan/lib/search/index.py
    M ckan/logic/__init__.py
    M ckan/model/__init__.py
    M ckan/plugins/toolkit.py
    M ckan/public/base/javascript/client.js
    M ckan/templates/page.html
    M ckan/tests/config/test_middleware.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_update.py
    R ckan/tests/migration/__init__.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    M ckanext/datastore/tests/helpers.py
    M doc/contributing/testing.rst
    M requirements.in
    M requirements.txt
    M scripts/4042_fix_resource_extras.py

  Log Message:
  -----------
  Merge branch '5108-allow-extensions-define-click-cmds' of https://github.com/mutantsan/ckan into 5108-allow-extensions-define-click-cmds


  Commit: 406312b4bb9fc0241a3a8d1e76631c14d3cbaecb
      https://github.com/ckan/ckan/commit/406312b4bb9fc0241a3a8d1e76631c14d3cbaecb
  Author: calexandr <cherniavskyi.alexandr at linkdigital.com.au>
  Date:   2019-12-10 (Tue, 10 Dec 2019)

  Changed paths:
    M ckan/plugins/toolkit.py

  Log Message:
  -----------
  add error_shout to toolkit


  Commit: ef1fd16581c13243cd46835a04f85b85a44f13c0
      https://github.com/ckan/ckan/commit/ef1fd16581c13243cd46835a04f85b85a44f13c0
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-12-10 (Tue, 10 Dec 2019)

  Changed paths:
    M ckanext/imageview/theme/templates/image_form.html

  Log Message:
  -----------
  Merge pull request #5116 from Zharktas/5099-fix-broken-translation-in-image-view

[#5099] Fix broken translation in image view placeholder


  Commit: c0ee5f5bc6336c94c3d5109a2dd4f0b129dd10fe
      https://github.com/ckan/ckan/commit/c0ee5f5bc6336c94c3d5109a2dd4f0b129dd10fe
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    M doc/maintaining/configuration.rst

  Log Message:
  -----------
  Merge pull request #5076 from howff/patch-1

Change to root_path also needs who.ini edited


  Commit: df558581116e03e46889f5ff0a617a6e777d84ef
      https://github.com/ckan/ckan/commit/df558581116e03e46889f5ff0a617a6e777d84ef
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    M ckan/cli/datastore.py
    M ckan/common.py
    M ckan/config/environment.py
    M ckan/config/middleware/__init__.py
    M ckan/lib/base.py
    M ckan/lib/cli.py
    M ckan/lib/fanstatic_resources.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/mailer.py
    M ckan/lib/search/index.py
    M ckan/logic/__init__.py
    M ckan/model/__init__.py
    M ckan/plugins/toolkit.py
    M ckan/public/base/javascript/client.js
    M ckan/tests/config/test_middleware.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_update.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    M ckanext/datastore/tests/helpers.py
    M ckanext/imageview/theme/templates/image_form.html
    M doc/contributing/testing.rst
    M doc/maintaining/configuration.rst
    M requirements.in
    M requirements.txt
    M scripts/4042_fix_resource_extras.py

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: 0f99b93d1e12a4fa214f8d5810a4733069e43e8c
      https://github.com/ckan/ckan/commit/0f99b93d1e12a4fa214f8d5810a4733069e43e8c
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    M ckan/lib/repoze_plugins/friendly_form.py

  Log Message:
  -----------
  [#4801] Use Webob Request.queryvars in friendly form plugin

Request.params exists in webob 1.0.8 but itchanges the wsgi
environ and makes submitted form params not available later on.
This will probably affect py3 as well but we are not yet at a stage
where it can be tested, so we'll need to revisit it.


  Commit: ede7a1f41ca2ad0ffbd52fd81a716797cf0da389
      https://github.com/ckan/ckan/commit/ede7a1f41ca2ad0ffbd52fd81a716797cf0da389
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    M ckan/lib/navl/dictization_functions.py

  Log Message:
  -----------
  [#4801] Iterate over a copy of the dict to modify it


  Commit: 075414861c3871b684ede3c76e29ccf004794c50
      https://github.com/ckan/ckan/commit/075414861c3871b684ede3c76e29ccf004794c50
  Author: calexandr <cherniavskyi.alexandr at linkdigital.com.au>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    M ckan/plugins/interfaces.py

  Log Message:
  -----------
  rename ICLICommands to IClick


  Commit: 8e12807b8f0d6486d52f1c5362c7cf2f94ba8aa2
      https://github.com/ckan/ckan/commit/8e12807b8f0d6486d52f1c5362c7cf2f94ba8aa2
  Author: calexandr <cherniavskyi.alexandr at linkdigital.com.au>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    M ckan/plugins/interfaces.py

  Log Message:
  -----------
  IClick interfaces import hotfix


  Commit: da340eddaa36f3ac8b568c6d915f403998dcbcb7
      https://github.com/ckan/ckan/commit/da340eddaa36f3ac8b568c6d915f403998dcbcb7
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    M ckan/lib/helpers.py

  Log Message:
  -----------
  [#4801] Don't rely on routes router to build root URL


  Commit: 0dae7eae36c373cb6bf24ccf9ad61b12c6350615
      https://github.com/ckan/ckan/commit/0dae7eae36c373cb6bf24ccf9ad61b12c6350615
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/common_middleware.py
    M ckan/config/middleware/flask_app.py
    M ckan/views/__init__.py

  Log Message:
  -----------
  [#4801] Move the handle_i18n function to somewhere the Flask app can access it


  Commit: 8340f558f5451cf3cbdb5bdab27d20997bebd26e
      https://github.com/ckan/ckan/commit/8340f558f5451cf3cbdb5bdab27d20997bebd26e
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    M ckan/views/__init__.py

  Log Message:
  -----------
  [#4801] Keep unicode logic in py2


  Commit: 999d343a8ef7724e8c7741c31440b6c73ed3b1bc
      https://github.com/ckan/ckan/commit/999d343a8ef7724e8c7741c31440b6c73ed3b1bc
  Author: Irio Musskopf <irio at protonmail.com>
  Date:   2019-12-12 (Thu, 12 Dec 2019)

  Changed paths:
    R contrib/docker/docker-cloud.yml

  Log Message:
  -----------
  Remove Docker Cloud configuration file

Docker Cloud has been discontinued in May 2018[1][2], and it has
been officially replaced by alternatives such Docker Swarm
and Kubernetes.

[1]: https://web.archive.org/web/20181209135547/https://docs.docker.com/docker-cloud/migration/
[2]: https://news.ycombinator.com/item?id=16665130


  Commit: 7b6702b6c17efbe0b2b7eb46ab46da86e387c55c
      https://github.com/ckan/ckan/commit/7b6702b6c17efbe0b2b7eb46ab46da86e387c55c
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-13 (Fri, 13 Dec 2019)

  Changed paths:
    M ckan/lib/navl/dictization_functions.py
    M ckan/tests/legacy/lib/test_navl.py

  Log Message:
  -----------
  [#4801] Simplify even more the erros handling in navl


  Commit: a076ccd92497a7505e19210472d658ecc676ea51
      https://github.com/ckan/ckan/commit/a076ccd92497a7505e19210472d658ecc676ea51
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-13 (Fri, 13 Dec 2019)

  Changed paths:
    M ckan/views/__init__.py
    M ckan/views/home.py

  Log Message:
  -----------
  Coding standards


  Commit: 06af5397e8d62f9f88dd3263f6d948dbbd8852d2
      https://github.com/ckan/ckan/commit/06af5397e8d62f9f88dd3263f6d948dbbd8852d2
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-12-13 (Fri, 13 Dec 2019)

  Changed paths:
    M ckan/cli/cli.py
    M ckan/plugins/interfaces.py
    M ckan/plugins/toolkit.py

  Log Message:
  -----------
  Merge pull request #5112 from mutantsan/5108-allow-extensions-define-click-cmds

[#5108] Allow extensions to define Click commands


  Commit: 2752b1a63345921f94f301e933e45ca67c9234ca
      https://github.com/ckan/ckan/commit/2752b1a63345921f94f301e933e45ca67c9234ca
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-12-13 (Fri, 13 Dec 2019)

  Changed paths:
    M ckan/cli/cli.py
    M ckan/plugins/interfaces.py
    A ckanext/example_iclick/__init__.py
    A ckanext/example_iclick/cli.py
    A ckanext/example_iclick/plugin.py
    M setup.py

  Log Message:
  -----------
  Examples of IClick


  Commit: 1e068f84176141ecfa3986a3d43fc6a2382bce08
      https://github.com/ckan/ckan/commit/1e068f84176141ecfa3986a3d43fc6a2382bce08
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-12-13 (Fri, 13 Dec 2019)

  Changed paths:
    M ckanext/example_iclick/cli.py

  Log Message:
  -----------
  PEP8


  Commit: 00ee56030e6b2a6ab2a2908e25b19f889cda4421
      https://github.com/ckan/ckan/commit/00ee56030e6b2a6ab2a2908e25b19f889cda4421
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-13 (Fri, 13 Dec 2019)

  Changed paths:
    M ckan/lib/helpers.py

  Log Message:
  -----------
  [#4801] Fix url_for_static logic


  Commit: b9df6b61460dfca80e522f4d46cd6ca6b079c7b6
      https://github.com/ckan/ckan/commit/b9df6b61460dfca80e522f4d46cd6ca6b079c7b6
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-16 (Mon, 16 Dec 2019)

  Changed paths:
    M .circleci/config.yml
    M ckan/cli/dataset.py
    M ckan/logic/action/update.py
    M ckan/model/__init__.py
    M ckan/model/meta.py
    M ckan/pastertemplates/template/README.rst_tmpl
    M ckan/pastertemplates/template/bin/travis-run.sh_tmpl
    M ckan/tests/config/test_environment.py
    M ckan/tests/config/test_middleware.py
    M ckan/tests/config/test_sessions.py
    M ckan/tests/controllers/__init__.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_feed.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/controllers/test_template.py
    M ckan/tests/controllers/test_user.py
    M ckan/tests/controllers/test_util.py
    M ckan/tests/factories.py
    M ckan/tests/helpers.py
    M ckan/tests/i18n/test_check_po_files.py
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/ckantestplugins.py
    M ckan/tests/legacy/functional/api/__init__.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    R ckan/tests/legacy/functional/api/model/test_package.py
    R ckan/tests/legacy/functional/api/model/test_ratings.py
    R ckan/tests/legacy/functional/api/model/test_tag.py
    M ckan/tests/legacy/functional/api/model/test_vocabulary.py
    M ckan/tests/legacy/functional/api/test_api.py
    M ckan/tests/legacy/functional/api/test_email_notifications.py
    M ckan/tests/legacy/functional/api/test_follow.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/functional/api/test_resource.py
    R ckan/tests/legacy/functional/api/test_resource_search.py
    M ckan/tests/legacy/functional/api/test_user.py
    M ckan/tests/legacy/functional/api/test_util.py
    M ckan/tests/legacy/functional/base.py
    M ckan/tests/legacy/functional/test_admin.py
    M ckan/tests/legacy/functional/test_error.py
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/legacy/functional/test_preview_interface.py
    M ckan/tests/legacy/functional/test_tag.py
    M ckan/tests/legacy/functional/test_tracking.py
    M ckan/tests/legacy/functional/test_user.py
    M ckan/tests/legacy/html_check.py
    M ckan/tests/legacy/lib/__init__.py
    M ckan/tests/legacy/lib/test_authenticator.py
    M ckan/tests/legacy/lib/test_cli.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/lib/test_dictization_schema.py
    M ckan/tests/legacy/lib/test_email_notifications.py
    M ckan/tests/legacy/lib/test_hash.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/legacy/lib/test_navl.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/lib/test_solr_package_search.py
    M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
    M ckan/tests/legacy/lib/test_solr_schema_version.py
    M ckan/tests/legacy/lib/test_solr_search_index.py
    M ckan/tests/legacy/lib/test_tag_search.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_init.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/logic/test_tag.py
    M ckan/tests/legacy/logic/test_tag_vocab.py
    M ckan/tests/legacy/logic/test_validators.py
    M ckan/tests/legacy/misc/test_mock_mail_server.py
    M ckan/tests/legacy/mock_mail_server.py
    M ckan/tests/legacy/mock_plugin.py
    M ckan/tests/legacy/models/test_follower.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/models/test_misc.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/models/test_package_relationships.py
    M ckan/tests/legacy/models/test_resource.py
    M ckan/tests/legacy/models/test_user.py
    M ckan/tests/legacy/schema/test_schema.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/legacy/test_plugins.py
    R ckan/tests/legacy/test_versions.py
    M ckan/tests/lib/__init__.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/navl/test_dictization_functions.py
    M ckan/tests/lib/navl/test_validators.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_app_globals.py
    M ckan/tests/lib/test_auth_tkt.py
    M ckan/tests/lib/test_base.py
    M ckan/tests/lib/test_changes.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/lib/test_config_tool.py
    M ckan/tests/lib/test_datapreview.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/lib/test_i18n.py
    M ckan/tests/lib/test_io.py
    M ckan/tests/lib/test_jobs.py
    M ckan/tests/lib/test_mailer.py
    M ckan/tests/lib/test_munge.py
    M ckan/tests/logic/action/__init__.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_patch.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/auth/__init__.py
    M ckan/tests/logic/auth/test_create.py
    M ckan/tests/logic/auth/test_delete.py
    M ckan/tests/logic/auth/test_get.py
    M ckan/tests/logic/auth/test_init.py
    M ckan/tests/logic/auth/test_update.py
    M ckan/tests/logic/test_conversion.py
    M ckan/tests/logic/test_converters.py
    M ckan/tests/logic/test_schema.py
    M ckan/tests/logic/test_validators.py
    A ckan/tests/migration/__init__.py
    M ckan/tests/model/__init__.py
    M ckan/tests/model/test_license.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_resource_view.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/model/test_user.py
    M ckan/tests/plugins/__init__.py
    M ckan/tests/plugins/test_toolkit.py
    A ckan/tests/pytest_ckan/__init__.py
    A ckan/tests/pytest_ckan/ckan_setup.py
    A ckan/tests/pytest_ckan/fixtures.py
    A ckan/tests/pytest_ckan/test_fixtures.py
    M ckan/tests/test_authz.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/tests/test_factories.py
    M ckan/tests/test_none_root.py
    M ckan/tests/test_robots_txt.py
    M ckanext/datapusher/tests/test.py
    M ckanext/datapusher/tests/test_action.py
    M ckanext/datapusher/tests/test_controller.py
    M ckanext/datapusher/tests/test_default_views.py
    M ckanext/datapusher/tests/test_interfaces.py
    A ckanext/datastore/tests/conftest.py
    M ckanext/datastore/tests/helpers.py
    M ckanext/datastore/tests/sample_datastore_plugin.py
    M ckanext/datastore/tests/test_chained_action.py
    M ckanext/datastore/tests/test_chained_auth_functions.py
    M ckanext/datastore/tests/test_create.py
    M ckanext/datastore/tests/test_db.py
    M ckanext/datastore/tests/test_delete.py
    M ckanext/datastore/tests/test_dictionary.py
    M ckanext/datastore/tests/test_disable.py
    M ckanext/datastore/tests/test_dump.py
    M ckanext/datastore/tests/test_helpers.py
    M ckanext/datastore/tests/test_info.py
    M ckanext/datastore/tests/test_interface.py
    M ckanext/datastore/tests/test_plugin.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datastore/tests/test_unit.py
    M ckanext/datastore/tests/test_upsert.py
    M ckanext/example_flask_iblueprint/tests/test_routes.py
    M ckanext/example_flask_streaming/tests/test_streaming_responses.py
    M ckanext/example_iauthfunctions/tests/test_example_iauthfunctions.py
    M ckanext/example_iconfigurer/tests/test_example_iconfigurer.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_toolkit.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_update_config.py
    M ckanext/example_idatasetform/tests/test_controllers.py
    M ckanext/example_idatasetform/tests/test_example_idatasetform.py
    M ckanext/example_idatastorebackend/test/test_plugin.py
    M ckanext/example_igroupform/tests/test_controllers.py
    M ckanext/example_ipermissionlabels/tests/test_example_ipermissionlabels.py
    M ckanext/example_itranslation/tests/test_plugin.py
    M ckanext/example_iuploader/test/test_plugin.py
    M ckanext/example_ivalidators/tests/test_ivalidators.py
    M ckanext/example_theme_docs/custom_emails/tests.py
    M ckanext/imageview/tests/test_view.py
    M ckanext/stats/tests/test_stats_lib.py
    M ckanext/webpageview/tests/test_view.py
    A conftest.py
    M contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/README.rst
    M contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-run.sh
    M dev-requirements.txt
    M doc/contributing/release-process.rst
    M doc/contributing/test.rst
    M doc/contributing/testing.rst
    M doc/extensions/testing-extensions.rst
    M doc/maintaining/multilingual.rst
    M setup.cfg
    M setup.py
    R test_revision_legacy_code.py

  Log Message:
  -----------
  Merge branch 'pytest' of https://github.com/DataShades/ckan into DataShades-pytest


  Commit: dd4252b94e315d841d0c90c3d67cc50f1071d971
      https://github.com/ckan/ckan/commit/dd4252b94e315d841d0c90c3d67cc50f1071d971
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-12-17 (Tue, 17 Dec 2019)

  Changed paths:
    R contrib/docker/docker-cloud.yml

  Log Message:
  -----------
  Merge pull request #5120 from Irio/remove-docker-cloud

Remove Docker Cloud configuration file


  Commit: a93b5068b3927fd7e02f76769a96abe493c68d63
      https://github.com/ckan/ckan/commit/a93b5068b3927fd7e02f76769a96abe493c68d63
  Author: Jari Voutilainen <jari.voutilainen at iki.fi>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

  Changed paths:
    M ckan/cli/cli.py
    M ckan/plugins/interfaces.py
    A ckanext/example_iclick/__init__.py
    A ckanext/example_iclick/cli.py
    A ckanext/example_iclick/plugin.py
    M setup.py

  Log Message:
  -----------
  Merge pull request #5121 from DataShades/ext-click-help

Examples of IClick


  Commit: 3056beed7952c9957385bb0a3402601794216002
      https://github.com/ckan/ckan/commit/3056beed7952c9957385bb0a3402601794216002
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

  Changed paths:
    M ckan/tests/config/test_middleware.py
    M ckan/tests/config/test_sessions.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_feed.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/controllers/test_user.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_base.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/auth/test_create.py
    M ckan/tests/logic/auth/test_delete.py
    M ckan/tests/logic/auth/test_get.py
    M ckan/tests/logic/auth/test_init.py
    M ckan/tests/logic/auth/test_update.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_resource_view.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/model/test_user.py
    M ckan/tests/pytest_ckan/ckan_setup.py
    M ckan/tests/pytest_ckan/fixtures.py
    M ckan/tests/pytest_ckan/test_fixtures.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/tests/test_factories.py

  Log Message:
  -----------
  Start using class-level fixtures


  Commit: 944a4ce7622e564da9ddb42598d914c27c417dd6
      https://github.com/ckan/ckan/commit/944a4ce7622e564da9ddb42598d914c27c417dd6
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

  Changed paths:
    M ckan/tests/config/test_middleware.py
    M ckan/tests/config/test_sessions.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_feed.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/controllers/test_user.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_base.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/auth/test_create.py
    M ckan/tests/logic/auth/test_delete.py
    M ckan/tests/logic/auth/test_get.py
    M ckan/tests/logic/auth/test_init.py
    M ckan/tests/logic/auth/test_update.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_resource_view.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/model/test_user.py
    M ckan/tests/pytest_ckan/ckan_setup.py
    M ckan/tests/pytest_ckan/fixtures.py
    M ckan/tests/pytest_ckan/test_fixtures.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/tests/test_factories.py

  Log Message:
  -----------
  Merge branch 'pytest' of https://github.com/DataShades/ckan into DataShades-pytest


  Commit: 6a90ee6b5ec78bc82172ebc6231affe3f481b015
      https://github.com/ckan/ckan/commit/6a90ee6b5ec78bc82172ebc6231affe3f481b015
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

  Changed paths:
    M ckan/tests/helpers.py
    M ckan/tests/pytest_ckan/fixtures.py
    M doc/contributing/testing.rst

  Log Message:
  -----------
  Update new pytest docstrings, add examples


  Commit: 274ed2ca7569b5cf0d4267052e569007d541b872
      https://github.com/ckan/ckan/commit/274ed2ca7569b5cf0d4267052e569007d541b872
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

  Changed paths:
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_coding_standards.py

  Log Message:
  -----------
  Pep8 issues


  Commit: 100179caa4a318c02d9b0cbb35597b6ec5616894
      https://github.com/ckan/ckan/commit/100179caa4a318c02d9b0cbb35597b6ec5616894
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/tests/legacy/functional/test_tracking.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/logic/test_init.py
    M ckan/tests/legacy/models/test_package_relationships.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_changes.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/lib/test_datapreview.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/lib/test_i18n.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_patch.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/test_coding_standards.py

  Log Message:
  -----------
  Use class-level fixtures everywhere


  Commit: 467ceebb6b147e9ed7c928225c2dfbcdb2179dae
      https://github.com/ckan/ckan/commit/467ceebb6b147e9ed7c928225c2dfbcdb2179dae
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/common_middleware.py
    M ckan/config/middleware/flask_app.py
    M ckan/lib/app_globals.py
    M ckan/lib/authenticator.py
    M ckan/lib/helpers.py
    M ckan/lib/jinja_extensions.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/repoze_plugins/friendly_form.py
    M ckan/lib/webassets_tools.py
    M ckan/model/license.py
    M ckan/plugins/toolkit.py
    M ckan/tests/legacy/lib/test_navl.py
    M ckan/views/__init__.py
    M ckan/views/admin.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckan/views/home.py
    M ckan/views/resource.py

  Log Message:
  -----------
  Merge pull request #5107 from ckan/py3-general-support-2

PY3 General Support - Part 2


  Commit: bb3c8b51fe674c0e4d576652e1400509da97ceb9
      https://github.com/ckan/ckan/commit/bb3c8b51fe674c0e4d576652e1400509da97ceb9
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/cli/cli.py
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/common_middleware.py
    M ckan/config/middleware/flask_app.py
    M ckan/lib/app_globals.py
    M ckan/lib/authenticator.py
    M ckan/lib/helpers.py
    M ckan/lib/jinja_extensions.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/repoze_plugins/friendly_form.py
    M ckan/lib/webassets_tools.py
    M ckan/model/license.py
    M ckan/plugins/interfaces.py
    M ckan/plugins/toolkit.py
    M ckan/tests/legacy/lib/test_navl.py
    M ckan/views/__init__.py
    M ckan/views/admin.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckan/views/home.py
    M ckan/views/resource.py
    A ckanext/example_iclick/__init__.py
    A ckanext/example_iclick/cli.py
    A ckanext/example_iclick/plugin.py
    R contrib/docker/docker-cloud.yml
    M setup.py

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into pytest


  Commit: 67e805689e159acd5d7d6ece7ce98e98ff69ed5f
      https://github.com/ckan/ckan/commit/67e805689e159acd5d7d6ece7ce98e98ff69ed5f
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/tests/helpers.py
    M ckan/tests/pytest_ckan/fixtures.py
    M ckan/tests/test_coding_standards.py
    M doc/contributing/testing.rst

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/pytest-2' into pytest


  Commit: f4cfe5e28789df58b2bf7e73e5989ffda00e5c5c
      https://github.com/ckan/ckan/commit/f4cfe5e28789df58b2bf7e73e5989ffda00e5c5c
  Author: Adrià Mercader <amercadero at gmail.com>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M .circleci/config.yml
    M ckan/cli/dataset.py
    M ckan/logic/action/update.py
    M ckan/model/__init__.py
    M ckan/model/meta.py
    M ckan/pastertemplates/template/README.rst_tmpl
    M ckan/pastertemplates/template/bin/travis-run.sh_tmpl
    M ckan/tests/config/test_environment.py
    M ckan/tests/config/test_middleware.py
    M ckan/tests/config/test_sessions.py
    M ckan/tests/controllers/__init__.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_feed.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    M ckan/tests/controllers/test_template.py
    M ckan/tests/controllers/test_user.py
    M ckan/tests/controllers/test_util.py
    M ckan/tests/factories.py
    M ckan/tests/helpers.py
    M ckan/tests/i18n/test_check_po_files.py
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/ckantestplugins.py
    M ckan/tests/legacy/functional/api/__init__.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    R ckan/tests/legacy/functional/api/model/test_package.py
    R ckan/tests/legacy/functional/api/model/test_ratings.py
    R ckan/tests/legacy/functional/api/model/test_tag.py
    M ckan/tests/legacy/functional/api/model/test_vocabulary.py
    M ckan/tests/legacy/functional/api/test_api.py
    M ckan/tests/legacy/functional/api/test_email_notifications.py
    M ckan/tests/legacy/functional/api/test_follow.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/functional/api/test_resource.py
    R ckan/tests/legacy/functional/api/test_resource_search.py
    M ckan/tests/legacy/functional/api/test_user.py
    M ckan/tests/legacy/functional/api/test_util.py
    M ckan/tests/legacy/functional/base.py
    M ckan/tests/legacy/functional/test_admin.py
    M ckan/tests/legacy/functional/test_error.py
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/legacy/functional/test_preview_interface.py
    M ckan/tests/legacy/functional/test_tag.py
    M ckan/tests/legacy/functional/test_tracking.py
    M ckan/tests/legacy/functional/test_user.py
    M ckan/tests/legacy/html_check.py
    M ckan/tests/legacy/lib/__init__.py
    M ckan/tests/legacy/lib/test_authenticator.py
    M ckan/tests/legacy/lib/test_cli.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/lib/test_dictization_schema.py
    M ckan/tests/legacy/lib/test_email_notifications.py
    M ckan/tests/legacy/lib/test_hash.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/legacy/lib/test_navl.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/lib/test_solr_package_search.py
    M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
    M ckan/tests/legacy/lib/test_solr_schema_version.py
    M ckan/tests/legacy/lib/test_solr_search_index.py
    M ckan/tests/legacy/lib/test_tag_search.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_init.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/logic/test_tag.py
    M ckan/tests/legacy/logic/test_tag_vocab.py
    M ckan/tests/legacy/logic/test_validators.py
    M ckan/tests/legacy/misc/test_mock_mail_server.py
    M ckan/tests/legacy/mock_mail_server.py
    M ckan/tests/legacy/mock_plugin.py
    M ckan/tests/legacy/models/test_follower.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/models/test_misc.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/models/test_package_relationships.py
    M ckan/tests/legacy/models/test_resource.py
    M ckan/tests/legacy/models/test_user.py
    M ckan/tests/legacy/schema/test_schema.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/legacy/test_plugins.py
    R ckan/tests/legacy/test_versions.py
    M ckan/tests/lib/__init__.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/navl/test_dictization_functions.py
    M ckan/tests/lib/navl/test_validators.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_app_globals.py
    M ckan/tests/lib/test_auth_tkt.py
    M ckan/tests/lib/test_base.py
    M ckan/tests/lib/test_changes.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/lib/test_config_tool.py
    M ckan/tests/lib/test_datapreview.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/lib/test_i18n.py
    M ckan/tests/lib/test_io.py
    M ckan/tests/lib/test_jobs.py
    M ckan/tests/lib/test_mailer.py
    M ckan/tests/lib/test_munge.py
    M ckan/tests/logic/action/__init__.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_patch.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/auth/__init__.py
    M ckan/tests/logic/auth/test_create.py
    M ckan/tests/logic/auth/test_delete.py
    M ckan/tests/logic/auth/test_get.py
    M ckan/tests/logic/auth/test_init.py
    M ckan/tests/logic/auth/test_update.py
    M ckan/tests/logic/test_conversion.py
    M ckan/tests/logic/test_converters.py
    M ckan/tests/logic/test_schema.py
    M ckan/tests/logic/test_validators.py
    A ckan/tests/migration/__init__.py
    M ckan/tests/model/__init__.py
    M ckan/tests/model/test_license.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_resource_view.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/model/test_user.py
    M ckan/tests/plugins/__init__.py
    M ckan/tests/plugins/test_toolkit.py
    A ckan/tests/pytest_ckan/__init__.py
    A ckan/tests/pytest_ckan/ckan_setup.py
    A ckan/tests/pytest_ckan/fixtures.py
    A ckan/tests/pytest_ckan/test_fixtures.py
    M ckan/tests/test_authz.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/tests/test_factories.py
    M ckan/tests/test_none_root.py
    M ckan/tests/test_robots_txt.py
    M ckanext/datapusher/tests/test.py
    M ckanext/datapusher/tests/test_action.py
    M ckanext/datapusher/tests/test_controller.py
    M ckanext/datapusher/tests/test_default_views.py
    M ckanext/datapusher/tests/test_interfaces.py
    A ckanext/datastore/tests/conftest.py
    M ckanext/datastore/tests/helpers.py
    M ckanext/datastore/tests/sample_datastore_plugin.py
    M ckanext/datastore/tests/test_chained_action.py
    M ckanext/datastore/tests/test_chained_auth_functions.py
    M ckanext/datastore/tests/test_create.py
    M ckanext/datastore/tests/test_db.py
    M ckanext/datastore/tests/test_delete.py
    M ckanext/datastore/tests/test_dictionary.py
    M ckanext/datastore/tests/test_disable.py
    M ckanext/datastore/tests/test_dump.py
    M ckanext/datastore/tests/test_helpers.py
    M ckanext/datastore/tests/test_info.py
    M ckanext/datastore/tests/test_interface.py
    M ckanext/datastore/tests/test_plugin.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datastore/tests/test_unit.py
    M ckanext/datastore/tests/test_upsert.py
    M ckanext/example_flask_iblueprint/tests/test_routes.py
    M ckanext/example_flask_streaming/tests/test_streaming_responses.py
    M ckanext/example_iauthfunctions/tests/test_example_iauthfunctions.py
    M ckanext/example_iconfigurer/tests/test_example_iconfigurer.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_toolkit.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_update_config.py
    M ckanext/example_idatasetform/tests/test_controllers.py
    M ckanext/example_idatasetform/tests/test_example_idatasetform.py
    M ckanext/example_idatastorebackend/test/test_plugin.py
    M ckanext/example_igroupform/tests/test_controllers.py
    M ckanext/example_ipermissionlabels/tests/test_example_ipermissionlabels.py
    M ckanext/example_itranslation/tests/test_plugin.py
    M ckanext/example_iuploader/test/test_plugin.py
    M ckanext/example_ivalidators/tests/test_ivalidators.py
    M ckanext/example_theme_docs/custom_emails/tests.py
    M ckanext/imageview/tests/test_view.py
    M ckanext/stats/tests/test_stats_lib.py
    M ckanext/webpageview/tests/test_view.py
    A conftest.py
    M contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/README.rst
    M contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-run.sh
    M dev-requirements.txt
    M doc/contributing/release-process.rst
    M doc/contributing/test.rst
    M doc/contributing/testing.rst
    M doc/extensions/testing-extensions.rst
    M doc/maintaining/multilingual.rst
    M setup.cfg
    M setup.py
    R test_revision_legacy_code.py

  Log Message:
  -----------
  Merge pull request #4996 from DataShades/pytest

nose -> pytest


  Commit: f9775a186465cecc9bf0f8cae47313dfbf913967
      https://github.com/ckan/ckan/commit/f9775a186465cecc9bf0f8cae47313dfbf913967
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/config/middleware/flask_app.py
    M ckan/plugins/toolkit.py
    A ckan/plugins/toolkit.py.orig
    M requirements-py2.in
    M requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  [#4801] Configure Flask app to serve public folders

Credit to @smotornyuk

This adds the Flask MultiStatic plugin to be able to add static assets
form extensions.


  Commit: 6916b7a3cf209daf2fb2fd62baf36bddf0f56e4c
      https://github.com/ckan/ckan/commit/6916b7a3cf209daf2fb2fd62baf36bddf0f56e4c
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/lib/repoze_plugins/friendly_form.py

  Log Message:
  -----------
  [#4801] Fix multidict handling in friendly form plugin


  Commit: 01481d973721a9818b387d349b5f124abd536c0a
      https://github.com/ckan/ckan/commit/01481d973721a9818b387d349b5f124abd536c0a
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/config/middleware/flask_app.py
    M ckan/controllers/error.py
    M ckan/templates/error_document_template.html

  Log Message:
  -----------
  [#4801] Align format of flask exceptions with Pylons/webob ones


  Commit: 5c9e38bdabc8cdca8d8f31a79390601ef2077bd3
      https://github.com/ckan/ckan/commit/5c9e38bdabc8cdca8d8f31a79390601ef2077bd3
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    R ckan/tests/legacy/functional/api/test_util.py
    R ckan/tests/legacy/functional/test_error.py

  Log Message:
  -----------
  [#4801] Remove no longer relevant legacy tests

These were not testing what was intended, and were masked by the
catch-all template controller


  Commit: 8ee21484d3ceb6c0f0d9eb8d239a3a97baf2e5ac
      https://github.com/ckan/ckan/commit/8ee21484d3ceb6c0f0d9eb8d239a3a97baf2e5ac
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/config/routing.py
    A ckan/public/robots.txt
    R ckan/templates/robots.txt

  Log Message:
  -----------
  [#4801] Serve robots.txt from the public folder (not templates)


  Commit: e4d523e06bfbe6cfd17957671f2b995e7d9d2a40
      https://github.com/ckan/ckan/commit/e4d523e06bfbe6cfd17957671f2b995e7d9d2a40
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/tests/test_none_root.py
    M ckanext/example_theme_docs/custom_config_setting/plugin.py
    M ckanext/example_theme_docs/v12_extra_public_dir/plugin.py
    M ckanext/example_theme_docs/v15_fanstatic/plugin.py
    M ckanext/example_theme_docs/v22_fanstatic_and_webassets/plugin.py

  Log Message:
  -----------
  [#4801] Update non-root test using weird URL and fix related bug in example theme plugin


  Commit: edeb59e2002640365d05d24b2fcaae47f614f2ad
      https://github.com/ckan/ckan/commit/edeb59e2002640365d05d24b2fcaae47f614f2ad
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-19 (Thu, 19 Dec 2019)

  Changed paths:
    M ckan/config/routing.py
    R ckan/controllers/template.py
    M ckan/tests/config/test_middleware.py
    R ckan/tests/controllers/test_template.py

  Log Message:
  -----------
  [#4801] Remove catch-all template controller

Pylons used to have a catch-all route defined that tried to look for the
path in the provided URL in the templates folder. With changed in the
multiple static folders introduced in f9775a1 this route is never
reached, as we now set the catch-all route to look for the path in the
public folder(s) (which makes more sense to be honest).

Modified the middleware tests to reflect this.


  Commit: fe2e6ea3d085b8ee8096dc33d42b679e94b50aa6
      https://github.com/ckan/ckan/commit/fe2e6ea3d085b8ee8096dc33d42b679e94b50aa6
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/lib/helpers.py

  Log Message:
  -----------
  Consolidate PY2 var name


  Commit: 4e015d93a56a7fd95a5daa6ad2b60038e9f1558e
      https://github.com/ckan/ckan/commit/4e015d93a56a7fd95a5daa6ad2b60038e9f1558e
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/cli/__init__.py
    M ckan/tests/pytest_ckan/ckan_setup.py

  Log Message:
  -----------
  [#4801] Use load_config from new CLI, support expanding user name


  Commit: 7935b5477cdd3fd4b0e73ca146448068705a8606
      https://github.com/ckan/ckan/commit/7935b5477cdd3fd4b0e73ca146448068705a8606
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/common.py

  Log Message:
  -----------
  [#4801] Default to Flask's uggettext (_) in all cases


  Commit: 5f7d60fc98f42f833af439ea70b64dd0c0952b5c
      https://github.com/ckan/ckan/commit/5f7d60fc98f42f833af439ea70b64dd0c0952b5c
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/lib/helpers.py
    M ckan/tests/pytest_ckan/ckan_setup.py

  Log Message:
  -----------
  [#4801] Properly initialize environment in pytest

I wrobgly assumed that the `load_config` method on the new cli did the
same as the one in the old, but it just parses the config file.
Added a call to `make_app` (which calls `load_environment`) to be able
to generate a test request context in order to be able to generate URLs
outside the context of an actual web request.


  Commit: f72da33e71d9b4972875a08981dbcd2eabd6bfec
      https://github.com/ckan/ckan/commit/f72da33e71d9b4972875a08981dbcd2eabd6bfec
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/lib/navl/dictization_functions.py

  Log Message:
  -----------
  [#4801] Refactor augment_data so it does not change dicts on loops


  Commit: 8cce17b00dda4011f82f659e6398a21a8e8a9cfa
      https://github.com/ckan/ckan/commit/8cce17b00dda4011f82f659e6398a21a8e8a9cfa
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/cli/__init__.py

  Log Message:
  -----------
  Coding standards


  Commit: c2ba9410a76b5b068c22d03f17a2d46a8643ba9b
      https://github.com/ckan/ckan/commit/c2ba9410a76b5b068c22d03f17a2d46a8643ba9b
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/lib/helpers.py
    M ckan/tests/legacy/lib/test_helpers.py

  Log Message:
  -----------
  [#4801] Remove deprecated helper function


  Commit: 8c913e2be1e2a6014337cd1dde2a6b59b8c1353b
      https://github.com/ckan/ckan/commit/8c913e2be1e2a6014337cd1dde2a6b59b8c1353b
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/lib/i18n.py

  Log Message:
  -----------
  [#4801] Don't use pylons to get language outside a request


  Commit: 1167dac9b3c81c907ad8e0da926496f56e3583fb
      https://github.com/ckan/ckan/commit/1167dac9b3c81c907ad8e0da926496f56e3583fb
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/authz.py
    M ckan/common.py
    M ckan/model/__init__.py
    M ckan/model/domain_object.py
    M ckan/model/resource.py
    M ckan/views/group.py
    M ckanext/datastore/backend/postgres.py

  Log Message:
  -----------
  [#4801] Consolidate usage of OrderedDict

Always import from collections. Remove from ckan.common


  Commit: a44af3ef9aa2762b4b130d2afbb67ff5146c106d
      https://github.com/ckan/ckan/commit/a44af3ef9aa2762b4b130d2afbb67ff5146c106d
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/cli/sysadmin.py
    M ckan/views/dataset.py
    M ckan/views/group.py

  Log Message:
  -----------
  [#4801] OrderedDict.keys() returns an odict_keys object in py3


  Commit: cb9b03ee921b8a1f9dcb46241ca925b739d6d4cb
      https://github.com/ckan/ckan/commit/cb9b03ee921b8a1f9dcb46241ca925b739d6d4cb
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/lib/pagination.py

  Log Message:
  -----------
  [#4801] Use ints in paginator

Otherwise we get the following in py3:

TypeError: 'float' object cannot be interpreted as an integer


  Commit: fe2c5e154915bfe500d03564fc878853881123f1
      https://github.com/ckan/ckan/commit/fe2c5e154915bfe500d03564fc878853881123f1
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/cli/sysadmin.py
    M ckan/lib/i18n.py

  Log Message:
  -----------
  Pep 8


  Commit: 3a8f00e4f59f95186f956579952d7b8633cce594
      https://github.com/ckan/ckan/commit/3a8f00e4f59f95186f956579952d7b8633cce594
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/lib/helpers.py

  Log Message:
  -----------
  [#4801] Do not fall back to Pylons on url_for on py3


  Commit: a35902f1af876ad2e825a990f13d2e857b2eaec7
      https://github.com/ckan/ckan/commit/a35902f1af876ad2e825a990f13d2e857b2eaec7
  Author: amercader <amercadero at gmail.com>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M ckan/templates/snippets/follow_button.html

  Log Message:
  -----------
  [#4801] Don't use controller based routes on url_for


  Commit: a3cbca96505aae0398534e02da7ed9ac60b03a72
      https://github.com/ckan/ckan/commit/a3cbca96505aae0398534e02da7ed9ac60b03a72
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2019-12-25 (Wed, 25 Dec 2019)

  Changed paths:
    M ckan/authz.py
    M ckan/cli/__init__.py
    M ckan/common.py
    M ckan/config/middleware/flask_app.py
    M ckan/config/routing.py
    M ckan/controllers/error.py
    R ckan/controllers/template.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/pagination.py
    M ckan/lib/repoze_plugins/friendly_form.py
    M ckan/model/__init__.py
    M ckan/model/domain_object.py
    M ckan/model/resource.py
    M ckan/plugins/toolkit.py
    A ckan/plugins/toolkit.py.orig
    A ckan/public/robots.txt
    M ckan/templates/error_document_template.html
    R ckan/templates/robots.txt
    M ckan/templates/snippets/follow_button.html
    M ckan/tests/config/test_middleware.py
    R ckan/tests/controllers/test_template.py
    R ckan/tests/legacy/functional/api/test_util.py
    R ckan/tests/legacy/functional/test_error.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/pytest_ckan/ckan_setup.py
    M ckan/tests/test_none_root.py
    M ckan/views/dataset.py
    M ckan/views/group.py
    M ckanext/datastore/backend/postgres.py
    M ckanext/example_theme_docs/custom_config_setting/plugin.py
    M ckanext/example_theme_docs/v12_extra_public_dir/plugin.py
    M ckanext/example_theme_docs/v15_fanstatic/plugin.py
    M ckanext/example_theme_docs/v22_fanstatic_and_webassets/plugin.py
    M requirements-py2.in
    M requirements-py2.txt
    M requirements.in
    M requirements.txt

  Log Message:
  -----------
  Merge pull request #5130 from ckan/py3-general-support-3

[#4801] PY3 General Support - Part 3


  Commit: 32181f07a56f798180fa19f9ebd9458f74d1ae5b
      https://github.com/ckan/ckan/commit/32181f07a56f798180fa19f9ebd9458f74d1ae5b
  Author: antuarc <carl.antuar at smartservice.qld.gov.au>
  Date:   2020-01-03 (Fri, 03 Jan 2020)

  Changed paths:
    M ckan/model/tracking.py

  Log Message:
  -----------
  check for the existence of tracking summary data before attempting to load it, #5030


  Commit: fe604ba20b63ce4802c108ce20e26e742b2905c8
      https://github.com/ckan/ckan/commit/fe604ba20b63ce4802c108ce20e26e742b2905c8
  Author: Sergey <tonnydexter at gmail.com>
  Date:   2020-01-07 (Tue, 07 Jan 2020)

  Changed paths:
    M ckan/model/tracking.py

  Log Message:
  -----------
  Merge pull request #5139 from qld-gov-au/QOL-6246-optimise-tracking-summary-query

check tracking summary data exists before attempting to load it


  Commit: 788d54f4fe2f4b550e4ef3f63bd9deabc1018fc3
      https://github.com/ckan/ckan/commit/788d54f4fe2f4b550e4ef3f63bd9deabc1018fc3
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2020-01-07 (Tue, 07 Jan 2020)

  Changed paths:
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_coding_standards.py
    R ckan/websetup.py

  Log Message:
  -----------
  Remove ckan/websetup.py(legacy pylons testing)


  Commit: fbb32094fe631717fb7acfd36d0019a1f137a13a
      https://github.com/ckan/ckan/commit/fbb32094fe631717fb7acfd36d0019a1f137a13a
  Author: Sergey Motornyuk <sergey.motornyuk at linkdigital.com.au>
  Date:   2020-01-08 (Wed, 08 Jan 2020)

  Changed paths:
    M ckan/lib/pagination.py

  Log Message:
  -----------
  Fix link substitution in pager


  Commit: fa618a31125f203e57a6bd7dc3ae05043d47b563
      https://github.com/ckan/ckan/commit/fa618a31125f203e57a6bd7dc3ae05043d47b563
  Author: Ian Ward <ian at excess.org>
  Date:   2020-01-09 (Thu, 09 Jan 2020)

  Changed paths:
    M ckan/lib/pagination.py

  Log Message:
  -----------
  Merge pull request #5144 from DataShades/local-pager-exc

Fix link substitution in pager


  Commit: 7c4a97604eba5f941b26613e1ed49274130fb7e8
      https://github.com/ckan/ckan/commit/7c4a97604eba5f941b26613e1ed49274130fb7e8
  Author: Ian Ward <ian at excess.org>
  Date:   2020-01-09 (Thu, 09 Jan 2020)

  Changed paths:
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_coding_standards.py
    R ckan/websetup.py

  Log Message:
  -----------
  Merge pull request #5141 from DataShades/remove-ckan-websetup

Remove ckan/websetup.py (legacy pylons testing)


  Commit: 697d407934e90747bbf87a8fce80d4c93db95b94
      https://github.com/ckan/ckan/commit/697d407934e90747bbf87a8fce80d4c93db95b94
  Author: amercader <amercadero at gmail.com>
  Date:   2020-01-10 (Fri, 10 Jan 2020)

  Changed paths:
    M .circleci/config.yml
    M .travis.yml
    M Dockerfile
    A SECURITY.md
    M bin/travis-install-dependencies
    M ckan/authz.py
    M ckan/cli/__init__.py
    M ckan/cli/cli.py
    M ckan/cli/dataset.py
    M ckan/cli/datastore.py
    A ckan/cli/front_end_build.py
    M ckan/cli/generate.py
    A ckan/cli/jobs.py
    A ckan/cli/profile.py
    A ckan/cli/sysadmin.py
    M ckan/cli/translation.py
    A ckan/cli/user.py
    A ckan/cli/views.py
    M ckan/common.py
    M ckan/config/deployment.ini_tmpl
    M ckan/config/environment.py
    M ckan/config/middleware/__init__.py
    M ckan/config/middleware/common_middleware.py
    M ckan/config/middleware/flask_app.py
    M ckan/config/resource_formats.json
    M ckan/config/routing.py
    M ckan/controllers/admin.py
    M ckan/controllers/api.py
    M ckan/controllers/error.py
    M ckan/controllers/package.py
    R ckan/controllers/template.py
    M ckan/i18n/check_po_files.py
    M ckan/include/rjsmin.py
    R ckan/lib/activity_streams_session_extension.py
    M ckan/lib/app_globals.py
    M ckan/lib/authenticator.py
    M ckan/lib/base.py
    M ckan/lib/changes.py
    M ckan/lib/cli.py
    M ckan/lib/config_tool.py
    M ckan/lib/create_test_data.py
    M ckan/lib/dictization/__init__.py
    M ckan/lib/dictization/model_dictize.py
    M ckan/lib/dictization/model_save.py
    M ckan/lib/fanstatic_resources.py
    M ckan/lib/helpers.py
    M ckan/lib/i18n.py
    M ckan/lib/jinja_extensions.py
    M ckan/lib/lazyjson.py
    M ckan/lib/mailer.py
    M ckan/lib/navl/dictization_functions.py
    M ckan/lib/navl/validators.py
    A ckan/lib/pagination.py
    M ckan/lib/redis.py
    M ckan/lib/repoze_plugins/friendly_form.py
    M ckan/lib/search/__init__.py
    M ckan/lib/search/index.py
    M ckan/lib/uploader.py
    M ckan/lib/webassets_tools.py
    M ckan/logic/__init__.py
    M ckan/logic/action/__init__.py
    M ckan/logic/action/create.py
    M ckan/logic/action/delete.py
    M ckan/logic/action/get.py
    M ckan/logic/action/update.py
    M ckan/logic/auth/get.py
    M ckan/logic/converters.py
    M ckan/logic/schema.py
    M ckan/logic/validators.py
    M ckan/migration/env.py
    M ckan/migration/migrate_package_activity.py
    M ckan/migration/revision_legacy_code.py
    A ckan/migration/versions/093_7f70d7d15445_remove_activity_revision_id.py
    M ckan/model/__init__.py
    M ckan/model/activity.py
    M ckan/model/core.py
    M ckan/model/dashboard.py
    M ckan/model/domain_object.py
    M ckan/model/follower.py
    M ckan/model/group.py
    M ckan/model/group_extra.py
    M ckan/model/license.py
    M ckan/model/meta.py
    M ckan/model/package.py
    M ckan/model/package_extra.py
    M ckan/model/package_relationship.py
    M ckan/model/rating.py
    M ckan/model/resource.py
    M ckan/model/resource_view.py
    R ckan/model/revision.py
    A ckan/model/system.py
    M ckan/model/system_info.py
    M ckan/model/tag.py
    M ckan/model/task_status.py
    M ckan/model/term_translation.py
    M ckan/model/tracking.py
    M ckan/model/types.py
    M ckan/model/user.py
    M ckan/model/vocabulary.py
    M ckan/pastertemplates/template/README.rst_tmpl
    M ckan/pastertemplates/template/bin/travis-run.sh_tmpl
    M ckan/plugins/__init__.py
    M ckan/plugins/core.py
    M ckan/plugins/interfaces.py
    M ckan/plugins/toolkit.py
    A ckan/plugins/toolkit.py.orig
    M ckan/public/base/css/fuchsia.css
    M ckan/public/base/css/green.css
    M ckan/public/base/css/main-rtl.css
    M ckan/public/base/css/main.css
    M ckan/public/base/css/maroon.css
    M ckan/public/base/css/red.css
    M ckan/public/base/javascript/client.js
    M ckan/public/base/javascript/modules/autocomplete.js
    M ckan/public/base/javascript/modules/popover-context.js
    M ckan/public/base/less/dataset.less
    A ckan/public/robots.txt
    M ckan/templates/error_document_template.html
    M ckan/templates/package/snippets/additional_info.html
    M ckan/templates/page.html
    R ckan/templates/robots.txt
    M ckan/templates/snippets/additional_info.html
    M ckan/templates/snippets/context.html
    M ckan/templates/snippets/context/user.html
    M ckan/templates/snippets/follow_button.html
    M ckan/templates/user/edit_user_form.html
    M ckan/templates/user/read_base.html
    M ckan/tests/config/test_environment.py
    M ckan/tests/config/test_middleware.py
    M ckan/tests/config/test_sessions.py
    M ckan/tests/controllers/__init__.py
    M ckan/tests/controllers/test_admin.py
    M ckan/tests/controllers/test_api.py
    M ckan/tests/controllers/test_feed.py
    M ckan/tests/controllers/test_group.py
    M ckan/tests/controllers/test_home.py
    M ckan/tests/controllers/test_organization.py
    M ckan/tests/controllers/test_package.py
    R ckan/tests/controllers/test_template.py
    M ckan/tests/controllers/test_user.py
    M ckan/tests/controllers/test_util.py
    M ckan/tests/factories.py
    M ckan/tests/helpers.py
    M ckan/tests/i18n/test_check_po_files.py
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/ckantestplugins.py
    M ckan/tests/legacy/functional/api/__init__.py
    M ckan/tests/legacy/functional/api/base.py
    M ckan/tests/legacy/functional/api/model/test_group.py
    R ckan/tests/legacy/functional/api/model/test_package.py
    R ckan/tests/legacy/functional/api/model/test_ratings.py
    R ckan/tests/legacy/functional/api/model/test_tag.py
    M ckan/tests/legacy/functional/api/model/test_vocabulary.py
    M ckan/tests/legacy/functional/api/test_api.py
    M ckan/tests/legacy/functional/api/test_email_notifications.py
    M ckan/tests/legacy/functional/api/test_follow.py
    M ckan/tests/legacy/functional/api/test_package_search.py
    M ckan/tests/legacy/functional/api/test_resource.py
    R ckan/tests/legacy/functional/api/test_resource_search.py
    M ckan/tests/legacy/functional/api/test_user.py
    R ckan/tests/legacy/functional/api/test_util.py
    M ckan/tests/legacy/functional/base.py
    M ckan/tests/legacy/functional/test_admin.py
    R ckan/tests/legacy/functional/test_error.py
    M ckan/tests/legacy/functional/test_group.py
    M ckan/tests/legacy/functional/test_package.py
    M ckan/tests/legacy/functional/test_pagination.py
    M ckan/tests/legacy/functional/test_preview_interface.py
    M ckan/tests/legacy/functional/test_tag.py
    M ckan/tests/legacy/functional/test_tracking.py
    M ckan/tests/legacy/functional/test_user.py
    M ckan/tests/legacy/html_check.py
    M ckan/tests/legacy/lib/__init__.py
    M ckan/tests/legacy/lib/test_authenticator.py
    M ckan/tests/legacy/lib/test_cli.py
    M ckan/tests/legacy/lib/test_dictization.py
    M ckan/tests/legacy/lib/test_dictization_schema.py
    M ckan/tests/legacy/lib/test_email_notifications.py
    M ckan/tests/legacy/lib/test_hash.py
    M ckan/tests/legacy/lib/test_helpers.py
    M ckan/tests/legacy/lib/test_navl.py
    M ckan/tests/legacy/lib/test_resource_search.py
    M ckan/tests/legacy/lib/test_solr_package_search.py
    M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
    M ckan/tests/legacy/lib/test_solr_schema_version.py
    M ckan/tests/legacy/lib/test_solr_search_index.py
    M ckan/tests/legacy/lib/test_tag_search.py
    M ckan/tests/legacy/logic/test_action.py
    M ckan/tests/legacy/logic/test_auth.py
    M ckan/tests/legacy/logic/test_init.py
    M ckan/tests/legacy/logic/test_member.py
    M ckan/tests/legacy/logic/test_tag.py
    M ckan/tests/legacy/logic/test_tag_vocab.py
    M ckan/tests/legacy/logic/test_validators.py
    M ckan/tests/legacy/misc/test_mock_mail_server.py
    M ckan/tests/legacy/mock_mail_server.py
    M ckan/tests/legacy/mock_plugin.py
    M ckan/tests/legacy/models/test_follower.py
    M ckan/tests/legacy/models/test_group.py
    M ckan/tests/legacy/models/test_misc.py
    M ckan/tests/legacy/models/test_package.py
    M ckan/tests/legacy/models/test_package_relationships.py
    R ckan/tests/legacy/models/test_purge_revision.py
    M ckan/tests/legacy/models/test_resource.py
    R ckan/tests/legacy/models/test_revision.py
    M ckan/tests/legacy/models/test_user.py
    M ckan/tests/legacy/schema/test_schema.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/legacy/test_plugins.py
    R ckan/tests/legacy/test_versions.py
    M ckan/tests/lib/__init__.py
    M ckan/tests/lib/dictization/test_model_dictize.py
    M ckan/tests/lib/navl/test_dictization_functions.py
    M ckan/tests/lib/navl/test_validators.py
    M ckan/tests/lib/search/test_index.py
    M ckan/tests/lib/test_app_globals.py
    M ckan/tests/lib/test_auth_tkt.py
    M ckan/tests/lib/test_base.py
    M ckan/tests/lib/test_changes.py
    M ckan/tests/lib/test_cli.py
    M ckan/tests/lib/test_config_tool.py
    M ckan/tests/lib/test_datapreview.py
    M ckan/tests/lib/test_helpers.py
    M ckan/tests/lib/test_i18n.py
    M ckan/tests/lib/test_io.py
    M ckan/tests/lib/test_jobs.py
    M ckan/tests/lib/test_mailer.py
    M ckan/tests/lib/test_munge.py
    R ckan/tests/lib/test_navl.py
    M ckan/tests/logic/action/__init__.py
    M ckan/tests/logic/action/test_create.py
    M ckan/tests/logic/action/test_delete.py
    M ckan/tests/logic/action/test_get.py
    M ckan/tests/logic/action/test_patch.py
    M ckan/tests/logic/action/test_update.py
    M ckan/tests/logic/auth/__init__.py
    M ckan/tests/logic/auth/test_create.py
    M ckan/tests/logic/auth/test_delete.py
    M ckan/tests/logic/auth/test_get.py
    M ckan/tests/logic/auth/test_init.py
    M ckan/tests/logic/auth/test_update.py
    M ckan/tests/logic/test_conversion.py
    M ckan/tests/logic/test_converters.py
    M ckan/tests/logic/test_schema.py
    M ckan/tests/logic/test_validators.py
    M ckan/tests/migration/__init__.py
    R ckan/tests/migration/test_migrate_package_activity.py
    R ckan/tests/migration/test_revision_legacy_code.py
    M ckan/tests/model/__init__.py
    M ckan/tests/model/test_license.py
    M ckan/tests/model/test_package.py
    M ckan/tests/model/test_package_extra.py
    M ckan/tests/model/test_resource.py
    M ckan/tests/model/test_resource_view.py
    M ckan/tests/model/test_system_info.py
    M ckan/tests/model/test_tags.py
    M ckan/tests/model/test_user.py
    M ckan/tests/plugins/__init__.py
    M ckan/tests/plugins/test_toolkit.py
    A ckan/tests/pytest_ckan/__init__.py
    A ckan/tests/pytest_ckan/ckan_setup.py
    A ckan/tests/pytest_ckan/fixtures.py
    A ckan/tests/pytest_ckan/test_fixtures.py
    M ckan/tests/test_authz.py
    M ckan/tests/test_coding_standards.py
    M ckan/tests/test_common.py
    M ckan/tests/test_factories.py
    M ckan/tests/test_none_root.py
    M ckan/tests/test_robots_txt.py
    M ckan/views/__init__.py
    M ckan/views/admin.py
    M ckan/views/api.py
    M ckan/views/dataset.py
    M ckan/views/feed.py
    M ckan/views/group.py
    M ckan/views/home.py
    M ckan/views/resource.py
    M ckan/views/user.py
    M ckanext/datapusher/logic/schema.py
    M ckanext/datapusher/tests/test.py
    M ckanext/datapusher/tests/test_action.py
    M ckanext/datapusher/tests/test_controller.py
    M ckanext/datapusher/tests/test_default_views.py
    M ckanext/datapusher/tests/test_interfaces.py
    M ckanext/datastore/backend/postgres.py
    A ckanext/datastore/blueprint.py
    M ckanext/datastore/commands.py
    R ckanext/datastore/controller.py
    M ckanext/datastore/logic/action.py
    M ckanext/datastore/logic/schema.py
    M ckanext/datastore/plugin.py
    A ckanext/datastore/tests/conftest.py
    M ckanext/datastore/tests/helpers.py
    M ckanext/datastore/tests/sample_datastore_plugin.py
    M ckanext/datastore/tests/test_chained_action.py
    M ckanext/datastore/tests/test_chained_auth_functions.py
    M ckanext/datastore/tests/test_create.py
    M ckanext/datastore/tests/test_db.py
    M ckanext/datastore/tests/test_delete.py
    M ckanext/datastore/tests/test_dictionary.py
    M ckanext/datastore/tests/test_disable.py
    M ckanext/datastore/tests/test_dump.py
    M ckanext/datastore/tests/test_helpers.py
    M ckanext/datastore/tests/test_info.py
    M ckanext/datastore/tests/test_interface.py
    M ckanext/datastore/tests/test_plugin.py
    M ckanext/datastore/tests/test_search.py
    M ckanext/datastore/tests/test_unit.py
    M ckanext/datastore/tests/test_upsert.py
    R ckanext/datastore/view.py
    M ckanext/example_flask_iblueprint/tests/test_routes.py
    M ckanext/example_flask_streaming/tests/test_streaming_responses.py
    M ckanext/example_iauthfunctions/tests/test_example_iauthfunctions.py
    A ckanext/example_iclick/__init__.py
    A ckanext/example_iclick/cli.py
    A ckanext/example_iclick/plugin.py
    M ckanext/example_iconfigurer/tests/test_example_iconfigurer.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_toolkit.py
    M ckanext/example_iconfigurer/tests/test_iconfigurer_update_config.py
    M ckanext/example_idatasetform/tests/test_controllers.py
    M ckanext/example_idatasetform/tests/test_example_idatasetform.py
    M ckanext/example_idatastorebackend/example_sqlite.py
    M ckanext/example_idatastorebackend/test/test_plugin.py
    M ckanext/example_igroupform/tests/test_controllers.py
    M ckanext/example_ipermissionlabels/tests/test_example_ipermissionlabels.py
    M ckanext/example_itranslation/tests/test_plugin.py
    M ckanext/example_iuploader/test/test_plugin.py
    M ckanext/example_ivalidators/tests/test_ivalidators.py
    M ckanext/example_theme_docs/custom_config_setting/plugin.py
    M ckanext/example_theme_docs/custom_emails/tests.py
    M ckanext/example_theme_docs/v12_extra_public_dir/plugin.py
    M ckanext/example_theme_docs/v15_fanstatic/plugin.py
    M ckanext/example_theme_docs/v22_fanstatic_and_webassets/plugin.py
    M ckanext/imageview/tests/test_view.py
    M ckanext/imageview/theme/templates/image_form.html
    M ckanext/multilingual/plugin.py
    M ckanext/multilingual/solr/schema.xml
    M ckanext/reclineview/plugin.py
    A ckanext/resourceproxy/blueprint.py
    R ckanext/resourceproxy/controller.py
    M ckanext/resourceproxy/plugin.py
    M ckanext/resourceproxy/tests/test_proxy.py
    M ckanext/stats/stats.py
    M ckanext/stats/templates/ckanext/stats/index.html
    M ckanext/stats/tests/test_stats_lib.py
    M ckanext/textview/plugin.py
    M ckanext/textview/tests/test_view.py
    M ckanext/webpageview/tests/test_view.py
    A conftest.py
    M contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/README.rst
    M contrib/cookiecutter/ckan_extension/{{cookiecutter.project}}/bin/travis-run.sh
    R contrib/docker/docker-cloud.yml
    M dev-requirements.txt
    M doc/contributing/database-migrations.rst
    M doc/contributing/release-process.rst
    M doc/contributing/test.rst
    M doc/contributing/testing.rst
    M doc/extensions/adding-custom-fields.rst
    M doc/extensions/testing-extensions.rst
    M doc/maintaining/configuration.rst
    M doc/maintaining/email-notifications.rst
    M doc/maintaining/getting-started.rst
    M doc/maintaining/installing/install-from-source.rst
    M doc/maintaining/multilingual.rst
    M doc/maintaining/upgrading/index.rst
    A doc/maintaining/upgrading/upgrade-to-python3.rst
    A requirements-py2.in
    A requirements-py2.txt
    M requirements.in
    M requirements.txt
    M scripts/4042_fix_resource_extras.py
    M setup.cfg
    M setup.py

  Log Message:
  -----------
  Merge branch 'master' into 5031-fix-res-url-after-werkzeug-upgrade


  Commit: ebcbdcc20cd64af8aabd03a176a83a572d1493e5
      https://github.com/ckan/ckan/commit/ebcbdcc20cd64af8aabd03a176a83a572d1493e5
  Author: amercader <amercadero at gmail.com>
  Date:   2020-01-10 (Fri, 10 Jan 2020)

  Changed paths:
    M ckan/lib/pagination.py
    M ckan/tests/legacy/__init__.py
    M ckan/tests/legacy/test_coding_standards.py
    M ckan/tests/test_coding_standards.py
    R ckan/websetup.py

  Log Message:
  -----------
  Merge branch 'master' into 5031-fix-res-url-after-werkzeug-upgrade


  Commit: 856a9a1e5e1f2ea6b2094eb4ce8bf56d5c45f833
      https://github.com/ckan/ckan/commit/856a9a1e5e1f2ea6b2094eb4ce8bf56d5c45f833
  Author: amercader <amercadero at gmail.com>
  Date:   2020-01-10 (Fri, 10 Jan 2020)

  Changed paths:
    M ckan/lib/uploader.py

  Log Message:
  -----------
  [#5031] Use bool in upload field check


  Commit: d1553c743da0c54b1a0cdafb44e52880d5c5fa89
      https://github.com/ckan/ckan/commit/d1553c743da0c54b1a0cdafb44e52880d5c5fa89
  Author: amercader <amercadero at gmail.com>
  Date:   2020-01-10 (Fri, 10 Jan 2020)

  Changed paths:
    M ckan/tests/logic/action/test_update.py

  Log Message:
  -----------
  [#5031] Use Werkzeug based fake storage object in tests


  Commit: 6755367836d9090513961752a828715cca4c51f4
      https://github.com/ckan/ckan/commit/6755367836d9090513961752a828715cca4c51f4
  Author: amercader <amercadero at gmail.com>
  Date:   2020-01-10 (Fri, 10 Jan 2020)

  Changed paths:
    M ckan/tests/lib/test_uploader.py

  Log Message:
  -----------
  [#5031] Coding standards


Compare: https://github.com/ckan/ckan/compare/e9adf793e5eb...6755367836d9


More information about the ckan-changes mailing list