github-to-sqlite


Namegithub-to-sqlite JSON
Version 2.9 PyPI version JSON
download
home_pagehttps://github.com/dogsheep/github-to-sqlite
SummarySave data from GitHub to a SQLite database
upload_time2023-12-10 21:42:56
maintainer
docs_urlNone
authorSimon Willison
requires_python
licenseApache License, Version 2.0
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # github-to-sqlite

[![PyPI](https://img.shields.io/pypi/v/github-to-sqlite.svg)](https://pypi.org/project/github-to-sqlite/)
[![Changelog](https://img.shields.io/github/v/release/dogsheep/github-to-sqlite?include_prereleases&label=changelog)](https://github.com/dogsheep/github-to-sqlite/releases)
[![Tests](https://github.com/dogsheep/github-to-sqlite/workflows/Test/badge.svg)](https://github.com/dogsheep/github-to-sqlite/actions?query=workflow%3ATest)
[![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://github.com/dogsheep/github-to-sqlite/blob/main/LICENSE)

Save data from GitHub to a SQLite database.

<!-- toc -->

- [Demo](#demo)
- [How to install](#how-to-install)
- [Authentication](#authentication)
- [Fetching issues for a repository](#fetching-issues-for-a-repository)
- [Fetching pull requests for a repository](#fetching-pull-requests-for-a-repository)
- [Fetching issue comments for a repository](#fetching-issue-comments-for-a-repository)
- [Fetching commits for a repository](#fetching-commits-for-a-repository)
- [Fetching releases for a repository](#fetching-releases-for-a-repository)
- [Fetching tags for a repository](#fetching-tags-for-a-repository)
- [Fetching contributors to a repository](#fetching-contributors-to-a-repository)
- [Fetching repos belonging to a user or organization](#fetching-repos-belonging-to-a-user-or-organization)
- [Fetching specific repositories](#fetching-specific-repositories)
- [Fetching repos that have been starred by a user](#fetching-repos-that-have-been-starred-by-a-user)
- [Fetching users that have starred specific repos](#fetching-users-that-have-starred-specific-repos)
- [Fetching GitHub Actions workflows](#fetching-github-actions-workflows)
- [Scraping dependents for a repository](#scraping-dependents-for-a-repository)
- [Fetching emojis](#fetching-emojis)
- [Making authenticated API calls](#making-authenticated-api-calls)

<!-- tocstop -->

## Demo

https://github-to-sqlite.dogsheep.net/ hosts a [Datasette](https://datasette.io/) demo of a database created by [running this tool](https://github.com/dogsheep/github-to-sqlite/blob/main/.github/workflows/deploy-demo.yml#L40-L60) against all of the repositories in the [Dogsheep GitHub organization](https://github.com/dogsheep), plus the [datasette](https://github.com/simonw/datasette) and [sqlite-utils](https://github.com/simonw/sqlite-utils) repositories.

## How to install

    $ pip install github-to-sqlite

## Authentication

Create a GitHub personal access token: https://github.com/settings/tokens

Run this command and paste in your new token:

    $ github-to-sqlite auth

This will create a file called `auth.json` in your current directory containing the required value. To save the file at a different path or filename, use the `--auth=myauth.json` option.

As an alternative to using an `auth.json` file you can add your access token to an environment variable called `GITHUB_TOKEN`.

## Fetching issues for a repository

The `issues` command retrieves all of the issues belonging to a specified repository.

    $ github-to-sqlite issues github.db simonw/datasette

If an `auth.json` file is present it will use the token from that file. It works without authentication for public repositories but you should be aware that GitHub have strict IP-based rate limits for unauthenticated requests.

You can point to a different location of `auth.json` using `-a`:

    $ github-to-sqlite issues github.db simonw/datasette -a /path/to/auth.json

You can use the `--issue` option one or more times to load specific issues:

    $ github-to-sqlite issues github.db simonw/datasette --issue=1

Example: [issues table](https://github-to-sqlite.dogsheep.net/github/issues)

## Fetching pull requests for a repository

While pull requests are a type of issue, you will get more information on pull requests by pulling them separately. For example, whether a pull request has been merged and when.

Following the API of issues, the `pull-requests` command retrieves all of the pull requests belonging to a specified repository.

    $ github-to-sqlite pull-requests github.db simonw/datasette

You can use the `--pull-request` option one or more times to load specific pull request:

    $ github-to-sqlite pull-requests github.db simonw/datasette --pull-request=81

Note that the `merged_by` column on the `pull_requests` table will only be populated for pull requests that are loaded using the `--pull-request` option - the GitHub API does not return this field for pull requests that are loaded in bulk.

You can load only pull requests in a certain state with the `--state` option:

    $ github-to-sqlite pull-requests --state=open github.db simonw/datasette

Pull requests across an entire organization (or more than one) can be loaded with `--org`:

    $ github-to-sqlite pull-requests --state=open --org=psf --org=python github.db

You can use a search query to find pull requests.  Note that no more than 1000 will be loaded (this is a GitHub API limitation), and some data will be missing (base and head SHAs).  When using searches, other filters are ignored; put all criteria into the search itself:

    $ github-to-sqlite pull-requests --search='org:python defaultdict state:closed created:<2023-09-01' github.db

Example: [pull_requests table](https://github-to-sqlite.dogsheep.net/github/pull_requests)

## Fetching issue comments for a repository

The `issue-comments` command retrieves all of the comments on all of the issues in a repository.

It is recommended you run `issues` first, so that each imported comment can have a foreign key pointing to its issue.

    $ github-to-sqlite issues github.db simonw/datasette
    $ github-to-sqlite issue-comments github.db simonw/datasette

You can use the `--issue` option to only load comments for a specific issue within that repository, for example:

    $ github-to-sqlite issue-comments github.db simonw/datasette --issue=1

Example: [issue_comments table](https://github-to-sqlite.dogsheep.net/github/issue_comments)

## Fetching commits for a repository

The `commits` command retrieves details of all of the commits for one or more repositories. It currently fetches the SHA, commit message and author and committer details; it does not retrieve the full commit body.

    $ github-to-sqlite commits github.db simonw/datasette simonw/sqlite-utils

The command accepts one or more repositories.

By default it will stop as soon as it sees a commit that has previously been retrieved. You can force it to retrieve all commits (including those that have been previously inserted) using `--all`.

Example: [commits table](https://github-to-sqlite.dogsheep.net/github/commits)

## Fetching releases for a repository

The `releases` command retrieves the releases for one or more repositories.

    $ github-to-sqlite releases github.db simonw/datasette simonw/sqlite-utils

The command accepts one or more repositories.

Example: [releases table](https://github-to-sqlite.dogsheep.net/github/releases)

## Fetching tags for a repository

The `tags` command retrieves all of the tags for one or more repositories.

    $ github-to-sqlite tags github.db simonw/datasette simonw/sqlite-utils

Example: [tags table](https://github-to-sqlite.dogsheep.net/github/tags)

## Fetching contributors to a repository

The `contributors` command retrieves details of all of the contributors for one or more repositories.

    $ github-to-sqlite contributors github.db simonw/datasette simonw/sqlite-utils

The command accepts one or more repositories. It populates a `contributors` table, with foreign keys to `repos` and `users` and a `contributions` table listing the number of commits to that repository for each contributor.

Example: [contributors table](https://github-to-sqlite.dogsheep.net/github/contributors)

## Fetching repos belonging to a user or organization

The `repos` command fetches repos belonging to a user or organization.

Without any other arguments, this command will fetch all repos that the currently authenticated user owns, collaborates on or can access via one of their organizations:

    $ github-to-sqlite repos github.db

To fetch repos belonging to a specific user or organization, provide their username as an argument:

    $ github-to-sqlite repos github.db dogsheep # organization
    $ github-to-sqlite repos github.db simonw # user

You can pass more than one username to fetch for multiple users or organizations at once:

    $ github-to-sqlite repos github.db simonw dogsheep

Add the `--readme` option to save the README for the repo in a column called `readme`. Add `--readme-html` to save the HTML rendered version of the README into a column called `readme_html`.

Example: [repos table](https://github-to-sqlite.dogsheep.net/github/repos)

## Fetching specific repositories

You can use `-r` with the `repos` command one or more times to fetch just specific repositories.

    $ github-to-sqlite repos github.db -r simonw/datasette -r dogsheep/github-to-sqlite

## Fetching repos that have been starred by a user

The `starred` command fetches the repos that have been starred by a user.

    $ github-to-sqlite starred github.db simonw

If you are using an `auth.json` file you can omit the username to retrieve the starred repos for the authenticated user.

Example: [stars table](https://github-to-sqlite.dogsheep.net/github/stars)

## Fetching users that have starred specific repos

The `stargazers` command fetches the users that have starred the specified repos.

    $ github-to-sqlite stargazers github.db simonw/datasette dogsheep/github-to-sqlite

You can specify one or more repository using `owner/repo` syntax.

Users fetched using this command will be inserted into the `users` table. Many-to-many records showing which repository they starred will be added to the `stars` table.

## Fetching GitHub Actions workflows

The `workflows` command fetches the YAML workflow configurations from each repository's `.github/workflows` directory and parses them to populate `workflows`, `jobs` and `steps` tables.

    $ github-to-sqlite workflows github.db simonw/datasette dogsheep/github-to-sqlite

You can specify one or more repository using `owner/repo` syntax.

Example: [workflows table](https://github-to-sqlite.dogsheep.net/github/workflows), [jobs table](https://github-to-sqlite.dogsheep.net/github/jobs), [steps table](https://github-to-sqlite.dogsheep.net/github/steps)

## Scraping dependents for a repository

The GitHub dependency graph can show other GitHub projects that depend on a specific repo, for example [simonw/datasette/network/dependents](https://github.com/simonw/datasette/network/dependents).

This data is not yet available through the GitHub API. The `scrape-dependents` command scrapes those pages and uses the GitHub API to load full versions of the dependent repositories.

    $ github-to-sqlite scrape-dependents github.db simonw/datasette

The command accepts one or more repositories.

Add `-v` for verbose output.

Example: [dependents table](https://github-to-sqlite.dogsheep.net/github/dependents?_sort_desc=first_seen_utc)

## Fetching emojis

You can fetch a list of every emoji supported by GitHub using the `emojis` command:

    $ github-to-sqlite emojis github.db

This will create a table called `emojis` with a primary key `name` and a `url` column.

If you add the `--fetch` option the command will also fetch the binary content of the images and place them in an `image` column:

    $ github-to-sqlite emojis emojis.db -f
    [########----------------------------]  397/1799   22%  00:03:43

You can then use the [datasette-render-images](https://github.com/simonw/datasette-render-images) plugin to browse them visually.

Example: [emojis table](https://github-to-sqlite.dogsheep.net/github/emojis)

## Making authenticated API calls

The `github-to-sqlite get` command provides a convenient shortcut for making authenticated calls to the API. Once you have created your `auth.json` file (or set a `GITHUB_TOKEN` environment variable) you can use it like this:

    $ github-to-sqlite get https://api.github.com/gists

This will make an authenticated call to the URL you provide and pretty-print the resulting JSON to the console.

You can omit the `https://api.github.com/` prefix, for example:

    $ github-to-sqlite get /gists

Many GitHub APIs are [paginated using the HTTP Link header](https://docs.github.com/en/rest/guides/traversing-with-pagination). You can follow this pagination and output a list of all of the resulting items using `--paginate`:

    $ github-to-sqlite get /users/simonw/repos --paginate

You can outline newline-delimited JSON for each item using `--nl`. This can be useful for streaming items into another tool.

    $ github-to-sqlite get /users/simonw/repos --nl

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/dogsheep/github-to-sqlite",
    "name": "github-to-sqlite",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "",
    "author": "Simon Willison",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/7c/03/f6ab8debaf822e8536d2dbdc04d975fcb5c46a4464ade8da6576b7410c54/github-to-sqlite-2.9.tar.gz",
    "platform": null,
    "description": "# github-to-sqlite\n\n[![PyPI](https://img.shields.io/pypi/v/github-to-sqlite.svg)](https://pypi.org/project/github-to-sqlite/)\n[![Changelog](https://img.shields.io/github/v/release/dogsheep/github-to-sqlite?include_prereleases&label=changelog)](https://github.com/dogsheep/github-to-sqlite/releases)\n[![Tests](https://github.com/dogsheep/github-to-sqlite/workflows/Test/badge.svg)](https://github.com/dogsheep/github-to-sqlite/actions?query=workflow%3ATest)\n[![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://github.com/dogsheep/github-to-sqlite/blob/main/LICENSE)\n\nSave data from GitHub to a SQLite database.\n\n<!-- toc -->\n\n- [Demo](#demo)\n- [How to install](#how-to-install)\n- [Authentication](#authentication)\n- [Fetching issues for a repository](#fetching-issues-for-a-repository)\n- [Fetching pull requests for a repository](#fetching-pull-requests-for-a-repository)\n- [Fetching issue comments for a repository](#fetching-issue-comments-for-a-repository)\n- [Fetching commits for a repository](#fetching-commits-for-a-repository)\n- [Fetching releases for a repository](#fetching-releases-for-a-repository)\n- [Fetching tags for a repository](#fetching-tags-for-a-repository)\n- [Fetching contributors to a repository](#fetching-contributors-to-a-repository)\n- [Fetching repos belonging to a user or organization](#fetching-repos-belonging-to-a-user-or-organization)\n- [Fetching specific repositories](#fetching-specific-repositories)\n- [Fetching repos that have been starred by a user](#fetching-repos-that-have-been-starred-by-a-user)\n- [Fetching users that have starred specific repos](#fetching-users-that-have-starred-specific-repos)\n- [Fetching GitHub Actions workflows](#fetching-github-actions-workflows)\n- [Scraping dependents for a repository](#scraping-dependents-for-a-repository)\n- [Fetching emojis](#fetching-emojis)\n- [Making authenticated API calls](#making-authenticated-api-calls)\n\n<!-- tocstop -->\n\n## Demo\n\nhttps://github-to-sqlite.dogsheep.net/ hosts a [Datasette](https://datasette.io/) demo of a database created by [running this tool](https://github.com/dogsheep/github-to-sqlite/blob/main/.github/workflows/deploy-demo.yml#L40-L60) against all of the repositories in the [Dogsheep GitHub organization](https://github.com/dogsheep), plus the [datasette](https://github.com/simonw/datasette) and [sqlite-utils](https://github.com/simonw/sqlite-utils) repositories.\n\n## How to install\n\n    $ pip install github-to-sqlite\n\n## Authentication\n\nCreate a GitHub personal access token: https://github.com/settings/tokens\n\nRun this command and paste in your new token:\n\n    $ github-to-sqlite auth\n\nThis will create a file called `auth.json` in your current directory containing the required value. To save the file at a different path or filename, use the `--auth=myauth.json` option.\n\nAs an alternative to using an `auth.json` file you can add your access token to an environment variable called `GITHUB_TOKEN`.\n\n## Fetching issues for a repository\n\nThe `issues` command retrieves all of the issues belonging to a specified repository.\n\n    $ github-to-sqlite issues github.db simonw/datasette\n\nIf an `auth.json` file is present it will use the token from that file. It works without authentication for public repositories but you should be aware that GitHub have strict IP-based rate limits for unauthenticated requests.\n\nYou can point to a different location of `auth.json` using `-a`:\n\n    $ github-to-sqlite issues github.db simonw/datasette -a /path/to/auth.json\n\nYou can use the `--issue` option one or more times to load specific issues:\n\n    $ github-to-sqlite issues github.db simonw/datasette --issue=1\n\nExample: [issues table](https://github-to-sqlite.dogsheep.net/github/issues)\n\n## Fetching pull requests for a repository\n\nWhile pull requests are a type of issue, you will get more information on pull requests by pulling them separately. For example, whether a pull request has been merged and when.\n\nFollowing the API of issues, the `pull-requests` command retrieves all of the pull requests belonging to a specified repository.\n\n    $ github-to-sqlite pull-requests github.db simonw/datasette\n\nYou can use the `--pull-request` option one or more times to load specific pull request:\n\n    $ github-to-sqlite pull-requests github.db simonw/datasette --pull-request=81\n\nNote that the `merged_by` column on the `pull_requests` table will only be populated for pull requests that are loaded using the `--pull-request` option - the GitHub API does not return this field for pull requests that are loaded in bulk.\n\nYou can load only pull requests in a certain state with the `--state` option:\n\n    $ github-to-sqlite pull-requests --state=open github.db simonw/datasette\n\nPull requests across an entire organization (or more than one) can be loaded with `--org`:\n\n    $ github-to-sqlite pull-requests --state=open --org=psf --org=python github.db\n\nYou can use a search query to find pull requests.  Note that no more than 1000 will be loaded (this is a GitHub API limitation), and some data will be missing (base and head SHAs).  When using searches, other filters are ignored; put all criteria into the search itself:\n\n    $ github-to-sqlite pull-requests --search='org:python defaultdict state:closed created:<2023-09-01' github.db\n\nExample: [pull_requests table](https://github-to-sqlite.dogsheep.net/github/pull_requests)\n\n## Fetching issue comments for a repository\n\nThe `issue-comments` command retrieves all of the comments on all of the issues in a repository.\n\nIt is recommended you run `issues` first, so that each imported comment can have a foreign key pointing to its issue.\n\n    $ github-to-sqlite issues github.db simonw/datasette\n    $ github-to-sqlite issue-comments github.db simonw/datasette\n\nYou can use the `--issue` option to only load comments for a specific issue within that repository, for example:\n\n    $ github-to-sqlite issue-comments github.db simonw/datasette --issue=1\n\nExample: [issue_comments table](https://github-to-sqlite.dogsheep.net/github/issue_comments)\n\n## Fetching commits for a repository\n\nThe `commits` command retrieves details of all of the commits for one or more repositories. It currently fetches the SHA, commit message and author and committer details; it does not retrieve the full commit body.\n\n    $ github-to-sqlite commits github.db simonw/datasette simonw/sqlite-utils\n\nThe command accepts one or more repositories.\n\nBy default it will stop as soon as it sees a commit that has previously been retrieved. You can force it to retrieve all commits (including those that have been previously inserted) using `--all`.\n\nExample: [commits table](https://github-to-sqlite.dogsheep.net/github/commits)\n\n## Fetching releases for a repository\n\nThe `releases` command retrieves the releases for one or more repositories.\n\n    $ github-to-sqlite releases github.db simonw/datasette simonw/sqlite-utils\n\nThe command accepts one or more repositories.\n\nExample: [releases table](https://github-to-sqlite.dogsheep.net/github/releases)\n\n## Fetching tags for a repository\n\nThe `tags` command retrieves all of the tags for one or more repositories.\n\n    $ github-to-sqlite tags github.db simonw/datasette simonw/sqlite-utils\n\nExample: [tags table](https://github-to-sqlite.dogsheep.net/github/tags)\n\n## Fetching contributors to a repository\n\nThe `contributors` command retrieves details of all of the contributors for one or more repositories.\n\n    $ github-to-sqlite contributors github.db simonw/datasette simonw/sqlite-utils\n\nThe command accepts one or more repositories. It populates a `contributors` table, with foreign keys to `repos` and `users` and a `contributions` table listing the number of commits to that repository for each contributor.\n\nExample: [contributors table](https://github-to-sqlite.dogsheep.net/github/contributors)\n\n## Fetching repos belonging to a user or organization\n\nThe `repos` command fetches repos belonging to a user or organization.\n\nWithout any other arguments, this command will fetch all repos that the currently authenticated user owns, collaborates on or can access via one of their organizations:\n\n    $ github-to-sqlite repos github.db\n\nTo fetch repos belonging to a specific user or organization, provide their username as an argument:\n\n    $ github-to-sqlite repos github.db dogsheep # organization\n    $ github-to-sqlite repos github.db simonw # user\n\nYou can pass more than one username to fetch for multiple users or organizations at once:\n\n    $ github-to-sqlite repos github.db simonw dogsheep\n\nAdd the `--readme` option to save the README for the repo in a column called `readme`. Add `--readme-html` to save the HTML rendered version of the README into a column called `readme_html`.\n\nExample: [repos table](https://github-to-sqlite.dogsheep.net/github/repos)\n\n## Fetching specific repositories\n\nYou can use `-r` with the `repos` command one or more times to fetch just specific repositories.\n\n    $ github-to-sqlite repos github.db -r simonw/datasette -r dogsheep/github-to-sqlite\n\n## Fetching repos that have been starred by a user\n\nThe `starred` command fetches the repos that have been starred by a user.\n\n    $ github-to-sqlite starred github.db simonw\n\nIf you are using an `auth.json` file you can omit the username to retrieve the starred repos for the authenticated user.\n\nExample: [stars table](https://github-to-sqlite.dogsheep.net/github/stars)\n\n## Fetching users that have starred specific repos\n\nThe `stargazers` command fetches the users that have starred the specified repos.\n\n    $ github-to-sqlite stargazers github.db simonw/datasette dogsheep/github-to-sqlite\n\nYou can specify one or more repository using `owner/repo` syntax.\n\nUsers fetched using this command will be inserted into the `users` table. Many-to-many records showing which repository they starred will be added to the `stars` table.\n\n## Fetching GitHub Actions workflows\n\nThe `workflows` command fetches the YAML workflow configurations from each repository's `.github/workflows` directory and parses them to populate `workflows`, `jobs` and `steps` tables.\n\n    $ github-to-sqlite workflows github.db simonw/datasette dogsheep/github-to-sqlite\n\nYou can specify one or more repository using `owner/repo` syntax.\n\nExample: [workflows table](https://github-to-sqlite.dogsheep.net/github/workflows), [jobs table](https://github-to-sqlite.dogsheep.net/github/jobs), [steps table](https://github-to-sqlite.dogsheep.net/github/steps)\n\n## Scraping dependents for a repository\n\nThe GitHub dependency graph can show other GitHub projects that depend on a specific repo, for example [simonw/datasette/network/dependents](https://github.com/simonw/datasette/network/dependents).\n\nThis data is not yet available through the GitHub API. The `scrape-dependents` command scrapes those pages and uses the GitHub API to load full versions of the dependent repositories.\n\n    $ github-to-sqlite scrape-dependents github.db simonw/datasette\n\nThe command accepts one or more repositories.\n\nAdd `-v` for verbose output.\n\nExample: [dependents table](https://github-to-sqlite.dogsheep.net/github/dependents?_sort_desc=first_seen_utc)\n\n## Fetching emojis\n\nYou can fetch a list of every emoji supported by GitHub using the `emojis` command:\n\n    $ github-to-sqlite emojis github.db\n\nThis will create a table called `emojis` with a primary key `name` and a `url` column.\n\nIf you add the `--fetch` option the command will also fetch the binary content of the images and place them in an `image` column:\n\n    $ github-to-sqlite emojis emojis.db -f\n    [########----------------------------]  397/1799   22%  00:03:43\n\nYou can then use the [datasette-render-images](https://github.com/simonw/datasette-render-images) plugin to browse them visually.\n\nExample: [emojis table](https://github-to-sqlite.dogsheep.net/github/emojis)\n\n## Making authenticated API calls\n\nThe `github-to-sqlite get` command provides a convenient shortcut for making authenticated calls to the API. Once you have created your `auth.json` file (or set a `GITHUB_TOKEN` environment variable) you can use it like this:\n\n    $ github-to-sqlite get https://api.github.com/gists\n\nThis will make an authenticated call to the URL you provide and pretty-print the resulting JSON to the console.\n\nYou can omit the `https://api.github.com/` prefix, for example:\n\n    $ github-to-sqlite get /gists\n\nMany GitHub APIs are [paginated using the HTTP Link header](https://docs.github.com/en/rest/guides/traversing-with-pagination). You can follow this pagination and output a list of all of the resulting items using `--paginate`:\n\n    $ github-to-sqlite get /users/simonw/repos --paginate\n\nYou can outline newline-delimited JSON for each item using `--nl`. This can be useful for streaming items into another tool.\n\n    $ github-to-sqlite get /users/simonw/repos --nl\n",
    "bugtrack_url": null,
    "license": "Apache License, Version 2.0",
    "summary": "Save data from GitHub to a SQLite database",
    "version": "2.9",
    "project_urls": {
        "Homepage": "https://github.com/dogsheep/github-to-sqlite"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b3875e564721a22ccd32843a381bcd8a35ff272b028a7ef4d5736339986b4f48",
                "md5": "3fb38ae153bc74c32259eb865e31f135",
                "sha256": "834d5258d6c52a267ad37f83bf48a1014210b49081c65c933b3fb4bf1d53b16f"
            },
            "downloads": -1,
            "filename": "github_to_sqlite-2.9-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3fb38ae153bc74c32259eb865e31f135",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 19732,
            "upload_time": "2023-12-10T21:42:54",
            "upload_time_iso_8601": "2023-12-10T21:42:54.898387Z",
            "url": "https://files.pythonhosted.org/packages/b3/87/5e564721a22ccd32843a381bcd8a35ff272b028a7ef4d5736339986b4f48/github_to_sqlite-2.9-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7c03f6ab8debaf822e8536d2dbdc04d975fcb5c46a4464ade8da6576b7410c54",
                "md5": "86d05d6a477a90ab57b91859c7db4e05",
                "sha256": "8dea4b34769ffe425fbac7f776790c1b8b5d976468c64bcd657068b9019bc56a"
            },
            "downloads": -1,
            "filename": "github-to-sqlite-2.9.tar.gz",
            "has_sig": false,
            "md5_digest": "86d05d6a477a90ab57b91859c7db4e05",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 30834,
            "upload_time": "2023-12-10T21:42:56",
            "upload_time_iso_8601": "2023-12-10T21:42:56.348281Z",
            "url": "https://files.pythonhosted.org/packages/7c/03/f6ab8debaf822e8536d2dbdc04d975fcb5c46a4464ade8da6576b7410c54/github-to-sqlite-2.9.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-10 21:42:56",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "dogsheep",
    "github_project": "github-to-sqlite",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "github-to-sqlite"
}
        
Elapsed time: 0.27161s