tobie / specref

An open-source, community-maintained database of Web standards & related references.
http://www.specref.org/
Apache License 2.0
165 stars 141 forks source link

wg21 diff thrashing #742

Open davidlehn opened 1 year ago

davidlehn commented 1 year ago

A couple WG21 refs are trashing back and forth. It makes the commit history a mess. Lots of these, then often flips back next update: https://github.com/tobie/specref/commit/6af3e588e7aafa9a802f7a7dd81a22618cdc50a3

Looks like it's coming from the auto-generated JSON: https://wg21.link/index.json

If you curl it, it'll change back and forth every so often: curl https://wg21.link/index.json | jq '.D2652R2,.D2572R1'

There's some extra data in there not used in specref. Will be this:

{
  "type": "paper",
  "title": "Disallow User Specialization of allocator_traits (Bug fix from R1)",
  "subgroup": "",
  "link": "https://wg21.link/d2652r2",
  "long_link": "https://wiki.edg.com/pub/Wg21issaquah2023/StrawPolls/P2652R2.html",
  "source": "https://wiki.edg.com/bin/view/Wg21issaquah2023/StrawPolls"
}
{
  "type": "paper",
  "title": "P2572R1: std::format() fill character allowances",
  "subgroup": "",
  "link": "https://wg21.link/d2572r1",
  "long_link": "https://wiki.edg.com/pub/Wg21issaquah2023/StrawPolls/p2572r1.html",
  "source": "https://wiki.edg.com/bin/view/Wg21issaquah2023/StrawPolls"
}

Or this:

{
  "type": "paper",
  "title": "D2552R2 - Fix `allocator_traits::allocate_at_least`",
  "subgroup": "LWG",
  "link": "https://wg21.link/d2652r2",
  "long_link": "https://wiki.edg.com/pub/Wg21issaquah2023/LibraryWorkingGroup/D2652R2.html",
  "source": "https://wiki.edg.com/bin/view/Wg21issaquah2023/LibraryWorkingGroup"
}
{
  "type": "paper",
  "title": "std::format() fill character allowances",
  "subgroup": "LWG",
  "link": "https://wg21.link/d2572r1",
  "long_link": "https://wiki.edg.com/pub/Wg21issaquah2023/LibraryWorkingGroup/d2572r1.html",
  "source": "https://wiki.edg.com/bin/view/Wg21issaquah2023/LibraryWorkingGroup"
}

I'd guess that whatever is generating that data is pulling from multiple sources (LWG subgroup, and something else) and one entry wins at random. I'm not sure where that data comes from or where a fix should be. If anyone knows, please request a fix. Otherwise, is there a way to mitigate the constant thrashing here?