Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API docs generation #83

Closed
5 tasks
buybackoff opened this issue Feb 1, 2017 · 4 comments
Closed
5 tasks

API docs generation #83

buybackoff opened this issue Feb 1, 2017 · 4 comments
Milestone

Comments

@buybackoff
Copy link
Member

buybackoff commented Feb 1, 2017

DocFx is working out of the box, but it doesn't support F# projects. The F# Collections project has containers such as SortedMap, which is hard to move to C#, but they mostly implement interfaces. It also has ICursor implementations, which are mostly internal and are used via extension methods. Those methods just wrap CursorSeries around cursor factories and could be easily moved to the top Spreads project.

Some issues:

  • There should be no extension methods on object and on generic ones, that pollutes generated API docs.
  • All CoreFx/CoreFxLab and other third-party code should be made internal unless we add some changes. Should use internal visibility with InternalsVisibleTo.
  • Should investigate Sandcastle if it works with any generate .xml docs.

This is low priority since the source is open and there is no active users I am aware of. First need to make overview/tutorials/getting started. API docs could be a different section with different formatting, just a subfolder in the Hugo site with a common template.

Update

CursorSeries and Cursor implementations are moving to the Core project.

  • Remove NoWarn:1591 from projects and write XML docs for v1.0 (after beta).
  • Run SpellChecker extension on all XML docs.
@omencat
Copy link

omencat commented Apr 12, 2017

Hi. long time deedle user here. My team of two have been threatening to migrate our intraday backtesting to utilize spreads - we can only use deedle for our daily backtesting due to some issues you already outlined. Really the only thing holding us back is the lack of getting started/docs, as productivity is just as important. I believe at the very least some getting started code would be enough for us to go from there. Just wanted to let you know that there is interest in this project. Thanks.

@buybackoff
Copy link
Member Author

Hi, @omencat Spreads is currently under major rewrite, see this commit: 8dea6ee and the most recent issues (100+). Current master head is not working for nested transformations, e.g. Range().Map() will result in stack overflow, since the new implementation is incompatible with existing parts.

I will rewrite all cursors in the similar way. I am already adding XML docs as much as possible. I am also doing intraday testing while rewriting the things and building real-time trading as well, so the rewrite is mostly to productize the existing APIs. When the new cursor approach is done I will focus more on docs and will move towards v.1.0-beta. (No panels other than the existing proof-of-concept will be in 1.0, but for my own usage I do not actually need them that much).

This is a matter of weeks, so please watch this repo for updates.

@omencat
Copy link

omencat commented Apr 12, 2017

Noted, and thanks for the update. Added project to watchlist.

@buybackoff buybackoff added this to the Beta milestone May 2, 2017
@buybackoff
Copy link
Member Author

Template with API docs is done: http://docs.dataspreads.io/spreads/

Getting started content/tutorials will be added as the top priority. But docs are now a part of normal git workflow, the label Docs needed only for things that require a separate tutorial or detailed API comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants