For now, RotoTracker will not error out with new files. It also paves way for much faster and robust importing!
On Tuesday, December 18, DraftKings released an update that changed the format for CSV entry history files. Today (about 16 hours after the update!), RotoTracker has been updated so that it handles the new format.
For now, we have just added a quick workaround so that the importer does not blow up with the new file format—a quick fix so you can keep your database up to date. However, the new changes rolled out by DK this week are quite exciting, and it opens up opportunities to greatly improve the speed and robustness of our DK imports.
The file now has two new columns: entry key and contest key. These are unique identifiers that help identify each record. This brings it in-line with what we have at other sites and we can use this to make our DraftKings support even better.
As you'll know, RotoTracker is unique in that it only imports new entries each time you do an update, and that it also groups together entries by contest. With sites like Fanduel and Yahoo, this is quite easy because they have a unique identifier in the CSV file, making it trivial to detect duplicates (and thus avoid importing them). Yahoo also has a contest ID, making it easy to group together contests.
DraftKings, historically, has been much more complicated. Until now it has not included any unique IDs, so RotoTracker has had to use a combination of properties to guess whether an entry is new or not. This works pretty well, but it makes importing slow, and there are the odd edge cases where things go wrong.
The new columns mean we can change how this works and bring it in line with other sites. This will mean much faster DK imports, and much more robust importing.
It will however takes some work before we support it—as we will need to remove a lot of legacy code and update the Sync browser extension. We will also need to consider carefully how to handle both old and new-style data sets gracefully.
Given the busy time of year with the NFL season reaching its final stages, we will likely hold off deployment of this until the new year so as not to disrupt service more than necessary.