Florian Oswald edited this page Apr 26, 2016 · 19 revisions

Required steps

When asking on Stack Overflow, filing a new bug report/feature request on GitHub, or posting to datatable-help, the following steps are required. Please :

  1. Read how to ask.
  2. Read how to ask questions the smart way.
  3. Read how to make a great R reproducible example. Providing one should be possible in almost all cases.
  4. Read github flavoured markdown on formatting your code.
  5. Exclude the prompt > from the code in your question. Including it means it won't work when we copy and paste it to our prompt. Use "#" to comment the output parts.
  6. What is the intended behaviour? And what do you get instead? Show the output. If you get a warning or an error message, be sure to include the full message in your question otherwise nobody can confirm they have reproduced the same error or warning that you get.
  7. If you encounter an issue with fread, provide the output by running with the option verbose=TRUE. Also, provide an external link to the minimal reproducible file, and use that file name in your code. It'd also be great if you don't delete the link anytime soon, as we may not be able to get to your issue immediately.
  8. If the issue happens when loading another package, or the issue is when using data.table with another package, please add the package name and its version as well. And if the package has a non-straightforward installation procedure, please list that as well.
  9. What is your R version, and data.table version? Better to post the sessionInfo() output.

In addition to the above mandatory steps, any additional information is most definitely welcome!

ONLY contact a project member directly (e.g. using email or twitter) if and only if :

  • you have already raised a question or issue and the solution or progress is unsatisfactory. In this case include a link to the question or issue and why you are bringing it to our attention. We welcome such emails or tweets.
  • you are unable to raise a public question or issue (please tell us why not), or require enterprise support.

Top 3 mistakes

  1. Not stating what you've tried already; e.g., which search strings exactly did you try and where?
  2. Not providing a minimal reproducible example. It needs to be both minimal and reproducible. See point 3 above.
  3. Not providing the full output of sessionInfo() including the version number of data.table.


  1. If you encounter an error message you don't understand, go immediately to Stack Overflow. In the top right of the screen type in the search box "[data.table]" followed by the actual error message. [add screenshot] Yes, copy and paste the actual error message (or most salient parts from it) since the error message will appear in the text of good questions. If you get no results then you could try the "[r]" tag in case a question has been asked about that error message but not tagged data.table. If so, please edit that question and add [data.table] alongside the [r] tag if and only if the question (not the answer) was about data.table. See S.O. search tips.

  2. If you don't know how to do something then :

    • Again, search the data.table tag on Stack Overflow using English. [add screenshot]
    • Type ?data.table and look at all the arguments. Do you know them all; e.g. with, which and others? Make sure you do. It is likely that one of them is there for your task. If some seem like they could help, search Stack Overflow for that argument name within the [data.table] tag and see how people have used it. Many answers use data.table but the question was not about data.table, so in this situation search in the [r] tag (not [data.table]) for the data.table string and the argument name. [Add screenshot]
    • Have a look at the data.table FAQ. Read all the FAQs anyway, even if you don't have those questions. The FAQ is considered documentation (i.e. required reading) just structured in a FAQ style.
  3. Read and search the Is there a bug fix or a new feature related to your issue? Probably we were aware of the issue or someone else reported it and we have already fixed the issue in the current development version.

  4. Even if your issue is not listed in the file, please test your code on the latest version from Github to ensure that the problem still exists. Installation instructions can be found here. It is trivial to downgrade again back to the CRAN release and the one line commands are on that page too.

  5. Look through the existing tickets (use the search) to check if the issue has already been reported. It's much easier for you to look for duplicates on that one issue, rather than us having to check for all reported issues! It's encouraged to add a comment "+1" if you have the same feature or bug report. That helps us prioritize.

If your problem survives the above steps AND you are reasonably sure it is either a bug report or a feature request then raise a new issue on the GitHub project. Please tag it bug or feature request appropriately. Project members and anyone subscribed to activity on the project will be notified via email, likely via an email folder (i.e. a queue). OTHERWISE, ask a new question on Stack Overflow. Be sure to tag the question both [r] and [data.table]. For example your question may be "is this a bug?" and if confirmed you may then be advised to raise an issue on GitHub. If so, please include a link to the question in the new issue.

Thank you!