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

refactor: Add inline comments, record types #1155

Draft
wants to merge 11 commits into
base: v3
Choose a base branch
from
Draft

Conversation

DaveSkender
Copy link
Owner

@DaveSkender DaveSkender commented Jan 28, 2024

Description

The PR is primarily for code cleanup and to ensure wide consistent adoption of new conventions for inline XML commenting to replace the difficult to maintain info.xml files and to make better use of the new C#10 record class where appropriate to maximize their utility / compatibility with streaming applications.

Done when:

  • wait, to rebase from v3 after merge of feat: Full chain streaming, increment prototypes #1092
  • add a top-level IStockIndicators interface with all of the public indicator methods defined. Use this to supply the more verbose /// descriptions for these static methods. This will also make the library more mockable.
  • all info.xml files are replaced with inline XML comments using the /// convention, making good use of cref and <inheritdoc/> from the IStockIndicators interface descriptions.
  • all public classes have /// comments (e.g. utility, streaming classes)
  • ensure all public data classes are converted to record type where possible
    • question: is this the best approach, and/or beneficial for streaming intent?
    • make final decision on continued use of [Serializable] attribute, it may be obsolete

Checklist

  • My code follows the existing style, code structure, and naming taxonomy
  • I have put comments in my code, particularly for hard-to-understand areas
  • I have performed a self-review of my code and included any verifying manual calculations
  • I have added or updated unit tests that prove my fix is effective or that my feature works and achieves sufficient code coverage. New and existing unit tests pass locally and in the build (below) with my changes
  • My changes generate no new warnings or other code analysis issues
  • I have added or run the performance tests that depict optimal execution times
  • I have made corresponding changes to the documentation

@DaveSkender DaveSkender added the on hold On hold / waiting label Jan 28, 2024
@DaveSkender DaveSkender added this to the v3 milestone Jan 28, 2024
@DaveSkender DaveSkender changed the base branch from main to v3 January 28, 2024 06:57
Copy link

github-actions bot commented Jan 28, 2024

✔️ Tests 728 / 728 - passed in 7.9s
📝 Coverage 94.88%
📏 5471 / 5571 lines covered 🌿 2366 / 2689 branches covered
🔍 click here for more details

✏️ updated for commit 39ad106

@DaveSkender DaveSkender changed the title chore: Add inline comments, record types refactor: Add inline comments, record types Mar 3, 2024
@DaveSkender DaveSkender self-assigned this Mar 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
on hold On hold / waiting
Projects
Development

Successfully merging this pull request may close these issues.

None yet

1 participant