Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mirror: add typename support to UpdateResults #1664

Merged
merged 12 commits into from Mar 1, 2020

Conversation

wchargin
Copy link
Member

Summary:
The internal UpdateResult structure now lists IDs of objects whose
typename has been queried. This list is expected to be empty for now.

Test Plan:
Unit tests added.

wchargin-branch: mirror-typename-updateresult

Summary:
Most of the blacklisted reactions helpfully link to their original
source, but some don’t. This patch adds the missing links.

Test Plan:
The following command now prints a URL on every line:

```
<src/plugins/github/blacklistedObjectIds.js \
awk '/^[^ ]/ { p = 0 }; p { gsub(".*// ", ""); print }; /reactions/ { p = 1 }'
```

wchargin-branch: blacklist-urls
Summary:
Fields in a GraphQL schema may now declare themselves as “unfaithful”,
indicating that the server is known to return responses with incorrect
types for that field. Future changes will teach the Mirror module to
query these fields more carefully, handling such incorrect responses
robustly. See the [tracking issue] and [project initiative] for details.

[project initiative]: https://discourse.sourcecred.io/t/graphql-mirror-fidelity-awareness/275
[tracking issue]: #998

This change is source-compatible and data-incompatible: the APIs are
backward-compatible, but the schema representation (JSON serialized
form) has changed, and so the `Mirror` constructor will reject old
caches.

Test Plan:
Unit tests included.

wchargin-branch: schema-fidelity
wchargin-source: 96e54473a41c416f77cc84e4b4d2221d3723b4fa
Summary:
The internal `QueryPlan` structure now lists IDs of objects whose
typename is to be queried. This list is expected to be empty for now.

Test Plan:
Unit tests included.

wchargin-branch: mirror-typename-queryplan
wchargin-source: ca4c04da1ec1b4795cc66eb90a5559703a7ccd58
Summary:
The internal `UpdateResult` structure now lists IDs of objects whose
typename has been queried. This list is expected to be empty for now.

Test Plan:
Unit tests added.

wchargin-branch: mirror-typename-updateresult
wchargin-source: 8fa7c0760901419ee5ad38d7608b9ab22d4bd6bb
wchargin-branch: blacklist-urls
wchargin-source: e107c413b08f21d8efa79ca0f587a24a569eaed1
wchargin-branch: schema-fidelity
wchargin-source: 61796a7a35b785a5a2efa78356da659c1fa14251
wchargin-branch: mirror-typename-queryplan
wchargin-source: a556ec86b5d34aafbbacdf65c07e9acfc587b581
wchargin-branch: mirror-typename-updateresult
wchargin-source: 224be876dcbfeb23715092b5735d0f59e39d88bd
wchargin-branch: schema-fidelity
wchargin-source: bef16a1a6edbb3325445e941b9c6a5ef70003284
wchargin-branch: mirror-typename-queryplan
wchargin-source: 82423a6797731234387ebdb7a5ba22f7da0b9d5c
wchargin-branch: mirror-typename-updateresult
wchargin-source: 56e5970ca05227946b96826375793dd1c906c13b
@wchargin wchargin changed the base branch from wchargin-mirror-typename-queryplan to master March 1, 2020 00:56
wchargin-branch: mirror-typename-updateresult
wchargin-source: ae92efd6c2cfebbaa4c8089ed9c12f47ca117879
@wchargin wchargin merged commit 5c937d8 into master Mar 1, 2020
@wchargin wchargin deleted the wchargin-mirror-typename-updateresult branch March 1, 2020 00:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants