id,node_id,number,state,locked,title,user,body,created_at,updated_at,closed_at,merged_at,merge_commit_sha,assignee,milestone,draft,head,base,author_association,repo,url,merged_by,auto_merge
505339515,MDExOlB1bGxSZXF1ZXN0NTA1MzM5NTE1,1029,closed,0,fix(docs): broken link,17075617,This PR fixes a broken markdown link in the `Publish` docs page.,2020-10-17T20:03:20Z,2020-10-17T20:05:04Z,2020-10-17T20:05:04Z,2020-10-17T20:05:04Z,568bd7bbf590861687db8c318f3d8cfcd1dfb47a,,,0,a65d30e832d7e65adc65dcce8ab006227e4dafe4,4f7c0ebd85ccd8c1853d7aa0147628f7c1b749cc,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1029,,
507267087,MDExOlB1bGxSZXF1ZXN0NTA3MjY3MDg3,1038,closed,0,DOC: Fix syntax error,194147,"If I understand https://docs.datasette.io/en/stable/plugin_hooks.html#register-routes correctly, `register_routes` should return a `List[Tuple[str, Callable]]`. I believe the current code in documentation has a syntax error (extra `)`). ",2020-10-21T05:45:38Z,2020-10-21T22:57:21Z,2020-10-21T22:44:17Z,2020-10-21T22:44:17Z,6e26b057996c6f3fefa8ad528e2759e53c738844,,,0,7fc0cce6a2d13ccc82c3584996acec236ae65df6,66120a7a1cb592e8a21164cf537f62a4d7ab1dfc,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1038,,
508719567,MDExOlB1bGxSZXF1ZXN0NTA4NzE5NTY3,1043,closed,0,Include LICENSE in sdist,45380,"Hi, thanks for `datasette`!
This PR adds the `LICENSE` to source distributions, which seems the norm for Apache-2.0 stuff.
I noticed the [0.50.2 sdist](https://files.pythonhosted.org/packages/f2/ba/1b5f182c3f1769c0863bcaa77406bdcb81c92e31bb579959c01b1d8951c0/datasette-0.50.2.tar.gz) doesn't ship `LICENSE`, but the 0.5.2 `whl` does, so I'm assuming the intent _is_ to ship... and it's a one-liner!
Motivation:
It might be a bit of a slog, but I'm looking to see about getting `datasette` (and friends!) available on conda-forge. There are a few missing upstreams (`asgi-csrf`, `python-basecov`, `mergedeep`) and some of the plugins don't even appear to _have_ tarballs (just `whl`!), but the little stuff like licenses are nice to get out handled upstream vs separately grabbing them.",2020-10-23T05:04:12Z,2020-10-26T00:14:57Z,2020-10-23T20:54:35Z,2020-10-23T20:54:35Z,976e5f74aae1fa0d406df6691dc8b5feeebe8788,,,0,dc4129cb37060b52775d96e756f7cdb65ee76bc3,d0cc6f4c32e1f89238ddec782086b3122f445bd4,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1043,,
508720660,MDExOlB1bGxSZXF1ZXN0NTA4NzIwNjYw,1044,closed,0,Add minimum supported python,45380,"Thanks for `datasette`!
This PR adds `python_requires` to formally signal the [minimum supported python version](https://packaging.python.org/guides/dropping-older-python-versions/#specify-the-version-ranges-for-supported-python-distributions) (which is pointed out with classifiers, so seems pretty straightforward).",2020-10-23T05:08:03Z,2020-10-23T20:53:08Z,2020-10-23T20:53:08Z,2020-10-23T20:53:08Z,cab8e65261b117b493af6a0b21aa2e1ae4564419,,,0,6453ab18e56b36bc912b6f24c4a43002c6084ade,d0cc6f4c32e1f89238ddec782086b3122f445bd4,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1044,,
509590205,MDExOlB1bGxSZXF1ZXN0NTA5NTkwMjA1,1049,closed,0,Add template block prior to extra URL loaders,82988,"To handle packages that require Javascript state setting prior to loading a package (eg [`thebelab`](https://thebelab.readthedocs.io/en/latest/examples/minimal_example.html), provide a template block before the URLs are loaded.",2020-10-25T13:08:55Z,2020-10-29T09:20:52Z,2020-10-29T09:20:34Z,,99f994b14e2dbe22fda18b67dd5c824d359443fb,,,0,50a743ad35684f09d3c3880f6af2019e59271237,42f4851e3e7885f1092f104d6c883cea40b12f02,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1049,,
510235909,MDExOlB1bGxSZXF1ZXN0NTEwMjM1OTA5,189,closed,0,Allow iterables other than Lists in m2m records,35681,"I was playing around with sqlite-utils, creating a Roam Research dogsheep-style importer for Datasette, and ran into a slight snag.
I wanted to use a generator to add an order column in an importer. It looked something like:
```
def order_generator(iterable, attr=None):
if attr is None:
attr = ""order""
order: int = 0
for i in iterable:
i[attr] = order
order += 1
yield i
```
When I used this with `insert_all` and other things, it worked fine--but it didn't work as the `records` argument to `m2m`. I dug into it, and sqlite-utils is explicitly checking if the records argument is a list or a tuple. I flipped the check upside down, and now it checks if the argument is a mapping. If it's a mapping, it wraps it in a list, otherwise it leaves it alone.
(I get that it might not really make sense to put the order column on the second table. I changed my import schema a bit, and no longer have a real example, but maybe this change still makes sense.)
The automated tests still pass, but I did not add any new ones.
Let me know what you think! I'm really loving Datasette and its ecosystem; thanks for everything!",2020-10-26T18:47:44Z,2020-10-27T16:28:37Z,2020-10-27T16:24:21Z,2020-10-27T16:24:21Z,f045d8559a6d2cb922a2de30fbcc896a4486b82f,,,0,93230b2acb61635b6d5070ad9c65e7221c63b75a,e4f1c7b936981de29823730c5dbef4f4ba7a4286,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/189,,
511549374,MDExOlB1bGxSZXF1ZXN0NTExNTQ5Mzc0,1059,closed,0,"Update aiofiles requirement from <0.6,>=0.4 to >=0.4,<0.7",27856297,"Updates the requirements on [aiofiles](https://github.com/Tinche/aiofiles) to permit the latest version.
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a ""Dependabot enabled"" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
",2020-10-28T13:32:40Z,2020-10-28T17:08:29Z,2020-10-28T17:08:28Z,2020-10-28T17:08:28Z,879617265262024edd93722adcdcb6c21e57f5f7,,,0,e46327a745c5a4130b65bf340d19dccc76441841,7d9fedc176717a7e3d22a96575ae0aada5a65440,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1059,,
525371029,MDExOlB1bGxSZXF1ZXN0NTI1MzcxMDI5,8,closed,0,"fix import error if note has no ""updated"" element",4028322,"I got the following error when executing evernote-to-sqlite enex evernote.db evernote.enex
```
...
File ""evernote_to_sqlite/cli.py"", line 31, in enex
save_note(db, note)
File ""evernote_to_sqlite/utils.py"", line 28, in save_note
updated = note.find(""updated"").text
AttributeError: 'NoneType' object has no attribute 'text'
```
Seems that in some cases the updated element is not added to the note, this is a part of the problematic note:
```
20201019T074518Zwebclipper.evernote
```",2020-11-22T22:51:05Z,2021-02-11T22:34:06Z,2021-02-11T22:34:06Z,2021-02-11T22:34:06Z,1c8457ddaa487aa2e677963d37217fcb6d544e59,,,0,03b0c240d5f12c2d651c4cb25f92b0fecc7f7419,1c355e5678877e14eefa2a5fab5a267342a03335,CONTRIBUTOR,303218369,https://github.com/dogsheep/evernote-to-sqlite/pull/8,,
526847823,MDExOlB1bGxSZXF1ZXN0NTI2ODQ3ODIz,7,closed,0,Fixed conflicting CLI flags,8944,"The `-a` used for the auth credentials and the shortened form of the `--all` flags were in conflict on the `fetch` command. To be consistent with other `-to-sqlite` libraries in the Dogsheep ecosystem, I removed the shortened form of the `--all` flag.",2020-11-24T23:25:12Z,2022-08-21T21:11:56Z,2022-08-21T21:11:56Z,2022-08-21T21:11:56Z,4d88c84a66a501e4cb0dd2de9949072b8d42b859,,,0,02576f9b1c234128c6a3d52123761af8486beb57,b956a01464007fe227895fe6eb6c942ed71298c8,CONTRIBUTOR,213286752,https://github.com/dogsheep/pocket-to-sqlite/pull/7,,
528997614,MDExOlB1bGxSZXF1ZXN0NTI4OTk3NjE0,1112,closed,0,Fix --metadata doc usage,50527,"I stumbled on this while trying to figure out how to configure datasette-ripgrep via https://github.com/simonw/datasette-ripgrep/issues/15
You may not want to update the changelog (those are annoying) so I added two commits in case that's easier. ",2020-11-28T19:19:51Z,2020-11-28T23:28:21Z,2020-11-28T19:53:48Z,2020-11-28T19:53:48Z,bbde835a1fec01458e8d00929e7bab6d6a5ba948,,6055094,0,1a30fc259205df736daf068c57a0a6ae2c21ffa9,37d18a5bce08c9ee53c080f613bae84fc2ccc853,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1112,,
529090560,MDExOlB1bGxSZXF1ZXN0NTI5MDkwNTYw,204,closed,0,use jsonify_if_need for sql updates,78035,,2020-11-29T10:49:00Z,2020-12-08T17:49:42Z,2020-12-08T17:49:42Z,2020-12-08T17:49:42Z,c5f4f0f70ce394dfec6054c3c5aaedf330887093,,,0,8ea9ad1913aa63395391818ebb4e43bfce936dda,60d3c4821be4cf25c41097c1e8b79b2e60c5ead5,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/204,,
530125695,MDExOlB1bGxSZXF1ZXN0NTMwMTI1Njk1,1122,closed,0,Fix misaligned table actions cog,3243482,Fixes https://github.com/simonw/datasette/issues/1121,2020-12-01T08:41:46Z,2020-12-03T10:56:40Z,2020-12-03T00:33:37Z,2020-12-03T00:33:36Z,daae35be46ec5cb8a207aa20986a4fa62e94777e,,,0,94ea22f7b6b6c55b490c97b385f6eb6c1ea2121c,a970276b9999687b96c5e11ea1c817d814f5d267,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1122,,
532342025,MDExOlB1bGxSZXF1ZXN0NTMyMzQyMDI1,1128,closed,0,Fix startup error on windows,3243482,"Fixes https://github.com/simonw/datasette/issues/1094
This import isn't used at all, and causes error on startup on Windows.",2020-12-04T07:12:26Z,2020-12-06T08:41:45Z,2020-12-05T19:35:04Z,2020-12-05T19:35:04Z,705d1a1555c4791e9be3b884285b047223ab184f,,,0,7004c3b1462675ba3845b1efc82c816f1d2199e0,49d8fc056844d5a537d6cfd96dab0dd5686fe718,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1128,,
532348919,MDExOlB1bGxSZXF1ZXN0NTMyMzQ4OTE5,1130,open,0,Fix footer not sticking to bottom in short pages,3243482,Fixes https://github.com/simonw/datasette/issues/1129,2020-12-04T07:29:01Z,2021-06-15T13:27:48Z,,,af3aa34786f134af8073342a3c4bb74b968750fd,,,0,8d4c69c6fb0ef741a19070f5172017ea3522e83c,49d8fc056844d5a537d6cfd96dab0dd5686fe718,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1130,,
539489525,MDExOlB1bGxSZXF1ZXN0NTM5NDg5NTI1,1145,closed,0,"Update pytest requirement from <6.2.0,>=5.2.2 to >=5.2.2,<6.3.0",27856297,"Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version.
Release notes
These have always been considered private, but now issue a deprecation warning, which may become a hard error in pytest 7.0.0.
#7530: The --strict command-line option has been deprecated, use --strict-markers instead.
We have plans to maybe in the future to reintroduce --strict and make it an encompassing flag for all strictness
related options (--strict-markers and --strict-config at the moment, more might be introduced in the future).
#7988: The @pytest.yield_fixture decorator/function is now deprecated. Use pytest.fixture instead.
yield_fixture has been an alias for fixture for a very long time, so can be search/replaced safely.
Features
#5299: pytest now warns about unraisable exceptions and unhandled thread exceptions that occur in tests on Python>=3.8.
See unraisable for more information.
#7425: New pytester fixture, which is identical to testdir but its methods return pathlib.Path when appropriate instead of py.path.local.
This is part of the movement to use pathlib.Path objects internally, in order to remove the dependency to py in the future.
Internally, the old Testdir <_pytest.pytester.Testdir> is now a thin wrapper around Pytester <_pytest.pytester.Pytester>, preserving the old interface.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a ""Dependabot enabled"" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
",2020-12-14T14:22:16Z,2021-01-24T21:20:29Z,2020-12-16T21:44:39Z,2020-12-16T21:44:39Z,6119bd797366a899119f1bba51c1c8cba2efc8fc,,6346396,0,a8588f95568138c268e6802de0d1a4daffb7bda8,0c616f732cee79db80cad830917666f41b344262,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1145,,
543015825,MDExOlB1bGxSZXF1ZXN0NTQzMDE1ODI1,31,open,0,Update for Big Sur,41546558,Refactored out the SQL for extracting aesthetic scores to use osxphotos -- adds compatbility for Big Sur via osxphotos which has been updated for new table names in Big Sur. Have not yet refactored the SQL for extracting labels which is still compatible with Big Sur.,2020-12-20T04:36:45Z,2023-08-08T15:52:52Z,,,0e571b07430024d4ce00d5e8ba28591cefd27d6f,,,0,39c12f8cda206ad621ec9940cce538570513e764,edc80a0d361006f478f2904a90bfe6c730ed6194,CONTRIBUTOR,256834907,https://github.com/dogsheep/dogsheep-photos/pull/31,,
543246535,MDExOlB1bGxSZXF1ZXN0NTQzMjQ2NTM1,59,closed,0,Remove unneeded exists=True for -a/--auth flag.,631242,The file does not need to exist when using an environment variable.,2020-12-21T06:03:55Z,2021-05-22T14:06:19Z,2021-05-19T16:08:12Z,2021-05-19T16:08:12Z,70dffca351375e6f542969c72ebc43c6d393d99c,,,0,79745bed50b7344c5cbb17a08215dc20d58b9416,d19d7db034bf7c3adcae37b9ab6f365d569605b3,CONTRIBUTOR,207052882,https://github.com/dogsheep/github-to-sqlite/pull/59,,
544923437,MDExOlB1bGxSZXF1ZXN0NTQ0OTIzNDM3,1158,closed,0,Modernize code to Python 3.6+,6774676,"- compact dict and set building
- remove redundant parentheses
- simplify chained conditions
- change method name to lowercase
- use triple double quotes for docstrings
please feel free to accept/reject any of these independent commits",2020-12-23T16:21:38Z,2021-01-24T21:20:50Z,2020-12-23T17:04:32Z,2020-12-23T17:04:32Z,a882d679626438ba0d809944f06f239bcba8ee96,,6346396,0,37ce72f086d7807a32ea9012d6e6b5d235349152,90eba4c3ca569c57e96bce314e7ac8caf67d884e,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1158,,
548271472,MDExOlB1bGxSZXF1ZXN0NTQ4MjcxNDcy,1170,closed,0,Install Prettier via package.json,3637,This adds a package.json with Prettier and means that developers/CI will use the same version. It also ensures that NPM packages are cached on GitHub Actions which fixes #1169.,2021-01-04T14:18:03Z,2021-01-24T21:21:01Z,2021-01-04T19:52:34Z,2021-01-04T19:52:33Z,3054e0f7307da4c31850b74bd73238b33d6c750a,,6346396,0,a5761ccb8676ef1b98d95d8174211c98f140e3de,1e8fa3ac7cb2d6e516c47c306c86ed2334fc3dc0,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1170,,
549204063,MDExOlB1bGxSZXF1ZXN0NTQ5MjA0MDYz,55,closed,0,Fix archive imports,21148,This fixes the issues discussed in #54,2021-01-05T15:54:48Z,2021-08-20T00:02:49Z,2021-08-20T00:02:49Z,2021-08-20T00:02:48Z,bf622dcb82203c1cd87e914901b53afe6f90e668,,,0,ffb127844f133fcb6a1af5cd3557995d303fb53f,21fc1cad6dd6348c67acff90a785b458d3a81275,CONTRIBUTOR,206156866,https://github.com/dogsheep/twitter-to-sqlite/pull/55,,
564172140,MDExOlB1bGxSZXF1ZXN0NTY0MTcyMTQw,61,closed,0,fixing typo in get cli help text,22578954,,2021-01-29T18:57:04Z,2021-05-19T16:07:09Z,2021-05-19T16:07:09Z,2021-05-19T16:07:09Z,ba8cf3e9bb5f4f8740bd4b9eed28f1464d7f6b9a,,,0,7ac6efc3a873facafa72192b58e28c6e8a79f744,62dfd3bc4014b108200001ef4bc746feb6f33b45,CONTRIBUTOR,207052882,https://github.com/dogsheep/github-to-sqlite/pull/61,,
564608264,MDExOlB1bGxSZXF1ZXN0NTY0NjA4MjY0,1211,closed,0,Use context manager instead of plain open,4488943,"Context manager with open closes the files after usage. Fixes: https://github.com/simonw/datasette/issues/1208
When the object is already a pathlib.Path i used read_text
write_text functions
In some cases pathlib.Path.open were used in context manager,
it is basically the same as builtin open.
Tests are passing: 850 passed, 5 xfailed, 10 xpassed",2021-01-31T07:58:10Z,2021-03-11T16:15:50Z,2021-03-11T16:15:50Z,2021-03-11T16:15:49Z,8e18c7943181f228ce5ebcea48deb59ce50bee1f,,,0,e33ccaaafbe9a16b8339a3bf4c0ae7b83354570c,dde3c500c73ace33529672f7d862b76753d309cc,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1211,,
572254103,MDExOlB1bGxSZXF1ZXN0NTcyMjU0MTAz,1223,closed,0,Add compile option to Dockerfile to fix failing test (fixes #696),7476523,"This test was failing when run inside the Docker container: `test_searchable[/fixtures/searchable.json?_search=te*+AND+do*&_searchmode=raw-expected_rows3]`,
with this error:
```
def test_searchable(app_client, path, expected_rows):
response = app_client.get(path)
> assert expected_rows == response.json[""rows""]
E AssertionError: assert [[1, 'barry c...sel', 'puma']] == []
E Left contains 2 more items, first extra item: [1, 'barry cat', 'terry dog', 'panther']
E Full diff:
E + []
E - [[1, 'barry cat', 'terry dog', 'panther'],
E - [2, 'terry dog', 'sara weasel', 'puma']]
```
The issue was that the version of sqlite3 built inside the Docker container was built with FTS3 and FTS4 enabled, but without the
`SQLITE_ENABLE_FTS3_PARENTHESIS` compile option passed, which adds support for using `AND` and `NOT` within `match` expressions (see https://sqlite.org/fts3.html#compiling_and_enabling_fts3_and_fts4 and https://www.sqlite.org/compile.html).
Without this, the `AND` used in the search in this test was being interpreted as a literal string, and so no matches were found. Adding this compile option fixes this.
---
I actually ran into this issue because the same test was failing when I ran the test suite on my own machine, outside of Docker, and so I eventually tracked this down to my system sqlite3 also being compiled without this option.
I wonder if this is a sign of a slightly deeper issue, that Datasette can silently behave differently based on the version and compilation of sqlite3 it is being used with. On my own system I fixed the test suite by running `pip install pysqlite3-binary`, so that this would be picked up instead of the `sqlite` package, as this seems to be compiled using this option, . Maybe using `pysqlite3-binary` could be installed/recommended by default so a more deterministic version of sqlite is used? Or there could be some feature detection done on the available sqlite version, to know what features are available and can be used/tested?",2021-02-12T03:38:05Z,2021-03-07T12:01:12Z,2021-03-07T07:41:17Z,2021-03-07T07:41:17Z,d0fd833b8cdd97e1b91d0f97a69b494895d82bee,,,0,d1cd1f259c699fab3af01c4aa90035ed0242471a,9603d893b9b72653895318c9104d754229fdb146,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1223,,
575187457,MDExOlB1bGxSZXF1ZXN0NTc1MTg3NDU3,1229,closed,0,ensure immutable databses when starting in configuration directory mode with,295329,"fixes #1224
This PR ensures all databases found in a configuration directory that match the files in `inspect-data.json` will be set to `immutable` as outlined in https://docs.datasette.io/en/latest/settings.html#configuration-directory-mode
specifically on building the `datasette` instance it checks:
- if `immutables` is an empty tuple - as passed by the cli code
- if `immutables` is the default function value `None` - when it's not explicitly set
And correctly builds the immutable database list from the `inspect-data[file]` keys.
Note for this to work the `inspect-data.json` file must contain `file` paths which are relative to the configuration directory otherwise the file paths won't match and the dbs won't be set to immutable.
I couldn't find an easy way to test this due to the way `make_app_client` works, happy to take directions on adding a test for this.
I've updated the relevant docs as well, i.e. use the `inspect` cli cmd from the config directory path to create the relevant file
```
cd $config_dir
datasette inspect *.db --inspect-file=inspect-data.json
```
https://docs.datasette.io/en/latest/performance.html#using-datasette-inspect",2021-02-17T20:18:26Z,2022-04-22T13:16:36Z,2021-03-29T00:17:32Z,2021-03-29T00:17:31Z,f92d823766872a6fd7e76c5249a6b2de1ab0f447,,,0,a095248ad18c9c5272dbd52f4c97ea8a36cf91f3,8e18c7943181f228ce5ebcea48deb59ce50bee1f,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1229,,
579697833,MDExOlB1bGxSZXF1ZXN0NTc5Njk3ODMz,1243,closed,0,fix small typo,306240,,2021-02-25T00:22:34Z,2021-03-04T05:46:10Z,2021-03-04T05:46:10Z,2021-03-04T05:46:10Z,4f9a2f1f47dcf7e8561d68a8a07f5009a13cfdb3,,,0,32652d9847f9b32c5d923823001c75d76e2791d2,726f781c50e88f557437f6490b8479c3d6fabfc2,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1243,,
583407989,MDExOlB1bGxSZXF1ZXN0NTgzNDA3OTg5,244,closed,0,Typo in upsert example,387669,Remove extra `[`,2021-03-02T23:14:14Z,2021-05-19T02:58:21Z,2021-05-19T02:58:21Z,2021-05-19T02:58:21Z,328211eaca1247cd6b33a2c0a54642f87866d85b,,,0,1899200fa5a43f638573ea2c483df62819ba53b1,09c3386f55f766b135b6a1c00295646c4ae29bec,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/244,,
587332473,MDExOlB1bGxSZXF1ZXN0NTg3MzMyNDcz,1252,closed,0,Add back styling to lists within table cells (fixes #1141),7476523,"This overrides the Datasette reset - see https://github.com/simonw/datasette/blob/d0fd833b8cdd97e1b91d0f97a69b494895d82bee/datasette/static/app.css#L35-L38 - to add back the default styling of list items displayed within Datasette table cells.
Following this change, the same content as in the original issue looks like this:
![2021-03-09_02:57:32](https://user-images.githubusercontent.com/7476523/110411982-63e5ae80-8083-11eb-9b5c-e5dc825073e2.png)
",2021-03-09T03:00:57Z,2021-03-29T00:14:04Z,2021-03-29T00:14:04Z,2021-03-29T00:14:04Z,e72397d65b06b019521b6411243687464ac8d8ca,,,0,d22aa32cd9c0f798bcab917cc2024a371b4c0069,d0fd833b8cdd97e1b91d0f97a69b494895d82bee,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1252,,
589263297,MDExOlB1bGxSZXF1ZXN0NTg5MjYzMjk3,1256,closed,0,Minor type in IP adress,6371750,127.0.01 replaced by 127.0.0.1,2021-03-10T08:28:22Z,2021-03-10T18:26:46Z,2021-03-10T18:26:40Z,2021-03-10T18:26:39Z,a1bcd2fbe5e47bb431045f65eeceb5eb3a6718d5,,,0,4eef524e44ff79c617728aad98b14c1c1e586ce3,d0fd833b8cdd97e1b91d0f97a69b494895d82bee,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1256,,
592289324,MDExOlB1bGxSZXF1ZXN0NTkyMjg5MzI0,245,closed,0,Correct some typos,1076745,Noticed a typo in the docs and followed that up with a spellcheck. Had to bite my tongue at some of the British spellings.,2021-03-13T04:26:56Z,2021-05-19T02:58:04Z,2021-05-19T02:58:04Z,2021-05-19T02:58:04Z,3e62ab62a88992d4bbb0fe83debec3bacd93ebf3,,,0,79de6b639f9d14818a5006af4f63e4e20c961a10,22f1d9e1999f70af4c5b0f880a820cd9eead3942,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/245,,
593805804,MDExOlB1bGxSZXF1ZXN0NTkzODA1ODA0,247,closed,0,FTS quote functionality from datasette,16001974,"Addresses #246 - this is a bit of a kludge because it doesn't actually *validate* the FTS string, just makes sure that it will not crash when executed, but I figured that building a query parser is a bit out of the scope of sqlite-utils and if you actually want to use the query language, you probably need to parse that yourself.
",2021-03-16T11:17:34Z,2021-08-18T18:43:12Z,2021-08-18T18:43:12Z,2021-08-18T18:43:11Z,53fec0d8639d2a66e322d05e1fcc8f34caa57815,,,0,af989af658e23be0077f226292594226103b063d,1fe73c898b44695052f1a9ca832818d50cecf662,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/247,,
602107935,MDExOlB1bGxSZXF1ZXN0NjAyMTA3OTM1,1279,closed,0,Minor Docs Update. Added `--app` to fly install command.,1019791,"Without this flag, there's an error locally.
```
> datasette publish fly bigmac.db
Usage: datasette publish fly [OPTIONS] [FILES]...
Try 'datasette publish fly --help' for help.
Error: Missing option '-a' / '--app'.
```
I also got an error message which later turned out to be because I hadn't added my credit card information yet to `fly`. I wasn't sure if I should add that mention to the docs here, or to submit a bug-report over at https://github.com/simonw/datasette-publish-fly. ",2021-03-27T16:58:08Z,2021-03-29T00:11:55Z,2021-03-29T00:11:55Z,2021-03-29T00:11:55Z,c96a3826cf50cb347f6a415b56d8105ba6d8dcb0,,,0,14d8977e158d1d3193c6afb50aae482547ec9d8d,3fcfc8513465339ac5f055296cbb67f5262af02b,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1279,,
603082280,MDExOlB1bGxSZXF1ZXN0NjAzMDgyMjgw,1282,closed,0,Fix little typo,192568,,2021-03-29T19:45:28Z,2021-03-29T19:57:34Z,2021-03-29T19:57:34Z,2021-03-29T19:57:34Z,7b1a9a1999eb9326ce8ec830d75ac200e5279c46,,,0,08f7427afcff69fa93ebaf5916588b5ad8bd4e0f,0486303b60ce2784fd2e2ecdbecf304b7d6e6659,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1282,,
608334096,MDExOlB1bGxSZXF1ZXN0NjA4MzM0MDk2,1291,closed,0,Update docs: explain allow_download setting,5413548,"This fixes one possible source of confusion seen in #502 and clarifies
when database downloads will be shown and allowed.",2021-04-03T05:28:33Z,2021-06-05T19:48:51Z,2021-06-05T19:48:51Z,2021-06-05T19:48:51Z,368aa5f1b16ca35f82d90ff747023b9a2bfa27c1,,,0,9bf089faded74c96aced22332008126324a37f7a,0a7621f96f8ad14da17e7172e8a7bce24ef78966,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1291,,
614727036,MDExOlB1bGxSZXF1ZXN0NjE0NzI3MDM2,254,closed,0,Fix incorrect create-table cli description,1935268,The description for `create-table` was duplicated from `create-index`.,2021-04-13T20:03:15Z,2021-05-19T04:43:46Z,2021-05-19T02:57:26Z,2021-05-19T02:57:26Z,e7b2626291040b78b9a2dbc2982ba72691fb1a0f,,,0,cdeb7d7da77c6d1cd3554d08cb5659243cb3d55b,22f1d9e1999f70af4c5b0f880a820cd9eead3942,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/254,,
618011977,MDExOlB1bGxSZXF1ZXN0NjE4MDExOTc3,1303,closed,0,"Update pytest-asyncio requirement from <0.15,>=0.10 to >=0.10,<0.16",27856297,"Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version.
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a ""Dependabot enabled"" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
",2021-04-19T13:49:12Z,2021-04-19T18:18:17Z,2021-04-19T18:18:17Z,2021-04-19T18:18:17Z,6ed9238178a56da5fb019f37fb1e1e15886be1d1,,,0,c348ff1ecee0d831a75b17e3f48bcf0a8a558566,0a7621f96f8ad14da17e7172e8a7bce24ef78966,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1303,,
621117978,MDExOlB1bGxSZXF1ZXN0NjIxMTE3OTc4,1306,closed,0,Avoid error sorting by relationships if related tables are not allowed,416374,Refs #1305,2021-04-22T13:53:17Z,2021-06-02T04:27:00Z,2021-06-02T04:25:28Z,2021-06-02T04:25:28Z,0f41db1ba8a8a49a4adc1046a25ccf32790e863f,,,0,115332ce76c0e867d9936406aaf4bcee6b1ef3cb,6ed9238178a56da5fb019f37fb1e1e15886be1d1,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1306,,
623755723,MDExOlB1bGxSZXF1ZXN0NjIzNzU1NzIz,258,closed,0,Fixing insert from JSON containing strings with non-ascii characters …,6586811,"…are escaped aps unicode for lists, tuples, dicts
Fix of #257 ",2021-04-26T20:50:00Z,2021-05-19T02:47:44Z,2021-05-19T02:47:44Z,2021-05-19T02:47:44Z,6f4f9a3effeb16de0348d3cf136664f7531f498d,,,0,27e7c1ae1913e2127361af4fc664c2061fb76627,22f1d9e1999f70af4c5b0f880a820cd9eead3942,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/258,,
624635440,MDExOlB1bGxSZXF1ZXN0NjI0NjM1NDQw,1309,closed,0,Bump black from 20.8b1 to 21.4b0,27856297,"Bumps [black](https://github.com/psf/black) from 20.8b1 to 21.4b0.
Release notes
Fixed a rare but annoying formatting instability created by the combination of
optional trailing commas inserted by Black and optional parentheses looking at
pre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many
duplicates. (#2126)
Black now processes one-line docstrings by stripping leading and trailing spaces,
and adding a padding space when needed to break up """". (#1740)
Black now cleans up leading non-breaking spaces in comments (#2092)
Black now respects --skip-string-normalization when normalizing multiline
docstring quotes (#1637)
Black no longer removes all empty lines between non-function code and decorators
when formatting typing stubs. Now Black enforces a single empty line. (#1646)
Black no longer adds an incorrect space after a parenthesized assignment expression
in if/while statements (#1655)
Added --skip-magic-trailing-comma / -C to avoid using trailing commas as a reason
to split lines (#1824)
Fixed a rare but annoying formatting instability created by the combination of
optional trailing commas inserted by Black and optional parentheses looking at
pre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many
duplicates. (#2126)
Black now processes one-line docstrings by stripping leading and trailing spaces,
and adding a padding space when needed to break up """". (#1740)
Black now cleans up leading non-breaking spaces in comments (#2092)
Black now respects --skip-string-normalization when normalizing multiline
docstring quotes (#1637)
Black no longer removes all empty lines between non-function code and decorators
when formatting typing stubs. Now Black enforces a single empty line. (#1646)
Black no longer adds an incorrect space after a parenthesized assignment expression
in if/while statements (#1655)
Added --skip-magic-trailing-comma / -C to avoid using trailing commas as a reason
to split lines (#1824)
[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=20.8b1&new-version=21.4b0)](https://dependabot.com/compatibility-score/?dependency-name=black&package-manager=pip&previous-version=20.8b1&new-version=21.4b0)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a ""Dependabot enabled"" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
",2021-04-27T20:28:11Z,2021-04-28T18:26:06Z,2021-04-28T18:26:04Z,,1220c60d8a6bb8e621543ef78d669a2bccc2a3c8,,,0,20fc3fe2797b81a23cd464c1450d13086d53ea7f,a4bb2abce0764d49d255e5379f9e9c70981834ca,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1309,,
625457579,MDExOlB1bGxSZXF1ZXN0NjI1NDU3NTc5,1311,closed,0,Bump black from 20.8b1 to 21.4b1,27856297,"Bumps [black](https://github.com/psf/black) from 20.8b1 to 21.4b1.
Release notes
Fix crash when atypical whitespace is cleaned out of dostrings (#2120)
Reflect the --skip-magic-trailing-comma and --experimental-string-processing flags
in the name of the cache file. Without this fix, changes in these flags would not take
effect if the cache had already been populated. (#2131)
Bump pathspec to >= 0.8.1 to solve invalid .gitignore exclusion handling
21.4b0
Black
Fixed a rare but annoying formatting instability created by the combination of
optional trailing commas inserted by Black and optional parentheses looking at
pre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many
duplicates. (#2126)
Black now processes one-line docstrings by stripping leading and trailing spaces,
and adding a padding space when needed to break up """". (#1740)
Black now cleans up leading non-breaking spaces in comments (#2092)
Black now respects --skip-string-normalization when normalizing multiline
docstring quotes (#1637)
Black no longer removes all empty lines between non-function code and decorators
when formatting typing stubs. Now Black enforces a single empty line. (#1646)
Black no longer adds an incorrect space after a parenthesized assignment expression
in if/while statements (#1655)
Added --skip-magic-trailing-comma / -C to avoid using trailing commas as a reason
to split lines (#1824)
Fix crash when atypical whitespace is cleaned out of dostrings (#2120)
Reflect the --skip-magic-trailing-comma and --experimental-string-processing flags
in the name of the cache file. Without this fix, changes in these flags would not take
effect if the cache had already been populated. (#2131)
Bump pathspec to >= 0.8.1 to solve invalid .gitignore exclusion handling
21.4b0
Black
Fixed a rare but annoying formatting instability created by the combination of
optional trailing commas inserted by Black and optional parentheses looking at
pre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many
duplicates. (#2126)
Black now processes one-line docstrings by stripping leading and trailing spaces,
and adding a padding space when needed to break up """". (#1740)
Black now cleans up leading non-breaking spaces in comments (#2092)
Black now respects --skip-string-normalization when normalizing multiline
docstring quotes (#1637)
Black no longer removes all empty lines between non-function code and decorators
when formatting typing stubs. Now Black enforces a single empty line. (#1646)
Black no longer adds an incorrect space after a parenthesized assignment expression
in if/while statements (#1655)
Added --skip-magic-trailing-comma / -C to avoid using trailing commas as a reason
to split lines (#1824)
[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=20.8b1&new-version=21.4b1)](https://dependabot.com/compatibility-score/?dependency-name=black&package-manager=pip&previous-version=20.8b1&new-version=21.4b1)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a ""Dependabot enabled"" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
",2021-04-28T18:25:58Z,2021-04-29T13:58:11Z,2021-04-29T13:58:09Z,,a8e260b47e0fb951790f155780354c8f8df88bc8,,,0,baf303063a76800ec97abee46cd5f264e6a6447a,a4bb2abce0764d49d255e5379f9e9c70981834ca,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1311,,
626130135,MDExOlB1bGxSZXF1ZXN0NjI2MTMwMTM1,1313,closed,0,Bump black from 20.8b1 to 21.4b2,27856297,"Bumps [black](https://github.com/psf/black) from 20.8b1 to 21.4b2.
Release notes
Fix crash when atypical whitespace is cleaned out of dostrings (#2120)
Reflect the --skip-magic-trailing-comma and --experimental-string-processing flags
in the name of the cache file. Without this fix, changes in these flags would not take
effect if the cache had already been populated. (#2131)
Bump pathspec to >= 0.8.1 to solve invalid .gitignore exclusion handling
21.4b0
Black
Fixed a rare but annoying formatting instability created by the combination of
optional trailing commas inserted by Black and optional parentheses looking at
pre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many
duplicates. (#2126)
Black now processes one-line docstrings by stripping leading and trailing spaces,
and adding a padding space when needed to break up """". (#1740)
Black now cleans up leading non-breaking spaces in comments (#2092)
Black now respects --skip-string-normalization when normalizing multiline
docstring quotes (#1637)
Black no longer removes all empty lines between non-function code and decorators
when formatting typing stubs. Now Black enforces a single empty line. (#1646)
Fix crash when atypical whitespace is cleaned out of dostrings (#2120)
Reflect the --skip-magic-trailing-comma and --experimental-string-processing flags
in the name of the cache file. Without this fix, changes in these flags would not take
effect if the cache had already been populated. (#2131)
Bump pathspec to >= 0.8.1 to solve invalid .gitignore exclusion handling
21.4b0
Black
Fixed a rare but annoying formatting instability created by the combination of
optional trailing commas inserted by Black and optional parentheses looking at
pre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many
duplicates. (#2126)
Black now processes one-line docstrings by stripping leading and trailing spaces,
and adding a padding space when needed to break up """". (#1740)
Black now cleans up leading non-breaking spaces in comments (#2092)
Black now respects --skip-string-normalization when normalizing multiline
docstring quotes (#1637)
[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=20.8b1&new-version=21.4b2)](https://dependabot.com/compatibility-score/?dependency-name=black&package-manager=pip&previous-version=20.8b1&new-version=21.4b2)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a ""Dependabot enabled"" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
",2021-04-29T13:58:06Z,2021-04-29T15:47:50Z,2021-04-29T15:47:49Z,2021-04-29T15:47:49Z,1b697539f5b53cec3fe13c0f4ada13ba655c88c7,,,0,3cd7ad429944d47147c5d408f546c429e0a0019a,a4bb2abce0764d49d255e5379f9e9c70981834ca,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1313,,
626222676,MDExOlB1bGxSZXF1ZXN0NjI2MjIyNjc2,1314,closed,0,Upgrade to GitHub-native Dependabot,27856297,"_Dependabot Preview will be shut down on August 3rd, 2021. In order to keep getting Dependabot updates, please merge this PR and migrate to GitHub-native Dependabot before then._
Dependabot has been fully integrated into GitHub, so you no longer have to install and manage a separate app. This pull request migrates your configuration from Dependabot.com to a config file, using the [new syntax][new_syntax]. When merged, we'll swap out `dependabot-preview` (me) for a new `dependabot` app, and you'll be all set!
With this change, you'll now use the [Dependabot page in GitHub][dependabot_page], rather than the [Dependabot dashboard][dashboard], to monitor your version updates, and you'll configure Dependabot through the new config file rather than a UI.
If you've got any questions or feedback for us, please let us know by creating an issue in the [dependabot/dependabot-core][issues] repository.
[Learn more about migrating to GitHub-native Dependabot][learn]
Please note that regular `@dependabot` commands do not work on this pull request.
[dashboard]: https://app.dependabot.com/
[dependabot_page]: https://github.com/simonw/datasette/network/updates
[issues]: https://github.com/dependabot/dependabot-core/issues/new?assignees=%40dependabot%2Fpreview-migration-reviewers&labels=E%3A+preview-migration&template=migration-issue.md
[learn]: http://docs.github.com/code-security/supply-chain-security/upgrading-from-dependabotcom-to-github-native-dependabot
[new_syntax]: https://help.github.com/en/github/administering-a-repository/configuration-options-for-dependency-updates
[org_secrets_url]: https://github.com/settings/secrets/dependabot
[repo_secrets_url]: https://github.com/simonw/datasette/settings/secrets/dependabot
",2021-04-29T15:36:41Z,2021-04-29T15:47:22Z,2021-04-29T15:47:21Z,2021-04-29T15:47:21Z,5e60bad40460f68122006ce704cfc163d6076f34,,,0,98eea0b67f4ac658869052f1cfe31bcc44fe2a7a,a4bb2abce0764d49d255e5379f9e9c70981834ca,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1314,,
630578735,MDExOlB1bGxSZXF1ZXN0NjMwNTc4NzM1,1318,closed,0,Bump black from 21.4b2 to 21.5b0,49699333,"Bumps [black](https://github.com/psf/black) from 21.4b2 to 21.5b0.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.4b2&new-version=21.5b0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
",2021-05-05T13:07:51Z,2021-05-11T13:12:32Z,2021-05-11T13:12:31Z,,e864f5420abb7a5d135f8fe470183786b577ce9a,,,0,e06c09911be52202940808d7a08df2e9b71b3af2,1b697539f5b53cec3fe13c0f4ada13ba655c88c7,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1318,,
634821065,MDExOlB1bGxSZXF1ZXN0NjM0ODIxMDY1,1319,closed,0,Add Docker multi-arch support with Buildx,10801138,"This adds Docker support to extra CPU architectures (like arm) using [Docker's Buildx action](https://github.com/marketplace/actions/docker-setup-buildx)
You can see [what that looks like on Dockerhub](https://hub.docker.com/r/blairdrummond/datasette/tags?page=1&ordering=last_updated)
And how it lets Datasette run on a Raspberry Pi (top is my dockerhub, bottom is upstream)
![Screenshot from 2021-05-08 15-32-25](https://user-images.githubusercontent.com/10801138/117551210-a17a9f80-b012-11eb-966b-10e1590dd4a9.png)
The workflow log [here](https://github.com/blairdrummond/datasette/runs/2535743398?check_suite_focus=true) (I subbed `blairdrummond` for datasetteproject in my branch) ",2021-05-08T19:35:03Z,2021-05-27T16:49:24Z,2021-05-27T16:49:24Z,2021-05-27T16:49:23Z,89822d10be0da446471986addea91d9766f12efb,,,0,cfca570f9ca010ff9036c75209dc42e78bbc945f,1b697539f5b53cec3fe13c0f4ada13ba655c88c7,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1319,,
640484966,MDExOlB1bGxSZXF1ZXN0NjQwNDg0OTY2,1321,closed,0,Bump black from 21.4b2 to 21.5b1,49699333,"Bumps [black](https://github.com/psf/black) from 21.4b2 to 21.5b1.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.4b2&new-version=21.5b1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
",2021-05-11T13:12:28Z,2021-05-22T23:55:39Z,2021-05-22T23:55:39Z,2021-05-22T23:55:39Z,5e9672c9bb33e41686472db4aa427168f9e67dbe,,,0,966ced8fe14210fd9ce57322456944f739bf49b8,1b697539f5b53cec3fe13c0f4ada13ba655c88c7,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1321,,
643149273,MDExOlB1bGxSZXF1ZXN0NjQzMTQ5Mjcz,1323,closed,0,"Update click requirement from ~=7.1.1 to >=7.1.1,<8.1.0",49699333,"Updates the requirements on [click](https://github.com/pallets/click) to permit the latest version.
Release notes
Follow our blog, Twitter, or GitHub to see future announcements.
This represents a significant amount of work, and there are quite a few changes. Be sure to carefully read the changelog, and use tools such as pip-compile and Dependabot to pin your dependencies and control your updates.
Colorama is always installed on Windows in order to provide style
and color support. :pr:1784
Adds a repr to Command, showing the command name for friendlier
debugging. :issue:1267, :pr:1295
Add support for distinguishing the source of a command line
parameter. :issue:1264, :pr:1329
Add an optional parameter to ProgressBar.update to set the
current_item. :issue:1226, :pr:1332
version_option uses importlib.metadata (or the
importlib_metadata backport) instead of pkg_resources.
:issue:1582
If validation fails for a prompt with hide_input=True, the value
is not shown in the error message. :issue:1460
An IntRange or FloatRange option shows the accepted range in
its help text. :issue:1525, :pr:1303
IntRange and FloatRange bounds can be open (<) instead
of closed (<=) by setting min_open and max_open. Error
messages have changed to reflect this. :issue:1100
An option defined with duplicate flag names ("--foo/--foo")
raises a ValueError. :issue:1465
echo() will not fail when using pytest's capsys fixture on
Windows. :issue:1590
Resolving commands returns the canonical command name instead of the
matched name. This makes behavior such as help text and
Context.invoked_subcommand consistent when using patterns like
AliasedGroup. :issue:1422
The BOOL type accepts the values "on" and "off". :issue:1629
A Group with invoke_without_command=True will always invoke
its result callback. :issue:1178
nargs == -1 and nargs > 1 is parsed and validated for
values from environment variables and defaults. :issue:729
Detect the program name when executing a module or package with
python -m name. :issue:1603
Include required parent arguments in help synopsis of subcommands.
:issue:1475
Help for boolean flags with show_default=True shows the flag
name instead of True or False. :issue:1538
Non-string objects passed to style() and secho() will be
converted to string. :pr:1146
edit(require_save=True) will detect saves for editors that exit
very fast on filesystems with 1 second resolution. :pr:1050
New class attributes make it easier to use custom core objects
throughout an entire application. :pr:938
... (truncated)
Commits
9da1669 Merge pull request #1877 from pallets/release-8.0.0
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
",2021-05-12T13:08:56Z,2021-05-22T23:54:48Z,2021-05-22T23:54:48Z,2021-05-22T23:54:48Z,5c3b3ef97eed55895cf48d4a9ee0635c1c4d03b8,,,0,cd695020e4fdfe31d3417d91911c9bdbce9a2f2e,9b3b7e280ca718254b4ca15d40864297146a85b3,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1323,,
643149320,MDExOlB1bGxSZXF1ZXN0NjQzMTQ5MzIw,1324,closed,0,"Update jinja2 requirement from <2.12.0,>=2.10.3 to >=2.10.3,<3.1.0",49699333,"Updates the requirements on [jinja2](https://github.com/pallets/jinja) to permit the latest version.
Release notes
Follow our blog, Twitter, or GitHub to see future announcements.
This represents a significant amount of work, and there are quite a few changes. Be sure to carefully read the changelog, and use tools such as pip-compile and Dependabot to pin your dependencies and control your updates.
Use :pep:451 API to load templates with
:class:~loaders.PackageLoader. :issue:1168
Fix a bug that caused imported macros to not have access to the
current template's globals. :issue:688
Add ability to ignore trim_blocks using +%}. :issue:1036
Fix a bug that caused custom async-only filters to fail with
constant input. :issue:1279
Fix UndefinedError incorrectly being thrown on an undefined variable
instead of Undefined being returned on
NativeEnvironment on Python 3.10. :issue:1335
Blocks can be marked as required. They must be overridden at
some point, but not necessarily by the direct child. :issue:1147
Deprecate the autoescape and with extensions, they are
built-in to the compiler. :issue:1203
The urlize filter recognizes mailto: links and takes
extra_schemes (or env.policies["urlize.extra_schemes"]) to
recognize other schemes. It tries to balance parentheses within a
URL instead of ignoring trailing characters. The parsing in general
has been updated to be more efficient and match more cases. URLs
without a scheme are linked as https:// instead of http://.
:issue:522, 827, 1172, :pr:1195
Filters that get attributes, such as map and groupby, can
use a false or empty value as a default. :issue:1331
Fix a bug that prevented variables set in blocks or loops from
being accessed in custom context functions. :issue:768
Fix a bug that caused scoped blocks from accessing special loop
variables. :issue:1088
Update the template globals when calling
Environment.get_template(globals=...) even if the template was
already loaded. :issue:295
Do not raise an error for undefined filters in unexecuted
if-statements and conditional expressions. :issue:842
Add is filter and is test tests to test if a name is a
registered filter or test. This allows checking if a filter is
available in a template before using it. Test functions can be
decorated with @pass_environment, @pass_eval_context,
or @pass_context. :issue:842, :pr:1248
Support pgettext and npgettext (message contexts) in i18n
extension. :issue:441
The |indent filter's width argument can be a string to
... (truncated)
Commits
417f822 Merge pull request #1417 from pallets/release-3.0.0
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
",2021-05-12T13:08:59Z,2021-05-17T17:19:41Z,2021-05-17T17:19:40Z,2021-05-17T17:19:40Z,9b3b7e280ca718254b4ca15d40864297146a85b3,,,0,177456e64bbdc7a1ec7c58f2cacba932b261b3fb,1b697539f5b53cec3fe13c0f4ada13ba655c88c7,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1324,,
643149364,MDExOlB1bGxSZXF1ZXN0NjQzMTQ5MzY0,1325,closed,0,"Update itsdangerous requirement from ~=1.1 to >=1.1,<3.0",49699333,"Updates the requirements on [itsdangerous](https://github.com/pallets/itsdangerous) to permit the latest version.
Release notes
Follow our blog, Twitter, or GitHub to see future announcements.
This represents a significant amount of work, and there are quite a few changes. Be sure to carefully read the changelog, and use tools such as pip-compile and Dependabot to pin your dependencies and control your updates.
JWS support (JSONWebSignatureSerializer,
TimedJSONWebSignatureSerializer) is deprecated. Use a dedicated
JWS/JWT library such as authlib instead. :issue:129
Importing itsdangerous.json is deprecated. Import Python's
json module instead. :pr:152
Simplejson is no longer used if it is installed. To use a different
library, pass it as Serializer(serializer=...). :issue:146
datetime values are timezone-aware with timezone.utc. Code
using TimestampSigner.unsign(return_timestamp=True) or
BadTimeSignature.date_signed may need to change. :issue:150
If a signature has an age less than 0, it will raise
SignatureExpired rather than appearing valid. This can happen if
the timestamp offset is changed. :issue:126
BadTimeSignature.date_signed is always a datetime object
rather than an int in some cases. :issue:124
Added support for key rotation. A list of keys can be passed as
secret_key, oldest to newest. The newest key is used for
signing, all keys are tried for unsigning. :pr:141
Removed the default SHA-512 fallback signer from
default_fallback_signers. :issue:155
Add type information for static typing tools. :pr:186
Version 1.1.0
Released 2018-10-26
Change default signing algorithm back to SHA-1. :pr:113
Added a default SHA-512 fallback for users who used the yanked 1.0.0
release which defaulted to SHA-512. :pr:114
Add support for fallback algorithms during deserialization to
support changing the default in the future without breaking existing
signatures. :pr:113
Changed capitalization of packages back to lowercase as the change
in capitalization broke some tooling. :pr:113
Version 1.0.0
Released 2018-10-18
YANKED
... (truncated)
Commits
d101100 Merge pull request #235 from pallets/release-2.0.0
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
",2021-05-12T13:09:03Z,2021-05-22T23:54:25Z,2021-05-22T23:54:25Z,2021-05-22T23:54:25Z,b64d87204612a84663616e075f542499a5d82a03,,,0,4dea180e51601bb0851edb578f076c51554c6d51,1b697539f5b53cec3fe13c0f4ada13ba655c88c7,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1325,,
645849027,MDExOlB1bGxSZXF1ZXN0NjQ1ODQ5MDI3,1330,closed,0,"Update aiofiles requirement from <0.7,>=0.4 to >=0.4,<0.8",49699333,"Updates the requirements on [aiofiles](https://github.com/Tinche/aiofiles) to permit the latest version.
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
",2021-05-17T13:07:31Z,2021-05-22T23:53:57Z,2021-05-22T23:53:56Z,2021-05-22T23:53:56Z,593d3e8173b45e20ff3c95afb3df7ceb85bf7fef,,,0,cc1b504793486dd7d14a9cb8248c4cf6db60b179,1b697539f5b53cec3fe13c0f4ada13ba655c88c7,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1330,,
647552141,MDExOlB1bGxSZXF1ZXN0NjQ3NTUyMTQx,1335,closed,0,Fix small typo,3243482,,2021-05-19T11:17:04Z,2021-05-22T23:53:34Z,2021-05-22T23:53:34Z,2021-05-22T23:53:34Z,459259175eddeed727fd8f08dc19a332779a4f6b,,,0,d91c18dcd956b414b57eaa2763d2b8f5f6f6427f,9b3b7e280ca718254b4ca15d40864297146a85b3,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1335,,
655726387,MDExOlB1bGxSZXF1ZXN0NjU1NzI2Mzg3,1347,closed,0,Test docker platform blair only,10801138,,2021-05-28T02:47:09Z,2021-05-28T02:47:28Z,2021-05-28T02:47:28Z,,e755dd8c8cf7149046a8b5fd44aec07c4b2416d3,,,0,f730725fd260ba6578c472c344269d5d5df4e650,7b106e106000713bbee31b34d694b3dadbd4818c,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1347,,
655741428,MDExOlB1bGxSZXF1ZXN0NjU1NzQxNDI4,1348,open,0,DRAFT: add test and scan for docker images,10801138,"**NOTE: I don't think this PR is ready, since the arm/v6 and arm/v7 images are failing pytest due to missing dependencies (gcc and friends). But it's pretty close.**
Closes https://github.com/simonw/datasette/issues/1344 . Using a build-matrix for the platforms and [this test](https://github.com/simonw/datasette/issues/1344#issuecomment-849820019), we test all the platforms in parallel. I also threw in container scanning.
### Switch `pip install` to use either tags or commit shas
Notably! This also [changes the Dockerfile](https://github.com/blairdrummond/datasette/blob/7fe5315d68e04fce64b5bebf4e2d7feec44f8546/Dockerfile#L20) so that it accepts tags or commit-shas.
```
# It's backwards compatible with tags, but also lets you use shas
root@712071df17af:/# pip install git+git://github.com/simonw/datasette.git@0.56
Collecting git+git://github.com/simonw/datasette.git@0.56
Cloning git://github.com/simonw/datasette.git (to revision 0.56) to /tmp/pip-req-build-u6dhm945
Running command git clone -q git://github.com/simonw/datasette.git /tmp/pip-req-build-u6dhm945
Running command git checkout -q af5a7f1c09f6a902bb2a25e8edf39c7034d2e5de
Collecting Jinja2<2.12.0,>=2.10.3
Downloading Jinja2-2.11.3-py2.py3-none-any.whl (125 kB)
```
This lets you build the containers in CI every push for testing, which maybe resolves [this problem](https://github.com/simonw/datasette/issues/1272#issuecomment-808648974)?
# Workflow run example
You can see the results in my workflow [here](https://github.com/blairdrummond/datasette/pull/2/checks?check_run_id=2690570717). The commit history is different because I squashed this branch, also in the testing branch I had to change `github.com/simonw` to `github.com/blairdrummond` for the CI to pick up my git_sha.
## Why did the builds fail?
**NOTE:** The results of all the tests fail, but for different reasons! A few fail to install Rust, the amd64 passes the tests (phew!) but has critical CVEs which fail the container scan, the Arm/v6 and Arm/v7 seem to fail to install the test dependencies due to missing programs like `gcc`. (`gcc` is not sufficient though, as [this run](https://github.com/blairdrummond/datasette/pull/3/checks?check_run_id=2690672982) indicates) ",2021-05-28T03:02:12Z,2021-05-28T03:06:16Z,,,eeea7cb835be0f0319cafccf50dffa6ad26826c5,,,0,56cba8fb837cd938c2f9d7423ee43d62a81c8f7c,7b106e106000713bbee31b34d694b3dadbd4818c,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1348,,
658991404,MDExOlB1bGxSZXF1ZXN0NjU4OTkxNDA0,1352,closed,0,Bump black from 21.5b1 to 21.5b2,49699333,"Bumps [black](https://github.com/psf/black) from 21.5b1 to 21.5b2.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.5b1&new-version=21.5b2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-06-01T13:08:52Z,2021-06-02T02:56:45Z,2021-06-02T02:56:44Z,2021-06-02T02:56:44Z,03b35d70e281ea48bd9b8058738ed87b13cea2de,,,0,6921552c80854d6ea73203fe2f9ab46bac6d5644,a18e8641bc33e51b265855bc6e8a1939597b3a76,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1352,,
663836965,MDExOlB1bGxSZXF1ZXN0NjYzODM2OTY1,1368,closed,0,DRAFT: A new plugin hook for dynamic metadata,2670795,"Note that this is a WORK IN PROGRESS!
This PR adds the following plugin hook:
get_metadata(
datasette=self, key=key, database=database, table=table,
fallback=fallback
)
This gets called when we're building our metdata for the rest of the system to use. Datasette merges whatever the plugins return with any local metadata (from metadata.yml/yaml/json) allowing for a live-editable dynamic Datasette. __A major design consideration is this: should Datasette perform the metadata merge? Or should Datasette allow plugins to perform any modifications themselves?__
As a security precation, local meta is *not* overwritable by plugin hooks. The workflow for transitioning to live-meta would be to load the plugin with the full metadata.yaml and save. Then remove the parts of the metadata that you want to be able to change from the file.
I have a WIP dynamic configuration plugin here, for reference: https://github.com/next-LI/datasette-live-config/",2021-06-07T18:56:00Z,2021-06-26T22:24:54Z,2021-06-26T22:24:54Z,2021-06-26T22:24:54Z,baf986c871708c01ca183be760995cf306ba21bf,,,0,84fe80cb94ad2d6d7d88f6dec94b6c317fbe20d9,953a64467d78bca29fe6cc18bdb2baa7848e53ff,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1368,,
664072046,MDExOlB1bGxSZXF1ZXN0NjY0MDcyMDQ2,1370,closed,0,Ensure db.path is a string before trying to insert into internal database,25778,"Fixes #1365
This is the simplest possible fix, with a test that will fail without it. There are a bunch of places where `db.path` is getting converted to and from a `Path` type, so this fix errs on the side of calling `str(db.path)` right before it's inserted.",2021-06-08T01:16:48Z,2021-06-21T15:57:39Z,2021-06-21T15:57:39Z,2021-06-21T15:57:39Z,a6c55afe8c82ead8deb32f90c9324022fd422324,,,0,2de712e439097de1d31f00db312cb87764642a87,f4c5777c7e4ed406313583de09a3bf746552167f,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1370,,
665892313,MDExOlB1bGxSZXF1ZXN0NjY1ODkyMzEz,1373,closed,0,"Update trustme requirement from <0.8,>=0.7 to >=0.7,<0.9",49699333,"Updates the requirements on [trustme](https://github.com/python-trio/trustme) to permit the latest version.
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-06-09T13:09:44Z,2021-06-13T15:38:47Z,2021-06-13T15:38:47Z,2021-06-13T15:38:47Z,83e9c8bc7585dcc62f200e37c2daefcd669ee05e,,,0,51ff366eba7ce218cb82fc666032ccc83f2195fe,e7975657656ce02717f03703bb8ec17f2fe9b717,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1373,,
668129441,MDExOlB1bGxSZXF1ZXN0NjY4MTI5NDQx,1374,closed,0,Bump black from 21.5b2 to 21.6b0,49699333,"Bumps [black](https://github.com/psf/black) from 21.5b2 to 21.6b0.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.5b2&new-version=21.6b0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-06-11T13:07:39Z,2021-06-13T15:33:23Z,2021-06-13T15:33:22Z,2021-06-13T15:33:22Z,e7975657656ce02717f03703bb8ec17f2fe9b717,,,0,0ef0dd5874ed39527ab12098a6c3da7ff8115c54,cd7678fde65319d7b6955ce9f4678ba4b9e64b66,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1374,,
672359609,MDExOlB1bGxSZXF1ZXN0NjcyMzU5NjA5,277,closed,0,add -h support closes #276,601708,This appears to be the [canonical solution](https://click.palletsprojects.com/en/7.x/documentation/#help-parameter-customization).,2021-06-17T08:08:26Z,2021-06-18T14:56:59Z,2021-06-18T14:56:59Z,2021-06-18T14:56:59Z,aa652b6afe43d2b40fabc7a513c3e68866e030a5,,,0,abbd324a2178f09b19966ec36ab2f584d1824c59,a19ce1a4d0048d389411cfe11a5dbe4c503720e1,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/277,,
672620180,MDExOlB1bGxSZXF1ZXN0NjcyNjIwMTgw,1378,closed,0,"Update pytest-xdist requirement from <2.3,>=2.2.1 to >=2.2.1,<2.4",49699333,"Updates the requirements on [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) to permit the latest version.
Changelog
[#654](https://github.com/pytest-dev/pytest-xdist/issues/654) <https://github.com/pytest-dev/pytest-xdist/issues/654>_: Python 3.5 is no longer supported.
Features
[#646](https://github.com/pytest-dev/pytest-xdist/issues/646) <https://github.com/pytest-dev/pytest-xdist/issues/646>_: Add --numprocesses=logical flag, which automatically uses the number of logical CPUs available, instead of physical CPUs with auto.
This is very useful for test suites which are not CPU-bound.
[#650](https://github.com/pytest-dev/pytest-xdist/issues/650) <https://github.com/pytest-dev/pytest-xdist/issues/650>_: Added new pytest_handlecrashitem hook to allow handling and rescheduling crashed items.
Bug Fixes
[#421](https://github.com/pytest-dev/pytest-xdist/issues/421) <https://github.com/pytest-dev/pytest-xdist/issues/421>_: Copy the parent process sys.path into local workers, to work around execnet's python -c adding the current directory to sys.path.
[#638](https://github.com/pytest-dev/pytest-xdist/issues/638) <https://github.com/pytest-dev/pytest-xdist/issues/638>_: Fix issue caused by changing the branch name of the pytest repository.
Trivial Changes
[#592](https://github.com/pytest-dev/pytest-xdist/issues/592) <https://github.com/pytest-dev/pytest-xdist/issues/592>_: Replace master with controller where ever possible.
[#643](https://github.com/pytest-dev/pytest-xdist/issues/643) <https://github.com/pytest-dev/pytest-xdist/issues/643>_: Use 'main' to refer to pytest default branch in tox env names.
pytest-xdist 2.2.1 (2021-02-09)
Bug Fixes
[#623](https://github.com/pytest-dev/pytest-xdist/issues/623) <https://github.com/pytest-dev/pytest-xdist/issues/623>_: Gracefully handle the pending deprecation of Node.fspath by using config.rootpath for topdir.
pytest-xdist 2.2.0 (2020-12-14)
Features
... (truncated)
Commits
fe57b39 fixup: add release title underline for 2.3.0
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-06-17T13:11:56Z,2021-06-20T00:17:07Z,2021-06-20T00:17:06Z,2021-06-20T00:17:06Z,5335f360f4d57d70cab3694b08f15729c4ca2fe2,,,0,0c132d13de2d57004a36ece36217b337478ce4f4,83e9c8bc7585dcc62f200e37c2daefcd669ee05e,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1378,,
678459554,MDExOlB1bGxSZXF1ZXN0Njc4NDU5NTU0,1385,closed,0,Fix + improve get_metadata plugin hook docs,2670795,"This fixes documentation inaccuracies and adds a disclaimer about the signature of the `get_metadata` hook.
Addresses the following comments:
- https://github.com/simonw/datasette/issues/1384#issuecomment-869069926
- https://github.com/simonw/datasette/issues/1384#issuecomment-869075368",2021-06-27T05:43:20Z,2021-09-13T18:53:11Z,2021-09-13T18:53:11Z,,d283ef6806aabcd749623ffe4e69011879f7bfad,,,0,8d78c8c22ddfa10c041f7b5dd9118d4c8674729f,67cbf0ae7243431bf13702e6e3ba466b619c4d6f,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1385,,
679035847,MDExOlB1bGxSZXF1ZXN0Njc5MDM1ODQ3,1386,closed,0,"Update asgiref requirement from <3.4.0,>=3.2.10 to >=3.2.10,<3.5.0",49699333,"Updates the requirements on [asgiref](https://github.com/django/asgiref) to permit the latest version.
Changelog
Calling sync_to_async directly from inside itself (which causes a deadlock
when in the default, thread-sensitive mode) now has deadlock detection.
asyncio usage has been updated to use the new versions of get_event_loop,
ensure_future, wait and gather, avoiding deprecation warnings in Python 3.10.
Python 3.6 installs continue to use the old versions; this is only for 3.7+
sync_to_async and async_to_sync now have improved type hints that pass
through the underlying function type correctly.
All Websocket* types are now spelled WebSocket, to match our specs and the
official spelling. The old names will work until release 3.5.0, but will
raise deprecation warnings.
The typing for WebSocketScope and HTTPScope's extensions key has been
fixed.
3.3.4 (2021-04-06)
The async_to_sync type error is now a warning due the high false negative
rate when trying to detect coroutine-returning callables in Python.
3.3.3 (2021-04-06)
The sync conversion functions now correctly detect functools.partial and other
wrappers around async functions on earlier Python releases.
3.3.2 (2021-04-05)
SyncToAsync now takes an optional "executor" argument if you want to supply
your own executor rather than using the built-in one.
async_to_sync and sync_to_async now check their arguments are functions of
the correct type.
Raising CancelledError inside a SyncToAsync function no longer stops a future
call from functioning.
ThreadSensitive now provides context hooks/override options so it can be
made to be sensitive in a unit smaller than threads (e.g. per request)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-06-28T13:13:07Z,2021-07-11T01:36:19Z,2021-07-11T01:36:18Z,2021-07-11T01:36:18Z,f83c84fd51d144036924ae77d99f12b0a69e7e6f,,,0,e974ed19b09500aecb62252fe7001234d4424ff9,ea627baccf980d7d8ebc9e1ffff1fe34d556e56f,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1386,,
687298112,MDExOlB1bGxSZXF1ZXN0Njg3Mjk4MTEy,1392,closed,0,Update deploying.rst,80737,Use same base url for Apache as in the example,2021-07-11T08:43:19Z,2021-07-13T17:42:31Z,2021-07-13T17:42:27Z,2021-07-13T17:42:27Z,4054e96a3914e821d0880a40a7284aaa9db1eaaa,,,0,f57a8ab0905bb85a9334fe4bf87e2cd736c78cbb,f83c84fd51d144036924ae77d99f12b0a69e7e6f,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1392,,
687304242,MDExOlB1bGxSZXF1ZXN0Njg3MzA0MjQy,1393,closed,0,Update deploying.rst,80737,"Example on how to use Unix domain socket option on Apache. Not testet.
(Usually I would have used [`ProxyPassReverse`](https://httpd.apache.org/docs/current/mod/mod_proxy.html#proxypassreverse) in combination with `ProxyPass` , i.e.
```apache
ProxyPass /my-datasette/ http://127.0.0.1:8009/my-datasette/
ProxyPassReverse /my-datasette/ http://127.0.0.1:8009/my-datasette/
```
and
```apache
ProxyPass /my-datasette/ unix:/tmp/datasette.sock|http://localhost/my-datasette/
ProxyPassReverse /my-datasette/ unix:/tmp/datasette.sock|http://localhost/my-datasette/
```
)",2021-07-11T09:32:16Z,2021-07-13T18:32:49Z,2021-07-13T18:32:49Z,2021-07-13T18:32:49Z,d71cac498138ddd86f18607b9043e70286ea884a,,,0,1bbb577e9e10e0225ab885d72defcbf6517cc096,f83c84fd51d144036924ae77d99f12b0a69e7e6f,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1393,,
692596006,MDExOlB1bGxSZXF1ZXN0NjkyNTk2MDA2,1400,closed,0,Bump black from 21.6b0 to 21.7b0,49699333,"Bumps [black](https://github.com/psf/black) from 21.6b0 to 21.7b0.
Release notes
Provide a more useful error when parsing fails during AST safety checks (#2304)
Docker
Add new latest_release tag automation to follow latest black release on docker
images (#2374)
Integrations
The vim plugin now searches upwards from the directory containing the current buffer
instead of the current working directory for pyproject.toml. (#1871)
The vim plugin now reads the correct string normalization option in pyproject.toml
(#1869)
The vim plugin no longer crashes Black when there's boolean values in pyproject.toml
(#1869)
Provide a more useful error when parsing fails during AST safety checks (#2304)
Docker
Add new latest_release tag automation to follow latest black release on docker
images (#2374)
Integrations
The vim plugin now searches upwards from the directory containing the current buffer
instead of the current working directory for pyproject.toml. (#1871)
The vim plugin now reads the correct string normalization option in pyproject.toml
(#1869)
The vim plugin no longer crashes Black when there's boolean values in pyproject.toml
(#1869)
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.6b0&new-version=21.7b0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-07-19T13:13:41Z,2021-08-25T01:29:56Z,2021-08-25T01:29:55Z,2021-08-25T01:29:55Z,a1a33bb5822214be1cebd98cd858b2058d91a4aa,,,0,e95c68592346e8602c2d4c68c8c7fef8bfb939c3,c73af5dd72305f6a01ea94a2c76d52e5e26de38b,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1400,,
712346199,MDExOlB1bGxSZXF1ZXN0NzEyMzQ2MTk5,1433,closed,0,"Update trustme requirement from <0.9,>=0.7 to >=0.7,<0.10",49699333,"Updates the requirements on [trustme](https://github.com/python-trio/trustme) to permit the latest version.
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-08-13T13:10:24Z,2021-08-25T01:29:27Z,2021-08-25T01:29:26Z,2021-08-25T01:29:26Z,5161422b7fa249c6b7d6dc47ec6f483d3fdbd170,,,0,ddba6cc0f74a6cda31e621889f5055fe8687d446,2883098770fc66e50183b2b231edbde20848d4d6,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1433,,
719175593,MDExOlB1bGxSZXF1ZXN0NzE5MTc1NTkz,1447,closed,0,Remove underscore from search mode parameter name,127565,The fulltext search documentation refers to the parameter as `searchmode` but the `metadata.json` example uses `search_mode`. The latter doesn't actually seem to work.,2021-08-25T01:28:04Z,2021-08-25T01:28:58Z,2021-08-25T01:28:58Z,2021-08-25T01:28:58Z,93c3a7ffbfb3378f743ebce87d033cf1ce7689e0,,,0,86f41bf3663e786a83b5aaa7d9a4ec452b04e2c0,92a99d969c01633dba14cceebeda65daaedaec17,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1447,,
719998225,MDExOlB1bGxSZXF1ZXN0NzE5OTk4MjI1,322,closed,0,Add dict type to be mapped as TEXT in sqllite,2496189,"the library deal with Postgres type jsonb as dictionary, add dict type as a TEXT for mapping to sqlite
",2021-08-25T20:54:26Z,2021-11-15T00:27:40Z,2021-11-15T00:27:40Z,2021-11-15T00:27:40Z,271b894af52eb6437ae6cd84eba9867ad8dd43f6,,,0,69619f68c26478fdee479110e084fd22711013a3,77c240df56068341561e95e4a412cbfa24dc5bc7,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/322,,
720506135,MDExOlB1bGxSZXF1ZXN0NzIwNTA2MTM1,1448,closed,0,"Update pluggy requirement from ~=0.13.0 to >=0.13,<1.1",49699333,"Updates the requirements on [pluggy](https://github.com/pytest-dev/pluggy) to permit the latest version.
Changelog
[#116](https://github.com/pytest-dev/pluggy/issues/116) <https://github.com/pytest-dev/pluggy/issues/116>_: Remove deprecated implprefix support.
Decorate hook implementations using an instance of HookimplMarker instead.
The deprecation was announced in release 0.7.0.
[#120](https://github.com/pytest-dev/pluggy/issues/120) <https://github.com/pytest-dev/pluggy/issues/120>_: Remove the deprecated proc argument to call_historic.
Use result_callback instead, which has the same behavior.
The deprecation was announced in release 0.7.0.
[#265](https://github.com/pytest-dev/pluggy/issues/265) <https://github.com/pytest-dev/pluggy/issues/265>_: Remove the _Result.result property. Use _Result.get_result() instead.
Note that unlike result, get_result() raises the exception if the hook raised.
The deprecation was announced in release 0.6.0.
[#267](https://github.com/pytest-dev/pluggy/issues/267) <https://github.com/pytest-dev/pluggy/issues/267>_: Remove official support for Python 3.4.
[#272](https://github.com/pytest-dev/pluggy/issues/272) <https://github.com/pytest-dev/pluggy/issues/272>_: Dropped support for Python 2.
Continue to use pluggy 0.13.x for Python 2 support.
[#308](https://github.com/pytest-dev/pluggy/issues/308) <https://github.com/pytest-dev/pluggy/issues/308>_: Remove official support for Python 3.5.
[#313](https://github.com/pytest-dev/pluggy/issues/313) <https://github.com/pytest-dev/pluggy/issues/313>_: The internal pluggy.callers, pluggy.manager and pluggy.hooks are now explicitly marked private by a _ prefix (e.g. pluggy._callers).
Only API exported by the top-level pluggy module is considered public.
[#59](https://github.com/pytest-dev/pluggy/issues/59) <https://github.com/pytest-dev/pluggy/issues/59>_: Remove legacy __multicall__ recursive hook calling system.
The deprecation was announced in release 0.5.0.
Features
[#282](https://github.com/pytest-dev/pluggy/issues/282) <https://github.com/pytest-dev/pluggy/issues/282>_: When registering a hookimpl which is declared as hookwrapper=True but whose
function is not a generator function, a PluggyValidationError exception is
now raised.
Previously this problem would cause an error only later, when calling the hook.
In the unlikely case that you have a hookwrapper that returns a generator
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-08-26T13:09:52Z,2021-10-13T21:11:01Z,2021-10-13T21:11:00Z,2021-10-13T21:11:00Z,a673a93b57e249f06b2d0265ce33f458258feeb0,,,0,a2117476a99fc4492646fa0702ba0eb6c78b402e,a1a33bb5822214be1cebd98cd858b2058d91a4aa,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1448,,
722480542,MDExOlB1bGxSZXF1ZXN0NzIyNDgwNTQy,1453,closed,0,Bump black from 21.7b0 to 21.8b0,49699333,"Bumps [black](https://github.com/psf/black) from 21.7b0 to 21.8b0.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.7b0&new-version=21.8b0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-08-30T13:13:39Z,2021-09-14T13:10:40Z,2021-09-14T13:10:38Z,,41e89206c9421f58bbc49b9a3f43439c351595a9,,,0,4f492a79aec631904e3302857a0ab5ea10cbf1af,67cbf0ae7243431bf13702e6e3ba466b619c4d6f,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1453,,
724317650,MDExOlB1bGxSZXF1ZXN0NzI0MzE3NjUw,59,closed,0,"Fix for since_id bug, closes #58",42904,Fixes remaining instances of this bug,2021-09-01T09:49:09Z,2021-09-21T17:37:40Z,2021-09-21T17:37:40Z,2021-09-21T17:37:40Z,91aa5f578e871a7976ca0a861862f9b9dd162464,,,0,27369e4d1c9702de34ebc125f92ef3fc9d74abed,74726190d4031bfa36db93e189555e273b35e283,CONTRIBUTOR,206156866,https://github.com/dogsheep/twitter-to-sqlite/pull/59,,
727012996,MDExOlB1bGxSZXF1ZXN0NzI3MDEyOTk2,324,closed,0,Use python-dateutil package instead of dateutils,191622,"While working on updating `sqlite-utils` for NixOS/Nixpkgs, I came a cross the following:
In 5ec6686153e29ae10d4921a1ad4c841f192f20e2, a new dependency was added on `dateutils` (https://pypi.org/project/dateutils/).
I believe this is unintentional, and instead `python-dateutil` (https://pypi.org/project/python-dateutil/) was intended.
My reasoning is:
- `python-dateutil` is imported here in [recipes.py](https://github.com/simonw/sqlite-utils/blob/5ec6686153e29ae10d4921a1ad4c841f192f20e2/sqlite_utils/recipes.py#L1)
- The `mypy` `type-python-dateutil` dependency in [setup.py](https://github.com/simonw/sqlite-utils/blob/5ec6686153e29ae10d4921a1ad4c841f192f20e2/setup.py#L36)
- `python-dateutil` is a dependency of `dateutils` as seen in the output in [docs/tutorial.ipynb](https://github.com/simonw/sqlite-utils/blob/77c240df56068341561e95e4a412cbfa24dc5bc7/docs/tutorial.ipynb#L43)
Seems like the trailing ""s"" seems to be the source of confusion 😅
I've swapped the dependencies out, hope this helps.",2021-09-03T18:31:19Z,2021-11-14T23:25:40Z,2021-11-14T23:25:40Z,2021-11-14T23:25:40Z,bc4c42d68879c710c851dba3c98deda96ca6caa8,,,0,275ac3b282947fa5df5d18de835d5d958a778e72,77c240df56068341561e95e4a412cbfa24dc5bc7,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/324,,
727265025,MDExOlB1bGxSZXF1ZXN0NzI3MjY1MDI1,1455,closed,0,Add scientists to target groups,198537,"Not sure if you want them mentioned explicitly (it's already a long list), but following up on https://twitter.com/simonw/status/1434176989565382656",2021-09-04T16:28:58Z,2021-09-04T16:32:21Z,2021-09-04T16:31:38Z,2021-09-04T16:31:38Z,772f9a07ce363869e0aaa7600617454dc00e6966,,,0,afba5f9201e395bce43dcac13da4a2041872316e,67cbf0ae7243431bf13702e6e3ba466b619c4d6f,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1455,,
727436404,MDExOlB1bGxSZXF1ZXN0NzI3NDM2NDA0,1458,closed,0,Rework the `--static` documentation a bit,51016,"Per https://github.com/simonw/datasette/issues/1457, I was confused by the current docs and took a few minutes to sort out what the right combination of locations was.
This is a PR that differentiates the docs to split out `/static/` in URL from `--static` option and `./static/` path.
Not wedded to the details in any way, happy to change to suit.
Fixes #1457.",2021-09-05T17:08:48Z,2021-10-15T13:24:29Z,2021-10-14T18:39:55Z,2021-10-14T18:39:55Z,0fdbf004843850f200e077a3c87427fe16c18b85,,,0,e00c3a274d073c09707f4b6edd2ed652efe03918,d57ab156b35ec642549fb69d08279850065027d2,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1458,,
729632643,MDExOlB1bGxSZXF1ZXN0NzI5NjMyNjQz,1463,closed,0,"Update beautifulsoup4 requirement from <4.10.0,>=4.8.1 to >=4.8.1,<4.11.0",49699333,"Updates the requirements on [beautifulsoup4](http://www.crummy.com/software/BeautifulSoup/bs4/) to permit the latest version.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-09-08T13:09:38Z,2021-10-13T22:35:37Z,2021-10-13T22:35:36Z,2021-10-13T22:35:36Z,2a8c6690399ee832ee62aafdede1794f5945d911,,,0,481212cdfc5fa372423e5e67047a3febaa8941b6,e1012e7098056734d9c90f081493991009253390,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1463,,
729704537,MDExOlB1bGxSZXF1ZXN0NzI5NzA0NTM3,1465,open,0,add support for -o --get /path,51016,"Fixes https://github.com/simonw/datasette/issues/1459
Adds support for `--open --get /path` to be used in combination.
If `--open` is provided alone, datasette will open a web page to a default URL.
If `--get ` is provided alone, datasette will output the result of doing a GET to that URL and then exit.
If `--open --get ` are provided together, datasette will open a web page to that URL.
TODO items:
- [ ] update documentation
- [ ] print out error message when `--root --open --get ` is used
- [ ] adjust code to require that `` start with a `/` when `-o --get ` is used
- [ ] add test(s)
note, '@CTB' is used in this PR to flag code that needs revisiting.",2021-09-08T14:30:42Z,2021-09-08T14:31:45Z,,,064e9511923fc4e50566bf9430b4a5b26f169357,,,1,9b66a7d9ba55bad8a3b409ede8855f4b4fff1f88,d57ab156b35ec642549fb69d08279850065027d2,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1465,,
733665129,PR_kwDOBm6k_c4rutdp,1471,closed,0,Bump black from 21.7b0 to 21.9b0,49699333,"Bumps [black](https://github.com/psf/black) from 21.7b0 to 21.9b0.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.7b0&new-version=21.9b0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-09-14T13:10:35Z,2021-10-13T21:47:42Z,2021-10-13T21:47:42Z,2021-10-13T21:47:42Z,e1012e7098056734d9c90f081493991009253390,,,0,847238abf194f195a4fca896cd98f6ff332b1c18,a673a93b57e249f06b2d0265ce33f458258feeb0,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1471,,
737420528,PR_kwDOBm6k_c4r9CTw,1474,closed,0,Update full_text_search.rst,72577720,"Change ""above"" to ""below"" to correct correspondence of reference to example.",2021-09-20T09:59:45Z,2021-10-13T21:10:23Z,2021-10-13T21:10:23Z,2021-10-13T21:10:23Z,31352914c427162f785d2610222a54a426d5215f,,,0,cbccacfd3f501e3f4bae6cc42dcbbdd9635ae509,b28b6cd2fe97f7e193a235877abeec2c8eb0a821,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1474,,
738848851,PR_kwDOBm6k_c4sCfBT,1476,closed,0,"Update pytest-xdist requirement from <2.4,>=2.2.1 to >=2.2.1,<2.5",49699333,"Updates the requirements on [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) to permit the latest version.
Changelog
[#696](https://github.com/pytest-dev/pytest-xdist/issues/696) <https://github.com/pytest-dev/pytest-xdist/issues/696>_: On Linux, the process title now changes to indicate the current worker state (running/idle).
Depends on the setproctitle <https://pypi.org/project/setproctitle/>__ package, which can be installed with pip install pytest-xdist[setproctitle].
[#704](https://github.com/pytest-dev/pytest-xdist/issues/704) <https://github.com/pytest-dev/pytest-xdist/issues/704>_: Add support for Python 3.10.
pytest-xdist 2.3.0 (2021-06-16)
Deprecations and Removals
[#654](https://github.com/pytest-dev/pytest-xdist/issues/654) <https://github.com/pytest-dev/pytest-xdist/issues/654>_: Python 3.5 is no longer supported.
Features
[#646](https://github.com/pytest-dev/pytest-xdist/issues/646) <https://github.com/pytest-dev/pytest-xdist/issues/646>_: Add --numprocesses=logical flag, which automatically uses the number of logical CPUs available, instead of physical CPUs with auto.
This is very useful for test suites which are not CPU-bound.
[#650](https://github.com/pytest-dev/pytest-xdist/issues/650) <https://github.com/pytest-dev/pytest-xdist/issues/650>_: Added new pytest_handlecrashitem hook to allow handling and rescheduling crashed items.
Bug Fixes
[#421](https://github.com/pytest-dev/pytest-xdist/issues/421) <https://github.com/pytest-dev/pytest-xdist/issues/421>_: Copy the parent process sys.path into local workers, to work around execnet's python -c adding the current directory to sys.path.
[#638](https://github.com/pytest-dev/pytest-xdist/issues/638) <https://github.com/pytest-dev/pytest-xdist/issues/638>_: Fix issue caused by changing the branch name of the pytest repository.
Trivial Changes
[#592](https://github.com/pytest-dev/pytest-xdist/issues/592) <https://github.com/pytest-dev/pytest-xdist/issues/592>_: Replace master with controller where ever possible.
[#643](https://github.com/pytest-dev/pytest-xdist/issues/643) <https://github.com/pytest-dev/pytest-xdist/issues/643>_: Use 'main' to refer to pytest default branch in tox env names.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-09-21T13:13:01Z,2021-10-13T21:10:03Z,2021-10-13T21:10:03Z,2021-10-13T21:10:03Z,6aab0217f07bff4556cc92885a14279d5b295f84,,,0,2eb01ff0b76bb9fb8fcf6602606eca83dada2fb2,b28b6cd2fe97f7e193a235877abeec2c8eb0a821,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1476,,
755269892,PR_kwDOBm6k_c4tBIEE,1485,closed,0,"Update pytest-timeout requirement from <1.5,>=1.4.2 to >=1.4.2,<2.1",49699333,"Updates the requirements on [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) to permit the latest version.
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-10-11T13:10:51Z,2021-10-13T21:09:23Z,2021-10-13T21:09:23Z,2021-10-13T21:09:23Z,759fd97a54638c1a5e2cac65bac0ac7c07ce2305,,,0,be9aed9f29182a075429ee518002f9c480b5d4e1,0d5cc20aeffa3537cfc9296d01ec24b9c6e23dcf,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1485,,
755729137,PR_kwDOBm6k_c4tC4Lx,1487,closed,0,"Added instructions for installing plugins via pipx, #1486",41546558,Adds missing instructions for installing plugins via pipx,2021-10-12T00:48:30Z,2021-10-13T21:09:11Z,2021-10-13T21:09:10Z,2021-10-13T21:09:10Z,68087440b3448633a62807c1623559619584f2ee,,,0,4909d5814494dcae77a851905bfc392c70f60d60,0d5cc20aeffa3537cfc9296d01ec24b9c6e23dcf,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1487,,
758334037,PR_kwDOBm6k_c4tM0JV,1489,closed,0,"Update pyyaml requirement from ~=5.3 to >=5.3,<7.0",49699333,"Updates the requirements on [pyyaml](https://github.com/yaml/pyyaml) to permit the latest version.
Changelog
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-10-14T13:09:33Z,2021-10-14T18:10:43Z,2021-10-14T18:10:42Z,2021-10-14T18:10:42Z,827fa823d1b919c445f3141174ecb7a82717d99c,,,0,11c335c484e15ecbaf320fe88db797ff108e5f6a,b267b5775436577a91a9f9655143908aecff05da,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1489,,
760452915,PR_kwDOBm6k_c4tU5cz,1494,closed,0,"Update pytest-asyncio requirement from <0.16,>=0.10 to >=0.10,<0.17",49699333,"Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version.
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-10-18T13:14:17Z,2021-10-24T22:22:40Z,2021-10-24T22:22:39Z,2021-10-24T22:22:39Z,03cc697b6b3d0983618c29ee75b45b5e0ac91139,,,0,7a3e3c355695d95b002a2ec6a68b0c27c7089ed6,ff9ccfb0310501a3b4b4ca24d73246a8eb3e7914,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1494,,
764281468,PR_kwDOBm6k_c4tjgJ8,1495,open,0,Allow routes to have extra options,536941,"Right now, datasette routes can only be a 2-tuple of `(regex, view_fn)`.
If it was possible for datasette to handle extra options, like [standard Django does](https://docs.djangoproject.com/en/3.2/topics/http/urls/#passing-extra-options-to-view-functions), it would add flexibility for plugin authors.
For example, if extra options were enabled, then it would be easy to make a single table the home page (#1284). This plugin would accomplish it.
```python
from datasette import hookimpl
from datasette.views.table import TableView
@hookimpl
def register_routes(datasette):
return [
(r""^/$"", TableView.as_view(datasette), {'db_name': 'DB_NAME',
'table': 'TABLE_NAME'})
]
```
",2021-10-22T15:00:45Z,2021-11-19T15:36:27Z,,,44969c5654748fb26ad05ab37245678f245f32e5,,,0,fe7fa14b39846b919dfed44514a7d18d67e01dfd,ff9ccfb0310501a3b4b4ca24d73246a8eb3e7914,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1495,,
770511531,PR_kwDOBm6k_c4t7RKr,1500,closed,0,Bump black from 21.9b0 to 21.10b0,49699333,"Bumps [black](https://github.com/psf/black) from 21.9b0 to 21.10b0.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.9b0&new-version=21.10b0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-11-01T13:11:23Z,2021-11-17T13:14:00Z,2021-11-17T13:13:58Z,,bc0c2637d3dabbbf55a1cb86df620683a2486ae5,,,0,1b7f679b0d732162e8841c63fd4b8b0682627c10,2c31d1cd9cd3b63458ccbe391866499fa3f44978,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1500,,
780684583,PR_kwDOBm6k_c4uiE0n,1508,closed,0,Update docutils requirement from <0.18 to <0.19,49699333,"Updates the requirements on [docutils](http://docutils.sourceforge.net/) to permit the latest version.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-11-15T13:15:47Z,2021-11-30T02:35:19Z,2021-11-30T02:35:19Z,2021-11-30T02:35:19Z,3303514a52b7170f2f1e598cd9c5f82c22f26e6c,,,0,299774b795915870c987c7b2841925a6106d98a2,502c02fa6dde6a8bb840af6c4c8cf858aa1db687,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1508,,
782713972,PR_kwDOBm6k_c4up0R0,1514,closed,0,Bump black from 21.9b0 to 21.11b0,49699333,"Bumps [black](https://github.com/psf/black) from 21.9b0 to 21.11b0.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.9b0&new-version=21.11b0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-11-17T13:13:55Z,2021-11-18T13:11:17Z,2021-11-18T13:11:15Z,,348147b356cdd38cfdce412675a1d0865b93b3b1,,,0,b02c35a00e2036ded2944890b04485213df4c8f4,0156c6b5e52d541e93f0d68e9245f20ae83bc933,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1514,,
783729324,PR_kwDOBm6k_c4utsKs,1516,closed,0,Bump black from 21.9b0 to 21.11b1,49699333,"Bumps [black](https://github.com/psf/black) from 21.9b0 to 21.11b1.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.9b0&new-version=21.11b1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-11-18T13:11:12Z,2021-11-30T02:35:29Z,2021-11-30T02:35:29Z,2021-11-30T02:35:29Z,cc4c70b3670ce2a85bb883b8d5626574590efe14,,,0,a82c620b7a463a5dd4d585140ee955141ab96ca3,0156c6b5e52d541e93f0d68e9245f20ae83bc933,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1516,,
787940394,PR_kwDOBm6k_c4u9wQq,1529,closed,0,"Update janus requirement from <0.7,>=0.6.2 to >=0.6.2,<0.8",49699333,"Updates the requirements on [janus](https://github.com/aio-libs/janus) to permit the latest version.
Changelog
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-11-24T13:12:42Z,2021-11-30T02:37:13Z,2021-11-30T02:37:13Z,2021-11-30T02:37:13Z,83eb29deced2430f40c3374ff9085d65d86d8281,,,0,495b726e9d715902914547c147d8e7e350f53694,1beb7d939999da79bb77c4d3c777657c8a16bcd9,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1529,,
790665890,PR_kwDOBm6k_c4vIJqi,1537,closed,0,"Update aiofiles requirement from <0.8,>=0.4 to >=0.4,<0.9",49699333,"Updates the requirements on [aiofiles](https://github.com/Tinche/aiofiles) to permit the latest version.
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-11-29T13:13:52Z,2021-11-30T02:29:55Z,2021-11-30T02:29:54Z,2021-11-30T02:29:54Z,1beb7d939999da79bb77c4d3c777657c8a16bcd9,,,0,fcfaec1793ed4b1f5d0f9a43f392f598a41f4ad2,48f11998b73350057b74fe6ab464d4ac3071637c,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1537,,
795869144,PR_kwDOBm6k_c4vb__Y,1543,closed,0,Bump black from 21.11b1 to 21.12b0,49699333,"Bumps [black](https://github.com/psf/black) from 21.11b1 to 21.12b0.
Release notes
Fix determination of f-string expression spans (#2654)
Fix bad formatting of error messages about EOF in multi-line statements (#2343)
Functions and classes in blocks now have more consistent surrounding spacing (#2472)
Jupyter Notebook support
Cell magics are now only processed if they are known Python cell magics. Earlier, all cell magics were tokenized, leading to possible indentation errors e.g. with %%writefile. (#2630)
Fix assignment to environment variables in Jupyter Notebooks (#2642)
Python 3.10 support
Point users to using --target-version py310 if we detect 3.10-only syntax (#2668)
Fix match statements with open sequence subjects, like match a, b: or match a, *b: (#2639) (#2659)
Fix match/case statements that contain match/case soft keywords multiple times, like match re.match() (#2661)
Fix determination of f-string expression spans (#2654)
Fix bad formatting of error messages about EOF in multi-line statements (#2343)
Functions and classes in blocks now have more consistent surrounding spacing (#2472)
Jupyter Notebook support
Cell magics are now only processed if they are known Python cell magics. Earlier, all
cell magics were tokenized, leading to possible indentation errors e.g. with
%%writefile. (#2630)
Fix assignment to environment variables in Jupyter Notebooks (#2642)
Python 3.10 support
Point users to using --target-version py310 if we detect 3.10-only syntax (#2668)
Fix match statements with open sequence subjects, like match a, b: or
match a, *b: (#2639) (#2659)
Fix match/case statements that contain match/case soft keywords multiple
times, like match re.match() (#2661)
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.11b1&new-version=21.12b0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-12-06T13:11:16Z,2021-12-13T23:22:29Z,2021-12-13T23:22:29Z,2021-12-13T23:22:29Z,f5538e7161cce92a4dfaa7c5b71fcb6755d96c05,,,0,353a85199595c687946460bfc6f059c17f68d3b8,7c02be2ee94cc64b120cc58b7a72cd387031f287,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1543,,
799906901,PR_kwDOBm6k_c4vrZxV,1548,closed,0,"Update pytest-xdist requirement from <2.5,>=2.2.1 to >=2.2.1,<2.6",49699333,"Updates the requirements on [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) to permit the latest version.
Changelog
[#722](https://github.com/pytest-dev/pytest-xdist/issues/722) <https://github.com/pytest-dev/pytest-xdist/issues/722>_: Full compatibility with pytest 7 - no deprecation warnings or use of legacy features.
[#733](https://github.com/pytest-dev/pytest-xdist/issues/733) <https://github.com/pytest-dev/pytest-xdist/issues/733>_: New --dist=loadgroup option, which ensures all tests marked with @pytest.mark.xdist_group run in the same session/worker. Other tests run distributed as in --dist=load.
Trivial Changes
[#708](https://github.com/pytest-dev/pytest-xdist/issues/708) <https://github.com/pytest-dev/pytest-xdist/issues/708>_: Use @pytest.hookspec decorator to declare hook options in newhooks.py to avoid warnings in pytest 7.0.
[#719](https://github.com/pytest-dev/pytest-xdist/issues/719) <https://github.com/pytest-dev/pytest-xdist/issues/719>_: Use up-to-date setup.cfg/pyproject.toml packaging setup.
[#721](https://github.com/pytest-dev/pytest-xdist/issues/721) <https://github.com/pytest-dev/pytest-xdist/issues/721>_: Started using type annotations and mypy checking internally. The types are incomplete and not published.
pytest-xdist 2.4.0 (2021-09-20)
Features
[#696](https://github.com/pytest-dev/pytest-xdist/issues/696) <https://github.com/pytest-dev/pytest-xdist/issues/696>_: On Linux, the process title now changes to indicate the current worker state (running/idle).
Depends on the setproctitle <https://pypi.org/project/setproctitle/>__ package, which can be installed with pip install pytest-xdist[setproctitle].
[#704](https://github.com/pytest-dev/pytest-xdist/issues/704) <https://github.com/pytest-dev/pytest-xdist/issues/704>_: Add support for Python 3.10.
pytest-xdist 2.3.0 (2021-06-16)
Deprecations and Removals
[#654](https://github.com/pytest-dev/pytest-xdist/issues/654) <https://github.com/pytest-dev/pytest-xdist/issues/654>_: Python 3.5 is no longer supported.
Features
[#646](https://github.com/pytest-dev/pytest-xdist/issues/646) <https://github.com/pytest-dev/pytest-xdist/issues/646>_: Add --numprocesses=logical flag, which automatically uses the number of logical CPUs available, instead of physical CPUs with auto.
... (truncated)
Commits
13f3934 Remove unnecessary skip from test_logfinish_hook as we require pytest>=6.2
c76d562 Skip test_warning_captured_deprecated_in_pytest_6 in pytest>=7.1
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-12-10T13:12:06Z,2021-12-13T23:22:22Z,2021-12-13T23:22:21Z,2021-12-13T23:22:21Z,8b411a6b70e93e044820d613a28607ba5d6fe416,,,0,68383f5c8e42a96537ae13ea6ede5cf6f0ed4d83,737115ea14cd51ffb55dea886e6a684c148db2c9,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1548,,
805356220,PR_kwDOBm6k_c4wAMK8,1562,closed,0,"Update janus requirement from <0.8,>=0.6.2 to >=0.6.2,<1.1",49699333,"Updates the requirements on [janus](https://github.com/aio-libs/janus) to permit the latest version.
Release notes
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2021-12-17T13:11:10Z,2021-12-17T23:08:29Z,2021-12-17T23:08:28Z,2021-12-17T23:08:28Z,35cba9e85a574cebf2986b64107fa84d02bd86ad,,,0,2f008e88820d940facf6219c224def7729c81df1,0663d5525cc41e9260ac7d1f6386d3a6eb5ad2a9,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1562,,
811088967,PR_kwDOBm6k_c4wWDxH,1582,closed,0,don't set far expiry if hash is '000',536941,"This will close #1581.
I couldn't find any unit tests related to the testing hashed urls, and I know that you want to break that code out of the core application (#1561), so I'm not quite sure what you would like me to for testing.",2021-12-28T18:16:13Z,2022-03-24T04:07:58Z,2022-03-24T04:07:58Z,,e7249b52558b4ddcd92e68a13bd02fb54a2b92f8,,,0,216f3b32b88d85b33e45937ed89ac919d82c23b4,8c401ee0f054de2f568c3a8302c9223555146407,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1582,,
817942693,PR_kwDOBm6k_c4wwNCl,1589,closed,0,Typo in docs about default redirect status code,3556,,2022-01-10T19:14:36Z,2022-03-06T02:27:49Z,2022-03-06T01:58:32Z,2022-03-06T01:58:32Z,0499f174c063283aa9b589d475a32077aaf7adc5,,,0,d95bd658748172d88b04330950ef8f8d18b726c7,8c401ee0f054de2f568c3a8302c9223555146407,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1589,,
820898460,PR_kwDOBm6k_c4w7eqc,1593,closed,0,"Update pytest-asyncio requirement from <0.17,>=0.10 to >=0.10,<0.18",49699333,"Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version.
Release notes
title: 'pytest-asyncio: pytest support for asyncio'
pytest-asyncio is an Apache2 licensed library, written in Python, for
testing asyncio code with pytest.
asyncio code is usually written in the form of coroutines, which makes
it slightly more difficult to test using normal testing tools.
pytest-asyncio provides useful fixtures and markers to make testing
easier.
@pytest.mark.asyncio
async def test_some_asyncio_code():
res = await library.do_something()
assert b"expected result" == res
pytest-asyncio has been strongly influenced by
pytest-tornado.
Features
fixtures for creating and injecting versions of the asyncio event
loop
fixtures for injecting unused tcp/udp ports
pytest markers for treating tests as asyncio coroutines
easy testing with non-default event loops
support for [async def]{.title-ref} fixtures and async generator
fixtures
support auto mode to handle all async fixtures and tests
automatically by asyncio; provide strict mode if a test suite
should work with different async frameworks simultaneously, e.g.
asyncio and trio.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2022-01-13T13:11:50Z,2022-02-07T13:13:24Z,2022-02-07T13:13:23Z,,750b3fa430a30ce5e44f146ffaa390937090db80,,,0,df73ebb0c9a6e1d77ec08399608eb1422d43a779,8c401ee0f054de2f568c3a8302c9223555146407,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1593,,
821992886,PR_kwDOCGYnMM4w_p22,385,closed,0,Add new spatialite helper methods,25778,"Refs #79
This PR adds three new Spatialite-related methods to Database and Table:
- `Database.init_spatialite` loads the Spatialite extension and initializes it
- `Table.add_geometry_column` adds a geometry column
- `Table.create_spatial_index` creates a spatial index
Has tests and documentation. Feedback very welcome.",2022-01-14T03:57:30Z,2022-02-05T00:04:26Z,2022-02-04T05:55:10Z,2022-02-04T05:55:10Z,ee11274fcb1c00f32c95f2ef2924d5349538eb4d,,,0,af86b17acf2fa50048e38b96497636d49db89766,74586d3cb26fa3cc3412721985ecdc1864c2a31d,CONTRIBUTOR,140912432,https://github.com/simonw/sqlite-utils/pull/385,,
826493849,PR_kwDOBm6k_c4xQ0uZ,1602,closed,0,"Update pytest-timeout requirement from <2.1,>=1.4.2 to >=1.4.2,<2.2",49699333,"Updates the requirements on [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) to permit the latest version.
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2022-01-19T13:11:50Z,2022-03-06T01:41:50Z,2022-03-06T01:41:49Z,2022-03-06T01:41:49Z,7b78279b93b6e7a5fce6b53e5a85ca421a801496,,,0,a9c69dce50a4a6b57315e5c7fe73538dc09dbe9a,73f2d25f70d741c6b53f7312674c91f0aec83e17,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1602,,
830389410,PR_kwDOBm6k_c4xfryi,1610,closed,0,"Update asgiref requirement from <3.5.0,>=3.2.10 to >=3.2.10,<3.6.0",49699333,"Updates the requirements on [asgiref](https://github.com/django/asgiref) to permit the latest version.
Changelog
Python 3.6 is no longer supported, and asyncio calls have been changed to
use only the modern versions of the APIs as a result
Several causes of RuntimeErrors in cases where an event loop was assigned
to a thread but not running
Speed improvements in the Local class
3.4.1 (2021-07-01)
Fixed an issue with the deadlock detection where it had false positives
during exception handling.
3.4.0 (2021-06-27)
Calling sync_to_async directly from inside itself (which causes a deadlock
when in the default, thread-sensitive mode) now has deadlock detection.
asyncio usage has been updated to use the new versions of get_event_loop,
ensure_future, wait and gather, avoiding deprecation warnings in Python 3.10.
Python 3.6 installs continue to use the old versions; this is only for 3.7+
sync_to_async and async_to_sync now have improved type hints that pass
through the underlying function type correctly.
All Websocket* types are now spelled WebSocket, to match our specs and the
official spelling. The old names will work until release 3.5.0, but will
raise deprecation warnings.
The typing for WebSocketScope and HTTPScope's extensions key has been
fixed.
3.3.4 (2021-04-06)
The async_to_sync type error is now a warning due the high false negative
rate when trying to detect coroutine-returning callables in Python.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2022-01-24T13:14:18Z,2022-03-06T01:30:27Z,2022-03-06T01:30:27Z,2022-03-06T01:30:27Z,73f2d25f70d741c6b53f7312674c91f0aec83e17,,,0,84a43561e4f677bcf7337c9fd48d0dcafb3264fc,d194db4204b732af57138e1fb0924ec77354dd58,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1610,,
836124846,PR_kwDOBm6k_c4x1kCu,1616,closed,0,Bump black from 21.12b0 to 22.1.0,49699333,"Bumps [black](https://github.com/psf/black) from 21.12b0 to 22.1.0.
Release notes
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=black&package-manager=pip&previous-version=21.12b0&new-version=22.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2022-01-31T13:13:46Z,2022-02-02T22:23:52Z,2022-02-02T22:23:51Z,2022-02-02T22:23:51Z,b5e6b1a9e1332fca3effe45d55dd06ee4249f163,,,0,4ebe94b3818feb179b2dc81e6c441020ba415356,2aa686c6554bf6b8230eb5b3019574df6cc99225,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1616,,
837498489,PR_kwDOBm6k_c4x6zZ5,1617,closed,0,"Ensure template_path always uses ""/"" to match jinja",3526913,"This PR shoudl fix #1545
The existing code substituted / for \, assuming this was the right behaviour for windows. But on Windows, Jinja still uses / for the template list - See https://github.com/pallets/jinja/blob/896a62135bcc151f2997e028c5125bec2cb2431f/src/jinja2/loaders.py#L225",2022-02-01T17:20:30Z,2022-02-03T01:58:35Z,2022-02-03T01:58:35Z,2022-02-03T01:58:35Z,1af1041f91a9b91b321078d354132d1df5204660,,,0,af293c960e67b14ebd8ec7517b698803606fae96,2aa686c6554bf6b8230eb5b3019574df6cc99225,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1617,,
840249513,PR_kwDOBm6k_c4yFTCp,1629,closed,0,"Update pytest requirement from <6.3.0,>=5.2.2 to >=5.2.2,<7.1.0",49699333,"Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version.
Release notes
(Please see the full set of changes for this release also in the 7.0.0rc1 notes below)
Deprecations
#9488: If custom subclasses of nodes like pytest.Item{.interpreted-text role="class"} override the
__init__ method, they should take **kwargs. See
uncooperative-constructors-deprecated{.interpreted-text role="ref"} for details.
Note that a deprection warning is only emitted when there is a conflict in the
arguments pytest expected to pass. This deprecation was already part of pytest
7.0.0rc1 but wasn't documented.
Bug Fixes
#9355: Fixed error message prints function decorators when using assert in Python 3.8 and above.
#9396: Ensure pytest.Config.inifile{.interpreted-text role="attr"} is available during the pytest_cmdline_main <_pytest.hookspec.pytest_cmdline_main>{.interpreted-text role="func"} hook (regression during 7.0.0rc1).
Improved Documentation
#9404: Added extra documentation on alternatives to common misuses of [pytest.warns(None)]{.title-ref} ahead of its deprecation.
#9505: Clarify where the configuration files are located. To avoid confusions documentation mentions
that configuration file is located in the root of the repository.
Trivial/Internal Changes
#9521: Add test coverage to assertion rewrite path.
pytest 7.0.0rc1 (2021-12-06)
Breaking Changes
#7259: The Node.reportinfo() <non-python tests>{.interpreted-text role="ref"} function first return value type has been expanded from [py.path.local | str]{.title-ref} to [os.PathLike[str] | str]{.title-ref}.
Most plugins which refer to [reportinfo()]{.title-ref} only define it as part of a custom pytest.Item{.interpreted-text role="class"} implementation.
Since [py.path.local]{.title-ref} is a [os.PathLike[str]]{.title-ref}, these plugins are unaffacted.
Plugins and users which call [reportinfo()]{.title-ref}, use the first return value and interact with it as a [py.path.local]{.title-ref}, would need to adjust by calling [py.path.local(fspath)]{.title-ref}.
Although preferably, avoid the legacy [py.path.local]{.title-ref} and use [pathlib.Path]{.title-ref}, or use [item.location]{.title-ref} or [item.path]{.title-ref}, instead.
Note: pytest was not able to provide a deprecation period for this change.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2022-02-04T13:14:10Z,2022-03-06T01:30:06Z,2022-03-06T01:30:06Z,2022-03-06T01:30:06Z,b21839dd1a005f6269c4e9a9f763195fe7aa9c86,,,0,1c0d84878638a61bfbb7e146567f17fd8a9b21e9,1af1041f91a9b91b321078d354132d1df5204660,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1629,,
841715204,PR_kwDOBm6k_c4yK44E,1631,closed,0,"Update pytest-asyncio requirement from <0.17,>=0.10 to >=0.10,<0.19",49699333,"Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version.
Release notes
title: 'pytest-asyncio: pytest support for asyncio'
pytest-asyncio is an Apache2 licensed library, written in Python, for
testing asyncio code with pytest.
asyncio code is usually written in the form of coroutines, which makes
it slightly more difficult to test using normal testing tools.
pytest-asyncio provides useful fixtures and markers to make testing
easier.
@pytest.mark.asyncio
async def test_some_asyncio_code():
res = await library.do_something()
assert b"expected result" == res
pytest-asyncio has been strongly influenced by
pytest-tornado.
Features
fixtures for creating and injecting versions of the asyncio event
loop
fixtures for injecting unused tcp/udp ports
pytest markers for treating tests as asyncio coroutines
easy testing with non-default event loops
support for [async def]{.title-ref} fixtures and async generator
fixtures
support auto mode to handle all async fixtures and tests
automatically by asyncio; provide strict mode if a test suite
should work with different async frameworks simultaneously, e.g.
asyncio and trio.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
",2022-02-07T13:13:19Z,2022-03-06T01:29:54Z,2022-03-06T01:29:53Z,2022-03-06T01:29:53Z,a22ec96c3ac555337eb49121450723a273fb52d1,,,0,62eed844d3514957e7578e6981c5cb49227e97f8,03305ea183b1534bc4cef3a721fe5f3700273b84,CONTRIBUTOR,107914493,https://github.com/simonw/datasette/pull/1631,,