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

Design Suggestions Database Schema and API for Documentation Chunks #1698

Closed
2 tasks
4e6 opened this issue Apr 26, 2021 · 0 comments · Fixed by #1758
Closed
2 tasks

Design Suggestions Database Schema and API for Documentation Chunks #1698

4e6 opened this issue Apr 26, 2021 · 0 comments · Fixed by #1758
Assignees
Labels
--breaking Important: a change that will break a public API or user-facing behaviour p-high Should be completed in the next sprint

Comments

@4e6
Copy link
Contributor

4e6 commented Apr 26, 2021

Summary

We need better docs in the IDE. To do that, the language server will generate and store the HTML documentation strings in the suggestions database. This task is to design the database schema allowing to store documentation chunks, and a new API to send the documentation chunks as a part of suggestions database updates.

Value

The language server is able to provide the documentation chunks for the IDE.

Specification

  • Extend the suggestions database schema to store documentation chunks. Documentation chunks need to be ordered. For a chunk, we should get a list of previous chunks and the chunks after this one.
    An example of an index. It's a good idea to keep it normalized. The final list can be assembled in an SQL query (SQLite supports recursive queries).

    SUGGESTION_ID SUGGESTIONS_BEFORE SUGGESTIONS_AFTER
    000001 ID1 ID2

    An example of a doc table.

    SUGGESTION_ID HTML_FRAGMENT
    000001 ...
  • Extend the suggestion updates API to support the documentation chunks.

Acceptance Criteria & Test Cases

  • There is an SQL schema for storing documentation chunks.
  • The language server suggestion updates API supports documentation chunks.
@4e6 4e6 added Type: Enhancement --breaking Important: a change that will break a public API or user-facing behaviour p-high Should be completed in the next sprint labels Apr 26, 2021
@4e6 4e6 self-assigned this Apr 26, 2021
@iamrecursion iamrecursion added this to the Alpha 5 milestone Apr 26, 2021
@iamrecursion iamrecursion removed this from the Alpha 5 milestone May 13, 2021
@4e6 4e6 mentioned this issue May 26, 2021
4 tasks
@4e6 4e6 closed this as completed in #1758 Jun 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
--breaking Important: a change that will break a public API or user-facing behaviour p-high Should be completed in the next sprint
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants