RocketChat / RocketChat/Rocket.Chat.ReactNative

chore: ua-parser-js resolution conflict + dev tooling in production deps

Open
#6,981 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

type: feature
Dominant language
TypeScript
Stars
2.4k
Forks
1.5k
Avg merge
1d 18h
Merged PRs (30d)
90

Description

1. Stale ua-parser-js resolution

resolutions forces ua-parser-js@1.0.2 globally, but:

  • Root declares 1.0.33 → silently downgraded
  • expo-device requires ^0.7.33 → semver-incompatible with 1.0.2
  • Yarn warns: Resolution field "ua-parser-js@1.0.2" is incompatible with requested version "^0.7.33"
2. Dev tooling in dependencies

lint-staged and eslint-import-resolver-typescript are dev-only tools currently in dependencies. Should be in devDependencies.

Suggested Fix

  • Remove ua-parser-js from resolutions
  • Move lint-staged and eslint-import-resolver-typescript to devDependencies

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the root dependency manifest, where the ua-parser-js resolution and the lint-staged and eslint-import-resolver-typescript entries are declared. Remove the stale resolution and classify the two dev-only tools as devDependencies. Done means the install no longer reports the incompatible resolution and production dependencies no longer include those tools.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
build-system, tooling
Issue type
Refactor
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.