1
Vote

API Cleanup

description

We've decided to accept breaking changes to the public API surface between v1.5 and v2.0, so let's take the opportunity to tidy up the API.

Things we should do:
  • Merge any I...2 interfaces into the main ones
  • Reduce/clarify/formalize coupling between Django (our only 'public' consumer that we know of) and Analysis
    • also do the same for PythonTools and Analysis - we shouldn't need any internal interfaces here
  • Correct namespace structure
  • Ensure all public APIs are fully documented
  • Reduce leakiness and improve validation in public API
    • ensure path parameters are validated
    • provide CancellationTokens for long-running operations
  • Update assembly versions
  • (People with edit permissions feel free to add more)

comments