profile
viewpoint

evincarofautumn/kitten 822

A statically typed concatenative systems programming language.

sibblingz/PerfMarks 21

Basic Benchmarks to measure HTML5 performance and support for game related features

cxxtrace/cxxtrace 7

low-cost tracing and logging for C++

sibblingz/asJam-public 2

A jam of ActionScript

strager/b 2

Theoretically awesome build system

sibblingz/HTML5-Game-Benchmarks 1

MOVED TO https://github.com/sibblingz/PerfMarks

sibblingz/spaceport-signer-opensource 1

Spaceport application signing tool

sibblingz/touchdown 1

Touch screen sample rate tests

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 236b787b4fc0b5cb1087d2b974e68b8b9ae490d9

Improve performance for expected crashes quick-lint-js is incomplete, and has a few places where it intentionally crashes (unknown input byte; unexpected token). When using quick-lint-js with Vim to edit JavaScript, quick-lint-js crashes often. When it crashes, my Linux machine goes nuts creating core dump after core dump. This wastes resources and sometimes slows down my editing experience. Improve the performance of expected crashes by disabling core dumping. This was harder than expected because Linux is weird. This commit should only affect Linux and macOS and other POSIX-y platforms. Windows and emscripten should be unaffected.

view details

push time in an hour

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 236b787b4fc0b5cb1087d2b974e68b8b9ae490d9

Improve performance for expected crashes quick-lint-js is incomplete, and has a few places where it intentionally crashes (unknown input byte; unexpected token). When using quick-lint-js with Vim to edit JavaScript, quick-lint-js crashes often. When it crashes, my Linux machine goes nuts creating core dump after core dump. This wastes resources and sometimes slows down my editing experience. Improve the performance of expected crashes by disabling core dumping. This was harder than expected because Linux is weird. This commit should only affect Linux and macOS and other POSIX-y platforms. Windows and emscripten should be unaffected.

view details

push time in an hour

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 98376bdc7e88f2446fc586b2583a618422659724

Improve performance for expected crashes quick-lint-js is incomplete, and has a few places where it intentionally crashes (unknown input byte; unexpected token). When using quick-lint-js with Vim to edit JavaScript, quick-lint-js crashes often. When it crashes, my Linux machine goes nuts creating core dump after core dump. This wastes resources and sometimes slows down my editing experience. Improve the performance of expected crashes by disabling core dumping. This was harder than expected because Linux is weird. This commit should only affect Linux and macOS and other POSIX-y platforms. Windows and emscripten should be unaffected.

view details

push time in 2 hours

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 334bc13786573c3a1d65885381aed9645917dace

Improve performance for expected crashes quick-lint-js is incomplete, and has a few places where it intentionally crashes (unknown input byte; unexpected token). When using quick-lint-js with Vim to edit JavaScript, quick-lint-js crashes often. When it crashes, my Linux machine goes nuts creating core dump after core dump. This wastes resources and sometimes slows down my editing experience. Improve the performance of expected crashes by disabling core dumping. This was harder than expected because Linux is weird. This commit should only affect Linux and macOS and other POSIX-y platforms. Windows and emscripten should be unaffected.

view details

push time in 2 hours

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 4bcd7dd5029a13c07a0491231cab3b2bb44aff4f

Move posix_fd_file, etc. into their own file I want to use posix_fd_file outside of file.cpp. Move the posix_fd_file class (and the related windows_handle_file class) into its own module so it can be reused. This commit should not change behavior.

view details

push time in 3 hours

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 4bcd7dd5029a13c07a0491231cab3b2bb44aff4f

Move posix_fd_file, etc. into their own file I want to use posix_fd_file outside of file.cpp. Move the posix_fd_file class (and the related windows_handle_file class) into its own module so it can be reused. This commit should not change behavior.

view details

push time in 3 hours

push eventstrager/quick-lint-js

Matthew Glazar

commit sha c890b4c94f9a89483e741a0fa3b2d302007ec818

Move posix_fd_file, etc. into their own file I want to use posix_fd_file outside of file.cpp. Move the posix_fd_file class (and the related windows_handle_file class) into its own module so it can be reused. This commit should not change behavior.

view details

push time in 4 hours

push eventstrager/quick-lint-js

A-thanasios

commit sha 597619e79c2a2c9fe3c6de39cba20dbd67ebbea4

Combine double error into single error when assigning to const variable before it has been declared.

view details

A-thanasios

commit sha e52bfaab0860bb13383ebf4ca9ecf7440b6797ab

Change order of a condition in report_error_if_assignment_is_illegal without changing functionality.

view details

Matthew Glazar

commit sha ca6c7ff9d5477994c6d82232013109882a01c991

Fix code formatting; run clang-format

view details

Matthew Glazar

commit sha 16a2d255b9abfd500b1ae38f0596ba20e0f65cac

Merge "Combine double error for const variable assignment before declaration"

view details

push time in a day

push eventstrager/quick-lint-js

Matthew Glazar

commit sha ca6c7ff9d5477994c6d82232013109882a01c991

Fix code formatting; run clang-format

view details

Matthew Glazar

commit sha 16a2d255b9abfd500b1ae38f0596ba20e0f65cac

Merge "Combine double error for const variable assignment before declaration"

view details

push time in a day

create barnchstrager/quick-lint-js

branch : staging

created branch time in a day

Pull request review commentstrager/quick-lint-js

Report missing semicolon for variable declarations and report debugger as invalid binding in let statement

 TEST(test_parse, debugger_statement) {                 ElementsAre(spy_visitor::visited_variable_use{u8"x"}));   } }++TEST(test_parse, report_missing_semicolon_for_declarations) {+  {+    spy_visitor v;+    padded_string code(u8"let x = 2\nfor (;;) { console.log(); }");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_let}));+    EXPECT_THAT(v.variable_uses,+                ElementsAre(spy_visitor::visited_variable_use{u8"console"}));+    EXPECT_THAT(v.errors, IsEmpty());+  }+  {+    spy_visitor v;+    padded_string code(u8"let x = 2 for (;;) { console.log(); }");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_let}));+    EXPECT_THAT(v.variable_uses,+                ElementsAre(spy_visitor::visited_variable_use{u8"console"}));+    source_position::offset_type end_of_let_statement =+        strlen(u8"let x = 2");+    EXPECT_THAT(v.errors, ElementsAre(ERROR_TYPE_FIELD(+                              error_missing_semicolon_after_expression, where,+                              offsets_matcher(&code, end_of_let_statement ,+                                              end_of_let_statement ))));+  }+  {+    spy_visitor v;+    padded_string code(u8"const x debugger");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_const}));+    source_position::offset_type end_of_const_statement =+        strlen(u8"const x");+    EXPECT_THAT(v.errors, ElementsAre(ERROR_TYPE_FIELD(+                              error_missing_semicolon_after_expression, where,+                              offsets_matcher(&code, end_of_const_statement ,+                                              end_of_const_statement ))));+  }+  {+    spy_visitor v;+    padded_string code(u8"var x debugger");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_var}));+    source_position::offset_type end_of_var_statement =+        strlen(u8"var x");+    EXPECT_THAT(v.errors, ElementsAre(ERROR_TYPE_FIELD(+                              error_missing_semicolon_after_expression, where,+                              offsets_matcher(&code, end_of_var_statement ,+                                              end_of_var_statement ))));+  }+}

