8000 [Rust][Diagnostics] Add initial boilerplate for Rust diagnostic interface. by jroesch · Pull Request #6656 · apache/tvm · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

[Rust][Diagnostics] Add initial boilerplate for Rust diagnostic interface. #6656

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

Merged
merged 32 commits into from
Nov 2, 2020

Conversation

jroesch
Copy link
Member
@jroesch jroesch commented Oct 9, 2020

This PR exposes new diagnostics to Rust so we can reuse the better libraries for diagnostics rendering via Rust.

@jroesch jroesch changed the title [Rust][Diagnostics] Add initial boilerplate for Rust diagnostic interface. [Rust][Diagnostics][WIP] Add initial boilerplate for Rust diagnostic interface. Oct 9, 2020
@jroesch
Copy link
Member Author
jroesch commented Oct 9, 2020

cc @gussmith23 and @mwillsey

@tqchen tqchen changed the base branch from master to main October 11, 2020 18:16
@jroesch jroesch changed the title [Rust][Diagnostics][WIP] Add initial boilerplate for Rust diagnostic interface. [Rust][Diagnostics] Add initial boilerplate for Rust diagnostic interface. Oct 16, 2020
@jroesch
Copy link
Member Author
jroesch commented Oct 26, 2020

I think this one is now ready to roll.

jroesch and others added 3 commits October 30, 2020 13:51
Co-authored-by: Tristan Konolige <tristan.konolige@gmail.com>
6D47

fn next(&mut self) -> Option<Self::Item> {
if self.pos < self.size {
let item = self.array.get(self.pos).expect("should not fail");
Copy link
Contributor

Choose a reason for hiding this comment

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

Even though exceptional, better error message here than "should not fail"

}

/// A mapping for all files in a source map to byte ranges.
struct SpanToByteRange {
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this a place where we could integrating like tracing-style spans? (looking for PR ideas)


// TODO(@jroesch): define type
type TypeData = ObjectRef;
type GlobalTypeVar = ObjectRef;

#[derive(Error, Debug)]
pub enum Error {
#[error("{0}")]
Copy link
Contributor

Choose a reason for hiding this comment

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

Do we also want to use #[source] for the errors?

Copy link
Member Author

Choose a reason for hiding this comment

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

This kind of stuff would be good follow up work imo.

@junrushao junrushao merged commit 883954e into apache:main Nov 2, 2020
trevor-m pushed a commit to trevor-m/tvm that referenced this pull request Dec 2, 2020
…face. (apache#6656)

* Add initial boilerplate for Rust diagnostic interface.

* Codespan example almost working

* WIP

* Hacking on Rust inside of TVM

* Borrow code from Egg

* Update CMake and delete old API

* Fix Linux build

* Clean up exporting to show off new diagnostics

* Improve Rust bindings

* Fix calling

* Fix

* Rust Diagnostics work

* Remove type checker

* Format and cleanup

* Fix the extension code

* More cleanup

* Fix some CR

* Add docs and address feedback

* WIP more improvments

* Update cmake/modules/RustExt.cmake

Co-authored-by: Robert Kimball <bobkimball@gmail.com>

* Update rust/tvm/src/ir/diagnostics/mod.rs

Co-authored-by: Robert Kimball <bobkimball@gmail.com>

* Clean up PR

* Format all

* Remove dead comment

* Code review comments  and apache  headers

* Purge test file

* Update cmake/modules/LLVM.cmake

Co-authored-by: Tristan Konolige <tristan.konolige@gmail.com>

* Format Rust

* Add TK's suggestion

* More CR and cleanup

* Fix tyck line

* Format

Co-authored-by: Robert Kimball <bobkimball@gmail.com>
Co-authored-by: Tristan Konolige <tristan.konolige@gmail.com>
trevor-m pushed a commit to trevor-m/tvm that referenced this pull request Dec 4, 2020
…face. (apache#6656)

* Add initial boilerplate for Rust diagnostic interface.

* Codespan example almost working

* WIP

* Hacking on Rust inside of TVM

* Borrow code from Egg

* Update CMake and delete old API

* Fix Linux build

* Clean up exporting to show off new diagnostics

* Improve Rust bindings

* Fix calling

* Fix

* Rust Diagnostics work

* Remove type checker

* Format and cleanup

* Fix the extension code

* More cleanup

* Fix some CR

* Add docs and address feedback

* WIP more improvments

* Update cmake/modules/RustExt.cmake

Co-authored-by: Robert Kimball <bobkimball@gmail.com>

* Update rust/tvm/src/ir/diagnostics/mod.rs

Co-authored-by: Robert Kimball <bobkimball@gmail.com>

* Clean up PR

* Format all

* Remove dead comment

* Code review comments  and apache  headers

* Purge test file

* Update cmake/modules/LLVM.cmake

Co-authored-by: Tristan Konolige <tristan.konolige@gmail.com>

* Format Rust

* Add TK's suggestion

* More CR and cleanup

* Fix tyck line

* Format

Co-authored-by: Robert Kimball <bobkimball@gmail.com>
Co-authored-by: Tristan Konolige <tristan.konolige@gmail.com>
trevor-m pushed a commit to neo-ai/tvm that referenced this pull request Dec 4, 2020
…face. (apache#6656)

* Add initial boilerplate for Rust diagnostic interface.

* Codespan example almost working

* WIP

* Hacking on Rust inside of TVM

* Borrow code from Egg

* Update CMake and delete old API

* Fix Linux build

* Clean up exporting to show off new diagnostics

* Improve Rust bindings

* Fix calling

* Fix

* Rust Diagnostics work

* Remove type checker

* Format and cleanup

* Fix the extension code

* More cleanup

* Fix some CR

* Add docs and address feedback

* WIP more improvments

* Update cmake/modules/RustExt.cmake

Co-authored-by: Robert Kimball <bobkimball@gmail.com>

* Update rust/tvm/src/ir/diagnostics/mod.rs

Co-authored-by: Robert Kimball <bobkimball@gmail.com>

* Clean up PR

* Format all

* Remove dead comment

* Code review comments  and apache  headers

* Purge test file

* Update cmake/modules/LLVM.cmake

Co-authored-by: Tristan Konolige <tristan.konolige@gmail.com>

* Format Rust

* Add TK's suggestion

* More CR and cleanup

* Fix tyck line

* Format

Co-authored-by: Robert Kimball <bobkimball@gmail.com>
Co-authored-by: Tristan Konolige <tristan.konolige@gmail.com>
@jroesch jroesch deleted the rust-diag branch February 4, 2021 04:42
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.

5 participants
0