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

Use files property in package.json instead of .npmignore #5320

Draft
wants to merge 1 commit into
base: watson/enable-eslint-plugin-n
Choose a base branch
from

Conversation

watson
Copy link
Collaborator

@watson watson commented Feb 26, 2025

What does this PR do?

Delete .npmignore and use the files property in package.json to select the files to include in the published npm package.

Motivation

The n/no-unpublished-require ESLint rule incorrectly flagged some require calls from the root of our project into the packages directory as referencing files not published to npm. This was a bug in that rule.

After researching how we select files to be published or not, I found that we use .npmignore as an allowlist instead of a denylist - which it is normally meant to be used as. Thinking this might somehow trigger the bug, I deleted the .npmignore file and moved the allowlist to the files property in package.json and that fixed the problem.

Plugin Checklist

Additional Notes

I've verified the package produced by npm pack between this branch and master and the the only difference, is that the package produced on this branch doesn't include packages/memwatch/package.json. However, I think that was a mistake to include in the first place, so I'd say this change is actually an improvement.

Copy link
Collaborator Author

watson commented Feb 26, 2025

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

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

Copy link

github-actions bot commented Feb 26, 2025

Overall package size

Self size: 8.82 MB
Deduped: 95.02 MB
No deduping: 95.53 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

@watson watson self-assigned this Feb 26, 2025
Copy link

codecov bot commented Feb 26, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 80.70%. Comparing base (cc489e5) to head (fa47def).

Additional details and impacted files
@@                        Coverage Diff                        @@
##           watson/enable-eslint-plugin-n    #5320      +/-   ##
=================================================================
+ Coverage                          80.56%   80.70%   +0.13%     
=================================================================
  Files                                480      485       +5     
  Lines                              21607    21811     +204     
=================================================================
+ Hits                               17408    17602     +194     
- Misses                              4199     4209      +10     

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

@datadog-datadog-prod-us1
Copy link

datadog-datadog-prod-us1 bot commented Feb 26, 2025

Datadog Report

Branch report: watson/npmignore2
Commit report: e2d2092
Test service: dd-trace-js-integration-tests

✅ 0 Failed, 667 Passed, 0 Skipped, 13m 14.38s Total Time

@pr-commenter
Copy link

pr-commenter bot commented Feb 26, 2025

Benchmarks

Benchmark execution time: 2025-02-27 08:44:53

Comparing candidate commit fa47def in PR branch watson/npmignore2 with baseline commit cc489e5 in branch watson/enable-eslint-plugin-n.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 917 metrics, 16 unstable metrics.

@watson watson force-pushed the watson/enable-eslint-plugin-n branch from 15c61fd to cc489e5 Compare February 27, 2025 08:35
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.

1 participant