Minor: var isn't really different from const, so I'd delete this almost-duplicate test.

erlliam

comment created time in a day

Pull request review commentstrager/quick-lint-js

Report missing semicolon for variable declarations and report debugger as invalid binding in let statement

 TEST(test_parse, debugger_statement) {                 ElementsAre(spy_visitor::visited_variable_use{u8"x"}));   } }++TEST(test_parse, report_missing_semicolon_for_declarations) {+  {+    spy_visitor v;+    padded_string code(u8"let x = 2\nfor (;;) { console.log(); }");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_let}));+    EXPECT_THAT(v.variable_uses,+                ElementsAre(spy_visitor::visited_variable_use{u8"console"}));+    EXPECT_THAT(v.errors, IsEmpty());+  }

Minor: The test talks about reporting missing semicolons, but these lines show that QLJS should not report a missing semicolon in this case. Move this code to a different test, or rename the test.

erlliam

comment created time in a day

Pull request review commentstrager/quick-lint-js

Report missing semicolon for variable declarations and report debugger as invalid binding in let statement

 TEST(test_parse, debugger_statement) {                 ElementsAre(spy_visitor::visited_variable_use{u8"x"}));   } }++TEST(test_parse, report_missing_semicolon_for_declarations) {+  {+    spy_visitor v;+    padded_string code(u8"let x = 2\nfor (;;) { console.log(); }");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_let}));+    EXPECT_THAT(v.variable_uses,+                ElementsAre(spy_visitor::visited_variable_use{u8"console"}));+    EXPECT_THAT(v.errors, IsEmpty());+  }+  {+    spy_visitor v;+    padded_string code(u8"let x = 2 for (;;) { console.log(); }");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_let}));+    EXPECT_THAT(v.variable_uses,+                ElementsAre(spy_visitor::visited_variable_use{u8"console"}));+    source_position::offset_type end_of_let_statement =+        strlen(u8"let x = 2");+    EXPECT_THAT(v.errors, ElementsAre(ERROR_TYPE_FIELD(+                              error_missing_semicolon_after_expression, where,+                              offsets_matcher(&code, end_of_let_statement ,+                                              end_of_let_statement ))));+  }

:+1:

erlliam

comment created time in a day

Pull request review commentstrager/quick-lint-js

Report missing semicolon for variable declarations and report debugger as invalid binding in let statement

 TEST(test_parse, debugger_statement) {                 ElementsAre(spy_visitor::visited_variable_use{u8"x"}));   } }++TEST(test_parse, report_missing_semicolon_for_declarations) {+  {+    spy_visitor v;+    padded_string code(u8"let x = 2\nfor (;;) { console.log(); }");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_let}));+    EXPECT_THAT(v.variable_uses,+                ElementsAre(spy_visitor::visited_variable_use{u8"console"}));+    EXPECT_THAT(v.errors, IsEmpty());+  }+  {+    spy_visitor v;+    padded_string code(u8"let x = 2 for (;;) { console.log(); }");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_let}));+    EXPECT_THAT(v.variable_uses,+                ElementsAre(spy_visitor::visited_variable_use{u8"console"}));+    source_position::offset_type end_of_let_statement =+        strlen(u8"let x = 2");+    EXPECT_THAT(v.errors, ElementsAre(ERROR_TYPE_FIELD(+                              error_missing_semicolon_after_expression, where,+                              offsets_matcher(&code, end_of_let_statement ,+                                              end_of_let_statement ))));+  }+  {+    spy_visitor v;+    padded_string code(u8"const x debugger");+    parser p(&code, &v);+    p.parse_and_visit_statement(v);+    p.parse_and_visit_statement(v);+    EXPECT_THAT(v.variable_declarations,+                ElementsAre(spy_visitor::visited_variable_declaration{+                    u8"x", variable_kind::_const}));+    source_position::offset_type end_of_const_statement =+        strlen(u8"const x");+    EXPECT_THAT(v.errors, ElementsAre(ERROR_TYPE_FIELD(+                              error_missing_semicolon_after_expression, where,+                              offsets_matcher(&code, end_of_const_statement ,+                                              end_of_const_statement ))));+  }

:+1: Good error reporting!

erlliam

comment created time in a day

Pull request review commentstrager/quick-lint-js

