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

Parse clang-tidy and clang-format stdout from buffered strings #48

Closed
2bndy5 opened this issue Jan 1, 2024 · 0 comments · Fixed by #49
Closed

Parse clang-tidy and clang-format stdout from buffered strings #48

2bndy5 opened this issue Jan 1, 2024 · 0 comments · Fixed by #49

Comments

@2bndy5
Copy link
Contributor

2bndy5 commented Jan 1, 2024

I have another speed-up trick up my sleeve: Parse clang-tidy and clang-format stdout from buffered strings instead of writing/reading to cached files.

I only used cached files for easier development debugging. I rarely use the cached files for anything now. Unfortunately, this isn't a simple change given how the markdown comment is constructed from the parsed output.

Originally posted by @2bndy5 in #47 (comment)

2bndy5 added a commit that referenced this issue Jan 2, 2024
This uses a much more object-oriented approach.

- Functions are properly organized in modules with appropriate names.
- REST API usage is isolated in class derived from an abstract base class that will easily allow integrating other git servers' REST API.
- clang-format output is filtered by lines (when applicable) as the XML is parsed.
- The comment is made after all clang tool output is parsed.
- All clang tool output is parsed from buffered strings (addresses #48).
- There isn't any cached files when verbosity is not set to debug mode.
- Tests can now use mocked HTTP requests (no more fear of hitting REST API rate limits).
- Updated docs to reflect the new package structure.
@2bndy5 2bndy5 mentioned this issue Jan 2, 2024
@2bndy5 2bndy5 linked a pull request Jan 2, 2024 that will close this issue
2bndy5 added a commit that referenced this issue Jan 3, 2024
This uses a much more object-oriented approach.

- Functions are properly organized in modules with appropriate names.
- REST API usage is isolated in class derived from an abstract base class that will easily allow integrating other git servers' REST API.
- clang-format output is filtered by lines (when applicable) as the XML is parsed.
- The comment is made after all clang tool output is parsed.
- All clang tool output is parsed from buffered strings (addresses #48).
- There isn't any cached files when verbosity is not set to debug mode.
- Tests can now use mocked HTTP requests (no more fear of hitting REST API rate limits).
- Updated docs to reflect the new package structure.
@2bndy5 2bndy5 closed this as completed in #49 Jan 4, 2024
2bndy5 added a commit that referenced this issue Jan 4, 2024
- Functions are properly organized in modules with appropriate names.
- REST API usage is isolated in class derived from an abstract base class that will easily allow integrating other git servers' REST API.
- clang-format output is filtered by lines (when applicable) as the XML is parsed.
- The comment is made after all clang tool output is parsed.
- All clang tool output is parsed from buffered strings (addresses #48).
- There isn't any cached files when verbosity is not set to debug mode.
- Tests can now use mocked HTTP requests (no more fear of hitting REST API rate limits).
- Updated docs to reflect the new package structure.
- CLI supports file paths/names given as positional args
- Removed dead code about previous attempt to create review comments
- Change acceptable verbosity input values to be "debug" or "10"
- Updated help strings in CLI for narrow terminals
- fix problem in "is ignored" logic
  Due to python's lazy logic evaluation, we need to check if a path is first explicitly not-ignored before checking if said source is ignored.
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 a pull request may close this issue.

1 participant