Skip to content

ESLint: Add eslint-plugin-unicorn#5297

Merged
BridgeAR merged 4 commits into
masterfrom
watson/eslint-plugin-unicorn
Feb 26, 2025
Merged

ESLint: Add eslint-plugin-unicorn#5297
BridgeAR merged 4 commits into
masterfrom
watson/eslint-plugin-unicorn

Conversation

@watson

@watson watson commented Feb 19, 2025

Copy link
Copy Markdown
Collaborator

What does this PR do?

Add the ESLint plugin eslint-plugin-unicorn and enable all recommended rules on our non-test source code, that doesn't currently produce any errors.

Follow up PRs will enable most of these one by one while fixing the linting errors.

Motivation

  • Some of these rules enforce a style that should technically produce faster code
  • Some of these rules enforce a style that makes it harder to write buggy code
  • Some of these rules are purely style rules, but a common style means less bikeshedding in the PR reviews, which is a win-win

Plugin Checklist

Additional Notes

@watson watson self-assigned this Feb 19, 2025

watson commented Feb 19, 2025

Copy link
Copy Markdown
Collaborator Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@github-actions

github-actions Bot commented Feb 19, 2025

Copy link
Copy Markdown
Contributor

Overall package size

Self size: 8.8 MB
Deduped: 95 MB
No deduping: 95.52 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.4.0 | 29.44 MB | 29.44 MB | | @datadog/native-appsec | 8.4.0 | 19.25 MB | 19.26 MB | | @datadog/native-iast-taint-tracking | 3.3.0 | 13.77 MB | 13.78 MB | | @datadog/pprof | 5.5.1 | 9.79 MB | 10.17 MB | | protobufjs | 7.2.5 | 2.77 MB | 5.16 MB | | @datadog/native-iast-rewriter | 2.8.0 | 2.6 MB | 2.74 MB | | @opentelemetry/core | 1.14.0 | 872.87 kB | 1.47 MB | | @datadog/native-metrics | 3.1.0 | 1.06 MB | 1.46 MB | | @opentelemetry/api | 1.8.0 | 1.21 MB | 1.21 MB | | import-in-the-middle | 1.11.2 | 112.74 kB | 835.4 kB | | source-map | 0.7.4 | 226 kB | 226 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | lru-cache | 7.18.3 | 133.92 kB | 133.92 kB | | pprof-format | 2.1.0 | 111.69 kB | 111.69 kB | | @datadog/sketches-js | 2.1.0 | 109.9 kB | 109.9 kB | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 5.3.2 | 53.63 kB | 53.63 kB | | shell-quote | 1.8.1 | 44.96 kB | 44.96 kB | | istanbul-lib-coverage | 3.2.0 | 29.34 kB | 29.34 kB | | rfdc | 1.3.1 | 25.21 kB | 25.21 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 kB | | dc-polyfill | 0.1.4 | 23.1 kB | 23.1 kB | | retry | 0.13.1 | 18.85 kB | 18.85 kB | | semifies | 1.0.0 | 15.84 kB | 15.84 kB | | jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB | | crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB | | ttl-set | 1.0.0 | 4.61 kB | 9.69 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | koalas | 1.0.2 | 6.47 kB | 6.47 kB | | module-details-from-path | 1.0.3 | 4.47 kB | 4.47 kB |

🤖 This report was automatically generated by heaviest-objects-in-the-universe

@codecov

codecov Bot commented Feb 19, 2025

Copy link
Copy Markdown

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 80.42%. Comparing base (a1cd027) to head (f78b710).
Report is 2 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #5297   +/-   ##
=======================================
  Coverage   80.42%   80.42%           
=======================================
  Files         491      491           
  Lines       21847    21847           
=======================================
  Hits        17570    17570           
  Misses       4277     4277           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@datadog-datadog-prod-us1

datadog-datadog-prod-us1 Bot commented Feb 19, 2025

Copy link
Copy Markdown

Datadog Report

Branch report: watson/eslint-plugin-unicorn
Commit report: 18f2009
Test service: dd-trace-js-integration-tests

✅ 0 Failed, 662 Passed, 0 Skipped, 10m 22.15s Total Time

@pr-commenter

pr-commenter Bot commented Feb 19, 2025

Copy link
Copy Markdown

Benchmarks

Benchmark execution time: 2025-02-26 05:41:49

Comparing candidate commit f78b710 in PR branch watson/eslint-plugin-unicorn with baseline commit a1cd027 in branch master.

Found 0 performance improvements and 5 performance regressions! Performance is the same for 910 metrics, 18 unstable metrics.

scenario:log-skip-log-22

  • 🟥 execution_time [+17.570ms; +20.675ms] or [+5.859%; +6.894%]

scenario:log-with-debug-22

  • 🟥 cpu_user_time [+13.007ms; +18.979ms] or [+5.006%; +7.305%]
  • 🟥 execution_time [+16.303ms; +19.713ms] or [+5.445%; +6.584%]

scenario:log-with-error-22

  • 🟥 cpu_user_time [+15.656ms; +21.423ms] or [+6.125%; +8.381%]
  • 🟥 execution_time [+16.911ms; +20.247ms] or [+5.733%; +6.863%]

@BridgeAR BridgeAR left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This looks great! Is anything keeping this from being a regular PR so that it can land?

@watson
watson marked this pull request as ready for review February 26, 2025 05:31
@watson
watson requested a review from a team as a code owner February 26, 2025 05:31

@BridgeAR BridgeAR left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM

@BridgeAR
BridgeAR merged commit 8e6c297 into master Feb 26, 2025
@BridgeAR
BridgeAR deleted the watson/eslint-plugin-unicorn branch February 26, 2025 08:45
@watson watson mentioned this pull request Feb 27, 2025
watson added a commit that referenced this pull request Feb 27, 2025
* ESLint: Add eslint-plugin-unicorn

* ESLint: Clean up config

* Enable recommended unicorn rules that doesn't error
watson added a commit that referenced this pull request Feb 27, 2025
* ESLint: Add eslint-plugin-unicorn

* ESLint: Clean up config

* Enable recommended unicorn rules that doesn't error
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants