Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Updating dependencies and fixes #144

Merged
merged 9 commits into from
Apr 24, 2024
Merged

fix: Updating dependencies and fixes #144

merged 9 commits into from
Apr 24, 2024

Conversation

miquelbeltran
Copy link
Contributor

@miquelbeltran miquelbeltran commented Apr 23, 2024

This PR upgrades dependencies in the root project

  • Used node-version-check to review and perform upgrades.
  • Recreated the package-lock.json to fix dependency issues.
  • fix mix up between express Request type and Raygun's RequestParams type.
  • import deepEqual from the assert package.
  • fixes in the tap test command
  • replaces the removed assert calls from the tap project with the tap equivalent.

TODO in a different PR:

  • Update dependencies for the example projects.
  • Replace tslint with eslint.
  • Setup eslint in GitHub Actions and fix all static analysis warnings.

After fixing dependencies and tests:

$ npm ci

npm WARN deprecated [email protected]: tslint-react is deprecated along with TSLint
npm WARN deprecated [email protected]: TSLint has been deprecated in favor of ESLint. Please see https://github.com/palantir/tslint/issues/4534 for more information.

> [email protected] prepare
> tsc


added 526 packages, and audited 527 packages in 3s

83 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
$ npm test


                       
  🌈 TEST COMPLETE 🌈  
                       

Asserts:  217 pass  0 fail  217 of 217 complete
Suites:     7 pass  0 fail      7 of 7 complete

# No coverage generated
# { total: 217, pass: 217 }
# time=13397.089ms

Affected issues

@miquelbeltran miquelbeltran marked this pull request as ready for review April 23, 2024 08:32
@miquelbeltran miquelbeltran changed the title chore: Updating dependencies and fixes (WIP) chore: Updating dependencies and fixes Apr 23, 2024
@miquelbeltran miquelbeltran changed the title chore: Updating dependencies and fixes fix: Updating dependencies and fixes Apr 23, 2024
@@ -3,3 +3,4 @@
yarn.lock

build/
.tap/
Copy link
Contributor Author

Choose a reason for hiding this comment

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

temporal test result files, ignored so they don't get commited

@@ -34,32 +34,32 @@
"tslint": "tslint --fix --project .",
"prettier": "prettier --write lib/*.ts test/*.js",
"prepare": "tsc",
"test": "tap --no-ts --node-arg=-r --node-arg=ts-node/register --no-coverage test/*_test.js"
Copy link
Contributor Author

Choose a reason for hiding this comment

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

--no-ts is no longer a valid param of tap. --no-coverage was replaced by --disable-coverage

