{"html_url": "https://github.com/simonw/datasette/issues/747#issuecomment-621948898", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/747", "id": 621948898, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMTk0ODg5OA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T16:05:50Z", "updated_at": "2020-04-30T16:05:50Z", "author_association": "OWNER", "body": "Relevant code:\r\n\r\nhttps://github.com/simonw/datasette/blob/e37f4077c0f1cd09d4102213d4e2a512af471b8d/datasette/app.py#L206-L208", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610192152, "label": "Directory configuration mode should support metadata.yaml"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/747#issuecomment-622003376", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/747", "id": 622003376, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjAwMzM3Ng==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T17:45:32Z", "updated_at": "2020-04-30T17:45:32Z", "author_association": "OWNER", "body": "I can use this function to load the JSON-or-YAML:\r\nhttps://github.com/simonw/datasette/blob/d349d57cdf3d577afb62bdf784af342a4d5be660/datasette/utils/__init__.py#L798-L806", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610192152, "label": "Directory configuration mode should support metadata.yaml"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/747#issuecomment-622036934", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/747", "id": 622036934, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjAzNjkzNA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T18:51:18Z", "updated_at": "2020-04-30T18:51:18Z", "author_association": "OWNER", "body": "Needs docs.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610192152, "label": "Directory configuration mode should support metadata.yaml"}, "performed_via_github_app": null} {"html_url": "https://github.com/simonw/datasette/issues/747#issuecomment-622043887", "issue_url": "https://api.github.com/repos/simonw/datasette/issues/747", "id": 622043887, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjA0Mzg4Nw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T19:04:19Z", "updated_at": "2020-04-30T19:04:19Z", "author_association": "OWNER", "body": "https://datasette.readthedocs.io/en/latest/config.html#configuration-directory-mode", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610192152, "label": "Directory configuration mode should support metadata.yaml"}, "performed_via_github_app": null} {"html_url": "https://github.com/dogsheep/github-to-sqlite/issues/34#issuecomment-622133298", "issue_url": "https://api.github.com/repos/dogsheep/github-to-sqlite/issues/34", "id": 622133298, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjEzMzI5OA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T21:48:24Z", "updated_at": "2020-04-30T21:48:24Z", "author_association": "MEMBER", "body": "Unfortunately it's not available through any GitHub API - I managed to figure out how to get dependencies, but I need dependents. https://github.com/simonw/til/blob/master/github/dependencies-graphql-api.md", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610408908, "label": "Command for retrieving dependents for a repo"}, "performed_via_github_app": null} {"html_url": "https://github.com/dogsheep/github-to-sqlite/issues/34#issuecomment-622133422", "issue_url": "https://api.github.com/repos/dogsheep/github-to-sqlite/issues/34", "id": 622133422, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjEzMzQyMg==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T21:48:39Z", "updated_at": "2020-04-30T21:48:39Z", "author_association": "MEMBER", "body": "It looks like the only option is to scrape them. I'll do that and then replace with an API as soon as one becomes available.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610408908, "label": "Command for retrieving dependents for a repo"}, "performed_via_github_app": null} {"html_url": "https://github.com/dogsheep/github-to-sqlite/issues/34#issuecomment-622133775", "issue_url": "https://api.github.com/repos/dogsheep/github-to-sqlite/issues/34", "id": 622133775, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjEzMzc3NQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T21:49:27Z", "updated_at": "2020-04-30T21:49:27Z", "author_association": "MEMBER", "body": "Proposed command:\r\n\r\n github-to-sqlite scrape-dependents github.db simonw/datasette\r\n\r\nI'll pull full details of the scraped repos from the regular API. I'll also record when they were \"first seen\" by the command.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610408908, "label": "Command for retrieving dependents for a repo"}, "performed_via_github_app": null} {"html_url": "https://github.com/dogsheep/github-to-sqlite/issues/34#issuecomment-622135654", "issue_url": "https://api.github.com/repos/dogsheep/github-to-sqlite/issues/34", "id": 622135654, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjEzNTY1NA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T21:53:44Z", "updated_at": "2020-04-30T21:56:06Z", "author_association": "MEMBER", "body": "I think this is the neatest scraping pattern:\r\n```python\r\n[a[\"href\"].lstrip(\"/\") for a in soup.select(\"a[data-hovercard-type=repository]\")]\r\n```", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610408908, "label": "Command for retrieving dependents for a repo"}, "performed_via_github_app": null} {"html_url": "https://github.com/dogsheep/github-to-sqlite/issues/34#issuecomment-622136585", "issue_url": "https://api.github.com/repos/dogsheep/github-to-sqlite/issues/34", "id": 622136585, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjEzNjU4NQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T21:55:51Z", "updated_at": "2020-04-30T21:55:51Z", "author_association": "MEMBER", "body": "And to find the \"Next\" pagination link:\r\n```python\r\nsoup.select(\".paginate-container\")[0].find(\"a\", text=\"Next\")\r\n```", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610408908, "label": "Command for retrieving dependents for a repo"}, "performed_via_github_app": null} {"html_url": "https://github.com/dogsheep/github-to-sqlite/issues/34#issuecomment-622162835", "issue_url": "https://api.github.com/repos/dogsheep/github-to-sqlite/issues/34", "id": 622162835, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjE2MjgzNQ==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T22:59:26Z", "updated_at": "2020-04-30T22:59:26Z", "author_association": "MEMBER", "body": "Documentation: https://github.com/dogsheep/github-to-sqlite/blob/c9f48404481882e8b3af06f35e4801a80ac79ed6/README.md#scraping-dependents-for-a-repository", "reactions": "{\"total_count\": 2, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 2, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 610408908, "label": "Command for retrieving dependents for a repo"}, "performed_via_github_app": null} {"html_url": "https://github.com/dogsheep/github-to-sqlite/issues/33#issuecomment-622169728", "issue_url": "https://api.github.com/repos/dogsheep/github-to-sqlite/issues/33", "id": 622169728, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjE2OTcyOA==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T23:18:51Z", "updated_at": "2020-04-30T23:18:51Z", "author_association": "MEMBER", "body": "Sure, that sounds fine to me.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 609950090, "label": "Fall back to authentication via ENV"}, "performed_via_github_app": null} {"html_url": "https://github.com/dogsheep/github-to-sqlite/issues/33#issuecomment-622171097", "issue_url": "https://api.github.com/repos/dogsheep/github-to-sqlite/issues/33", "id": 622171097, "node_id": "MDEyOklzc3VlQ29tbWVudDYyMjE3MTA5Nw==", "user": {"value": 9599, "label": "simonw"}, "created_at": "2020-04-30T23:22:45Z", "updated_at": "2020-04-30T23:23:57Z", "author_association": "MEMBER", "body": "The `auth.json` mechanism this uses is standard across all of the other Dogsheep tools - it's actually designed so you can have one `auth.json` with a bunch of different credentials for different tools:\r\n\r\n```json\r\n{\r\n \"goodreads_personal_token\": \"...\",\r\n \"goodreads_user_id\": \"...\",\r\n \"github_personal_token\": \"...\",\r\n \"pocket_consumer_key\": \"...\",\r\n \"pocket_username\": \"...\",\r\n \"pocket_access_token\": \"...\"\r\n}\r\n```\r\nBut... `github-to-sqlite` does feel like it deserves a special case here, since it's such a good fit for running inside of GitHub Actions - which even provide a `GITHUB_TOKEN` for you to use!\r\n\r\nSo I don't think it will harm the family of tools too much if this has an environment variable alternative to the `-a` file.", "reactions": "{\"total_count\": 0, \"+1\": 0, \"-1\": 0, \"laugh\": 0, \"hooray\": 0, \"confused\": 0, \"heart\": 0, \"rocket\": 0, \"eyes\": 0}", "issue": {"value": 609950090, "label": "Fall back to authentication via ENV"}, "performed_via_github_app": null}