html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,issue,performed_via_github_app https://github.com/simonw/datasette/issues/689#issuecomment-609467523,https://api.github.com/repos/simonw/datasette/issues/689,609467523,MDEyOklzc3VlQ29tbWVudDYwOTQ2NzUyMw==,9599,2020-04-05T19:16:13Z,2020-04-05T19:16:13Z,OWNER,I'm going to debug this using `git bisect run` - the same technique I used in #716 - https://github.com/simonw/datasette/issues/716#issuecomment-609453886,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",573583971, https://github.com/simonw/datasette/issues/689#issuecomment-609467876,https://api.github.com/repos/simonw/datasette/issues/689,609467876,MDEyOklzc3VlQ29tbWVudDYwOTQ2Nzg3Ng==,9599,2020-04-05T19:18:36Z,2020-04-05T19:18:36Z,OWNER,"Just need the one checking script to run with bisect this time: `check_templates_considered.py` ```python import asyncio import pathlib from datasette.app import Datasette import httpx async def run_check(): ds = Datasette([]) async with httpx.AsyncClient(app=ds.app()) as client: response = await client.get(""http://localhost/"") assert 200 == response.status_code assert ""Templates considered"" in response.text if __name__ == ""__main__"": loop = asyncio.get_event_loop() loop.run_until_complete(run_check()) ```","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",573583971, https://github.com/simonw/datasette/issues/689#issuecomment-609468180,https://api.github.com/repos/simonw/datasette/issues/689,609468180,MDEyOklzc3VlQ29tbWVudDYwOTQ2ODE4MA==,9599,2020-04-05T19:20:33Z,2020-04-05T19:20:33Z,OWNER,"``` git bisect start master 0.34 git bisect run python check_templates_considered.py ```","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",573583971, https://github.com/simonw/datasette/issues/689#issuecomment-609468485,https://api.github.com/repos/simonw/datasette/issues/689,609468485,MDEyOklzc3VlQ29tbWVudDYwOTQ2ODQ4NQ==,9599,2020-04-05T19:22:31Z,2020-04-05T19:22:31Z,OWNER,"``` $ git bisect start master 0.34 Bisecting: 32 revisions left to test after this (roughly 5 steps) [dc80e779a2e708b2685fc641df99e6aae9ad6f97] Handle scope path if it is a string $ git bisect run python check_templates_considered.py running python check_templates_considered.py Traceback (most recent call last): ... AssertionError Bisecting: 15 revisions left to test after this (roughly 4 steps) [7c6a9c35299f251f9abfb03fd8e85143e4361709] Better tests for prepare_connection() plugin hook, refs #678 running python check_templates_considered.py Traceback (most recent call last): ... AssertionError Bisecting: 7 revisions left to test after this (roughly 3 steps) [0091dfe3e5a3db94af8881038d3f1b8312bb857d] More reliable tie-break ordering for facet results running python check_templates_considered.py Traceback (most recent call last): ... AssertionError Bisecting: 3 revisions left to test after this (roughly 2 steps) [ce12244037b60ba0202c814871218c1dab38d729] Release notes for 0.35 running python check_templates_considered.py Traceback (most recent call last): ... AssertionError Bisecting: 1 revision left to test after this (roughly 1 step) [70b915fb4bc214f9d064179f87671f8a378aa127] Datasette.render_template() method, closes #577 running python check_templates_considered.py Traceback (most recent call last): ... AssertionError Bisecting: 0 revisions left to test after this (roughly 0 steps) [286ed286b68793532c2a38436a08343b45cfbc91] geojson-to-sqlite running python check_templates_considered.py 70b915fb4bc214f9d064179f87671f8a378aa127 is the first bad commit commit 70b915fb4bc214f9d064179f87671f8a378aa127 Author: Simon Willison Date: Tue Feb 4 12:26:17 2020 -0800 Datasette.render_template() method, closes #577 Pull request #664. :040000 040000 def9e31252e056845609de36c66d4320dd0c47f8 da19b7f8c26d50a4c05e5a7f05220b968429725c M datasette bisect run success ``` It was 70b915fb4bc214f9d064179f87671f8a378aa127 - the same bad commit that caused #716!","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",573583971, https://github.com/simonw/datasette/issues/689#issuecomment-609469318,https://api.github.com/repos/simonw/datasette/issues/689,609469318,MDEyOklzc3VlQ29tbWVudDYwOTQ2OTMxOA==,9599,2020-04-05T19:28:14Z,2020-04-05T19:28:14Z,OWNER,"Here's why: the `BaseView.render()` method is running `jinja_env.select_template()` now here: https://github.com/simonw/datasette/blob/e89b0ef2f9ae89eb3bde83b694f21452ea4858da/datasette/views/base.py#L75-L88 Which means this logic is always called with a template, not a list of strings: https://github.com/simonw/datasette/blob/e89b0ef2f9ae89eb3bde83b694f21452ea4858da/datasette/app.py#L555-L571","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",573583971, https://github.com/simonw/datasette/issues/689#issuecomment-609469440,https://api.github.com/repos/simonw/datasette/issues/689,609469440,MDEyOklzc3VlQ29tbWVudDYwOTQ2OTQ0MA==,9599,2020-04-05T19:28:59Z,2020-04-05T19:28:59Z,OWNER,"So I think the fix is to move the `""select_templates"": select_templates` context setting bit to here instead: https://github.com/simonw/datasette/blob/e89b0ef2f9ae89eb3bde83b694f21452ea4858da/datasette/views/base.py#L75-L83 ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",573583971,