home / github

Menu
  • GraphQL API

issue_comments

Table actions
  • GraphQL API for issue_comments

721 rows where author_association = "NONE" sorted by author_association

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: created_at (date)

author_association 1 ✖

  • NONE · 721 ✖
id html_url issue_url node_id user created_at updated_at author_association ▼ body reactions issue performed_via_github_app
344424382 https://github.com/simonw/datasette/issues/93#issuecomment-344424382 https://api.github.com/repos/simonw/datasette/issues/93 MDEyOklzc3VlQ29tbWVudDM0NDQyNDM4Mg== atomotic 67420 2017-11-14T22:42:16Z 2017-11-14T22:42:16Z NONE tried quickly, this seems working: ``` ~ pip3 install pyinstaller ~ pyinstaller -F --add-data /usr/local/lib/python3.6/site-packages/datasette/templates:datasette/templates --add-data /usr/local/lib/python3.6/site-packages/datasette/static:datasette/static /usr/local/bin/datasette ~ du -h dist/datasette 6.8M dist/datasette ~ file dist/datasette dist/datasette: Mach-O 64-bit executable x86_64 ``` {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Package as standalone binary 273944952  
344430299 https://github.com/simonw/datasette/issues/93#issuecomment-344430299 https://api.github.com/repos/simonw/datasette/issues/93 MDEyOklzc3VlQ29tbWVudDM0NDQzMDI5OQ== atomotic 67420 2017-11-14T23:06:33Z 2017-11-14T23:06:33Z NONE i will look better tomorrow, it's late i surely made some mistake https://asciinema.org/a/ZyAWbetrlriDadwWyVPUWB94H {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Package as standalone binary 273944952  
344516406 https://github.com/simonw/datasette/issues/93#issuecomment-344516406 https://api.github.com/repos/simonw/datasette/issues/93 MDEyOklzc3VlQ29tbWVudDM0NDUxNjQwNg== atomotic 67420 2017-11-15T08:09:41Z 2017-11-15T08:09:41Z NONE actually you can use travis to build for linux/macos and [appveyor](https://www.appveyor.com/) to build for windows. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Package as standalone binary 273944952  
344597274 https://github.com/simonw/datasette/issues/101#issuecomment-344597274 https://api.github.com/repos/simonw/datasette/issues/101 MDEyOklzc3VlQ29tbWVudDM0NDU5NzI3NA== eaubin 450244 2017-11-15T13:48:55Z 2017-11-15T13:48:55Z NONE This is a duplicate of https://github.com/simonw/datasette/issues/100 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} TemplateAssertionError: no filter named 'tojson' 274161964  
344864254 https://github.com/simonw/datasette/issues/100#issuecomment-344864254 https://api.github.com/repos/simonw/datasette/issues/100 MDEyOklzc3VlQ29tbWVudDM0NDg2NDI1NA== coisnepe 13304454 2017-11-16T09:25:10Z 2017-11-16T09:25:10Z NONE @simonw I see. I upgraded sanic-jinja2 and jinja2: it now works flawlessly. Thank you! {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} TemplateAssertionError: no filter named 'tojson' 274160723  
345509500 https://github.com/simonw/datasette/issues/97#issuecomment-345509500 https://api.github.com/repos/simonw/datasette/issues/97 MDEyOklzc3VlQ29tbWVudDM0NTUwOTUwMA== yschimke 231923 2017-11-19T11:26:58Z 2017-11-19T11:26:58Z NONE Specifically docs should make it clearer this file exists https://parlgov.datasettes.com/.json And from that you can build https://parlgov.datasettes.com/parlgov-25f9855.json Then https://parlgov.datasettes.com/parlgov-25f9855/cabinet.json {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Link to JSON for the list of tables  274022950  
346427794 https://github.com/simonw/datasette/issues/144#issuecomment-346427794 https://api.github.com/repos/simonw/datasette/issues/144 MDEyOklzc3VlQ29tbWVudDM0NjQyNzc5NA== mhalle 649467 2017-11-22T17:55:45Z 2017-11-22T17:55:45Z NONE Thanks. There is a way to use pip to grab apsw, which also let's you configure it (flags to build extensions, use an internal sqlite, etc). Don't know how that works as a dependency for another package, though. On November 22, 2017 11:38:06 AM EST, Simon Willison <notifications@github.com> wrote: >I have a solution for FTS already, but I'm interested in apsw as a >mechanism for allowing custom virtual tables to be written in Python >(pysqlite only lets you write custom functions) > >Not having PyPI support is pretty tough though. I'm planning a >plugin/extension system which would be ideal for things like an >optional apsw mode, but that's a lot harder if apsw isn't in PyPI. > >-- >You are receiving this because you authored the thread. >Reply to this email directly or view it on GitHub: >https://github.com/simonw/datasette/issues/144#issuecomment-346405660 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} apsw as alternative sqlite3 binding (for full text search) 276091279  
346974336 https://github.com/simonw/datasette/issues/141#issuecomment-346974336 https://api.github.com/repos/simonw/datasette/issues/141 MDEyOklzc3VlQ29tbWVudDM0Njk3NDMzNg== janimo 50138 2017-11-26T00:00:35Z 2017-11-26T00:00:35Z NONE FWIW I worked around this by setting TMPDIR to ~/tmp before running the command. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} datasette publish can fail if /tmp is on a different device 275814941  
346987395 https://github.com/simonw/datasette/issues/124#issuecomment-346987395 https://api.github.com/repos/simonw/datasette/issues/124 MDEyOklzc3VlQ29tbWVudDM0Njk4NzM5NQ== janimo 50138 2017-11-26T06:24:08Z 2017-11-26T06:24:08Z NONE Are there performance gains when using immutable as opposed to read-only? From what I see other processes can still modify the DB when immutable, but there are no change notifications. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Option to open readonly but not immutable 275125805  
347123991 https://github.com/simonw/datasette/issues/124#issuecomment-347123991 https://api.github.com/repos/simonw/datasette/issues/124 MDEyOklzc3VlQ29tbWVudDM0NzEyMzk5MQ== janimo 50138 2017-11-27T09:25:15Z 2017-11-27T09:25:15Z NONE That's the only reference to immutable I saw as well, making me think that there may be no perceivable advantages over simply using mode=ro. Since the database is never or seldom updated the change notifications should not impact performance. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Option to open readonly but not immutable 275125805  
347714314 https://github.com/simonw/datasette/issues/155#issuecomment-347714314 https://api.github.com/repos/simonw/datasette/issues/155 MDEyOklzc3VlQ29tbWVudDM0NzcxNDMxNA== wsxiaoys 388154 2017-11-29T00:46:25Z 2017-11-29T00:46:25Z NONE ``` CREATE TABLE rhs ( id INTEGER PRIMARY KEY, name TEXT ); CREATE TABLE lhs ( symbol INTEGER PRIMARY KEY, FOREIGN KEY (symbol) REFERENCES rhs(id) ); INSERT INTO rhs VALUES (1, "foo"); INSERT INTO rhs VALUES (2, "bar"); INSERT INTO lhs VALUES (1); INSERT INTO lhs VALUES (2); ``` It's expected that in lhs's view, foo / bar should be displayed. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} A primary key column that has foreign key restriction associated won't rendering label column 277589569  
348252037 https://github.com/simonw/datasette/issues/153#issuecomment-348252037 https://api.github.com/repos/simonw/datasette/issues/153 MDEyOklzc3VlQ29tbWVudDM0ODI1MjAzNw== ftrain 20264 2017-11-30T16:59:00Z 2017-11-30T16:59:00Z NONE WOW! -- Paul Ford // (646) 369-7128 // @ftrain On Thu, Nov 30, 2017 at 11:47 AM, Simon Willison <notifications@github.com> wrote: > Remaining work on this now lives in a milestone: > https://github.com/simonw/datasette/milestone/6 > > — > You are receiving this because you were mentioned. > Reply to this email directly, view it on GitHub > <https://github.com/simonw/datasette/issues/153#issuecomment-348248406>, > or mute the thread > <https://github.com/notifications/unsubscribe-auth/AABPKHzaVPKwTOoHouK2aMUnM-mPnPk6ks5s7twzgaJpZM4Qq2zW> > . > {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Ability to customize presentation of specific columns in HTML view 276842536  
350108113 https://github.com/simonw/datasette/issues/161#issuecomment-350108113 https://api.github.com/repos/simonw/datasette/issues/161 MDEyOklzc3VlQ29tbWVudDM1MDEwODExMw== wsxiaoys 388154 2017-12-07T22:02:24Z 2017-12-07T22:02:24Z NONE It's not throwing the validation error anymore, but i still cannot run following with query: ``` WITH RECURSIVE cnt(x) AS (SELECT 1 UNION ALL SELECT x+1 FROM cnt LIMIT 10) SELECT x FROM cnt; ``` I got `near "WITH": syntax error`. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Support WITH query  278814220  
350182904 https://github.com/simonw/datasette/issues/161#issuecomment-350182904 https://api.github.com/repos/simonw/datasette/issues/161 MDEyOklzc3VlQ29tbWVudDM1MDE4MjkwNA== wsxiaoys 388154 2017-12-08T06:18:12Z 2017-12-08T06:18:12Z NONE You're right..got this resolved after upgrading the sqlite version. Thanks you! {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Support WITH query  278814220  
355487646 https://github.com/simonw/datasette/issues/120#issuecomment-355487646 https://api.github.com/repos/simonw/datasette/issues/120 MDEyOklzc3VlQ29tbWVudDM1NTQ4NzY0Ng== nickdirienzo 723567 2018-01-05T07:10:12Z 2018-01-05T07:10:12Z NONE Ah, glad I found this issue. I have private data that I'd like to share to a few different people. Personally, a shared username and password would be sufficient for me, more-or-less Basic Auth. Do you have more complex requirements in mind? I'm not sure if "plugin" means "build a plugin" or "find a plugin" or something else entirely. FWIW, I stumbled upon [sanic-auth](https://github.com/pyx/sanic-auth) which looks like a new project to bring some interfaces around auth to sanic, similar to Flask. Alternatively, it shouldn't be too bad to add in Basic Auth. If we went down that route, that would probably be best built as a separate package for sanic that `datasette` brings in. What are your thoughts around this? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Plugin that adds an authentication layer of some sort 275087397  
356115657 https://github.com/simonw/datasette/issues/176#issuecomment-356115657 https://api.github.com/repos/simonw/datasette/issues/176 MDEyOklzc3VlQ29tbWVudDM1NjExNTY1Nw== wulfmann 4313116 2018-01-08T22:22:32Z 2018-01-08T22:22:32Z NONE This project probably would not be the place for that. This is a layer for sqllite specifically. It solves a similar problem as graphql, so adding that here wouldn't make sense. Here's an example i found from google that uses micro to run a graphql microservice. you'd just then need to connect your db. https://github.com/timneutkens/micro-graphql {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Add GraphQL endpoint 285168503  
356161672 https://github.com/simonw/datasette/issues/176#issuecomment-356161672 https://api.github.com/repos/simonw/datasette/issues/176 MDEyOklzc3VlQ29tbWVudDM1NjE2MTY3Mg== yozlet 173848 2018-01-09T02:35:35Z 2018-01-09T02:35:35Z NONE @wulfmann I think I disagree, except I'm not entirely sure what you mean by that first paragraph. The JSON API that Datasette currently exposes is quite different to GraphQL. Furthermore, there's no "just" about connecting micro-graphql to a DB; at least, no more "just" than adding any other API. You still need to configure the schema, which is exactly the kind of thing that Datasette does for JSON API. This is why I think that GraphQL's a good fit here. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Add GraphQL endpoint 285168503  
356175667 https://github.com/simonw/datasette/issues/176#issuecomment-356175667 https://api.github.com/repos/simonw/datasette/issues/176 MDEyOklzc3VlQ29tbWVudDM1NjE3NTY2Nw== wulfmann 4313116 2018-01-09T04:19:03Z 2018-01-09T04:19:03Z NONE @yozlet Yes I think that I was confused when I posted my original comment. I see your main point now and am in agreement. {"total_count": 2, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 2, "rocket": 0, "eyes": 0} Add GraphQL endpoint 285168503  
359697938 https://github.com/simonw/datasette/issues/176#issuecomment-359697938 https://api.github.com/repos/simonw/datasette/issues/176 MDEyOklzc3VlQ29tbWVudDM1OTY5NzkzOA== gijs 7193 2018-01-23T07:17:56Z 2018-01-23T07:17:56Z NONE 👍 I'd like this too! {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Add GraphQL endpoint 285168503  
368625350 https://github.com/simonw/datasette/issues/176#issuecomment-368625350 https://api.github.com/repos/simonw/datasette/issues/176 MDEyOklzc3VlQ29tbWVudDM2ODYyNTM1MA== wuhland 7431774 2018-02-26T19:44:11Z 2018-02-26T19:44:11Z NONE great idea! {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Add GraphQL endpoint 285168503  
370461231 https://github.com/simonw/datasette/issues/185#issuecomment-370461231 https://api.github.com/repos/simonw/datasette/issues/185 MDEyOklzc3VlQ29tbWVudDM3MDQ2MTIzMQ== carlmjohnson 222245 2018-03-05T15:43:56Z 2018-03-05T15:44:27Z NONE Yes. I think the simplest implementation is to change lines like ```python metadata = self.ds.metadata.get('databases', {}).get(name, {}) ``` to ```python metadata = { **self.ds.metadata, **self.ds.metadata.get('databases', {}).get(name, {}), } ``` so that specified inner values overwrite outer values, but only if they exist. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Metadata should be a nested arbitrary KV store 299760684  
374872202 https://github.com/simonw/datasette/issues/186#issuecomment-374872202 https://api.github.com/repos/simonw/datasette/issues/186 MDEyOklzc3VlQ29tbWVudDM3NDg3MjIwMg== stefanocudini 47107 2018-03-21T09:07:22Z 2018-03-21T09:07:22Z NONE --debug is perfect tnk {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} proposal new option to disable user agents cache 306811513  
376590265 https://github.com/simonw/datasette/issues/185#issuecomment-376590265 https://api.github.com/repos/simonw/datasette/issues/185 MDEyOklzc3VlQ29tbWVudDM3NjU5MDI2NQ== carlmjohnson 222245 2018-03-27T16:32:51Z 2018-03-27T16:32:51Z NONE >I think the templates themselves should be able to indicate if they want the inherited values or not. That way we could support arbitrary key/values and avoid the application code having special knowledge of license_url etc. Yes, you could have `metadata` that works like `metadata` does currently and `inherited_metadata` that works with inheritance. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Metadata should be a nested arbitrary KV store 299760684  
376592044 https://github.com/simonw/datasette/issues/185#issuecomment-376592044 https://api.github.com/repos/simonw/datasette/issues/185 MDEyOklzc3VlQ29tbWVudDM3NjU5MjA0NA== carlmjohnson 222245 2018-03-27T16:38:23Z 2018-03-27T16:38:23Z NONE It would be nice to also allow arbitrary keys (maybe under a parent key called params or something to prevent conflicts). For our datasette project, we just have a bunch of dictionaries defined in the base template for things like site URL and column humanized names: https://github.com/baltimore-sun-data/salaries-datasette/blob/master/templates/base.html It would be cleaner if this were in the metadata.json. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Metadata should be a nested arbitrary KV store 299760684  
376614973 https://github.com/simonw/datasette/issues/185#issuecomment-376614973 https://api.github.com/repos/simonw/datasette/issues/185 MDEyOklzc3VlQ29tbWVudDM3NjYxNDk3Mw== carlmjohnson 222245 2018-03-27T17:49:00Z 2018-03-27T17:49:00Z NONE @simonw Other than metadata, the biggest item on wishlist for the salaries project was the ability to reorder by column. Of course, that could be done with a custom SQL query, but we didn't want to have to reimplement all the nav/pagination stuff from scratch. @carolinp, feel free to add your thoughts. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Metadata should be a nested arbitrary KV store 299760684  
378297842 https://github.com/simonw/datasette/pull/181#issuecomment-378297842 https://api.github.com/repos/simonw/datasette/issues/181 MDEyOklzc3VlQ29tbWVudDM3ODI5Nzg0Mg== bsmithgall 1957344 2018-04-03T15:47:13Z 2018-04-03T15:47:13Z NONE I can work on that -- would you prefer to inline a `display: hidden` and then have the javascript flip the visibility or include it as css? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} add "format sql" button to query page, uses sql-formatter 289425975  
379142500 https://github.com/simonw/datasette/issues/193#issuecomment-379142500 https://api.github.com/repos/simonw/datasette/issues/193 MDEyOklzc3VlQ29tbWVudDM3OTE0MjUwMA== carlmjohnson 222245 2018-04-06T04:05:58Z 2018-04-06T04:05:58Z NONE You could try pulling out a validate query strings method. If it fails validation build the error object from the message. If it passes, you only need to go down a happy path. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Cleaner mechanism for handling custom errors 310882100  
379759875 https://github.com/simonw/datasette/pull/181#issuecomment-379759875 https://api.github.com/repos/simonw/datasette/issues/181 MDEyOklzc3VlQ29tbWVudDM3OTc1OTg3NQ== bsmithgall 1957344 2018-04-09T13:53:14Z 2018-04-09T13:53:14Z NONE I've implemented that approach in 86ac746. It does cause the button to pop in only after Codemirror is finished rendering which is a bit awkward. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} add "format sql" button to query page, uses sql-formatter 289425975  
379788103 https://github.com/simonw/datasette/issues/184#issuecomment-379788103 https://api.github.com/repos/simonw/datasette/issues/184 MDEyOklzc3VlQ29tbWVudDM3OTc4ODEwMw== carlmjohnson 222245 2018-04-09T15:15:11Z 2018-04-09T15:15:11Z NONE Visit https://salaries.news.baltimoresun.com/salaries/bad-table. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} 500 from missing table name 292011379  
379791047 https://github.com/simonw/datasette/issues/189#issuecomment-379791047 https://api.github.com/repos/simonw/datasette/issues/189 MDEyOklzc3VlQ29tbWVudDM3OTc5MTA0Nw== carlmjohnson 222245 2018-04-09T15:23:45Z 2018-04-09T15:23:45Z NONE Awesome! {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Ability to sort (and paginate) by column 309471814  
381429213 https://github.com/simonw/datasette/issues/189#issuecomment-381429213 https://api.github.com/repos/simonw/datasette/issues/189 MDEyOklzc3VlQ29tbWVudDM4MTQyOTIxMw== carlmjohnson 222245 2018-04-15T18:54:22Z 2018-04-15T18:54:22Z NONE I think I found a bug. I tried to sort by middle initial in my salaries set, and many middle initials are null. The next_url gets set by Datasette to: http://localhost:8001/salaries-d3a5631/2017+Maryland+state+salaries?_next=None%2C391&_sort=middle_initial But then `None` is interpreted literally and it tries to find a name with the middle initial "None" and ends up skipping ahead to O on page 2. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Ability to sort (and paginate) by column 309471814  
381602005 https://github.com/simonw/datasette/issues/191#issuecomment-381602005 https://api.github.com/repos/simonw/datasette/issues/191 MDEyOklzc3VlQ29tbWVudDM4MTYwMjAwNQ== coleifer 119974 2018-04-16T13:37:32Z 2018-04-16T13:37:32Z NONE I don't think it should be too difficult... you can look at what @ghaering did with pysqlite (and similarly what I copied for pysqlite3). You would theoretically take an amalgamation build of Sqlite (all code in a single .c and .h file). The `AmalgamationLibSqliteBuilder` class detects the presence of this amalgamated source file and builds a statically-linked pysqlite. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Figure out how to bundle a more up-to-date SQLite 310533258  
388367027 https://github.com/simonw/datasette/issues/254#issuecomment-388367027 https://api.github.com/repos/simonw/datasette/issues/254 MDEyOklzc3VlQ29tbWVudDM4ODM2NzAyNw== philroche 247131 2018-05-11T13:41:46Z 2018-05-11T13:41:46Z NONE An example deployment @ https://datasette-zkcvlwdrhl.now.sh/simplestreams-270f20c/cloudimage?content_id__exact=com.ubuntu.cloud%3Areleased%3Adownload It is not causing errors, more of an inconvenience. I have worked around it using a `like` query instead. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Escaping named parameters in canned queries 322283067  
390577711 https://github.com/simonw/datasette/pull/258#issuecomment-390577711 https://api.github.com/repos/simonw/datasette/issues/258 MDEyOklzc3VlQ29tbWVudDM5MDU3NzcxMQ== philroche 247131 2018-05-21T07:38:15Z 2018-05-21T07:38:15Z NONE Excellent, I was not aware of the auto redirect to the new hash. My bad This solves my use case. I do agree that your suggested --no-url-hash approach is much neater. I will investigate {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Add new metadata key persistent_urls which removes the hash from all database urls 322741659  
390689406 https://github.com/simonw/datasette/issues/247#issuecomment-390689406 https://api.github.com/repos/simonw/datasette/issues/247 MDEyOklzc3VlQ29tbWVudDM5MDY4OTQwNg== jsancho-gpl 11912854 2018-05-21T15:29:31Z 2018-05-21T15:29:31Z NONE I've changed my mind about the way to support external connectors aside of SQLite and I'm working in a more simple style that respects the original Datasette, i.e. less refactoring. I present you [a version of Datasette wich supports other database connectors](https://github.com/jsancho-gpl/datasette/tree/external-connectors) and [a Datasette connector for HDF5/PyTables files](https://github.com/jsancho-gpl/datasette-pytables). {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} SQLite code decoupled from Datasette 319449852  
392828475 https://github.com/simonw/datasette/issues/191#issuecomment-392828475 https://api.github.com/repos/simonw/datasette/issues/191 MDEyOklzc3VlQ29tbWVudDM5MjgyODQ3NQ== coleifer 119974 2018-05-29T15:50:18Z 2018-05-29T15:50:18Z NONE Python standard-library SQLite dynamically links against the system sqlite3. So presumably you installed a more up-to-date sqlite3 somewhere on your `LD_LIBRARY_PATH`. To compile a statically-linked pysqlite you need to include an amalgamation in the project root when building the extension. Read the relevant setup.py. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Figure out how to bundle a more up-to-date SQLite 310533258  
392890045 https://github.com/simonw/datasette/issues/265#issuecomment-392890045 https://api.github.com/repos/simonw/datasette/issues/265 MDEyOklzc3VlQ29tbWVudDM5Mjg5MDA0NQ== yschimke 231923 2018-05-29T18:37:49Z 2018-05-29T18:37:49Z NONE Just about to ask for this! Move this page https://github.com/simonw/datasette/wiki/Datasettes into a datasette, with some concept of versioning as well. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Add links to example Datasette instances to appropiate places in docs 323677499  
392895733 https://github.com/simonw/datasette/issues/97#issuecomment-392895733 https://api.github.com/repos/simonw/datasette/issues/97 MDEyOklzc3VlQ29tbWVudDM5Mjg5NTczMw== yschimke 231923 2018-05-29T18:51:35Z 2018-05-29T18:51:35Z NONE Do you have an existing example with views? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Link to JSON for the list of tables  274022950  
398030903 https://github.com/simonw/datasette/issues/316#issuecomment-398030903 https://api.github.com/repos/simonw/datasette/issues/316 MDEyOklzc3VlQ29tbWVudDM5ODAzMDkwMw== gavinband 132230 2018-06-18T12:00:43Z 2018-06-18T12:00:43Z NONE I should add that I'm using datasette version 0.22, Python 2.7.10 on Mac OS X. Happy to send more info if helpful. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} datasette inspect takes a very long time on large dbs 333238932  
398109204 https://github.com/simonw/datasette/issues/316#issuecomment-398109204 https://api.github.com/repos/simonw/datasette/issues/316 MDEyOklzc3VlQ29tbWVudDM5ODEwOTIwNA== gavinband 132230 2018-06-18T16:12:45Z 2018-06-18T16:12:45Z NONE Hi Simon, Thanks for the response. Ok I'll try running `datasette inspect` up front. In principle the db won't change. However, the site's in development and it's likely I'll need to add views and some auxiliary (smaller) tables as I go along. I will need to be careful with this if it involves an inspect step in each iteration, though. g. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} datasette inspect takes a very long time on large dbs 333238932  
398778485 https://github.com/simonw/datasette/issues/188#issuecomment-398778485 https://api.github.com/repos/simonw/datasette/issues/188 MDEyOklzc3VlQ29tbWVudDM5ODc3ODQ4NQ== bsilverm 12617395 2018-06-20T14:48:39Z 2018-06-20T14:48:39Z NONE This would be a great feature to have! {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Ability to bundle metadata and templates inside the SQLite file 309047460  
399098080 https://github.com/simonw/datasette/issues/321#issuecomment-399098080 https://api.github.com/repos/simonw/datasette/issues/321 MDEyOklzc3VlQ29tbWVudDM5OTA5ODA4MA== bsilverm 12617395 2018-06-21T13:10:48Z 2018-06-21T13:10:48Z NONE Perfect, thank you!! {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Wildcard support in query parameters 334190959  
399106871 https://github.com/simonw/datasette/issues/321#issuecomment-399106871 https://api.github.com/repos/simonw/datasette/issues/321 MDEyOklzc3VlQ29tbWVudDM5OTEwNjg3MQ== bsilverm 12617395 2018-06-21T13:39:37Z 2018-06-21T13:39:37Z NONE One thing I've noticed with this approach is that the query is executed with no parameters which I do not believe was the case previously. In the case the table contains a lot of data, this adds some time executing the query before the user can enter their input and run it with the parameters they want. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Wildcard support in query parameters 334190959  
399129220 https://github.com/simonw/datasette/issues/321#issuecomment-399129220 https://api.github.com/repos/simonw/datasette/issues/321 MDEyOklzc3VlQ29tbWVudDM5OTEyOTIyMA== bsilverm 12617395 2018-06-21T14:45:02Z 2018-06-21T14:45:02Z NONE Those queries look identical. How can this be prevented if the queries are in a metadata.json file? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Wildcard support in query parameters 334190959  
399173916 https://github.com/simonw/datasette/issues/321#issuecomment-399173916 https://api.github.com/repos/simonw/datasette/issues/321 MDEyOklzc3VlQ29tbWVudDM5OTE3MzkxNg== bsilverm 12617395 2018-06-21T17:00:10Z 2018-06-21T17:00:10Z NONE Oh I see.. My issue is that the query executes with an empty string prior to the user submitting the parameters. I'll try adding your workaround to some of my queries. Thanks again, {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Wildcard support in query parameters 334190959  
400571521 https://github.com/simonw/datasette/issues/272#issuecomment-400571521 https://api.github.com/repos/simonw/datasette/issues/272 MDEyOklzc3VlQ29tbWVudDQwMDU3MTUyMQ== tomchristie 647359 2018-06-27T07:30:07Z 2018-06-27T07:30:07Z NONE I’m up for helping with this. Looks like you’d need static files support, which I’m planning on adding a component for. Anything else obviously missing? For a quick overview it looks very doable - the test client ought to me your test cases stay roughly the same. Are you using any middleware or other components for the Sanic ecosystem? Do you use cookies or sessions at all? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Port Datasette to ASGI 324188953  
404514973 https://github.com/simonw/datasette/issues/272#issuecomment-404514973 https://api.github.com/repos/simonw/datasette/issues/272 MDEyOklzc3VlQ29tbWVudDQwNDUxNDk3Mw== tomchristie 647359 2018-07-12T13:38:24Z 2018-07-12T13:38:24Z NONE Okay. I reckon the latest version should have all the kinds of components you'd need: Recently added ASGI components for Routing and Static Files support, as well as making few tweaks to make sure requests and responses are instantiated efficiently. Don't have any redirect-to-slash / redirect-to-non-slash stuff out of the box yet, which it looks like you might miss. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Port Datasette to ASGI 324188953  
404576136 https://github.com/simonw/datasette/issues/339#issuecomment-404576136 https://api.github.com/repos/simonw/datasette/issues/339 MDEyOklzc3VlQ29tbWVudDQwNDU3NjEzNg== bsilverm 12617395 2018-07-12T16:45:08Z 2018-07-12T16:45:08Z NONE Thanks for the quick reply. Looks like that is working well. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Expose SANIC_RESPONSE_TIMEOUT config option in a sensible way 340396247  
412663658 https://github.com/simonw/datasette/issues/185#issuecomment-412663658 https://api.github.com/repos/simonw/datasette/issues/185 MDEyOklzc3VlQ29tbWVudDQxMjY2MzY1OA== carlmjohnson 222245 2018-08-13T21:04:11Z 2018-08-13T21:04:11Z NONE That seems good to me. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Metadata should be a nested arbitrary KV store 299760684  
414860009 https://github.com/simonw/datasette/issues/267#issuecomment-414860009 https://api.github.com/repos/simonw/datasette/issues/267 MDEyOklzc3VlQ29tbWVudDQxNDg2MDAwOQ== annapowellsmith 78156 2018-08-21T23:57:51Z 2018-08-21T23:57:51Z NONE Looks to me like hashing, redirects and caching were documented as part of https://github.com/simonw/datasette/commit/788a542d3c739da5207db7d1fb91789603cdd336#diff-3021b0e065dce289c34c3b49b3952a07 - so perhaps this can be closed? :tada: {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Documentation for URL hashing, redirects and cache policy 323716411  
417684877 https://github.com/simonw/datasette/pull/363#issuecomment-417684877 https://api.github.com/repos/simonw/datasette/issues/363 MDEyOklzc3VlQ29tbWVudDQxNzY4NDg3Nw== kevboh 436032 2018-08-31T14:39:45Z 2018-08-31T14:39:45Z NONE It looks like the check passed, not sure why it's showing as running in GH. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Search all apps during heroku publish 355299310  
418695115 https://github.com/simonw/datasette/issues/272#issuecomment-418695115 https://api.github.com/repos/simonw/datasette/issues/272 MDEyOklzc3VlQ29tbWVudDQxODY5NTExNQ== tomchristie 647359 2018-09-05T11:21:25Z 2018-09-05T11:21:25Z NONE Some notes: * Starlette just got a bump to 0.3.0 - there's some renamings in there. It's got enough functionality now that you can treat it either as a framework or as a toolkit. Either way the component design is all just *here's an ASGI app* all the way through. * Uvicorn got a bump to 0.3.3 - Removed some cyclical references that were causing garbage collection to impact performance. Ought to be a decent speed bump. * Wrt. passing config - Either use a single envvar that points to a config, or use multiple envvars for the config. Uvicorn could get a flag to read a `.env` file, but I don't see ASGI itself having a specific interface there. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Port Datasette to ASGI 324188953  
420295524 https://github.com/simonw/datasette/pull/293#issuecomment-420295524 https://api.github.com/repos/simonw/datasette/issues/293 MDEyOklzc3VlQ29tbWVudDQyMDI5NTUyNA== jsancho-gpl 11912854 2018-09-11T14:32:45Z 2018-09-11T14:32:45Z NONE I close this PR because it's better to use the new one #364 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Support for external database connectors 326987229  
427261369 https://github.com/simonw/datasette/issues/328#issuecomment-427261369 https://api.github.com/repos/simonw/datasette/issues/328 MDEyOklzc3VlQ29tbWVudDQyNzI2MTM2OQ== chmaynard 13698964 2018-10-05T06:37:06Z 2018-10-05T06:37:06Z NONE ``` ~ $ docker pull datasetteproject/datasette ~ $ docker run -p 8001:8001 -v `pwd`:/mnt datasetteproject/datasette datasette -p 8001 -h 0.0.0.0 /mnt/fixtures.db Usage: datasette -p [OPTIONS] [FILES]... Error: Invalid value for "files": Path "/mnt/fixtures.db" does not exist. ``` {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Installation instructions, including how to use the docker image 336464733  
427943710 https://github.com/simonw/datasette/issues/187#issuecomment-427943710 https://api.github.com/repos/simonw/datasette/issues/187 MDEyOklzc3VlQ29tbWVudDQyNzk0MzcxMA== progpow 1583271 2018-10-08T18:58:05Z 2018-10-08T18:58:05Z NONE I have same error: ``` Collecting uvloop Using cached https://files.pythonhosted.org/packages/5c/37/6daa39aac42b2deda6ee77f408bec0419b600e27b89b374b0d440af32b10/uvloop-0.11.2.tar.gz Complete output from command python setup.py egg_info: Traceback (most recent call last): File "<string>", line 1, in <module> File "C:\Users\sageev\AppData\Local\Temp\pip-install-bq64l8jy\uvloop\setup.py", line 15, in <module> raise RuntimeError('uvloop does not support Windows at the moment') RuntimeError: uvloop does not support Windows at the moment ``` {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Windows installation error 309033998  
431867885 https://github.com/simonw/datasette/issues/176#issuecomment-431867885 https://api.github.com/repos/simonw/datasette/issues/176 MDEyOklzc3VlQ29tbWVudDQzMTg2Nzg4NQ== eads 634572 2018-10-22T15:24:57Z 2018-10-22T15:24:57Z NONE I'd like this as well. It would let me access Datasette-driven projects from GatsbyJS the same way I can access Postgres DBs via Hasura. While I don't see SQLite replacing Postgres for the 50m row datasets I sometimes have to work with, there's a whole class of smaller datasets that are great with Datasette but currently would find another option. {"total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Add GraphQL endpoint 285168503  
439194286 https://github.com/simonw/datasette/issues/227#issuecomment-439194286 https://api.github.com/repos/simonw/datasette/issues/227 MDEyOklzc3VlQ29tbWVudDQzOTE5NDI4Ng== carlmjohnson 222245 2018-11-15T21:20:37Z 2018-11-15T21:20:37Z NONE I'm diving back into https://salaries.news.baltimoresun.com and what I really want is the ability to inject the request into my context. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} prepare_context() plugin hook 315960272  
439421164 https://github.com/simonw/datasette/issues/120#issuecomment-439421164 https://api.github.com/repos/simonw/datasette/issues/120 MDEyOklzc3VlQ29tbWVudDQzOTQyMTE2NA== ad-si 36796532 2018-11-16T15:05:18Z 2018-11-16T15:05:18Z NONE This would be an awesome feature ❤️ {"total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Plugin that adds an authentication layer of some sort 275087397  
451415063 https://github.com/simonw/datasette/issues/393#issuecomment-451415063 https://api.github.com/repos/simonw/datasette/issues/393 MDEyOklzc3VlQ29tbWVudDQ1MTQxNTA2Mw== ltrgoddard 1727065 2019-01-04T11:04:08Z 2019-01-04T11:04:08Z NONE Awesome - will get myself up and running on 0.26 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} CSV export in "Advanced export" pane doesn't respect query 395236066  
455520561 https://github.com/simonw/datasette/issues/401#issuecomment-455520561 https://api.github.com/repos/simonw/datasette/issues/401 MDEyOklzc3VlQ29tbWVudDQ1NTUyMDU2MQ== dazzag24 1055831 2019-01-18T11:48:13Z 2019-01-18T11:48:13Z NONE Thanks. I'll take a look at your changes. I must admit I was struggling to see how to pass info from the python code in __init__.py into the javascript document.addEventListener function. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} How to pass configuration to plugins? 400229984  
455752238 https://github.com/simonw/datasette/issues/403#issuecomment-455752238 https://api.github.com/repos/simonw/datasette/issues/403 MDEyOklzc3VlQ29tbWVudDQ1NTc1MjIzOA== ccorcos 1794527 2019-01-19T05:47:55Z 2019-01-19T05:47:55Z NONE Ah. That makes much more sense. Interesting approach. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} How does persistence work? 400511206  
463917744 https://github.com/simonw/datasette/issues/187#issuecomment-463917744 https://api.github.com/repos/simonw/datasette/issues/187 MDEyOklzc3VlQ29tbWVudDQ2MzkxNzc0NA== phoenixjun 4190962 2019-02-15T05:58:44Z 2019-02-15T05:58:44Z NONE is this supported or not? you can comment if it is not supported so that people like me can stop trying. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Windows installation error 309033998  
464341721 https://github.com/simonw/sqlite-utils/issues/8#issuecomment-464341721 https://api.github.com/repos/simonw/sqlite-utils/issues/8 MDEyOklzc3VlQ29tbWVudDQ2NDM0MTcyMQ== psychemedia 82988 2019-02-16T12:08:41Z 2019-02-16T12:08:41Z NONE We also get an error if a column name contains a `.` {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Problems handling column names containing spaces or -  403922644  
466325528 https://github.com/simonw/datasette/issues/187#issuecomment-466325528 https://api.github.com/repos/simonw/datasette/issues/187 MDEyOklzc3VlQ29tbWVudDQ2NjMyNTUyOA== fkuhn 2892252 2019-02-22T09:03:50Z 2019-02-22T09:03:50Z NONE I ran into the same issue when trying to install datasette on windows after successfully using it on linux. Unfortunately, there has not been any progress in implementing uvloop for windows - so I recommend not to use it on win. You can read about this issue here: [https://github.com/MagicStack/uvloop/issues/14](url) {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Windows installation error 309033998  
472844001 https://github.com/simonw/datasette/issues/409#issuecomment-472844001 https://api.github.com/repos/simonw/datasette/issues/409 MDEyOklzc3VlQ29tbWVudDQ3Mjg0NDAwMQ== Uninen 43100 2019-03-14T13:04:20Z 2019-03-14T13:04:42Z NONE It seems this affects the Datasette Publish -site as well: https://github.com/simonw/datasette-publish-support/issues/3 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Zeit API v1 does not work for new users - need to migrate to v2 408376825  
472875713 https://github.com/simonw/datasette/issues/409#issuecomment-472875713 https://api.github.com/repos/simonw/datasette/issues/409 MDEyOklzc3VlQ29tbWVudDQ3Mjg3NTcxMw== michaelmcandrew 209967 2019-03-14T14:14:39Z 2019-03-14T14:14:39Z NONE also linking this zeit issue in case it is helpful: https://github.com/zeit/now-examples/issues/163#issuecomment-440125769 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Zeit API v1 does not work for new users - need to migrate to v2 408376825  
473217334 https://github.com/simonw/datasette/issues/415#issuecomment-473217334 https://api.github.com/repos/simonw/datasette/issues/415 MDEyOklzc3VlQ29tbWVudDQ3MzIxNzMzNA== ad-si 36796532 2019-03-15T09:30:57Z 2019-03-15T09:30:57Z NONE Awesome, thanks! 😁 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Add query parameter to hide SQL textarea 418329842  
480621924 https://github.com/simonw/sqlite-utils/issues/18#issuecomment-480621924 https://api.github.com/repos/simonw/sqlite-utils/issues/18 MDEyOklzc3VlQ29tbWVudDQ4MDYyMTkyNA== psychemedia 82988 2019-04-07T19:31:42Z 2019-04-07T19:31:42Z NONE I've just noticed that SQLite lets you IGNORE inserts that collide with a pre-existing key. This can be quite handy if you have a dataset that keeps changing in part, and you don't want to upsert and replace pre-existing PK rows but you do want to ignore collisions to existing PK rows. Do `sqlite_utils` support such (cavalier!) behaviour? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} .insert/.upsert/.insert_all/.upsert_all should add missing columns 413871266  
482994231 https://github.com/simonw/sqlite-utils/issues/8#issuecomment-482994231 https://api.github.com/repos/simonw/sqlite-utils/issues/8 MDEyOklzc3VlQ29tbWVudDQ4Mjk5NDIzMQ== psychemedia 82988 2019-04-14T15:04:07Z 2019-04-14T15:29:33Z NONE PLEASE IGNORE THE BELOW... I did a package update and rebuilt the kernel I was working in... may just have been an old version of sqlite_utils, seems to be working now. (Too many containers / too many environments!) Has an issue been reintroduced here with FTS? eg I'm getting an error thrown by spaces in column names here: ``` /usr/local/lib/python3.7/site-packages/sqlite_utils/db.py in insert_all(self, records, pk, foreign_keys, upsert, batch_size, column_order) def enable_fts(self, columns, fts_version="FTS5"): --> 329 "Enables FTS on the specified columns" 330 sql = """ 331 CREATE VIRTUAL TABLE "{table}_fts" USING {fts_version} ( ``` when trying an `insert_all`. Also, if a col has a `.` in it, I seem to get: ``` /usr/local/lib/python3.7/site-packages/sqlite_utils/db.py in insert_all(self, records, pk, foreign_keys, upsert, batch_size, column_order) 327 jsonify_if_needed(record.get(key, None)) for key in all_columns 328 ) --> 329 result = self.db.conn.execute(sql, values) 330 self.db.conn.commit() 331 self.last_id = result.lastrowid OperationalError: near ".": syntax error ``` (Can't post a worked minimal example right now; racing trying to build something against a live timing screen that will stop until next weekend in an hour or two...) PS Hmmm I did a test and they seem to work; I must be messing up s/where else... ``` import sqlite3 from sqlite_utils import Database dbname='testingDB_sqlite_utils.db' #!rm $dbname conn = sqlite3.connect(dbname, timeout=10) #Setup database tables c = conn.cursor() setup=''' CREATE TABLE IF NOT EXISTS "test1" ( "NO" INTEGER, "NAME" TEXT ); CREATE TABLE IF NOT EXISTS "test2" ( "NO" INTEGER, `TIME OF DAY` TEXT ); CREATE TABLE IF NOT EXISTS "test3" ( "NO" INTEGER, `AVG. SPEED (MPH)` FLOAT ); ''' c.executescript(setup) DB = Database(conn) … {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Problems handling column names containing spaces or -  403922644  
485557574 https://github.com/simonw/datasette/pull/426#issuecomment-485557574 https://api.github.com/repos/simonw/datasette/issues/426 MDEyOklzc3VlQ29tbWVudDQ4NTU1NzU3NA== carlmjohnson 222245 2019-04-22T21:23:22Z 2019-04-22T21:23:22Z NONE Can you cut a new release with this? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Upgrade to Jinja2==2.10.1 431756352  
489353316 https://github.com/simonw/datasette/issues/187#issuecomment-489353316 https://api.github.com/repos/simonw/datasette/issues/187 MDEyOklzc3VlQ29tbWVudDQ4OTM1MzMxNg== carsonyl 46059 2019-05-04T18:36:36Z 2019-05-04T18:36:36Z NONE Hi @simonw - I just hit this issue when trying out Datasette after your PyCon talk today. Datasette is pinned to Sanic 0.7.0, but it looks like 0.8.0 added the option to remove the uvloop dependency for Windows by having an environment variable `SANIC_NO_UVLOOP` at install time. Maybe that'll be sufficient before a port to Starlette? {"total_count": 1, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 1, "eyes": 0} Windows installation error 309033998  
490039343 https://github.com/simonw/datasette/issues/187#issuecomment-490039343 https://api.github.com/repos/simonw/datasette/issues/187 MDEyOklzc3VlQ29tbWVudDQ5MDAzOTM0Mw== Maltazar 6422964 2019-05-07T11:24:42Z 2019-05-07T11:24:42Z NONE I totally agree with carsonyl {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Windows installation error 309033998  
494297022 https://github.com/simonw/datasette/issues/272#issuecomment-494297022 https://api.github.com/repos/simonw/datasette/issues/272 MDEyOklzc3VlQ29tbWVudDQ5NDI5NzAyMg== tomchristie 647359 2019-05-21T08:39:17Z 2019-05-21T08:39:17Z NONE Useful context stuff: > ASGI decodes %2F encoded slashes in URLs automatically `raw_path` for ASGI looks to be under consideration: https://github.com/django/asgiref/issues/87 > uvicorn doesn't support Python 3.5 That was an issue specifically against the <=3.5.2 minor point releases of Python, now resolved: https://github.com/encode/uvicorn/issues/330 👍 > Starlette for things like form parsing - but it's 3.6+ only! Yeah - the bits that require 3.6 are anywhere with the "async for" syntax. If it wasn't for that I'd downport it, but that one's a pain. It's the one bit of syntax to watch out for if you're looking to bring any bits of implementation across to Datasette. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Port Datasette to ASGI 324188953  
494459264 https://github.com/simonw/datasette/issues/184#issuecomment-494459264 https://api.github.com/repos/simonw/datasette/issues/184 MDEyOklzc3VlQ29tbWVudDQ5NDQ1OTI2NA== carlmjohnson 222245 2019-05-21T16:17:29Z 2019-05-21T16:17:29Z NONE Reopening this because it still raises 500 for incorrect table capitalization. Example: - https://salaries.news.baltimoresun.com/salaries/2018+Maryland+state+salaries/1 200 OK - https://salaries.news.baltimoresun.com/salaries/bad-table/1 400 - https://salaries.news.baltimoresun.com/salaries/2018+maryland+state+salaries/1 500 Internal Error (note lowercase 'm') I think because the table name exists but is not in its canonical form, it triggers a dict lookup error. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} 500 from missing table name 292011379  
495034774 https://github.com/simonw/datasette/issues/483#issuecomment-495034774 https://api.github.com/repos/simonw/datasette/issues/483 MDEyOklzc3VlQ29tbWVudDQ5NTAzNDc3NA== jcmkk3 45919695 2019-05-23T01:38:32Z 2019-05-23T01:43:04Z NONE I think that location information is one of the other common pieces of hierarchical data. At least one that is general enough that extra dimensions could be auto-generated. Also, I think this is an awesome project. Thank you for creating this. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Option to facet by date using month or year 447408527  
496966227 https://github.com/simonw/datasette/issues/120#issuecomment-496966227 https://api.github.com/repos/simonw/datasette/issues/120 MDEyOklzc3VlQ29tbWVudDQ5Njk2NjIyNw== duarteocarmo 26342344 2019-05-29T14:40:52Z 2019-05-29T14:40:52Z NONE I would really like this. If you give me some pointers @simonw I'm willing to PR! {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Plugin that adds an authentication layer of some sort 275087397  
497885590 https://github.com/simonw/datasette/issues/496#issuecomment-497885590 https://api.github.com/repos/simonw/datasette/issues/496 MDEyOklzc3VlQ29tbWVudDQ5Nzg4NTU5MA== costrouc 1740337 2019-05-31T23:05:05Z 2019-05-31T23:05:05Z NONE Upon doing a "fix" which allowed a longer build timeout the cloudrun container was too slow when it actually ran. So I would say if your sqlite database is over 1 GB heroku and cloudrun are not good options. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Additional options to gcloud build command in cloudrun - timeout 450862577  
499260727 https://github.com/simonw/datasette/issues/499#issuecomment-499260727 https://api.github.com/repos/simonw/datasette/issues/499 MDEyOklzc3VlQ29tbWVudDQ5OTI2MDcyNw== chrismp 7936571 2019-06-05T21:22:55Z 2019-06-05T21:22:55Z NONE I was thinking of having some kind of GUI in which regular reporters can upload a CSV and choose how to name the tables, columns and whatnot. Maybe it's possible to make such a GUI using Jinja template language? I ask because I'm unsure how to pursue this but I'd like to try. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Accessibility for non-techie newsies?  451585764  
499262397 https://github.com/simonw/datasette/issues/498#issuecomment-499262397 https://api.github.com/repos/simonw/datasette/issues/498 MDEyOklzc3VlQ29tbWVudDQ5OTI2MjM5Nw== chrismp 7936571 2019-06-05T21:28:32Z 2019-06-05T21:28:32Z NONE Thinking about this more, I'd probably have to make a template page to go along with this, right? I'm guessing there's no way to add an all-databases-all-tables search to datasette's "home page" except by copying the "home page" template and editing it? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Full text search of all tables at once? 451513541  
500238035 https://github.com/simonw/datasette/issues/506#issuecomment-500238035 https://api.github.com/repos/simonw/datasette/issues/506 MDEyOklzc3VlQ29tbWVudDUwMDIzODAzNQ== Gagravarr 1059677 2019-06-09T19:21:18Z 2019-06-09T19:21:18Z NONE If you don't mind calling out to Java, then Apache Tika is able to tell you what a load of "binary stuff" is, plus render it to XHTML where possible. There's a python wrapper around the Apache Tika server, but for a more typical datasette usecase you'd probably just want to grab the Tika CLI jar, and call it with `--detect` and/or `--xhtml` to process the unknown binary blob {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Option to display binary data 453846217  
501903071 https://github.com/simonw/datasette/issues/498#issuecomment-501903071 https://api.github.com/repos/simonw/datasette/issues/498 MDEyOklzc3VlQ29tbWVudDUwMTkwMzA3MQ== chrismp 7936571 2019-06-13T22:35:06Z 2019-06-13T22:35:06Z NONE I'd like to start working on this. I've made a custom template for `index.html` that contains a `form` that contains a search `input`. But I'm not sure where to go from here. When user enters a search term, I'd like for that term to go into a function I'll make that will search all tables with full text search enabled. Can I make additional custom Python scripts for this or must I edit datasette's files directly? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Full text search of all tables at once? 451513541  
503236800 https://github.com/simonw/datasette/issues/512#issuecomment-503236800 https://api.github.com/repos/simonw/datasette/issues/512 MDEyOklzc3VlQ29tbWVudDUwMzIzNjgwMA== chrismp 7936571 2019-06-18T17:36:37Z 2019-06-18T17:36:37Z NONE Oh I didn't know the `description` field could be used for a database's metadata. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} "about" parameter in metadata does not appear when alone 457147936  
503237884 https://github.com/simonw/datasette/issues/502#issuecomment-503237884 https://api.github.com/repos/simonw/datasette/issues/502 MDEyOklzc3VlQ29tbWVudDUwMzIzNzg4NA== chrismp 7936571 2019-06-18T17:39:18Z 2019-06-18T17:46:08Z NONE It appears that I cannot reopen this issue but the proposed solution did not solve it. The link is not there. I have full text search enabled for a bunch of tables in my database and even clicking the link to reveal hidden tables did not show the download DB link. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Exporting sqlite database(s)? 453131917  
503249999 https://github.com/simonw/datasette/issues/513#issuecomment-503249999 https://api.github.com/repos/simonw/datasette/issues/513 MDEyOklzc3VlQ29tbWVudDUwMzI0OTk5OQ== chrismp 7936571 2019-06-18T18:11:36Z 2019-06-18T18:11:36Z NONE Ah, so basically put the SQLite databases on Linode, for example, and run `datasette serve` on there? I'm comfortable with that. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Is it possible to publish to Heroku despite slug size being too large? 457201907  
504684709 https://github.com/simonw/datasette/issues/514#issuecomment-504684709 https://api.github.com/repos/simonw/datasette/issues/514 MDEyOklzc3VlQ29tbWVudDUwNDY4NDcwOQ== chrismp 7936571 2019-06-22T17:36:25Z 2019-06-22T17:36:25Z NONE > WorkingDirectory=/path/to/data @russss, Which directory does this represent? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Documentation with recommendations on running Datasette in production without using Docker 459397625  
504685187 https://github.com/simonw/datasette/issues/514#issuecomment-504685187 https://api.github.com/repos/simonw/datasette/issues/514 MDEyOklzc3VlQ29tbWVudDUwNDY4NTE4Nw== chrismp 7936571 2019-06-22T17:43:24Z 2019-06-22T17:43:24Z NONE > > > WorkingDirectory=/path/to/data > > > > > > @russss, Which directory does this represent? > > It's the working directory (cwd) of the spawned process. In this case if you set it to the directory your data is in, you can use relative paths to the db (and metadata/templates/etc) in the `ExecStart` command. In my case, on a remote server, I set up a virtual environment in `/home/chris/Env/datasette`, and when I activated that environment I ran `pip install datasette`. My datasette project is in `/home/chris/datatsette-project`, so I guess I'd use that directory in the `WorkingDirectory` parameter? And the `ExecStart` parameter would be `/home/chris/Env/datasette/lib/python3.7/site-packages/datasette serve -h 0.0.0.0 my.db` I'm guessing? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Documentation with recommendations on running Datasette in production without using Docker 459397625  
504686266 https://github.com/simonw/datasette/issues/514#issuecomment-504686266 https://api.github.com/repos/simonw/datasette/issues/514 MDEyOklzc3VlQ29tbWVudDUwNDY4NjI2Ng== chrismp 7936571 2019-06-22T17:58:50Z 2019-06-23T21:21:57Z NONE @russss Actually, here's what I've got in `/etc/systemd/system/datasette.service` ``` [Unit] Description=Datasette After=network.target [Service] Type=simple User=chris WorkingDirectory=/home/chris/digital-library ExecStart=/home/chris/Env/datasette/lib/python3.7/site-packages/datasette serve -h 0.0.0.0 databases/*.db --cors --metadata metadata.json Restart=on-failure [Install] WantedBy=multi-user.target ``` I ran: ``` $ sudo systemctl daemon-reload $ sudo systemctl enable datasette $ sudo systemctl start datasette ``` Then I ran: `$ journalctl -u datasette -f` Got this message. ``` Hint: You are currently not seeing messages from other users and the system. Users in groups 'adm', 'systemd-journal', 'wheel' can see all messages. Pass -q to turn off this notice. -- Logs begin at Thu 2019-06-20 00:05:23 CEST. -- Jun 22 19:55:57 ns331247 systemd[16176]: datasette.service: Failed to execute command: Permission denied Jun 22 19:55:57 ns331247 systemd[16176]: datasette.service: Failed at step EXEC spawning /home/chris/Env/datasette/lib/python3.7/site-packages/datasette: Permission denied Jun 22 19:55:57 ns331247 systemd[16184]: datasette.service: Failed to execute command: Permission denied Jun 22 19:55:57 ns331247 systemd[16184]: datasette.service: Failed at step EXEC spawning /home/chris/Env/datasette/lib/python3.7/site-packages/datasette: Permission denied Jun 22 19:55:58 ns331247 systemd[16186]: datasette.service: Failed to execute command: Permission denied Jun 22 19:55:58 ns331247 systemd[16186]: datasette.service: Failed at step EXEC spawning /home/chris/Env/datasette/lib/python3.7/site-packages/datasette: Permission denied Jun 22 19:55:58 ns331247 systemd[16190]: datasette.service: Failed to execute command: Permission denied Jun 22 19:55:58 ns331247 systemd[16190]: datasette.service: Failed at step EXEC spawning /home/chris/Env/datasette/lib/python3.7/site-packages/datasette: Permission denied Jun 22 19:55:58 ns331247 systemd[16191]: datasette.se… {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Documentation with recommendations on running Datasette in production without using Docker 459397625  
504785662 https://github.com/simonw/datasette/issues/498#issuecomment-504785662 https://api.github.com/repos/simonw/datasette/issues/498 MDEyOklzc3VlQ29tbWVudDUwNDc4NTY2Mg== chrismp 7936571 2019-06-23T20:47:37Z 2019-06-23T20:47:37Z NONE Very cool, thank you. Using http://search-24ways.herokuapp.com as an example, let's say I want to search all FTS columns in all tables in all databases for the word "web." [Here's a link](http://search-24ways.herokuapp.com/24ways-f8f455f?sql=select+count%28*%29from+articles+where+rowid+in+%28select+rowid+from+articles_fts+where+articles_fts+match+%3Asearch%29&search=web) to the query I'd need to run to search "web" on FTS columns in `articles` table of the `24ways` database. And [here's a link](http://search-24ways.herokuapp.com/24ways-f8f455f.json?sql=select+count%28*%29from+articles+where+rowid+in+%28select+rowid+from+articles_fts+where+articles_fts+match+%3Asearch%29&search=web) to the JSON version of the above result. I'd like to get the JSON result of that query for each FTS table of each database in my datasette project. Is it possible in Javascript to automate the construction of query URLs like the one I linked, but for every FTS table in my datasette project? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Full text search of all tables at once? 451513541  
504789231 https://github.com/simonw/datasette/issues/514#issuecomment-504789231 https://api.github.com/repos/simonw/datasette/issues/514 MDEyOklzc3VlQ29tbWVudDUwNDc4OTIzMQ== chrismp 7936571 2019-06-23T21:35:33Z 2019-06-23T21:35:33Z NONE @russss Thanks, just one more thing. I edited `datasette.service`: ``` [Unit] Description=Datasette After=network.target [Service] Type=simple User=chris WorkingDirectory=/home/chris/digital-library ExecStart=/home/chris/Env/datasette/bin/datasette serve -h 0.0.0.0 databases/*.db --cors --metadata metadata.json Restart=on-failure [Install] WantedBy=multi-user.target ``` Then ran: ``` $ sudo systemctl daemon-reload $ sudo systemctl enable datasette $ sudo systemctl start datasette ``` But the logs from `journalctl` show this datasette error: ``` Jun 23 23:31:41 ns331247 datasette[1771]: Error: Invalid value for "[FILES]...": Path "databases/*.db" does not exist. Jun 23 23:31:44 ns331247 datasette[1778]: Usage: datasette serve [OPTIONS] [FILES]... Jun 23 23:31:44 ns331247 datasette[1778]: Try "datasette serve --help" for help. ``` But the `databases` directory does exist in the directory specified by `WorkingDirectory`. Is this a datasette problem or did I write something incorrectly in the `.service` file? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Documentation with recommendations on running Datasette in production without using Docker 459397625  
504998302 https://github.com/simonw/datasette/issues/514#issuecomment-504998302 https://api.github.com/repos/simonw/datasette/issues/514 MDEyOklzc3VlQ29tbWVudDUwNDk5ODMwMg== chrismp 7936571 2019-06-24T12:57:19Z 2019-06-24T12:57:19Z NONE Same error when I used the full path. On Sun, Jun 23, 2019 at 18:31 Simon Willison <notifications@github.com> wrote: > I suggest trying a full path in ExecStart like this: > > ExecStart=/home/chris/Env/datasette/bin/datasette serve -h 0.0.0.0 > /home/chris/digital-library/databases/*.db --cors --metadata metadata.json > > That should eliminate the chance of some kind of path confusion. > > — > You are receiving this because you authored the thread. > Reply to this email directly, view it on GitHub > <https://github.com/simonw/datasette/issues/514?email_source=notifications&email_token=AB4RUOZESVC5ZI2AZFJJD2TP372UJA5CNFSM4H2VJCSKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYLISIY#issuecomment-504793379>, > or mute the thread > <https://github.com/notifications/unsubscribe-auth/AB4RUO243SPJ7YSWJU7YKF3P372UJANCNFSM4H2VJCSA> > . > -- *Chris Persaud* ChrisPersaud.com {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Documentation with recommendations on running Datasette in production without using Docker 459397625  
505228873 https://github.com/simonw/datasette/issues/498#issuecomment-505228873 https://api.github.com/repos/simonw/datasette/issues/498 MDEyOklzc3VlQ29tbWVudDUwNTIyODg3Mw== chrismp 7936571 2019-06-25T00:21:17Z 2019-06-25T00:21:17Z NONE Eh, I'm not concerned with a relevance score right now. I think I'd be fine with a search whose results show links to data tables with at least one result. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Full text search of all tables at once? 451513541  
505232675 https://github.com/simonw/datasette/issues/514#issuecomment-505232675 https://api.github.com/repos/simonw/datasette/issues/514 MDEyOklzc3VlQ29tbWVudDUwNTIzMjY3NQ== chrismp 7936571 2019-06-25T00:43:12Z 2019-06-25T00:43:12Z NONE Yep, that worked to get the site up and running at `my-server.com:8000` but when I edited `run-datasette.sh` to contain this... ``` #!/bin/bash /home/chris/Env/datasette/bin/datasette serve -h 0.0.0.0 -p 80 /home/chris/digital-library/databases/*.db --cors --metadata /home/chris/digital-library/metadata.json ``` I got this error. ``` Jun 25 02:42:41 ns331247 run-datasette.sh[747]: [2019-06-25 02:42:41 +0200] [752] [INFO] Goin' Fast @ http://0.0.0.0:80 Jun 25 02:42:41 ns331247 run-datasette.sh[747]: [2019-06-25 02:42:41 +0200] [752] [ERROR] Unable to start server Jun 25 02:42:41 ns331247 run-datasette.sh[747]: Traceback (most recent call last): Jun 25 02:42:41 ns331247 run-datasette.sh[747]: File "uvloop/loop.pyx", line 1111, in uvloop.loop.Loop._create_server Jun 25 02:42:41 ns331247 run-datasette.sh[747]: File "uvloop/handles/tcp.pyx", line 89, in uvloop.loop.TCPServer.bind Jun 25 02:42:41 ns331247 run-datasette.sh[747]: File "uvloop/handles/streamserver.pyx", line 95, in uvloop.loop.UVStreamServer._fatal_error Jun 25 02:42:41 ns331247 run-datasette.sh[747]: File "uvloop/handles/tcp.pyx", line 87, in uvloop.loop.TCPServer.bind Jun 25 02:42:41 ns331247 run-datasette.sh[747]: File "uvloop/handles/tcp.pyx", line 26, in uvloop.loop.__tcp_bind Jun 25 02:42:41 ns331247 run-datasette.sh[747]: PermissionError: [Errno 13] Permission denied Jun 25 02:42:41 ns331247 run-datasette.sh[747]: During handling of the above exception, another exception occurred: Jun 25 02:42:41 ns331247 run-datasette.sh[747]: Traceback (most recent call last): Jun 25 02:42:41 ns331247 run-datasette.sh[747]: File "/home/chris/Env/datasette/lib/python3.7/site-packages/sanic/server.py", line 591, in serve Jun 25 02:42:41 ns331247 run-datasette.sh[747]: http_server = loop.run_until_complete(server_coroutine) Jun 25 02:42:41 ns331247 run-datasette.sh[747]: File "uvloop/loop.pyx", line 1451, in uvloop.loop.Loop.run_until_complete Jun 25 02:42:41 ns331247 run-datasette.sh[747]: File "uvloop/loop.pyx", line … {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Documentation with recommendations on running Datasette in production without using Docker 459397625  
505424665 https://github.com/simonw/datasette/pull/529#issuecomment-505424665 https://api.github.com/repos/simonw/datasette/issues/529 MDEyOklzc3VlQ29tbWVudDUwNTQyNDY2NQ== nathancahill 1383872 2019-06-25T12:35:07Z 2019-06-25T12:35:07Z NONE Opps, wrote this late last night, didn't see you'd already worked on the issue. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Use keyed rows - fixes #521 460396952  
506000023 https://github.com/simonw/datasette/issues/522#issuecomment-506000023 https://api.github.com/repos/simonw/datasette/issues/522 MDEyOklzc3VlQ29tbWVudDUwNjAwMDAyMw== nathancahill 1383872 2019-06-26T18:48:53Z 2019-06-26T18:48:53Z NONE Reference implementation from Requests: https://github.com/kennethreitz/requests/blob/3.0/requests/structures.py#L14 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Handle case-insensitive headers in a nicer way 459622390  
506985050 https://github.com/simonw/datasette/issues/498#issuecomment-506985050 https://api.github.com/repos/simonw/datasette/issues/498 MDEyOklzc3VlQ29tbWVudDUwNjk4NTA1MA== chrismp 7936571 2019-06-29T20:28:21Z 2019-06-29T20:28:21Z NONE In my case, I have an ever-growing number of databases and tables within them. Most tables have FTS enabled. I cannot predict the names of future tables and databases, nor can I predict the names of the columns for which I wish to enable FTS. For my purposes, I was thinking of writing up something that sends these two GET requests to each of my databases' tables. ``` http://my-server.com/database-name/table-name.json?_search=mySearchString http://my-server.com/database-name/table-name.json ``` In the resulting JSON strings, I'd check the value of the key `filtered_table_rows_count`. If the value is `0` in the first URL's result, or if values from both requests are the same, that means FTS is either disabled for the table or it has no rows matching the search query. Is this feasible within the datasette library, or would it require some type of plugin? Or maybe you know of a better way of accomplishing this goal. Maybe I overlooked something. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Full text search of all tables at once? 451513541  
508590397 https://github.com/simonw/datasette/issues/498#issuecomment-508590397 https://api.github.com/repos/simonw/datasette/issues/498 MDEyOklzc3VlQ29tbWVudDUwODU5MDM5Nw== chrismp 7936571 2019-07-04T23:34:41Z 2019-07-04T23:34:41Z NONE I'll take your suggestion and do this all in Javascript. Would I need to make a `static/` folder in my datasette project's root directory and make a custom `index.html` template that pulls from `static/js/search-all-fts.js`? Or would you suggest another way? {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Full text search of all tables at once? 451513541  
509042334 https://github.com/simonw/datasette/issues/498#issuecomment-509042334 https://api.github.com/repos/simonw/datasette/issues/498 MDEyOklzc3VlQ29tbWVudDUwOTA0MjMzNA== chrismp 7936571 2019-07-08T00:18:29Z 2019-07-08T00:18:29Z NONE @simonw I made this primitive search that I've put in my Datasette project's custom templates directory: https://gist.github.com/chrismp/e064b41f08208a6f9a93150a23cf7e03 {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Full text search of all tables at once? 451513541  
509154312 https://github.com/simonw/datasette/issues/514#issuecomment-509154312 https://api.github.com/repos/simonw/datasette/issues/514 MDEyOklzc3VlQ29tbWVudDUwOTE1NDMxMg== JesperTreetop 4363711 2019-07-08T09:36:25Z 2019-07-08T09:40:33Z NONE @chrismp: Ports 1024 and under are privileged and can usually only be bound by a root or supervisor user, so it makes sense if you're running as the user `chris` that port 8000 works but 80 doesn't. See [this generic question-and-answer](https://superuser.com/questions/710253/allow-non-root-process-to-bind-to-port-80-and-443) and [this systemd question-and-answer](https://stackoverflow.com/questions/40865775/linux-systemd-service-on-port-80) for more information about ways to skin this cat. Without knowing your specific circumstances, either extending those privileges to that service/executable/user, proxying them through something like nginx or indeed looking at what the nginx systemd job has to do to listen at port 80 all sound like good ways to start. At this point, this is more generic systemd/Linux support than a Datasette issue, which is why a complete rando like me is able to contribute anything. {"total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Documentation with recommendations on running Datasette in production without using Docker 459397625  
509431603 https://github.com/simonw/datasette/issues/514#issuecomment-509431603 https://api.github.com/repos/simonw/datasette/issues/514 MDEyOklzc3VlQ29tbWVudDUwOTQzMTYwMw== chrismp 7936571 2019-07-08T23:39:52Z 2019-07-08T23:39:52Z NONE In `datasette.service`, I edited ``` User=chris ``` To... ``` User=root ``` It worked. I can access `http://my-server.com`. I hope this is safe. Thanks for all the help, everyone. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Documentation with recommendations on running Datasette in production without using Docker 459397625  
511252718 https://github.com/simonw/datasette/issues/558#issuecomment-511252718 https://api.github.com/repos/simonw/datasette/issues/558 MDEyOklzc3VlQ29tbWVudDUxMTI1MjcxOA== 0x1997 380586 2019-07-15T01:29:29Z 2019-07-15T01:29:29Z NONE Thanks, the latest version works. {"total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0} Support unicode in url 467218270  

Next page

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE [issue_comments] (
   [html_url] TEXT,
   [issue_url] TEXT,
   [id] INTEGER PRIMARY KEY,
   [node_id] TEXT,
   [user] INTEGER REFERENCES [users]([id]),
   [created_at] TEXT,
   [updated_at] TEXT,
   [author_association] TEXT,
   [body] TEXT,
   [reactions] TEXT,
   [issue] INTEGER REFERENCES [issues]([id])
, [performed_via_github_app] TEXT);
CREATE INDEX [idx_issue_comments_issue]
                ON [issue_comments] ([issue]);
CREATE INDEX [idx_issue_comments_user]
                ON [issue_comments] ([user]);
Powered by Datasette · Queries took 431.607ms · About: simonw/datasette-graphql