Skip to content

2.026.37e

Choose a tag to compare

@github-actions github-actions released this 11 Nov 14:09
· 271 commits to main since this release

What's changed

Bug Fixes (2)
  • assetsList: show projects open to anonymous submissions as shared (#7802)

    Projects that accept submissions without a username and password show as
    shared again in project lists, as they do on their own page.

    A project that accepts anonymous submissions but is not shared with
    anyone showed as private in project lists, while its own page showed it
    as shared. Project lists now report the same sharing status as the
    project page.

  • attachments: stop loading every form version at once on the data table (#7784)

    Fix the 502 error when opening the data table or exporting the data of a
    project with many form versions and a very long list of choices.

Performance (2)
  • projectViews: load project view asset lists faster (#7801)

    Project views load their list of projects much faster, especially views
    that cover every country.

    Opening a project view used to get slower as the number of projects it
    covers grew, because the list was counted and sorted in full every time,
    and some project details were looked up one project at a time. The list
    now comes back in a few steps whatever its size, with the same projects
    in the same order. The project view list API no longer returns the total
    number of projects (count); the next link still pages through the
    results.

    👷 Description for instance maintainers

    A migration adds two indexes on the projects table: one for the default
    sort of project lists, one for the sort by creation date. They are
    created concurrently, without locking the table.

    If SKIP_HEAVY_MIGRATIONS is set, the migration only prints the SQL
    below; run it in PostgreSQL directly, otherwise project views stay slow:

    CREATE INDEX CONCURRENTLY IF NOT EXISTS "asset_survey_default_order_idx" ON "kpi_asset" USING btree ((array_position(ARRAY['deployed', 'draft', 'archived']::varchar[], "_deployment_status")), "date_modified" DESC, "id") WHERE ("asset_type" = 'survey' AND NOT "pending_delete");
    CREATE INDEX CONCURRENTLY IF NOT EXISTS "asset_date_created_id_idx" ON "kpi_asset" USING btree ("date_created" DESC, "id");
  • projectViews: stop querying organizations per owner when checking permissions (#7816)

    Project views load their list of projects faster for users whose view
    does not give access to submissions.

Chores (2)
  • codeOwners: assign review ownership to dev teams (#7778)
  • pull transifex translations for 2.026.37e (93c6a5e)

Full Changelog: https://github.com/kobotoolbox/kpi/compare/2.026.37d..2.026.37e