Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/sourcecred/odyssey-hackathon
Repo for working on our Odyssey Hackathon project
https://github.com/sourcecred/odyssey-hackathon
Test plan: Try clicking on the buttons and see that they toggle between
plus and minus. They don...
Test plan: Behavior is unchanged; manually verify.
Paired with @wchargin
0dae0c995fe0b79778512f2226e69422b2a0f6da authored over 6 years ago by Dandelion Mané <[email protected]>`PagerankTable` is forked from `ContributionList`.
Test plan: I took it for a spin and it see...
7fc31f6a262b4435bc5512fafe7bdaf1d4d0e76f authored over 6 years ago by Dandelion Mané <[email protected]>
Test Plan:
Load the cred explorer for the first time to see two empty boxes.
Refresh to see th...
`nodeDescription` gives a short, readable description of the content at
a given node.
Test p...
ed1f17f8ca7be1e0146440ebb2b3c5c14c5079b3 authored over 6 years ago by Dandelion Mané <[email protected]>
Test Plan:
Unit tests added, with full coverage of reachable cases.
wchargin-branch: git-render
d21ad1312b6c6ba1252d29c892b85347f37f88d3 authored over 6 years ago by William Chargin <[email protected]>
This re-organizes the GitHub porcelain tests to be:
- organized by each method signature, rathe...
Summary:
This fixes two problems in the previous version:
- A new JS file not checked into g...
Summary:
Even though it’s not really a source file, and it lives at the
repository root, it mi...
Test plan: Unit tests were added.
(Note: I haven't tested the error case, when there are an inv...
Also updates the GitHub porcelain.
Existing observable behavior is unchanged, except that perfo...
I think the absence of this method when I added the `Repository` class
was a bug.
Test plan:...
9d24190c03ffc566aa95739b14ae7ebed3538215 authored over 6 years ago by Dandelion Mané <[email protected]>
Currently, the `authors` method is attached at the Repository level.
This is incorrect; it actu...
Summary:
We don’t expect the results to be of good quality right now. Rather,
this gives us a ...
Summary:
This commit enables the cred explorer to fetch pre-generated graphs. The
form has poo...
6ca4f77b6d078cc8436c1f9cac7e4753e1586a63 authored over 6 years ago by Dandelion Mané <[email protected]>
Summary:
This commit changes `yarn start` to run a production version of the API
server, which...
Test plan: Run `yarn start`, and observe that the Cred Explorer is now
included in the nav bar,...
testUtil contains some useful configuration endpoints for our frontend
testing. This commit mov...
@wchargin suggested that the entity-wrapping logic in porcelain
reference handling should be fa...
Summary:
This way, our frontend can talk to a backend that can read from the
filesystem (among...
62b9f70d00092510b05c5f32977a3c83b1ec31d1 authored over 6 years ago by Dandelion Mané <[email protected]>
It was doing some clever array construction that added possible booleans
to the array, then fil...
Summary:
- The value of `process.stdout.isTTY` is either `true` or `undefined`.
Flow (re...
- scripts/backend.js: We incorrectly set an environment variable to
a boolean, when in fact it ...
Fixing the flow error corresponded to (correctly) documenting that the
GitHub token is mandator...
They were already correct from a typing perspective, so no other changes
needed.
- Fix accidental string-to-NaN coercion in ensureSlash
- Don't dynamically require package.json...
Summary:
This way, different plugins can have `LocalStore`s with different cache
keys.
Test...
7d9a98128d6fe83188bf37b4af3f0afa6522a980 authored over 6 years ago by William Chargin <[email protected]>Test plan: `yarn travis` passes
c2fb88b11aceb9effed2b7d8e85f109495d2edbc authored over 6 years ago by Dandelion Mané <[email protected]>
This commit adds src/app/App.js, which proxies in the frontend from
src/plugins/artifact/editor/...
This commit modifies App.js to use routing, such that it's possible to
navigate between a home s...
This commit adds a npm and flow-typed dependency, with no functional
change.
Test plan: `yarn t...
0149d74971dae0f791b0b8761641f88333a79f61 authored over 6 years ago by Dandelion Mané <[email protected]>
This commit executes a micro-refactor to move all top-level app setup
code out of src/plugins/ar...
Summary:
We need a way for our web applications to interact with data on the
filesystem. In th...
wchargin-branch: express
18ddbfff3e83672b24fd2127471e3d618f6bf5a2 authored over 6 years ago by William Chargin <[email protected]>
This script ensures that either //@flow or //@no-flow is present in
every js file. Every existi...
I also added a module-level docstring for the porcelain.
ed1adc7b37427e73f5ba5d62fd3cff458f656824 authored over 6 years ago by Dandelion Mané <[email protected]>
Now that we have repository nodes (#171), it makes sense that the Github
porcelain should provi...
This commit creates a new node type in the GitHub graph: the REPOSITORY
node. The REPOSITORY no...
When a GitHub user delete their account, all of their comments remain,
but with a `null` author...
Summary:
This solves two problems:
1. The “output directory” argument to `sourcecred graph`...
0cae9d742d9ad3e3818bbbfd59473ea425191e6d authored over 6 years ago by William Chargin <[email protected]>
Test Plan:
Run `yarn backend && node bin/sourcecred.js help graph`.
wchargin-branch: default...
498480db067f9e13aa0e56c24df9c0b503e06e5b authored over 6 years ago by William Chargin <[email protected]>
Our SourceCred CLI tool now ipmlements printCombinedGraph and
cloneAndPrintGitGraph, but with m...
Previously, if a CLI command had an unhandled promise rejection, this
would result in a spuriou...
This commit pulls new information from GitHub about the url, name, and
owner of a GitHub reposi...
Currently, we generate a `RepositoryJSON` object via querying GitHub.
That `RepositoryJSON` obj...
Test Plan:
Run `node bin/sourcecred.js graph sourcecred example-github` and note
the new outpu...
Summary:
The `"PASS"` label only makes sense for tests. This commit makes the
labels configura...
Summary:
This commit implements the `sourcecred` command-line utility, which has
three subcomm...
Summary:
To be honest, I have no idea what exactly this does or why it’s
necessary, but if we ...
72ca52f5793b45007182d3483b6d7e7e97b49c15 authored over 6 years ago by Dandelion Mané <[email protected]>
This commit adds [oclif] as a command-line framework. It is successfully
integrated with webpac...
Summary:
Consequently, Babel won’t transform classes to their roughly equivalent
ES5 counterpa...
Summary:
We want to change this configuration so that our compilation of backend
applications ...
Setup following directions from [webpack-node-externals]
[webpack-node-externals]: https://ww...
de5542de6a597c17fb06660e79e911885e9788d9 authored over 6 years ago by Dandelion Mané <[email protected]>
Summary:
We’d like to use the same abstraction for creating multiple cred graphs
and then comb...
Summary:
This offers #205 to general users.
Test Plan:
Existing tests suffice.
wchargin-...
a642ed46b9c94301473f273feecee7b0538d2c14 authored over 6 years ago by William Chargin <[email protected]>
`printCombinedGraph` loads and prints a cross-plugin combined
contribution graph for a given Gi...
`cloneAndPrintGitGraph` clones a git repository, and generates a Git
object graph for that repo...
Summary:
Because of `mergeConservative`’s naive implementation, using it as a
reducer results ...
fetchGithubGraph is a tiny module which is responsible for fetching
GitHub contribution data, a...
Summary:
If a commit causes a tree entry to change hash while keeping the same
name, we now ad...
Test Plan:
For the snapshot: verify that two of the BECOMES edges are the same as
those tested...
Test Plan:
Unit tests included. I verified that the hashes in the snapshot are
correct.
wch...
c572b7f880ad09502cb1756b2e4e5f77b0638a94 authored over 6 years ago by William Chargin <[email protected]>
This adds MERGED_AS edges which link from a PullRequest to a Commit. It
adds a corresponding `m...
This commit adds a few fields to the PullRequest query fragment so that
we now retrieve merge c...
For the GitHub plugin to create edges pointing to commits from the Git
plugin, it needs a way t...
136cfa839c533277828bec69622f1d6433d6a3ec authored over 6 years ago by Dandelion Mané <[email protected]>
Our repository containing example GitHub data has been renamed from
"sourcecred/example-repo" t...
See [#190] for context.
The change is almost entirely straightforward; the only "interesting"...
b4474e6bd1ba0f05154f5ee82784e1d0694953d3 authored over 6 years ago by Dandelion Mané <[email protected]>
Summary:
Previously, a tree entry had exactly one `HAS_CONTENTS` edge, unless the
tree entry c...
Summary:
In Git, a tree may point to a commit directly. In our graph, we’d like
to represent “...
Summary:
Prior to this commit, given a `Tree` node with an edge to a `TreeEntry`
node, there w...
Summary:
This could catch failures in build configuration or with Webpack. It’s
unlikely to ca...
Summary:
This prevents the boilerplate output of the form
```
> [email protected] c...
25d0106a3389eb3231e0628165cb1fccff0b1af2 authored over 6 years ago by William Chargin <[email protected]>
Summary:
This CI script accomplishes two tasks:
1. It speeds up our build by parallelizing wh...
Summary:
This can be useful for speed, but it can also be important for
correctness (at least ...
Summary:
To avoid confusion, we simultaneously remove unused capturing groups.
This is not str...
This commit adds the `addReferenceEdges()` method to the GitHub parser,
which examines all of t...
For example, `https://github.com/decentralion` is now a valid url
reference to a GitHub author....
I added a lot of new comments that have url references to different
types of GitHub entities, e...
Also, a slight re-organization of the GitHub api test code.
a1d072846d036753f3d51f6a7f9a4ce06490f63d authored over 6 years ago by Dandelion Mané <[email protected]>
Test Plan:
To verify the snapshot change, either believe the programmatic tests, or
use the fo...
Test Plan:
Snapshot updated with `./src/plugins/git/loadRepositoryTest.sh -u`; unit
tests suff...
Summary:
Flow didn’t catch this because all the payloads are `{}` anyway.
Test Plan:
Note t...
This method removes `Graph.inEdges` and `Graph.outEdges`. As a
replacement to these two functio...
Test Plan:
This snapshot test is too unwieldy to actually read—it’s 1000 lines of
opaque SHAs ...
Test Plan:
Run `yarn lint` and `yarn travis` and observe success. Add something
that triggers ...
In general, methods in the porcelain GitHub api may return multiple
types; e.g. a reference cou...
Commit generated by running src/plugins/github/fetchGithubRepoTest -u
d878be655075a4a1135d31227f746d04be287759 authored over 6 years ago by Dandelion Mané <[email protected]>
Interacting with raw contribution graphs is cumbersome. We'll need
more fluent and convenient w...
Summary:
Two reasons for this. First, we want tests to be able to operate on this
data without...
Summary:
I’d like to use `Map`s whenever the keys are homogeneous (i.e.,
dictionaries, not str...
When requesting nodes and edges from the graph, it is convenient to
filter them by their type.
...
Currently, we store GitHub Users, Organizations, and Bots as separate
nodetypes in the graph. T...
This commit renames the following graph functions:
* `get{Node,Edge}{,s}` -> `{node,edge}{,s}...
dd480848101058cd49eab2163fc25ab5d8e23b61 authored over 6 years ago by Dandelion Mané <[email protected]>
`Graph.getAdjacentEdges` had a serious defect: for the adjacent edges,
it's hard to tell which ...
Previously, the address module exported `sortedByAddress`, a utility
function that sorts an arr...
Test Plan:
Run the script with `--dry-run`, which currently prints
```shell
$ src/plugins/git...