labels_id,labels_id_label,issues_id,issues_id_label 1379448359,refactor,267769431,Refactor to use class based views 1379448359,refactor,323658641,Add ?_extra= mechanism for requesting extra properties in JSON 1379448359,refactor,443040665,"Move ""no such module: VirtualSpatialIndex"" code elsewhere" 1379448359,refactor,448664792,Refactor database methods off Datasette class 1379448359,refactor,448668204,Move detect_primary_keys to Database class method 1379448359,refactor,448978907,Rename InterruptedError exception class 1379448359,refactor,459509126,Enforce import sort order with isort 1379448359,refactor,459622390,Handle case-insensitive headers in a nicer way 1379448359,refactor,460540321,Extract codemirror SQL editor out into a plugin 1379448359,refactor,502355384,Testing utilities should be available to plugins 1379448359,refactor,519613116,Refactor TableView.data() method 1379448359,refactor,531755959,Move hashed URL mode out to a plugin 1379448359,refactor,593006814,Refactor duplicate cell display logic 1379448359,refactor,626078521,Consolidate request.raw_args and request.args 1379448359,refactor,626131309,Move test plugins into datasette/tests/plugins/ directory 1379448359,refactor,629459637,"Replace response.body.decode(""utf8"") with response.text in tests" 1379448359,refactor,629541395,response.set_cookie() method 1379448359,refactor,633066114,Refactor permission check for canned query 1379448359,refactor,634651079,Remove --debug option from datasette serve 1379448359,refactor,634844634,Drop resource_type from permission_allowed system 1379448359,refactor,646737558,Refactor default views to use register_routes 1379448359,refactor,648435885,"New pattern for views that return either JSON or HTML, available for plugins" 1379448359,refactor,648659536,Figure out why restore_working_directory is needed in some places 1379448359,refactor,663228985,"datasette.urls.table() / .instance() / .database() methods for constructing URLs, also exposed to templates" 1379448359,refactor,671763164,Refactor TableView class so things like datasette-graphql can reuse the logic 1379448359,refactor,687694947,Remove old register_output_renderer dict mechanism in Datasette 1.0 1379448359,refactor,688622148,Simplify imports of common classes 1379448359,refactor,691475400,Upgrade to latest Black (20.8b1) 1379448359,refactor,718255803,Replace MockRequest with Request.fake() 1379448359,refactor,725743755,"datasette.urls.table(..., format=""json"") argument" 1379448359,refactor,730210880,query.html and table.html should share the same table implementation 1379448359,refactor,732674148,Refactor .csv to be an output renderer - and teach register_output_renderer to stream all rows 1379448359,refactor,733560417,Remove load_template plugin hook 1379448359,refactor,735644513,"Fixtures should use FTS4 or FTS5, not FTS3" 1379448359,refactor,749982022,Rebrand config as settings 1379448359,refactor,750079085,Rename datasette.config() method to datasette.setting() 1379448359,refactor,772438273,Use time.perf_counter() instead of time.time() to measure performance 1379448359,refactor,779691739,"Policy on documenting ""public"" datasette.utils functions" 1379448359,refactor,782708469,"Take advantage of sqlite-utils cached table counts, if available" 1379448359,refactor,789336592,"view_name = ""query"" for the query page" 1379448359,refactor,903902495,Improve `path_with_replaced_args()` and friends and document them 1379448359,refactor,913017577,pathlib.Path breaks internal schema 1379448359,refactor,913809802,Get rid of this `restore_working_directory` hack entirely 1379448359,refactor,957302085,"Review places in codebase that use os.chdir(), in particularly relating to tests" 1379448359,refactor,957315684,Rename settings to `default_allow_facet` and `default_allow_download` and `default_allow_csv_stream` 1379448359,refactor,969855774,Rename Datasette.__init__(config=) parameter to settings= 1379448359,refactor,994390593,Faceting for custom SQL queries 1379448359,refactor,1058072543,Complete refactor of TableView and table.html template 1379448359,refactor,1059209412,Come up with a more elegant solution for base_url than ds.urls.path() 1379448359,refactor,1077893013,`keep_blank_values=True` when parsing `request.args` 1379448359,refactor,1079129258,TableView refactor 1379448359,refactor,1082743068,"filters_from_request plugin hook, now used in TableView" 1379448359,refactor,1083573206,Datasette(... files=) should not be a required argument 1379448359,refactor,1083718998,Remove undocumented sqlite_functions mechanism 1379448359,refactor,1161584460,Get rid of the no-longer necessary ?_format=json hack for tables called x.json 1379448359,refactor,1169840669,Revert main to version that passes tests 1379448359,refactor,1170144879,Refactor and simplify Datasette routing and views 1379448359,refactor,1170355774,Remove Hashed URL mode 1379448359,refactor,1174162781,Refactor URL routing to enable testing 1379448359,refactor,1174302994,Make route matched pattern groups more consistent 1379448359,refactor,1174697144,Refactor CSV handling code out of DataView 1379448359,refactor,1175648453,Extract out `check_permissions()` from `BaseView 1379448359,refactor,1175694248,Remove `check_permission()` from `BaseView` 1379448359,refactor,1175715988,Make `check_visibility()` a documented API 1379448359,refactor,1200650491,Template context powered entirely by the JSON API format 1379448359,refactor,1212823665,Refactor TableView to use asyncinject 1379448359,refactor,1214859703,Refactor `RowView` and remove `RowTableShared` 1379448359,refactor,1219385669,Implement ?_extra and new API design for TableView 1379448359,refactor,1223241647,Remove python-baseconv dependency 1379448359,refactor,1223263540,Datasette setting to disable threading (for Pyodide) 1379448359,refactor,1386854246,Switch to keyword-only arguments for a bunch of internal methods 1379448359,refactor,1386917344,Keyword-only arguments for a bunch of internal methods 1379448359,refactor,1396948693,Table/database that is private due to inherited permissions does not show padlock 1379448359,refactor,1406860394,Drop format_bytes for Jinja filesizeformat filter 1379448359,refactor,1432012302,Refactor and tidy up final write API code 1379448359,refactor,1452364777,Extract logic for resolving a URL to a database / table / row 1379448359,refactor,1455928469,Refactor all error classes into a datasette.exceptions module 1379448359,refactor,1456013930,Extract publish Heroku support to a plugin 1379448359,refactor,1500636982,"Alternative, async-friendly pattern for `make_app_client()` and similar - fully retire `TestClient`" 1379448359,refactor,1551694938,?_extra= support (draft) 1379448359,refactor,1573424830,Refactor out the keyset pagination code 1379448359,refactor,1633077183,Remove obsolete table POST code 1379448359,refactor,1646734246,Custom SQL queries should use new JSON ?_extra= format 1379448359,refactor,1662951875,DeprecationWarning: pkg_resources is deprecated as an API 1379448359,refactor,1665510265,Clean up a bunch of warnings from ruff 1379448359,refactor,1726236847,Resolve the difference between `wrap_view()` and `BaseView` 1379448359,refactor,1726603778,New View base class 1379448359,refactor,1781005740,Adopt ruff for linting 1379448359,refactor,1822936521,Merge database index page and query view 1379448359,refactor,1822937426,Implement new /content.json?sql=... 1379448359,refactor,1822938661,Build HTML version of /content?sql=... 1379448359,refactor,1822940263,Implement canned queries against new query JSON work 1379448359,refactor,1822940964,Ensure all tests pass against new query view JSON 1379448359,refactor,1822949756,Turn DatabaseDownload into an async view function 1379448359,refactor,1822982933,Figure out what to do about `DatabaseView.name` 1379448359,refactor,1823352380,New JSON design for query views 1379448359,refactor,1823428714,Add __all__ to datasette/__init__.py 1379448359,refactor,1838469176,Context base class to support documenting the context 1379448359,refactor,1840417903,Refactor code that supports templates_considered comment 1379448359,refactor,1872043170,Rename core_X to catalog_X in the internals 1379448359,refactor,1884408624,Move schema tables from _internal to _catalog