Criteria for adding nuget packages? Result helper library would be nice

I found this GitHub issue discussing adding FParsec as a preinstalled package.

I am working with a mentee who wants to get more practice working with Result but the standard library support for Result is quite limited so I’ve been suggesting using a library like FsToolkit.ErrorHandling which adds lots of valuable helper functions and a computation expression that makes working with Results much more ergonomic.

Currently tests won’t pass for submissions using this package, presumably because it would need to be added to the list of preinstalled packages?

What are the criteria for adding nuget packages to the preinstalled list and could this or an alternative library for working with Result be considered for inclusion?

1 Like

The main criterium is whether we feel like it is something useful to teach to the student. Note that, in principle, we focus on language fluency, not proficiency, so libraries are not things that we teach. That said, there are some exceptions, with the FParsec library being one of them.

I’ve just checked the nuget stats and it does seem to be a very popular library and I really like their computation expression support. I’m happy to take a PR to add it to the test runner, where it needs to be added to this list: fsharp-test-runner/Dockerfile at main · exercism/fsharp-test-runner · GitHub

1 Like

Great, I’ve created a pull request.

1 Like

Thanks! I’ve merged the PR.

1 Like