Report missing semicolon for variable declarations and report debugger as invalid binding in let statement

 class parser {           break;         case token_type::kw_if:         case token_type::number:+        case token_type::kw_debugger:

Nit: Sort these cases alphabetically:

        case token_type::kw_debugger:
        case token_type::kw_if:
        case token_type::number:
erlliam

comment created time in a day

PullRequestReviewEvent
PullRequestReviewEvent

Pull request review commentstrager/quick-lint-js

Combine double error for const variable assignment before declaration

 void linter::propagate_variable_declarations_to_parent_scope() { }  void linter::report_error_if_assignment_is_illegal(-    const linter::declared_variable *var, const identifier &assignment) const {+    const linter::declared_variable *var, const identifier &assignment, bool is_assigned_before_declaration) const {   switch (var->kind) {     case variable_kind::_const:     case variable_kind::_import:       if (var->is_global_variable) {         this->error_reporter_->report(             error_assignment_to_const_global_variable{assignment});       } else {-        this->error_reporter_->report(error_assignment_to_const_variable{-            var->declaration(), assignment, var->kind});+        if (!is_assigned_before_declaration) {

Nit: I dislike double negatives; line 438 executes if ! !is_assigned_before_declaration. Invert this if to avoid double negatives.

A-thanasios

comment created time in a day

Pull request review commentstrager/quick-lint-js

Combine double error for const variable assignment before declaration

       .error(u8"assignment to const variable", assignment)                     \           .note(u8"const variable declared here", declaration))                \                                                                                \+  QLJS_ERROR_TYPE(                                                             \+      error_assignment_to_const_variable_before_its_declaration,               \+      {                                                                        \+        identifier declaration;                                                \+        identifier assignment;                                                 \+        variable_kind var_kind;                                                \+      },                                                                       \+   .error(u8"assignment to const variable before its declaration", assignment) \+          .note(u8"const variable declared here", declaration))                \

:+1:

A-thanasios

comment created time in a day

PullRequestReviewEvent
PullRequestReviewEvent

delete branch strager/quick-lint-js

delete branch : web-ci

delete time in a day

delete branch strager/quick-lint-js

delete branch : staging

delete time in a day

delete branch strager/quick-lint-js

delete branch : staging2

delete time in a day

PR closed strager/quick-lint-js

Report error when `throw` statement is incomplete or has newline.

expected expression is reported when throw is followed by semicolon. unexpected newline is reported when throw is followed by a newline.

+46 -1

1 comment

3 changed files

masamu

pr closed time in a day

pull request commentstrager/quick-lint-js

Report error when `throw` statement is incomplete or has newline.

Landed as commit 5c81385e8c53e099d3d6633f997fb91f15edbb09. (I rebased and ran clang-format on the sources.)

masamu

comment created time in a day

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 4f2b9438121fe485b601b45fe7b3f9f5f7f53263

Document parts of the linter

view details

Matthew Glazar

commit sha 245951502a4e680a67f2f26e6b2cb00c34b9181c

Document parts of the parser

view details

Matthew Glazar

commit sha 25be7d4df9367b993b0db40fc76f220560b16d6f

Delete unused #include-s

view details

Matthew Glazar

commit sha f2c7678f2da552719c44ae4e50b39a31d8bf2745

Delete unused expression_arena::make_array overload

view details

Matthew Glazar

commit sha 948b292783232d8c4b84982480eb07b36cc387ac

Fix wrong variable name in comment Make the function declaration and definition use consistent parameter names, and fix comments in callers referencing the paramter by name. This commit should not change behavior.

view details

Matthew Glazar

commit sha f0ae2126daafbdc83e7c4b975cfad6210e889b04

Fix capitalization in variable name

view details

Matthew Glazar

commit sha 7475d4f8d6f58a2f533775f68ebf1a79f8b6a608

Avoid char in math; use unsigned types instead clang-tidy complains about conversions from int to char and other stuff in char_vector_1::operator| and in lexer::parse_identifier. Because char's type is ambiguously signed or unsigned, clang-tidy thinks these conversions might be buggy. Avoid any problematic conversions by using an unsigned type explicitly (std::uint8_t or char8_t). This commit should not change behavior.

view details

Matthew Glazar

commit sha 0ef30da53868606c2a2ce9c8e2738133ac3ab35c

Nit: use C++17 nested namespace syntax

view details

Matthew Glazar

commit sha cecc80b99b1ab5da942c0ae7043a4f51ba52ce06

Use const references in dump_max_size_histogram for clarity

view details

Matthew Glazar

commit sha 16fc99503d2d4bca4f1ebab1cfd2c992d15f2036

Fix use of uninitialized variable lexer::parse_current_token reads from this->last_token_.end. this->last_token_.end is not initialized in lexer's constructor, so the read is UB. Initialize this->last_token_.end to fix this. Also, while we're here, remove the dead stores to this->last_token_.begin and this->last_last_token_end_. lexer::parse_current_token assigns to those variables already (before reading). This commit should not change behavior.

view details

Matheus Sousa

commit sha 5c81385e8c53e099d3d6633f997fb91f15edbb09

Report error when `throw` statement is incomplete or has newline. `expected expression before semicolon` is reported when `throw` is followed by semicolon. `expected expression before newline` is reported when `throw` is followed by a newline.

view details

push time in a day

create barnchstrager/quick-lint-js

branch : staging2

created branch time in a day

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 25be7d4df9367b993b0db40fc76f220560b16d6f

Delete unused #include-s

view details

Matthew Glazar

commit sha f2c7678f2da552719c44ae4e50b39a31d8bf2745

Delete unused expression_arena::make_array overload

view details

Matthew Glazar

commit sha 948b292783232d8c4b84982480eb07b36cc387ac

Fix wrong variable name in comment Make the function declaration and definition use consistent parameter names, and fix comments in callers referencing the paramter by name. This commit should not change behavior.

view details

Matthew Glazar

commit sha f0ae2126daafbdc83e7c4b975cfad6210e889b04

Fix capitalization in variable name

view details

Matthew Glazar

commit sha 7475d4f8d6f58a2f533775f68ebf1a79f8b6a608

Avoid char in math; use unsigned types instead clang-tidy complains about conversions from int to char and other stuff in char_vector_1::operator| and in lexer::parse_identifier. Because char's type is ambiguously signed or unsigned, clang-tidy thinks these conversions might be buggy. Avoid any problematic conversions by using an unsigned type explicitly (std::uint8_t or char8_t). This commit should not change behavior.

view details

Matthew Glazar

commit sha 0ef30da53868606c2a2ce9c8e2738133ac3ab35c

Nit: use C++17 nested namespace syntax

view details

Matthew Glazar

commit sha cecc80b99b1ab5da942c0ae7043a4f51ba52ce06

Use const references in dump_max_size_histogram for clarity

view details

Matthew Glazar

commit sha 16fc99503d2d4bca4f1ebab1cfd2c992d15f2036

Fix use of uninitialized variable lexer::parse_current_token reads from this->last_token_.end. this->last_token_.end is not initialized in lexer's constructor, so the read is UB. Initialize this->last_token_.end to fix this. Also, while we're here, remove the dead stores to this->last_token_.begin and this->last_last_token_end_. lexer::parse_current_token assigns to those variables already (before reading). This commit should not change behavior.

view details

push time in a day

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 4f2b9438121fe485b601b45fe7b3f9f5f7f53263

Document parts of the linter

view details

Matthew Glazar

commit sha 245951502a4e680a67f2f26e6b2cb00c34b9181c

Document parts of the parser

view details

push time in a day

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 6197d66611a7d14b7cab2bf3d6045252e6d778c3

Fix code formatting; run clang-format

view details

Eduardo Fuentes

commit sha 4455c73fdfd6b9b5e4160d73e7505101132619ba

Added --help option with strager's feedback

view details

Max Coplan

commit sha 724c09aa08209dab9d9baa921b7307a4640655c9

Adds script to run js code through 3 popular js engines Wrote this script as part of https://github.com/strager/quick-lint-js/issues/7 , and figured since I wrote this anyways, might as well share it

view details

Matthew Glazar

commit sha 007abcbe43cbcf3aee9248227f66f954db7739f5

Fix code formatting; run clang-format

view details

Matthew Glazar

commit sha 1238034f4bd6012fc3db6774784a83920d5b0df7

Fix compilation if !GTEST_HAS_DEATH_TEST On some platforms, such as emscripten, googletest does not support death tests. Fix compilation on these platforms by disabling our death tests if they are unsupported.

view details

Matthew Glazar

commit sha c4bf670e42164a58b2577a5201f9e284d6bad717

WASM: add error reporter for WASM demo Create an error_reporter class which can be called easily from JavaScript code (assuming quick-lint-js is compiled to WebAssembly). A future commit will include the JavaScript code which uses this error_reporter.

view details

Matthew Glazar

commit sha 73c07405d4189c19f80772485ae7d230d085d7e6

WASM: add Node.js CLI I want to use quick-lint-js in a web browser. Add the glue to make it possible to call quick-lint-js code from JavaScript code in Node.js. To run the code included in this commit, install the emscripten SDK [1] then run the following commands: $ emcmake cmake -S . -B build-emscripten -G Ninja $ emmake ninja -v -C build-emscripten quick-lint-js-wasm-demo $ node demo/test.mjs $ node demo/cli.mjs hello.js Future commits will integrate quick-lint-js with the browser. [1] https://emscripten.org/docs/getting_started/downloads.html

view details

Matthew Glazar

commit sha 82d963e9516cf594cd615252b788765bd6abde49

WASM: add demo web page I want to demonstrate quick-lint-js' abilities. Make a web page with a text editor which highlights errors inline. The demo page has a lot of missing features and a lot of bugs. Some day, this demo page will be improved. In order to run the demo properly, you must first build quick-lint-js with emscripten into a directory named 'build-emscripten'. The workflow will be improved in the future.

view details

Matthew Glazar

commit sha 5f16f3b7f26036d521443aa21057d0bae030f2b1

WASM: add build instructions Make the web quick-lint-js demo easier to set up by including instructions on building the demo.

view details

Matthew Glazar

commit sha 319ae46880574a3f962d89c56d12a4bfd399daf9

CI: build and test WASM demo

view details

Matthew Glazar

commit sha c04a48a6ab2ff06707fd058ec25f7e4f49903c7e

CI: add stub workflow for deploying web demo I want a workflow for deploying the web demo. I suspect GitHub only allows triggering a manual workflow if the workflow .yml file is on the default branch (master). Test this theory by copying the example workflow from GitHub's documentation on manually-triggered workflows [1]. [1] https://docs.github.com/en/actions/reference/events-that-trigger-workflows#example-workflow-configuration

view details

Matthew Glazar

commit sha d9a2378909ef55b5226989d3e90eea02a49f142b

CI: deploy web demo to GitHub Pages Create a GitHub Actions workflow which publishes a fully-built demo site to GitHub Pages. Publishing currently happens manually. Currently, you can view the site at: https://strager.github.io/quick-lint-js/

view details

Matthew Glazar

commit sha 66e89820bac9e8b06f385b2d544c73bceffb6fd7

Add missing copyright header

view details

Matthew Glazar

commit sha dc2a9e6b1b1bf0c30c65960159b0efaf6f1aeeac

CI: link GitHub pages to domain Ensure the peaceiris/actions-gh-pages@v3 action doesn't delete the `cname` file on the gh-pages branch.

view details

Matthew Glazar

commit sha b6b75cc69cea24dec5e1af55d5c30db8bf0e392b

Document parts of the linter

view details

Matthew Glazar

commit sha 595cf7f331d4580bb38d0ced12f0a84f6cc825dc

Document parts of the parser

view details

push time in a day

push eventstrager/quick-lint-js

Matthew Glazar

commit sha dc2a9e6b1b1bf0c30c65960159b0efaf6f1aeeac

CI: link GitHub pages to domain Ensure the peaceiris/actions-gh-pages@v3 action doesn't delete the `cname` file on the gh-pages branch.

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha d9a2378909ef55b5226989d3e90eea02a49f142b

CI: deploy web demo to GitHub Pages Create a GitHub Actions workflow which publishes a fully-built demo site to GitHub Pages. Publishing currently happens manually. Currently, you can view the site at: https://strager.github.io/quick-lint-js/

view details

Matthew Glazar

commit sha 66e89820bac9e8b06f385b2d544c73bceffb6fd7

Add missing copyright header

view details

Matthew Glazar

commit sha dc2a9e6b1b1bf0c30c65960159b0efaf6f1aeeac

CI: link GitHub pages to domain Ensure the peaceiris/actions-gh-pages@v3 action doesn't delete the `cname` file on the gh-pages branch.

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 007abcbe43cbcf3aee9248227f66f954db7739f5

Fix code formatting; run clang-format

view details

Matthew Glazar

commit sha e55b699d22a74140a31f9e9896657dc71ec0a391

@@@ CI: run on pull requests Only Travis CI is running on pull requests from other repositories. Run our GitHub workflows as well on pull requests to improve test coverage.

view details

push time in 2 days

push eventstrager/quick-lint-js

strager

commit sha 0a28df67b3846341bbd1916889d1eb3566400718

Create CNAME

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 66e89820bac9e8b06f385b2d544c73bceffb6fd7

Add missing copyright header

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha d9a2378909ef55b5226989d3e90eea02a49f142b

CI: deploy web demo to GitHub Pages Create a GitHub Actions workflow which publishes a fully-built demo site to GitHub Pages. Publishing currently happens manually. Currently, you can view the site at: https://strager.github.io/quick-lint-js/

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha ffb813fa10651e044d9f8787dd1468552e0d6b9d

updowbnkjnlkj;lkj

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 2489a2d0d4e2820e8ab25244a54d6da1e89e072d

updowbnkjnlkj;lkj

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 1f5dccd78a20b0980aa78e9d967ab56504d25ac1

updowbnkjnlkj;lkj

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha c5757f5c7a10f31e3043d087956b4b2ca9776bfa

updowbnkjnlkj;lkj

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha e21d4786238da9aee8679f4c0ca27565b7c10bf3

updowbnkjnlkj;lkj

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 56f2f662432e169a6514aad64c1e9b8ca5086d8f

updowbnkjnlkj;lkj

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 0331ec64694ef1acbcd5bced4a367410922ca775

updowbnkjnlkj;lkj

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha c04a48a6ab2ff06707fd058ec25f7e4f49903c7e

CI: add stub workflow for deploying web demo I want a workflow for deploying the web demo. I suspect GitHub only allows triggering a manual workflow if the workflow .yml file is on the default branch (master). Test this theory by copying the example workflow from GitHub's documentation on manually-triggered workflows [1]. [1] https://docs.github.com/en/actions/reference/events-that-trigger-workflows#example-workflow-configuration

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha c04a48a6ab2ff06707fd058ec25f7e4f49903c7e

CI: add stub workflow for deploying web demo I want a workflow for deploying the web demo. I suspect GitHub only allows triggering a manual workflow if the workflow .yml file is on the default branch (master). Test this theory by copying the example workflow from GitHub's documentation on manually-triggered workflows [1]. [1] https://docs.github.com/en/actions/reference/events-that-trigger-workflows#example-workflow-configuration

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 7eb9fc4ed0d16def832b7a8d1ebc91fb047f9d3a

@@@ upload

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha fd375ff94e0677c0d224538d5ab8f2eed579e461

@@@ upload

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 87c68a5308458c91610c43c6e85127021749530a

@@@ upload

view details

push time in 2 days

create barnchstrager/quick-lint-js

branch : web-ci

created branch time in 2 days

delete branch strager/quick-lint-js

delete branch : web-ci

delete time in 2 days

delete branch strager/quick-lint-js

delete branch : web

delete time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 1238034f4bd6012fc3db6774784a83920d5b0df7

Fix compilation if !GTEST_HAS_DEATH_TEST On some platforms, such as emscripten, googletest does not support death tests. Fix compilation on these platforms by disabling our death tests if they are unsupported.

view details

Matthew Glazar

commit sha c4bf670e42164a58b2577a5201f9e284d6bad717

WASM: add error reporter for WASM demo Create an error_reporter class which can be called easily from JavaScript code (assuming quick-lint-js is compiled to WebAssembly). A future commit will include the JavaScript code which uses this error_reporter.

view details

Matthew Glazar

commit sha 73c07405d4189c19f80772485ae7d230d085d7e6

WASM: add Node.js CLI I want to use quick-lint-js in a web browser. Add the glue to make it possible to call quick-lint-js code from JavaScript code in Node.js. To run the code included in this commit, install the emscripten SDK [1] then run the following commands: $ emcmake cmake -S . -B build-emscripten -G Ninja $ emmake ninja -v -C build-emscripten quick-lint-js-wasm-demo $ node demo/test.mjs $ node demo/cli.mjs hello.js Future commits will integrate quick-lint-js with the browser. [1] https://emscripten.org/docs/getting_started/downloads.html

view details

Matthew Glazar

commit sha 82d963e9516cf594cd615252b788765bd6abde49

WASM: add demo web page I want to demonstrate quick-lint-js' abilities. Make a web page with a text editor which highlights errors inline. The demo page has a lot of missing features and a lot of bugs. Some day, this demo page will be improved. In order to run the demo properly, you must first build quick-lint-js with emscripten into a directory named 'build-emscripten'. The workflow will be improved in the future.

view details

Matthew Glazar

commit sha 5f16f3b7f26036d521443aa21057d0bae030f2b1

WASM: add build instructions Make the web quick-lint-js demo easier to set up by including instructions on building the demo.

view details

Matthew Glazar

commit sha 319ae46880574a3f962d89c56d12a4bfd399daf9

CI: build and test WASM demo

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 319ae46880574a3f962d89c56d12a4bfd399daf9

CI: build and test WASM demo

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 0d4eeaad8f92bf0e13610bd801165361d14a979d

CI: build and test WASM demo

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 1aad524ecf26e0e16ee1783ded7fbef313d0ad2b

CI: build and test WASM demo

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha bab61314e143ea9f7b35cbadf121015ef7abe324

CI: build and test WASM demo

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 9cc751a8ede3dc7594de7a1776f1d05daa7a6e4c

wip

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 0236571a6cbbea14e1aad9b787cde920cdfe7ddc

wip

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 5f16f3b7f26036d521443aa21057d0bae030f2b1

WASM: add build instructions Make the web quick-lint-js demo easier to set up by including instructions on building the demo.

view details

Matthew Glazar

commit sha bd1abf58bdce3a8f3a4ae6ec724cb3df2d8344a7

plz

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha aa93cbb7c2fd024fec3a2517a266d3b3989f2aca

plz

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha e9db2372142f2140e0c0802e6807626680c25501

plz

view details

push time in 2 days

create barnchstrager/quick-lint-js

branch : web-ci

created branch time in 2 days

push eventstrager/quick-lint-js

Eduardo Fuentes

commit sha 4455c73fdfd6b9b5e4160d73e7505101132619ba

Added --help option with strager's feedback

view details

Max Coplan

commit sha 724c09aa08209dab9d9baa921b7307a4640655c9

Adds script to run js code through 3 popular js engines Wrote this script as part of https://github.com/strager/quick-lint-js/issues/7 , and figured since I wrote this anyways, might as well share it

view details

Matthew Glazar

commit sha 007abcbe43cbcf3aee9248227f66f954db7739f5

Fix code formatting; run clang-format

view details

Matthew Glazar

commit sha 1238034f4bd6012fc3db6774784a83920d5b0df7

Fix compilation if !GTEST_HAS_DEATH_TEST On some platforms, such as emscripten, googletest does not support death tests. Fix compilation on these platforms by disabling our death tests if they are unsupported.

view details

Matthew Glazar

commit sha c4bf670e42164a58b2577a5201f9e284d6bad717

WASM: add error reporter for WASM demo Create an error_reporter class which can be called easily from JavaScript code (assuming quick-lint-js is compiled to WebAssembly). A future commit will include the JavaScript code which uses this error_reporter.

view details

Matthew Glazar

commit sha 73c07405d4189c19f80772485ae7d230d085d7e6

WASM: add Node.js CLI I want to use quick-lint-js in a web browser. Add the glue to make it possible to call quick-lint-js code from JavaScript code in Node.js. To run the code included in this commit, install the emscripten SDK [1] then run the following commands: $ emcmake cmake -S . -B build-emscripten -G Ninja $ emmake ninja -v -C build-emscripten quick-lint-js-wasm-demo $ node demo/test.mjs $ node demo/cli.mjs hello.js Future commits will integrate quick-lint-js with the browser. [1] https://emscripten.org/docs/getting_started/downloads.html

view details

Matthew Glazar

commit sha 82d963e9516cf594cd615252b788765bd6abde49

WASM: add demo web page I want to demonstrate quick-lint-js' abilities. Make a web page with a text editor which highlights errors inline. The demo page has a lot of missing features and a lot of bugs. Some day, this demo page will be improved. In order to run the demo properly, you must first build quick-lint-js with emscripten into a directory named 'build-emscripten'. The workflow will be improved in the future.

view details

Matthew Glazar

commit sha e4eca73e988dcb4c50c586ec3ef5ab9e18e3e982

WASM: add build instructions Make the web quick-lint-js demo easier to set up by including instructions on building the demo.

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha c5e314562c435f140f197eddd524ee2fb17809ff

WASM: add build instructions Make the web quick-lint-js demo easier to set up by including instructions on building the demo.

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha e3e4e3c38f6323d36dcb3e7e336745b1c1fada96

WASM: add error reporter for WASM demo Create an error_reporter class which can be called easily from JavaScript code (assuming quick-lint-js is compiled to WebAssembly). A future commit will include the JavaScript code which uses this error_reporter.

view details

Matthew Glazar

commit sha be2752251a1d0a846ff0ba941bcf1a3257eba081

WASM: add Node.js CLI I want to use quick-lint-js in a web browser. Add the glue to make it possible to call quick-lint-js code from JavaScript code in Node.js. To run the code included in this commit, install the emscripten SDK [1] then run the following commands: $ emcmake cmake -S . -B build-emscripten -G Ninja $ emmake ninja -v -C build-emscripten quick-lint-js-wasm-demo $ node demo/test.mjs $ node demo/cli.mjs hello.js Future commits will integrate quick-lint-js with the browser. [1] https://emscripten.org/docs/getting_started/downloads.html

view details

Matthew Glazar

commit sha e4fb379ae52a64e2b183393a8701df5d4372468f

WASM: add demo web page I want to demonstrate quick-lint-js' abilities. Make a web page with a text editor which highlights errors inline. The demo page has a lot of missing features and a lot of bugs. Some day, this demo page will be improved. In order to run the demo properly, you must first build quick-lint-js with emscripten into a directory named 'build-emscripten'. The workflow will be improved in the future.

view details

push time in 2 days

push eventstrager/quick-lint-js

Brandon Conway

commit sha 08cf640ceb1107902b16c8d1863c6f4f9715f9e6

Add errors for consecutive underscores Numbers with consecutive underscores should have an error reported for each group of consecutive underscores.

view details

Dylan Elliott

commit sha 8c6bd9fc65b45df08a0f07b4584a06f078f83281

Clean-up of files generated by tests.

view details

Brandon Conway

commit sha 0c9269b832f6f0fe1d020d5d0a81edd5b70ffe8c

Simplify consecutive underscore reporting Reporting was moved to the parse_decimal_digits_and_underscores function after making it an instance method. The lexer was previously not considering the tokens after consecutive underscores to be the same token. This change also simplified the underscore reporting considerably.

view details

Brandon Conway

commit sha cf3aaf84bbf91d077e94bee21734db576a6742a4

Alphabetize error declaration

view details

Brandon Conway

commit sha 5ab4bfc55443cfaff0d141ab802331043f21132f

Update tests to use `underscores` name

view details

Brandon Conway

commit sha a28961e325fd47cab3cac1799eeb3532085b25ca

Use input rather than instantiating garbage_end

view details

Brandon Conway

commit sha 6b80b616fd6c537439ed7987e0184ac922a41251

Move instantiation to outer loop Rather than do input - 1, we are now creating garbage_begin from input minus 1.

view details

Matthew Glazar

commit sha 70ac2c5ee0078c9daaada6d16e5c8f3083b4baee

Merge "Add errors for consecutive underscores"

view details

Matthew Glazar

commit sha 6197d66611a7d14b7cab2bf3d6045252e6d778c3

Fix code formatting; run clang-format

view details

Matthew Glazar

commit sha a78a55dfa885a697a79e3ef0707a04d6049aadf3

Fix compilation if !GTEST_HAS_DEATH_TEST On some platforms, such as emscripten, googletest does not support death tests. Fix compilation on these platforms by disabling our death tests if they are unsupported.

view details

Matthew Glazar

commit sha 42262d2a4b848a708dff387fbf45caa174dc819e

WASM: add error reporter for WASM demo

view details

Matthew Glazar

commit sha 28efe3a6dc0057815214c649d283fcaec132afc9

WASM: add Node.js CLI

view details

Matthew Glazar

commit sha 7ca8a1f59282324a16eb1e0137839736a82ad43e

WASM: add demo web page

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha e143ac289113094c981329aedd7c07cd94eb0626

Fix compilation if !GTEST_HAS_DEATH_TEST On some platforms, such as emscripten, googletest does not support death tests. Fix compilation on these platforms by disabling our death tests if they are unsupported.

view details

Matthew Glazar

commit sha dd764b8b65284a15abcfbac0fe50db00ed1207d8

WASM: add error reporter for WASM demo

view details

Matthew Glazar

commit sha b5ab49b6e1acb96d66a363938ccdb458325caff9

WASM: add Node.js CLI

view details

Matthew Glazar

commit sha 7c1d378493d1ffede60ef2030ebc760b717e948e

WASM: add demo web page

view details

Matthew Glazar

commit sha 1226604f1885cb4cb1d5b582cb06dd832f209182

edgecase

view details

Matthew Glazar

commit sha e0b4c6dab047fefedf6b3102f35112efee6af6af

wip

view details

Matthew Glazar

commit sha baa2d146808b15af45ca02fadc35dcba1ece6aab

wip

view details

Matthew Glazar

commit sha e4e50f89cda51c6fdde2dc5bfc1d30c2cc5bf45b

wip

view details

Matthew Glazar

commit sha c80b2e485534aa613129db782210661b79056a93

wip

view details

push time in 2 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 007abcbe43cbcf3aee9248227f66f954db7739f5

Fix code formatting; run clang-format

view details

push time in 3 days

create barnchstrager/quick-lint-js

branch : ci

created branch time in 3 days

push eventstrager/quick-lint-js

Max Coplan

commit sha 724c09aa08209dab9d9baa921b7307a4640655c9

Adds script to run js code through 3 popular js engines Wrote this script as part of https://github.com/strager/quick-lint-js/issues/7 , and figured since I wrote this anyways, might as well share it

view details

push time in 3 days

PR merged strager/quick-lint-js

Adds script to run js code through 3 popular js engines

Wrote this 2-minute script as part of https://github.com/strager/quick-lint-js/issues/7 , and figured since I wrote this anyways, might as well share it.

But looks like Yahya doesn't like it

+22 -0

0 comment

1 changed file

vegerot

pr closed time in 3 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 44a6d0613172e4c1514038c2c484a416d0f1d113

Vim: don't mix JSON and human-readable output --output-format=vim-qflist-json prints JSON to stdout, but also prints human-readable fatal errors to stdout. If a fatal error occurs, stdout is not parsable as JSON at all. Print human-readable fatal errors to stderr instead, keeping stdout for only JSON. This commit should fix https://github.com/strager/quick-lint-js/issues/33.

view details

Matthew Glazar

commit sha da2368319f3794b0ab40fe049f785436243a0991

Remove confusing CTest instructions CTest' defaults suck. On test failure, no output is shown, making it pointless for developers. Worse, users of 'make test' or 'ninja test' can't customize the invoked CTest command, and CTest is inconvenient to call directly (because it requires a `cd` command first). Drop documentation recommending CTest. Encourage contributors to run the test executable directly.

view details

Matthew Glazar

commit sha 40c367254d08e4299c5a72b69b694a8a1527bd4b

Fix compilation if !GTEST_HAS_DEATH_TEST On some platforms, such as emscripten, googletest does not support death tests. Fix compilation on these platforms by disabling our death tests if they are unsupported.

view details

Matthew Glazar

commit sha ccb14c78833bd42ca05284cb6062c44e531652fc

@@@ emcc

view details

push time in 3 days

push eventstrager/quick-lint-js

Eduardo Fuentes

commit sha 4455c73fdfd6b9b5e4160d73e7505101132619ba

Added --help option with strager's feedback

view details

push time in 3 days

PR merged strager/quick-lint-js

Help option

Here is the implementation i did. I created a simple lambda helper to print the different options but i used const char * in order to pass the arguments, don't know if that's right. I saw that you had a padded-string helper but not sure if i should use it or this is ok.

+38 -0

1 comment

4 changed files

jeduardofr

pr closed time in 3 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 6197d66611a7d14b7cab2bf3d6045252e6d778c3

Fix code formatting; run clang-format

view details

push time in 3 days

PR merged strager/quick-lint-js

Add errors for consecutive underscores

Here is my attempt at #32.

I have one question (at least). When I use u8"123___45___67" as input, "123___", "45___", and "67" are all considered different tokens. I found this out when I was getting a test failure that I was not at token_type::end_of_file. Is this intentional, or do you want me to include an update to make it consider the whole thing one token?

On one hand, it seems like it should be one token. On the other hand, each group of consecutive underscores is currently reported as a separate linting error, with no special walking to make it happen.

I look forward to your feedback. I haven't written C++ since high school 20 years ago, so I appreciate you letting us contribute!

+64 -3

0 comment

4 changed files

brandoncc

pr closed time in 3 days

push eventstrager/quick-lint-js

Brandon Conway

commit sha 08cf640ceb1107902b16c8d1863c6f4f9715f9e6

Add errors for consecutive underscores Numbers with consecutive underscores should have an error reported for each group of consecutive underscores.

view details

Brandon Conway

commit sha 0c9269b832f6f0fe1d020d5d0a81edd5b70ffe8c

Simplify consecutive underscore reporting Reporting was moved to the parse_decimal_digits_and_underscores function after making it an instance method. The lexer was previously not considering the tokens after consecutive underscores to be the same token. This change also simplified the underscore reporting considerably.

view details

Brandon Conway

commit sha cf3aaf84bbf91d077e94bee21734db576a6742a4

Alphabetize error declaration

view details

Brandon Conway

commit sha 5ab4bfc55443cfaff0d141ab802331043f21132f

Update tests to use `underscores` name

view details

Brandon Conway

commit sha a28961e325fd47cab3cac1799eeb3532085b25ca

Use input rather than instantiating garbage_end

view details

Brandon Conway

commit sha 6b80b616fd6c537439ed7987e0184ac922a41251

Move instantiation to outer loop Rather than do input - 1, we are now creating garbage_begin from input minus 1.

view details

Matthew Glazar

commit sha 70ac2c5ee0078c9daaada6d16e5c8f3083b4baee

Merge "Add errors for consecutive underscores"

view details

push time in 3 days

push eventstrager/quick-lint-js

Brandon Conway

commit sha 08cf640ceb1107902b16c8d1863c6f4f9715f9e6

Add errors for consecutive underscores Numbers with consecutive underscores should have an error reported for each group of consecutive underscores.

view details

Matthew Glazar

commit sha da2368319f3794b0ab40fe049f785436243a0991

Remove confusing CTest instructions CTest' defaults suck. On test failure, no output is shown, making it pointless for developers. Worse, users of 'make test' or 'ninja test' can't customize the invoked CTest command, and CTest is inconvenient to call directly (because it requires a `cd` command first). Drop documentation recommending CTest. Encourage contributors to run the test executable directly.

view details

Dylan Elliott

commit sha 8c6bd9fc65b45df08a0f07b4584a06f078f83281

Clean-up of files generated by tests.

view details

Brandon Conway

commit sha 0c9269b832f6f0fe1d020d5d0a81edd5b70ffe8c

Simplify consecutive underscore reporting Reporting was moved to the parse_decimal_digits_and_underscores function after making it an instance method. The lexer was previously not considering the tokens after consecutive underscores to be the same token. This change also simplified the underscore reporting considerably.

view details

Brandon Conway

commit sha cf3aaf84bbf91d077e94bee21734db576a6742a4

Alphabetize error declaration

view details

Brandon Conway

commit sha 5ab4bfc55443cfaff0d141ab802331043f21132f

Update tests to use `underscores` name

view details

Brandon Conway

commit sha a28961e325fd47cab3cac1799eeb3532085b25ca

Use input rather than instantiating garbage_end

view details

Brandon Conway

commit sha 6b80b616fd6c537439ed7987e0184ac922a41251

Move instantiation to outer loop Rather than do input - 1, we are now creating garbage_begin from input minus 1.

view details

Matthew Glazar

commit sha 70ac2c5ee0078c9daaada6d16e5c8f3083b4baee

Merge "Add errors for consecutive underscores"

view details

push time in 3 days

push eventstrager/quick-lint-js

Dylan Elliott

commit sha 8c6bd9fc65b45df08a0f07b4584a06f078f83281

Clean-up of files generated by tests.

view details

push time in 3 days

pull request commentstrager/quick-lint-js

Help option

This PR still has conflicts with master. Do you need help resolving the conflicts?

jeduardofr

comment created time in 3 days

PullRequestReviewEvent

create barnchstrager/quick-lint-js

branch : web

created branch time in 4 days

issue commentstrager/quick-lint-js

Report error for extra underscores in number literals

In commit da2368319f3794b0ab40fe049f785436243a0991 I reworded the documentation. Hopefully it should be easier to follow.

strager

comment created time in 5 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha da2368319f3794b0ab40fe049f785436243a0991

Remove confusing CTest instructions CTest' defaults suck. On test failure, no output is shown, making it pointless for developers. Worse, users of 'make test' or 'ninja test' can't customize the invoked CTest command, and CTest is inconvenient to call directly (because it requires a `cd` command first). Drop documentation recommending CTest. Encourage contributors to run the test executable directly.

view details

push time in 5 days

issue commentstrager/quick-lint-js

Report error for extra underscores in number literals

Answered in person: Run the quick-lint-js-test executable directly to see output.

strager

comment created time in 5 days

issue commentstrager/quick-lint-js

Default loctation of qljs executable after building

Not familiar other projects' patterns, but wondering if it is normal to place the compiled target in the src directory.

There's no standardization for developers.

End users run make install to put the executable in the correct place.

Do you want to put the executable somewhere else? I don't know what you're asking for in this GitHub issue.

vegerot

comment created time in 6 days

issue commentstrager/quick-lint-js

Report error for extra underscores in number literals

For instructions on building and running the test suite, see this documentation: https://github.com/strager/quick-lint-js/blob/master/docs/BUILDING.md Specifically step 3 Run. The test suite is a single executable you can run from a command line.

I did install the googletest library

You don't need to install googletest yourself. It's packaged in quick-lint-js' repository.

I also installed https://github.com/alepez/vim-gtest in vim.

I haven't used or heard of this plugin, so I don't know if it will work with quick-lint-js. I'd run the tests without this plugin first to ensure quick-lint-js' build system is configured correctly.

strager

comment created time in 6 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 44a6d0613172e4c1514038c2c484a416d0f1d113

Vim: don't mix JSON and human-readable output --output-format=vim-qflist-json prints JSON to stdout, but also prints human-readable fatal errors to stdout. If a fatal error occurs, stdout is not parsable as JSON at all. Print human-readable fatal errors to stderr instead, keeping stdout for only JSON. This commit should fix https://github.com/strager/quick-lint-js/issues/33.

view details

push time in 6 days

issue closedstrager/quick-lint-js

Vim ALE plugin crash

The following file causes our Vim ALE integration to crash:

let = 3;
x = 4;
Error detected while processing function <SNR>67_VimCloseCallback[11]..<SNR>67_VimExitCallback[14]..<S
NR>63_HandleExit[43]..quick_lint_js_ale#parse_command_output:
line    9:
E491: json decode error at '../src/include/quick-lint-js/parse.h:177: fatal: token not implemented in
parse_and_visit_statement: equal on line 1 column 5]}'

closed time in 6 days

strager

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 190f5a1e0d19774787eacb86fc63a22ba0aae4bb

Vim: Add a Vim plugin, integrating with ALE Some Vim users use the ALE plugin to integrate linters into their editor. Provide quick-lint-js ALE integration with a Vim plugin. I didn't really test the README instructions, so there are likely mistakes.

view details

Matthew Glazar

commit sha 44a6d0613172e4c1514038c2c484a416d0f1d113

Vim: don't mix JSON and human-readable output --output-format=vim-qflist-json prints JSON to stdout, but also prints human-readable fatal errors to stdout. If a fatal error occurs, stdout is not parsable as JSON at all. Print human-readable fatal errors to stderr instead, keeping stdout for only JSON. This commit should fix https://github.com/strager/quick-lint-js/issues/33.

view details

push time in 6 days

issue openedstrager/quick-lint-js

Vim ALE plugin crash

The following file causes our Vim ALE integration to crash:

let = 3;
x = 4;
Error detected while processing function <SNR>67_VimCloseCallback[11]..<SNR>67_VimExitCallback[14]..<S
NR>63_HandleExit[43]..quick_lint_js_ale#parse_command_output:
line    9:
E491: json decode error at '../src/include/quick-lint-js/parse.h:177: fatal: token not implemented in
parse_and_visit_statement: equal on line 1 column 5]}'

created time in 7 days

delete branch strager/quick-lint-js

delete branch : vim

delete time in 7 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 190f5a1e0d19774787eacb86fc63a22ba0aae4bb

Vim: Add a Vim plugin, integrating with ALE Some Vim users use the ALE plugin to integrate linters into their editor. Provide quick-lint-js ALE integration with a Vim plugin. I didn't really test the README instructions, so there are likely mistakes.

view details

push time in 7 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 190f5a1e0d19774787eacb86fc63a22ba0aae4bb

Vim: Add a Vim plugin, integrating with ALE Some Vim users use the ALE plugin to integrate linters into their editor. Provide quick-lint-js ALE integration with a Vim plugin. I didn't really test the README instructions, so there are likely mistakes.

view details

push time in 7 days

push eventstrager/quick-lint-js

Matthew Glazar

commit sha 6f22a33d0207ef79825fcb32c5c972bb2171f394

Vim: Add a Vim plugin, integrating with ALE Some Vim users use the ALE plugin to integrate linters into their editor. Provide quick-lint-js ALE integration with a Vim plugin. I didn't really test the README instructions, so there are likely mistakes.

view details

push time in 7 days

create barnchstrager/quick-lint-js

branch : vim

created branch time in 7 days

more