Skip to content

Conversation

@OpenStaxClaude
Copy link
Contributor

Summary

Removes the deprecated TSLint package and configuration from rex-web. All TypeScript linting is now handled exclusively by ESLint.

Changes Made

  1. Removed TSLint package from devDependencies in package.json
  2. Deleted tslint.json configuration file
  3. Updated lint:typescript script to remove tslint -p ./tsconfig.json command
  4. Updated docker-compose.yml to remove tslint.json volume mount

Why This Change?

TSLint has been deprecated since 2019 and is no longer maintained. The TypeScript team officially recommends using ESLint for TypeScript projects.

Impact

  • No functionality loss: ESLint already handles all TypeScript linting via the react-app configuration
  • Cleaner build process: Removes an unnecessary linting step
  • Security improvement: Removes an unmaintained dependency
  • Faster linting: One less tool to run

Testing

The lint:typescript script now runs:

eslint src && tsc

This still provides:

  • ESLint checks for code quality and style
  • TypeScript compiler checks for type errors

Note on Inline Comments

There are TSLint disable comments in the codebase (e.g., // tslint:disable:no-console). These are harmless and will simply be ignored. They can be cleaned up in a future PR if desired, but they don't affect functionality.

Related Issues

  • CORE-1458: Modernize toolset (Epic)
  • CORE-1459: Remove TSLint (this task)

🤖 Generated with Claude Code

TSLint has been deprecated since 2019 and is no longer maintained.
All linting is now handled exclusively by ESLint.

Changes:
- Removed tslint package from devDependencies
- Removed tslint.json configuration file
- Updated lint:typescript script to remove tslint command
- Removed tslint.json mount from docker-compose.yml

ESLint continues to provide comprehensive TypeScript linting via
the react-app configuration.

Related to CORE-1458 (tooling modernization) and CORE-1459

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
@OpenStaxClaude OpenStaxClaude requested a review from a team as a code owner December 24, 2025 13:18
@TomWoodward TomWoodward temporarily deployed to rex-web-core-1459-remov-a27bcz December 24, 2025 13:18 Inactive
Adds comma-dangle and space-before-function-paren rules to .eslintrc
to maintain the code style that was previously enforced by TSLint.

Rules added:
- comma-dangle: Requires trailing commas in multiline arrays/objects,
  but not in function parameters (matches TSLint config)
- space-before-function-paren: No space before function parentheses
  (matches TSLint config)

These rules ensure consistent code formatting now that TSLint has
been removed from the project.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
@TomWoodward TomWoodward had a problem deploying to rex-web-core-1459-remov-a27bcz December 24, 2025 13:34 Failure
Removed 831 TSLint directive comments from 261 files across the
codebase, including both standalone comment lines and inline comments.

This cleanup follows the removal of the deprecated TSLint package.
These comments are now obsolete since all linting is handled by ESLint.

Changes:
- Removed standalone TSLint directive comments (e.g., // tslint:disable-next-line:no-console)
- Removed inline TSLint comments while preserving code (e.g., code; // tslint:disable-line:rule)
- Updated script/add-page-map.ts to not generate TSLint comments in output files

All code logic remains unchanged - only comments were removed.

Related to CORE-1459

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
@TomWoodward TomWoodward had a problem deploying to rex-web-core-1459-remov-a27bcz December 24, 2025 14:08 Failure
@TomWoodward TomWoodward temporarily deployed to rex-web-core-1459-remov-a27bcz December 24, 2025 14:10 Inactive
@TomWoodward TomWoodward temporarily deployed to rex-web-core-1459-remov-a27bcz December 24, 2025 15:19 Inactive
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.

4 participants