From c123139927357ef1f7c376110292d1f89bb67fe7 Mon Sep 17 00:00:00 2001 From: Patrick DeVivo Date: Mon, 20 Jun 2022 16:41:51 -0400 Subject: [PATCH 1/2] feat: add `labels` column to `github_repo_issues` table-valued-func --- .../github/fixtures/TestRepoIssues.yaml | 136 ++++++++++-------- extensions/internal/github/repo_issues.go | 19 ++- .../internal/github/repo_issues_test.go | 4 +- 3 files changed, 100 insertions(+), 59 deletions(-) diff --git a/extensions/internal/github/fixtures/TestRepoIssues.yaml b/extensions/internal/github/fixtures/TestRepoIssues.yaml index fa993f05..95ea5c35 100644 --- a/extensions/internal/github/fixtures/TestRepoIssues.yaml +++ b/extensions/internal/github/fixtures/TestRepoIssues.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"query":"query($issuecursor:String$issueorder:IssueOrder$name:String!$owner:String!$perpage:Int!){rateLimit{cost,limit,nodeCount,remaining,resetAt,used},repository(owner: $owner, name: $name){owner{login},name,issues(first: $perpage, after: $issuecursor, orderBy: $issueorder){edges{cursor,node{author{login},body,closed,closedAt,comments{totalCount},createdAt,createdViaEmail,databaseId,editor{login},includesCreatedEdit,isReadByViewer,labels{totalCount},lastEditedAt,locked,milestone{number},number,participants{totalCount},publishedAt,reactions{totalCount},state,title,updatedAt,url}},pageInfo{endCursor,hasNextPage}}}}","variables":{"issuecursor":null,"issueorder":null,"name":"mergestat","owner":"mergestat","perpage":50}} + {"query":"query($issuecursor:String$issueorder:IssueOrder$name:String!$owner:String!$perpage:Int!){rateLimit{cost,limit,nodeCount,remaining,resetAt,used},repository(owner: $owner, name: $name){owner{login},name,issues(first: $perpage, after: $issuecursor, orderBy: $issueorder){edges{cursor,node{author{login},body,closed,closedAt,comments{totalCount},createdAt,createdViaEmail,databaseId,editor{login},includesCreatedEdit,isReadByViewer,labels(first: 15){totalCount,nodes{name}},lastEditedAt,locked,milestone{number},number,participants{totalCount},publishedAt,reactions{totalCount},state,title,updatedAt,url}},pageInfo{endCursor,hasNextPage}}}}","variables":{"issuecursor":null,"issueorder":null,"name":"mergestat","owner":"mergestat","perpage":50}} form: {} headers: Content-Type: @@ -11,29 +11,29 @@ interactions: url: https://api.github.com/graphql method: POST response: - body: '{"data":{"rateLimit":{"cost":1,"limit":5000,"nodeCount":50,"remaining":4629,"resetAt":"2022-03-21T18:34:57Z","used":371},"repository":{"owner":{"login":"mergestat"},"name":"mergestat","issues":{"edges":[{"cursor":"Y3Vyc29yOnYyOpHOJs4z-A==","node":{"author":{"login":"erezsh"},"body":"I''m + body: '{"data":{"rateLimit":{"cost":1,"limit":5000,"nodeCount":800,"remaining":4994,"resetAt":"2022-06-20T21:19:17Z","used":6},"repository":{"owner":{"login":"mergestat"},"name":"mergestat","issues":{"edges":[{"cursor":"Y3Vyc29yOnYyOpHOJs4z-A==","node":{"author":{"login":"erezsh"},"body":"I''m not very familiar with Go, so perhaps I''m doing something wrong?\r\n\r\n```bash\r\n$ go install -v -tags=sqlite_vtable github.com/augmentable-dev/gitqlite\r\ncan''t load package: package github.com/augmentable-dev/gitqlite: cannot find package \"github.com/augmentable-dev/gitqlite\" in any of:\r\n /usr/lib/go-1.10/src/github.com/augmentable-dev/gitqlite (from $GOROOT)\r\n /home/erez/go/src/github.com/augmentable-dev/gitqlite - (from $GOPATH)\r\n```\r\n","closed":true,"closedAt":"2020-07-05T18:01:42Z","comments":{"totalCount":12},"createdAt":"2020-07-05T11:00:44Z","createdViaEmail":false,"databaseId":651047928,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":3,"participants":{"totalCount":3},"publishedAt":"2020-07-05T11:00:44Z","reactions":{"totalCount":1},"state":"CLOSED","title":"Following - installation instructions doesn''t work?","updatedAt":"2020-07-05T18:01:42Z","url":"https://github.com/mergestat/mergestat/issues/3"}},{"cursor":"Y3Vyc29yOnYyOpHOJtui8g==","node":{"author":{"login":"joni2back"},"body":"","closed":true,"closedAt":"2020-07-07T02:08:51Z","comments":{"totalCount":1},"createdAt":"2020-07-07T01:50:24Z","createdViaEmail":false,"databaseId":651928306,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":9,"participants":{"totalCount":2},"publishedAt":"2020-07-07T01:50:24Z","reactions":{"totalCount":0},"state":"CLOSED","title":"It + (from $GOPATH)\r\n```\r\n","closed":true,"closedAt":"2020-07-05T18:01:42Z","comments":{"totalCount":12},"createdAt":"2020-07-05T11:00:44Z","createdViaEmail":false,"databaseId":651047928,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":3,"participants":{"totalCount":3},"publishedAt":"2020-07-05T11:00:44Z","reactions":{"totalCount":1},"state":"CLOSED","title":"Following + installation instructions doesn''t work?","updatedAt":"2020-07-05T18:01:42Z","url":"https://github.com/mergestat/mergestat/issues/3"}},{"cursor":"Y3Vyc29yOnYyOpHOJtui8g==","node":{"author":{"login":"joni2back"},"body":"","closed":true,"closedAt":"2020-07-07T02:08:51Z","comments":{"totalCount":1},"createdAt":"2020-07-07T01:50:24Z","createdViaEmail":false,"databaseId":651928306,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":9,"participants":{"totalCount":2},"publishedAt":"2020-07-07T01:50:24Z","reactions":{"totalCount":0},"state":"CLOSED","title":"It is necessary?","updatedAt":"2020-07-07T02:08:51Z","url":"https://github.com/mergestat/mergestat/issues/9"}},{"cursor":"Y3Vyc29yOnYyOpHOJuDdaA==","node":{"author":{"login":"klauern"},"body":"It would be nice to release this as a downloadable set of binaries. I have had some experience with [GoReleaser](https://goreleaser.com/) and I have to say it''s a pretty nice little tool, especially if you''re working in Go. I''d prefer to be able to just `brew install gitqlite`, which GoReleaser has good - support for: https://goreleaser.com/customization/homebrew/","closed":true,"closedAt":"2020-09-03T02:08:40Z","comments":{"totalCount":4},"createdAt":"2020-07-07T12:10:47Z","createdViaEmail":false,"databaseId":652270952,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":10,"participants":{"totalCount":4},"publishedAt":"2020-07-07T12:10:47Z","reactions":{"totalCount":2},"state":"CLOSED","title":"provide + support for: https://goreleaser.com/customization/homebrew/","closed":true,"closedAt":"2020-09-03T02:08:40Z","comments":{"totalCount":4},"createdAt":"2020-07-07T12:10:47Z","createdViaEmail":false,"databaseId":652270952,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":10,"participants":{"totalCount":4},"publishedAt":"2020-07-07T12:10:47Z","reactions":{"totalCount":2},"state":"CLOSED","title":"provide releases for non-Go developers","updatedAt":"2020-09-03T02:08:40Z","url":"https://github.com/mergestat/mergestat/issues/10"}},{"cursor":"Y3Vyc29yOnYyOpHOJuEhqA==","node":{"author":{"login":"mwarkentin"},"body":"It''d be nice if we could just run `docker run -v `pwd`:/repo:ro gitqlite \"SELECT - * FROM commits\"` without needing to clone and build the docker image locally.","closed":true,"closedAt":"2020-07-17T03:17:40Z","comments":{"totalCount":3},"createdAt":"2020-07-07T12:38:12Z","createdViaEmail":false,"databaseId":652288424,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":11,"participants":{"totalCount":3},"publishedAt":"2020-07-07T12:38:12Z","reactions":{"totalCount":3},"state":"CLOSED","title":"Publish - image to dockerhub?","updatedAt":"2020-07-17T03:17:40Z","url":"https://github.com/mergestat/mergestat/issues/11"}},{"cursor":"Y3Vyc29yOnYyOpHOJvAC8A==","node":{"author":{"login":"lycclsltt"},"body":"请教一下,SQL语法的解析如何实现的?又是如何和git查询接口对接上的呢","closed":true,"closedAt":"2020-07-25T06:54:59Z","comments":{"totalCount":2},"createdAt":"2020-07-08T12:38:36Z","createdViaEmail":false,"databaseId":653263600,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":17,"participants":{"totalCount":2},"publishedAt":"2020-07-08T12:38:36Z","reactions":{"totalCount":0},"state":"CLOSED","title":"请教一下,SQL语法的解析如何实现的?","updatedAt":"2020-07-25T06:54:59Z","url":"https://github.com/mergestat/mergestat/issues/17"}},{"cursor":"Y3Vyc29yOnYyOpHOJ0R9aw==","node":{"author":{"login":"patrickdevivo"},"body":"Info + * FROM commits\"` without needing to clone and build the docker image locally.","closed":true,"closedAt":"2020-07-17T03:17:40Z","comments":{"totalCount":3},"createdAt":"2020-07-07T12:38:12Z","createdViaEmail":false,"databaseId":652288424,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":11,"participants":{"totalCount":3},"publishedAt":"2020-07-07T12:38:12Z","reactions":{"totalCount":3},"state":"CLOSED","title":"Publish + image to dockerhub?","updatedAt":"2020-07-17T03:17:40Z","url":"https://github.com/mergestat/mergestat/issues/11"}},{"cursor":"Y3Vyc29yOnYyOpHOJvAC8A==","node":{"author":{"login":"lycclsltt"},"body":"请教一下,SQL语法的解析如何实现的?又是如何和git查询接口对接上的呢","closed":true,"closedAt":"2020-07-25T06:54:59Z","comments":{"totalCount":2},"createdAt":"2020-07-08T12:38:36Z","createdViaEmail":false,"databaseId":653263600,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":17,"participants":{"totalCount":2},"publishedAt":"2020-07-08T12:38:36Z","reactions":{"totalCount":0},"state":"CLOSED","title":"请教一下,SQL语法的解析如何实现的?","updatedAt":"2020-07-25T06:54:59Z","url":"https://github.com/mergestat/mergestat/issues/17"}},{"cursor":"Y3Vyc29yOnYyOpHOJ0R9aw==","node":{"author":{"login":"patrickdevivo"},"body":"Info about the recently implemented `branches` and `tags` tables should be added to the documentation in the README, similar to what''s done for `commits` and - `files`","closed":true,"closedAt":"2020-09-12T00:47:55Z","comments":{"totalCount":0},"createdAt":"2020-07-17T03:19:12Z","createdViaEmail":false,"databaseId":658799979,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":24,"participants":{"totalCount":1},"publishedAt":"2020-07-17T03:19:12Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Document + `files`","closed":true,"closedAt":"2020-09-12T00:47:55Z","comments":{"totalCount":0},"createdAt":"2020-07-17T03:19:12Z","createdViaEmail":false,"databaseId":658799979,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":24,"participants":{"totalCount":1},"publishedAt":"2020-07-17T03:19:12Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Document the branches and tags tables","updatedAt":"2020-09-12T00:47:55Z","url":"https://github.com/mergestat/mergestat/issues/24"}},{"cursor":"Y3Vyc29yOnYyOpHOJ6seQA==","node":{"author":{"login":"pjebs"},"body":"I - was wondering where in the repo is the SQL getting parsed? How is it being parse?","closed":true,"closedAt":"2020-08-29T15:00:12Z","comments":{"totalCount":1},"createdAt":"2020-07-25T06:12:26Z","createdViaEmail":false,"databaseId":665525824,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":32,"participants":{"totalCount":3},"publishedAt":"2020-07-25T06:12:26Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Parsing + was wondering where in the repo is the SQL getting parsed? How is it being parse?","closed":true,"closedAt":"2020-08-29T15:00:12Z","comments":{"totalCount":1},"createdAt":"2020-07-25T06:12:26Z","createdViaEmail":false,"databaseId":665525824,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":32,"participants":{"totalCount":3},"publishedAt":"2020-07-25T06:12:26Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Parsing SQL","updatedAt":"2020-08-29T15:00:12Z","url":"https://github.com/mergestat/mergestat/issues/32"}},{"cursor":"Y3Vyc29yOnYyOpHOKIP93g==","node":{"author":{"login":"simon-brooke"},"body":"Build log as follows:\r\n\r\n```\r\nsimon@mason:~/tmp$ go get -v -tags=sqlite_vtable github.com/augmentable-dev/askgit\r\ngithub.com/augmentable-dev/askgit (download)\r\ngithub.com/go-git/go-git @@ -83,12 +83,12 @@ interactions: import \"github.com/go-git/go-billy/v5/osfs\"\r\n```\r\n\r\nOn investigation, `https://github.com/go-git/go-billy/v5/osfs` does not exist but `https://github.com/go-git/go-billy/osfs` does. Suggest this is bit-rot caused by the upstream package changing its directory - structure?","closed":true,"closedAt":"2020-09-18T01:00:42Z","comments":{"totalCount":4},"createdAt":"2020-08-16T11:33:39Z","createdViaEmail":false,"databaseId":679738846,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":37,"participants":{"totalCount":4},"publishedAt":"2020-08-16T11:33:39Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Build + structure?","closed":true,"closedAt":"2020-09-18T01:00:42Z","comments":{"totalCount":4},"createdAt":"2020-08-16T11:33:39Z","createdViaEmail":false,"databaseId":679738846,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":37,"participants":{"totalCount":4},"publishedAt":"2020-08-16T11:33:39Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Build fails looking for ''github.com/go-git/go-billy/v5/osfs''","updatedAt":"2020-09-18T01:00:43Z","url":"https://github.com/mergestat/mergestat/issues/37"}},{"cursor":"Y3Vyc29yOnYyOpHOKIQSzQ==","node":{"author":{"login":"muhmud"},"body":"Would be nice to have PAGER support so that the produced table results are more easily browseable.\r\n\r\nMost SQL command line clients support this. I could pipe the results into `less -SinFX`, but would be nice if I didn''t have to on each - query.\r\n","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2020-08-16T12:14:25Z","createdViaEmail":false,"databaseId":679744205,"editor":{"login":"muhmud"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":"2020-08-16T12:16:23Z","locked":false,"milestone":null,"number":38,"participants":{"totalCount":1},"publishedAt":"2020-08-16T12:14:25Z","reactions":{"totalCount":0},"state":"OPEN","title":"Support + query.\r\n","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2020-08-16T12:14:25Z","createdViaEmail":false,"databaseId":679744205,"editor":{"login":"muhmud"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":"2020-08-16T12:16:23Z","locked":false,"milestone":null,"number":38,"participants":{"totalCount":1},"publishedAt":"2020-08-16T12:14:25Z","reactions":{"totalCount":0},"state":"OPEN","title":"Support for a PAGER","updatedAt":"2020-08-16T12:16:23Z","url":"https://github.com/mergestat/mergestat/issues/38"}},{"cursor":"Y3Vyc29yOnYyOpHOKMOFWw==","node":{"author":{"login":"nhinds"},"body":"`askgit` has trouble with repository directories that contain characters that are either special to Go''s `%q` string encoding or special to sqlite. Some characters @@ -115,7 +115,7 @@ interactions: versions to the modules'' `Create` functions, which presumably try and fail to open a directory named e.g. `back\\\\slash` instead of `back\\slash`\r\n\r\nThis can be reproduced in the tests by changing the fixture repo from `\"repo\"` - to e.g. `\"repo\\\\\"` or `\"repo\\\"\"`","closed":true,"closedAt":"2020-09-02T02:51:45Z","comments":{"totalCount":5},"createdAt":"2020-08-22T01:34:47Z","createdViaEmail":false,"databaseId":683902299,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":41,"participants":{"totalCount":4},"publishedAt":"2020-08-22T01:34:47Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Issues + to e.g. `\"repo\\\\\"` or `\"repo\\\"\"`","closed":true,"closedAt":"2020-09-02T02:51:45Z","comments":{"totalCount":5},"createdAt":"2020-08-22T01:34:47Z","createdViaEmail":false,"databaseId":683902299,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":41,"participants":{"totalCount":4},"publishedAt":"2020-08-22T01:34:47Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Issues with repository directories with special characters","updatedAt":"2020-09-02T02:51:45Z","url":"https://github.com/mergestat/mergestat/issues/41"}},{"cursor":"Y3Vyc29yOnYyOpHOKQxaqw==","node":{"author":{"login":"borekb"},"body":"Is it expected that the basic command from README is so heavy? I initially thought that there''s something wrong with my invocation, I did this:\r\n\r\n```\r\ndocker @@ -127,11 +127,11 @@ interactions: I''m doing something wrong, e.g., not escaping the SQL query correctly.\r\n\r\nWhat does it do on the first run? Is it building some sort of database behind the scenes? Would even \"simpler\" queries like `SELECT count(*) FROM commits` take - similarly long?","closed":true,"closedAt":"2021-08-12T14:05:06Z","comments":{"totalCount":6},"createdAt":"2020-08-30T08:10:10Z","createdViaEmail":false,"databaseId":688675499,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":46,"participants":{"totalCount":2},"publishedAt":"2020-08-30T08:10:10Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Took + similarly long?","closed":true,"closedAt":"2021-08-12T14:05:06Z","comments":{"totalCount":6},"createdAt":"2020-08-30T08:10:10Z","createdViaEmail":false,"databaseId":688675499,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":46,"participants":{"totalCount":2},"publishedAt":"2020-08-30T08:10:10Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Took very long time on the first run","updatedAt":"2021-08-12T14:05:06Z","url":"https://github.com/mergestat/mergestat/issues/46"}},{"cursor":"Y3Vyc29yOnYyOpHOKQ4rUg==","node":{"author":{"login":"federico-razzoli"},"body":"$ go get -v -tags=sqlite_vtable github.com/augmentable-dev/askgit\r\ngo/src/github.com/go-git/go-git/remote.go:9:2: code in directory /home/federico/go/src/github.com/go-git/go-billy/osfs expects - import \"github.com/go-git/go-billy/v5/osfs\"\r\n","closed":true,"closedAt":"2020-09-02T01:24:23Z","comments":{"totalCount":1},"createdAt":"2020-08-30T21:25:35Z","createdViaEmail":false,"databaseId":688794450,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":49,"participants":{"totalCount":2},"publishedAt":"2020-08-30T21:25:35Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Incorrect/incomplete + import \"github.com/go-git/go-billy/v5/osfs\"\r\n","closed":true,"closedAt":"2020-09-02T01:24:23Z","comments":{"totalCount":1},"createdAt":"2020-08-30T21:25:35Z","createdViaEmail":false,"databaseId":688794450,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":49,"participants":{"totalCount":2},"publishedAt":"2020-08-30T21:25:35Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Incorrect/incomplete install instructions","updatedAt":"2020-09-02T01:24:23Z","url":"https://github.com/mergestat/mergestat/issues/49"}},{"cursor":"Y3Vyc29yOnYyOpHOLGhivg==","node":{"author":{"login":"dflock"},"body":"When trying to install by running this:\r\n\r\n```\r\ngo get -v -tags=sqlite_vtable github.com/augmentable-dev/askgit\r\n```\r\n\r\nI get this:\r\n\r\n```\r\n➜ @@ -144,12 +144,12 @@ interactions: -O2\"\r\nPKG_CONFIG=\"pkg-config\"\r\nGOGCCFLAGS=\"-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build228718343=/tmp/go-build -gno-record-gcc-switches\"\r\n\r\n ➜ neofetch --backend off\r\n\r\nOS: Ubuntu 20.04.1 LTS x86_64 \r\nKernel: 5.4.0-52-generic - \r\nShell: bash 5.0.17 \r\nDE: Xfce \r\nMemory: 38419MiB / 64206MiB \r\n```\r\n","closed":true,"closedAt":"2021-12-08T21:52:30Z","comments":{"totalCount":4},"createdAt":"2020-11-17T19:48:59Z","createdViaEmail":false,"databaseId":745038526,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":72,"participants":{"totalCount":3},"publishedAt":"2020-11-17T19:48:59Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Install + \r\nShell: bash 5.0.17 \r\nDE: Xfce \r\nMemory: 38419MiB / 64206MiB \r\n```\r\n","closed":true,"closedAt":"2021-12-08T21:52:30Z","comments":{"totalCount":4},"createdAt":"2020-11-17T19:48:59Z","createdViaEmail":false,"databaseId":745038526,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":72,"participants":{"totalCount":3},"publishedAt":"2020-11-17T19:48:59Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Install error: cannot find package \"github.com/libgit2/git2go/v30\"","updatedAt":"2021-12-08T21:52:30Z","url":"https://github.com/mergestat/mergestat/issues/72"}},{"cursor":"Y3Vyc29yOnYyOpHOLIZd9w==","node":{"author":{"login":"iwasherefirst2"},"body":"I don''t get that query:\r\n\r\n`SELECT count(*) AS commits, SUM(additions) AS additions, SUM(deletions) AS deletions, author_email FROM commits GROUP BY author_email ORDER BY commits` \r\n\r\nAccording to the docs there is no `additions` - and `deletions` column for the `commits` table.\r\nAre they missing in the docs?\r\n\r\n![image](https://user-images.githubusercontent.com/1765602/99736489-c01dc600-2ac6-11eb-9000-65a50ee1f709.png)\r\n\r\n\r\n","closed":true,"closedAt":"2020-11-22T17:17:28Z","comments":{"totalCount":1},"createdAt":"2020-11-19T23:24:37Z","createdViaEmail":false,"databaseId":747003383,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":73,"participants":{"totalCount":2},"publishedAt":"2020-11-19T23:24:37Z","reactions":{"totalCount":0},"state":"CLOSED","title":"commits + and `deletions` column for the `commits` table.\r\nAre they missing in the docs?\r\n\r\n![image](https://user-images.githubusercontent.com/1765602/99736489-c01dc600-2ac6-11eb-9000-65a50ee1f709.png)\r\n\r\n\r\n","closed":true,"closedAt":"2020-11-22T17:17:28Z","comments":{"totalCount":1},"createdAt":"2020-11-19T23:24:37Z","createdViaEmail":false,"databaseId":747003383,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":73,"participants":{"totalCount":2},"publishedAt":"2020-11-19T23:24:37Z","reactions":{"totalCount":0},"state":"CLOSED","title":"commits has no `additions` column?","updatedAt":"2020-11-22T17:17:28Z","url":"https://github.com/mergestat/mergestat/issues/73"}},{"cursor":"Y3Vyc29yOnYyOpHOLSSJSw==","node":{"author":{"login":"kevin-cantwell"},"body":"I''m running OSX Catalina with libgit2 v1.1.0:\r\n```\r\n$ brew info --installed --json | jq ''.[] | select(.name == \"libgit2\") | .versions''\r\n{\r\n \"stable\": @@ -164,57 +164,57 @@ interactions: very strict libgit2 version dependencies: https://github.com/libgit2/git2go#which-go-version-to-use\r\n\r\nI was able to successfully build askgit by replacing `github.com/libgit2/git2go/v30` with `github.com/libgit2/git2go/v31`, but I imagine this would break things - for those with older libgit2 versions.","closed":true,"closedAt":"2020-12-13T00:58:37Z","comments":{"totalCount":1},"createdAt":"2020-12-04T20:03:37Z","createdViaEmail":false,"databaseId":757369163,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":81,"participants":{"totalCount":2},"publishedAt":"2020-12-04T20:03:37Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Build + for those with older libgit2 versions.","closed":true,"closedAt":"2020-12-13T00:58:37Z","comments":{"totalCount":1},"createdAt":"2020-12-04T20:03:37Z","createdViaEmail":false,"databaseId":757369163,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":81,"participants":{"totalCount":2},"publishedAt":"2020-12-04T20:03:37Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Build fails with any libgit2 version other than v1.0","updatedAt":"2020-12-13T00:58:37Z","url":"https://github.com/mergestat/mergestat/issues/81"}},{"cursor":"Y3Vyc29yOnYyOpHOLe2QCg==","node":{"author":{"login":"jingkai1"},"body":"askgit: - error while loading shared libraries: libgit2.so.1.1","closed":true,"closedAt":"2021-12-08T21:50:00Z","comments":{"totalCount":2},"createdAt":"2020-12-18T03:46:47Z","createdViaEmail":false,"databaseId":770543626,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":85,"participants":{"totalCount":2},"publishedAt":"2020-12-18T03:46:47Z","reactions":{"totalCount":0},"state":"CLOSED","title":"can''t + error while loading shared libraries: libgit2.so.1.1","closed":true,"closedAt":"2021-12-08T21:50:00Z","comments":{"totalCount":2},"createdAt":"2020-12-18T03:46:47Z","createdViaEmail":false,"databaseId":770543626,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":85,"participants":{"totalCount":2},"publishedAt":"2020-12-18T03:46:47Z","reactions":{"totalCount":0},"state":"CLOSED","title":"can''t loading libgit2.so","updatedAt":"2021-12-08T21:50:00Z","url":"https://github.com/mergestat/mergestat/issues/85"}},{"cursor":"Y3Vyc29yOnYyOpHOLjsT7Q==","node":{"author":{"login":"pjebs"},"body":"Is there someway to update for example to committer email address etc or a commit - message using SQL.","closed":false,"closedAt":null,"comments":{"totalCount":5},"createdAt":"2020-12-28T23:17:36Z","createdViaEmail":false,"databaseId":775623661,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":95,"participants":{"totalCount":3},"publishedAt":"2020-12-28T23:17:36Z","reactions":{"totalCount":1},"state":"OPEN","title":"UPDATE + message using SQL.","closed":false,"closedAt":null,"comments":{"totalCount":5},"createdAt":"2020-12-28T23:17:36Z","createdViaEmail":false,"databaseId":775623661,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":95,"participants":{"totalCount":3},"publishedAt":"2020-12-28T23:17:36Z","reactions":{"totalCount":1},"state":"OPEN","title":"UPDATE functionality","updatedAt":"2021-04-17T14:30:18Z","url":"https://github.com/mergestat/mergestat/issues/95"}},{"cursor":"Y3Vyc29yOnYyOpHOL7mYyQ==","node":{"author":{"login":"mikermcneil"},"body":"would be neat!\r\n\r\nLike \r\n![image](https://user-images.githubusercontent.com/618009/106808199-b3bdf980-662f-11eb-8e2c-f065a25366f1.png)\r\n\r\n…but - for GitLab","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2021-02-03T20:56:07Z","createdViaEmail":false,"databaseId":800692425,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1},"lastEditedAt":null,"locked":false,"milestone":null,"number":118,"participants":{"totalCount":2},"publishedAt":"2021-02-03T20:56:07Z","reactions":{"totalCount":0},"state":"OPEN","title":"GitLab + for GitLab","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2021-02-03T20:56:07Z","createdViaEmail":false,"databaseId":800692425,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"enhancement"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":118,"participants":{"totalCount":2},"publishedAt":"2021-02-03T20:56:07Z","reactions":{"totalCount":1},"state":"OPEN","title":"GitLab tables","updatedAt":"2021-11-01T13:51:27Z","url":"https://github.com/mergestat/mergestat/issues/118"}},{"cursor":"Y3Vyc29yOnYyOpHOOG4PiA==","node":{"author":{"login":"nordicdyno"},"body":"`go get` becomes a deprecated way to install binaries https://golang.org/doc/go-get-install-deprecation, but go install fails with error:\r\n```\r\ngo install github.com/augmentable-dev/askgit@latest: github.com/augmentable-dev/askgit@v0.3.7\r\n\tThe go.mod file for the module providing named packages contains one or\r\n\tmore replace directives. It must not contain directives that would cause\r\n\tit to be interpreted differently - than if it were the main module.\r\n```\r\n\r\n","closed":true,"closedAt":"2021-08-12T14:03:52Z","comments":{"totalCount":2},"createdAt":"2021-07-17T06:42:29Z","createdViaEmail":false,"databaseId":946737032,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":130,"participants":{"totalCount":2},"publishedAt":"2021-07-17T06:42:29Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Go + than if it were the main module.\r\n```\r\n\r\n","closed":true,"closedAt":"2021-08-12T14:03:52Z","comments":{"totalCount":2},"createdAt":"2021-07-17T06:42:29Z","createdViaEmail":false,"databaseId":946737032,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":130,"participants":{"totalCount":2},"publishedAt":"2021-07-17T06:42:29Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Go install doesn''t work","updatedAt":"2021-08-12T14:03:52Z","url":"https://github.com/mergestat/mergestat/issues/130"}},{"cursor":"Y3Vyc29yOnYyOpHOOG4RCQ==","node":{"author":{"login":"nordicdyno"},"body":"it would be nice to mention libgit2 requirement in README\r\n\r\nMy environment: - macOS Big Sur, go1.16.5 darwin/amd64","closed":true,"closedAt":"2021-07-20T23:04:09Z","comments":{"totalCount":1},"createdAt":"2021-07-17T06:45:10Z","createdViaEmail":false,"databaseId":946737417,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":131,"participants":{"totalCount":2},"publishedAt":"2021-07-17T06:45:10Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Go + macOS Big Sur, go1.16.5 darwin/amd64","closed":true,"closedAt":"2021-07-20T23:04:09Z","comments":{"totalCount":1},"createdAt":"2021-07-17T06:45:10Z","createdViaEmail":false,"databaseId":946737417,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":131,"participants":{"totalCount":2},"publishedAt":"2021-07-17T06:45:10Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Go get doesn''t work without libgit2 dependency","updatedAt":"2021-07-20T23:04:09Z","url":"https://github.com/mergestat/mergestat/issues/131"}},{"cursor":"Y3Vyc29yOnYyOpHOOMRG5Q==","node":{"author":{"login":"patrickdevivo"},"body":"#136 re-adds support for GitHub tables again. We should add some tests to validate the behavior in these tables, ideally ones that don''t make actual calls to - the GitHub API as was done before (let''s mock the responses as we should)","closed":true,"closedAt":"2021-08-02T19:42:06Z","comments":{"totalCount":0},"createdAt":"2021-07-26T00:17:03Z","createdViaEmail":false,"databaseId":952387301,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":137,"participants":{"totalCount":1},"publishedAt":"2021-07-26T00:17:03Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Add + the GitHub API as was done before (let''s mock the responses as we should)","closed":true,"closedAt":"2021-08-02T19:42:06Z","comments":{"totalCount":0},"createdAt":"2021-07-26T00:17:03Z","createdViaEmail":false,"databaseId":952387301,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":137,"participants":{"totalCount":1},"publishedAt":"2021-07-26T00:17:03Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Add tests for new GitHub tables","updatedAt":"2021-08-02T19:42:06Z","url":"https://github.com/mergestat/mergestat/issues/137"}},{"cursor":"Y3Vyc29yOnYyOpHOOMdk6Q==","node":{"author":{"login":"wi1dcard"},"body":"Hey team, thank you for providing this awesome tool which helps me a lot traversing the data in git repos. I''m wondering that do we have any plan to add binaries in the GitHub releases (for example, on GitHub Actions)? It seems not so friendly - to the new users who have to build from source to install and try.","closed":true,"closedAt":"2021-07-26T18:45:18Z","comments":{"totalCount":1},"createdAt":"2021-07-26T07:24:04Z","createdViaEmail":false,"databaseId":952591593,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":138,"participants":{"totalCount":2},"publishedAt":"2021-07-26T07:24:04Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Binary + to the new users who have to build from source to install and try.","closed":true,"closedAt":"2021-07-26T18:45:18Z","comments":{"totalCount":1},"createdAt":"2021-07-26T07:24:04Z","createdViaEmail":false,"databaseId":952591593,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":138,"participants":{"totalCount":2},"publishedAt":"2021-07-26T07:24:04Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Binary release?","updatedAt":"2021-07-26T18:45:18Z","url":"https://github.com/mergestat/mergestat/issues/138"}},{"cursor":"Y3Vyc29yOnYyOpHOOdfiFA==","node":{"author":{"login":"patrickdevivo"},"body":"Some functionality, like the GitHub functions, requires a configuration value (`GITHUB_TOKEN`) set via an env variable. It''s a bit clumsy to specify this every time (`GITHUB_TOKEN=123 askgit \"SELECT ....\"`) and would be great if there were a way to store the token (or any other config value) in a \"cache\" or managed config area on disk, - so that a user doesn''t need to specify it on every run of the command","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2021-08-13T14:25:57Z","createdViaEmail":false,"databaseId":970449428,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1},"lastEditedAt":null,"locked":false,"milestone":null,"number":158,"participants":{"totalCount":1},"publishedAt":"2021-08-13T14:25:57Z","reactions":{"totalCount":0},"state":"OPEN","title":"Add + so that a user doesn''t need to specify it on every run of the command","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2021-08-13T14:25:57Z","createdViaEmail":false,"databaseId":970449428,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"enhancement"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":158,"participants":{"totalCount":1},"publishedAt":"2021-08-13T14:25:57Z","reactions":{"totalCount":0},"state":"OPEN","title":"Add way to store credentials/config locally, rather than using env vars every time","updatedAt":"2021-08-13T14:25:57Z","url":"https://github.com/mergestat/mergestat/issues/158"}},{"cursor":"Y3Vyc29yOnYyOpHOOl_Icg==","node":{"author":{"login":"patrickdevivo"},"body":"See [this page](https://git-scm.com/book/en/v2/Git-Tools-Revision-Selection) for more information. Basically, it would be useful if the `commits` table could allow for something like:\r\n\r\n```sql\r\nSELECT * FROM commits(''some-repo'', ''v4.0.0..v5.0.0'')\r\n```\r\n\r\nto select only the commits that occurred after `v4.0.0` up to `v5.0.0`\r\n\r\nSee [this issue](https://github.com/go-git/go-git/issues/36) - for some context as well","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2021-08-25T15:53:26Z","createdViaEmail":false,"databaseId":979355762,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1},"lastEditedAt":null,"locked":false,"milestone":null,"number":167,"participants":{"totalCount":1},"publishedAt":"2021-08-25T15:53:26Z","reactions":{"totalCount":0},"state":"OPEN","title":"Support + for some context as well","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2021-08-25T15:53:26Z","createdViaEmail":false,"databaseId":979355762,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"enhancement"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":167,"participants":{"totalCount":1},"publishedAt":"2021-08-25T15:53:26Z","reactions":{"totalCount":0},"state":"OPEN","title":"Support commit range notation (`..` or `...`) in the `commits` table","updatedAt":"2021-08-25T15:53:26Z","url":"https://github.com/mergestat/mergestat/issues/167"}},{"cursor":"Y3Vyc29yOnYyOpHOOmqVrA==","node":{"author":{"login":"ichengchao"},"body":"in mysql, we can use \"show tables\" ,\"desc table_name\". \r\nreally looking forward - meet this feature","closed":true,"closedAt":"2021-10-09T15:58:28Z","comments":{"totalCount":3},"createdAt":"2021-08-26T10:03:46Z","createdViaEmail":false,"databaseId":980063660,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":168,"participants":{"totalCount":2},"publishedAt":"2021-08-26T10:03:46Z","reactions":{"totalCount":0},"state":"CLOSED","title":"add + meet this feature","closed":true,"closedAt":"2021-10-09T15:58:28Z","comments":{"totalCount":3},"createdAt":"2021-08-26T10:03:46Z","createdViaEmail":false,"databaseId":980063660,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":168,"participants":{"totalCount":2},"publishedAt":"2021-08-26T10:03:46Z","reactions":{"totalCount":0},"state":"CLOSED","title":"add \"show tables\"","updatedAt":"2021-10-09T15:58:28Z","url":"https://github.com/mergestat/mergestat/issues/168"}},{"cursor":"Y3Vyc29yOnYyOpHOO3bbpA==","node":{"author":{"login":"patrickdevivo"},"body":"We should allow a user to supply `OWNER`, `COLLABORATOR` or `ORGANIZATION_MEMBER` association values to the `github_org_repos` and `github_user_repos` tables - as an optional argument.\r\n\r\n![image](https://user-images.githubusercontent.com/57259/133532079-763e67c4-9d45-468b-bddc-44674bdb53cb.png)\r\n","closed":true,"closedAt":"2021-09-23T22:50:04Z","comments":{"totalCount":0},"createdAt":"2021-09-16T00:55:39Z","createdViaEmail":false,"databaseId":997645220,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":177,"participants":{"totalCount":1},"publishedAt":"2021-09-16T00:55:39Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Specify + as an optional argument.\r\n\r\n![image](https://user-images.githubusercontent.com/57259/133532079-763e67c4-9d45-468b-bddc-44674bdb53cb.png)\r\n","closed":true,"closedAt":"2021-09-23T22:50:04Z","comments":{"totalCount":0},"createdAt":"2021-09-16T00:55:39Z","createdViaEmail":false,"databaseId":997645220,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":177,"participants":{"totalCount":1},"publishedAt":"2021-09-16T00:55:39Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Specify repo association in `github_org_repos` and `github_user_repos` tables","updatedAt":"2021-09-23T22:50:04Z","url":"https://github.com/mergestat/mergestat/issues/177"}},{"cursor":"Y3Vyc29yOnYyOpHOO_Sj9Q==","node":{"author":{"login":"patrickdevivo"},"body":"The `locator` package currently only specifies an `HTTP` locator, we should add - support for an `SSH` one as well: https://github.com/askgitdev/askgit/blob/main/pkg/locator/locator.go#L58","closed":true,"closedAt":"2021-09-25T04:46:11Z","comments":{"totalCount":1},"createdAt":"2021-09-23T22:10:42Z","createdViaEmail":false,"databaseId":1005888501,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":181,"participants":{"totalCount":1},"publishedAt":"2021-09-23T22:10:42Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Add + support for an `SSH` one as well: https://github.com/askgitdev/askgit/blob/main/pkg/locator/locator.go#L58","closed":true,"closedAt":"2021-09-25T04:46:11Z","comments":{"totalCount":1},"createdAt":"2021-09-23T22:10:42Z","createdViaEmail":false,"databaseId":1005888501,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":181,"participants":{"totalCount":1},"publishedAt":"2021-09-23T22:10:42Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Add support for an `ssh` repo locator","updatedAt":"2021-09-25T04:46:11Z","url":"https://github.com/mergestat/mergestat/issues/181"}},{"cursor":"Y3Vyc29yOnYyOpHOPSuGLA==","node":{"author":{"login":"yermulnik"},"body":"Upgrading `askgitdev/askgit/askgit` with Homebrew on Linux (Ubuntu 20.04) is failing:\r\n```\r\n> uname -srm\r\nLinux 5.14.11-051411-generic x86_64\r\n\r\n> lsb_release -d\r\nDescription: Ubuntu @@ -244,10 +244,10 @@ interactions: GPL-2.0-only\r\n==> Dependencies\r\nBuild: cmake ✔, pkg-config ✔\r\nRequired: libssh2 ✔\r\n==> Options\r\n--HEAD\r\n Install HEAD version\r\n==> Analytics\r\ninstall: 1,052 (30 days), 1,994 (90 days), 6,492 (365 days)\r\ninstall-on-request: 140 - (30 days), 193 (90 days), 598 (365 days)\r\nbuild-error: 0 (30 days)\r\n```","closed":true,"closedAt":"2021-10-15T01:57:03Z","comments":{"totalCount":5},"createdAt":"2021-10-14T11:06:16Z","createdViaEmail":false,"databaseId":1026262572,"editor":{"login":"yermulnik"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":"2021-10-14T11:08:27Z","locked":false,"milestone":null,"number":197,"participants":{"totalCount":3},"publishedAt":"2021-10-14T11:06:16Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Installation + (30 days), 193 (90 days), 598 (365 days)\r\nbuild-error: 0 (30 days)\r\n```","closed":true,"closedAt":"2021-10-15T01:57:03Z","comments":{"totalCount":5},"createdAt":"2021-10-14T11:06:16Z","createdViaEmail":false,"databaseId":1026262572,"editor":{"login":"yermulnik"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":"2021-10-14T11:08:27Z","locked":false,"milestone":null,"number":197,"participants":{"totalCount":3},"publishedAt":"2021-10-14T11:06:16Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Installation is broken with Homebrew","updatedAt":"2021-10-15T12:22:51Z","url":"https://github.com/mergestat/mergestat/issues/197"}},{"cursor":"Y3Vyc29yOnYyOpHOPTORjw==","node":{"author":{"login":"Alessandro-Barbieri"},"body":"Could you upgrade to the latest libgit2? With the current one I have issues of missing - symbols","closed":true,"closedAt":"2021-10-15T01:33:36Z","comments":{"totalCount":0},"createdAt":"2021-10-14T20:24:07Z","createdViaEmail":false,"databaseId":1026789775,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":198,"participants":{"totalCount":1},"publishedAt":"2021-10-14T20:24:07Z","reactions":{"totalCount":1},"state":"CLOSED","title":"upgrade + symbols","closed":true,"closedAt":"2021-10-15T01:33:36Z","comments":{"totalCount":0},"createdAt":"2021-10-14T20:24:07Z","createdViaEmail":false,"databaseId":1026789775,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":198,"participants":{"totalCount":1},"publishedAt":"2021-10-14T20:24:07Z","reactions":{"totalCount":1},"state":"CLOSED","title":"upgrade to libgit2 1.3.0","updatedAt":"2021-10-15T01:33:37Z","url":"https://github.com/mergestat/mergestat/issues/198"}},{"cursor":"Y3Vyc29yOnYyOpHOPg3J1w==","node":{"author":{"login":"patrickdevivo"},"body":"As mentioned in: https://github.com/askgitdev/askgit/pull/207#issuecomment-956167714, it would be valuable to have a way to list the available tables (table-valued-functions) @@ -255,13 +255,13 @@ interactions: could be a simple option, but it mixes tables provided by this project and other modules (the JSON functions for example).\r\n\r\nIt may be worth doing this at the application level and offering a subcommand or \"built-in\" view/table - that lists the `askgit` tables.","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2021-11-01T11:55:56Z","createdViaEmail":false,"databaseId":1041091031,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1},"lastEditedAt":null,"locked":false,"milestone":null,"number":209,"participants":{"totalCount":1},"publishedAt":"2021-11-01T11:55:56Z","reactions":{"totalCount":0},"state":"OPEN","title":"Include + that lists the `askgit` tables.","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2021-11-01T11:55:56Z","createdViaEmail":false,"databaseId":1041091031,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"documentation"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":209,"participants":{"totalCount":1},"publishedAt":"2021-11-01T11:55:56Z","reactions":{"totalCount":0},"state":"OPEN","title":"Include way of listing all available tables","updatedAt":"2021-11-01T11:55:56Z","url":"https://github.com/mergestat/mergestat/issues/209"}},{"cursor":"Y3Vyc29yOnYyOpHOPhIgHQ==","node":{"author":{"login":"patrickdevivo"},"body":"The docker image we reference in the README is very out of date: https://hub.docker.com/r/augmentable/askgit (and belongs to an old, no-longer relevant org). We should:\r\n\r\n- [x] Update the image we publish on Docker Hub\r\n- [x] Update the README to use the correct/latest image\r\n- [x] Setup a pipeline to publish docker images automatically so that - they remain up to date\r\n\r\nThis was \"discovered\" in #207, thank you @thcipriani","closed":true,"closedAt":"2022-01-12T23:47:13Z","comments":{"totalCount":0},"createdAt":"2021-11-01T16:46:28Z","createdViaEmail":false,"databaseId":1041375261,"editor":{"login":"patrickdevivo"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":3},"lastEditedAt":"2022-01-12T23:47:09Z","locked":false,"milestone":null,"number":211,"participants":{"totalCount":1},"publishedAt":"2021-11-01T16:46:28Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Update + they remain up to date\r\n\r\nThis was \"discovered\" in #207, thank you @thcipriani","closed":true,"closedAt":"2022-01-12T23:47:13Z","comments":{"totalCount":0},"createdAt":"2021-11-01T16:46:28Z","createdViaEmail":false,"databaseId":1041375261,"editor":{"login":"patrickdevivo"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":3,"nodes":[{"name":"bug"},{"name":"documentation"},{"name":"enhancement"}]},"lastEditedAt":"2022-01-12T23:47:09Z","locked":false,"milestone":null,"number":211,"participants":{"totalCount":1},"publishedAt":"2021-11-01T16:46:28Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Update Docker image on Docker Hub + setup pipeline","updatedAt":"2022-01-12T23:47:13Z","url":"https://github.com/mergestat/mergestat/issues/211"}},{"cursor":"Y3Vyc29yOnYyOpHOP_AWMQ==","node":{"author":{"login":"patrickdevivo"},"body":"We''ve had a user request for a `github_branches` table-valued function for returning a list of branches on a GitHub repository and associated metadata, something @@ -274,21 +274,22 @@ interactions: a repo directly (either already on disk or executing a clone to a tmp directory)\r\n\r\n```sql\r\nSELECT * FROM refs(''https://github.com/mergestat/mergestat'')\r\n```\r\n\r\nwould be somewhat equivalent, just querying the git objects directly vs going through - the GitHub API","closed":true,"closedAt":"2021-12-08T21:40:57Z","comments":{"totalCount":0},"createdAt":"2021-12-06T22:47:26Z","createdViaEmail":false,"databaseId":1072698929,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":2},"lastEditedAt":null,"locked":false,"milestone":null,"number":219,"participants":{"totalCount":1},"publishedAt":"2021-12-06T22:47:26Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Implement + the GitHub API","closed":true,"closedAt":"2021-12-08T21:40:57Z","comments":{"totalCount":0},"createdAt":"2021-12-06T22:47:26Z","createdViaEmail":false,"databaseId":1072698929,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":2,"nodes":[{"name":"enhancement"},{"name":"good + first issue"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":219,"participants":{"totalCount":1},"publishedAt":"2021-12-06T22:47:26Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Implement `github_branches` table-valued function","updatedAt":"2021-12-08T21:40:57Z","url":"https://github.com/mergestat/mergestat/issues/219"}},{"cursor":"Y3Vyc29yOnYyOpHOQBEvvg==","node":{"author":{"login":"patrickdevivo"},"body":"We can list commits from a repository on disk, but not via the GitHub API. We should - implement a `github_repo_commits` table that can do this.","closed":true,"closedAt":"2022-01-18T17:42:28Z","comments":{"totalCount":0},"createdAt":"2021-12-08T21:46:48Z","createdViaEmail":false,"databaseId":1074868158,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1},"lastEditedAt":null,"locked":false,"milestone":null,"number":222,"participants":{"totalCount":2},"publishedAt":"2021-12-08T21:46:48Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Support + implement a `github_repo_commits` table that can do this.","closed":true,"closedAt":"2022-01-18T17:42:28Z","comments":{"totalCount":0},"createdAt":"2021-12-08T21:46:48Z","createdViaEmail":false,"databaseId":1074868158,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"enhancement"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":222,"participants":{"totalCount":2},"publishedAt":"2021-12-08T21:46:48Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Support for GitHub commits table-valued function","updatedAt":"2022-01-18T17:42:28Z","url":"https://github.com/mergestat/mergestat/issues/222"}},{"cursor":"Y3Vyc29yOnYyOpHOQBFEkg==","node":{"author":{"login":"patrickdevivo"},"body":"A table-valued GitHub API function for listing commits in a pull request, something like `github_pr_commits` that return all the commits in a PR, via the GitHub - API","closed":true,"closedAt":"2022-01-06T19:05:20Z","comments":{"totalCount":0},"createdAt":"2021-12-08T21:49:10Z","createdViaEmail":false,"databaseId":1074873490,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1},"lastEditedAt":null,"locked":false,"milestone":null,"number":223,"participants":{"totalCount":2},"publishedAt":"2021-12-08T21:49:10Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Support + API","closed":true,"closedAt":"2022-01-06T19:05:20Z","comments":{"totalCount":0},"createdAt":"2021-12-08T21:49:10Z","createdViaEmail":false,"databaseId":1074873490,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"enhancement"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":223,"participants":{"totalCount":2},"publishedAt":"2021-12-08T21:49:10Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Support for listing commits in a GitHub pull request","updatedAt":"2022-01-06T19:05:20Z","url":"https://github.com/mergestat/mergestat/issues/223"}},{"cursor":"Y3Vyc29yOnYyOpHOQgJgGw==","node":{"author":{"login":"patrickdevivo"},"body":"See [here](https://git-scm.com/docs/gitmailmap) for context. It would be useful to be able use mappings in a `.mailmap` of a repo to de-duplicate authors in queries.\r\n\r\nI''m not entirely sure how we add support for it - maybe as a helper function that takes the contents of a `.mailmap` and an email address, and returns the associated name.\r\n\r\nSomething like `SELECT mailmap(, - ''some@email.com'')`","closed":true,"closedAt":"2022-02-16T14:23:34Z","comments":{"totalCount":4},"createdAt":"2022-01-18T23:11:51Z","createdViaEmail":false,"databaseId":1107451931,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1},"lastEditedAt":null,"locked":false,"milestone":null,"number":229,"participants":{"totalCount":2},"publishedAt":"2022-01-18T23:11:51Z","reactions":{"totalCount":1},"state":"CLOSED","title":"Add + ''some@email.com'')`","closed":true,"closedAt":"2022-02-16T14:23:34Z","comments":{"totalCount":4},"createdAt":"2022-01-18T23:11:51Z","createdViaEmail":false,"databaseId":1107451931,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"enhancement"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":229,"participants":{"totalCount":2},"publishedAt":"2022-01-18T23:11:51Z","reactions":{"totalCount":1},"state":"CLOSED","title":"Add support for `.mailmap` files","updatedAt":"2022-02-16T15:38:35Z","url":"https://github.com/mergestat/mergestat/issues/229"}},{"cursor":"Y3Vyc29yOnYyOpHOQhUwBg==","node":{"author":{"login":"patrickdevivo"},"body":"Currently, the `--format json` flag outputs line delimited json (https://jsonlines.org/) to the CLI for better streaming support (results are printed as they arrive).\r\n\r\nWe @@ -297,7 +298,8 @@ interactions: \"col2\": 123},\r\n {\"col1\": \"hello, world!\", \"col2\": 124},\r\n ...\r\n]\r\n```\r\n\r\nMaybe it''s worth renaming current json out put to `ndjson` and use `json` for \"regular\" json output? It would break backwards compatibility - but I think that should - be okay","closed":true,"closedAt":"2022-01-21T05:55:54Z","comments":{"totalCount":0},"createdAt":"2022-01-20T00:06:44Z","createdViaEmail":false,"databaseId":1108684806,"editor":{"login":"patrickdevivo"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":1},"lastEditedAt":"2022-01-20T00:07:35Z","locked":false,"milestone":null,"number":230,"participants":{"totalCount":1},"publishedAt":"2022-01-20T00:06:44Z","reactions":{"totalCount":1},"state":"CLOSED","title":"Add + be okay","closed":true,"closedAt":"2022-01-21T05:55:54Z","comments":{"totalCount":0},"createdAt":"2022-01-20T00:06:44Z","createdViaEmail":false,"databaseId":1108684806,"editor":{"login":"patrickdevivo"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"good + first issue"}]},"lastEditedAt":"2022-01-20T00:07:35Z","locked":false,"milestone":null,"number":230,"participants":{"totalCount":1},"publishedAt":"2022-01-20T00:06:44Z","reactions":{"totalCount":1},"state":"CLOSED","title":"Add \"regular\" JSON output mode","updatedAt":"2022-01-21T05:55:54Z","url":"https://github.com/mergestat/mergestat/issues/230"}},{"cursor":"Y3Vyc29yOnYyOpHOQnxcjg==","node":{"author":{"login":"chrisma"},"body":"When no ''Default repository'' in the ''Query Settings'' is set, the error message for \r\n\r\n```SQL\r\nSELECT count(*) FROM commits('''')\r\n```\r\n\r\nis `problem @@ -305,21 +307,21 @@ interactions: error message could indicate that this might be the case because no default repo was set.\r\n\r\n—--—-—----\r\n\r\nThe greyed out placeholder text in the settings dialog makes it seem like the MergeStat repo is the default always - (unless overwritten)\r\n\r\n![image](https://user-images.githubusercontent.com/1652117/151239487-0db5272c-b499-4e59-a4f1-c5af0f1576f3.png)\r\n\r\n\r\n\r\n\r\n","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-01-26T20:12:43Z","createdViaEmail":false,"databaseId":1115446414,"editor":{"login":"chrisma"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":"2022-01-26T20:13:14Z","locked":false,"milestone":null,"number":242,"participants":{"totalCount":1},"publishedAt":"2022-01-26T20:12:43Z","reactions":{"totalCount":1},"state":"OPEN","title":"[Public + (unless overwritten)\r\n\r\n![image](https://user-images.githubusercontent.com/1652117/151239487-0db5272c-b499-4e59-a4f1-c5af0f1576f3.png)\r\n\r\n\r\n\r\n\r\n","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-01-26T20:12:43Z","createdViaEmail":false,"databaseId":1115446414,"editor":{"login":"chrisma"},"includesCreatedEdit":true,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":"2022-01-26T20:13:14Z","locked":false,"milestone":null,"number":242,"participants":{"totalCount":1},"publishedAt":"2022-01-26T20:12:43Z","reactions":{"totalCount":1},"state":"OPEN","title":"[Public workspace] Improve error message when default repo not set","updatedAt":"2022-01-26T20:13:14Z","url":"https://github.com/mergestat/mergestat/issues/242"}},{"cursor":"Y3Vyc29yOnYyOpHOQpGy0A==","node":{"author":{"login":"patrickdevivo"},"body":"See here: https://github.com/go-git/go-git/issues/140 and here: https://github.com/go-git/go-git/pull/228\r\n\r\nWe should be able to support the `GIT_SSL_NO_VERIFY` in the CLI so that users can - clone HTTPs repos with self-signed certs","closed":true,"closedAt":"2022-02-02T18:39:42Z","comments":{"totalCount":0},"createdAt":"2022-01-27T23:33:45Z","createdViaEmail":false,"databaseId":1116844752,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":243,"participants":{"totalCount":1},"publishedAt":"2022-01-27T23:33:45Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Add + clone HTTPs repos with self-signed certs","closed":true,"closedAt":"2022-02-02T18:39:42Z","comments":{"totalCount":0},"createdAt":"2022-01-27T23:33:45Z","createdViaEmail":false,"databaseId":1116844752,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":243,"participants":{"totalCount":1},"publishedAt":"2022-01-27T23:33:45Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Add support for `GIT_SSL_NO_VERIFY=1` env var","updatedAt":"2022-02-02T18:39:42Z","url":"https://github.com/mergestat/mergestat/issues/243"}},{"cursor":"Y3Vyc29yOnYyOpHOQ1PO9g==","node":{"author":{"login":"aborruso"},"body":"Hi to all,\r\nimagine I have repo in which I update a txt file day by day.\r\n\r\nIs there a way to have the version of this file on `2021-12-21`?\r\n\r\nA query like `SELECT * FROM myFile.txt AS OF TIMESTAMP(''2021-12-21'');` that give me - in output that file at that date?\r\n\r\nThank you","closed":true,"closedAt":"2022-02-10T15:51:38Z","comments":{"totalCount":8},"createdAt":"2022-02-10T07:24:48Z","createdViaEmail":false,"databaseId":1129565942,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":248,"participants":{"totalCount":2},"publishedAt":"2022-02-10T07:24:48Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Is + in output that file at that date?\r\n\r\nThank you","closed":true,"closedAt":"2022-02-10T15:51:38Z","comments":{"totalCount":8},"createdAt":"2022-02-10T07:24:48Z","createdViaEmail":false,"databaseId":1129565942,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":248,"participants":{"totalCount":2},"publishedAt":"2022-02-10T07:24:48Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Is there a query to extract file content on a specific date?","updatedAt":"2022-03-08T09:13:03Z","url":"https://github.com/mergestat/mergestat/issues/248"}},{"cursor":"Y3Vyc29yOnYyOpHOQ_Yp8g==","node":{"author":{"login":"chrisma"},"body":"What do you think of the idea of the parsed `.mailmap` file from the repos (if there is one) being represented by a queryable table in MergeStat?\r\n\r\nThis would allow constructing a query to identify all email addresses of contributors that - have not been assigned a canonical name through the `.mailmap` file.","closed":false,"closedAt":null,"comments":{"totalCount":2},"createdAt":"2022-02-16T15:37:22Z","createdViaEmail":false,"databaseId":1140206066,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":254,"participants":{"totalCount":2},"publishedAt":"2022-02-16T15:37:22Z","reactions":{"totalCount":0},"state":"OPEN","title":"Represent + have not been assigned a canonical name through the `.mailmap` file.","closed":false,"closedAt":null,"comments":{"totalCount":2},"createdAt":"2022-02-16T15:37:22Z","createdViaEmail":false,"databaseId":1140206066,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":254,"participants":{"totalCount":2},"publishedAt":"2022-02-16T15:37:22Z","reactions":{"totalCount":1},"state":"OPEN","title":"Represent `.mailmap` file of repo as a queryable table","updatedAt":"2022-02-16T15:51:36Z","url":"https://github.com/mergestat/mergestat/issues/254"}},{"cursor":"Y3Vyc29yOnYyOpHORBb90Q==","node":{"author":{"login":"patrickdevivo"},"body":"Similar to output for `mergestat summarize commits` and `mergestat summarize blame` (in format), a `mergestat summarize repo-issues owner/repo` command:\r\n\r\n- @@ -328,20 +330,20 @@ interactions: by Author (GitHub login)**\r\n\r\n- Login\r\n- Total Issues opened by author in period\r\n- Issues remaining open in period (and avg age?)\r\n- Issues closed in period\r\n- Average time to close\r\n\r\nFetching issues can take time, by - default only show a limited time frame (maybe the last 6 months or year)","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-02-18T05:00:12Z","createdViaEmail":false,"databaseId":1142357457,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":256,"participants":{"totalCount":1},"publishedAt":"2022-02-18T05:00:12Z","reactions":{"totalCount":0},"state":"OPEN","title":"`summarize` + default only show a limited time frame (maybe the last 6 months or year)","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-02-18T05:00:12Z","createdViaEmail":false,"databaseId":1142357457,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":256,"participants":{"totalCount":1},"publishedAt":"2022-02-18T05:00:12Z","reactions":{"totalCount":0},"state":"OPEN","title":"`summarize` command for GitHub Issues","updatedAt":"2022-02-18T05:00:12Z","url":"https://github.com/mergestat/mergestat/issues/256"}},{"cursor":"Y3Vyc29yOnYyOpHORBcCUw==","node":{"author":{"login":"patrickdevivo"},"body":"See #256 \r\n\r\nTotal PRs Opened\r\nTotal PRs Merged\r\nTotal PRs Closed\r\nTotal Authors\r\nAvg. Comment Count\r\nAvg. Commit Count\r\nAvg. Files Modified\r\nAvg. Lines added/removed (maybe all these on one line?)\r\nAvg. Time to merge\r\n\r\n**Breakdown by Author (GitHub login)**\r\nLogin\r\nTotal PRs opened by author in period\r\nTotal PRs merged in period (belonging to author)\r\nTotal PRs remaining open in period - (and avg age?)\r\nAvg time to merge","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-02-18T05:01:04Z","createdViaEmail":false,"databaseId":1142358611,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":257,"participants":{"totalCount":1},"publishedAt":"2022-02-18T05:01:04Z","reactions":{"totalCount":0},"state":"OPEN","title":"`summarize` + (and avg age?)\r\nAvg time to merge","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-02-18T05:01:04Z","createdViaEmail":false,"databaseId":1142358611,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":257,"participants":{"totalCount":1},"publishedAt":"2022-02-18T05:01:04Z","reactions":{"totalCount":0},"state":"OPEN","title":"`summarize` command for GitHub PRs","updatedAt":"2022-02-18T05:01:04Z","url":"https://github.com/mergestat/mergestat/issues/257"}},{"cursor":"Y3Vyc29yOnYyOpHORBc60g==","node":{"author":{"login":"patrickdevivo"},"body":"Currently, it''s pretty easy to hit a GitHub rate limit when running queries that use the GitHub API tables. We could consider implementing a back-off-retry strategy to pause execution when we encounter one, wait an appropriate amount of time, - and retry/continue","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-02-18T05:13:56Z","createdViaEmail":false,"databaseId":1142373074,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":258,"participants":{"totalCount":1},"publishedAt":"2022-02-18T05:13:56Z","reactions":{"totalCount":0},"state":"OPEN","title":"Retries - on GitHub API tables?","updatedAt":"2022-02-18T05:13:56Z","url":"https://github.com/mergestat/mergestat/issues/258"}},{"cursor":"Y3Vyc29yOnYyOpHORBdMIQ==","node":{"author":{"login":"patrickdevivo"},"body":"Currently, + and retry/continue","closed":false,"closedAt":null,"comments":{"totalCount":1},"createdAt":"2022-02-18T05:13:56Z","createdViaEmail":false,"databaseId":1142373074,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":258,"participants":{"totalCount":2},"publishedAt":"2022-02-18T05:13:56Z","reactions":{"totalCount":1},"state":"OPEN","title":"Retries + on GitHub API tables?","updatedAt":"2022-04-20T13:24:47Z","url":"https://github.com/mergestat/mergestat/issues/258"}},{"cursor":"Y3Vyc29yOnYyOpHORBdMIQ==","node":{"author":{"login":"patrickdevivo"},"body":"Currently, GitHub API tables make GraphQL requests to the GitHub API (using [this library](https://github.com/shurcooL/githubv4)). However, we fetch _all_ columns for a table, even if they are unused in the query. This makes it easy to hit the GitHub \"secondary rate limit,\" which @@ -350,14 +352,36 @@ interactions: be, and skips over a big purpose of GraphQL (being able to selectively choose which fields to retrieve).\r\n\r\nWe should investigate how to only fetch the columns/fields we need for these API requests. We should be able to access the - `colUsed` field from the SQLite virtual table interface as well.","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-02-18T05:18:09Z","createdViaEmail":false,"databaseId":1142377505,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":259,"participants":{"totalCount":1},"publishedAt":"2022-02-18T05:18:09Z","reactions":{"totalCount":0},"state":"OPEN","title":"GitHub + `colUsed` field from the SQLite virtual table interface as well.","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-02-18T05:18:09Z","createdViaEmail":false,"databaseId":1142377505,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":259,"participants":{"totalCount":1},"publishedAt":"2022-02-18T05:18:09Z","reactions":{"totalCount":0},"state":"OPEN","title":"GitHub API tables, only fetch columns used by queries","updatedAt":"2022-02-18T05:18:09Z","url":"https://github.com/mergestat/mergestat/issues/259"}},{"cursor":"Y3Vyc29yOnYyOpHORU1SuA==","node":{"author":{"login":"patrickdevivo"},"body":"See - this issue for additional context: https://github.com/mergestat/homebrew-mergestat/issues/20","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-03-08T14:02:43Z","createdViaEmail":false,"databaseId":1162695352,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"milestone":null,"number":268,"participants":{"totalCount":1},"publishedAt":"2022-03-08T14:02:43Z","reactions":{"totalCount":0},"state":"OPEN","title":"Use + this issue for additional context: https://github.com/mergestat/homebrew-mergestat/issues/20","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-03-08T14:02:43Z","createdViaEmail":false,"databaseId":1162695352,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":268,"participants":{"totalCount":1},"publishedAt":"2022-03-08T14:02:43Z","reactions":{"totalCount":0},"state":"OPEN","title":"Use `goreleaser`","updatedAt":"2022-03-08T14:02:43Z","url":"https://github.com/mergestat/mergestat/issues/268"}},{"cursor":"Y3Vyc29yOnYyOpHORZJ65w==","node":{"author":{"login":"andaag"},"body":"Hi\r\n\r\nInteresting project! Currently trying to run https://docs.mergestat.com/miscellaneous/cloning-all-org-repos against github enterprise, but failing on auth. Is there any way to set the - custom github enterprise url so I can auth to that instead of github.com?","closed":false,"closedAt":null,"comments":{"totalCount":1},"createdAt":"2022-03-12T08:54:22Z","createdViaEmail":false,"databaseId":1167227623,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1},"lastEditedAt":null,"locked":false,"milestone":null,"number":269,"participants":{"totalCount":2},"publishedAt":"2022-03-12T08:54:22Z","reactions":{"totalCount":0},"state":"OPEN","title":"support - for github enterprise","updatedAt":"2022-03-12T16:43:02Z","url":"https://github.com/mergestat/mergestat/issues/269"}}],"pageInfo":{"endCursor":"Y3Vyc29yOnYyOpHORZJ65w==","hasNextPage":false}}}}}' + custom github enterprise url so I can auth to that instead of github.com?","closed":false,"closedAt":null,"comments":{"totalCount":1},"createdAt":"2022-03-12T08:54:22Z","createdViaEmail":false,"databaseId":1167227623,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"enhancement"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":269,"participants":{"totalCount":2},"publishedAt":"2022-03-12T08:54:22Z","reactions":{"totalCount":0},"state":"OPEN","title":"support + for github enterprise","updatedAt":"2022-03-12T16:43:02Z","url":"https://github.com/mergestat/mergestat/issues/269"}},{"cursor":"Y3Vyc29yOnYyOpHORk8RyQ==","node":{"author":{"login":"patrickdevivo"},"body":"https://github.com/mergestat/mergestat/blob/main/cmd/summarize/commits/commits.go#L63-L70\r\n\r\nIt''s + possible for `author_name` / `author_email` to be null, in which case we have + a `Scan` error - should use `sql.NullString` in these cases","closed":false,"closedAt":null,"comments":{"totalCount":0},"createdAt":"2022-03-24T14:20:15Z","createdViaEmail":false,"databaseId":1179587017,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"bug"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":275,"participants":{"totalCount":1},"publishedAt":"2022-03-24T14:20:15Z","reactions":{"totalCount":1},"state":"OPEN","title":"handle + null values in `summarize` queries better","updatedAt":"2022-03-24T14:20:16Z","url":"https://github.com/mergestat/mergestat/issues/275"}},{"cursor":"Y3Vyc29yOnYyOpHORmYFnQ==","node":{"author":{"login":"patrickdevivo"},"body":"For + listing the reviews of a GitHub pull request (`PullRequestReview` in the GraphQL + API)","closed":true,"closedAt":"2022-03-28T18:04:37Z","comments":{"totalCount":1},"createdAt":"2022-03-25T18:10:56Z","createdViaEmail":false,"databaseId":1181091229,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":1,"nodes":[{"name":"enhancement"}]},"lastEditedAt":null,"locked":false,"milestone":null,"number":276,"participants":{"totalCount":1},"publishedAt":"2022-03-25T18:10:56Z","reactions":{"totalCount":0},"state":"CLOSED","title":"Implement + `github_repo_pr_reviews` table","updatedAt":"2022-03-28T18:04:37Z","url":"https://github.com/mergestat/mergestat/issues/276"}},{"cursor":"Y3Vyc29yOnYyOpHORnfv1w==","node":{"author":{"login":"eddiesholl"},"body":"I''ve + been trying to work out how to filter file paths affected by a specific commit. + Or in other words, show me the files modified by a particular commit, or maybe + all the files affected when a particular merge happens.\r\n\r\nAs far as I can + tell, each commit hash in the `files` table has a record for every file in the + tree at that time. I''m struggling to see where in the data model the file paths + changed in each commit might be available.\r\n\r\nThanks!","closed":false,"closedAt":null,"comments":{"totalCount":1},"createdAt":"2022-03-27T02:26:06Z","createdViaEmail":false,"databaseId":1182265303,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":277,"participants":{"totalCount":2},"publishedAt":"2022-03-27T02:26:06Z","reactions":{"totalCount":0},"state":"OPEN","title":"Finding + file paths affected by a commit","updatedAt":"2022-03-27T20:14:23Z","url":"https://github.com/mergestat/mergestat/issues/277"}},{"cursor":"Y3Vyc29yOnYyOpHORv_FLQ==","node":{"author":{"login":"grawlinson"},"body":"I''m + one of the package maintainers for Arch Linux and I also maintain a few packages + on the [AUR](http://aur.archlinux.org), which mergestat can be found on.\r\n\r\nJust + wondering if there''s any interest in [RELRO/PIE](https://www.redhat.com/en/blog/hardening-elf-binaries-using-relocation-read-only-relro) + being applied to the binary & shared library?\r\n\r\nI generally try and apply + these to all the Go-related packages that I maintain due to our [Go package + guidelines](https://wiki.archlinux.org/title/Go_package_guidelines). I''ve found + that mergestat seems to be working fine with these applied, as per this [commit](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=mergestat&id=bff06c23be685cf9b22f2b7d553148ee4dc79cce). + ","closed":false,"closedAt":null,"comments":{"totalCount":2},"createdAt":"2022-04-04T02:28:05Z","createdViaEmail":false,"databaseId":1191167277,"editor":null,"includesCreatedEdit":false,"isReadByViewer":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"milestone":null,"number":280,"participants":{"totalCount":2},"publishedAt":"2022-04-04T02:28:05Z","reactions":{"totalCount":0},"state":"OPEN","title":"Hardening + binary & shared library","updatedAt":"2022-04-04T22:33:59Z","url":"https://github.com/mergestat/mergestat/issues/280"}}],"pageInfo":{"endCursor":"Y3Vyc29yOnYyOpHORv_FLQ==","hasNextPage":true}}}}}' headers: Access-Control-Allow-Origin: - '*' @@ -371,7 +395,7 @@ interactions: Content-Type: - application/json; charset=utf-8 Date: - - Mon, 21 Mar 2022 17:41:29 GMT + - Mon, 20 Jun 2022 20:37:07 GMT Referrer-Policy: - origin-when-cross-origin, strict-origin-when-cross-origin Server: @@ -389,21 +413,21 @@ interactions: X-Github-Media-Type: - github.v4; format=json X-Github-Request-Id: - - E72D:4C0B:17F4184:2EBC928:6238B8C7 + - F49A:1765:127E412:399C727:62B0DA71 X-Oauth-Scopes: - read:org, repo, user X-Ratelimit-Limit: - "5000" X-Ratelimit-Remaining: - - "4629" + - "4994" X-Ratelimit-Reset: - - "1647887697" + - "1655759957" X-Ratelimit-Resource: - graphql X-Ratelimit-Used: - - "371" + - "6" X-Xss-Protection: - "0" status: 200 OK code: 200 - duration: 2.06549735s + duration: 2.522939191s diff --git a/extensions/internal/github/repo_issues.go b/extensions/internal/github/repo_issues.go index 697e7240..41413a0a 100644 --- a/extensions/internal/github/repo_issues.go +++ b/extensions/internal/github/repo_issues.go @@ -2,6 +2,7 @@ package github import ( "context" + "encoding/json" "fmt" "io" "time" @@ -33,7 +34,10 @@ type issue struct { IsReadByViewer bool Labels struct { TotalCount int - } + Nodes []struct { + Name string + } + } `graphql:"labels(first: 15)"` LastEditedAt githubv4.DateTime Locked bool Milestone struct { @@ -157,6 +161,18 @@ func (i *iterIssues) Column(ctx vtab.Context, c int) error { ctx.ResultInt(t1f0(current.Node.IncludesCreatedEdit)) case "label_count": ctx.ResultInt(current.Node.Labels.TotalCount) + case "labels": + labels := make([]string, len(current.Node.Labels.Nodes)) + for l, label := range current.Node.Labels.Nodes { + labels[l] = label.Name + } + js, err := json.Marshal(labels) + if err != nil { + i.logger().Err(err).Msgf("could not marshal issue labels") + ctx.ResultNull() + } else { + ctx.ResultText(string(js)) + } case "last_edited_at": t := current.Node.LastEditedAt if t.IsZero() { @@ -255,6 +271,7 @@ var issuesCols = []vtab.Column{ {Name: "editor_login", Type: "TEXT"}, {Name: "includes_created_edit", Type: "BOOLEAN"}, {Name: "label_count", Type: "INT"}, + {Name: "labels", Type: "JSON"}, {Name: "last_edited_at", Type: "DATETIME"}, {Name: "locked", Type: "BOOLEAN"}, {Name: "milestone_count", Type: "INT"}, diff --git a/extensions/internal/github/repo_issues_test.go b/extensions/internal/github/repo_issues_test.go index 1477d32f..cf19112d 100644 --- a/extensions/internal/github/repo_issues_test.go +++ b/extensions/internal/github/repo_issues_test.go @@ -23,8 +23,8 @@ func TestRepoIssues(t *testing.T) { t.Fatalf("failed to retrieve row contents: %v", err.Error()) } - if colCount != 22 { - t.Fatalf("expected 22 columns, got: %d", colCount) + if colCount != 23 { + t.Fatalf("expected 23 columns, got: %d", colCount) } if len(content) != 10 { From 1b0783b88c54e41527944c0e5be202a0c77b031d Mon Sep 17 00:00:00 2001 From: Patrick DeVivo Date: Mon, 20 Jun 2022 16:55:24 -0400 Subject: [PATCH 2/2] feat: add `labels` column to `github_repo_prs` table-valued-func --- .../internal/github/fixtures/TestRepoPRs.yaml | 118 +++++++++--------- extensions/internal/github/repo_prs.go | 19 ++- extensions/internal/github/repo_prs_test.go | 4 +- 3 files changed, 79 insertions(+), 62 deletions(-) diff --git a/extensions/internal/github/fixtures/TestRepoPRs.yaml b/extensions/internal/github/fixtures/TestRepoPRs.yaml index 86f31f9d..9eeb7353 100644 --- a/extensions/internal/github/fixtures/TestRepoPRs.yaml +++ b/extensions/internal/github/fixtures/TestRepoPRs.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"query":"query($name:String!$owner:String!$perpage:Int!$prcursor:String$prorder:IssueOrder){rateLimit{cost,limit,nodeCount,remaining,resetAt,used},repository(owner: $owner, name: $name){owner{login},name,pullRequests(first: $perpage, after: $prcursor, orderBy: $prorder){nodes{activeLockReason,additions,author{login,avatarUrl,... on User{name}},authorAssociation,baseRefOid,baseRefName,baseRepository{nameWithOwner},body,changedFiles,closed,closedAt,comments{totalCount},commits{totalCount},createdAt,createdViaEmail,databaseId,deletions,editor{login},headRefName,headRefOid,headRepository{nameWithOwner},isCrossRepository,isDraft,labels{totalCount},lastEditedAt,locked,maintainerCanModify,mergeable,merged,mergedAt,mergedBy{login},number,participants{totalCount},publishedAt,reviewDecision,state,title,updatedAt,url},pageInfo{endCursor,hasNextPage}}}}","variables":{"name":"mergestat","owner":"mergestat","perpage":50,"prcursor":null,"prorder":null}} + {"query":"query($name:String!$owner:String!$perpage:Int!$prcursor:String$prorder:IssueOrder){rateLimit{cost,limit,nodeCount,remaining,resetAt,used},repository(owner: $owner, name: $name){owner{login},name,pullRequests(first: $perpage, after: $prcursor, orderBy: $prorder){nodes{activeLockReason,additions,author{login,avatarUrl,... on User{name}},authorAssociation,baseRefOid,baseRefName,baseRepository{nameWithOwner},body,changedFiles,closed,closedAt,comments{totalCount},commits{totalCount},createdAt,createdViaEmail,databaseId,deletions,editor{login},headRefName,headRefOid,headRepository{nameWithOwner},isCrossRepository,isDraft,labels(first: 15){totalCount,nodes{name}},lastEditedAt,locked,maintainerCanModify,mergeable,merged,mergedAt,mergedBy{login},number,participants{totalCount},publishedAt,reviewDecision,state,title,updatedAt,url},pageInfo{endCursor,hasNextPage}}}}","variables":{"name":"mergestat","owner":"mergestat","perpage":50,"prcursor":null,"prorder":null}} form: {} headers: Content-Type: @@ -11,8 +11,8 @@ interactions: url: https://api.github.com/graphql method: POST response: - body: '{"data":{"rateLimit":{"cost":1,"limit":5000,"nodeCount":50,"remaining":3689,"resetAt":"2022-03-21T16:34:55Z","used":1311},"repository":{"owner":{"login":"mergestat"},"name":"mergestat","pullRequests":{"nodes":[{"activeLockReason":null,"additions":7,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick - DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"470835a70ed61a489eac90b7db9fef94b4af75fe","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":2,"closed":true,"closedAt":"2020-07-04T02:33:28Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-04T00:38:16Z","createdViaEmail":false,"databaseId":444220062,"deletions":7,"editor":null,"headRefName":"lint-fixes","headRefOid":"4eb47f399128326bb781eb072d6c0527b4110384","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-04T02:33:28Z","mergedBy":{"login":"patrickdevivo"},"number":1,"participants":{"totalCount":1},"publishedAt":"2020-07-04T00:38:16Z","reviewDecision":null,"state":"MERGED","title":"address + body: '{"data":{"rateLimit":{"cost":1,"limit":5000,"nodeCount":800,"remaining":4993,"resetAt":"2022-06-20T21:19:17Z","used":7},"repository":{"owner":{"login":"mergestat"},"name":"mergestat","pullRequests":{"nodes":[{"activeLockReason":null,"additions":7,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick + DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"470835a70ed61a489eac90b7db9fef94b4af75fe","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":2,"closed":true,"closedAt":"2020-07-04T02:33:28Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-04T00:38:16Z","createdViaEmail":false,"databaseId":444220062,"deletions":7,"editor":null,"headRefName":"lint-fixes","headRefOid":"4eb47f399128326bb781eb072d6c0527b4110384","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-04T02:33:28Z","mergedBy":{"login":"patrickdevivo"},"number":1,"participants":{"totalCount":1},"publishedAt":"2020-07-04T00:38:16Z","reviewDecision":null,"state":"MERGED","title":"address some golint issues","updatedAt":"2020-07-04T02:33:35Z","url":"https://github.com/mergestat/mergestat/pull/1"},{"activeLockReason":null,"additions":1,"author":{"login":"OutOfBrain","avatarUrl":"https://avatars.githubusercontent.com/u/103776?v=4","name":"Sirko B"},"authorAssociation":"NONE","baseRefOid":"96009b96edd0a88d515751ed835373ff24f2ea3a","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"When querying a local repository with a local file path that is outside of the current @@ -20,19 +20,19 @@ interactions: from commits limit 10\" --repo /Users/A/valid/local/path/to/git/repo\r\n> unsupported remote protocol\r\n\r\nvcsurl can parse the url without error but does not think it is a git repo and on subsequent open throws above error message. Adding an - additional check if vcsurl thinks it found a remote git url solves this issue.\r\n\r\n","changedFiles":2,"closed":true,"closedAt":"2020-07-05T17:31:27Z","comments":{"totalCount":2},"commits":{"totalCount":2},"createdAt":"2020-07-05T10:55:40Z","createdViaEmail":false,"databaseId":444390959,"deletions":4,"editor":null,"headRefName":"support-local-repo","headRefOid":"23e71d5f4d90083683c3e49943c5b4d3f0a1eb61","headRepository":{"nameWithOwner":"OutOfBrain/gitqlite"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":2,"participants":{"totalCount":2},"publishedAt":"2020-07-05T10:55:40Z","reviewDecision":null,"state":"CLOSED","title":"Support + additional check if vcsurl thinks it found a remote git url solves this issue.\r\n\r\n","changedFiles":2,"closed":true,"closedAt":"2020-07-05T17:31:27Z","comments":{"totalCount":2},"commits":{"totalCount":2},"createdAt":"2020-07-05T10:55:40Z","createdViaEmail":false,"databaseId":444390959,"deletions":4,"editor":null,"headRefName":"support-local-repo","headRefOid":"23e71d5f4d90083683c3e49943c5b4d3f0a1eb61","headRepository":{"nameWithOwner":"OutOfBrain/gitqlite"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":2,"participants":{"totalCount":2},"publishedAt":"2020-07-05T10:55:40Z","reviewDecision":null,"state":"CLOSED","title":"Support local repo outside cwd","updatedAt":"2020-07-05T17:31:28Z","url":"https://github.com/mergestat/mergestat/pull/2"},{"activeLockReason":null,"additions":1,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"96009b96edd0a88d515751ed835373ff24f2ea3a","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Just specifying \"push\" doesn''t seem to trigger an actions run for PRs opened from - forks, maybe this will?","changedFiles":1,"closed":true,"closedAt":"2020-07-05T16:10:49Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-05T16:07:36Z","createdViaEmail":false,"databaseId":444427215,"deletions":1,"editor":null,"headRefName":"github-actions-on-pr","headRefOid":"c09feac73d2c275128fc7b2da74c05349576baec","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-05T16:10:49Z","mergedBy":{"login":"patrickdevivo"},"number":4,"participants":{"totalCount":1},"publishedAt":"2020-07-05T16:07:36Z","reviewDecision":null,"state":"MERGED","title":"add + forks, maybe this will?","changedFiles":1,"closed":true,"closedAt":"2020-07-05T16:10:49Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-05T16:07:36Z","createdViaEmail":false,"databaseId":444427215,"deletions":1,"editor":null,"headRefName":"github-actions-on-pr","headRefOid":"c09feac73d2c275128fc7b2da74c05349576baec","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-05T16:10:49Z","mergedBy":{"login":"patrickdevivo"},"number":4,"participants":{"totalCount":1},"publishedAt":"2020-07-05T16:07:36Z","reviewDecision":null,"state":"MERGED","title":"add pull_request to github actions file","updatedAt":"2020-07-05T16:10:54Z","url":"https://github.com/mergestat/mergestat/pull/4"},{"activeLockReason":null,"additions":15,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"2aeca4cce08a3cf7f70116a0116b758a6c5af266","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"This is a re-handling of #2 from @OutOfBrain. Thanks for the initial PR! I tried that code locally but was having some problems with local paths that seemed to be parsable by vcsurl AND where `remote.Kind == vcsurl.Git` (I didn''t dig into why) but I believe this addresses more thoroughly. Also includes your fix - in the test file, thanks!","changedFiles":2,"closed":true,"closedAt":"2020-07-05T17:32:57Z","comments":{"totalCount":0},"commits":{"totalCount":2},"createdAt":"2020-07-05T16:51:00Z","createdViaEmail":false,"databaseId":444432383,"deletions":19,"editor":null,"headRefName":"resolve-local-repos","headRefOid":"4f43704e1771e96e03a30ac1437ac1d25990c9ba","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-05T17:32:57Z","mergedBy":{"login":"patrickdevivo"},"number":5,"participants":{"totalCount":2},"publishedAt":"2020-07-05T16:51:00Z","reviewDecision":null,"state":"MERGED","title":"Resolve - local repos","updatedAt":"2020-07-05T17:33:06Z","url":"https://github.com/mergestat/mergestat/pull/5"},{"activeLockReason":null,"additions":20,"author":{"login":"youngminz","avatarUrl":"https://avatars.githubusercontent.com/u/5145369?u=b06414b9935c9125f93f69a2ec687f59096749ce&v=4","name":"Youngmin + in the test file, thanks!","changedFiles":2,"closed":true,"closedAt":"2020-07-05T17:32:57Z","comments":{"totalCount":0},"commits":{"totalCount":2},"createdAt":"2020-07-05T16:51:00Z","createdViaEmail":false,"databaseId":444432383,"deletions":19,"editor":null,"headRefName":"resolve-local-repos","headRefOid":"4f43704e1771e96e03a30ac1437ac1d25990c9ba","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-05T17:32:57Z","mergedBy":{"login":"patrickdevivo"},"number":5,"participants":{"totalCount":2},"publishedAt":"2020-07-05T16:51:00Z","reviewDecision":null,"state":"MERGED","title":"Resolve + local repos","updatedAt":"2020-07-05T17:33:06Z","url":"https://github.com/mergestat/mergestat/pull/5"},{"activeLockReason":null,"additions":20,"author":{"login":"youngminz","avatarUrl":"https://avatars.githubusercontent.com/u/5145369?u=5a20afc81bc912af15bb5032de9dde854cfbb37a&v=4","name":"Youngmin Koo"},"authorAssociation":"NONE","baseRefOid":"0181cef5fe119a572d10518d6a434c6e86499207","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"This PR fixes panic when querying at the empty repository. This is my first Go language work :) I wish I could add a test, but after digging for a few hours, I gave @@ -83,56 +83,56 @@ interactions: +0x349\r\ngithub.com/spf13/cobra.(*Command).Execute(...)\r\n /home/youngminz/go/pkg/mod/github.com/spf13/cobra@v1.0.0/command.go:887\r\ngithub.com/augmentable-dev/gitqlite/cmd.Execute()\r\n /home/youngminz/dist/gitqlite/cmd/root.go:111 +0x2d\r\nmain.main()\r\n /home/youngminz/dist/gitqlite/gitqlite.go:8 +0x20\r\n```\r\n\r\nAfter my fix:\r\n```\r\n$ gitqlite \"select * from commits\"\r\nrepository - is empty\r\n```","changedFiles":2,"closed":true,"closedAt":"2020-07-07T02:08:38Z","comments":{"totalCount":4},"commits":{"totalCount":1},"createdAt":"2020-07-05T19:17:03Z","createdViaEmail":false,"databaseId":444448823,"deletions":2,"editor":null,"headRefName":"master","headRefOid":"cf1886e30ee6afec9dda7ebf4b4b6f95a9a78e98","headRepository":null,"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":6,"participants":{"totalCount":2},"publishedAt":"2020-07-05T19:17:03Z","reviewDecision":null,"state":"CLOSED","title":"fix + is empty\r\n```","changedFiles":2,"closed":true,"closedAt":"2020-07-07T02:08:38Z","comments":{"totalCount":4},"commits":{"totalCount":1},"createdAt":"2020-07-05T19:17:03Z","createdViaEmail":false,"databaseId":444448823,"deletions":2,"editor":null,"headRefName":"master","headRefOid":"cf1886e30ee6afec9dda7ebf4b4b6f95a9a78e98","headRepository":null,"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":6,"participants":{"totalCount":2},"publishedAt":"2020-07-05T19:17:03Z","reviewDecision":null,"state":"CLOSED","title":"fix panic when querying at the empty repository","updatedAt":"2020-07-07T02:08:38Z","url":"https://github.com/mergestat/mergestat/pull/6"},{"activeLockReason":null,"additions":40,"author":{"login":"michiel","avatarUrl":"https://avatars.githubusercontent.com/u/40421?u=7cd53eb483243d4defdc352c947afdeafdd0c073&v=4","name":"Michiel Kalkman"},"authorAssociation":"CONTRIBUTOR","baseRefOid":"0181cef5fe119a572d10518d6a434c6e86499207","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"This - PR adds a multi-stage Dockerfile for building the project as a docker container","changedFiles":2,"closed":true,"closedAt":"2020-07-06T22:28:47Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-07-06T01:06:26Z","createdViaEmail":false,"databaseId":444488737,"deletions":0,"editor":null,"headRefName":"feature/docker-run","headRefOid":"d90e38531d7f845a3287e6de50e5615d2e6a0ce0","headRepository":{"nameWithOwner":"michiel/gitqlite"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-06T22:28:47Z","mergedBy":{"login":"patrickdevivo"},"number":7,"participants":{"totalCount":2},"publishedAt":"2020-07-06T01:06:26Z","reviewDecision":"APPROVED","state":"MERGED","title":"feat: + PR adds a multi-stage Dockerfile for building the project as a docker container","changedFiles":2,"closed":true,"closedAt":"2020-07-06T22:28:47Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-07-06T01:06:26Z","createdViaEmail":false,"databaseId":444488737,"deletions":0,"editor":null,"headRefName":"feature/docker-run","headRefOid":"d90e38531d7f845a3287e6de50e5615d2e6a0ce0","headRepository":{"nameWithOwner":"michiel/gitqlite"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-06T22:28:47Z","mergedBy":{"login":"patrickdevivo"},"number":7,"participants":{"totalCount":2},"publishedAt":"2020-07-06T01:06:26Z","reviewDecision":"APPROVED","state":"MERGED","title":"feat: add Dockerfile and instructions to README","updatedAt":"2020-07-06T22:28:47Z","url":"https://github.com/mergestat/mergestat/pull/7"},{"activeLockReason":null,"additions":15,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"f8f1df7158b58bdcf5957c890e96b5631c1a0152","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"i.e. - with `git init` just having been run. Addresses #6 @youngminz","changedFiles":2,"closed":true,"closedAt":"2020-07-07T02:11:48Z","comments":{"totalCount":2},"commits":{"totalCount":1},"createdAt":"2020-07-07T01:47:23Z","createdViaEmail":false,"databaseId":445091791,"deletions":2,"editor":null,"headRefName":"fixes-for-empty-repos","headRefOid":"5f73be221cb96cf39efd7224b95b203f426303c4","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-07T02:11:48Z","mergedBy":{"login":"patrickdevivo"},"number":8,"participants":{"totalCount":2},"publishedAt":"2020-07-07T01:47:23Z","reviewDecision":null,"state":"MERGED","title":"handle + with `git init` just having been run. Addresses #6 @youngminz","changedFiles":2,"closed":true,"closedAt":"2020-07-07T02:11:48Z","comments":{"totalCount":2},"commits":{"totalCount":1},"createdAt":"2020-07-07T01:47:23Z","createdViaEmail":false,"databaseId":445091791,"deletions":2,"editor":null,"headRefName":"fixes-for-empty-repos","headRefOid":"5f73be221cb96cf39efd7224b95b203f426303c4","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-07T02:11:48Z","mergedBy":{"login":"patrickdevivo"},"number":8,"participants":{"totalCount":2},"publishedAt":"2020-07-07T01:47:23Z","reviewDecision":null,"state":"MERGED","title":"handle repos with no commits without panic-ing","updatedAt":"2020-07-07T02:11:52Z","url":"https://github.com/mergestat/mergestat/pull/8"},{"activeLockReason":null,"additions":88,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"3aba802704f5fe3feb876d73353efce394c9e2aa","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-07-07T20:48:59Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-07T15:37:30Z","createdViaEmail":false,"databaseId":445494150,"deletions":26,"editor":null,"headRefName":"git-diff-efficiency","headRefOid":"29f310692c55fde5e86f097b22d198482c871b9c","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":12,"participants":{"totalCount":1},"publishedAt":"2020-07-07T15:37:30Z","reviewDecision":null,"state":"CLOSED","title":"Add + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"3aba802704f5fe3feb876d73353efce394c9e2aa","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-07-07T20:48:59Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-07T15:37:30Z","createdViaEmail":false,"databaseId":445494150,"deletions":26,"editor":null,"headRefName":"git-diff-efficiency","headRefOid":"29f310692c55fde5e86f097b22d198482c871b9c","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":12,"participants":{"totalCount":1},"publishedAt":"2020-07-07T15:37:30Z","reviewDecision":null,"state":"CLOSED","title":"Add use of git CLT if installed on sys to improve efficiency of diff calc ","updatedAt":"2020-07-15T15:48:52Z","url":"https://github.com/mergestat/mergestat/pull/12"},{"activeLockReason":null,"additions":332,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"3aba802704f5fe3feb876d73353efce394c9e2aa","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":4,"closed":true,"closedAt":"2020-07-08T13:00:04Z","comments":{"totalCount":0},"commits":{"totalCount":6},"createdAt":"2020-07-07T20:48:45Z","createdViaEmail":false,"databaseId":445669196,"deletions":3,"editor":null,"headRefName":"Efficiency--git_log_cli-table","headRefOid":"9535461d4e308097f0bdb1cc088f34ed9b31aa21","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-08T13:00:04Z","mergedBy":{"login":"Vialeon"},"number":13,"participants":{"totalCount":2},"publishedAt":"2020-07-07T20:48:45Z","reviewDecision":"APPROVED","state":"MERGED","title":"created + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"3aba802704f5fe3feb876d73353efce394c9e2aa","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":4,"closed":true,"closedAt":"2020-07-08T13:00:04Z","comments":{"totalCount":0},"commits":{"totalCount":6},"createdAt":"2020-07-07T20:48:45Z","createdViaEmail":false,"databaseId":445669196,"deletions":3,"editor":null,"headRefName":"Efficiency--git_log_cli-table","headRefOid":"9535461d4e308097f0bdb1cc088f34ed9b31aa21","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-08T13:00:04Z","mergedBy":{"login":"Vialeon"},"number":13,"participants":{"totalCount":2},"publishedAt":"2020-07-07T20:48:45Z","reviewDecision":"APPROVED","state":"MERGED","title":"created table to be used if system has git installed for efficiency","updatedAt":"2020-07-08T13:00:09Z","url":"https://github.com/mergestat/mergestat/pull/13"},{"activeLockReason":null,"additions":166,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"121d9bd60b40298bb47cc53356d6e1da62c4f4b6","baseRefName":"Efficiency--git_log_cli-table","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"- - move to a new `gitlog` package\r\n- a bit of renaming","changedFiles":2,"closed":true,"closedAt":"2020-07-08T00:44:37Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-08T00:29:00Z","createdViaEmail":false,"databaseId":445796708,"deletions":6,"editor":null,"headRefName":"git-log-cli-edits","headRefOid":"98549569d6540c0bbc39ef5e5111d3c8cda7a5bb","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-08T00:44:37Z","mergedBy":{"login":"patrickdevivo"},"number":14,"participants":{"totalCount":2},"publishedAt":"2020-07-08T00:29:00Z","reviewDecision":"APPROVED","state":"MERGED","title":"Git + move to a new `gitlog` package\r\n- a bit of renaming","changedFiles":2,"closed":true,"closedAt":"2020-07-08T00:44:37Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-08T00:29:00Z","createdViaEmail":false,"databaseId":445796708,"deletions":6,"editor":null,"headRefName":"git-log-cli-edits","headRefOid":"98549569d6540c0bbc39ef5e5111d3c8cda7a5bb","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-08T00:44:37Z","mergedBy":{"login":"patrickdevivo"},"number":14,"participants":{"totalCount":2},"publishedAt":"2020-07-08T00:29:00Z","reviewDecision":"APPROVED","state":"MERGED","title":"Git log CLI edits","updatedAt":"2020-07-08T00:44:41Z","url":"https://github.com/mergestat/mergestat/pull/14"},{"activeLockReason":null,"additions":7,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"3aba802704f5fe3feb876d73353efce394c9e2aa","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Just - a formatting fix","changedFiles":1,"closed":true,"closedAt":"2020-07-08T02:57:57Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-08T02:54:05Z","createdViaEmail":false,"databaseId":445879107,"deletions":7,"editor":null,"headRefName":"consistent-example-sql-fmt","headRefOid":"324f0cc7dc57e4d6ff58754ae907d8a0cca3b081","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-08T02:57:57Z","mergedBy":{"login":"patrickdevivo"},"number":15,"participants":{"totalCount":1},"publishedAt":"2020-07-08T02:54:05Z","reviewDecision":null,"state":"MERGED","title":"capitalize + a formatting fix","changedFiles":1,"closed":true,"closedAt":"2020-07-08T02:57:57Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-08T02:54:05Z","createdViaEmail":false,"databaseId":445879107,"deletions":7,"editor":null,"headRefName":"consistent-example-sql-fmt","headRefOid":"324f0cc7dc57e4d6ff58754ae907d8a0cca3b081","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-08T02:57:57Z","mergedBy":{"login":"patrickdevivo"},"number":15,"participants":{"totalCount":1},"publishedAt":"2020-07-08T02:54:05Z","reviewDecision":null,"state":"MERGED","title":"capitalize key words in the final example for consistency","updatedAt":"2020-07-08T02:58:00Z","url":"https://github.com/mergestat/mergestat/pull/15"},{"activeLockReason":null,"additions":20,"author":{"login":"thealamu","avatarUrl":"https://avatars.githubusercontent.com/u/42256651?u=cdae9a78a482ce91a7ae376be0feef643417c9f4&v=4","name":"Faithfulness - Alamu"},"authorAssociation":"NONE","baseRefOid":"51d0240afa2e574bcab145d41c98f8097df43b0f","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-09-12T19:55:09Z","comments":{"totalCount":1},"commits":{"totalCount":2},"createdAt":"2020-07-08T07:25:24Z","createdViaEmail":false,"databaseId":446049765,"deletions":5,"editor":null,"headRefName":"master","headRefOid":"6912492dc8a2fe478dbcc87916d5009ee9be56e6","headRepository":null,"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":16,"participants":{"totalCount":3},"publishedAt":"2020-07-08T07:25:24Z","reviewDecision":"APPROVED","state":"CLOSED","title":"Switch + Alamu"},"authorAssociation":"NONE","baseRefOid":"51d0240afa2e574bcab145d41c98f8097df43b0f","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-09-12T19:55:09Z","comments":{"totalCount":1},"commits":{"totalCount":2},"createdAt":"2020-07-08T07:25:24Z","createdViaEmail":false,"databaseId":446049765,"deletions":5,"editor":null,"headRefName":"master","headRefOid":"6912492dc8a2fe478dbcc87916d5009ee9be56e6","headRepository":null,"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":16,"participants":{"totalCount":3},"publishedAt":"2020-07-08T07:25:24Z","reviewDecision":"APPROVED","state":"CLOSED","title":"Switch between table and csv dependent on num columns","updatedAt":"2020-09-12T19:55:09Z","url":"https://github.com/mergestat/mergestat/pull/16"},{"activeLockReason":null,"additions":726,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"51d0240afa2e574bcab145d41c98f8097df43b0f","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Tags table is working. For branches need to figure out how to pull all branches from - a remote","changedFiles":11,"closed":true,"closedAt":"2020-07-17T03:07:00Z","comments":{"totalCount":1},"commits":{"totalCount":32},"createdAt":"2020-07-08T14:49:52Z","createdViaEmail":false,"databaseId":446295192,"deletions":26,"editor":null,"headRefName":"v_tables-for-tags-and-all-branches","headRefOid":"1a57791b8eae0a498368cad3e58022369f5a14d9","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-17T03:07:00Z","mergedBy":{"login":"patrickdevivo"},"number":18,"participants":{"totalCount":2},"publishedAt":"2020-07-08T14:49:52Z","reviewDecision":"APPROVED","state":"MERGED","title":"V + a remote","changedFiles":11,"closed":true,"closedAt":"2020-07-17T03:07:00Z","comments":{"totalCount":1},"commits":{"totalCount":32},"createdAt":"2020-07-08T14:49:52Z","createdViaEmail":false,"databaseId":446295192,"deletions":26,"editor":null,"headRefName":"v_tables-for-tags-and-all-branches","headRefOid":"1a57791b8eae0a498368cad3e58022369f5a14d9","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-17T03:07:00Z","mergedBy":{"login":"patrickdevivo"},"number":18,"participants":{"totalCount":2},"publishedAt":"2020-07-08T14:49:52Z","reviewDecision":"APPROVED","state":"MERGED","title":"V tables for tags and all branches","updatedAt":"2020-07-17T03:07:04Z","url":"https://github.com/mergestat/mergestat/pull/18"},{"activeLockReason":null,"additions":7,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"51d0240afa2e574bcab145d41c98f8097df43b0f","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Use a \"shared\" cache per repo on disk, which prevents issues when used as a library - querying multiple repos at a time","changedFiles":1,"closed":true,"closedAt":"2020-07-10T00:56:45Z","comments":{"totalCount":0},"commits":{"totalCount":2},"createdAt":"2020-07-10T00:52:13Z","createdViaEmail":false,"databaseId":447163879,"deletions":5,"editor":null,"headRefName":"open-db-based-on-repo","headRefOid":"f7f91ea6e46fde349ced1fcc1210b8a864bc2f2f","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-10T00:56:45Z","mergedBy":{"login":"patrickdevivo"},"number":19,"participants":{"totalCount":1},"publishedAt":"2020-07-10T00:52:13Z","reviewDecision":null,"state":"MERGED","title":"Open + querying multiple repos at a time","changedFiles":1,"closed":true,"closedAt":"2020-07-10T00:56:45Z","comments":{"totalCount":0},"commits":{"totalCount":2},"createdAt":"2020-07-10T00:52:13Z","createdViaEmail":false,"databaseId":447163879,"deletions":5,"editor":null,"headRefName":"open-db-based-on-repo","headRefOid":"f7f91ea6e46fde349ced1fcc1210b8a864bc2f2f","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-10T00:56:45Z","mergedBy":{"login":"patrickdevivo"},"number":19,"participants":{"totalCount":1},"publishedAt":"2020-07-10T00:52:13Z","reviewDecision":null,"state":"MERGED","title":"Open DB based on repo path","updatedAt":"2020-07-10T00:56:49Z","url":"https://github.com/mergestat/mergestat/pull/19"},{"activeLockReason":null,"additions":65,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"bb2c966ca872119e4edd383cbb3e4b75e3556aca","baseRefName":"v_tables-for-tags-and-all-branches","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-07-15T03:03:28Z","comments":{"totalCount":0},"commits":{"totalCount":2},"createdAt":"2020-07-14T14:16:17Z","createdViaEmail":false,"databaseId":448909527,"deletions":4,"editor":null,"headRefName":"commit-testing","headRefOid":"2b8a7a96418a231c9afa1866d06157100f56602f","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-15T03:03:28Z","mergedBy":{"login":"Vialeon"},"number":20,"participants":{"totalCount":2},"publishedAt":"2020-07-14T14:16:17Z","reviewDecision":"APPROVED","state":"MERGED","title":"more + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"bb2c966ca872119e4edd383cbb3e4b75e3556aca","baseRefName":"v_tables-for-tags-and-all-branches","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-07-15T03:03:28Z","comments":{"totalCount":0},"commits":{"totalCount":2},"createdAt":"2020-07-14T14:16:17Z","createdViaEmail":false,"databaseId":448909527,"deletions":4,"editor":null,"headRefName":"commit-testing","headRefOid":"2b8a7a96418a231c9afa1866d06157100f56602f","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-15T03:03:28Z","mergedBy":{"login":"Vialeon"},"number":20,"participants":{"totalCount":2},"publishedAt":"2020-07-14T14:16:17Z","reviewDecision":"APPROVED","state":"MERGED","title":"more rigorous testing for refs and commits","updatedAt":"2020-07-15T16:18:57Z","url":"https://github.com/mergestat/mergestat/pull/20"},{"activeLockReason":null,"additions":117,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick - DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"343f067d81c6c5fe259af0d18e13d06896d5a9af","baseRefName":"v_tables-for-tags-and-all-branches","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":6,"closed":true,"closedAt":"2020-07-17T02:54:15Z","comments":{"totalCount":0},"commits":{"totalCount":4},"createdAt":"2020-07-17T02:13:54Z","createdViaEmail":false,"databaseId":450683862,"deletions":94,"editor":null,"headRefName":"tags-branches-cleanup","headRefOid":"34c1d0e56ed9e0bf5f1bc70c4331904c1be2f4eb","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-17T02:54:15Z","mergedBy":{"login":"patrickdevivo"},"number":21,"participants":{"totalCount":1},"publishedAt":"2020-07-17T02:13:54Z","reviewDecision":null,"state":"MERGED","title":"General + DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"343f067d81c6c5fe259af0d18e13d06896d5a9af","baseRefName":"v_tables-for-tags-and-all-branches","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":6,"closed":true,"closedAt":"2020-07-17T02:54:15Z","comments":{"totalCount":0},"commits":{"totalCount":4},"createdAt":"2020-07-17T02:13:54Z","createdViaEmail":false,"databaseId":450683862,"deletions":94,"editor":null,"headRefName":"tags-branches-cleanup","headRefOid":"34c1d0e56ed9e0bf5f1bc70c4331904c1be2f4eb","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-17T02:54:15Z","mergedBy":{"login":"patrickdevivo"},"number":21,"participants":{"totalCount":1},"publishedAt":"2020-07-17T02:13:54Z","reviewDecision":null,"state":"MERGED","title":"General cleanup of some of the inflight work","updatedAt":"2020-07-17T02:54:23Z","url":"https://github.com/mergestat/mergestat/pull/21"},{"activeLockReason":null,"additions":4,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"5c2b9585d9569840645d1f33d68cd37f05e8f635","baseRefName":"v_tables-for-tags-and-all-branches","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"uploads - coverage report to codecov.io","changedFiles":1,"closed":true,"closedAt":"2020-07-17T03:03:32Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-17T03:03:24Z","createdViaEmail":false,"databaseId":450711667,"deletions":1,"editor":null,"headRefName":"upload-coverage","headRefOid":"9ff4043ebaa2596563c3b075e396f4337ef70d96","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-17T03:03:32Z","mergedBy":{"login":"patrickdevivo"},"number":22,"participants":{"totalCount":1},"publishedAt":"2020-07-17T03:03:24Z","reviewDecision":null,"state":"MERGED","title":"upload + coverage report to codecov.io","changedFiles":1,"closed":true,"closedAt":"2020-07-17T03:03:32Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-07-17T03:03:24Z","createdViaEmail":false,"databaseId":450711667,"deletions":1,"editor":null,"headRefName":"upload-coverage","headRefOid":"9ff4043ebaa2596563c3b075e396f4337ef70d96","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-17T03:03:32Z","mergedBy":{"login":"patrickdevivo"},"number":22,"participants":{"totalCount":1},"publishedAt":"2020-07-17T03:03:24Z","reviewDecision":null,"state":"MERGED","title":"upload coverage after running tests","updatedAt":"2020-07-17T03:03:36Z","url":"https://github.com/mergestat/mergestat/pull/22"},{"activeLockReason":null,"additions":6,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"5d73928a29c7a8258ae61a3cd31519cc3e5c6f91","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Closes - #11 ","changedFiles":1,"closed":true,"closedAt":"2020-07-17T03:17:40Z","comments":{"totalCount":1},"commits":{"totalCount":2},"createdAt":"2020-07-17T03:15:12Z","createdViaEmail":false,"databaseId":450718159,"deletions":0,"editor":null,"headRefName":"docker-in-readme","headRefOid":"c17612b2f98534a76a03148ccd69a322f2c4ec46","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-17T03:17:40Z","mergedBy":{"login":"patrickdevivo"},"number":23,"participants":{"totalCount":1},"publishedAt":"2020-07-17T03:15:12Z","reviewDecision":null,"state":"MERGED","title":"add + #11 ","changedFiles":1,"closed":true,"closedAt":"2020-07-17T03:17:40Z","comments":{"totalCount":1},"commits":{"totalCount":2},"createdAt":"2020-07-17T03:15:12Z","createdViaEmail":false,"databaseId":450718159,"deletions":0,"editor":null,"headRefName":"docker-in-readme","headRefOid":"c17612b2f98534a76a03148ccd69a322f2c4ec46","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-17T03:17:40Z","mergedBy":{"login":"patrickdevivo"},"number":23,"participants":{"totalCount":1},"publishedAt":"2020-07-17T03:15:12Z","reviewDecision":null,"state":"MERGED","title":"add a note about the docker image on docker hub to README","updatedAt":"2020-07-17T03:17:44Z","url":"https://github.com/mergestat/mergestat/pull/23"},{"activeLockReason":null,"additions":208,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"345837c377d97b3f117292fd208234267f300804","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"using libgit2 for efficiency. git_log table working. git_tree recurses to stack overflow - on anything somewhat large.","changedFiles":7,"closed":true,"closedAt":"2020-07-24T16:05:50Z","comments":{"totalCount":0},"commits":{"totalCount":3},"createdAt":"2020-07-17T20:35:32Z","createdViaEmail":false,"databaseId":451442500,"deletions":134,"editor":null,"headRefName":"libgit2","headRefOid":"07d616d75e3c8f07ecf49c0995bd7e0d7303de4f","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":25,"participants":{"totalCount":1},"publishedAt":"2020-07-17T20:35:32Z","reviewDecision":null,"state":"CLOSED","title":"Libgit2","updatedAt":"2021-07-20T23:43:05Z","url":"https://github.com/mergestat/mergestat/pull/25"},{"activeLockReason":null,"additions":161,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick + on anything somewhat large.","changedFiles":7,"closed":true,"closedAt":"2020-07-24T16:05:50Z","comments":{"totalCount":0},"commits":{"totalCount":3},"createdAt":"2020-07-17T20:35:32Z","createdViaEmail":false,"databaseId":451442500,"deletions":134,"editor":null,"headRefName":"libgit2","headRefOid":"07d616d75e3c8f07ecf49c0995bd7e0d7303de4f","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":25,"participants":{"totalCount":1},"publishedAt":"2020-07-17T20:35:32Z","reviewDecision":null,"state":"CLOSED","title":"Libgit2","updatedAt":"2021-07-20T23:43:05Z","url":"https://github.com/mergestat/mergestat/pull/25"},{"activeLockReason":null,"additions":161,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"345837c377d97b3f117292fd208234267f300804","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"- remove the index and eof fields from most cursors (unnecessary)\r\n- move the cursor initialization into `Filter` where it belongs, addresses some weird bugs - with self-joins not working\r\n","changedFiles":6,"closed":true,"closedAt":"2020-07-19T04:23:17Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-07-19T04:16:57Z","createdViaEmail":false,"databaseId":452322902,"deletions":185,"editor":null,"headRefName":"clean-vtables","headRefOid":"2ea8e1870bf04b2b57f683f5fb06a9b1d6ab059c","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-19T04:23:17Z","mergedBy":{"login":"patrickdevivo"},"number":26,"participants":{"totalCount":1},"publishedAt":"2020-07-19T04:16:57Z","reviewDecision":null,"state":"MERGED","title":"Cleaning + with self-joins not working\r\n","changedFiles":6,"closed":true,"closedAt":"2020-07-19T04:23:17Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-07-19T04:16:57Z","createdViaEmail":false,"databaseId":452322902,"deletions":185,"editor":null,"headRefName":"clean-vtables","headRefOid":"2ea8e1870bf04b2b57f683f5fb06a9b1d6ab059c","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-19T04:23:17Z","mergedBy":{"login":"patrickdevivo"},"number":26,"participants":{"totalCount":1},"publishedAt":"2020-07-19T04:16:57Z","reviewDecision":null,"state":"MERGED","title":"Cleaning up the virtual table implementations","updatedAt":"2020-07-19T04:23:21Z","url":"https://github.com/mergestat/mergestat/pull/26"},{"activeLockReason":null,"additions":479,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"55454f414d9868e181758ae04a6f6475a410ff01","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"added - benchmarks and split tests into different files","changedFiles":7,"closed":true,"closedAt":"2020-07-21T02:14:30Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-07-20T15:34:12Z","createdViaEmail":false,"databaseId":453568576,"deletions":354,"editor":null,"headRefName":"benchmarking&testReorg","headRefOid":"439a6addd93bce89939e7c297898b3d7edb33265","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-21T02:14:30Z","mergedBy":{"login":"patrickdevivo"},"number":27,"participants":{"totalCount":2},"publishedAt":"2020-07-20T15:34:12Z","reviewDecision":"APPROVED","state":"MERGED","title":"Benchmarking&test + benchmarks and split tests into different files","changedFiles":7,"closed":true,"closedAt":"2020-07-21T02:14:30Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-07-20T15:34:12Z","createdViaEmail":false,"databaseId":453568576,"deletions":354,"editor":null,"headRefName":"benchmarking&testReorg","headRefOid":"439a6addd93bce89939e7c297898b3d7edb33265","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-21T02:14:30Z","mergedBy":{"login":"patrickdevivo"},"number":27,"participants":{"totalCount":2},"publishedAt":"2020-07-20T15:34:12Z","reviewDecision":"APPROVED","state":"MERGED","title":"Benchmarking&test reorg","updatedAt":"2020-07-21T02:14:35Z","url":"https://github.com/mergestat/mergestat/pull/27"},{"activeLockReason":null,"additions":44,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"7fe9470b63019d5e58df49b51666063f5fdd2117","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":3,"closed":true,"closedAt":"2020-07-22T02:03:53Z","comments":{"totalCount":1},"commits":{"totalCount":2},"createdAt":"2020-07-21T13:29:20Z","createdViaEmail":false,"databaseId":454506399,"deletions":5,"editor":null,"headRefName":"testing","headRefOid":"22735d80efc3bb0dbba5c90f6bfeb53f1d03f369","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-22T02:03:53Z","mergedBy":{"login":"patrickdevivo"},"number":28,"participants":{"totalCount":2},"publishedAt":"2020-07-21T13:29:20Z","reviewDecision":"APPROVED","state":"MERGED","title":"add + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"7fe9470b63019d5e58df49b51666063f5fdd2117","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":3,"closed":true,"closedAt":"2020-07-22T02:03:53Z","comments":{"totalCount":1},"commits":{"totalCount":2},"createdAt":"2020-07-21T13:29:20Z","createdViaEmail":false,"databaseId":454506399,"deletions":5,"editor":null,"headRefName":"testing","headRefOid":"22735d80efc3bb0dbba5c90f6bfeb53f1d03f369","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-22T02:03:53Z","mergedBy":{"login":"patrickdevivo"},"number":28,"participants":{"totalCount":2},"publishedAt":"2020-07-21T13:29:20Z","reviewDecision":"APPROVED","state":"MERGED","title":"add file ID in trees and do name & hash comp in tree_test","updatedAt":"2020-07-22T02:03:56Z","url":"https://github.com/mergestat/mergestat/pull/28"},{"activeLockReason":null,"additions":2,"author":{"login":"dloss","avatarUrl":"https://avatars.githubusercontent.com/u/744603?v=4","name":"Dirk Loss"},"authorAssociation":"CONTRIBUTOR","baseRefOid":"9d5ba0bdf4a08fc9858fe36c693f9ffc418c21dd","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"The original command gave the following error (go1.14.3 darwin/amd64):\r\n\r\n```\r\n$ @@ -140,88 +140,88 @@ interactions: load package: package github.com/augmentable-dev/gitqlite: cannot find package \"github.com/augmentable-dev/gitqlite\" in any of:\r\n\t/usr/local/opt/go/libexec/src/github.com/augmentable-dev/gitqlite (from $GOROOT)\r\n\t/Users/dloss/golang/src/github.com/augmentable-dev/gitqlite - (from $GOPATH)\r\n```","changedFiles":1,"closed":true,"closedAt":"2020-07-22T22:24:23Z","comments":{"totalCount":2},"commits":{"totalCount":1},"createdAt":"2020-07-22T05:35:13Z","createdViaEmail":false,"databaseId":454891643,"deletions":2,"editor":null,"headRefName":"fix-install-instruction","headRefOid":"a1c7d0f181dab16b5c60cbfe109125e73fbd21ad","headRepository":{"nameWithOwner":"dloss/gitqlite"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-22T22:24:23Z","mergedBy":{"login":"patrickdevivo"},"number":29,"participants":{"totalCount":3},"publishedAt":"2020-07-22T05:35:13Z","reviewDecision":"APPROVED","state":"MERGED","title":"Fix + (from $GOPATH)\r\n```","changedFiles":1,"closed":true,"closedAt":"2020-07-22T22:24:23Z","comments":{"totalCount":2},"commits":{"totalCount":1},"createdAt":"2020-07-22T05:35:13Z","createdViaEmail":false,"databaseId":454891643,"deletions":2,"editor":null,"headRefName":"fix-install-instruction","headRefOid":"a1c7d0f181dab16b5c60cbfe109125e73fbd21ad","headRepository":{"nameWithOwner":"dloss/gitqlite"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-22T22:24:23Z","mergedBy":{"login":"patrickdevivo"},"number":29,"participants":{"totalCount":3},"publishedAt":"2020-07-22T05:35:13Z","reviewDecision":"APPROVED","state":"MERGED","title":"Fix installation instructions","updatedAt":"2020-07-22T22:24:23Z","url":"https://github.com/mergestat/mergestat/pull/29"},{"activeLockReason":null,"additions":8,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"c65f1eb2ff26ce529550388973e8d67e6b7cc91f","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Clearer - intro","changedFiles":1,"closed":true,"closedAt":"2020-07-23T00:22:39Z","comments":{"totalCount":1},"commits":{"totalCount":5},"createdAt":"2020-07-23T00:20:42Z","createdViaEmail":false,"databaseId":455417953,"deletions":2,"editor":null,"headRefName":"readme-updates","headRefOid":"b7d5784a9bf9a3952d1c08c79a18036affe640c5","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-23T00:22:39Z","mergedBy":{"login":"patrickdevivo"},"number":30,"participants":{"totalCount":1},"publishedAt":"2020-07-23T00:20:42Z","reviewDecision":null,"state":"MERGED","title":"A + intro","changedFiles":1,"closed":true,"closedAt":"2020-07-23T00:22:39Z","comments":{"totalCount":1},"commits":{"totalCount":5},"createdAt":"2020-07-23T00:20:42Z","createdViaEmail":false,"databaseId":455417953,"deletions":2,"editor":null,"headRefName":"readme-updates","headRefOid":"b7d5784a9bf9a3952d1c08c79a18036affe640c5","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-07-23T00:22:39Z","mergedBy":{"login":"patrickdevivo"},"number":30,"participants":{"totalCount":1},"publishedAt":"2020-07-23T00:20:42Z","reviewDecision":null,"state":"MERGED","title":"A bit of rewording in the README","updatedAt":"2020-07-23T00:22:42Z","url":"https://github.com/mergestat/mergestat/pull/30"},{"activeLockReason":null,"additions":663,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"953905aa6bfecddd9523cd78c9d4aa6f2bd2662b","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":10,"closed":true,"closedAt":"2020-08-29T16:43:57Z","comments":{"totalCount":1},"commits":{"totalCount":98},"createdAt":"2020-07-23T17:08:36Z","createdViaEmail":false,"databaseId":455845620,"deletions":183,"editor":null,"headRefName":"GUI-in-terminal","headRefOid":"94998ce5c7f529e07fba26a7d7d7fb595f0fc681","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-29T16:43:57Z","mergedBy":{"login":"Vialeon"},"number":31,"participants":{"totalCount":2},"publishedAt":"2020-07-23T17:08:36Z","reviewDecision":"APPROVED","state":"MERGED","title":"Gui + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"953905aa6bfecddd9523cd78c9d4aa6f2bd2662b","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":10,"closed":true,"closedAt":"2020-08-29T16:43:57Z","comments":{"totalCount":1},"commits":{"totalCount":98},"createdAt":"2020-07-23T17:08:36Z","createdViaEmail":false,"databaseId":455845620,"deletions":183,"editor":null,"headRefName":"GUI-in-terminal","headRefOid":"94998ce5c7f529e07fba26a7d7d7fb595f0fc681","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-29T16:43:57Z","mergedBy":{"login":"Vialeon"},"number":31,"participants":{"totalCount":2},"publishedAt":"2020-07-23T17:08:36Z","reviewDecision":"APPROVED","state":"MERGED","title":"Gui in terminal","updatedAt":"2020-08-29T16:44:01Z","url":"https://github.com/mergestat/mergestat/pull/31"},{"activeLockReason":null,"additions":219,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"5ac571f021e4a0759819b02d76799e7347eb7ffc","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Implements - an iterator for parsing `git log` results. Also fixes up some stat calculations","changedFiles":4,"closed":true,"closedAt":"2020-08-03T01:08:35Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-08-03T00:35:51Z","createdViaEmail":false,"databaseId":461885286,"deletions":102,"editor":null,"headRefName":"git-cli-iter","headRefOid":"27cc19ffcfa7d0266196e25614d5ec512b6e23dd","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-03T01:08:35Z","mergedBy":{"login":"patrickdevivo"},"number":33,"participants":{"totalCount":1},"publishedAt":"2020-08-03T00:35:51Z","reviewDecision":null,"state":"MERGED","title":"Git + an iterator for parsing `git log` results. Also fixes up some stat calculations","changedFiles":4,"closed":true,"closedAt":"2020-08-03T01:08:35Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-08-03T00:35:51Z","createdViaEmail":false,"databaseId":461885286,"deletions":102,"editor":null,"headRefName":"git-cli-iter","headRefOid":"27cc19ffcfa7d0266196e25614d5ec512b6e23dd","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-03T01:08:35Z","mergedBy":{"login":"patrickdevivo"},"number":33,"participants":{"totalCount":1},"publishedAt":"2020-08-03T00:35:51Z","reviewDecision":null,"state":"MERGED","title":"Git CLI Iterator","updatedAt":"2020-08-03T01:08:39Z","url":"https://github.com/mergestat/mergestat/pull/33"},{"activeLockReason":null,"additions":31,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"2374e42d1ebb9c7df84ab432ee5e13b4abfd9a6c","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Renames this project and the command to `askgit`. `gitqlite` remains the name of a subpackage - for the git sqlite virtual table implementation","changedFiles":8,"closed":true,"closedAt":"2020-08-06T01:08:26Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-08-06T01:03:43Z","createdViaEmail":false,"databaseId":463720104,"deletions":30,"editor":null,"headRefName":"rename-to-askgit","headRefOid":"6ea446b721a9b4189e8664553520fc9b8be27ed3","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-06T01:08:26Z","mergedBy":{"login":"patrickdevivo"},"number":34,"participants":{"totalCount":1},"publishedAt":"2020-08-06T01:03:43Z","reviewDecision":null,"state":"MERGED","title":"rename + for the git sqlite virtual table implementation","changedFiles":8,"closed":true,"closedAt":"2020-08-06T01:08:26Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-08-06T01:03:43Z","createdViaEmail":false,"databaseId":463720104,"deletions":30,"editor":null,"headRefName":"rename-to-askgit","headRefOid":"6ea446b721a9b4189e8664553520fc9b8be27ed3","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-06T01:08:26Z","mergedBy":{"login":"patrickdevivo"},"number":34,"participants":{"totalCount":1},"publishedAt":"2020-08-06T01:03:43Z","reviewDecision":null,"state":"MERGED","title":"rename this project to `askgit`","updatedAt":"2020-08-06T01:08:30Z","url":"https://github.com/mergestat/mergestat/pull/34"},{"activeLockReason":null,"additions":1,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick - DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"9d0c2ea75a82c512c2cfe49c3a6ee3b53e9df95e","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-08-06T01:19:46Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-08-06T01:17:55Z","createdViaEmail":false,"databaseId":463723696,"deletions":1,"editor":null,"headRefName":"formatting-fix","headRefOid":"33b4bc090686a5a234d476905ae784f9ece36dd0","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-06T01:19:46Z","mergedBy":{"login":"patrickdevivo"},"number":35,"participants":{"totalCount":1},"publishedAt":"2020-08-06T01:17:55Z","reviewDecision":null,"state":"MERGED","title":"rm + DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"9d0c2ea75a82c512c2cfe49c3a6ee3b53e9df95e","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-08-06T01:19:46Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-08-06T01:17:55Z","createdViaEmail":false,"databaseId":463723696,"deletions":1,"editor":null,"headRefName":"formatting-fix","headRefOid":"33b4bc090686a5a234d476905ae784f9ece36dd0","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-06T01:19:46Z","mergedBy":{"login":"patrickdevivo"},"number":35,"participants":{"totalCount":1},"publishedAt":"2020-08-06T01:17:55Z","reviewDecision":null,"state":"MERGED","title":"rm extra spaces","updatedAt":"2020-08-06T01:21:06Z","url":"https://github.com/mergestat/mergestat/pull/35"},{"activeLockReason":null,"additions":121,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"953905aa6bfecddd9523cd78c9d4aa6f2bd2662b","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":5,"closed":true,"closedAt":"2020-12-07T22:23:17Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-08-11T20:30:41Z","createdViaEmail":false,"databaseId":466339837,"deletions":65,"editor":null,"headRefName":"multipleRepo","headRefOid":"9d3fbb5cfbba1de4892882ea3fe52c14b01b01b6","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":36,"participants":{"totalCount":1},"publishedAt":"2020-08-11T20:30:41Z","reviewDecision":null,"state":"CLOSED","title":"multiple + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"953905aa6bfecddd9523cd78c9d4aa6f2bd2662b","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":5,"closed":true,"closedAt":"2020-12-07T22:23:17Z","comments":{"totalCount":0},"commits":{"totalCount":1},"createdAt":"2020-08-11T20:30:41Z","createdViaEmail":false,"databaseId":466339837,"deletions":65,"editor":null,"headRefName":"multipleRepo","headRefOid":"9d3fbb5cfbba1de4892882ea3fe52c14b01b01b6","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":36,"participants":{"totalCount":1},"publishedAt":"2020-08-11T20:30:41Z","reviewDecision":null,"state":"CLOSED","title":"multiple repo support for git-log","updatedAt":"2021-07-20T23:43:09Z","url":"https://github.com/mergestat/mergestat/pull/36"},{"activeLockReason":null,"additions":318,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"953905aa6bfecddd9523cd78c9d4aa6f2bd2662b","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":7,"closed":true,"closedAt":"2020-12-07T22:22:06Z","comments":{"totalCount":1},"commits":{"totalCount":6},"createdAt":"2020-08-17T17:46:19Z","createdViaEmail":false,"databaseId":468976740,"deletions":4,"editor":null,"headRefName":"PR_table","headRefOid":"a31c33b9f59fdb5a71eb3eed51ed3f9e9e61f6ab","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":39,"participants":{"totalCount":1},"publishedAt":"2020-08-17T17:46:19Z","reviewDecision":null,"state":"CLOSED","title":"Pr + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"953905aa6bfecddd9523cd78c9d4aa6f2bd2662b","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":7,"closed":true,"closedAt":"2020-12-07T22:22:06Z","comments":{"totalCount":1},"commits":{"totalCount":6},"createdAt":"2020-08-17T17:46:19Z","createdViaEmail":false,"databaseId":468976740,"deletions":4,"editor":null,"headRefName":"PR_table","headRefOid":"a31c33b9f59fdb5a71eb3eed51ed3f9e9e61f6ab","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":39,"participants":{"totalCount":1},"publishedAt":"2020-08-17T17:46:19Z","reviewDecision":null,"state":"CLOSED","title":"Pr table","updatedAt":"2021-07-20T23:43:13Z","url":"https://github.com/mergestat/mergestat/pull/39"},{"activeLockReason":null,"additions":656,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"0e01a11409d08a44e6fc4cac48302a1fc9780525","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":11,"closed":true,"closedAt":"2020-11-16T22:44:52Z","comments":{"totalCount":1},"commits":{"totalCount":62},"createdAt":"2020-08-18T14:23:08Z","createdViaEmail":false,"databaseId":469532751,"deletions":19,"editor":null,"headRefName":"add-names-of-changed-files-to-git_log-table","headRefOid":"0108c0d88410e253fc785ec5e36083e839512590","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":40,"participants":{"totalCount":2},"publishedAt":"2020-08-18T14:23:08Z","reviewDecision":null,"state":"CLOSED","title":"Add + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"0e01a11409d08a44e6fc4cac48302a1fc9780525","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":11,"closed":true,"closedAt":"2020-11-16T22:44:52Z","comments":{"totalCount":1},"commits":{"totalCount":62},"createdAt":"2020-08-18T14:23:08Z","createdViaEmail":false,"databaseId":469532751,"deletions":19,"editor":null,"headRefName":"add-names-of-changed-files-to-git_log-table","headRefOid":"0108c0d88410e253fc785ec5e36083e839512590","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":40,"participants":{"totalCount":2},"publishedAt":"2020-08-18T14:23:08Z","reviewDecision":null,"state":"CLOSED","title":"Add a stats table with info form --numstat & more","updatedAt":"2020-11-16T22:44:56Z","url":"https://github.com/mergestat/mergestat/pull/40"},{"activeLockReason":null,"additions":27,"author":{"login":"rugamaga","avatarUrl":"https://avatars.githubusercontent.com/u/43959381?u=9d98a73b1c5cc8bddb73a1ec3896a206697cd7b1&v=4","name":"ruga"},"authorAssociation":"NONE","baseRefOid":"953905aa6bfecddd9523cd78c9d4aa6f2bd2662b","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"# - what it is?\r\n\r\nCreating meta command `.tables` for getting tables like sqlite3.","changedFiles":2,"closed":true,"closedAt":"2020-09-12T19:53:18Z","comments":{"totalCount":3},"commits":{"totalCount":2},"createdAt":"2020-08-22T03:57:58Z","createdViaEmail":false,"databaseId":471931707,"deletions":2,"editor":null,"headRefName":"feature/create-meta-command-dot-tables","headRefOid":"52e34342904f5507e7b7529b131bfee67e6505fe","headRepository":{"nameWithOwner":"rugamaga/askgit"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":42,"participants":{"totalCount":2},"publishedAt":"2020-08-22T03:57:58Z","reviewDecision":null,"state":"CLOSED","title":"Create + what it is?\r\n\r\nCreating meta command `.tables` for getting tables like sqlite3.","changedFiles":2,"closed":true,"closedAt":"2020-09-12T19:53:18Z","comments":{"totalCount":3},"commits":{"totalCount":2},"createdAt":"2020-08-22T03:57:58Z","createdViaEmail":false,"databaseId":471931707,"deletions":2,"editor":null,"headRefName":"feature/create-meta-command-dot-tables","headRefOid":"52e34342904f5507e7b7529b131bfee67e6505fe","headRepository":{"nameWithOwner":"rugamaga/askgit"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":42,"participants":{"totalCount":2},"publishedAt":"2020-08-22T03:57:58Z","reviewDecision":null,"state":"CLOSED","title":"Create meta command `.tables`","updatedAt":"2020-09-12T19:54:13Z","url":"https://github.com/mergestat/mergestat/pull/42"},{"activeLockReason":null,"additions":43,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"00529104adee5c53d43f329028319b5f877d4472","baseRefName":"GUI-in-terminal","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Some - changes to the `GUI-in-terminal` PR","changedFiles":10,"closed":true,"closedAt":"2020-08-24T21:18:50Z","comments":{"totalCount":1},"commits":{"totalCount":7},"createdAt":"2020-08-24T01:03:07Z","createdViaEmail":false,"databaseId":472205826,"deletions":110,"editor":null,"headRefName":"interactive-mode-fixes","headRefOid":"1af231770d11797b8401621b0f343ad356eb74d0","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-24T21:18:50Z","mergedBy":{"login":"patrickdevivo"},"number":43,"participants":{"totalCount":2},"publishedAt":"2020-08-24T01:03:07Z","reviewDecision":"APPROVED","state":"MERGED","title":"Interactive + changes to the `GUI-in-terminal` PR","changedFiles":10,"closed":true,"closedAt":"2020-08-24T21:18:50Z","comments":{"totalCount":1},"commits":{"totalCount":7},"createdAt":"2020-08-24T01:03:07Z","createdViaEmail":false,"databaseId":472205826,"deletions":110,"editor":null,"headRefName":"interactive-mode-fixes","headRefOid":"1af231770d11797b8401621b0f343ad356eb74d0","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-24T21:18:50Z","mergedBy":{"login":"patrickdevivo"},"number":43,"participants":{"totalCount":2},"publishedAt":"2020-08-24T01:03:07Z","reviewDecision":"APPROVED","state":"MERGED","title":"Interactive mode fixes","updatedAt":"2020-08-24T21:18:55Z","url":"https://github.com/mergestat/mergestat/pull/43"},{"activeLockReason":null,"additions":23,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"e2bd66d30b5f5a28506f3205c50682aaf8acff06","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"The - fix to the sqlite3 driver dependency should fix some cross-compilation issues","changedFiles":3,"closed":true,"closedAt":"2020-08-29T23:22:34Z","comments":{"totalCount":1},"commits":{"totalCount":4},"createdAt":"2020-08-29T15:24:15Z","createdViaEmail":false,"databaseId":475790768,"deletions":12,"editor":null,"headRefName":"add-xgo","headRefOid":"c79a56e364d86e0ed73ef3caa5f16a843cdf70d8","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-29T23:22:34Z","mergedBy":{"login":"patrickdevivo"},"number":44,"participants":{"totalCount":1},"publishedAt":"2020-08-29T15:24:15Z","reviewDecision":null,"state":"MERGED","title":"Upgrades + fix to the sqlite3 driver dependency should fix some cross-compilation issues","changedFiles":3,"closed":true,"closedAt":"2020-08-29T23:22:34Z","comments":{"totalCount":1},"commits":{"totalCount":4},"createdAt":"2020-08-29T15:24:15Z","createdViaEmail":false,"databaseId":475790768,"deletions":12,"editor":null,"headRefName":"add-xgo","headRefOid":"c79a56e364d86e0ed73ef3caa5f16a843cdf70d8","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-29T23:22:34Z","mergedBy":{"login":"patrickdevivo"},"number":44,"participants":{"totalCount":1},"publishedAt":"2020-08-29T15:24:15Z","reviewDecision":null,"state":"MERGED","title":"Upgrades some dependencies and adds xgo step to Makefile","updatedAt":"2020-08-29T23:22:38Z","url":"https://github.com/mergestat/mergestat/pull/44"},{"activeLockReason":null,"additions":17,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick - DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"c1964b939626eee32033c26f968f8241b3d3155d","baseRefName":"GUI-in-terminal","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-08-29T16:03:10Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-08-29T15:35:11Z","createdViaEmail":false,"databaseId":475792037,"deletions":25,"editor":null,"headRefName":"aggregate-queries","headRefOid":"ca41acddee07f4202862e9eed26b2f724eba53a4","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-29T16:03:10Z","mergedBy":{"login":"patrickdevivo"},"number":45,"participants":{"totalCount":1},"publishedAt":"2020-08-29T15:35:11Z","reviewDecision":null,"state":"MERGED","title":"Some + DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"c1964b939626eee32033c26f968f8241b3d3155d","baseRefName":"GUI-in-terminal","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":1,"closed":true,"closedAt":"2020-08-29T16:03:10Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-08-29T15:35:11Z","createdViaEmail":false,"databaseId":475792037,"deletions":25,"editor":null,"headRefName":"aggregate-queries","headRefOid":"ca41acddee07f4202862e9eed26b2f724eba53a4","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-29T16:03:10Z","mergedBy":{"login":"patrickdevivo"},"number":45,"participants":{"totalCount":1},"publishedAt":"2020-08-29T15:35:11Z","reviewDecision":null,"state":"MERGED","title":"Some simplification to the terminal UI helpers","updatedAt":"2020-08-29T16:03:13Z","url":"https://github.com/mergestat/mergestat/pull/45"},{"activeLockReason":null,"additions":2,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"351758c9dafdbfa9ab83febfe693f62e6462c277","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Should - (hopefully) address performance issue raised in #46","changedFiles":1,"closed":true,"closedAt":"2020-08-30T16:30:38Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-08-30T16:28:36Z","createdViaEmail":false,"databaseId":475932904,"deletions":1,"editor":{"login":"patrickdevivo"},"headRefName":"git-docker","headRefOid":"b85f292386034f131b21933589ae8271d735fd03","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":"2020-08-30T16:28:52Z","locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-30T16:30:38Z","mergedBy":{"login":"patrickdevivo"},"number":47,"participants":{"totalCount":1},"publishedAt":"2020-08-30T16:28:36Z","reviewDecision":null,"state":"MERGED","title":"include + (hopefully) address performance issue raised in #46","changedFiles":1,"closed":true,"closedAt":"2020-08-30T16:30:38Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-08-30T16:28:36Z","createdViaEmail":false,"databaseId":475932904,"deletions":1,"editor":{"login":"patrickdevivo"},"headRefName":"git-docker","headRefOid":"b85f292386034f131b21933589ae8271d735fd03","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":"2020-08-30T16:28:52Z","locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-08-30T16:30:38Z","mergedBy":{"login":"patrickdevivo"},"number":47,"participants":{"totalCount":1},"publishedAt":"2020-08-30T16:28:36Z","reviewDecision":null,"state":"MERGED","title":"include git cli in docker image","updatedAt":"2020-08-30T16:30:40Z","url":"https://github.com/mergestat/mergestat/pull/47"},{"activeLockReason":null,"additions":9,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"cfb3c1c13cadf20bed83129a0078f5071c111bd6","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Resolves - #41 ","changedFiles":1,"closed":true,"closedAt":"2020-09-02T02:51:45Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-08-30T19:56:09Z","createdViaEmail":false,"databaseId":475955823,"deletions":9,"editor":null,"headRefName":"special-character-fix","headRefOid":"b73b80467b04f6a016520adaa550f36d2901e6d7","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-02T02:51:44Z","mergedBy":{"login":"Vialeon"},"number":48,"participants":{"totalCount":2},"publishedAt":"2020-08-30T19:56:09Z","reviewDecision":"APPROVED","state":"MERGED","title":"possible + #41 ","changedFiles":1,"closed":true,"closedAt":"2020-09-02T02:51:45Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-08-30T19:56:09Z","createdViaEmail":false,"databaseId":475955823,"deletions":9,"editor":null,"headRefName":"special-character-fix","headRefOid":"b73b80467b04f6a016520adaa550f36d2901e6d7","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-02T02:51:44Z","mergedBy":{"login":"Vialeon"},"number":48,"participants":{"totalCount":2},"publishedAt":"2020-08-30T19:56:09Z","reviewDecision":"APPROVED","state":"MERGED","title":"possible fix for special characters","updatedAt":"2021-07-20T23:43:10Z","url":"https://github.com/mergestat/mergestat/pull/48"},{"activeLockReason":null,"additions":10,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"e0086c14a35e88af8f0ee06e789a33aa23e80e71","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"As - the title says, closes #10","changedFiles":2,"closed":true,"closedAt":"2020-09-03T02:08:40Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-09-03T02:05:12Z","createdViaEmail":false,"databaseId":478294077,"deletions":1,"editor":{"login":"patrickdevivo"},"headRefName":"update-xbuild","headRefOid":"e13700fcfb38bb69c39e14c749a2060f70b15e87","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":"2020-09-03T02:08:34Z","locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-03T02:08:40Z","mergedBy":{"login":"patrickdevivo"},"number":50,"participants":{"totalCount":1},"publishedAt":"2020-09-03T02:05:12Z","reviewDecision":null,"state":"MERGED","title":"Update + the title says, closes #10","changedFiles":2,"closed":true,"closedAt":"2020-09-03T02:08:40Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-09-03T02:05:12Z","createdViaEmail":false,"databaseId":478294077,"deletions":1,"editor":{"login":"patrickdevivo"},"headRefName":"update-xbuild","headRefOid":"e13700fcfb38bb69c39e14c749a2060f70b15e87","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":"2020-09-03T02:08:34Z","locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-03T02:08:40Z","mergedBy":{"login":"patrickdevivo"},"number":50,"participants":{"totalCount":1},"publishedAt":"2020-09-03T02:05:12Z","reviewDecision":null,"state":"MERGED","title":"Update xbuild step and add brew installation instructions","updatedAt":"2020-09-03T02:08:44Z","url":"https://github.com/mergestat/mergestat/pull/50"},{"activeLockReason":null,"additions":1041,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"56e3d1a2d9586835abd605badf099bb9808ef22e","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Seeing some initial performance improvements. Since we''re using CGO for sqlite anyways, - might as well try with libgit2","changedFiles":26,"closed":true,"closedAt":"2020-09-12T00:47:37Z","comments":{"totalCount":1},"commits":{"totalCount":33},"createdAt":"2020-09-06T18:38:47Z","createdViaEmail":false,"databaseId":480853859,"deletions":1020,"editor":{"login":"patrickdevivo"},"headRefName":"git2go","headRefOid":"0e6f194d4c19611cac418174dadde336852790bd","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":"2020-09-11T00:20:09Z","locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-12T00:47:37Z","mergedBy":{"login":"patrickdevivo"},"number":51,"participants":{"totalCount":2},"publishedAt":"2020-09-06T18:38:47Z","reviewDecision":null,"state":"MERGED","title":"Use + might as well try with libgit2","changedFiles":26,"closed":true,"closedAt":"2020-09-12T00:47:37Z","comments":{"totalCount":1},"commits":{"totalCount":33},"createdAt":"2020-09-06T18:38:47Z","createdViaEmail":false,"databaseId":480853859,"deletions":1020,"editor":{"login":"patrickdevivo"},"headRefName":"git2go","headRefOid":"0e6f194d4c19611cac418174dadde336852790bd","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":"2020-09-11T00:20:09Z","locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-12T00:47:37Z","mergedBy":{"login":"patrickdevivo"},"number":51,"participants":{"totalCount":2},"publishedAt":"2020-09-06T18:38:47Z","reviewDecision":null,"state":"MERGED","title":"Use libgit2 via git2go instead of go-git","updatedAt":"2020-09-12T00:47:45Z","url":"https://github.com/mergestat/mergestat/pull/51"},{"activeLockReason":null,"additions":30,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"54369027a59a77d3def127104a07471b550f8c5d","baseRefName":"add-names-of-changed-files-to-git_log-table","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":6,"closed":true,"closedAt":"2020-09-07T15:31:15Z","comments":{"totalCount":1},"commits":{"totalCount":4},"createdAt":"2020-09-06T23:20:11Z","createdViaEmail":false,"databaseId":480927892,"deletions":36,"editor":null,"headRefName":"allow-use-of-preconfigured-queries","headRefOid":"fdf67538b332034a40487ddde6abe2d353ad3c75","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":52,"participants":{"totalCount":2},"publishedAt":"2020-09-06T23:20:11Z","reviewDecision":"CHANGES_REQUESTED","state":"CLOSED","title":"Allow + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"54369027a59a77d3def127104a07471b550f8c5d","baseRefName":"add-names-of-changed-files-to-git_log-table","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":6,"closed":true,"closedAt":"2020-09-07T15:31:15Z","comments":{"totalCount":1},"commits":{"totalCount":4},"createdAt":"2020-09-06T23:20:11Z","createdViaEmail":false,"databaseId":480927892,"deletions":36,"editor":null,"headRefName":"allow-use-of-preconfigured-queries","headRefOid":"fdf67538b332034a40487ddde6abe2d353ad3c75","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":52,"participants":{"totalCount":2},"publishedAt":"2020-09-06T23:20:11Z","reviewDecision":"CHANGES_REQUESTED","state":"CLOSED","title":"Allow use of queries in config outside of cui","updatedAt":"2020-09-07T15:31:22Z","url":"https://github.com/mergestat/mergestat/pull/52"},{"activeLockReason":null,"additions":2,"author":{"login":"jesuswasrasta","avatarUrl":"https://avatars.githubusercontent.com/u/1121984?v=4","name":"Ferdinando Santacroce"},"authorAssociation":"CONTRIBUTOR","baseRefOid":"87611906b5f4e62986c618cffc028986cbcfa731","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"When using only the image name in docker command, it fails with a `Unable to find image ''askgit:latest'' locally`\r\n\r\nAdding the owner to the docker image - (as `augmentable/askgit`) solves the issue.","changedFiles":1,"closed":true,"closedAt":"2020-09-07T15:23:49Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-09-07T07:39:35Z","createdViaEmail":false,"databaseId":481143874,"deletions":2,"editor":null,"headRefName":"docker-commands","headRefOid":"07189da0ede23fdbc4fa86b9935c0907a9ea1226","headRepository":{"nameWithOwner":"jesuswasrasta/askgit"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-07T15:23:49Z","mergedBy":{"login":"patrickdevivo"},"number":53,"participants":{"totalCount":2},"publishedAt":"2020-09-07T07:39:35Z","reviewDecision":"APPROVED","state":"MERGED","title":"When + (as `augmentable/askgit`) solves the issue.","changedFiles":1,"closed":true,"closedAt":"2020-09-07T15:23:49Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-09-07T07:39:35Z","createdViaEmail":false,"databaseId":481143874,"deletions":2,"editor":null,"headRefName":"docker-commands","headRefOid":"07189da0ede23fdbc4fa86b9935c0907a9ea1226","headRepository":{"nameWithOwner":"jesuswasrasta/askgit"},"isCrossRepository":true,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-07T15:23:49Z","mergedBy":{"login":"patrickdevivo"},"number":53,"participants":{"totalCount":2},"publishedAt":"2020-09-07T07:39:35Z","reviewDecision":"APPROVED","state":"MERGED","title":"When using only the image name in docker command, it fails","updatedAt":"2020-09-07T15:23:49Z","url":"https://github.com/mergestat/mergestat/pull/53"},{"activeLockReason":null,"additions":31,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick - Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"56e3d1a2d9586835abd605badf099bb9808ef22e","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":5,"closed":true,"closedAt":"2020-09-12T18:38:23Z","comments":{"totalCount":2},"commits":{"totalCount":7},"createdAt":"2020-09-07T15:30:49Z","createdViaEmail":false,"databaseId":481488945,"deletions":36,"editor":null,"headRefName":"preconfigured-queries","headRefOid":"c0e4248ddee22197d405d18ea686697df7eec2ab","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":54,"participants":{"totalCount":2},"publishedAt":"2020-09-07T15:30:49Z","reviewDecision":"CHANGES_REQUESTED","state":"CLOSED","title":"Preconfigured + Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"56e3d1a2d9586835abd605badf099bb9808ef22e","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":5,"closed":true,"closedAt":"2020-09-12T18:38:23Z","comments":{"totalCount":2},"commits":{"totalCount":7},"createdAt":"2020-09-07T15:30:49Z","createdViaEmail":false,"databaseId":481488945,"deletions":36,"editor":null,"headRefName":"preconfigured-queries","headRefOid":"c0e4248ddee22197d405d18ea686697df7eec2ab","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":54,"participants":{"totalCount":2},"publishedAt":"2020-09-07T15:30:49Z","reviewDecision":"CHANGES_REQUESTED","state":"CLOSED","title":"Preconfigured queries","updatedAt":"2020-09-12T18:38:28Z","url":"https://github.com/mergestat/mergestat/pull/54"},{"activeLockReason":null,"additions":263,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"326af7868b453e63046a82b817351838a10865ea","baseRefName":"git2go","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"For - commits by id and files by commit_ids","changedFiles":5,"closed":true,"closedAt":"2020-09-11T21:32:00Z","comments":{"totalCount":1},"commits":{"totalCount":5},"createdAt":"2020-09-11T01:57:02Z","createdViaEmail":false,"databaseId":484534311,"deletions":63,"editor":null,"headRefName":"commit-id-index","headRefOid":"d8d6acca24857112c9ef64302ebf70d926ddff68","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-11T21:32:00Z","mergedBy":{"login":"patrickdevivo"},"number":55,"participants":{"totalCount":1},"publishedAt":"2020-09-11T01:57:02Z","reviewDecision":null,"state":"MERGED","title":"Starts + commits by id and files by commit_ids","changedFiles":5,"closed":true,"closedAt":"2020-09-11T21:32:00Z","comments":{"totalCount":1},"commits":{"totalCount":5},"createdAt":"2020-09-11T01:57:02Z","createdViaEmail":false,"databaseId":484534311,"deletions":63,"editor":null,"headRefName":"commit-id-index","headRefOid":"d8d6acca24857112c9ef64302ebf70d926ddff68","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-11T21:32:00Z","mergedBy":{"login":"patrickdevivo"},"number":55,"participants":{"totalCount":1},"publishedAt":"2020-09-11T01:57:02Z","reviewDecision":null,"state":"MERGED","title":"Starts some \"index\" implementations","updatedAt":"2020-09-11T21:32:05Z","url":"https://github.com/mergestat/mergestat/pull/55"},{"activeLockReason":null,"additions":30,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"0e01a11409d08a44e6fc4cac48302a1fc9780525","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Rebased - and slightly updated version of #54 ","changedFiles":5,"closed":true,"closedAt":"2020-09-12T18:38:02Z","comments":{"totalCount":1},"commits":{"totalCount":12},"createdAt":"2020-09-12T01:20:56Z","createdViaEmail":false,"databaseId":485627712,"deletions":39,"editor":null,"headRefName":"preconfigured-queries-updates","headRefOid":"5e477fe840a400fdfbc668b6367cb60a644f68b7","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-12T18:38:01Z","mergedBy":{"login":"patrickdevivo"},"number":56,"participants":{"totalCount":2},"publishedAt":"2020-09-12T01:20:56Z","reviewDecision":"APPROVED","state":"MERGED","title":"Preconfigured + and slightly updated version of #54 ","changedFiles":5,"closed":true,"closedAt":"2020-09-12T18:38:02Z","comments":{"totalCount":1},"commits":{"totalCount":12},"createdAt":"2020-09-12T01:20:56Z","createdViaEmail":false,"databaseId":485627712,"deletions":39,"editor":null,"headRefName":"preconfigured-queries-updates","headRefOid":"5e477fe840a400fdfbc668b6367cb60a644f68b7","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-12T18:38:01Z","mergedBy":{"login":"patrickdevivo"},"number":56,"participants":{"totalCount":2},"publishedAt":"2020-09-12T01:20:56Z","reviewDecision":"APPROVED","state":"MERGED","title":"Preconfigured queries updates","updatedAt":"2020-09-12T18:38:04Z","url":"https://github.com/mergestat/mergestat/pull/56"},{"activeLockReason":null,"additions":14,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick - DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"3ac7a945170b40b3484062de2118d44f9db22e6c","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":3,"closed":true,"closedAt":"2020-09-12T19:45:01Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-09-12T19:41:17Z","createdViaEmail":false,"databaseId":486004338,"deletions":9,"editor":null,"headRefName":"libgit2-docker","headRefOid":"a925f9413d136c42eab38e8ac352ee891081bc0e","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-12T19:45:01Z","mergedBy":{"login":"patrickdevivo"},"number":57,"participants":{"totalCount":1},"publishedAt":"2020-09-12T19:41:17Z","reviewDecision":null,"state":"MERGED","title":"fix + DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"3ac7a945170b40b3484062de2118d44f9db22e6c","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"","changedFiles":3,"closed":true,"closedAt":"2020-09-12T19:45:01Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-09-12T19:41:17Z","createdViaEmail":false,"databaseId":486004338,"deletions":9,"editor":null,"headRefName":"libgit2-docker","headRefOid":"a925f9413d136c42eab38e8ac352ee891081bc0e","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-12T19:45:01Z","mergedBy":{"login":"patrickdevivo"},"number":57,"participants":{"totalCount":1},"publishedAt":"2020-09-12T19:41:17Z","reviewDecision":null,"state":"MERGED","title":"fix up the Dockerfile to support the recent libgit2 use","updatedAt":"2020-09-12T19:45:05Z","url":"https://github.com/mergestat/mergestat/pull/57"},{"activeLockReason":null,"additions":16,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"5908c32175af472649722ecf40aa72f41e4faee8","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Addresses #42 but in a different way, building off the \"preset queries\" functionality - currently available. This will be further documented/improved in coming PRs","changedFiles":1,"closed":true,"closedAt":"2020-09-12T19:52:09Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-09-12T19:49:22Z","createdViaEmail":false,"databaseId":486006199,"deletions":9,"editor":null,"headRefName":"add-tables-preset","headRefOid":"695eef225d05a2ff2ecfcbc54d30b8b98240ca40","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-12T19:52:09Z","mergedBy":{"login":"patrickdevivo"},"number":58,"participants":{"totalCount":1},"publishedAt":"2020-09-12T19:49:22Z","reviewDecision":null,"state":"MERGED","title":"adds + currently available. This will be further documented/improved in coming PRs","changedFiles":1,"closed":true,"closedAt":"2020-09-12T19:52:09Z","comments":{"totalCount":1},"commits":{"totalCount":1},"createdAt":"2020-09-12T19:49:22Z","createdViaEmail":false,"databaseId":486006199,"deletions":9,"editor":null,"headRefName":"add-tables-preset","headRefOid":"695eef225d05a2ff2ecfcbc54d30b8b98240ca40","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-09-12T19:52:09Z","mergedBy":{"login":"patrickdevivo"},"number":58,"participants":{"totalCount":1},"publishedAt":"2020-09-12T19:49:22Z","reviewDecision":null,"state":"MERGED","title":"adds a preset query called \"tables\" that lists available tables","updatedAt":"2020-09-12T19:52:13Z","url":"https://github.com/mergestat/mergestat/pull/58"},{"activeLockReason":null,"additions":47,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"680c28f0c5e8d1befa33907a24be256874fb31c8","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Create - callback authentication for libgit2","changedFiles":2,"closed":true,"closedAt":"2020-10-09T15:55:33Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-09-21T17:45:31Z","createdViaEmail":false,"databaseId":490459702,"deletions":5,"editor":null,"headRefName":"fix_remote_cloning","headRefOid":"79a19ceeef0d9ca63e01db125e538cfec870360a","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":59,"participants":{"totalCount":2},"publishedAt":"2020-09-21T17:45:31Z","reviewDecision":null,"state":"CLOSED","title":"fix + callback authentication for libgit2","changedFiles":2,"closed":true,"closedAt":"2020-10-09T15:55:33Z","comments":{"totalCount":1},"commits":{"totalCount":3},"createdAt":"2020-09-21T17:45:31Z","createdViaEmail":false,"databaseId":490459702,"deletions":5,"editor":null,"headRefName":"fix_remote_cloning","headRefOid":"79a19ceeef0d9ca63e01db125e538cfec870360a","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":59,"participants":{"totalCount":2},"publishedAt":"2020-09-21T17:45:31Z","reviewDecision":null,"state":"CLOSED","title":"fix remote cloning","updatedAt":"2021-07-20T23:43:12Z","url":"https://github.com/mergestat/mergestat/pull/59"},{"activeLockReason":null,"additions":263,"author":{"login":"Vialeon","avatarUrl":"https://avatars.githubusercontent.com/u/53903050?v=4","name":"Derrick Newberry"},"authorAssociation":"COLLABORATOR","baseRefOid":"680c28f0c5e8d1befa33907a24be256874fb31c8","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"git-diff table. Need to find a way to only iterate on each file once instead of going - from commit to commit.","changedFiles":3,"closed":true,"closedAt":"2020-11-16T22:44:08Z","comments":{"totalCount":1},"commits":{"totalCount":6},"createdAt":"2020-09-29T13:20:59Z","createdViaEmail":false,"databaseId":494826259,"deletions":0,"editor":null,"headRefName":"git_diff_table","headRefOid":"6f8f30da44d62e14dab4418d7b5ceedf438a033f","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":60,"participants":{"totalCount":2},"publishedAt":"2020-09-29T13:20:59Z","reviewDecision":null,"state":"CLOSED","title":"basic + from commit to commit.","changedFiles":3,"closed":true,"closedAt":"2020-11-16T22:44:08Z","comments":{"totalCount":1},"commits":{"totalCount":6},"createdAt":"2020-09-29T13:20:59Z","createdViaEmail":false,"databaseId":494826259,"deletions":0,"editor":null,"headRefName":"git_diff_table","headRefOid":"6f8f30da44d62e14dab4418d7b5ceedf438a033f","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":true,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":false,"mergedAt":null,"mergedBy":null,"number":60,"participants":{"totalCount":2},"publishedAt":"2020-09-29T13:20:59Z","reviewDecision":null,"state":"CLOSED","title":"basic git-diff table","updatedAt":"2020-11-16T22:44:12Z","url":"https://github.com/mergestat/mergestat/pull/60"},{"activeLockReason":null,"additions":61,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"680c28f0c5e8d1befa33907a24be256874fb31c8","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"I''ve had difficulty splitting strings using the built-in sqlite str functions, this is a helper to make splitting strings in queries more succinct. The use case I have in mind, is when dealing with semver tag names such as `v1.2.3`, this makes it a little easier to pull out the components of a semver string (and - therefore sort on it)","changedFiles":2,"closed":true,"closedAt":"2020-10-08T17:18:57Z","comments":{"totalCount":1},"commits":{"totalCount":2},"createdAt":"2020-10-08T15:42:55Z","createdViaEmail":false,"databaseId":500018191,"deletions":0,"editor":null,"headRefName":"helper-func","headRefOid":"bbf488bd1809a26b80cb3ce278c06bfc1a1b1959","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-10-08T17:18:57Z","mergedBy":{"login":"patrickdevivo"},"number":61,"participants":{"totalCount":1},"publishedAt":"2020-10-08T15:42:55Z","reviewDecision":null,"state":"MERGED","title":"loads + therefore sort on it)","changedFiles":2,"closed":true,"closedAt":"2020-10-08T17:18:57Z","comments":{"totalCount":1},"commits":{"totalCount":2},"createdAt":"2020-10-08T15:42:55Z","createdViaEmail":false,"databaseId":500018191,"deletions":0,"editor":null,"headRefName":"helper-func","headRefOid":"bbf488bd1809a26b80cb3ce278c06bfc1a1b1959","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":null,"locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-10-08T17:18:57Z","mergedBy":{"login":"patrickdevivo"},"number":61,"participants":{"totalCount":1},"publishedAt":"2020-10-08T15:42:55Z","reviewDecision":null,"state":"MERGED","title":"loads a helper function for splitting strings","updatedAt":"2020-10-08T17:19:00Z","url":"https://github.com/mergestat/mergestat/pull/61"},{"activeLockReason":null,"additions":32,"author":{"login":"patrickdevivo","avatarUrl":"https://avatars.githubusercontent.com/u/57259?u=9f229083d0db9f54add2b0db0bea1d726d6640cd&v=4","name":"Patrick DeVivo"},"authorAssociation":"MEMBER","baseRefOid":"9224cc4f472beefef9cf427e60b48081c00cbc7a","baseRefName":"master","baseRepository":{"nameWithOwner":"mergestat/mergestat"},"body":"Use - the user''s default ssh key when cloning via SSH. Should close #59 ","changedFiles":3,"closed":true,"closedAt":"2020-10-09T15:55:33Z","comments":{"totalCount":1},"commits":{"totalCount":7},"createdAt":"2020-10-09T15:14:56Z","createdViaEmail":false,"databaseId":500658846,"deletions":13,"editor":{"login":"patrickdevivo"},"headRefName":"ssh-cloning","headRefOid":"15316e6b0912a83a6bbc1d6558adc9510ed53be5","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0},"lastEditedAt":"2020-10-09T15:52:58Z","locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-10-09T15:55:33Z","mergedBy":{"login":"patrickdevivo"},"number":62,"participants":{"totalCount":2},"publishedAt":"2020-10-09T15:14:56Z","reviewDecision":null,"state":"MERGED","title":"SSH + the user''s default ssh key when cloning via SSH. Should close #59 ","changedFiles":3,"closed":true,"closedAt":"2020-10-09T15:55:33Z","comments":{"totalCount":1},"commits":{"totalCount":7},"createdAt":"2020-10-09T15:14:56Z","createdViaEmail":false,"databaseId":500658846,"deletions":13,"editor":{"login":"patrickdevivo"},"headRefName":"ssh-cloning","headRefOid":"15316e6b0912a83a6bbc1d6558adc9510ed53be5","headRepository":{"nameWithOwner":"mergestat/mergestat"},"isCrossRepository":false,"isDraft":false,"labels":{"totalCount":0,"nodes":[]},"lastEditedAt":"2020-10-09T15:52:58Z","locked":false,"maintainerCanModify":false,"mergeable":"CONFLICTING","merged":true,"mergedAt":"2020-10-09T15:55:33Z","mergedBy":{"login":"patrickdevivo"},"number":62,"participants":{"totalCount":2},"publishedAt":"2020-10-09T15:14:56Z","reviewDecision":null,"state":"MERGED","title":"SSH cloning","updatedAt":"2020-10-09T15:55:37Z","url":"https://github.com/mergestat/mergestat/pull/62"}],"pageInfo":{"endCursor":"Y3Vyc29yOnYyOpHOHddyng==","hasNextPage":true}}}}}' headers: Access-Control-Allow-Origin: @@ -236,7 +236,7 @@ interactions: Content-Type: - application/json; charset=utf-8 Date: - - Mon, 21 Mar 2022 15:56:50 GMT + - Mon, 20 Jun 2022 20:50:52 GMT Referrer-Policy: - origin-when-cross-origin, strict-origin-when-cross-origin Server: @@ -254,21 +254,21 @@ interactions: X-Github-Media-Type: - github.v4; format=json X-Github-Request-Id: - - DB7A:28F9:BE4F67:1B33A3B:6238A03F + - F83B:06A8:1A61920:508391A:62B0DDA7 X-Oauth-Scopes: - read:org, repo, user X-Ratelimit-Limit: - "5000" X-Ratelimit-Remaining: - - "3689" + - "4993" X-Ratelimit-Reset: - - "1647880495" + - "1655759957" X-Ratelimit-Resource: - graphql X-Ratelimit-Used: - - "1311" + - "7" X-Xss-Protection: - "0" status: 200 OK code: 200 - duration: 3.537779252s + duration: 4.646857925s diff --git a/extensions/internal/github/repo_prs.go b/extensions/internal/github/repo_prs.go index 48b7835b..db531bd8 100644 --- a/extensions/internal/github/repo_prs.go +++ b/extensions/internal/github/repo_prs.go @@ -2,6 +2,7 @@ package github import ( "context" + "encoding/json" "io" "time" @@ -54,7 +55,10 @@ type pullRequest struct { IsDraft bool Labels struct { TotalCount int - } + Nodes []struct { + Name string + } + } `graphql:"labels(first: 15)"` LastEditedAt githubv4.DateTime Locked bool MaintainerCanModify bool @@ -205,6 +209,18 @@ func (i *iterPRs) Column(ctx vtab.Context, c int) error { ctx.ResultInt(t1f0(current.IsDraft)) case "label_count": ctx.ResultInt(current.Labels.TotalCount) + case "labels": + labels := make([]string, len(current.Labels.Nodes)) + for l, label := range current.Labels.Nodes { + labels[l] = label.Name + } + js, err := json.Marshal(labels) + if err != nil { + i.logger().Err(err).Msgf("could not marshal PR labels") + ctx.ResultNull() + } else { + ctx.ResultText(string(js)) + } case "last_edited_at": t := current.LastEditedAt if t.IsZero() { @@ -335,6 +351,7 @@ var prCols = []vtab.Column{ {Name: "head_repository_name", Type: "TEXT"}, {Name: "is_draft", Type: "BOOLEAN"}, {Name: "label_count", Type: "INT"}, + {Name: "labels", Type: "JSON"}, {Name: "last_edited_at", Type: "DATETIME"}, {Name: "locked", Type: "BOOLEAN"}, {Name: "maintainer_can_modify", Type: "BOOLEAN"}, diff --git a/extensions/internal/github/repo_prs_test.go b/extensions/internal/github/repo_prs_test.go index 03a3d852..779af827 100644 --- a/extensions/internal/github/repo_prs_test.go +++ b/extensions/internal/github/repo_prs_test.go @@ -23,8 +23,8 @@ func TestRepoPRs(t *testing.T) { t.Fatalf("failed to retrieve row contents: %v", err.Error()) } - if colCount != 39 { - t.Fatalf("expected 39 columns, got: %d", colCount) + if colCount != 40 { + t.Fatalf("expected 40 columns, got: %d", colCount) } if len(content) != 10 {