Renamed --limit to --config, added --help-config, closes #274

Removed the --page_size= argument to datasette serve in favour of:

    datasette serve --config default_page_size:50 mydb.db

Added new help section:

    $ datasette --help-config
    Config options:
      default_page_size            Default page size for the table view
                                   (default=100)
      max_returned_rows            Maximum rows that can be returned from a table
                                   or custom query (default=1000)
      sql_time_limit_ms            Time limit for a SQL query in milliseconds
                                   (default=1000)
      default_facet_size           Number of values to return for requested facets
                                   (default=30)
      facet_time_limit_ms          Time limit for calculating a requested facet
                                   (default=200)
      facet_suggest_time_limit_ms  Time limit for calculating a suggested facet
                                   (default=50)
This commit is contained in:
Simon Willison 2018-05-20 10:01:49 -07:00
commit f6183ff5fa
No known key found for this signature in database
GPG key ID: 17E2DEA2588B7F52
10 changed files with 142 additions and 95 deletions

View file

@ -500,7 +500,7 @@ class TableView(RowTableShared):
return await self.custom_sql(request, name, hash, sql, editable=True)
extra_args = {}
# Handle ?_page_size=500
# Handle ?_size=500
page_size = request.raw_args.get("_size")
if page_size:
if page_size == "max":
@ -539,7 +539,7 @@ class TableView(RowTableShared):
)
# facets support
facet_size = self.ds.limits["default_facet_size"]
facet_size = self.ds.config["default_facet_size"]
metadata_facets = table_metadata.get("facets", [])
facets = metadata_facets[:]
try:
@ -563,7 +563,7 @@ class TableView(RowTableShared):
facet_rows = await self.execute(
name, facet_sql, params,
truncate=False,
custom_time_limit=self.ds.limits["facet_time_limit_ms"],
custom_time_limit=self.ds.config["facet_time_limit_ms"],
)
facet_results_values = []
facet_results[column] = {
@ -668,7 +668,7 @@ class TableView(RowTableShared):
distinct_values = await self.execute(
name, suggested_facet_sql, from_sql_params,
truncate=False,
custom_time_limit=self.ds.limits["facet_suggest_time_limit_ms"],
custom_time_limit=self.ds.config["facet_suggest_time_limit_ms"],
)
num_distinct_values = len(distinct_values)
if (