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

feat: Add Deno.formatDiagnostics to provide formatting of compiler diagnostics #4032

Merged
merged 8 commits into from
Feb 24, 2020

Conversation

kitsonk
Copy link
Contributor

@kitsonk kitsonk commented Feb 19, 2020

This PR provides /std/fmt/diagnostics.ts which exports formatDiagnostic() which will return a string for a Deno.DiagnosticItem[] array that might be returned from Deno.compile() or Deno.bundle(). The formatting aligns to the same formatting output from Deno when outputting the errors.

This PR provides Deno.formatDiagnostics() which will take an array of Deno.DiagnosticItem and return a string which is formatted for display.

Copy link
Member

@ry ry left a comment

Choose a reason for hiding this comment

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

It kinda sucks to have two implementations. What if we added an op to return the formatted string?

@kitsonk
Copy link
Contributor Author

kitsonk commented Feb 19, 2020

Should be fairly painless. Don't know why I didn't think of that.

@kitsonk kitsonk changed the title [std] Add diagnostic formatting util feat: Add Deno.formatDiagnostics to provide formatting of compiler diagnostics Feb 20, 2020
@kitsonk kitsonk force-pushed the fmt-diagnostics branch 2 times, most recently from 9523321 to 6d7f525 Compare February 20, 2020 23:48
@kitsonk kitsonk requested a review from ry February 21, 2020 00:20
cli/js/format_error_test.ts Outdated Show resolved Hide resolved
cli/js/lib.deno.ns.d.ts Outdated Show resolved Hide resolved
cli/js/unit_tests.ts Outdated Show resolved Hide resolved
cli/ops/errors.rs Outdated Show resolved Hide resolved
cli/js/format_error_test.ts Outdated Show resolved Hide resolved
Copy link
Member

@ry ry left a comment

Choose a reason for hiding this comment

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

Looks good! just a few comments

Copy link
Member

@ry ry left a comment

Choose a reason for hiding this comment

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

LGTM

@ry ry merged commit 2b7e28b into denoland:master Feb 24, 2020
dubiousjim added a commit to dubiousjim/deno that referenced this pull request Feb 26, 2020
* tag 'dm': (58 commits)
  Port permission_prompt_tests to Rust (denoland#4129)
  upgrade: TypeScript 3.8 (denoland#4100)
  Remove _async from method names since _sync are gone (denoland#4128)
  ci: Use fetch-depth: 5 (denoland#4127)
  fix: Resolve makeTemp* paths from CWD (denoland#4104)
  Clean up how we use opIds (denoland#4118)
  Fix issues with JavaScript importing JavaScript. (denoland#4120)
  fix: [http] Consume unread body and trailers before reading next request (denoland#3990)
  Remove ansi_term dependency (denoland#4116)
  port tools/repl_test.py to Rust (denoland#4096)
  Revert "Remove ansi_term dependency"
  fix: createSecKey logic (denoland#4063)
  Add Deno.Err change missing from previous commit (denoland#4113)
  rename Deno.Err -> Deno.errors (denoland#4093)
  doc: Remove old link to deno types output (denoland#4111)
  feat: Add Deno.formatDiagnostics (denoland#4032)
  disable std/examples/chat tests for windows (denoland#4109)
  update build instructions for windows (denoland#4027)
  Remove ansi_term dependency (denoland#4106)
  fix: add mutex guard for permission_prompt tests (denoland#4105)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants