Skip to content

Conversation

@jamaljsr
Copy link
Member

Summary

The tslint package has been deprecated for many years and has been replaced by typescript-eslint. This PR migrates the packages and config to the currently recommended linter.

There are no functional changes, just some updates to the code to pass the new recommended linter ruleset.

Steps to Test

  1. Run yarn install to install the new dependencies
  2. Run yarn lint to confirm all code passes the linter checks
  3. Run yarn build to ensure the build still works

Related Issues & Pull Requests

Depends on:

@jamaljsr jamaljsr self-assigned this Nov 20, 2025
@jamaljsr jamaljsr requested a review from jbrill November 24, 2025 20:05
Base automatically changed from auth-02-config to main November 25, 2025 00:55
Copy link

@jbrill jbrill left a comment

Choose a reason for hiding this comment

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

Great change! Just a few minor ts-related suggestions/thoughts

export default defineConfig(
eslint.configs.recommended,
tseslint.configs.recommended,
eslintConfigPrettier,
Copy link

Choose a reason for hiding this comment

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

This might be a good project to add eslint-plugin-security if we wanted.

Copy link
Member Author

Choose a reason for hiding this comment

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

Are there any specific rules that you think we need? I tried using this on the fully implemented POC branch and it only produced a bunch of false positives on the detect-object-injection rule, like this example which is valid. I don't really see the benefit of adding this if it's going to cause us to have to add a bunch of ignores to the codebase.

@@ -1,4 +1,4 @@
declare var global: any;
declare const global: unknown;
Copy link

Choose a reason for hiding this comment

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

Thoughts on the following block instead?

import type { WasmGlobal } from './types/lnc';
 
declare const global: typeof globalThis & {
  [key: string]: WasmGlobal | undefined;
};

export interface GoInstance {

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 causes TS errors which I couldn't figure out how to get around. I think it's creating a circular dependency on imports, but I'm not sure.

@jamaljsr
Copy link
Member Author

@jbrill Thanks for the review. I've addressed all of your feedback. This is ready for another pass.

@jamaljsr jamaljsr requested a review from jbrill November 25, 2025 17:54
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.

3 participants