@@ -12,7 +12,7 @@ test("batch transport doesn't keep processes alive", async (t) => {
return reject(error);
}

t.assert(process.exitCode === 0);
Copy link
Contributor Author

Choose a reason for hiding this comment

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

assert is no longer part of tap, replace by methods like ok() or equal()

@@ -404,7 +405,7 @@ test("custom tags", function (t) {
builder.setTags(["a", "bb", "c"]);
var message = builder.build();

tt.deepEqual(message.details.tags, ["a", "bb", "c"]);
Copy link
Contributor Author

Choose a reason for hiding this comment

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

deepEqual() is not part of tap, replaced by the deepEqual from the assert module.

@@ -133,7 +133,7 @@ class Raygun {
return this;
}

user(req?: Request): RawUserData | null {
user(req?: RequestParams): RawUserData | null {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

The original code mixed the Request type from Express with the internal RequestParams type, after upgrading dependencies the "compiler" didn't like that

Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah, that's a good change. I've seen these type overlays before with NestJS using Express internally, similar problem.

Copy link
Contributor

@TheRealAgentK TheRealAgentK left a comment

Choose a reason for hiding this comment

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

LGTM, left most of your comments unresolved (apart from one that is now #145) so that others can get information on changes.

@@ -133,7 +133,7 @@ class Raygun {
return this;
}

user(req?: Request): RawUserData | null {
user(req?: RequestParams): RawUserData | null {
Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah, that's a good change. I've seen these type overlays before with NestJS using Express internally, similar problem.

Copy link
Contributor

Choose a reason for hiding this comment

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

This file change to the lock file is always almost impossible to review in a PR, pretty much need to trust the tool chain here.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, I even had to delete and recreate it to resolve some issues.

package.json Show resolved Hide resolved
@TheRealAgentK
Copy link
Contributor

@miquelbeltran Probably a good idea to create separate issues for

TODO in a different PR:

Update dependencies for the example projects.
Replace tslint with eslint.
Setup eslint in GitHub Actions and fix all static analysis warnings.

(second one I've done already when I went through this PR's changes)

@miquelbeltran miquelbeltran changed the base branch from master to develop April 24, 2024 06:23
@miquelbeltran miquelbeltran merged commit af925a2 into MindscapeHQ:develop Apr 24, 2024
3 checks passed
@miquelbeltran miquelbeltran deleted the update-deps-20240423 branch April 24, 2024 06:29
miquelbeltran added a commit that referenced this pull request May 6, 2024
* chore: updated dependencies

* chore: update to tslint-react 5.0.0

* fix: mixup between Request and RequestParams

* fix: convert Express Request to RequestParams

* fix: recreate package-lock to fix express dependency errors

* fix: test tap command update

* fix: test asserts

* refactor: use equal instead of ok
miquelbeltran added a commit that referenced this pull request May 8, 2024
* ci: Create node.js.yml (#142)

* ci: Create node.js.yml

* Include "develop" in the branch list to run CI actions

* trigger GitHub actions.

* fix: Updating dependencies and fixes (#144)

* chore: updated dependencies

* chore: update to tslint-react 5.0.0

* fix: mixup between Request and RequestParams

* fix: convert Express Request to RequestParams

* fix: recreate package-lock to fix express dependency errors

* fix: test tap command update

* fix: test asserts

* refactor: use equal instead of ok

* Adding PR, bug report and feature request templates.

* Update pull_request_template.md

Committing @sumitramanga's suggestion

Co-authored-by: Sumitra Manga <[email protected]>

* Update .github/bug_report.md

Nice!

Co-authored-by: Sumitra Manga <[email protected]>

* Update .github/bug_report.md

Co-authored-by: Sumitra Manga <[email protected]>

* ci: #145 eslint setup (#156)

* removed tslint

* add eslint

* add default config

* setup default config and npm run command

* add command to node.js.yml

* set rules to support current codebase

* remove unused tslint.json

* include sample files in eslint command

* chore: #148 upgrade examples (#157)

* express example: upgrade dependencies and point to subfolder raygun package

* using-domains: upgrade dependencies and reference local raygun

* using-domains: upgrade dependencies and reference local raygun

* add console logs and format using spaces

* improved readme

* improved readme + replace tabs by spaces

* enforce changing API keys to run examples

* ci: add PR title checks (#167)

* ci: Update dependabot.yml (#168)

* chore(deps): bump actions/checkout from 3 to 4 (#171)

Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump actions/setup-node from 3 to 4 (#172)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: Move pr.yml to workflows (#175)

* refactor: #158 remove no-explicit-any ignore eslint rule (#159)

* removed tslint

* add eslint

* add default config

* setup default config and npm run command

* add command to node.js.yml

* set rules to support current codebase

* remove unused tslint.json

* include sample files in eslint command

* remove rule no-explicit-any

* specify type for timer

* remove any from filterKeys

* explictly declare that error can be Error, String but still accept any from the end users

* specify types in the sync worker

* improve the IndexableError type

* explain why any is allowed in CustomData

* update package lock in sample

* Update lib/raygun.sync.worker.ts

Co-authored-by: Sumitra Manga <[email protected]>

* remove empty line

---------

Co-authored-by: Sumitra Manga <[email protected]>

* refactor: #158 remove no-this-alias ignore eslint rule (#160)

* removed tslint

* add eslint

* add default config

* setup default config and npm run command

* add command to node.js.yml

* set rules to support current codebase

* remove unused tslint.json

* include sample files in eslint command

* remove rule no-explicit-any

* specify type for timer

* remove any from filterKeys

* explictly declare that error can be Error, String but still accept any from the end users

* specify types in the sync worker

* improve the IndexableError type

* explain why any is allowed in CustomData

* remove no-this-alias from eslint config

* convert to arrow function to preserve this reference

* use arrow functions to remove the need of a this alias

* define httpoptions object instead of using this alias

* update package lock in sample

* refactor: #158 fix eslint rule "no-unused-vars" (#170)

* removed tslint

* add eslint

* add default config

* setup default config and npm run command

* add command to node.js.yml

* set rules to support current codebase

* remove unused tslint.json

* include sample files in eslint command

* remove rule no-explicit-any

* specify type for timer

* remove any from filterKeys

* explictly declare that error can be Error, String but still accept any from the end users

* specify types in the sync worker

* improve the IndexableError type

* explain why any is allowed in CustomData

* remove no-this-alias from eslint config

* convert to arrow function to preserve this reference

* use arrow functions to remove the need of a this alias

* define httpoptions object instead of using this alias

* setup no-unused-vars lint rule

* remove unused var

* fixed lib/raygun.batch.ts

* fix lib/raygun.offline.ts

* cleanup lib/raygun.sync.transport.ts

* fix lib/raygun.transport.ts

* fix lib/raygun.ts

* fix @typescript-eslint/no-unused-vars

* fixs in test files

* update package lock in sample

* cleanup eslint config

* ci: #174 Prettier setup (#169)

* removed tslint

* add eslint

* add default config

* setup default config and npm run command

* add command to node.js.yml

* set rules to support current codebase

* remove unused tslint.json

* include sample files in eslint command

* remove rule no-explicit-any

* specify type for timer

* remove any from filterKeys

* explictly declare that error can be Error, String but still accept any from the end users

* specify types in the sync worker

* improve the IndexableError type

* explain why any is allowed in CustomData

* remove no-this-alias from eslint config

* convert to arrow function to preserve this reference

* use arrow functions to remove the need of a this alias

* define httpoptions object instead of using this alias

* add examples to prettier command

* add prettier job to node js ci job

* script fix

* setup no-unused-vars lint rule

* remove unused var

* fixed lib/raygun.batch.ts

* fix lib/raygun.offline.ts

* cleanup lib/raygun.sync.transport.ts

* fix lib/raygun.transport.ts

* fix lib/raygun.ts

* fix @typescript-eslint/no-unused-vars

* fixs in test files

* update package lock in sample

* cleanup eslint config

* config files

* run npm run prettier

* Update .github/workflows/node.js.yml

Co-authored-by: Sumitra Manga <[email protected]>

* fix workflow

* add comments to the package.json

* add missing files

* remove fetch-depth: 0

---------

Co-authored-by: Sumitra Manga <[email protected]>

* chore: #158 document why no-var-requires ignore is necessary (#173)

* removed tslint

* add eslint

* add default config

* setup default config and npm run command

* add command to node.js.yml

* set rules to support current codebase

* remove unused tslint.json

* include sample files in eslint command

* remove rule no-explicit-any

* specify type for timer

* remove any from filterKeys

* explictly declare that error can be Error, String but still accept any from the end users

* specify types in the sync worker

* improve the IndexableError type

* explain why any is allowed in CustomData

* remove no-this-alias from eslint config

* convert to arrow function to preserve this reference

* use arrow functions to remove the need of a this alias

* define httpoptions object instead of using this alias

* add examples to prettier command

* add prettier job to node js ci job

* script fix

* setup no-unused-vars lint rule

* remove unused var

* fixed lib/raygun.batch.ts

* fix lib/raygun.offline.ts

* cleanup lib/raygun.sync.transport.ts

* fix lib/raygun.transport.ts

* fix lib/raygun.ts

* fix @typescript-eslint/no-unused-vars

* fixs in test files

* update package lock in sample

* cleanup eslint config

* config files

* run npm run prettier

* chore: document why no-var-requires ignore is necessary

update comment

* refactor: #158 configure no-undef eslint rule  (#176)

* removed tslint

* add eslint

* add default config

* setup default config and npm run command

* add command to node.js.yml

* set rules to support current codebase

* remove unused tslint.json

* include sample files in eslint command

* remove rule no-explicit-any

* specify type for timer

* remove any from filterKeys

* explictly declare that error can be Error, String but still accept any from the end users

* specify types in the sync worker

* improve the IndexableError type

* explain why any is allowed in CustomData

* remove no-this-alias from eslint config

* convert to arrow function to preserve this reference

* use arrow functions to remove the need of a this alias

* define httpoptions object instead of using this alias

* add examples to prettier command

* add prettier job to node js ci job

* script fix

* setup no-unused-vars lint rule

* remove unused var

* fixed lib/raygun.batch.ts

* fix lib/raygun.offline.ts

* cleanup lib/raygun.sync.transport.ts

* fix lib/raygun.transport.ts

* fix lib/raygun.ts

* fix @typescript-eslint/no-unused-vars

* fixs in test files

* update package lock in sample

* cleanup eslint config

* config files

* run npm run prettier

* chore: document why no-var-requires ignore is necessary

update comment

* fix: #158 configure no-undef eslint rule

* refactor: #158 configure no-unreachable eslint rule (#177)

* refactor: #158 remove no-useless-catch eslint rule (#178)

* refactor: #158 configure no-unreachable eslint rule

* refactor: #158 remove no-useless-catch eslint rule

* chore: Prepare for Release 0.14.0 (#179)

* refactor: #158 configure no-unreachable eslint rule

* refactor: #158 remove no-useless-catch eslint rule

* set version 0.14.0

* update changelog

* Update package.json

Co-authored-by: Sumitra Manga <[email protected]>

* add Error reporting to keywords

* update license copyright year

* updated URL

* added more keywords

* moar keywords

---------

Co-authored-by: Sumitra Manga <[email protected]>

* chore: Update package-lock.json (#180)

* chore: update package-lock.json (#183)

* chore: change author name (#185)

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Kai Koenig <[email protected]>
Co-authored-by: Sumitra Manga <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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.

Dated library
2 participants