Skip to content

Enable type-aware ESLint rules and apply React/a11y recommended configs#101

Merged
d-oit merged 2 commits intomainfrom
feat/type-aware-eslint-1828195003545706842
May 4, 2026
Merged

Enable type-aware ESLint rules and apply React/a11y recommended configs#101
d-oit merged 2 commits intomainfrom
feat/type-aware-eslint-1828195003545706842

Conversation

@d-oit
Copy link
Copy Markdown
Owner

@d-oit d-oit commented May 3, 2026

Enabled type-aware ESLint rules and applied recommended configs for React and accessibility. Updated eslint.config.js to use recommendedTypeChecked and configured parserOptions to use the project's tsconfig.json. Applied eslint-plugin-react and eslint-plugin-jsx-a11y recommended flat configs. Downgraded several new rules to warn to allow for incremental fixing of existing violations, and added a lint:strict script to package.json for full enforcement. Fixed associated type errors in src/db/client.ts and src/lib/search.ts.

Fixes #95


PR created automatically by Jules for task 1828195003545706842 started by @d-oit

… configs

Enable typescript-eslint/recommendedTypeChecked, eslint-plugin-react recommended configs, and eslint-plugin-jsx-a11y recommended configs.
Adjusted parserOptions to support type information.
Downgraded several new rules to warnings to allow for incremental fixing of existing technical debt.
Updated package.json with a new lint:strict script.
Fixed type regressions in src/db/client.ts and src/lib/search.ts.

Co-authored-by: d-oit <6849456+d-oit@users.noreply.github.com>
@google-labs-jules
Copy link
Copy Markdown
Contributor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@deepsource-io
Copy link
Copy Markdown

deepsource-io Bot commented May 3, 2026

DeepSource Code Review

We reviewed changes in 47267ff...54cdab6 on this pull request. Below is the summary for the review, and you can see the individual issues we found as inline review comments.

See full review on DeepSource ↗

Important

Some issues found as part of this review are outside of the diff in this pull request and aren't shown in the inline review comments due to GitHub's API limitations. You can see those issues on the DeepSource dashboard.

PR Report Card

Overall Grade   Security  

Reliability  

Complexity  

Hygiene  

Code Review Summary

Analyzer Status Updated (UTC) Details
JavaScript May 4, 2026 6:06a.m. Review ↗
Python May 4, 2026 6:06a.m. Review ↗
Shell May 4, 2026 6:06a.m. Review ↗
SQL May 4, 2026 6:06a.m. Review ↗

Important

AI Review is run only on demand for your team. We're only showing results of static analysis review right now. To trigger AI Review, comment @deepsourcebot review on this thread.

Comment thread eslint.config.js
@@ -1,11 +1,11 @@
import js from '@eslint/js';
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Parsing error: 'import' and 'export' may appear only with 'sourceType: module'


Found non-compliant syntax. Confirm that there are no syntax errors before committing your code to a version control system.

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

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

@jules address feedback

@d-oit d-oit marked this pull request as ready for review May 4, 2026 05:11
- Enable typescript-eslint/recommendedTypeChecked
- Apply recommended flat configs for React and jsx-a11y
- Configure parserOptions for project-aware linting
- Downgrade new rules to warnings for incremental fixing
- Add lint:strict script for zero-warning enforcement
- Fix type regressions in src/db/client.ts and src/lib/search.ts
- Resolve unescaped entities and floating promise warnings

Co-authored-by: d-oit <6849456+d-oit@users.noreply.github.com>
};

fetchStats();
void fetchStats();
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Expected 'undefined' and instead saw 'void'


The void operator takes an operand and returns undefined. It can be used to ignore the value produced by an expression. However, this can lead to code that is difficult to understand and maintain. Historically, the void operator was used to get a "pure" undefined value, as the undefined variable was mutable prior to ES5.

</div>
<h3>No local matches</h3>
<p>We couldn't find anything matching "{query}" in your current library.</p>
<p>We couldn't find anything matching &quot;{query}&quot; in your current library.</p>
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

' can be escaped with '


The issue is raised because of missing or unescaped JSX escape characters. These characters would be injected as a text node in JSX statements, which might not be intentional. These won't throw any syntax or runtime errors, but the rendered output will not be the same as expected.

@d-oit d-oit merged commit a0b7498 into main May 4, 2026
20 of 21 checks passed
@d-oit d-oit deleted the feat/type-aware-eslint-1828195003545706842 branch May 4, 2026 07:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enable type-aware ESLint rules and apply React/a11y recommended configs

1 participant