{"push_id":984051931,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"6a1fdc9a9e0646606127c270bbbc2240cb2d2199","before":"d2b366c7bd9a05cf5ea16212e8d67b9f918facc7","commits":[{"sha":"6a1fdc9a9e0646606127c270bbbc2240cb2d2199","author":{"email":"6977263c73bf2ae00930eec9b50ebede3b695164@fb.com","name":"Joe Savona"},"message":"Create build-time fragment ids to identify fragments across threads\n\nSummary: RelayContainer uses fragment pointers - opaque metadata on fragment props - to verify that data for a component was fetched by its parent. The current implementation relies on a runtime-generated id, however, this is limiting if we want to perform data-fetching in a separate thread. To do so with runtime generated IDs would require serializing the query itself across threads which imposes a runtime cost. Instead, we can generate a unique id for each fragment within the source code and use that to identify fragments and their results across threads. These new ids are a hash of the filename, full file text, and line/column number - effectively uniquely identifying the fragment's place structurally within the codebase (the closest static equivalent to \"this exact runtime object\").\n\nReviewed By: yungsters\n\nDifferential Revision: D2943010\n\nfb-gh-sync-id: 179914e1adb3757db989777c37c895f276c2f96e\nshipit-source-id: 179914e1adb3757db989777c37c895f276c2f96e","distinct":true,"url":"https://api.github.com/repos/facebook/relay/commits/6a1fdc9a9e0646606127c270bbbc2240cb2d2199"}]}