home / github / issue_comments

Menu
  • Search all tables
  • GraphQL API

issue_comments: 1115462720

This data as json

html_url issue_url id node_id user created_at updated_at author_association body reactions issue performed_via_github_app
https://github.com/simonw/datasette/issues/1737#issuecomment-1115462720 https://api.github.com/repos/simonw/datasette/issues/1737 1115462720 IC_kwDOBm6k_c5CfJxA 9599 2022-05-02T23:25:03Z 2022-05-02T23:25:03Z OWNER

Here's a script that seems to work. It builds the wheel, starts a Python web server that serves the wheel, runs a test with shot-scraper and then shuts down the server again.

```bash

!/bin/bash

Build the wheel

python3 -m build

Find name of wheel

wheel=$(basename $(ls dist/*.whl))

strip off the dist/

Create a blank index page

echo '

<script src="https://cdn.jsdelivr.net/pyodide/v0.20.0/full/pyodide.js"></script>

' > dist/index.html

Run a server for that dist/ folder

cd dist python3 -m http.server 8529 & cd ..

shot-scraper javascript http://localhost:8529/ " async () => { let pyodide = await loadPyodide(); await pyodide.loadPackage(['micropip', 'ssl', 'setuptools']); let output = await pyodide.runPythonAsync(` import micropip await micropip.install('h11==0.12.0') await micropip.install('http://localhost:8529/$wheel') import ssl import setuptools from datasette.app import Datasette ds = Datasette(memory=True, settings={'num_sql_threads': 0}) (await ds.client.get('/_memory.json?sql=select+55+as+itworks&_shape=array')).text `); if (JSON.parse(output)[0].itworks != 55) { throw 'Got ' + output + ', expected itworks: 55'; } return 'Test passed!'; } "

Shut down the server

pkill -f 'http.server 8529' ```

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
1223459734  
Powered by Datasette · Queries took 0.987ms · About: github-to-sqlite