sections
8 rows where breadcrumbs contains "Migrating from metadata= to config=" and references = "[]"
This data as json, CSV (advanced)
Suggested facets: page, ref, title, breadcrumbs, breadcrumbs (array)
| id ▼ | page | ref | title | content | breadcrumbs | references |
|---|---|---|---|---|---|---|
| upgrade-1.0a20:update-datasette-metadata-calls | upgrade-1.0a20 | update-datasette-metadata-calls | Update datasette.metadata() calls | The datasette.metadata() method has been removed. Use these methods instead: Old code: try: title = datasette.metadata(database=database)["queries"][query_name]["title"] except (KeyError, TypeError): pass New code: try: query_info = await datasette.get_canned_query(database, query_name, request.actor) if query_info and "title" in query_info: title = query_info["title"] except (KeyError, TypeError): pass | ["Datasette 1.0a20 plugin upgrade guide", "Migrating from metadata= to config="] | [] |
| upgrade-1.0a20:update-query-urls-in-tests | upgrade-1.0a20 | update-query-urls-in-tests | Update query URLs in tests | Datasette now redirects ?sql= parameters from database pages to the query view: Old code: response = await ds.client.get("/_memory.atom?sql=select+1") New code: response = await ds.client.get("/_memory/-/query.atom?sql=select+1") | ["Datasette 1.0a20 plugin upgrade guide", "Migrating from metadata= to config="] | [] |
| upgrade-1.0a20:update-render-functions-to-async | upgrade-1.0a20 | update-render-functions-to-async | Update render functions to async | If your plugin's render function needs to call datasette.get_canned_query() or other async Datasette methods, it must be declared as async: Old code: def render_atom(datasette, request, sql, columns, rows, database, table, query_name, view_name, data): # ... if query_name: title = datasette.metadata(database=database)["queries"][query_name]["title"] New code: async def render_atom(datasette, request, sql, columns, rows, database, table, query_name, view_name, data): # ... if query_name: query_info = await datasette.get_canned_query(database, query_name, request.actor) if query_info and "title" in query_info: title = query_info["title"] | ["Datasette 1.0a20 plugin upgrade guide", "Migrating from metadata= to config="] | [] |
| upgrade-1.0a20:update-test-constructors | upgrade-1.0a20 | update-test-constructors | Update test constructors | Old code: ds = Datasette( memory=True, metadata={ "databases": { "_memory": {"queries": {"my_query": {"sql": "select 1", "title": "My Query"}}} }, "plugins": { "my-plugin": {"setting": "value"} } } ) New code: ds = Datasette( memory=True, config={ "databases": { "_memory": {"queries": {"my_query": {"sql": "select 1", "title": "My Query"}}} }, "plugins": { "my-plugin": {"setting": "value"} } } ) | ["Datasette 1.0a20 plugin upgrade guide", "Migrating from metadata= to config="] | [] |
| upgrade_guide:update-datasette-metadata-calls | upgrade_guide | update-datasette-metadata-calls | Update datasette.metadata() calls | The datasette.metadata() method has been removed. Use these methods instead: Old code: try: title = datasette.metadata(database=database)["queries"][query_name]["title"] except (KeyError, TypeError): pass New code: try: query_info = await datasette.get_canned_query(database, query_name, request.actor) if query_info and "title" in query_info: title = query_info["title"] except (KeyError, TypeError): pass | ["Upgrade guide", "Datasette 1.0a20 plugin upgrade guide", "Migrating from metadata= to config="] | [] |
| upgrade_guide:update-query-urls-in-tests | upgrade_guide | update-query-urls-in-tests | Update query URLs in tests | Datasette now redirects ?sql= parameters from database pages to the query view: Old code: response = await ds.client.get("/_memory.atom?sql=select+1") New code: response = await ds.client.get("/_memory/-/query.atom?sql=select+1") | ["Upgrade guide", "Datasette 1.0a20 plugin upgrade guide", "Migrating from metadata= to config="] | [] |
| upgrade_guide:update-render-functions-to-async | upgrade_guide | update-render-functions-to-async | Update render functions to async | If your plugin's render function needs to call datasette.get_canned_query() or other async Datasette methods, it must be declared as async: Old code: def render_atom(datasette, request, sql, columns, rows, database, table, query_name, view_name, data): # ... if query_name: title = datasette.metadata(database=database)["queries"][query_name]["title"] New code: async def render_atom(datasette, request, sql, columns, rows, database, table, query_name, view_name, data): # ... if query_name: query_info = await datasette.get_canned_query(database, query_name, request.actor) if query_info and "title" in query_info: title = query_info["title"] | ["Upgrade guide", "Datasette 1.0a20 plugin upgrade guide", "Migrating from metadata= to config="] | [] |
| upgrade_guide:update-test-constructors | upgrade_guide | update-test-constructors | Update test constructors | Old code: ds = Datasette( memory=True, metadata={ "databases": { "_memory": {"queries": {"my_query": {"sql": "select 1", "title": "My Query"}}} }, "plugins": { "my-plugin": {"setting": "value"} } } ) New code: ds = Datasette( memory=True, config={ "databases": { "_memory": {"queries": {"my_query": {"sql": "select 1", "title": "My Query"}}} }, "plugins": { "my-plugin": {"setting": "value"} } } ) | ["Upgrade guide", "Datasette 1.0a20 plugin upgrade guide", "Migrating from metadata= to config="] | [] |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE [sections] ( [id] TEXT PRIMARY KEY, [page] TEXT, [ref] TEXT, [title] TEXT, [content] TEXT, [breadcrumbs] TEXT, [references] TEXT );