github
id | node_id | number | title | user | state | locked | assignee | milestone | comments | created_at | updated_at | closed_at | author_association | pull_request | body | repo | type | active_lock_reason | performed_via_github_app | reactions | draft | state_reason |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1377811868 | I_kwDOBm6k_c5SH72c | 1813 | missing next and next_url in JSON responses from an instance deployed on Fly | 883348 | closed | 0 | 1 | 2022-09-19T11:32:34Z | 2022-09-19T11:34:45Z | 2022-09-19T11:34:45Z | CONTRIBUTOR | 👋 thank you for an incredibly useful project! I have noticed that my deployed instance on Fly does not include the `next` and `next_url` keys even for a truncated response : <img width="815" alt="Screenshot 2022-09-19 at 13 25 07" src="https://user-images.githubusercontent.com/883348/191007558-c0e9df03-7ee3-4e03-bd1c-26c608c3bdf9.png"> This is publically accessible here: `https://collectif-objets-datasette.fly.dev/collectif-objets.json?sql=select+*+from+mairies` However when I run the dataset server locally with the same data I get these next keys for the exact same query: <img width="695" alt="Screenshot 2022-09-19 at 13 24 05" src="https://user-images.githubusercontent.com/883348/191007464-c3905896-cd6f-46c0-8d6a-0f1c0b4471ca.png"> I am wondering if I've missed some config or something specific to deployments on Fly.io? I am running datasette v0.62, without any specific config : - locally `poetry run datasette data/collectif-objets.sqlite` - for the deploy : `poetry run datasette publish fly data/collectif-objets.sqlite` as visible in [the Makefile](https://github.com/adipasquale/collectif-objets-datasette/blob/main/Makefile). _The very limited codebase is public but the sqlite db is not versioned yet because it is too large._ | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1813/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
868191959 | MDExOlB1bGxSZXF1ZXN0NjIzNzU1NzIz | 258 | Fixing insert from JSON containing strings with non-ascii characters … | 6586811 | closed | 0 | 1 | 2021-04-26T20:50:00Z | 2021-05-19T02:47:44Z | 2021-05-19T02:47:44Z | CONTRIBUTOR | simonw/sqlite-utils/pulls/258 | …are escaped aps unicode for lists, tuples, dicts Fix of #257 | 140912432 | pull | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/258/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
386459810 | MDExOlB1bGxSZXF1ZXN0MjM1MTk0Mjg2 | 390 | tiny typo in customization docs | 418191 | closed | 0 | 1 | 2018-12-01T13:44:42Z | 2019-12-19T02:30:35Z | 2018-12-16T21:32:56Z | CONTRIBUTOR | simonw/datasette/pulls/390 | was looking to add some custom templates to my use of datasette and saw this small typo. | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/390/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
289375133 | MDExOlB1bGxSZXF1ZXN0MTYzNTIzOTc2 | 180 | make html title more readable in query template | 56477 | closed | 0 | 0 | 2018-01-17T18:56:03Z | 2018-04-03T16:03:38Z | 2018-04-03T15:24:05Z | CONTRIBUTOR | simonw/datasette/pulls/180 | tiny tweak to make this easier to visually parse—I think it matches your style in other templates | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/180/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
541331755 | MDExOlB1bGxSZXF1ZXN0MzU2MDA0MjQy | 653 | allow leading comments in SQL input field | 418191 | closed | 0 | 8 | 2019-12-21T14:19:52Z | 2020-02-05T02:35:41Z | 2020-02-05T02:13:25Z | CONTRIBUTOR | simonw/datasette/pulls/653 | this changes the SQL validation to allow for lines that are commented out my main use case for this is that I like to write a succession of queries when trying to solve a problem. In most native SQL clients there is a key binding that will run just the current highlighted query or the program is smart enough to run just the query that the cursor is in if it's properly delimited with a ';'. Typically my workflow will start with a single simple query and I'll copy/paste it to a new query below when I want to make big changes while debugging. This makes it easy to go back to a working version above when the query doesn't work. Since datasette sends the whole query to the DB I have to comment out the older queries by prefixing each line with `--`. This gets caught by the validators when I use my typical strategy of copy/pasting each successive query below the last one. so this is just a simple fix to allow for a query to be sent to the DB with leading comments. | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/653/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
979612115 | MDExOlB1bGxSZXF1ZXN0NzE5OTk4MjI1 | 322 | Add dict type to be mapped as TEXT in sqllite | 2496189 | closed | 0 | 1 | 2021-08-25T20:54:26Z | 2021-11-15T00:27:40Z | 2021-11-15T00:27:40Z | CONTRIBUTOR | simonw/sqlite-utils/pulls/322 | the library deal with Postgres type jsonb as dictionary, add dict type as a TEXT for mapping to sqlite | 140912432 | pull | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/322/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
563348959 | MDExOlB1bGxSZXF1ZXN0MzczNzc1Nzg4 | 669 | fix db-to-sqlite command in ecosystem doc page | 883348 | closed | 0 | 1 | 2020-02-11T17:05:41Z | 2020-02-22T02:32:18Z | 2020-02-22T02:32:17Z | CONTRIBUTOR | simonw/datasette/pulls/669 | the `--connection` parameter has become positional | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/669/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1079111498 | I_kwDOBm6k_c5AUe9K | 1553 | if csv export is truncated in non streaming mode set informative response header | 536941 | open | 0 | 3 | 2021-12-13T22:50:44Z | 2021-12-16T19:17:28Z | CONTRIBUTOR | streaming mode is currently not enabled for custom queries, so the queries will be truncated to max row limit. it would be great if a response is truncated that an header signalling that was set in the header. i need to write some pagination code for getting full results back for a custom query and it would make the code much better if i could reliably known when there is nothing more to limit/offset | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1553/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1864112887 | PR_kwDOBm6k_c5Yo7bk | 2151 | Test Datasette on multiple SQLite versions | 15178711 | open | 0 | 1 | 2023-08-23T22:42:51Z | 2023-08-23T22:58:13Z | CONTRIBUTOR | simonw/datasette/pulls/2151 | still testing, hope it works! <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--2151.org.readthedocs.build/en/2151/ <!-- readthedocs-preview datasette end --> | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/2151/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
1 | ||||||
1581090327 | I_kwDOCGYnMM5ePYYX | 529 | Microsoft line endings | 7908073 | closed | 0 | 1 | 2023-02-12T02:20:48Z | 2023-06-14T23:12:12Z | 2023-06-14T23:11:47Z | CONTRIBUTOR | sqlite-utils prints `\r\n` but [it should probably](https://devblogs.microsoft.com/commandline/extended-eol-in-notepad/) print `\n` (unless the platform is detected as Windows?) It has tripped me up a few times when piping the output of sqlite-utils to other programs: ``` $ sqlite-utils --no-headers --csv ~/lb/fs/d.db 'select path from media limit 1' | cat -A /mnt/d7/file^M$ $ sqlite-utils --no-headers --csv ~/lb/fs/d.db 'select path from media limit 1' | tr -d '\r' | cat -A /mnt/d7/file$ ``` | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/529/reactions", "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1077102934 | I_kwDOCGYnMM5AM0lW | 353 | Allow passing a file of code to "sqlite-utils convert" | 536941 | closed | 0 | 8 | 2021-12-10T18:06:14Z | 2021-12-11T01:38:29Z | 2021-12-11T01:09:39Z | CONTRIBUTOR | sqlite-utils is so nice, but the ergonomics of the multiline code in kind of tough. It's really hard (maybe impossible) to make the newlines play well with Makefiles. it would be great to write your code fragment in a separate file and direct it into the sqlite-utils either like ```sqlite-utils convert my.db my_table my_column < custom_code.py``` or ```sqlite-utils convert my.db my_table my_column --custom-code=custom_code.py``` Thanks, as ever, for these great tools! | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/353/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1096558279 | I_kwDOCGYnMM5BXCbH | 365 | create-index should run analyze after creating index | 536941 | closed | 0 | 7558727 | 16 | 2022-01-07T18:21:25Z | 2022-01-11T02:43:34Z | 2022-01-11T01:36:48Z | CONTRIBUTOR | sqlite's query planner depends upon analyze to make good use of indices. It would be nice if analyze was run as part of the create-index command. If data is inserted later, things can get out date, but it would still probably be a net win. | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/365/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1595340692 | I_kwDOCGYnMM5fFveU | 530 | add ability to configure "on delete" and "on update" attributes of foreign keys: | 536941 | open | 0 | 2 | 2023-02-22T15:44:14Z | 2023-05-08T20:39:01Z | CONTRIBUTOR | sqlite supports these, and it would be quite nice to be able to add them with sqlite-utils. https://www.sqlite.org/foreignkeys.html#fk_actions | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/530/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1555701851 | PR_kwDOBm6k_c5IdsD7 | 2003 | Show referring tables and rows when the referring foreign key is compound | 536941 | open | 0 | 3 | 2023-01-24T21:31:31Z | 2023-01-25T18:44:42Z | CONTRIBUTOR | simonw/datasette/pulls/2003 | sqlite foreign keys can be compound, but that is not as well supported by datasette as single column foreign keys. in particular, 1. in a table view, there is not a link from the row to the referenced row if the foreign key is compound 2. in a row view, there is no listing of tables and rows that refer to the focal row if those referencing foreign keys are compound. Both of these issues are discussed in #1099. This PR only fixes the second one, because it's not clear what the right UX is for the first issue. ![Screenshot 2023-01-24 at 19-47-40 nlrb bargaining_unit](https://user-images.githubusercontent.com/536941/214454749-d53deead-4151-4329-a5d4-8a7a454de7d3.png) Some things that might not be desirable about this approach. 1. it changes the external API, by changing `column` => `columns` and `other_column` => `other_columns` (see inline comment for more discussion. 2. There are various places where the plural foreign keys have to be checked for length and discarded or transformed to singular. | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/2003/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | ||||||
1309542173 | PR_kwDOCGYnMM47pwAb | 455 | in extract code, check equality with IS instead of = for nulls | 536941 | closed | 0 | 3 | 2022-07-19T13:40:25Z | 2022-08-27T14:45:03Z | 2022-08-27T14:45:03Z | CONTRIBUTOR | simonw/sqlite-utils/pulls/455 | sqlite "IS" is equivalent to SQL "IS NOT DISTINCT FROM" closes #423 | 140912432 | pull | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/455/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1090810196 | I_kwDOBm6k_c5BBHFU | 1583 | consider adding deletion step of cloudbuild artifacts to gcloud publish | 536941 | open | 0 | 1 | 2021-12-30T00:33:23Z | 2021-12-30T00:34:16Z | CONTRIBUTOR | right now, as part of the the publish process images and other artifacts are stored to gcloud's cloud storage before being deployed to cloudrun. after successfully deploying, it would be nice if the the script deleted these artifacts. otherwise, if you have regularly scheduled build process, you can end up paying to store lots of out of date artifacts. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1583/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1901483874 | PR_kwDOBm6k_c5amULw | 2190 | Raise an exception if a "plugins" block exists in metadata.json | 15178711 | closed | 0 | 5 | 2023-09-18T18:08:56Z | 2023-10-12T16:20:51Z | 2023-10-12T16:20:51Z | CONTRIBUTOR | simonw/datasette/pulls/2190 | refs #2183 #2093 From [this comment](https://github.com/simonw/datasette/pull/2183#issuecomment-1714699724) in #2183: If a `"plugins"` block appears in `metadata.json`, it means that a user hasn't migrated over their plugin configuration from `metadata.json` to `datasette.yaml`, which is a breaking change in Datasette 1.0. This PR will ensure that an error is raised whenever that happens. <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--2190.org.readthedocs.build/en/2190/ <!-- readthedocs-preview datasette end --> | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/2190/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1870672704 | PR_kwDOBm6k_c5Y-7Em | 2162 | Add new `--internal internal.db` option, deprecate legacy `_internal` database | 15178711 | closed | 0 | 4 | 2023-08-29T00:05:07Z | 2023-08-29T03:24:23Z | 2023-08-29T03:24:23Z | CONTRIBUTOR | simonw/datasette/pulls/2162 | refs #2157 This PR adds a new `--internal` option to datasette serve. If provided, it is the path to a persistent internal database that Datasette core and Datasette plugins can use to store data, as discussed in the proposal issue. This PR also removes and deprecates the previous in-memory `_internal` database. Those tables now appear in the `internal` database, with `core_` prefixes (ex `tables` in `_internal` is now `core_tables` in `internal`). ## A note on the new `core_` tables However, one important notes about those new `core_` tables: If a `--internal` DB is passed in, that means those `core_` tables will persist across multiple Datasette instances. This wasn't the case before, since `_internal` was always an in-memory database created from scratch. I tried to put those `core_` tables as `TEMP` tables - after all, there's always one 1 `internal` DB connection at a time, so I figured it would work. But, since we use the `Database()` wrapper for the internal DB, it has two separate connections: a default read-only connection and a write connection that is created when a write operation occurs. Which meant the `TEMP` tables would be created by the write connection, but not available in the read-only connection. So I had a brillant idea: Attach an in-memory named database with `cache=shared`, and create those tables there! ```sql ATTACH DATABASE 'file:datasette_internal_core?mode=memory&cache=shared' AS core; ``` We'd run this on both the read-only connection and the write-only connection. That way, those tables would stay in memory, they'd communicate with the `cache=shared` feature, and we'd be good to go. However, I couldn't find an easy way to run a `ATTACH DATABASE` command on the read-only query. Using `Database()` as a wrapper for the internal DB is pretty limiting - it's meant for Datasette "data" databases, where we want multiple readers and possibly 1 write connection at a time. But the internal database doesn't really require that kind of support - I think we… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/2162/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1861812208 | PR_kwDOBm6k_c5YhH-W | 2149 | Start a new `datasette.yaml` configuration file, with settings support | 15178711 | closed | 0 | 2 | 2023-08-22T16:24:16Z | 2023-08-23T01:26:11Z | 2023-08-23T01:26:11Z | CONTRIBUTOR | simonw/datasette/pulls/2149 | refs #2093 #2143 This is the first step to implementing the new `datasette.yaml`/`datasette.json` configuration file. - The old `--config` argument is now back, and is the path to a `datasette.yaml` file. Acts like the `--metadata` flag. - The old `settings.json` behavior has been removed. - The `"settings"` key inside `datasette.yaml` defines the same `--settings` flags - Values passed in `--settings` will over-write values in `datasette.yaml` Docs for the Config file is pretty light, not much to add until we add more config to the file. <!-- readthedocs-preview datasette start --> ---- :books: Documentation preview :books:: https://datasette--2149.org.readthedocs.build/en/2149/ <!-- readthedocs-preview datasette end --> | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/2149/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
681228542 | MDExOlB1bGxSZXF1ZXN0NDY5NjUxNzMy | 48 | Add pull requests | 755825 | closed | 0 | 2 | 2020-08-18T17:58:44Z | 2020-11-29T23:51:09Z | 2020-11-29T23:51:09Z | CONTRIBUTOR | dogsheep/github-to-sqlite/pulls/48 | ref #46 Issues don't have merge information on them, which means that PRs need to be pulled separately. Did my best to mimic the API of issues. | 207052882 | pull | { "url": "https://api.github.com/repos/dogsheep/github-to-sqlite/issues/48/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
766156875 | MDU6SXNzdWU3NjYxNTY4NzU= | 209 | Test failure with sqlite 3.34 in test_cli.py::test_optimize | 191622 | closed | 0 | 1 | 2020-12-14T08:58:18Z | 2021-01-01T23:52:46Z | 2021-01-01T23:52:46Z | CONTRIBUTOR | pytest output: ``` ... ============================== short test summary info =============================== FAILED tests/test_cli.py::test_optimize[tables0] - assert 1662976 < 1662976 FAILED tests/test_cli.py::test_optimize[tables1] - assert 1667072 < 1662976 ===================== 2 failed, 538 passed, 3 skipped in 34.32s ====================== ``` Came across this while packaging `sqlite-utils` for NixOS, but it can be recreated it using the `alpine:edge` docker image as well as follows: ``` docker run --rm -it alpine:edge /bin/sh # apk update && apk add git sqlite python3 gcc python3-dev musl-dev && python3 -m ensurepip # git clone https://github.com/simonw/sqlite-utils.git # cd sqlite-utils/ # pip3 install -e .[test] # pytest ``` This definitely works on sqlite v3.33. | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/209/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1310243385 | I_kwDOCGYnMM5OGLo5 | 456 | feature request: pivot command | 536941 | open | 0 | 5 | 2022-07-20T00:58:08Z | 2022-07-20T17:50:50Z | CONTRIBUTOR | pivoting long-format table to wide-format tables is pretty common and kind of pain. would love to see this feature in sqlite-utils! | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/456/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
546073980 | MDU6SXNzdWU1NDYwNzM5ODA= | 74 | Test failures on openSUSE 15.1: AssertionError: Explicit other_table and other_column | 15092 | open | 0 | 3 | 2020-01-07T04:35:50Z | 2020-01-12T07:21:17Z | CONTRIBUTOR | openSUSE 15.1 is using python 3.6.5 and click-7.0 , however it has test failures while openSUSE Tumbleweed on py37 passes. Most fail on the cli exit code like ```py [ 74s] =================================== FAILURES =================================== [ 74s] _________________________________ test_tables __________________________________ [ 74s] [ 74s] db_path = '/tmp/pytest-of-abuild/pytest-0/test_tables0/test.db' [ 74s] [ 74s] def test_tables(db_path): [ 74s] result = CliRunner().invoke(cli.cli, ["tables", db_path]) [ 74s] > assert '[{"table": "Gosh"},\n {"table": "Gosh2"}]' == result.output.strip() [ 74s] E assert '[{"table": "...e": "Gosh2"}]' == '' [ 74s] E - [{"table": "Gosh"}, [ 74s] E - {"table": "Gosh2"}] [ 74s] [ 74s] tests/test_cli.py:28: AssertionError ``` packaging project at https://build.opensuse.org/package/show/home:jayvdb:py-new/python-sqlite-utils I'll keep digging into this after I have github-to-sqlite working on Tumbleweed, as I'll need openSUSE Leap 15.1 working before I can submit this into the main python repo. | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/74/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
951185411 | MDU6SXNzdWU5NTExODU0MTE= | 1402 | feature request: social meta tags | 536941 | open | 0 | 2 | 2021-07-23T01:57:23Z | 2021-07-26T19:31:41Z | CONTRIBUTOR | it would be very nice if the twitter, slack, and other social media could make rich cards when people post a link to a datasette instance | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1402/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1279863844 | I_kwDOCGYnMM5MSSwk | 449 | Utilities for duplicating tables and creating a table with the results of a query | 1690072 | closed | 0 | 4 | 2022-06-22T09:41:43Z | 2022-07-15T21:46:13Z | 2022-07-15T21:21:36Z | CONTRIBUTOR | is there a duplicate table functionality? Otherwise, I'd be happy to submit a PR. In sqlite3 it would look like: ```python import sqlite3 as sl con = sl.connect('prompt-tune.db') def db_duplicate_table(table_name, table_name_new, con=con): # Duplicates table `table_name` to a new table `table_name_new`. try: cur = con.cursor() cur.execute(f"""CREATE TABLE {table_name_new} AS SELECT * FROM {table_name}""") except Exception as e: print(e) finally: cur.close() db_duplicate_table('orig_table', 'new_table') ``` | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/449/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1400374908 | I_kwDOBm6k_c5TeAZ8 | 1836 | docker image is duplicating db files somehow | 536941 | open | 0 | 13 | 2022-10-06T22:35:54Z | 2022-10-08T16:56:51Z | CONTRIBUTOR | if you look into the docker image created by docker publish, the `datasette inspect` line is duplicating the db files. here's the result of the inspect command: <img width="490" alt="Screen Shot 2022-10-06 at 2 58 08 PM" src="https://user-images.githubusercontent.com/536941/194430909-9303ee1a-9bdd-4212-b54b-de28f43768d4.png"> | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1836/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1334628400 | I_kwDOBm6k_c5PjNAw | 1779 | google cloudrun updated their limits on maxscale based on memory and cpu count | 536941 | closed | 0 | 8303187 | 13 | 2022-08-10T13:27:21Z | 2022-08-14T19:42:59Z | 2022-08-14T17:07:34Z | CONTRIBUTOR | if you don't set an explicit limit on container scaling, then [google defaults to 100](https://cloud.google.com/run/docs/configuring/max-instances#limits) google recently updated the [limits on container scaling](https://cloud.google.com/run/docs/configuring/max-instances#limits), such that if you set up datasette to use more memory or cpu, then you need to set the maxScale argument much smaller than 100. would be nice if `datasette publish` could do this math for you and set the right maxScale. [Log of an failing publish run](https://github.com/labordata/warehouse/runs/7764725972?check_suite_focus=true#step:8:332). ``` ERROR: (gcloud.run.deploy) spec.template.spec.containers[0].resources.limits.cpu: Invalid value specified for cpu. For the specified value, maxScale may not exceed 15. Consider running your workload in a region with greater capacity, decreasing your requested cpu-per-instance, or requesting an increase in quota for this region if you are seeing sustained usage near this limit, see https://cloud.google.com/run/quotas. Your project may gain access to further scaling by adding billing information to your account. Traceback (most recent call last): File "/home/runner/.local/bin/datasette", line 8, in <module> sys.exit(cli()) File "/home/runner/.local/lib/python3.8/site-packages/click/core.py", line 1128, in __call__ return self.main(*args, **kwargs) File "/home/runner/.local/lib/python3.8/site-packages/click/core.py", line 1053, in main rv = self.invoke(ctx) File "/home/runner/.local/lib/python3.8/site-packages/click/core.py", line 1659, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/home/runner/.local/lib/python3.8/site-packages/click/core.py", line 1659, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/home/runner/.local/lib/python3.8/site-packages/click/core.py", line 1395, in invoke return ctx.invoke(self.callback, **ctx.params) File "/home/runner/.local/lib/python3.8/site-packages/… | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1779/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
1089529555 | I_kwDOBm6k_c5A8ObT | 1581 | when hashed urls are turned on, the _memory db has improperly long-lived cache expiry | 536941 | closed | 0 | 1 | 2021-12-28T00:05:48Z | 2022-03-24T04:08:18Z | 2022-03-24T04:08:18Z | CONTRIBUTOR | if hashed_urls are on, then a -000 suffix is added to the `_memory` database, and the cache settings are set just as if it was a normal hashed database. in particular, this header is set: `cache-control: max-age=31536000` this is not appropriate because the `_memory-000` database isn't really hashed based on the contents of the databases (see #1561). Either the cache-control header should be changed, or the _memory db should have a hash suffix that does depend on the contents of the databases. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1581/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
273775212 | MDU6SXNzdWUyNzM3NzUyMTI= | 88 | Add NHS England Hospitals example to wiki | 15543 | closed | 0 | 4 | 2017-11-14T12:29:10Z | 2021-03-22T23:46:36Z | 2017-11-14T22:54:06Z | CONTRIBUTOR | https://nhs-england-hospitals.now.sh and an associated map visualisation: http://run.plnkr.co/preview/cj9zlf1qc0003414y90ajkwpk/ Datasette is wonderful! | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/88/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1405196044 | PR_kwDOCGYnMM5AmYzy | 499 | feat: recreate fts triggers after table transform | 7908073 | open | 0 | 2 | 2022-10-11T20:35:39Z | 2022-10-26T17:54:51Z | CONTRIBUTOR | simonw/sqlite-utils/pulls/499 | https://github.com/simonw/sqlite-utils/pull/498 <!-- readthedocs-preview sqlite-utils start --> ---- :books: Documentation preview :books:: https://sqlite-utils--499.org.readthedocs.build/en/499/ <!-- readthedocs-preview sqlite-utils end --> alternatively, `self.disable_fts()` | 140912432 | pull | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/499/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | ||||||
752966476 | MDU6SXNzdWU3NTI5NjY0NzY= | 1114 | --load-extension=spatialite not working with datasetteproject/datasette docker image | 2182 | closed | 0 | 4 | 2020-11-29T17:35:20Z | 2022-01-20T21:29:42Z | 2020-11-29T17:37:45Z | CONTRIBUTOR | https://github.com/simonw/datasette/commit/6aa5886379dd9017215904fb28567b80018902f9 added the `--load-extension=spatialite` shortcut looking for the extension in these places: https://github.com/simonw/datasette/blob/12877d7a48e2aa28bb5e780f929a218f7265d849/datasette/utils/__init__.py#L56-L60 However, in the datasetteproject/datasette docker image the file is at `/usr/local/lib/mod_spatialite.so`. This results in the example command [here](https://docs.datasette.io/en/stable/installation.html#loading-spatialite) failing: ``` % docker run --rm -p 8001:8001 -v `pwd`:/mnt datasetteproject/datasette datasette -p 8001 -h 0.0.0.0 /mnt/data.db --load-extension=spatialite Error: Could not find SpatiaLite extension ``` But it does work when given an explicit path: ``` % docker run --rm -p 8001:8001 -v `pwd`:/mnt datasetteproject/datasette datasette -p 8001 -h 0.0.0.0 /mnt/data.db --load-extension=/usr/local/lib/mod_spatialite.so INFO: Started server process [1] INFO: Waiting for application startup. INFO: Application startup complete. INFO: Uvicorn running on http://0.0.0.0:8001 (Press CTRL+C to quit) ... ``` Perhaps `SPATIALITE_PATHS` should include `/usr/local/lib/mod_spatialite.so`? | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1114/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
855451460 | MDU6SXNzdWU4NTU0NTE0NjA= | 1297 | Documentation: json1, and introspection endpoints | 192568 | open | 0 | 0 | 2021-04-12T00:38:00Z | 2021-04-12T01:29:33Z | CONTRIBUTOR | https://docs.datasette.io/en/stable/facets.html notes that: > If your SQLite installation provides the json1 extension (you can check using /-/versions) Datasette will automatically detect columns that contain JSON arrays... When I check -/versions I see two sections relevant to json1: ``` "extensions": { "json1": null }, "compile_options": [ ... "ENABLE_JSON1", ``` The ENABLE_JSON1 makes me think json1 is likely available. But the `"json1": null` made me think it wasn't available (because of the `null`). It would help if the documentation provided clarity about how to know if json1 is installed. It would also be helpful if the `/-/versions` information signalled somehow that that is to be appended to the hostname or domain name (or whatever you want to call it, or simply show it, using `example.com/-/versions` instead of `/-/versions`. Likewise on that last point, for https://docs.datasette.io/en/stable/introspection.html#introspection , at least at some point on that page detailing where those introspection endpoints go. (Sometimes documentation can be so abbreviated that it's hard for new users to figure out what's going on.) | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1297/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1822813627 | I_kwDOBm6k_c5spe27 | 2108 | some (many?) SQL syntax errors are not throwing errors with a .csv endpoint | 536941 | open | 0 | 0 | 2023-07-26T16:57:45Z | 2023-07-26T16:58:07Z | CONTRIBUTOR | here's a CTE query that should always fail with a syntax error: ```sql with foo as (nonsense) select * from foo; ``` when we make this query against the default endpoint, we do indeed get a 400 status code the problem is returned to the user: https://global-power-plants.datasettes.com/global-power-plants?sql=with+foo+as+%28nonsense%29+select+*+from+foo%3B but, if we use the csv endpoint, we get a 200 status code and no indication of a problem: https://global-power-plants.datasettes.com/global-power-plants.csv?sql=with+foo+as+%28nonsense%29+select+*+from+foo%3B same with this bad sql ```sql select a, from foo; ``` https://global-power-plants.datasettes.com/global-power-plants?sql=select%0D%0A++a%2C%0D%0Afrom%0D%0A++foo%3B vs https://global-power-plants.datasettes.com/global-power-plants.csv?sql=select%0D%0A++a%2C%0D%0Afrom%0D%0A++foo%3B but, datasette catches this bad sql at both endpoints: ```sql slect a from foo; ``` https://global-power-plants.datasettes.com/global-power-plants?sql=slect%0D%0A++a%0D%0Afrom%0D%0A++foo%3B https://global-power-plants.datasettes.com/global-power-plants.csv?sql=slect%0D%0A++a%0D%0Afrom%0D%0A++foo%3B | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/2108/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
810507413 | MDExOlB1bGxSZXF1ZXN0NTc1MTg3NDU3 | 1229 | ensure immutable databses when starting in configuration directory mode with | 295329 | closed | 0 | 3 | 2021-02-17T20:18:26Z | 2022-04-22T13:16:36Z | 2021-03-29T00:17:32Z | CONTRIBUTOR | simonw/datasette/pulls/1229 | 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 | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1229/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1448143294 | I_kwDOBm6k_c5WUOm- | 1890 | Autocomplete text entry for filter values that correspond to facets | 536941 | closed | 0 | 16 | 2022-11-14T14:11:31Z | 2022-11-17T00:47:36Z | 2022-11-16T03:23:01Z | CONTRIBUTOR | datasette allows users to enter in the value for named parameters into a free-text form field. I think it would add a lot of usability, if the form field could be a drop down of options when query value is already a faceted column. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1890/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
521923131 | MDExOlB1bGxSZXF1ZXN0MzQwMjExMTQ5 | 631 | bugfix issue 572 | 3683993 | closed | 0 | 1 | 2019-11-13T02:46:50Z | 2019-11-13T04:28:43Z | 2019-11-13T04:28:42Z | CONTRIBUTOR | simonw/datasette/pulls/631 | closes bugfix issue #572 | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/631/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
509612217 | MDExOlB1bGxSZXF1ZXN0MzMwMTI5MzU4 | 603 | always pop as_format off args dict | 6025893 | closed | 0 | 2 | 2019-10-20T15:44:22Z | 2019-10-30T19:12:22Z | 2019-10-21T02:03:09Z | CONTRIBUTOR | simonw/datasette/pulls/603 | closes #563 | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/603/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1430563092 | PR_kwDOCGYnMM5B6_6K | 508 | Allow surrogates in parameters | 7908073 | closed | 0 | 2 | 2022-10-31T22:11:49Z | 2022-11-17T15:11:16Z | 2022-10-31T22:55:36Z | CONTRIBUTOR | simonw/sqlite-utils/pulls/508 | closes #507 https://dwheeler.com/essays/fixing-unix-linux-filenames.html <!-- readthedocs-preview sqlite-utils start --> ---- :books: Documentation preview :books:: https://sqlite-utils--508.org.readthedocs.build/en/508/ <!-- readthedocs-preview sqlite-utils end --> | 140912432 | pull | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/508/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
543355051 | MDExOlB1bGxSZXF1ZXN0MzU3NjQwMTg2 | 6 | don't break if source is missing | 78035 | closed | 0 | 1 | 2019-12-29T10:46:47Z | 2020-03-28T02:28:11Z | 2020-03-28T02:28:11Z | CONTRIBUTOR | dogsheep/swarm-to-sqlite/pulls/6 | broke for me. very old checkins in 2010 had no source set. | 205429375 | pull | { "url": "https://api.github.com/repos/dogsheep/swarm-to-sqlite/issues/6/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
413887019 | MDExOlB1bGxSZXF1ZXN0MjU1NzI1MDU3 | 413 | Update spatialite.rst | 28597217 | closed | 0 | 1 | 2019-02-25T00:08:35Z | 2019-03-15T05:06:45Z | 2019-03-15T05:06:45Z | CONTRIBUTOR | simonw/datasette/pulls/413 | a line of sql added to create the idx_<table_name> in the python recipe | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/413/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1821108702 | I_kwDOCGYnMM5si-ne | 579 | Special handling for SQLite column of type `JSON` | 15178711 | open | 0 | 0 | 2023-07-25T20:37:23Z | 2023-07-25T20:37:23Z | CONTRIBUTOR | `sqlite-utils` should detect and have specially handling for column with a `JSON` column. For example: ```sql CREATE TABLE "dogs" ( id INTEGER PRIMARY KEY, name TEXT, friends JSON ); ``` ## Automatic Nesting According to ["Nested JSON Values"](https://sqlite-utils.datasette.io/en/stable/cli.html#nested-json-values), sqlite-utils will only expand JSON if the `--json-cols` flag is passed. It looks like it'll try to `json.load` all text column to test if its JSON, which can get expensive on non-json columns. Instead, `sqlite-utils` should be default (ie without the `--json-cols` flags) do the `maybe_json()` operation on columns with a declared `JSON` type. So the above table would expand the `"friends"` column as expected, withoutthe `--json-cols` flag: ```bash sqlite-utils dogs.db "select * from dogs" | python -mjson.tool ``` ``` [ { "id": 1, "name": "Cleo", "friends": [ { "name": "Pancakes" }, { "name": "Bailey" } ] } ] ``` --- I'm sure there's other ways `sqlite-utils` can specially handle JSON columns, so keeping this open while I think of more | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/579/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1400121355 | PR_kwDOBm6k_c5AVujU | 1835 | use inspect data for hash and file size | 536941 | closed | 0 | 3 | 2022-10-06T18:25:24Z | 2022-10-27T20:51:30Z | 2022-10-06T20:06:07Z | CONTRIBUTOR | simonw/datasette/pulls/1835 | `inspect_data` should already include the hash and the db file size, so this PR takes advantage of using those instead of always recalculating. should help a lot on startup with large DBs. closes #1834 | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1835/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
688659182 | MDU6SXNzdWU2ODg2NTkxODI= | 145 | Bug when first record contains fewer columns than subsequent records | 96218 | closed | 0 | 2 | 2020-08-30T05:44:44Z | 2020-09-08T23:21:23Z | 2020-09-08T23:21:23Z | CONTRIBUTOR | `insert_all()` selects the maximum batch size based on the number of fields in the first record. If the first record has fewer fields than subsequent records (and `alter=True` is passed), this can result in SQL statements with more than the maximum permitted number of host parameters. This situation is perhaps unlikely to occur, but could happen if the first record had, say, 10 columns, such that `batch_size` (based on `SQLITE_MAX_VARIABLE_NUMBER = 999`) would be 99. If the next 98 rows had 11 columns, the resulting SQL statement for the first batch would have `10 * 1 + 11 * 98 = 1088` host parameters (and subsequent batches, if the data were consistent from thereon out, would have `99 * 11 = 1089`). I suspect that this bug is masked somewhat by the fact that while: > [`SQLITE_MAX_VARIABLE_NUMBER`](https://www.sqlite.org/limits.html#max_variable_number) ... defaults to 999 for SQLite versions prior to 3.32.0 (2020-05-22) or 32766 for SQLite versions after 3.32.0. it is common that it is increased at compile time. Debian-based systems, for example, seem to ship with a version of sqlite compiled with `SQLITE_MAX_VARIABLE_NUMBER` set to 250,000, and I believe this is the case for homebrew installations too. A test for this issue might look like this: ```python def test_columns_not_in_first_record_should_not_cause_batch_to_be_too_large(fresh_db): # sqlite on homebrew and Debian/Ubuntu etc. is typically compiled with # SQLITE_MAX_VARIABLE_NUMBER set to 250,000, so we need to exceed this value to # trigger the error on these systems. THRESHOLD = 250000 extra_columns = 1 + (THRESHOLD - 1) // 99 records = [ {"c0": "first record"}, # one column in first record -> batch_size = 100 # fill out the batch with 99 records with enough columns to exceed THRESHOLD *[ dict([("c{}".format(i), j) for i in range(extra_columns)]) for j in range(99) ] ] try: fresh_db["too_many_columns"].insert_all(records, a… | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/145/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
275814941 | MDU6SXNzdWUyNzU4MTQ5NDE= | 141 | datasette publish can fail if /tmp is on a different device | 21148 | closed | 0 | 2949431 | 5 | 2017-11-21T18:28:05Z | 2020-04-29T03:27:54Z | 2017-12-08T16:06:36Z | CONTRIBUTOR | `datasette publish` uses hard links to avoid copying the db into a tmp directory. This can fail if `/tmp` is on another device, because hardlinks can't cross devices. You'll see something like this: ``` $ datasette publish heroku whatever.db ... OSError: [Errno 18] Invalid cross-device link: '/mnt/c/Users/jacob/c/datasette/whatever.db' -> '/tmp/tmpvxq2yof6/whatever.db' ``` [In my case this is failing because I'm on a Windows machine, using WSL, so my code's on a different virtual filesystem from the Linux subsystem, Because Reasons.] I'm not sure if it's possible to detect this (can you figure out which device `/tmp` is on?), or what the fallback should be (soft link? copy?). | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/141/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | |||||
871157602 | MDExOlB1bGxSZXF1ZXN0NjI2MjIyNjc2 | 1314 | Upgrade to GitHub-native Dependabot | 27856297 | closed | 0 | 1 | 2021-04-29T15:36:41Z | 2021-04-29T15:47:22Z | 2021-04-29T15:47:21Z | CONTRIBUTOR | simonw/datasette/pulls/1314 | _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 | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1314/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1163369515 | I_kwDOBm6k_c5FV5wr | 1655 | query result page is using 400mb of browser memory 40x size of html page and 400x size of csv data | 536941 | open | 0 | 8 | 2022-03-09T00:56:40Z | 2023-10-17T21:53:17Z | CONTRIBUTOR | [this page](https://labordata.bunkum.us/opdr-8335ea3?sql=with+most_recent_lu+as+%28%0D%0A++select%0D%0A++++*%0D%0A++from%0D%0A++++%28%0D%0A++++++select%0D%0A++++++++*%0D%0A++++++from%0D%0A++++++++lm_data%0D%0A++++++order+by%0D%0A++++++++f_num%2C%0D%0A++++++++receive_date+desc%0D%0A++++%29+t%0D%0A++group+by%0D%0A++++f_num%0D%0A%29%0D%0Aselect%0D%0A++aff_abbr+%7C%7C+coalesce%28%27+local+%27+%7C%7C+desig_num%2C+%27+%27+%7C%7C+unit_name%29+as+abbr_local_name%2C%0D%0A++coalesce%28%0D%0A++++regexp_match%28%27%28.*%3F%29%28%2C%3F+AFL-CIO%24%29%27%2C+union_name%29%2C%0D%0A++++regexp_match%28%27%28.*%3F%29%28+IND%24%29%27%2C+union_name%29%2C%0D%0A++++union_name%0D%0A++%29+%7C%7C+coalesce%28%27+local+%27+%7C%7C+desig_num%2C+%27+%27+%7C%7C+unit_name%29+as+full_local_name%2C%0D%0A++*%0D%0Afrom%0D%0A++most_recent_lu%0D%0Awhere+%28desig_num+IS+NOT+NULL+OR+unit_name+IS+NOT+NULL%29+AND+desig_name+%21%3D+%27HQ%27%0D%0Alimit%0D%0A++5000+offset+0) is using about 400 mb in firefox 97 on mac os x. if you download the html for the page, it's about 11mb and if you get the csv for the data its about 1mb. it's using over a 1G on chrome 99. i found this because, i was trying to figure out why editing the SQL was getting very slow. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1655/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
794554881 | MDU6SXNzdWU3OTQ1NTQ4ODE= | 1208 | A lot of open(file) functions are used without a context manager thus producing ResourceWarning: unclosed file <_io.TextIOWrapper | 4488943 | closed | 0 | 2 | 2021-01-26T20:56:28Z | 2021-03-11T16:15:49Z | 2021-03-11T16:15:49Z | CONTRIBUTOR | Your code is full of open files that are never closed, especially when you deal with reading/writing json/yaml files. If you run python with warnings enabled this problem becomes evident. This probably contributes to some memory leaks in long running datasettes if the GC will not 'collect' those resources properly. This is easily fixed by using a context manager instead of just using open: ```python with open('some_file', 'w') as opened_file: opened_file.write('string') ``` In some newer parts of the code you use Path objects 'read_text' and 'write_text' functions which close the file properly and are prefered in some cases. If you want I can create a PR for all places i found this pattern in. Bellow is a fraction of places where i found a ResourceWarning: ```python update-docs-help.py: 20 actual = actual.replace("Usage: cli ", "Usage: datasette ") 21: open(docs_path / filename, "w").write(actual) 22 datasette\app.py: 210 ): 211: inspect_data = json.load((config_dir / "inspect-data.json").open()) 212 if immutables is None: 266 if config_dir and (config_dir / "settings.json").exists() and not config: 267: config = json.load((config_dir / "settings.json").open()) 268 self._settings = dict(DEFAULT_SETTINGS, **(config or {})) 445 self._app_css_hash = hashlib.sha1( 446: open(os.path.join(str(app_root), "datasette/static/app.css")) 447 .read() datasette\cli.py: 130 else: 131: out = open(inspect_file, "w") 132 loop = asyncio.get_event_loop() 459 if inspect_file: 460: inspect_data = json.load(open(inspect_file)) 461 ``` | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1208/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
939051549 | MDU6SXNzdWU5MzkwNTE1NDk= | 1388 | Serve using UNIX domain socket | 80737 | closed | 0 | 13 | 2021-07-07T16:13:37Z | 2021-07-11T01:18:38Z | 2021-07-10T23:38:32Z | CONTRIBUTOR | Would it be possible to make datasette serve using UNIX domain socket similar to Uvicorn's ``--uds``? | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1388/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
849220154 | MDU6SXNzdWU4NDkyMjAxNTQ= | 1286 | Better default display of arrays of items | 192568 | open | 0 | 5 | 2021-04-02T13:31:40Z | 2021-06-12T12:36:15Z | CONTRIBUTOR | Would be great to have template filters that convert array fields to bullets and/or delimited lists upon table display: ``` |to_bullets |to_comma_delimited |to_semicolon_delimited ``` or maybe: ``` |join_array("bullet") |join_array("bullet","square") |join_array(";") |join_array(",") ``` Keeping in mind that bullets show up in html as \<li\> while other delimiting characters appear after the value. Of course, the fields themselves would remain as facetable arrays. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1286/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
797651831 | MDU6SXNzdWU3OTc2NTE4MzE= | 1212 | Tests are very slow. | 4488943 | closed | 0 | 4 | 2021-01-31T08:06:16Z | 2021-02-19T22:54:13Z | 2021-02-19T22:54:13Z | CONTRIBUTOR | Working on my PR i noticed that tests are very slow. The plain pytest run took about 37 minutes for me. However i could shave of about 10 minutes from that if i used pytest-xdist to parallelize execution. `pytest -n 8` is run only in 28 minutes on my machine. I can create a PR to mention that in your documentation. This will be a simple change to add pytest-xdist to requirements and change a command to run pytest in documentation. Does that make sense to you? After a bit more investigation it looks like python-xdist is not an answer. It creates a race condition for tests that try to clead temp dir before run. Profiling shows that most time is spent on conn.executescript(TABLES) in make_app_client function. Which makes sense. Perhaps the better approach would be look at the app_client fixture which is already session scoped, but not used by all test cases. And/or use conn = sqlite3.connect(":memory:") which is much faster. And/or truncate tables after each TC instead of deleting the file and re-creating them. I can take a look which is the best approach if you give the go-ahead. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1212/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
842556944 | MDExOlB1bGxSZXF1ZXN0NjAyMTA3OTM1 | 1279 | Minor Docs Update. Added `--app` to fly install command. | 1019791 | closed | 0 | 2 | 2021-03-27T16:58:08Z | 2021-03-29T00:11:55Z | 2021-03-29T00:11:55Z | CONTRIBUTOR | simonw/datasette/pulls/1279 | 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. | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1279/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
777677671 | MDU6SXNzdWU3Nzc2Nzc2NzE= | 1169 | Prettier package not actually being cached | 3637 | closed | 0 | 4 | 2021-01-03T17:04:41Z | 2021-01-04T19:52:34Z | 2021-01-04T19:52:33Z | CONTRIBUTOR | With the current configuration Prettier seems to be installed on every run - which can been [seen from the output](https://github.com/simonw/datasette/runs/1631686028?check_suite_focus=true#step:4:4): ``` npx: installed 1 in 5.166s ``` Prettier isn't explicitly being installed (it's surprising that actually installing the dependencies isn't included in the [actions/cache docs](https://github.com/actions/cache/blob/main/examples.md#macos-and-ubuntu)) but it turns out that `npx` will automatically install the package for the specified command (it actually _guesses_ the package name from the name of the command). I'm not sure where Prettier ends up being installed but it doesn't appear to be in `~/.npm` according to the [post-cache output](https://github.com/simonw/datasette/runs/1631686028#step:7:2) (or `./node_modules` when I tested locally): ``` Cache hit occurred on the primary key Linux-npm-565329898f77080e58b14d45cf816ab94877e6f2ece9d395c369c533548a7ee7, not saving cache. ``` I think there are a couple of approaches to tackling this, you could manually install/cache Prettier within the action, or add a `package.json` with Prettier. I would go with the latter because it's a more standard and maintainable approach and it will also ensure that, along with CI, anyone working on the project will run the same version of Prettier (you'll also get Dependabot JavaScript updates). I've tested the [`package.json` approach on a branch](https://github.com/simonw/datasette/compare/main...benpickles:cache-prettier) and am happy to turn it into a pull request if you fancy. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1169/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
855476501 | MDU6SXNzdWU4NTU0NzY1MDE= | 1298 | improve table horizontal scroll experience | 192568 | open | 0 | 4 | 2021-04-12T01:55:16Z | 2022-08-30T21:11:49Z | CONTRIBUTOR | Wide tables aren't a huge problem if you know to click and drag right. But it's not at all obvious to do that. (it also tends to blue-select any content as it's dragging.) Depending on column widths, public users might entirely miss all the columns to the right. There is a scrollbar at the bottom of the table, but I'm displaying ALL my records because it's the only way for datasette-vega to make accurate charts. So that bottom scrollbar is likely to be missed. I wonder if some sort of javascript-y mouseover to an arrow might help, similar to those seen in image carousels. Ah: here's a perfect example: 1. Visit http://google.com 2. Search for: animals endangered 3. Note the 'g-right-button' (in the code) that looks like a right-facing caret in a circle. 4. Click on that and the carousel scrolls right (and 'g-left-button' appears on the left). Might be tricky to do that on a table, rather than a one-row carousel, but it's worth experimenting with. Another option is just to put the scrollbars at the top of the table, too. Meantime, I'm trying to build a button like the "View/hide all columns on https://salaries.news.baltimoresun.com/salaries-be494cf/2019+Maryland+state+salaries Might be nice to have that available by default, with settings in the metadata showing which are on by default. (I saw some other closed issues related to horizontal scrolling, and admit I don't entirely understand them. For instance, the animated gif at https://github.com/simonw/datasette/issues/998#issuecomment-714117534 confuses me. ) | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1298/reactions", "total_count": 4, "+1": 4, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
988013247 | MDExOlB1bGxSZXF1ZXN0NzI3MDEyOTk2 | 324 | Use python-dateutil package instead of dateutils | 191622 | closed | 0 | 1 | 2021-09-03T18:31:19Z | 2021-11-14T23:25:40Z | 2021-11-14T23:25:40Z | CONTRIBUTOR | simonw/sqlite-utils/pulls/324 | 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. | 140912432 | pull | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/324/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
471292050 | MDU6SXNzdWU0NzEyOTIwNTA= | 563 | incorrect json url for row-level data? | 10352819 | closed | 0 | 0 | 2019-07-22T19:59:38Z | 2019-10-21T02:03:09Z | 2019-10-21T02:03:09Z | CONTRIBUTOR | While visiting [this example page](https://register-of-members-interests.datasettes.com/regmem-98dc8b7/people/uk.org.publicwhip%2Fperson%2F10001) (linked from Datasette documentation), manually clicking on [the link](https://register-of-members-interests.datasettes.com/regmem-98dc8b7/people/uk.org.publicwhip%2Fperson%2F10001?_format=json) ("This data as .json") to the json data results in an error 500 `data() got an unexpected keyword argument 'as_format'` The [JSON page linked to from the documentation](https://register-of-members-interests.datasettes.com/regmem-d22c12c/people/uk.org.publicwhip%2Fperson%2F10001.json) however is correct (the page address ends in `.json` rather than using a query string `?format=json`) This particular datasette demo page is now a few versions behind, but I was able to reproduce the issue using v0.29.2 and a downloaded copy of the demo database (and also with the current HEAD). Here is a stack trace: ``` Traceback (most recent call last): File "/home/romain/miniconda3/envs/dsbug/lib/python3.7/site-packages/datasette/utils/asgi.py", line 101, in __call__ return await view(new_scope, receive, send) File "/home/romain/miniconda3/envs/dsbug/lib/python3.7/site-packages/datasette/utils/asgi.py", line 173, in view request, **scope["url_route"]["kwargs"] File "/home/romain/miniconda3/envs/dsbug/lib/python3.7/site-packages/datasette/views/base.py", line 267, in get request, database, hash, correct_hash_provided, **kwargs File "/home/romain/miniconda3/envs/dsbug/lib/python3.7/site-packages/datasette/views/base.py", line 399, in view_get request, database, hash, **kwargs TypeError: data() got an unexpected keyword argument 'as_format' ``` | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/563/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
465728430 | MDExOlB1bGxSZXF1ZXN0Mjk1NzExNTA0 | 554 | Fix static mounts using relative paths and prevent traversal exploits | 3243482 | closed | 0 | 4 | 2019-07-09T11:32:02Z | 2019-07-11T16:29:26Z | 2019-07-11T16:13:19Z | CONTRIBUTOR | simonw/datasette/pulls/554 | While debugging why my static mounts using a relative path (`--static mystatic:rel/path/to/dir`) not working, I noticed that the requests fail no matter what, returning 404 errors. The reason is that datasette tries to prevent traversal exploits by checking if the path is relative to its registered directory. This check fails when the mount is a relative directory, because `/abs/dir/file` obviously not under `dir/file`. https://github.com/simonw/datasette/blob/81fa8b6cdc5457b42a224779e5291952314e8d20/datasette/utils/asgi.py#L303-L306 This also has the consequence of returning any requested file, because when `/abs/dir/../../evil.file` resolves `aiofiles` happily returns it to the client after it resolves the path itself. The solution is to make sure we're checking relativity of paths after they're fully resolved. I've implemented the mentioned changes and also updated the tests. | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/554/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
314455877 | MDExOlB1bGxSZXF1ZXN0MTgxNzIzMzAz | 209 | Don't duplicate simple primary keys in the link column | 45057 | closed | 0 | 6 | 2018-04-15T21:56:15Z | 2018-04-18T08:40:37Z | 2018-04-18T01:13:04Z | CONTRIBUTOR | simonw/datasette/pulls/209 | When there's a simple (single-column) primary key, it looks weird to duplicate it in the link column. This change removes the second PK column and treats the link column as if it were the PK column from a header/sorting perspective. This might make it a bit more difficult to tell what the link for the row is, I'm not sure yet. I feel like the alternative is to change the link column to just have the text "view" or something, instead of repeating the PK. (I doubt it makes much more sense with compound PKs.) Bonus change in this PR: fix urlencoding of links in the displayed HTML. Before: ![image](https://user-images.githubusercontent.com/45057/38783830-e2ababb4-40ff-11e8-97fb-25e286a8c920.png) After: ![image](https://user-images.githubusercontent.com/45057/38783835-ebf6b48e-40ff-11e8-8c47-6a864cf21ccc.png) | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/209/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
336936010 | MDU6SXNzdWUzMzY5MzYwMTA= | 331 | Datasette throws error when loading spatialite db without extension loaded | 82988 | closed | 0 | 2 | 2018-06-29T09:51:14Z | 2022-01-20T21:29:40Z | 2018-07-10T15:13:36Z | CONTRIBUTOR | When starting datasette on a SpatialLite database *without* loading the SpatiaLite extension (using eg `--load-extension=/usr/local/lib/mod_spatialite.dylib`) an error is thrown and the server fails to start: ``` datasette -p 8003 adminboundaries.db Serve! files=('adminboundaries.db',) on port 8003 Traceback (most recent call last): File "/Users/ajh59/anaconda3/bin/datasette", line 11, in <module> sys.exit(cli()) File "/Users/ajh59/anaconda3/lib/python3.6/site-packages/click/core.py", line 722, in __call__ return self.main(*args, **kwargs) File "/Users/ajh59/anaconda3/lib/python3.6/site-packages/click/core.py", line 697, in main rv = self.invoke(ctx) File "/Users/ajh59/anaconda3/lib/python3.6/site-packages/click/core.py", line 1066, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/Users/ajh59/anaconda3/lib/python3.6/site-packages/click/core.py", line 895, in invoke return ctx.invoke(self.callback, **ctx.params) File "/Users/ajh59/anaconda3/lib/python3.6/site-packages/click/core.py", line 535, in invoke return callback(*args, **kwargs) File "/Users/ajh59/anaconda3/lib/python3.6/site-packages/datasette/cli.py", line 552, in serve ds.inspect() File "/Users/ajh59/anaconda3/lib/python3.6/site-packages/datasette/app.py", line 273, in inspect "tables": inspect_tables(conn, self.metadata.get("databases", {}).get(name, {})) File "/Users/ajh59/anaconda3/lib/python3.6/site-packages/datasette/inspect.py", line 79, in inspect_tables "PRAGMA table_info({});".format(escape_sqlite(table)) sqlite3.OperationalError: no such module: VirtualSpatialIndex ``` It would be nice to trap this and return a message saying something like: ``` It looks like you're trying to load a SpatiaLite database? Make sure you load in the SpatiaLite extension when starting datasette. Read more: https://datasette.readthedocs.io/en/latest/spatialite.html ``` | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/331/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
662322234 | MDExOlB1bGxSZXF1ZXN0NDUzODkwMjky | 901 | Use None as a default arg | 56323389 | closed | 0 | 1 | 2020-07-20T22:18:38Z | 2020-07-31T18:42:39Z | 2020-07-31T18:42:39Z | CONTRIBUTOR | simonw/datasette/pulls/901 | When passing a mutable value as a default argument in a function, the default argument is mutated anytime that value is mutated. This poses a bug risk. Instead, use None as a default and assign the mutable value inside the function. | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/901/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1366423176 | I_kwDOCGYnMM5RcfaI | 485 | Progressbar not shown when inserting/upserting jsonlines file | 99098079 | closed | 0 | 1 | 2022-09-08T14:13:18Z | 2022-09-15T20:39:52Z | 2022-09-15T20:37:52Z | CONTRIBUTOR | When inserting or upserting a jsonlines file, no progressbar is shown. Expected behavior is that, just like with .csv/.tsv files, also for a jsonlines file (--nl), unless --silent is provided, a progressbar is shown. ```bash sql-utils upsert mydb.db posts posts.jl --nl --pk post_id (silence) ``` Currently `file_progress` is only called within the tsv/csv logic, however I think it can be safely wrapped around all the all the input formats that use `decoded`: https://github.com/simonw/sqlite-utils/blob/main/sqlite_utils/cli.py#L963 | 140912432 | issue | { "url": "https://api.github.com/repos/simonw/sqlite-utils/issues/485/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1400083043 | I_kwDOBm6k_c5Tc5Jj | 1834 | inspect data is not used for caching database hash | 536941 | closed | 0 | 0 | 2022-10-06T17:52:01Z | 2022-10-06T20:06:21Z | 2022-10-06T20:06:08Z | CONTRIBUTOR | When databases are loaded, https://github.com/simonw/datasette/blob/cb1e093fd361b758120aefc1a444df02462389a3/datasette/app.py#L257-L260 there is nothing preventing the rehashing of the database for immutable databases. https://github.com/simonw/datasette/blob/cb1e093fd361b758120aefc1a444df02462389a3/datasette/database.py#L50-L53 what i might expect is that relevant values of `inspect_data` get passed to the `Database` class to prevent re-hashing? With data that is many gigs large, this is a significant start up time. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1834/reactions", "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1994857251 | I_kwDOBm6k_c525xsj | 2208 | No suggested facets when a column named 'value' is included | 198537 | open | 0 | 1 | 2023-11-15T14:11:17Z | 2023-11-15T14:18:59Z | CONTRIBUTOR | When a column named 'value' is included there are no suggested facets is shown as the query uses an alias of 'value'. https://github.com/simonw/datasette/blob/452a587e236ef642cbc6ae345b58767ea8420cb5/datasette/facets.py#L168-L174 Currently the following is shown (from https://latest.datasette.io/fixtures/facetable) ![image](https://github.com/simonw/datasette/assets/198537/a919509a-ea88-461b-b25b-8b776720c7c5) When I add a column named 'value' only the JSON facets are processed. ![image](https://github.com/simonw/datasette/assets/198537/092bd0b3-4c20-434e-88f8-47e2b8994a1d) I think that not using aliases could be a solution (except if someone wants to use a column named `count(*)` though this seems to be unlikely). I'll open a PR with that. There is also a TODO with a similar question in the same file. I have not looked into that yet. https://github.com/simonw/datasette/blob/452a587e236ef642cbc6ae345b58767ea8420cb5/datasette/facets.py#L512 | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/2208/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
459627549 | MDU6SXNzdWU0NTk2Mjc1NDk= | 523 | Show total/unfiltered row count when filtering | 2657547 | closed | 0 | 2 | 2019-06-23T22:56:48Z | 2019-06-24T01:38:14Z | 2019-06-24T01:38:14Z | CONTRIBUTOR | When I'm seeing a filtered view of a table, I'd like to be able to see something like '2 rows where status != "closed" (of 1000 total)' to have a context for the data I'm seeing – e.g. currently my database is being filled by an importer, so this information would be super helpful. Since this information would be a performance hit, maybe something like '12 rows where status != "closed" (of ??? total)' with lazy-loading on-click(?) could be applied (Or via a "How many total?" tooltip, or …) | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/523/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
1015646369 | I_kwDOBm6k_c48iYih | 1480 | Exceeding Cloud Run memory limits when deploying a 4.8G database | 110420 | open | 0 | 9 | 2021-10-04T21:20:24Z | 2022-10-07T04:39:10Z | CONTRIBUTOR | When I try to deploy a 4.8G SQLite database to Google Cloud Run, I get this error message: > Memory limit of 8192M exceeded with 8826M used. Consider increasing the memory limit, see https://cloud.google.com/run/docs/configuring/memory-limits Unfortunately, the maximum amount of memory that can be allocated to an instance is 8192M. Naively profiling the memory usage of running Datasette with this database locally on my MacBook shows the following memory usage (using Activity Monitor) when I just start up Datasette locally: - Real Memory Size: 70.6 MB - Virtual Memory Size: 4.51 GB - Shared Memory Size: 2.5 MB - Private Memory Size: 57.4 MB I'm trying to understand if there's a query or other operation that gets run during container deployment that causes memory use to be so large and if this can be avoided somehow. This is somewhat related to #1082, but on a different platform, so I decided to open a new issue. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/1480/reactions", "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1783304750 | I_kwDOBm6k_c5qSxIu | 2094 | JS Plugin Hooks for the Code Editor | 15178711 | open | 0 | 0 | 2023-07-01T00:51:57Z | 2023-07-01T00:51:57Z | CONTRIBUTOR | When #2052 merges, I'd like to add support to add extensions/functions to the Datasette code editor. I'd eventually like to build a JS plugin for [`sqlite-docs`](https://github.com/asg017/sqlite-docs), to add things like: - Inline documentation for tables/columns on hover - Inline docs for custom functions that are loaded in - More detailed autocomplete for tables/columns/functions I did some hacking to see what this would look like, see here: <img width="1223" alt="image" src="https://github.com/simonw/datasette/assets/15178711/64f95cbc-1492-4365-896f-b88c6d08a649"> <img width="1223" alt="image" src="https://github.com/simonw/datasette/assets/15178711/73e602ba-5f45-417a-997e-5aea1738527a"> There can be a new hook that allows JS plugins to add new "extension" in the CodeMirror editorview here: https://github.com/simonw/datasette/blob/8cd60fd1d899952f1153460469b3175465f33f80/datasette/static/cm-editor-6.0.1.js#L25 Will need some more planning. For example, the Codemirror bundle in Datasette has functions that we could re-export for plugins to use (so we don't load 2 version of `"@codemirror/autocomplete"`, for example. | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/2094/reactions", "total_count": 1, "+1": 0, "-1": 0, "laugh": 0, "hooray": 1, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
1781530343 | I_kwDOBm6k_c5qL_7n | 2093 | Proposal: Combine settings, metadata, static, etc. into a single `datasette.yaml` File | 15178711 | open | 0 | 8 | 2023-06-29T21:18:23Z | 2023-09-11T20:19:32Z | CONTRIBUTOR | Very often I get tripped up when trying to configure my Datasette instances. For example: if I want to change the port my app listen too, do I do that with a CLI flag, a `--setting` flag, inside `metadata.json`, or an env var? If I want to up the time limit of SQL statements, is that under `metadata.json` or a setting? Where does my plugin configuration go? Normally I need to look it up in Datasette docs, and I quickly find my answer, but the number of places where "config" goes it overwhelming. - Flat CLI flags like `--port`, `--host`, `--cors`, etc. - `--setting`, like `default_page_size`, `sql_time_limit_ms` etc - Inside `metadata.json`, including plugin configuration Typically my Datasette deploys are extremely long shell commands, with multiple `--setting` and other CLI flags. ## Proposal: Consolidate all "config" into `datasette.toml` I propose that we add a new `datasette.toml` that combines "settings", "metadata", and other common CLI flags like `--port` and `--cors` into a single file. It would be similar to "Cargo.toml" in Rust projects, "package.json" in Node projects, and "pyproject.toml" in Python, etc. A sample of what it could look like: ```toml # "top level" configuration that are currently CLI flags on `datasette serve` [config] port = 8020 host = "0.0.0.0" cors = true # replaces multiple `--setting` flags [settings] base_url = "/app/datasette/" default_allow_sql = true sql_time_limit_ms = 3500 # replaces `metadata.json`. # The contents of datasette-metadata.json could be defined in this file instead, but supporting separate files is nice (since those are easy to machine-generate) [metadata] include="./datasette-metadata.json" # plugin-specific [plugins] [plugins.datasette-auth-github] client_id = {env = "DATASETTE_AUTH_GITHUB_CLIENT_ID"} client_secret = {env = "GITHUB_CLIENT_SECRET"} [plugins.datasette-cluster-map] latitude_column = "lat" longitude_column = "lon" ``` ## Pros - Instead of multiple files and CLI flags, everything could b… | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/2093/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
||||||||
274877366 | MDExOlB1bGxSZXF1ZXN0MTUzMzA2ODgy | 115 | Add keyboard shortcut to execute SQL query | 198537 | closed | 0 | 1 | 2017-11-17T14:13:33Z | 2017-11-17T15:16:34Z | 2017-11-17T14:22:56Z | CONTRIBUTOR | simonw/datasette/pulls/115 | Very cool tool, thanks a lot! This PR adds a `Shift-Enter` short cut to execute the SQL query. I used CodeMirrors keyboard handling. | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/115/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
369716228 | MDU6SXNzdWUzNjk3MTYyMjg= | 366 | Default built image size over Zeit Now 100MiB limit | 416374 | closed | 0 | 2 | 2018-10-12T21:27:17Z | 2018-11-05T06:23:32Z | 2018-11-05T06:23:32Z | CONTRIBUTOR | Using `dataset publish now` with no other custom options on a small (43KB) sqlite database leads to the error "The built image size (373.5M) exceeds the 100MiB limit". I think this is because of a recent Zeit change: https://github.com/zeit/now-cli/issues/1523 | 107914493 | issue | { "url": "https://api.github.com/repos/simonw/datasette/issues/366/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | ||||||
941403676 | MDExOlB1bGxSZXF1ZXN0Njg3Mjk4MTEy | 1392 | Update deploying.rst | 80737 | closed | 0 | 1 | 2021-07-11T08:43:19Z | 2021-07-13T17:42:31Z | 2021-07-13T17:42:27Z | CONTRIBUTOR | simonw/datasette/pulls/1392 | Use same base url for Apache as in the example | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1392/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
916183914 | MDExOlB1bGxSZXF1ZXN0NjY1ODkyMzEz | 1373 | Update trustme requirement from <0.8,>=0.7 to >=0.7,<0.9 | 49699333 | closed | 0 | 1 | 2021-06-09T13:09:44Z | 2021-06-13T15:38:47Z | 2021-06-13T15:38:47Z | CONTRIBUTOR | simonw/datasette/pulls/1373 | Updates the requirements on [trustme](https://github.com/python-trio/trustme) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python-trio/trustme/commit/f9e13e03963260b32cab03f4e4c25cc515ddfad3"><code>f9e13e0</code></a> Release 0.8.0</li> <li><a href="https://github.com/python-trio/trustme/commit/4ae4435f4477dc8433f8f6d51cdb891652a5a228"><code>4ae4435</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/python-trio/trustme/issues/304">#304</a> from python-trio/dependabot/add-v2-config-file</li> <li><a href="https://github.com/python-trio/trustme/commit/87679026732cc441ac87c4415cf1a2bd6547116c"><code>8767902</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/python-trio/trustme/issues/327">#327</a> from graingert/test-on-py310</li> <li><a href="https://github.com/python-trio/trustme/commit/6abfddd5f3139bde9ee4ba0f848fb7c84c9ac54c"><code>6abfddd</code></a> Merge branch 'master' of github.com:python-trio/trustme into test-on-py310</li> <li><a href="https://github.com/python-trio/trustme/commit/51d3bdfb0d874ba52d59a84e10f2c12741de1046"><code>51d3bdf</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/python-trio/trustme/issues/328">#328</a> from tiran/correct_ku_eku</li> <li><a href="https://github.com/python-trio/trustme/commit/034fb3aad7890ac6e4cb24d821413bd790a84b35"><code>034fb3a</code></a> retry codecov more</li> <li><a href="https://github.com/python-trio/trustme/commit/53e121d4f2746333cedb412cabd510549e677ba6"><code>53e121d</code></a> try codecov harder</li> <li><a href="https://github.com/python-trio/trustme/commit/c1e7923784e3282aa63c28a1afe2c7960d80390f"><code>c1e7923</code></a> require codecov in ci</li> <li><a href="https://github.com/python-trio/trustme/commit/e3ac2d61a5ab902cdeac1c95dfc0a49c81c5d290"><code>e3ac2d6</code></a> Update tests/test_trustme.py</li> <li><a href="https://github.com/python-trio/trustme/commit/496dca6f2146268058b300a7fc24d4bdb90c5c33"><code>496dca6<… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1373/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
970386262 | MDExOlB1bGxSZXF1ZXN0NzEyMzQ2MTk5 | 1433 | Update trustme requirement from <0.9,>=0.7 to >=0.7,<0.10 | 49699333 | closed | 0 | 1 | 2021-08-13T13:10:24Z | 2021-08-25T01:29:27Z | 2021-08-25T01:29:26Z | CONTRIBUTOR | simonw/datasette/pulls/1433 | Updates the requirements on [trustme](https://github.com/python-trio/trustme) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python-trio/trustme/commit/8fc5bf9c5afaf40843287e6eccca344713eddb50"><code>8fc5bf9</code></a> Bump version to 0.9.0</li> <li><a href="https://github.com/python-trio/trustme/commit/913e21dd94fc16a8b41742cc60338dcf638ae792"><code>913e21d</code></a> Bump types-cryptography from 3.3.3 to 3.3.5 (<a href="https://github-redirect.dependabot.com/python-trio/trustme/issues/342">#342</a>)</li> <li><a href="https://github.com/python-trio/trustme/commit/c66709d48bffc0d3a70d260313b752037ea71f8d"><code>c66709d</code></a> Bump types-pyopenssl from 20.0.4 to 20.0.5 (<a href="https://github-redirect.dependabot.com/python-trio/trustme/issues/343">#343</a>)</li> <li><a href="https://github.com/python-trio/trustme/commit/5131f79e9b7d73d993f901d8e48e6d744b0606ef"><code>5131f79</code></a> Add type annotations (<a href="https://github-redirect.dependabot.com/python-trio/trustme/issues/341">#341</a>)</li> <li><a href="https://github.com/python-trio/trustme/commit/a411dad9614f3fc2e746324d9a226e4947d55835"><code>a411dad</code></a> Bump charset-normalizer from 2.0.3 to 2.0.4 (<a href="https://github-redirect.dependabot.com/python-trio/trustme/issues/340">#340</a>)</li> <li><a href="https://github.com/python-trio/trustme/commit/be5ec8a3892ea218291ac93da8b382229b07f044"><code>be5ec8a</code></a> Bump sphinx from 4.1.1 to 4.1.2</li> <li><a href="https://github.com/python-trio/trustme/commit/d3b8865576a82189e06c735c64685fbad7ad02d0"><code>d3b8865</code></a> Bump charset-normalizer from 2.0.2 to 2.0.3</li> <li><a href="https://github.com/python-trio/trustme/commit/4503bef325bf0b23f4a0289654ee4c72d0c79fd1"><code>4503bef</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/python-trio/trustme/issues/334">#334</a> from python-trio/dependabot/pip/charset-normalizer-2.0.2</li> <li><a href="https://github.com/python-trio/trustme/commit/ce8099d9e2b5… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1433/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1026379132 | PR_kwDOBm6k_c4tM0JV | 1489 | Update pyyaml requirement from ~=5.3 to >=5.3,<7.0 | 49699333 | closed | 0 | 3 | 2021-10-14T13:09:33Z | 2021-10-14T18:10:43Z | 2021-10-14T18:10:42Z | CONTRIBUTOR | simonw/datasette/pulls/1489 | Updates the requirements on [pyyaml](https://github.com/yaml/pyyaml) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/yaml/pyyaml/blob/master/CHANGES">pyyaml's changelog</a>.</em></p> <blockquote> <p>6.0 (2021-10-13)</p> <ul> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/327">yaml/pyyaml#327</a> -- Change README format to Markdown</li> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/483">yaml/pyyaml#483</a> -- Add a test for YAML 1.1 types</li> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/497">yaml/pyyaml#497</a> -- fix float resolver to ignore <code>.</code> and <code>._</code></li> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/550">yaml/pyyaml#550</a> -- drop Python 2.7</li> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/553">yaml/pyyaml#553</a> -- Fix spelling of “hexadecimal”</li> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/556">yaml/pyyaml#556</a> -- fix representation of Enum subclasses</li> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/557">yaml/pyyaml#557</a> -- fix libyaml extension compiler warnings</li> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/560">yaml/pyyaml#560</a> -- fix ResourceWarning on leaked file descriptors</li> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/561">yaml/pyyaml#561</a> -- always require <code>Loader</code> arg to <code>yaml.load()</code></li> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/564">yaml/pyyaml#564</a> -- remove remaining direct distutils usage</li> </ul> <p>5.4.1 (2021-01-20)</p> <ul> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/480">yaml/pyyaml#480</a> -- Fix stub compat with older pyyaml versions that may unwittingly load it</li> </ul> <p>5.4 (2021-01-19)</p> <ul> <li><a href="https://github-redirect.dependabot.com/yaml/pyyaml/pull/407">yaml/pyya… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1489/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1168357113 | PR_kwDOBm6k_c40ZRDA | 1656 | Update pytest requirement from <7.1.0,>=5.2.2 to >=5.2.2,<7.2.0 | 49699333 | closed | 0 | 1 | 2022-03-14T13:11:53Z | 2022-03-15T18:03:03Z | 2022-03-15T18:03:02Z | CONTRIBUTOR | simonw/datasette/pulls/1656 | Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>7.1.0</h2> <h1>pytest 7.1.0 (2022-03-13)</h1> <h2>Breaking Changes</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/8838">#8838</a>: As per our policy, the following features have been deprecated in the 6.X series and are now removed:</p> <ul> <li><code>pytest._fillfuncargs</code> function.</li> <li><code>pytest_warning_captured</code> hook - use <code>pytest_warning_recorded</code> instead.</li> <li><code>-k -foobar</code> syntax - use <code>-k 'not foobar'</code> instead.</li> <li><code>-k foobar:</code> syntax.</li> <li><code>pytest.collect</code> module - import from <code>pytest</code> directly.</li> </ul> <p>For more information consult <a href="https://docs.pytest.org/en/latest/deprecations.html">Deprecations and Removals</a> in the docs.</p> </li> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/9437">#9437</a>: Dropped support for Python 3.6, which reached <a href="https://devguide.python.org/#status-of-python-branches">end-of-life</a> at 2021-12-23.</p> </li> </ul> <h2>Improvements</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/5192">#5192</a>: Fixed test output for some data types where <code>-v</code> would show less information.</p> <p>Also, when showing diffs for sequences, <code>-q</code> would produce full diffs instead of the expected diff.</p> </li> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/9362">#9362</a>: pytest now avoids specialized assert formatting when it is detected that the default <code>__eq__</code> is overridden in <code>attrs</code> or <code>dataclasses</code>.</p> </li> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/9536">#953… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1656/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1124191982 | PR_kwDOBm6k_c4yFTCp | 1629 | Update pytest requirement from <6.3.0,>=5.2.2 to >=5.2.2,<7.1.0 | 49699333 | closed | 0 | 1 | 2022-02-04T13:14:10Z | 2022-03-06T01:30:06Z | 2022-03-06T01:30:06Z | CONTRIBUTOR | simonw/datasette/pulls/1629 | Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>7.0.0</h2> <h1>pytest 7.0.0 (2022-02-03)</h1> <p>(<strong>Please see the full set of changes for this release also in the 7.0.0rc1 notes below</strong>)</p> <h2>Deprecations</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/9488">#9488</a>: If custom subclasses of nodes like <code>pytest.Item</code>{.interpreted-text role="class"} override the <code>__init__</code> method, they should take <code>**kwargs</code>. See <code>uncooperative-constructors-deprecated</code>{.interpreted-text role="ref"} for details.</p> <p>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.</p> </li> </ul> <h2>Bug Fixes</h2> <ul> <li><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/9355">#9355</a>: Fixed error message prints function decorators when using assert in Python 3.8 and above.</li> <li><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/9396">#9396</a>: Ensure <code>pytest.Config.inifile</code>{.interpreted-text role="attr"} is available during the <code>pytest_cmdline_main <_pytest.hookspec.pytest_cmdline_main></code>{.interpreted-text role="func"} hook (regression during <code>7.0.0rc1</code>).</li> </ul> <h2>Improved Documentation</h2> <ul> <li><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/9404">#9404</a>: Added extra documentation on alternatives to common misuses of [pytest.warns(None)]{.title-ref} ahead of its deprecation.</li> <li><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/9505">#9505</a>: Clarify where the configuration files are l… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1629/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
766494367 | MDExOlB1bGxSZXF1ZXN0NTM5NDg5NTI1 | 1145 | Update pytest requirement from <6.2.0,>=5.2.2 to >=5.2.2,<6.3.0 | 27856297 | closed | 0 | 6346396 | 1 | 2020-12-14T14:22:16Z | 2021-01-24T21:20:29Z | 2020-12-16T21:44:39Z | CONTRIBUTOR | simonw/datasette/pulls/1145 | Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>6.2.0</h2> <h1>pytest 6.2.0 (2020-12-12)</h1> <h2>Breaking Changes</h2> <ul> <li><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/7808">#7808</a>: pytest now supports python3.6+ only.</li> </ul> <h2>Deprecations</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/7469">#7469</a>: Directly constructing/calling the following classes/functions is now deprecated:</p> <ul> <li><code>_pytest.cacheprovider.Cache</code></li> <li><code>_pytest.cacheprovider.Cache.for_config()</code></li> <li><code>_pytest.cacheprovider.Cache.clear_cache()</code></li> <li><code>_pytest.cacheprovider.Cache.cache_dir_from_config()</code></li> <li><code>_pytest.capture.CaptureFixture</code></li> <li><code>_pytest.fixtures.FixtureRequest</code></li> <li><code>_pytest.fixtures.SubRequest</code></li> <li><code>_pytest.logging.LogCaptureFixture</code></li> <li><code>_pytest.pytester.Pytester</code></li> <li><code>_pytest.pytester.Testdir</code></li> <li><code>_pytest.recwarn.WarningsRecorder</code></li> <li><code>_pytest.recwarn.WarningsChecker</code></li> <li><code>_pytest.tmpdir.TempPathFactory</code></li> <li><code>_pytest.tmpdir.TempdirFactory</code></li> </ul> <p>These have always been considered private, but now issue a deprecation warning, which may become a hard error in pytest 7.0.0.</p> </li> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/7530">#7530</a>: The <code>--strict</code> command-line option has been deprecated, use <code>--strict-markers</code> instead.</p> <p>We have plans to maybe in the future to reintroduce <code>--strict</code> and make it an encompassing flag for all strictness related options (<code>--strict-markers</code> and <code>--strict-config</code> a… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1145/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | ||||
710269200 | MDExOlB1bGxSZXF1ZXN0NDk0MTQ2MDQz | 977 | Update pytest requirement from <6.1.0,>=5.2.2 to >=5.2.2,<6.2.0 | 27856297 | closed | 0 | 1 | 2020-09-28T13:33:05Z | 2020-09-28T22:16:36Z | 2020-09-28T22:16:35Z | CONTRIBUTOR | simonw/datasette/pulls/977 | Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>6.1.0</h2> <h1>pytest 6.1.0 (2020-09-26)</h1> <h2>Breaking Changes</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/5585">#5585</a>: As per our policy, the following features which have been deprecated in the 5.X series are now removed:</p> <ul> <li>The <code>funcargnames</code> read-only property of <code>FixtureRequest</code>, <code>Metafunc</code>, and <code>Function</code> classes. Use <code>fixturenames</code> attribute.</li> <li><code>@pytest.fixture</code> no longer supports positional arguments, pass all arguments by keyword instead.</li> <li>Direct construction of <code>Node</code> subclasses now raise an error, use <code>from_parent</code> instead.</li> <li>The default value for <code>junit_family</code> has changed to <code>xunit2</code>. If you require the old format, add <code>junit_family=xunit1</code> to your configuration file.</li> <li>The <code>TerminalReporter</code> no longer has a <code>writer</code> attribute. Plugin authors may use the public functions of the <code>TerminalReporter</code> instead of accessing the <code>TerminalWriter</code> object directly.</li> <li>The <code>--result-log</code> option has been removed. Users are recommended to use the <a href="https://github.com/pytest-dev/pytest-reportlog">pytest-reportlog</a> plugin instead.</li> </ul> <p>For more information consult <a href="https://docs.pytest.org/en/stable/deprecations.html">Deprecations and Removals</a> in the docs.</p> </li> </ul> <h2>Deprecations</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/6981">#6981</a>: The <code>pytest.collect</code> module is deprecated: all its names can be imported from <code>pytest</code> directly.</p> </li> <li> <p><a href="https://gi… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/977/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
667840539 | MDExOlB1bGxSZXF1ZXN0NDU4NDM1NTky | 910 | Update pytest requirement from <5.5.0,>=5.2.2 to >=5.2.2,<6.1.0 | 27856297 | closed | 0 | 1 | 2020-07-29T13:21:17Z | 2020-07-29T21:26:05Z | 2020-07-29T21:26:04Z | CONTRIBUTOR | simonw/datasette/pulls/910 | Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>6.0.0</h2> <h1>pytest 6.0.0 (2020-07-28)</h1> <p>(<strong>Please see the full set of changes for this release also in the 6.0.0rc1 notes below</strong>)</p> <h2>Breaking Changes</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/5584">#5584</a>: <strong>PytestDeprecationWarning are now errors by default.</strong></p> <p>Following our plan to remove deprecated features with as little disruption as possible, all warnings of type <code>PytestDeprecationWarning</code> now generate errors instead of warning messages.</p> <p><strong>The affected features will be effectively removed in pytest 6.1</strong>, so please consult the <a href="https://docs.pytest.org/en/latest/deprecations.html">Deprecations and Removals</a> section in the docs for directions on how to update existing code.</p> <p>In the pytest <code>6.0.X</code> series, it is possible to change the errors back into warnings as a stopgap measure by adding this to your <code>pytest.ini</code> file:</p> <pre lang="{.sourceCode" data-meta=".ini}"><code>[pytest] filterwarnings = ignore::pytest.PytestDeprecationWarning </code></pre> <p>But this will stop working when pytest <code>6.1</code> is released.</p> <p><strong>If you have concerns</strong> about the removal of a specific feature, please add a comment to <a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/5584">#5584</a>.</p> </li> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/7472">#7472</a>: The <code>exec_()</code> and <code>is_true()</code> methods of <code>_pytest._code.Frame</code> have been removed.</p> </li> </ul> <h2>Features</h2> <ul> <li><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/7464">#7464</a>: Added… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/910/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
596245923 | MDExOlB1bGxSZXF1ZXN0NDAwNTc5MDc3 | 721 | Update pytest requirement from ~=5.2.2 to >=5.2.2,<5.5.0 | 27856297 | closed | 0 | 0 | 2020-04-08T01:25:04Z | 2020-05-04T17:13:49Z | 2020-05-04T17:13:41Z | CONTRIBUTOR | simonw/datasette/pulls/721 | Updates the requirements on [pytest](https://github.com/pytest-dev/pytest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>5.4.1</h2> <h1>pytest 5.4.1 (2020-03-13)</h1> <h2>Bug Fixes</h2> <ul> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/6909">#6909</a>: Revert the change introduced by <a href="https://github-redirect.dependabot.com/pytest-dev/pytest/pull/6330">#6330</a>, which required all arguments to <code>@pytest.mark.parametrize</code> to be explicitly defined in the function signature.</p> <p>The intention of the original change was to remove what was expected to be an unintended/surprising behavior, but it turns out many people relied on it, so the restriction has been reverted.</p> </li> <li> <p><a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/6910">#6910</a>: Fix crash when plugins return an unknown stats while using the <code>--reportlog</code> option.</p> </li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/blob/master/CHANGELOG.rst">pytest's changelog</a>.</em></p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest/commit/3d0f3baa2bb89257dfff25ae6ebabd565287240e"><code>3d0f3ba</code></a> Preparing release version 5.4.1</li> <li><a href="https://github.com/pytest-dev/pytest/commit/b9e2cd0a81e043bdb409e7078db9af4c4d38da54"><code>b9e2cd0</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/6914">#6914</a> from nicoddemus/revert-6330</li> <li><a href="https://github.com/pytest-dev/pytest/commit/a84fcbf5b2fc007a1630a1ddd60b0a2438b61642"><code>a84fcbf</code></a> Revert "[parametrize] enforce explicit argnames declaration (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest/issues/6330">#6330</a>… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/721/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1076834768 | PR_kwDOBm6k_c4vrZxV | 1548 | Update pytest-xdist requirement from <2.5,>=2.2.1 to >=2.2.1,<2.6 | 49699333 | closed | 0 | 1 | 2021-12-10T13:12:06Z | 2021-12-13T23:22:22Z | 2021-12-13T23:22:21Z | CONTRIBUTOR | simonw/datasette/pulls/1548 | Updates the requirements on [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's changelog</a>.</em></p> <blockquote> <h1>pytest-xdist 2.5.0 (2021-12-10)</h1> <h2>Features</h2> <ul> <li> <p><code>[#722](https://github.com/pytest-dev/pytest-xdist/issues/722) <https://github.com/pytest-dev/pytest-xdist/issues/722></code>_: Full compatibility with pytest 7 - no deprecation warnings or use of legacy features.</p> </li> <li> <p><code>[#733](https://github.com/pytest-dev/pytest-xdist/issues/733) <https://github.com/pytest-dev/pytest-xdist/issues/733></code>_: New <code>--dist=loadgroup</code> option, which ensures all tests marked with <code>@pytest.mark.xdist_group</code> run in the same session/worker. Other tests run distributed as in <code>--dist=load</code>.</p> </li> </ul> <h2>Trivial Changes</h2> <ul> <li> <p><code>[#708](https://github.com/pytest-dev/pytest-xdist/issues/708) <https://github.com/pytest-dev/pytest-xdist/issues/708></code>_: Use <code>@pytest.hookspec</code> decorator to declare hook options in <code>newhooks.py</code> to avoid warnings in <code>pytest 7.0</code>.</p> </li> <li> <p><code>[#719](https://github.com/pytest-dev/pytest-xdist/issues/719) <https://github.com/pytest-dev/pytest-xdist/issues/719></code>_: Use up-to-date <code>setup.cfg</code>/<code>pyproject.toml</code> packaging setup.</p> </li> <li> <p><code>[#720](https://github.com/pytest-dev/pytest-xdist/issues/720) <https://github.com/pytest-dev/pytest-xdist/issues/720></code>_: Require pytest>=6.2.0.</p> </li> <li> <p><code>[#721](https://github.com/pytest-dev/pytest-xdist/issues/721) <https://github.com/pytest-dev/pytest-xdist/issues/721></code>_: Started using type annotations and mypy checking internally. The types are incomplete and not published.</p> </li> </ul> <h1>pytest-xdist 2.4.0 (2021-09-20)</h1> <h… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1548/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1002459220 | PR_kwDOBm6k_c4sCfBT | 1476 | Update pytest-xdist requirement from <2.4,>=2.2.1 to >=2.2.1,<2.5 | 49699333 | closed | 0 | 1 | 2021-09-21T13:13:01Z | 2021-10-13T21:10:03Z | 2021-10-13T21:10:03Z | CONTRIBUTOR | simonw/datasette/pulls/1476 | Updates the requirements on [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's changelog</a>.</em></p> <blockquote> <h1>pytest-xdist 2.4.0 (2021-09-20)</h1> <h2>Features</h2> <ul> <li> <p><code>[#696](https://github.com/pytest-dev/pytest-xdist/issues/696) <https://github.com/pytest-dev/pytest-xdist/issues/696></code>_: On Linux, the process title now changes to indicate the current worker state (running/idle).</p> <p>Depends on the <code>setproctitle <https://pypi.org/project/setproctitle/></code>__ package, which can be installed with <code>pip install pytest-xdist[setproctitle]</code>.</p> </li> <li> <p><code>[#704](https://github.com/pytest-dev/pytest-xdist/issues/704) <https://github.com/pytest-dev/pytest-xdist/issues/704></code>_: Add support for Python 3.10.</p> </li> </ul> <h1>pytest-xdist 2.3.0 (2021-06-16)</h1> <h2>Deprecations and Removals</h2> <ul> <li><code>[#654](https://github.com/pytest-dev/pytest-xdist/issues/654) <https://github.com/pytest-dev/pytest-xdist/issues/654></code>_: Python 3.5 is no longer supported.</li> </ul> <h2>Features</h2> <ul> <li> <p><code>[#646](https://github.com/pytest-dev/pytest-xdist/issues/646) <https://github.com/pytest-dev/pytest-xdist/issues/646></code>_: Add <code>--numprocesses=logical</code> flag, which automatically uses the number of logical CPUs available, instead of physical CPUs with <code>auto</code>.</p> <p>This is very useful for test suites which are not CPU-bound.</p> </li> <li> <p><code>[#650](https://github.com/pytest-dev/pytest-xdist/issues/650) <https://github.com/pytest-dev/pytest-xdist/issues/650></code>_: Added new <code>pytest_handlecrashitem</code> hook to allow handling and rescheduling crashed items.</p> </li> </ul> <h2>Bug Fixes</h2> <ul> <li> <p><code>[#421](https://github.com/pytest-dev/pytest-xdist/issues/421) <http… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1476/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
923910375 | MDExOlB1bGxSZXF1ZXN0NjcyNjIwMTgw | 1378 | Update pytest-xdist requirement from <2.3,>=2.2.1 to >=2.2.1,<2.4 | 49699333 | closed | 0 | 1 | 2021-06-17T13:11:56Z | 2021-06-20T00:17:07Z | 2021-06-20T00:17:06Z | CONTRIBUTOR | simonw/datasette/pulls/1378 | Updates the requirements on [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's changelog</a>.</em></p> <blockquote> <h1>pytest-xdist 2.3.0 (2021-06-16)</h1> <h2>Deprecations and Removals</h2> <ul> <li><code>[#654](https://github.com/pytest-dev/pytest-xdist/issues/654) <https://github.com/pytest-dev/pytest-xdist/issues/654></code>_: Python 3.5 is no longer supported.</li> </ul> <h2>Features</h2> <ul> <li> <p><code>[#646](https://github.com/pytest-dev/pytest-xdist/issues/646) <https://github.com/pytest-dev/pytest-xdist/issues/646></code>_: Add <code>--numprocesses=logical</code> flag, which automatically uses the number of logical CPUs available, instead of physical CPUs with <code>auto</code>.</p> <p>This is very useful for test suites which are not CPU-bound.</p> </li> <li> <p><code>[#650](https://github.com/pytest-dev/pytest-xdist/issues/650) <https://github.com/pytest-dev/pytest-xdist/issues/650></code>_: Added new <code>pytest_handlecrashitem</code> hook to allow handling and rescheduling crashed items.</p> </li> </ul> <h2>Bug Fixes</h2> <ul> <li> <p><code>[#421](https://github.com/pytest-dev/pytest-xdist/issues/421) <https://github.com/pytest-dev/pytest-xdist/issues/421></code>_: Copy the parent process sys.path into local workers, to work around execnet's python -c adding the current directory to sys.path.</p> </li> <li> <p><code>[#638](https://github.com/pytest-dev/pytest-xdist/issues/638) <https://github.com/pytest-dev/pytest-xdist/issues/638></code>_: Fix issue caused by changing the branch name of the pytest repository.</p> </li> </ul> <h2>Trivial Changes</h2> <ul> <li> <p><code>[#592](https://github.com/pytest-dev/pytest-xdist/issues/592) <https://github.com/pytest-dev/pytest-xdist/issues/592></code>_: Replace master with controller where ever possible.</p> </li> <li> <p><code>[#6… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1378/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1022688960 | PR_kwDOBm6k_c4tBIEE | 1485 | Update pytest-timeout requirement from <1.5,>=1.4.2 to >=1.4.2,<2.1 | 49699333 | closed | 0 | 1 | 2021-10-11T13:10:51Z | 2021-10-13T21:09:23Z | 2021-10-13T21:09:23Z | CONTRIBUTOR | simonw/datasette/pulls/1485 | Updates the requirements on [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) to permit the latest version. <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/pytest-dev/pytest-timeout/commits">compare view</a></li> </ul> </details> <br /> 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) --- <details> <summary>Dependabot commands and options</summary> <br /> 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) </details> | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1485/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1108084641 | PR_kwDOBm6k_c4xQ0uZ | 1602 | Update pytest-timeout requirement from <2.1,>=1.4.2 to >=1.4.2,<2.2 | 49699333 | closed | 0 | 1 | 2022-01-19T13:11:50Z | 2022-03-06T01:41:50Z | 2022-03-06T01:41:49Z | CONTRIBUTOR | simonw/datasette/pulls/1602 | Updates the requirements on [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/8e4800ecbcf149790bb8035ec37dc30f3d48a127"><code>8e4800e</code></a> Fixup readme</li> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/dc1efca167ef1d466ab805595528e6c64996cdeb"><code>dc1efca</code></a> 2.1.0 release</li> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/dd9d6080763c559de1ff5b15deb9c27559dd3431"><code>dd9d608</code></a> Add custom hooks specifications for overriding setup_timeout and teardown_tim...</li> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/ed8ecd6cbb8b8acccd57f6782dab94dcde0f83ea"><code>ed8ecd6</code></a> module names, they're difficult</li> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/3ab4319c5170bc9b9d8052019103c93c2ed74c86"><code>3ab4319</code></a> Add changelog</li> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/4f7ebae5789902b3097dbe618b109b8cafa3fd64"><code>4f7ebae</code></a> Replace deprecated py.io.get_terminal_width() with shutil.get_terminal_size()...</li> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/b8a2fa6e56330ca6510c50b59ba8ee75ec962822"><code>b8a2fa6</code></a> Prep release</li> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/951972da1c11ea5ca8ac76691f7c78e5deb1faaf"><code>951972d</code></a> Update changelog</li> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/748a9c37466b7381626a5f4152ec5dc9d2cc3907"><code>748a9c3</code></a> Making detection of whether a debugger is currently attached more flexible. (...</li> <li><a href="https://github.com/pytest-dev/pytest-timeout/commit/f8a46a194c89f1459fd97d5a8fa618e8326a2bfa"><code>f8a46a1</code></a> Github removed the git protocol (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-timeout/issues/112">#112</a>)</li> <li>Additional commits viewable in <a hr… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1602/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1306020162 | PR_kwDOBm6k_c47eFtx | 1769 | Update pytest-asyncio requirement from <0.19,>=0.17 to >=0.17,<0.20 | 49699333 | closed | 0 | 1 | 2022-07-15T13:10:15Z | 2022-07-18T01:06:38Z | 2022-07-18T01:06:38Z | CONTRIBUTOR | simonw/datasette/pulls/1769 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-asyncio/releases">pytest-asyncio's releases</a>.</em></p> <blockquote> <h2>pytest-asyncio 0.19.0</h2> <hr /> <h2>title: 'pytest-asyncio: pytest support for asyncio'</h2> <p><a href="https://pypi.python.org/pypi/pytest-asyncio"><img src="https://img.shields.io/pypi/v/pytest-asyncio.svg" alt="image" /></a></p> <p><a href="https://github.com/pytest-dev/pytest-asyncio/actions?workflow=CI"><img src="https://github.com/pytest-dev/pytest-asyncio/workflows/CI/badge.svg" alt="image" /></a></p> <p><a href="https://codecov.io/gh/pytest-dev/pytest-asyncio"><img src="https://codecov.io/gh/pytest-dev/pytest-asyncio/branch/master/graph/badge.svg" alt="image" /></a></p> <p><a href="https://github.com/pytest-dev/pytest-asyncio"><img src="https://img.shields.io/pypi/pyversions/pytest-asyncio.svg" alt="Supported Python versions" /></a></p> <p><a href="https://github.com/ambv/black"><img src="https://img.shields.io/badge/code%20style-black-000000.svg" alt="image" /></a></p> <p>pytest-asyncio is an Apache2 licensed library, written in Python, for testing asyncio code with pytest.</p> <p>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.</p> <pre lang="{.sourceCode" data-meta=".python}"><code>@pytest.mark.asyncio async def test_some_asyncio_code(): res = await library.do_something() assert b"expected result" == res </code></pre> <p>pytest-asyncio has been strongly influenced by <a href="https://github.com/eugeniy/pytest-tornado">pytest-tornado</a>.</p> <h1>Features</h1> <ul> <li>fixtures for creating and injecting versions of the asyncio event loop</li> <li>fixtures for injecting unused tcp/udp ports</li> <li>pytest markers for treatin… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1769/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1125973221 | PR_kwDOBm6k_c4yK44E | 1631 | Update pytest-asyncio requirement from <0.17,>=0.10 to >=0.10,<0.19 | 49699333 | closed | 0 | 1 | 2022-02-07T13:13:19Z | 2022-03-06T01:29:54Z | 2022-03-06T01:29:53Z | CONTRIBUTOR | simonw/datasette/pulls/1631 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-asyncio/releases">pytest-asyncio's releases</a>.</em></p> <blockquote> <h2>pytest-asyncio 0.18.0</h2> <hr /> <h2>title: 'pytest-asyncio: pytest support for asyncio'</h2> <p><a href="https://pypi.python.org/pypi/pytest-asyncio"><img src="https://img.shields.io/pypi/v/pytest-asyncio.svg" alt="image" /></a></p> <p><a href="https://github.com/pytest-dev/pytest-asyncio/actions?workflow=CI"><img src="https://github.com/pytest-dev/pytest-asyncio/workflows/CI/badge.svg" alt="image" /></a></p> <p><a href="https://codecov.io/gh/pytest-dev/pytest-asyncio"><img src="https://codecov.io/gh/pytest-dev/pytest-asyncio/branch/master/graph/badge.svg" alt="image" /></a></p> <p><a href="https://github.com/pytest-dev/pytest-asyncio"><img src="https://img.shields.io/pypi/pyversions/pytest-asyncio.svg" alt="Supported Python versions" /></a></p> <p><a href="https://github.com/ambv/black"><img src="https://img.shields.io/badge/code%20style-black-000000.svg" alt="image" /></a></p> <p>pytest-asyncio is an Apache2 licensed library, written in Python, for testing asyncio code with pytest.</p> <p>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.</p> <pre lang="{.sourceCode" data-meta=".python}"><code>@pytest.mark.asyncio async def test_some_asyncio_code(): res = await library.do_something() assert b"expected result" == res </code></pre> <p>pytest-asyncio has been strongly influenced by <a href="https://github.com/eugeniy/pytest-tornado">pytest-tornado</a>.</p> <h1>Features</h1> <ul> <li>fixtures for creating and injecting versions of the asyncio event loop</li> <li>fixtures for injecting unused tcp/udp ports</li> <li>pytest markers for treatin… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1631/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1101705012 | PR_kwDOBm6k_c4w7eqc | 1593 | Update pytest-asyncio requirement from <0.17,>=0.10 to >=0.10,<0.18 | 49699333 | closed | 0 | 2 | 2022-01-13T13:11:50Z | 2022-02-07T13:13:24Z | 2022-02-07T13:13:23Z | CONTRIBUTOR | simonw/datasette/pulls/1593 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-asyncio/releases">pytest-asyncio's releases</a>.</em></p> <blockquote> <h2>pytest-asyncio 0.17.0</h2> <hr /> <h2>title: 'pytest-asyncio: pytest support for asyncio'</h2> <p><a href="https://pypi.python.org/pypi/pytest-asyncio"><img src="https://img.shields.io/pypi/v/pytest-asyncio.svg" alt="image" /></a></p> <p><a href="https://github.com/pytest-dev/pytest-asyncio/actions?workflow=CI"><img src="https://github.com/pytest-dev/pytest-asyncio/workflows/CI/badge.svg" alt="image" /></a></p> <p><a href="https://codecov.io/gh/pytest-dev/pytest-asyncio"><img src="https://codecov.io/gh/pytest-dev/pytest-asyncio/branch/master/graph/badge.svg" alt="image" /></a></p> <p><a href="https://github.com/pytest-dev/pytest-asyncio"><img src="https://img.shields.io/pypi/pyversions/pytest-asyncio.svg" alt="Supported Python versions" /></a></p> <p><a href="https://github.com/ambv/black"><img src="https://img.shields.io/badge/code%20style-black-000000.svg" alt="image" /></a></p> <p>pytest-asyncio is an Apache2 licensed library, written in Python, for testing asyncio code with pytest.</p> <p>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.</p> <pre lang="{.sourceCode" data-meta=".python}"><code>@pytest.mark.asyncio async def test_some_asyncio_code(): res = await library.do_something() assert b"expected result" == res </code></pre> <p>pytest-asyncio has been strongly influenced by <a href="https://github.com/eugeniy/pytest-tornado">pytest-tornado</a>.</p> <h1>Features</h1> <ul> <li>fixtures for creating and injecting versions of the asyncio event loop</li> <li>fixtures for injecting unused tcp/udp ports</li> <li>pytest markers for treatin… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1593/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1029100823 | PR_kwDOBm6k_c4tU5cz | 1494 | Update pytest-asyncio requirement from <0.16,>=0.10 to >=0.10,<0.17 | 49699333 | closed | 0 | 1 | 2021-10-18T13:14:17Z | 2021-10-24T22:22:40Z | 2021-10-24T22:22:39Z | CONTRIBUTOR | simonw/datasette/pulls/1494 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/f2fe98e5cbc4a25e31c24f5932d66f9c903f0fe5"><code>f2fe98e</code></a> 0.16.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/4e1df3191aee1a902c873901b35d82363e13b08c"><code>4e1df31</code></a> Remove obsolete test, add make test</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/6ec76477061ea14394cadbf2cef673b04971ef4d"><code>6ec7647</code></a> feat: Add support for Python 3.10.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/42ff5d176b2be5aa77a43f586179d563ae2196b5"><code>42ff5d1</code></a> ci: Include Python 3.10 in the CI test run.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/be3b32777b32774c288b604f0d95eacb32a4d1a2"><code>be3b327</code></a> build: Include Python 3.10 in Tox test runs.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/1c283bd821249ee3c695ae59bb022d31a1473ae2"><code>1c283bd</code></a> refactor: test_async_fixtures_with_finalizer no longer trigger a DeprecationW...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/2751982f3a84d55aad103ea039cc779537e90720"><code>2751982</code></a> refactor: Replaced tests asserting that the event loop is properly closed.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/70989fd7b626a86db4f75acc40057f982f2c76dd"><code>70989fd</code></a> refactor: Grouped test cases together that are related to the use of the asyn...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b27abe8d138998a75cc4eb519be810439d3ed0d9"><code>b27abe8</code></a> refactor: Removed TestUnexistingLoop.remove_loop fixture, because it has no e...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/e3ec312c1d55b3688e4ce115df7791a0478582d1"><code>e3ec312</code></a> Adjusted Hypothesis integration tes… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1494/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
611874514 | MDExOlB1bGxSZXF1ZXN0NDEyOTUxMTkx | 753 | Update pytest-asyncio requirement from ~=0.10.0 to >=0.10,<0.13 | 27856297 | closed | 0 | 0 | 2020-05-04T13:27:19Z | 2020-05-04T17:41:01Z | 2020-05-04T17:40:49Z | CONTRIBUTOR | simonw/datasette/pulls/753 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b8e2a45e152a196cef7fdb6ddcf3e2d67a0f01ca"><code>b8e2a45</code></a> 0.12.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/06580c6413e905c5fddcc57c2895e9d3d2913847"><code>06580c6</code></a> Update changelog</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b45de23c0de0acc843c3f871985ba16fdfb1d5fd"><code>b45de23</code></a> Fixed failing test case, 'test_asyncio_marker_without_loop'.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/238ccedde8a196c16007a8a2b1ea1eeeb8db86a3"><code>238cced</code></a> Put event_loop first among the fixtures of asyncio tests, fixes <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-asyncio/issues/154">#154</a>.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/e5e3dc7a90685a56747a2d4c3c770d74d573c497"><code>e5e3dc7</code></a> Added unittests for issue <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-asyncio/issues/154">#154</a>.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/a7e5795335b823b4d58bb6b38b6e653f0e0d35b0"><code>a7e5795</code></a> 0.12.0 open for business!</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/1026c39495a963ff3e5fee7da2ae9f3a5d21fb83"><code>1026c39</code></a> 0.11.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/ab2b14048a691479fa9f8811aaa558018c6db6e3"><code>ab2b140</code></a> Test on Python 3.8, drop 3.3 and 3.4</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/6397a2255e3e9ef858439b164018438a8106f454"><code>6397a22</code></a> plugin: Use pytest 5.4.0 new Function API</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/21a0f9476be84ca0c84af60057f0f24c5fb2fd71"><code>21a0f94</code></a> Replace yield_fixture() by fixture()</li>… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/753/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
861331159 | MDExOlB1bGxSZXF1ZXN0NjE4MDExOTc3 | 1303 | Update pytest-asyncio requirement from <0.15,>=0.10 to >=0.10,<0.16 | 27856297 | closed | 0 | 1 | 2021-04-19T13:49:12Z | 2021-04-19T18:18:17Z | 2021-04-19T18:18:17Z | CONTRIBUTOR | simonw/datasette/pulls/1303 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/7aa574af1830665be23b983407fdff8f5fcf3ccc"><code>7aa574a</code></a> 0.15.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/dadff91937e03c9cc08b290d14c8bc72aa793f20"><code>dadff91</code></a> Remove poetry</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/d4b79ea6481cb498a2fd3feb8a05f48249559d55"><code>d4b79ea</code></a> Lint</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/22d91b2a6df1b3557cfc0370736d7cad4ba8bef4"><code>22d91b2</code></a> Black linting</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/5c47b78ebfab7a42a9450b88e4a13bf5b135e228"><code>5c47b78</code></a> Covecov</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/22e338a4dbf67a08146757cc3a2320b7e88c7eae"><code>22e338a</code></a> Fix CI</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/70cbdeff9f9b04635714b2347ebdbea71acd93a6"><code>70cbdef</code></a> Travis -> GitHub Actions</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/740af1843f1dafb47ba6db236c1e354731993949"><code>740af18</code></a> Close event loops when replacing them</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/a5161343442fb64b7fcb91dfc5841b9f79698989"><code>a516134</code></a> plugin: Set unused_tcp_port_factory scope to 'session'</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/1bb7f300f4f5c31d47675ed018e9a46ecd4d8496"><code>1bb7f30</code></a> refactor: Removed the "_35" and "_36" suffixes from test modules.</li> <li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-asyncio/compare/v0.10.0...v0.15.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1303/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
644610729 | MDExOlB1bGxSZXF1ZXN0NDM5MjAzODA4 | 866 | Update pytest-asyncio requirement from <0.13,>=0.10 to >=0.10,<0.15 | 27856297 | closed | 0 | 1 | 2020-06-24T13:21:47Z | 2020-06-24T18:50:57Z | 2020-06-24T18:50:56Z | CONTRIBUTOR | simonw/datasette/pulls/866 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/53f3da7aefc719e62cbaa89e57ab68a7e12cc3c3"><code>53f3da7</code></a> Prepare for release</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/e99569de645c37fc048964ab4c5073529080fd86"><code>e99569d</code></a> A line is added to the changelog.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/4099b6351793611acabd8b26d93aabd44ce200c5"><code>4099b63</code></a> One import is not needed</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/68513b33616ff2ef93972acf1b992e7b1a18c4d1"><code>68513b3</code></a> Clarify names and comments, according to yanlend comments 26 May</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/907e8f24b9444f50cb30f17265665706882bc01f"><code>907e8f2</code></a> FIX new test_cases on python 3.5 & 3.6</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/51d986cec83fdbc14fa08015424c79397afc7ad9"><code>51d986c</code></a> To solve test cases that fail:</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/f97e900f1fcb51a572a1b861c95ac49e69bbfdf9"><code>f97e900</code></a> 1) Test case (test_async_fixtures_with_finalizer) refactoring to pass on pyth...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/c1131f8b5313189508dc81d7ef1937ccb136658b"><code>c1131f8</code></a> 1) A new test case that fails with 0.12.0, and pass with this commit.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/7a255bc4cf82aba7aa4b213c1a97c81d532c1e85"><code>7a255bc</code></a> 0.13.0 open for business</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b8e2a45e152a196cef7fdb6ddcf3e2d67a0f01ca"><code>b8e2a45</code></a> 0.12.0</li> <li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-asyncio/compare/v0.10.0...v0.14.0… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/866/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
604001627 | MDExOlB1bGxSZXF1ZXN0NDA2Njc3MjA1 | 730 | Update pytest-asyncio requirement from ~=0.10.0 to >=0.10,<0.12 | 27856297 | closed | 0 | 1 | 2020-04-21T13:32:35Z | 2020-05-04T13:27:24Z | 2020-05-04T13:27:23Z | CONTRIBUTOR | simonw/datasette/pulls/730 | Updates the requirements on [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/1026c39495a963ff3e5fee7da2ae9f3a5d21fb83"><code>1026c39</code></a> 0.11.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/ab2b14048a691479fa9f8811aaa558018c6db6e3"><code>ab2b140</code></a> Test on Python 3.8, drop 3.3 and 3.4</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/6397a2255e3e9ef858439b164018438a8106f454"><code>6397a22</code></a> plugin: Use pytest 5.4.0 new Function API</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/21a0f9476be84ca0c84af60057f0f24c5fb2fd71"><code>21a0f94</code></a> Replace yield_fixture() by fixture()</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/964b295ba280a6e217159706279b67f8f4cbb5f4"><code>964b295</code></a> Added min hypothesis version so that bugfix for <a href="https://github.com/Hypothesis">https://github.com/Hypothesis</a>...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/4a11a206fbcf88ee18cbed2d01041e61c20a9a48"><code>4a11a20</code></a> Add max supported pytest version to < 5.4.0 to prevent fails until <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-asyncio/issues/141">#141</a> is fi...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b3055940db49cc17e36b66631e3d863e15fe34e4"><code>b305594</code></a> Change event_loop to module scope in hypothesis tests, fixing <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-asyncio/issues/145">#145</a>.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/d5a0f4789e7fecb58d509409e2c537b206c4fde2"><code>d5a0f47</code></a> Enable test_subprocess to be run on win, by changing to ProactorEventLoop in ...</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/d07cd2d447cf313446c4e00e25a35cb2adcb2c63"><code>d07cd2d</code><… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/730/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
980228553 | MDExOlB1bGxSZXF1ZXN0NzIwNTA2MTM1 | 1448 | Update pluggy requirement from ~=0.13.0 to >=0.13,<1.1 | 49699333 | closed | 0 | 1 | 2021-08-26T13:09:52Z | 2021-10-13T21:11:01Z | 2021-10-13T21:11:00Z | CONTRIBUTOR | simonw/datasette/pulls/1448 | Updates the requirements on [pluggy](https://github.com/pytest-dev/pluggy) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pluggy/blob/main/CHANGELOG.rst">pluggy's changelog</a>.</em></p> <blockquote> <h1>pluggy 1.0.0 (2021-08-25)</h1> <h2>Deprecations and Removals</h2> <ul> <li> <p><code>[#116](https://github.com/pytest-dev/pluggy/issues/116) <https://github.com/pytest-dev/pluggy/issues/116></code>_: Remove deprecated <code>implprefix</code> support. Decorate hook implementations using an instance of HookimplMarker instead. The deprecation was announced in release <code>0.7.0</code>.</p> </li> <li> <p><code>[#120](https://github.com/pytest-dev/pluggy/issues/120) <https://github.com/pytest-dev/pluggy/issues/120></code>_: Remove the deprecated <code>proc</code> argument to <code>call_historic</code>. Use <code>result_callback</code> instead, which has the same behavior. The deprecation was announced in release <code>0.7.0</code>.</p> </li> <li> <p><code>[#265](https://github.com/pytest-dev/pluggy/issues/265) <https://github.com/pytest-dev/pluggy/issues/265></code>_: Remove the <code>_Result.result</code> property. Use <code>_Result.get_result()</code> instead. Note that unlike <code>result</code>, <code>get_result()</code> raises the exception if the hook raised. The deprecation was announced in release <code>0.6.0</code>.</p> </li> <li> <p><code>[#267](https://github.com/pytest-dev/pluggy/issues/267) <https://github.com/pytest-dev/pluggy/issues/267></code>_: Remove official support for Python 3.4.</p> </li> <li> <p><code>[#272](https://github.com/pytest-dev/pluggy/issues/272) <https://github.com/pytest-dev/pluggy/issues/272></code>_: Dropped support for Python 2. Continue to use pluggy 0.13.x for Python 2 support.</p> </li> <li> <p><code>[#308](https://github.com/pytest-dev/pluggy/issues/308) <https://github.com/pytest-dev/pluggy/issues/308></code>_: Remove official support for Python 3.5.</p> </li>… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1448/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
603242257 | MDExOlB1bGxSZXF1ZXN0NDA2MDY3MDE5 | 728 | Update mergedeep requirement from ~=1.1.1 to >=1.1.1,<1.4.0 | 27856297 | closed | 0 | 0 | 2020-04-20T13:33:23Z | 2020-05-04T16:45:58Z | 2020-05-04T16:45:49Z | CONTRIBUTOR | simonw/datasette/pulls/728 | Updates the requirements on [mergedeep](https://github.com/clarketm/mergedeep) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clarketm/mergedeep/commit/3d6e7b4c9c25b64eba0834da6f54c8dd309767ea"><code>3d6e7b4</code></a> v1.3.0 - support additive merging of <code>Counter</code> types</li> <li><a href="https://github.com/clarketm/mergedeep/commit/56a258a0b58366aa205322476db1b3f84aac65d9"><code>56a258a</code></a> v1.2.1 - tidy docs and variable names</li> <li><a href="https://github.com/clarketm/mergedeep/commit/61ab21382ba20d7973a848c942eb36bd33bc7cd0"><code>61ab213</code></a> v1.2.0 - support both TYPESAFE_REPLACE and TYPESAFE_ADDITIVE merge strategies...</li> <li><a href="https://github.com/clarketm/mergedeep/commit/b331bb5f1580d8290dcf5c6e7690fd3b9708b5cd"><code>b331bb5</code></a> cleanup Makefile</li> <li><a href="https://github.com/clarketm/mergedeep/commit/6f577bf29750c073f6764ffbea29ab6d6759a8d3"><code>6f577bf</code></a> officially label support for python3.8</li> <li><a href="https://github.com/clarketm/mergedeep/commit/84faf37d2da81d4356a4ade4c015fc3964262585"><code>84faf37</code></a> use pipenv for managing dev dependencies</li> <li><a href="https://github.com/clarketm/mergedeep/commit/3a8761a736c8cb7a324bd9e6f4d50a58898a3ba9"><code>3a8761a</code></a> Update README.md</li> <li>See full diff in <a href="https://github.com/clarketm/mergedeep/compare/v1.1.1...v1.3.0">compare view</a></li> </ul> </details> <br /> 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) --- <details> <summary>Dependabot commands and options</summary> <br /> 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 th… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/728/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1180778860 | PR_kwDOBm6k_c41BFWj | 1685 | Update jinja2 requirement from <3.1.0,>=2.10.3 to >=2.10.3,<3.2.0 | 49699333 | closed | 0 | 3 | 2022-03-25T13:12:13Z | 2022-09-05T18:36:49Z | 2022-09-05T18:36:48Z | CONTRIBUTOR | simonw/datasette/pulls/1685 | Updates the requirements on [jinja2](https://github.com/pallets/jinja) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pallets/jinja/releases">jinja2's releases</a>.</em></p> <blockquote> <h2>3.1.0</h2> <p>This is a feature release, which includes new features and removes previously deprecated features. The 3.1.x branch is now the supported bugfix branch, the 3.0.x branch has become a tag marking the end of support for that branch. We encourage everyone to upgrade, and to use a tool such as <a href="https://pypi.org/project/pip-tools/">pip-tools</a> to pin all dependencies and control upgrades. We also encourage upgrading to MarkupSafe 2.1.1, the latest version at this time.</p> <ul> <li>Changes: <a href="https://jinja.palletsprojects.com/en/3.1.x/changes/#version-3-1-0">https://jinja.palletsprojects.com/en/3.1.x/changes/#version-3-1-0</a></li> <li>Milestone: <a href="https://github.com/pallets/jinja/milestone/8?closed=1">https://github.com/pallets/jinja/milestone/8?closed=1</a></li> <li>MarkupSafe changes: <a href="https://markupsafe.palletsprojects.com/en/2.1.x/changes/#version-2-1-1">https://markupsafe.palletsprojects.com/en/2.1.x/changes/#version-2-1-1</a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pallets/jinja/blob/main/CHANGES.rst">jinja2's changelog</a>.</em></p> <blockquote> <h2>Version 3.1.0</h2> <p>Released 2022-03-24</p> <ul> <li> <p>Drop support for Python 3.6. :pr:<code>1534</code></p> </li> <li> <p>Remove previously deprecated code. :pr:<code>1544</code></p> <ul> <li><code>WithExtension</code> and <code>AutoEscapeExtension</code> are built-in now.</li> <li><code>contextfilter</code> and <code>contextfunction</code> are replaced by <code>pass_context</code>. <code>evalcontextfilter</code> and <code>evalcontextfunction</code> are replaced by <code>pass_eval_context</code>. <code>environmentfilter</code> and <code>environmentfunction</code> are replac… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1685/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
890073940 | MDExOlB1bGxSZXF1ZXN0NjQzMTQ5MzIw | 1324 | Update jinja2 requirement from <2.12.0,>=2.10.3 to >=2.10.3,<3.1.0 | 49699333 | closed | 0 | 2 | 2021-05-12T13:08:59Z | 2021-05-17T17:19:41Z | 2021-05-17T17:19:40Z | CONTRIBUTOR | simonw/datasette/pulls/1324 | Updates the requirements on [jinja2](https://github.com/pallets/jinja) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pallets/jinja/releases">jinja2's releases</a>.</em></p> <blockquote> <h2>3.0.0</h2> <p>New major versions of all the core Pallets libraries, including Jinja 3.0, have been released! :tada:</p> <ul> <li>Read the announcement on our blog: <a href="https://palletsprojects.com/blog/flask-2-0-released/">https://palletsprojects.com/blog/flask-2-0-released/</a></li> <li>Read the full list of changes: <a href="https://jinja.palletsprojects.com/changes/#version-3-0-0">https://jinja.palletsprojects.com/changes/#version-3-0-0</a></li> <li>Retweet the announcement on Twitter: <a href="https://twitter.com/PalletsTeam/status/1392266507296514048">https://twitter.com/PalletsTeam/status/1392266507296514048</a></li> <li>Follow our blog, Twitter, or GitHub to see future announcements.</li> </ul> <p>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.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pallets/jinja/blob/main/CHANGES.rst">jinja2's changelog</a>.</em></p> <blockquote> <h2>Version 3.0.0</h2> <p>Released 2021-05-11</p> <ul> <li>Drop support for Python 2.7 and 3.5.</li> <li>Bump MarkupSafe dependency to >=1.1.</li> <li>Bump Babel optional dependency to >=2.1.</li> <li>Remove code that was marked deprecated.</li> <li>Add type hinting. :pr:<code>1412</code></li> <li>Use :pep:<code>451</code> API to load templates with :class:<code>~loaders.PackageLoader</code>. :issue:<code>1168</code></li> <li>Fix a bug that caused imported macros to not have access to the current template's globals. :issue:<code>688</code></li> <li>Add ability to ignore <code>trim_blocks</code> using <code>+%}</code>. :issue:<code… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1324/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
596246006 | MDExOlB1bGxSZXF1ZXN0NDAwNTc5MTM2 | 722 | Update jinja2 requirement from ~=2.10.3 to >=2.10.3,<2.12.0 | 27856297 | closed | 0 | 0 | 2020-04-08T01:25:24Z | 2020-05-04T17:13:26Z | 2020-05-04T17:13:16Z | CONTRIBUTOR | simonw/datasette/pulls/722 | Updates the requirements on [jinja2](https://github.com/pallets/jinja) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pallets/jinja/releases">jinja2's releases</a>.</em></p> <blockquote> <h2>2.11.1</h2> <p>This fixes an issue in async environment when indexing the result of an attribute lookup, like <code>{{ data.items[1:] }}</code>.</p> <ul> <li>Changes: <a href="https://jinja.palletsprojects.com/en/2.11.x/changelog/#version-2-11-1">https://jinja.palletsprojects.com/en/2.11.x/changelog/#version-2-11-1</a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pallets/jinja/blob/master/CHANGES.rst">jinja2's changelog</a>.</em></p> <blockquote> <h1>Version 2.11.1</h1> <p>Released 2020-01-30</p> <ul> <li>Fix a bug that prevented looking up a key after an attribute (<code>{{ data.items[1:] }}</code>) in an async template. 1141</li> </ul> <h1>Version 2.11.0</h1> <p>Released 2020-01-27</p> <ul> <li>Drop support for Python 2.6, 3.3, and 3.4. This will be the last version to support Python 2.7 and 3.5.</li> <li>Added a new <code>ChainableUndefined</code> class to support getitem and getattr on an undefined object. 977</li> <li>Allow <code>{%+</code> syntax (with NOP behavior) when <code>lstrip_blocks</code> is disabled. 748</li> <li>Added a <code>default</code> parameter for the <code>map</code> filter. 557</li> <li>Exclude environment globals from meta.find_undeclared_variables. 931</li> <li>Float literals can be written with scientific notation, like 2.56e-3. 912, 922</li> <li>Int and float literals can be written with the '_' separator for legibility, like 12_345. 923</li> <li>Fix a bug causing deadlocks in <code>LRUCache.setdefault</code>. 1000</li> <li>The <code>trim</code> filter takes an optional string of characters to trim. 828</li> <li>A new <code>jinja2.ext.debug</code> extension adds a <code>{% debug %}</code> tag to quickly dump the current context and available filte… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/722/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1083246400 | PR_kwDOBm6k_c4wAMK8 | 1562 | Update janus requirement from <0.8,>=0.6.2 to >=0.6.2,<1.1 | 49699333 | closed | 0 | 4 | 2021-12-17T13:11:10Z | 2021-12-17T23:08:29Z | 2021-12-17T23:08:28Z | CONTRIBUTOR | simonw/datasette/pulls/1562 | Updates the requirements on [janus](https://github.com/aio-libs/janus) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/aio-libs/janus/releases">janus's releases</a>.</em></p> <blockquote> <h2>janus 1.0.0 release</h2> <ul> <li>Dropped Python 3.6 support</li> <li>Janus is marked as stable, no API changes was made for years</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/aio-libs/janus/blob/master/CHANGES.rst">janus's changelog</a>.</em></p> <blockquote> <h2>1.0.0 (2021-12-17)</h2> <ul> <li>Drop Python 3.6 support</li> </ul> <h2>0.7.0 (2021-11-24)</h2> <ul> <li>Add SyncQueue and AsyncQueue Protocols to provide type hints for sync and async queues <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/374">#374</a></li> </ul> <h2>0.6.2 (2021-10-24)</h2> <ul> <li>Fix Python 3.10 compatibility <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/358">#358</a></li> </ul> <h2>0.6.1 (2020-10-26)</h2> <ul> <li> <p>Raise RuntimeError on queue.join() after queue closing. <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/295">#295</a></p> </li> <li> <p>Replace <code>timeout</code> type from <code>Optional[int]</code> to <code>Optional[float]</code> <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/267">#267</a></p> </li> </ul> <h2>0.6.0 (2020-10-10)</h2> <ul> <li> <p>Drop Python 3.5, the minimal supported version is Python 3.6</p> </li> <li> <p>Support Python 3.9</p> </li> <li> <p>Refomat with <code>black</code></p> </li> </ul> <h2>0.5.0 (2020-04-23)</h2> <ul> <li>Remove explicit loop arguments and forbid creating queues outside event loops <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/246">#246</a></li> </ul> <h2>0.4.0 (2018-07-28)</h2> <ul> <li> <p>Add <code>py.typed</code> macro <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/89">#89</a></p> </li> <li> <p>Drop p… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1562/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
1062414013 | PR_kwDOBm6k_c4u9wQq | 1529 | Update janus requirement from <0.7,>=0.6.2 to >=0.6.2,<0.8 | 49699333 | closed | 0 | 1 | 2021-11-24T13:12:42Z | 2021-11-30T02:37:13Z | 2021-11-30T02:37:13Z | CONTRIBUTOR | simonw/datasette/pulls/1529 | Updates the requirements on [janus](https://github.com/aio-libs/janus) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/aio-libs/janus/blob/master/CHANGES.rst">janus's changelog</a>.</em></p> <blockquote> <h2>0.7.0 (2021-11-24)</h2> <ul> <li>Add SyncQueue and AsyncQueue Protocols to provide type hints for sync and async queues <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/374">#374</a></li> </ul> <h2>0.6.2 (2021-10-24)</h2> <ul> <li>Fix Python 3.10 compatibility <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/358">#358</a></li> </ul> <h2>0.6.1 (2020-10-26)</h2> <ul> <li> <p>Raise RuntimeError on queue.join() after queue closing. <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/295">#295</a></p> </li> <li> <p>Replace <code>timeout</code> type from <code>Optional[int]</code> to <code>Optional[float]</code> <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/267">#267</a></p> </li> </ul> <h2>0.6.0 (2020-10-10)</h2> <ul> <li> <p>Drop Python 3.5, the minimal supported version is Python 3.6</p> </li> <li> <p>Support Python 3.9</p> </li> <li> <p>Refomat with <code>black</code></p> </li> </ul> <h2>0.5.0 (2020-04-23)</h2> <ul> <li>Remove explicit loop arguments and forbid creating queues outside event loops <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/246">#246</a></li> </ul> <h2>0.4.0 (2018-07-28)</h2> <ul> <li> <p>Add <code>py.typed</code> macro <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/89">#89</a></p> </li> <li> <p>Drop python 3.4 support and fix minimal version python3.5.3 <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/88">#88</a></p> </li> <li> <p>Add property with that indicates if queue is closed <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/86">#86</a></p> </li> </ul> <h2>0.3.2 (2018-07-06)</h2> <ul> <li>Fixed python 3.7 support <a href="https://github-redirect.depe… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1529/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
719381863 | MDExOlB1bGxSZXF1ZXN0NTAxNTc5MDg4 | 1017 | Update janus requirement from <0.6,>=0.4 to >=0.4,<0.7 | 27856297 | closed | 0 | 1 | 2020-10-12T13:29:46Z | 2020-10-14T21:52:08Z | 2020-10-14T21:52:07Z | CONTRIBUTOR | simonw/datasette/pulls/1017 | Updates the requirements on [janus](https://github.com/aio-libs/janus) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/aio-libs/janus/blob/master/CHANGES.rst">janus's changelog</a>.</em></p> <blockquote> <h1>Changes</h1> <h2>0.5.0 (2020-04-23)</h2> <ul> <li>Remove explicit loop arguments and forbid creating queues outside event loops <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/246">#246</a></li> </ul> <h2>0.4.0 (2018-07-28)</h2> <ul> <li>Add <code>py.typed</code> macro <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/89">#89</a></li> <li>Drop python 3.4 support and fix minimal version python3.5.3 <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/88">#88</a></li> <li>Add property with that indicates if queue is closed <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/86">#86</a></li> </ul> <h2>0.3.2 (2018-07-06)</h2> <ul> <li>Fixed python 3.7 support <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/97">#97</a></li> </ul> <h2>0.3.1 (2018-01-30)</h2> <ul> <li>Fixed bug with join() in case tasks are added by sync_q.put() <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/75">#75</a></li> </ul> <h2>0.3.0 (2017-02-21)</h2> <ul> <li>Expose unfinished_tasks property <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/34">#34</a></li> </ul> <h2>0.2.4 (2016-12-05)</h2> <ul> <li>Restore tarball deploying</li> </ul> <h2>0.2.3 (2016-07-12)</h2> <ul> <li>Fix exception type</li> </ul> <h2>0.2.2 (2016-07-11)</h2> <ul> <li>Update asyncio.async() to use asyncio.ensure_future() <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/6">#6</a></li> </ul> <h2>0.2.1 (2016-03-24)</h2> <ul> <li>Fix python setup.py test command <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/4">#4</a></li> </ul> <!-- raw HTML omitted --> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1017/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
605546606 | MDExOlB1bGxSZXF1ZXN0NDA3OTI5MTI4 | 734 | Update janus requirement from ~=0.4.0 to >=0.4,<0.6 | 27856297 | closed | 0 | 0 | 2020-04-23T13:43:45Z | 2020-05-04T16:48:14Z | 2020-05-04T16:48:04Z | CONTRIBUTOR | simonw/datasette/pulls/734 | Updates the requirements on [janus](https://github.com/aio-libs/janus) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/aio-libs/janus/blob/master/CHANGES.rst">janus's changelog</a>.</em></p> <blockquote> <h1>0.5.0 (2020-04-23)</h1> <ul> <li>Remove explicit loop arguments and forbid creating queues outside event loops <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/246">#246</a></li> </ul> <h1>0.4.0 (2018-07-28)</h1> <ul> <li>Add <code>py.typed</code> macro <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/89">#89</a></li> <li>Drop python 3.4 support and fix minimal version python3.5.3 <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/88">#88</a></li> <li>Add property with that indicates if queue is closed <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/86">#86</a></li> </ul> <h1>0.3.2 (2018-07-06)</h1> <ul> <li>Fixed python 3.7 support <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/97">#97</a></li> </ul> <h1>0.3.1 (2018-01-30)</h1> <ul> <li>Fixed bug with join() in case tasks are added by sync_q.put() <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/75">#75</a></li> </ul> <h1>0.3.0 (2017-02-21)</h1> <ul> <li>Expose unfinished_tasks property <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/34">#34</a></li> </ul> <h1>0.2.4 (2016-12-05)</h1> <ul> <li>Restore tarball deploying</li> </ul> <h1>0.2.3 (2016-07-12)</h1> <ul> <li>Fix exception type</li> </ul> <h1>0.2.2 (2016-07-11)</h1> <ul> <li>Update asyncio.async() to use asyncio.ensure_future() <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/6">#6</a></li> </ul> <h1>0.2.1 (2016-03-24)</h1> <ul> <li>Fix python setup.py test command <a href="https://github-redirect.dependabot.com/aio-libs/janus/issues/4">#4</a></li> </ul> <h1>0.2.0 (2015-09-20)</h1> </tr></table> ... (truncated) </blockquote> </details> <details> <summary>Commits</summ… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/734/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 | |||||
890073989 | MDExOlB1bGxSZXF1ZXN0NjQzMTQ5MzY0 | 1325 | Update itsdangerous requirement from ~=1.1 to >=1.1,<3.0 | 49699333 | closed | 0 | 2 | 2021-05-12T13:09:03Z | 2021-05-22T23:54:25Z | 2021-05-22T23:54:25Z | CONTRIBUTOR | simonw/datasette/pulls/1325 | Updates the requirements on [itsdangerous](https://github.com/pallets/itsdangerous) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pallets/itsdangerous/releases">itsdangerous's releases</a>.</em></p> <blockquote> <h2>2.0.0</h2> <p>New major versions of all the core Pallets libraries, including ItsDangerous 2.0, have been released! :tada:</p> <ul> <li>Read the announcement on our blog: <a href="https://palletsprojects.com/blog/flask-2-0-released/">https://palletsprojects.com/blog/flask-2-0-released/</a></li> <li>Read the full list of changes: <a href="https://itsdangerous.palletsprojects.com/changes/#version-2-0-0">https://itsdangerous.palletsprojects.com/changes/#version-2-0-0</a></li> <li>Retweet the announcement on Twitter: <a href="https://twitter.com/PalletsTeam/status/1392266507296514048">https://twitter.com/PalletsTeam/status/1392266507296514048</a></li> <li>Follow our blog, Twitter, or GitHub to see future announcements.</li> </ul> <p>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.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pallets/itsdangerous/blob/main/CHANGES.rst">itsdangerous's changelog</a>.</em></p> <blockquote> <h2>Version 2.0.0</h2> <p>Released 2021-05-11</p> <ul> <li>Drop support for Python 2 and 3.5.</li> <li>JWS support (<code>JSONWebSignatureSerializer</code>, <code>TimedJSONWebSignatureSerializer</code>) is deprecated. Use a dedicated JWS/JWT library such as authlib instead. :issue:<code>129</code></li> <li>Importing <code>itsdangerous.json</code> is deprecated. Import Python's <code>json</code> module instead. :pr:<code>152</code></li> <li>Simplejson is no longer used if it is installed. To use a different library, pass it as <code>Serializer(serializer=...)</code>. :issue:<cod… | 107914493 | pull | { "url": "https://api.github.com/repos/simonw/datasette/issues/1325/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
0 |