{"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237533471", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237533471, "node_id": "IC_kwDOBm6k_c5Jw0Mf", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T23:59:26Z", "updated_at": "2022-09-05T23:59:26Z", "author_association": "OWNER", "body": "https://docs.python.org/3/library/asyncio-task.html#asyncio.run notes that `asyncio.run()` was added in Python 3.7. I dropped support for 3.6 a while ago.\r\n\r\nhttps://stackoverflow.com/a/56446830/6083 suggests that switching to `asyncio.run()` has helped other people dealing with the `RuntimeError: There is no current event loop in thread` error in the past.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1800#issuecomment-1237374713", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1800", "id": 1237374713, "node_id": "IC_kwDOBm6k_c5JwNb5", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T18:24:00Z", "updated_at": "2022-09-05T18:24:00Z", "author_association": "OWNER", "body": "I'll do this in a PR to execute the tests before merging to main.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362363685, "label": "Remove upper bound dependencies as a default policy"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1800#issuecomment-1237375000", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1800", "id": 1237375000, "node_id": "IC_kwDOBm6k_c5JwNgY", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T18:24:34Z", "updated_at": "2022-09-05T18:24:34Z", "author_association": "OWNER", "body": "I'm going to leave `black` pinned to the exact version simply because updates to Black can cause my tests to fail due to formatting style decisions they have made - and it's just a test dependency, not a install requires dependency.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362363685, "label": "Remove upper bound dependencies as a default policy"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/pull/1801#issuecomment-1237380827", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1801", "id": 1237380827, "node_id": "IC_kwDOBm6k_c5JwO7b", "user": {"value": 22429695, "label": "codecov[bot]"}, "created_at": "2022-09-05T18:35:24Z", "updated_at": "2022-09-05T18:35:24Z", "author_association": "NONE", "body": "# [Codecov](https://codecov.io/gh/simonw/datasette/pull/1801?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Simon+Willison) Report\nBase: **91.66**% // Head: **91.66**% // No change to project coverage :thumbsup:\n> Coverage data is based on head [(`3f24edd`)](https://codecov.io/gh/simonw/datasette/pull/1801?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Simon+Willison) compared to base [(`ba35105`)](https://codecov.io/gh/simonw/datasette/commit/ba35105eee2d3ba620e4f230028a02b2e2571df2?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Simon+Willison).\n> Patch has no changes to coverable lines.\n\n
Additional details and impacted files\n\n\n```diff\n@@ Coverage Diff @@\n## main #1801 +/- ##\n=======================================\n Coverage 91.66% 91.66% \n=======================================\n Files 38 38 \n Lines 4705 4705 \n=======================================\n Hits 4313 4313 \n Misses 392 392 \n```\n\n\n\nHelp us with your feedback. Take ten seconds to tell us [how you rate us](https://about.codecov.io/nps?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Simon+Willison). Have a feature suggestion? [Share it here.](https://app.codecov.io/gh/feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Simon+Willison)\n\n
\n\n[:umbrella: View full report at Codecov](https://codecov.io/gh/simonw/datasette/pull/1801?src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Simon+Willison). \n:loudspeaker: Do you have feedback about the report comment? [Let us know in this issue](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Simon+Willison).\n", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362367821, "label": "Don't use upper bound dependencies, refs #1800"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/pull/1685#issuecomment-1237381620", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1685", "id": 1237381620, "node_id": "IC_kwDOBm6k_c5JwPH0", "user": {"value": 49699333, "label": "dependabot[bot]"}, "created_at": "2022-09-05T18:36:47Z", "updated_at": "2022-09-05T18:36:47Z", "author_association": "CONTRIBUTOR", "body": "Looks like jinja2 is no longer updatable, so this is no longer needed.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1180778860, "label": "Update jinja2 requirement from <3.1.0,>=2.10.3 to >=2.10.3,<3.2.0"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/pull/1799#issuecomment-1237381569", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1799", "id": 1237381569, "node_id": "IC_kwDOBm6k_c5JwPHB", "user": {"value": 49699333, "label": "dependabot[bot]"}, "created_at": "2022-09-05T18:36:42Z", "updated_at": "2022-09-05T18:36:42Z", "author_association": "CONTRIBUTOR", "body": "Looks like aiofiles is no longer updatable, so this is no longer needed.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362242558, "label": "Update aiofiles requirement from <0.9,>=0.4 to >=0.4,<22.2"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1800#issuecomment-1237383202", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1800", "id": 1237383202, "node_id": "IC_kwDOBm6k_c5JwPgi", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T18:39:43Z", "updated_at": "2022-09-05T18:39:52Z", "author_association": "OWNER", "body": "Dependabot noticed: https://github.com/simonw/datasette/pull/1799#issuecomment-1237381569\r\n\r\n> Looks like aiofiles is no longer updatable, so this is no longer needed.\r\n\r\n", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362363685, "label": "Remove upper bound dependencies as a default policy"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237405647", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237405647, "node_id": "IC_kwDOBm6k_c5JwU_P", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T19:21:41Z", "updated_at": "2022-09-05T19:21:41Z", "author_association": "OWNER", "body": "Step one: replicate this failure on my local machine. I'll probably use Docker for this.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237519153", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237519153, "node_id": "IC_kwDOBm6k_c5Jwwsx", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T23:17:03Z", "updated_at": "2022-09-05T23:17:03Z", "author_association": "OWNER", "body": "Some previous issues where I've run Python in Docker:\r\n\r\n- https://github.com/simonw/datasette/issues/1344#issuecomment-849805778\r\n- https://github.com/simonw/datasette/issues/1647#issuecomment-1059819628\r\n\r\nFor this one I'm going to try this image: `python:3.7-buster` - from https://hub.docker.com/layers/library/python/3.7-buster/images/sha256-8a79c5ddabd9e3bceb7d274e515d85a3f5898bd983bb5761ec94186bc54ae968?context=explore\r\n\r\n```\r\ndocker run -it -v `pwd`:/mnt \\\r\n python:3.7-buster \\\r\n bash -c \"cd /mnt && pip install -e '.[test]' && pytest\"\r\n```", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237522407", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237522407, "node_id": "IC_kwDOBm6k_c5Jwxfn", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T23:25:53Z", "updated_at": "2022-09-05T23:25:53Z", "author_association": "OWNER", "body": "Turned that into a TIL: https://til.simonwillison.net/docker/pytest-docker", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237522547", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237522547, "node_id": "IC_kwDOBm6k_c5Jwxhz", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T23:26:19Z", "updated_at": "2022-09-05T23:26:19Z", "author_association": "OWNER", "body": "Annoyingly those tests pass just fine on my machine using that Docker recipe.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237522793", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237522793, "node_id": "IC_kwDOBm6k_c5Jwxlp", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T23:27:08Z", "updated_at": "2022-09-05T23:27:08Z", "author_association": "OWNER", "body": "Here's how GitHub Actions runs them: https://github.com/simonw/datasette/blob/294ecd45f7801971dbeef383d0c5456ee95ab839/.github/workflows/test.yml#L27-L37", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237523178", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237523178, "node_id": "IC_kwDOBm6k_c5Jwxrq", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T23:28:11Z", "updated_at": "2022-09-05T23:28:11Z", "author_association": "OWNER", "body": "Trying this instead:\r\n```\r\ndocker run -it -v `pwd`:/mnt \\\r\n python:3.7-buster \\\r\n bash -c \"cd /mnt && pip install -e '.[test]' && pytest -n auto -m 'not serial' && pytest -m 'serial'\"\r\n```", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237527575", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237527575, "node_id": "IC_kwDOBm6k_c5JwywX", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T23:40:32Z", "updated_at": "2022-09-05T23:40:32Z", "author_association": "OWNER", "body": "That passed too:\r\n\r\n```\r\n========================================================= test session starts ==========================================================\r\nplatform linux -- Python 3.7.13, pytest-7.1.3, pluggy-1.0.0\r\nSQLite: 3.27.2\r\nrootdir: /mnt, configfile: pytest.ini\r\nplugins: asyncio-0.19.0, anyio-3.6.1, timeout-2.1.0, xdist-2.5.0, forked-1.4.0\r\nasyncio: mode=strict\r\ngw0 [1024] / gw1 [1024] / gw2 [1024] / gw3 [1024] / gw4 [1024] / gw5 [1024]\r\n................................................................................................................................ [ 12%]\r\n................................................................................................................................ [ 25%]\r\n...............................................................................................................ss............... [ 37%]\r\n................................................................................................................................ [ 50%]\r\n................................................................................................................................ [ 62%]\r\n.................................................s..........................s................................................... [ 75%]\r\n................................................................................................................................ [ 87%]\r\n................................................................................................................................ [100%]\r\n============================================= 1020 passed, 4 skipped in 294.43s (0:04:54) ==============================================\r\n========================================================= test session starts ==========================================================\r\nplatform linux -- Python 3.7.13, pytest-7.1.3, pluggy-1.0.0\r\nSQLite: 3.27.2\r\nrootdir: /mnt, configfile: pytest.ini\r\nplugins: asyncio-0.19.0, anyio-3.6.1, timeout-2.1.0, xdist-2.5.0, forked-1.4.0\r\nasyncio: mode=strict\r\ncollected 1054 items / 1024 deselected / 30 selected \r\n\r\ntests/test_package.py . [ 3%]\r\ntests/test_cli_serve_server.py ... [ 13%]\r\ntests/test_publish_cloudrun.py ...................... [ 86%]\r\ntests/test_publish_heroku.py .... [100%]\r\n\r\n================================================= 30 passed, 1024 deselected in 7.62s ==================================================\r\n```", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237532571", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237532571, "node_id": "IC_kwDOBm6k_c5Jwz-b", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T23:56:28Z", "updated_at": "2022-09-05T23:56:28Z", "author_association": "OWNER", "body": "That didn't help. This time it was 3.9 that failed first: https://github.com/simonw/datasette/runs/8197403744?check_suite_focus=true - same error though.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/1802#issuecomment-1237530726", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/1802", "id": 1237530726, "node_id": "IC_kwDOBm6k_c5Jwzhm", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T23:50:18Z", "updated_at": "2022-09-05T23:50:18Z", "author_association": "OWNER", "body": "Tried again, this time it failed with 3.8: https://github.com/simonw/datasette/runs/8197344556?check_suite_focus=true\r\n\r\nI'm going to try ditching the parallel test execution.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1362402998, "label": "Tests reliably failing on Python 3.7"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/sqlite-utils/issues/482#issuecomment-1236511153", "issue_url": "https://api.github.com/repos/simonw/sqlite-utils/issues/482", "id": 1236511153, "node_id": "IC_kwDOCGYnMM5Js6mx", "user": {"value": 9599, "label": "simonw"}, "created_at": "2022-09-05T03:38:29Z", "updated_at": "2022-09-05T03:38:29Z", "author_association": "OWNER", "body": "This is an interesting research area! Running the same experiment as the one in https://www.cybertec-postgresql.com/en/column-order-in-postgresql-does-matter/ could demonstrate one way or another if column ordering makes a difference with regards to performance or not.\r\n\r\nMy hunch is that even if it does this wouldn't be a feature to bake into `sqlite-utils` itself, beyond the existing features for changing the order of columns in a table (https://sqlite-utils.datasette.io/en/stable/python-api.html#changing-column-order).", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 1361355564, "label": "balanced table default column_order"}, "performed_via_github_app": null}