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(developer): reorganize messages for adding details #10878

Merged
merged 4 commits into from
Mar 1, 2024

Conversation

mcdurdin
Copy link
Member

Relates to #10207.

A bit embarrassed to be doing this much refactoring during beta, but it's targeted and does not change the API surfaces. These changes will make it easier to fully document the compiler messages.

In order to include message detail in messages, it is helpful to split out the exception messages which have a separate parameter, so that parameter at the same position can be the message detail.

Introduces the CompilerMessageSpecWithException function which takes an exceptionVar parameter to achieve this differentiation.

Moved the ERROR_Message line above the Error_Message line for every message in the compiler message files, as it makes the grouping clearer once we start adding message details. For example, see the start of the KmnCompilerMessages class.

Also wraps potentially-undefined parameters to the messages with a new function def, shorthand for CompilerMessageDef, which converts the parameter to '' if it is undefined, which is helpful for documentation.

Next up: the actual documentation generation functions!

@keymanapp-test-bot skip

…erator

Relates to #10207.

In order to include message detail in messages, it is helpful to split
out the exception messages which have a separate parameter, so that
parameter at the same position can be the message detail.

Introduces the CompilerMessageSpecWithException function which takes an
exceptionVar parameter to achieve this differentiation.
Moved the ERROR_Message line above the Error_Message line for every
message in the compiler message files, as it makes the grouping clearer
once we start adding message details. For example, see the start of the
KmnCompilerMessages class.

Also wraps potentially-undefined parameters to the messages with a new
function `def`, shorthand for `CompilerMessageDef`, which converts the
parameter to '<param>' if it is undefined, which is helpful for
documentation.
@keymanapp-test-bot
Copy link

keymanapp-test-bot bot commented Feb 28, 2024

User Test Results

Test specification and instructions

User tests are not required

Copy link
Contributor

@darcywong00 darcywong00 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

…s' into refactor/developer/10207-message-detail
Base automatically changed from refactor/developer/10207-kmn-compiler-message-namespaces to beta March 1, 2024 00:52
@mcdurdin mcdurdin merged commit b1c39d1 into beta Mar 1, 2024
3 checks passed
@mcdurdin mcdurdin deleted the refactor/developer/10207-message-detail branch March 1, 2024 00:54
@keyman-server
Copy link
Collaborator

Changes in this pull request will be available for download in Keyman version 17.0.280-beta

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

Successfully merging this pull request may close these issues.

docs(developer): add documentation for kmc modules 📚
3 participants