-
-
Notifications
You must be signed in to change notification settings - Fork 22
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
Lint typings field file existence #60
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
bluwy
approved these changes
Aug 19, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great. Thanks!
kodiakhq bot
referenced
this pull request
in ascorbic/unpic-img
Sep 3, 2023
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [publint](https://publint.dev) ([source](https://togithub.com/bluwy/publint)) | [`^0.1.12` -> `^0.2.0`](https://renovatebot.com/diffs/npm/publint/0.1.12/0.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/publint/0.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/publint/0.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/publint/0.1.12/0.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/publint/0.1.12/0.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>bluwy/publint (publint)</summary> ### [`v0.2.2`](https://togithub.com/bluwy/publint/releases/tag/v0.2.2) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.1...v0.2.2) ##### Features - Lint `"typings"` field file existence ([https://github.com/bluwy/publint/pull/60](https://togithub.com/bluwy/publint/pull/60)) - Check packed files when globbing exports locally ([https://github.com/bluwy/publint/issues/61](https://togithub.com/bluwy/publint/issues/61)) - Improve `"browser"` field suggestion for using `"imports"` and `"exports"` fields instead ([https://github.com/bluwy/publint/pull/59](https://togithub.com/bluwy/publint/pull/59)) ##### Bug fixes - Lower deprecated trailing slash glob syntax as `suggestion` instead of a `warning` when it's used for backwards compatibility only ([https://github.com/bluwy/publint/issues/62](https://togithub.com/bluwy/publint/issues/62)) - Suppress invalid globbed file format if has correct adjacent file - Fix extension replacement in messages - Improve invalid types format message and docs ##### Site - Fix invalid package name not found message - Highlight code blocks in rules page ##### New Contributors - [@​btea](https://togithub.com/btea) made their first contribution in [https://github.com/bluwy/publint/pull/64](https://togithub.com/bluwy/publint/pull/64) **Full Changelog**: bluwy/publint@v0.2.1...v0.2.2 ### [`v0.2.1`](https://togithub.com/bluwy/publint/releases/tag/v0.2.1) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.0...v0.2.1) ##### Bug fixes - Fix `"types"` condition check with `"exports"` array format - Disable packed files search when a `vfs` is passed - Fix `"browser"` field file existence extensions check - Fix file existence check with trailing slash ##### Site - Site-wide design touch-up - New "Popular packages" section - New package version select switcher ([https://github.com/bluwy/publint/issues/56](https://togithub.com/bluwy/publint/issues/56)) - New navigation header design - Update bottom documentation for clarity - Improve repo URL parsing ##### New Contributors - [@​lachlancollins](https://togithub.com/lachlancollins) made their first contribution in [https://github.com/bluwy/publint/pull/53](https://togithub.com/bluwy/publint/pull/53) **Full Changelog**: bluwy/publint@v0.2.0...v0.2.1 ### [`v0.2.0`](https://togithub.com/bluwy/publint/releases/tag/v0.2.0) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.1.16...v0.2.0) ##### Breaking changes **Note:** If you're using `publint` from the CLI, these breaking changes should not affect you. - `publint()` now returns an object with `messages` instead of the `messages` array directly. This makes way for future APIs where `publint` will return more information than just `messages`. ```diff - const messages = await publint() + const { messages } = await publint() ``` - Rename `printMessage` API to `formatMessage` to better reflect it's intent. ([https://github.com/bluwy/publint/issues/43](https://togithub.com/bluwy/publint/issues/43)) ```diff - import { printMessage } from "publint/utils" + import { formatMessage } from "publint/utils" const { messages } = await publint() for (const message of messages) { - console.log(printMessage(message)) + console.log(formatMessage(message)) } ``` - Remove `filePath` `arg` for the `FILE_DOES_NOT_EXIST` message. ```diff import type { Message } from "publint" import { getPkgPathValue } from "publint/utils" function messageToString(message: Message, pkg: Record<string, any>) { switch (message.code) { case "FILE_DOES_NOT_EXIST": - return `The file "${message.args.filePath}" does not exist.` + return `The file "${getPkgPathValue(pkg, message.path)}" does not exist.` } } ``` - Remove the `import` condition for the `publint` package. This provides a better error message if you call `require("publint")`. ##### Features - Improve warnings when the exported `"types"` condition has an invalid format in ESM or CJS. This ensures your library's types will work in both environments when dual publishing. ([https://github.com/bluwy/publint/issues/46](https://togithub.com/bluwy/publint/issues/46)) It affects packages commonly packaged like: ```json { "exports": { ".": { "types": "./index.d.ts", <-- only works in CJS "import": "./index.mjs", "require": "./index.js", } } } ``` For more information, visit the [rules documentation](https://publint.dev/rules#export_types_invalid_format). This feature is inspired by https://arethetypeswrong.github.io. ##### Bug fixes - Suppress warnings when exported JS files using the `"exports"` field have adjacent `.d.ts` files and no `"types"` condition. This follows TypeScript's resolution algorithm. For more information, visit the [rules documentation](https://publint.dev/rules#types_not_exported). ([https://github.com/bluwy/publint/issues/46](https://togithub.com/bluwy/publint/issues/46)) **Full Changelog**: bluwy/publint@v0.1.16...v0.2.0 ### [`v0.1.16`](https://togithub.com/bluwy/publint/releases/tag/v0.1.16) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.1.15...v0.1.16) ##### Bug fixes - Don't enforce the `module` condition to precede `import` per se. It is now ensured to precede `require` only as otherwise the condition isn't effective ([https://github.com/bluwy/publint/pull/50](https://togithub.com/bluwy/publint/pull/50)) **Full Changelog**: bluwy/publint@v0.1.15...v0.1.16 ### [`v0.1.15`](https://togithub.com/bluwy/publint/releases/tag/v0.1.15) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.1.14...v0.1.15) ##### Bug fixes - Fix "precede" typo **Full Changelog**: bluwy/publint@v0.1.14...v0.1.15 ### [`v0.1.14`](https://togithub.com/bluwy/publint/releases/tag/v0.1.14) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.1.13...v0.1.14) ##### Features - Check that the `"module"` condition precedes the `"import"` and `"require"` in exports conditions ([https://github.com/bluwy/publint/pull/49](https://togithub.com/bluwy/publint/pull/49)) ##### Bug fixes - Skip linting flow files - Improve exports array logging format ##### Site - Fix `isPathDir` check ##### New Contributors - [@​nvie](https://togithub.com/nvie) made their first contribution in [https://github.com/bluwy/publint/pull/49](https://togithub.com/bluwy/publint/pull/49) **Full Changelog**: bluwy/publint@v0.1.13...v0.1.14 ### [`v0.1.13`](https://togithub.com/bluwy/publint/releases/tag/v0.1.13) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.1.12...v0.1.13) ##### Bug fixes - Fix `"types"` condition-is-first check when there's preceding conditions that has it's `"types"` condition too. This is common for dual ESM-CJS packages where `"types"` are located within `"require"` and `"import"` conditions. ([https://github.com/bluwy/publint/issues/47](https://togithub.com/bluwy/publint/issues/47)) - Temporarily skip `"types"` condition check when `"typesVersions"` key exist. The `"typesVersions"` key requires a complex resolution algorithm that is harder to implement, so a quick patch is applied to remove the false errors for now. ([https://github.com/bluwy/publint/issues/42](https://togithub.com/bluwy/publint/issues/42)) **Full Changelog**: bluwy/publint@v0.1.12...v0.1.13 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 9pm on sunday" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/ascorbic/unpic-img). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi43OC44IiwidXBkYXRlZEluVmVyIjoiMzYuNzguOCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
renovate bot
referenced
this pull request
in tnez/starter-npm-pkg
Sep 4, 2023
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@edge-runtime/jest-environment](https://edge-runtime.vercel.app/packages/jest-environment) ([source](https://togithub.com/vercel/edge-runtime)) | [`2.2.5` -> `2.3.0`](https://renovatebot.com/diffs/npm/@edge-runtime%2fjest-environment/2.2.5/2.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@edge-runtime%2fjest-environment/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@edge-runtime%2fjest-environment/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@edge-runtime%2fjest-environment/2.2.5/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@edge-runtime%2fjest-environment/2.2.5/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@edge-runtime/types](https://edge-runtime.vercel.app/packages/types) ([source](https://togithub.com/vercel/edge-runtime)) | [`2.1.5` -> `2.2.0`](https://renovatebot.com/diffs/npm/@edge-runtime%2ftypes/2.1.5/2.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@edge-runtime%2ftypes/2.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@edge-runtime%2ftypes/2.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@edge-runtime%2ftypes/2.1.5/2.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@edge-runtime%2ftypes/2.1.5/2.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@types/jest](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) | [`29.5.3` -> `29.5.4`](https://renovatebot.com/diffs/npm/@types%2fjest/29.5.3/29.5.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fjest/29.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fjest/29.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fjest/29.5.3/29.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fjest/29.5.3/29.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) | [`20.5.1` -> `20.5.9`](https://renovatebot.com/diffs/npm/@types%2fnode/20.5.1/20.5.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.5.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.5.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.5.1/20.5.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.5.1/20.5.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [eslint](https://eslint.org) ([source](https://togithub.com/eslint/eslint)) | [`8.47.0` -> `8.48.0`](https://renovatebot.com/diffs/npm/eslint/8.47.0/8.48.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/eslint/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint/8.47.0/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint/8.47.0/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [jest](https://jestjs.io/) ([source](https://togithub.com/jestjs/jest)) | [`29.6.2` -> `29.6.4`](https://renovatebot.com/diffs/npm/jest/29.6.2/29.6.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jest/29.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jest/29.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jest/29.6.2/29.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jest/29.6.2/29.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [lint-staged](https://togithub.com/okonet/lint-staged) | [`14.0.0` -> `14.0.1`](https://renovatebot.com/diffs/npm/lint-staged/14.0.0/14.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lint-staged/14.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lint-staged/14.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lint-staged/14.0.0/14.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lint-staged/14.0.0/14.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [prettier](https://prettier.io) ([source](https://togithub.com/prettier/prettier)) | [`3.0.2` -> `3.0.3`](https://renovatebot.com/diffs/npm/prettier/3.0.2/3.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/prettier/3.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/prettier/3.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/prettier/3.0.2/3.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/prettier/3.0.2/3.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [publint](https://publint.dev) ([source](https://togithub.com/bluwy/publint)) | [`0.2.1` -> `0.2.2`](https://renovatebot.com/diffs/npm/publint/0.2.1/0.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/publint/0.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/publint/0.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/publint/0.2.1/0.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/publint/0.2.1/0.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [typescript](https://www.typescriptlang.org/) ([source](https://togithub.com/Microsoft/TypeScript)) | [`5.1.6` -> `5.2.2`](https://renovatebot.com/diffs/npm/typescript/5.1.6/5.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript/5.1.6/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/5.1.6/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>vercel/edge-runtime (@​edge-runtime/jest-environment)</summary> ### [`v2.3.0`](https://togithub.com/vercel/edge-runtime/blob/HEAD/packages/jest-environment/CHANGELOG.md#230) [Compare Source](https://togithub.com/vercel/edge-runtime/compare/@edge-runtime/jest-environment@2.2.5...@edge-runtime/jest-environment@2.3.0) ##### Minor Changes - drop node14 support ([`7cc92cc`](https://togithub.com/vercel/edge-runtime/commit/7cc92ccd190c2d96483202d9f2e1a523778d1f48)) ##### Patch Changes - Updated dependencies \[[`7cc92cc`](https://togithub.com/vercel/edge-runtime/commit/7cc92ccd190c2d96483202d9f2e1a523778d1f48)]: - [@​edge-runtime/vm](https://togithub.com/edge-runtime/vm)[@​3](https://togithub.com/3).1.0 </details> <details> <summary>vercel/edge-runtime (@​edge-runtime/types)</summary> ### [`v2.2.0`](https://togithub.com/vercel/edge-runtime/blob/HEAD/packages/types/CHANGELOG.md#220) [Compare Source](https://togithub.com/vercel/edge-runtime/compare/@edge-runtime/types@2.1.5...@edge-runtime/types@2.2.0) ##### Minor Changes - drop node14 support ([`7cc92cc`](https://togithub.com/vercel/edge-runtime/commit/7cc92ccd190c2d96483202d9f2e1a523778d1f48)) ##### Patch Changes - Updated dependencies \[[`7cc92cc`](https://togithub.com/vercel/edge-runtime/commit/7cc92ccd190c2d96483202d9f2e1a523778d1f48)]: - [@​edge-runtime/primitives](https://togithub.com/edge-runtime/primitives)[@​3](https://togithub.com/3).1.0 </details> <details> <summary>eslint/eslint (eslint)</summary> ### [`v8.48.0`](https://togithub.com/eslint/eslint/releases/tag/v8.48.0) [Compare Source](https://togithub.com/eslint/eslint/compare/v8.47.0...v8.48.0) #### Features - [`1fbb3b0`](https://togithub.com/eslint/eslint/commit/1fbb3b0b477c814c0d179564fe495f4c50a451e9) feat: correct update direction in `for-direction` ([#​17483](https://togithub.com/eslint/eslint/issues/17483)) (Francesco Trotta) - [`d73fbf2`](https://togithub.com/eslint/eslint/commit/d73fbf2228631d6c468cd24710e2579fe6cb70fd) feat: rule tester do not create empty valid or invalid test suites ([#​17475](https://togithub.com/eslint/eslint/issues/17475)) (fnx) - [`ee2f718`](https://togithub.com/eslint/eslint/commit/ee2f718188d32e9888b1932fe6b9bd2a62c529a4) feat: Allow `void` in rule `no-promise-executor-return` ([#​17282](https://togithub.com/eslint/eslint/issues/17282)) (nopeless) #### Bug Fixes - [`7234f6a`](https://togithub.com/eslint/eslint/commit/7234f6a706a209aa2d79259110328752e9ae3928) fix: update RuleTester JSDoc and deprecations ([#​17496](https://togithub.com/eslint/eslint/issues/17496)) (Jonas Berlin) #### Documentation - [`7a51d77`](https://togithub.com/eslint/eslint/commit/7a51d77c0a066e461ff288568fdfee0e9539a2b5) docs: no-param-reassign mention strict mode ([#​17494](https://togithub.com/eslint/eslint/issues/17494)) (Stephen Hardy) - [`9cd7ac2`](https://togithub.com/eslint/eslint/commit/9cd7ac2fdb6b1d71a9fb1b8297a478cafacbdafd) docs: add `fetch` script to package.json conventions ([#​17459](https://togithub.com/eslint/eslint/issues/17459)) (Nitin Kumar) - [`cab21e6`](https://togithub.com/eslint/eslint/commit/cab21e64a8f79779c641178f825945958667c6e4) docs: advice for inline disabling of rules ([#​17458](https://togithub.com/eslint/eslint/issues/17458)) (Ashish Yadav) - [`056499d`](https://togithub.com/eslint/eslint/commit/056499de31a139dbc965d18652b0b520e11b408d) docs: fix example of flat config from plugin ([#​17482](https://togithub.com/eslint/eslint/issues/17482)) (Francesco Trotta) - [`9e9edf9`](https://togithub.com/eslint/eslint/commit/9e9edf93ecfa0658e8b79e71bc98530ade150081) docs: update documentation URL in error message ([#​17465](https://togithub.com/eslint/eslint/issues/17465)) (Nitin Kumar) #### Chores - [`8dd3cec`](https://togithub.com/eslint/eslint/commit/8dd3cec90c97ed97d243a83b87ad4ea9e6b4781a) chore: upgrade [@​eslint/js](https://togithub.com/eslint/js)[@​8](https://togithub.com/8).48.0 ([#​17501](https://togithub.com/eslint/eslint/issues/17501)) (Milos Djermanovic) - [`6d0496e`](https://togithub.com/eslint/eslint/commit/6d0496e9476fb2210fba0a3d541df8c052ecf73a) chore: package.json update for [@​eslint/js](https://togithub.com/eslint/js) release (ESLint Jenkins) - [`9d4216d`](https://togithub.com/eslint/eslint/commit/9d4216d638d39844decffac33ee3d5a47413c80a) chore: Refactor and document CodePathSegment ([#​17474](https://togithub.com/eslint/eslint/issues/17474)) (Nicholas C. Zakas) </details> <details> <summary>jestjs/jest (jest)</summary> ### [`v29.6.4`](https://togithub.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2964) [Compare Source](https://togithub.com/jestjs/jest/compare/v29.6.3...v29.6.4) ##### Fixes - `[jest-core]` Fix typo in `scheduleAndRun` performance marker ([#​14434](https://togithub.com/jestjs/jest/pull/14434)) - `[jest-environment-node]` Make sure `atob` and `btoa` are writeable in Node 20 ([#​14446](https://togithub.com/jestjs/jest/pull/14446)) - `[jest-worker]` Additional error wrapper for `parentPort.postMessage` to fix unhandled `DataCloneError`. ([#​14437](https://togithub.com/jestjs/jest/pull/14437)) ### [`v29.6.3`](https://togithub.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2963) [Compare Source](https://togithub.com/jestjs/jest/compare/v29.6.2...v29.6.3) ##### Fixes - `[expect, @​jest/expect-utils]` `ObjectContaining` support `sumbol` as key ([#​14414](https://togithub.com/jestjs/jest/pull/14414)) - `[expect]` Remove `@types/node` from dependencies ([#​14385](https://togithub.com/jestjs/jest/pull/14385)) - `[jest-core]` Use workers in watch mode by default to avoid crashes ([#​14059](https://togithub.com/facebook/jest/pull/14059) & [#​14085](https://togithub.com/facebook/jest/pull/14085)). - `[jest-reporters]` Update `istanbul-lib-instrument` dependency to v6. ([#​14401](https://togithub.com/jestjs/jest/pull/14401)) - `[jest-mock]` Revert [#​13692](https://togithub.com/jestjs/jest/pull/13692) as it was a breaking change ([#​14429](https://togithub.com/jestjs/jest/pull/14429)) - `[jest-mock]` Revert [#​13866](https://togithub.com/jestjs/jest/pull/13866) as it was a breaking change ([#​14429](https://togithub.com/jestjs/jest/pull/14429)) - `[jest-mock]` Revert [#​13867](https://togithub.com/jestjs/jest/pull/13867) as it was a breaking change ([#​14429](https://togithub.com/jestjs/jest/pull/14429)) - `[@jest/reporters]` Marks Reporter's hooks as optional ([#​14433](https://togithub.com/jestjs/jest/pull/14433)) - `[jest-runtime]` Fix dynamic ESM import module bug when loaded module through `jest.isolateModulesAsync` ([#​14397](https://togithub.com/jestjs/jest/pull/14397)) ##### Chore & Maintenance - `[jest-changed-files, jest-circus, jest-console, @​jest/core, @​jest/runtime, @​jest/transform]` Use `invariant` and `notEmpty` from `jest-util` rather than own internal ([#​14366](https://togithub.com/jestjs/jest/pull/14366)) </details> <details> <summary>okonet/lint-staged (lint-staged)</summary> ### [`v14.0.1`](https://togithub.com/okonet/lint-staged/releases/tag/v14.0.1) [Compare Source](https://togithub.com/okonet/lint-staged/compare/v14.0.0...v14.0.1) ##### Bug Fixes - fix reading config from stdin, introduced in v14.0.0 ([#​1317](https://togithub.com/okonet/lint-staged/issues/1317)) ([fc3bfea](https://togithub.com/okonet/lint-staged/commit/fc3bfeabae29b65f99b6911a989b0b41d3d1128e)) </details> <details> <summary>prettier/prettier (prettier)</summary> ### [`v3.0.3`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#303) [Compare Source](https://togithub.com/prettier/prettier/compare/3.0.2...3.0.3) [diff](https://togithub.com/prettier/prettier/compare/3.0.2...3.0.3) ##### Add `preferUnplugged: true` to `package.json` ([#​15169](https://togithub.com/prettier/prettier/pull/15169) by [@​fisker](https://togithub.com/fisker) and [@​so1ve](https://togithub.com/so1ve)) Prettier v3 uses dynamic imports, user [will need to unplug Prettier](https://togithub.com/yarnpkg/berry/pull/5411#issuecomment-1523502224) when Yarn's PnP mode is enabled, add [`preferUnplugged: true`](https://yarnpkg.com/configuration/manifest#preferUnplugged) to `package.json`, so Yarn will install Prettier as unplug by default. ##### Support shared config that forbids `require()` ([#​15233](https://togithub.com/prettier/prettier/pull/15233) by [@​fisker](https://togithub.com/fisker)) If an external shared config package is used, and the package `exports` don't have `require` or `default` export. In Prettier 3.0.2 Prettier fails when attempt to `require()` the package, and throws an error. ```text Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: No "exports" main defined in <packageName>/package.json ``` ##### Allow argument of `require()` to break ([#​15256](https://togithub.com/prettier/prettier/pull/15256) by [@​fisker](https://togithub.com/fisker)) <!-- prettier-ignore --> ```jsx // Input const plugin = require( global.STANDALONE ? path.join(__dirname, "../standalone.js") : path.join(__dirname, "..") ); // Prettier 3.0.2 const plugin = require(global.STANDALONE ? path.join(__dirname, "../standalone.js") : path.join(__dirname, "..")); // Prettier 3.0.3 const plugin = require( global.STANDALONE ? path.join(__dirname, "../standalone.js") : path.join(__dirname, "..") ); ``` ##### Do not print trailing commas in arrow function type parameter lists in `ts` code blocks ([#​15286](https://togithub.com/prettier/prettier/pull/15286) by [@​sosukesuzuki](https://togithub.com/sosukesuzuki)) <!-- prettier-ignore --> ````md <!-- Input --> ```ts const foo = <T>() => {} ``` <!-- Prettier 3.0.2 --> ```ts const foo = <T,>() => {} ``` <!-- Prettier 3.0.3 --> ```ts const foo = <T>() => {} ``` ```` ##### Support TypeScript 5.2 `using` / `await using` declaration ([#​15321](https://togithub.com/prettier/prettier/pull/15321) by [@​sosukesuzuki](https://togithub.com/sosukesuzuki)) Support for the upcoming Explicit Resource Management feature in ECMAScript. [`using` / `await using` declaration](https://devblogs.microsoft.com/typescript/announcing-typescript-5-2/#using-declarations-and-explicit-resource-management) <!-- prettier-ignore --> ```tsx { using foo = new Foo(); await using bar = new Bar(); } ``` </details> <details> <summary>bluwy/publint (publint)</summary> ### [`v0.2.2`](https://togithub.com/bluwy/publint/releases/tag/v0.2.2) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.1...v0.2.2) ##### Features - Lint `"typings"` field file existence ([https://github.com/bluwy/publint/pull/60](https://togithub.com/bluwy/publint/pull/60)) - Check packed files when globbing exports locally ([https://github.com/bluwy/publint/issues/61](https://togithub.com/bluwy/publint/issues/61)) - Improve `"browser"` field suggestion for using `"imports"` and `"exports"` fields instead ([https://github.com/bluwy/publint/pull/59](https://togithub.com/bluwy/publint/pull/59)) ##### Bug fixes - Lower deprecated trailing slash glob syntax as `suggestion` instead of a `warning` when it's used for backwards compatibility only ([https://github.com/bluwy/publint/issues/62](https://togithub.com/bluwy/publint/issues/62)) - Suppress invalid globbed file format if has correct adjacent file - Fix extension replacement in messages - Improve invalid types format message and docs ##### Site - Fix invalid package name not found message - Highlight code blocks in rules page ##### New Contributors - [@​btea](https://togithub.com/btea) made their first contribution in [https://github.com/bluwy/publint/pull/64](https://togithub.com/bluwy/publint/pull/64) **Full Changelog**: bluwy/publint@v0.2.1...v0.2.2 </details> <details> <summary>Microsoft/TypeScript (typescript)</summary> ### [`v5.2.2`](https://togithub.com/microsoft/TypeScript/releases/tag/v5.2.2): TypeScript 5.2 [Compare Source](https://togithub.com/Microsoft/TypeScript/compare/v5.1.6...v5.2.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-2/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.2.0 (Beta)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.2.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.2.1 (RC)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.2.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.2.2 (Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.2.2%22+is%3Aclosed+). Downloads are available on: - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - "before 4am on Monday" (UTC). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/tnez/starter-npm-pkg). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi40My4yIiwidXBkYXRlZEluVmVyIjoiMzYuNjguMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
tnez
referenced
this pull request
in tnez/actions
Dec 30, 2023
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [publint](https://publint.dev) ([source](https://togithub.com/bluwy/publint/tree/HEAD/pkg)) | [`0.1.16` -> `0.2.7`](https://renovatebot.com/diffs/npm/publint/0.1.16/0.2.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/publint/0.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/publint/0.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/publint/0.1.16/0.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/publint/0.1.16/0.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>bluwy/publint (publint)</summary> ### [`v0.2.7`](https://togithub.com/bluwy/publint/releases/tag/v0.2.7) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.6...v0.2.7) ##### Features - If the library exports from both `"main"`/`"module"` and `"exports"` fields, but the `"exports"` field doesn't export the root entrypoint, warn about the inconsistency. When `"exports"` is defined, it takes the highest priority, so all the library's entrypoint (root and deep) needs to be specified here. ([https://github.com/bluwy/publint/issues/88](https://togithub.com/bluwy/publint/issues/88)) - Suggest using the `"type"` field. In [Node.js v20.10.0](https://nodejs.org/en/blog/release/v20.10.0), it introduces a new `--experimental-default-type` flag to flip the default module system from "CJS-as-default" to "ESM-as-default". It's recommended for libraries to specify the `"type"` field explicitly to prevent CJS files from being incorrectly interpreted as ESM. This suggestion helps push towards a better ESM experience in the future. ([https://github.com/bluwy/publint/issues/83](https://togithub.com/bluwy/publint/issues/83)) **Full Changelog**: bluwy/publint@v0.2.6...v0.2.7 ### [`v0.2.6`](https://togithub.com/bluwy/publint/releases/tag/v0.2.6) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.5...v0.2.6) ##### Features - Warn if the deprecated `jsnext:main` or `jsnext` fields are used by [@​sapphi-red](https://togithub.com/sapphi-red) ([https://github.com/bluwy/publint/pull/85](https://togithub.com/bluwy/publint/pull/85)) ##### Site - Fix command on site by [@​wooorm](https://togithub.com/wooorm) ([https://github.com/bluwy/publint/pull/82](https://togithub.com/bluwy/publint/pull/82)) ##### New Contributors - [@​wooorm](https://togithub.com/wooorm) made their first contribution in [https://github.com/bluwy/publint/pull/82](https://togithub.com/bluwy/publint/pull/82) **Full Changelog**: bluwy/publint@v0.2.5...v0.2.6 ### [`v0.2.5`](https://togithub.com/bluwy/publint/releases/tag/v0.2.5) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.4...v0.2.5) ##### Bug fixes - Fix missing published files check when resolving a path with fallback extensions ([https://github.com/bluwy/publint/issues/79](https://togithub.com/bluwy/publint/issues/79)) **Full Changelog**: bluwy/publint@v0.2.4...v0.2.5 ### [`v0.2.4`](https://togithub.com/bluwy/publint/releases/tag/v0.2.4) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.3...v0.2.4) ##### Bug fixes - Check for packed files locally before providing the `"files"` suggestion. An incorrect suggestion was given when you're using `.npmignore` or `.gitignore` to limit publishing certain files. ##### Site - Fix rules page mobile responsiveness **Full Changelog**: bluwy/publint@v0.2.3...v0.2.4 ### [`v0.2.3`](https://togithub.com/bluwy/publint/releases/tag/v0.2.3) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.2...v0.2.3) ##### Features - Error if `package.json` has fields with invalid string, boolean, object, etc type ([https://github.com/bluwy/publint/issues/73](https://togithub.com/bluwy/publint/issues/73)) - Suggest using the `"files"` field if detected test or config files are published ([https://github.com/bluwy/publint/issues/77](https://togithub.com/bluwy/publint/issues/77)) - Warn on `"exports"` and `"browser"` object conflict for browser-ish environments ([https://github.com/bluwy/publint/issues/58](https://togithub.com/bluwy/publint/issues/58)) For example, given this setup: ```json { "browser": { "./lib.server.js": "./lib.browser.js" }, "exports": { ".": { "worker": "./lib.server.js", "browser": "./lib.browser.js", "default": "./lib.server.js" } } } ``` When matching the `"worker"` condition, it will resolve to `"./lib.server.js"` which is intended to work in a worker environment. However, the `"browser"` field also has a matching mapping for `"./lib.server.js"`, causing the final resolved path to be `"./lib.browser.js"`. This is usually not intended and causes the wrong file to be loaded. - Error on invalid JSX extensions, such as `.cjsx`, `.mjsx`, `.ctsx`, and `.mtsx` ([https://github.com/bluwy/publint/issues/76](https://togithub.com/bluwy/publint/issues/76)) These extensions are usually mistaken as ESM and CJS variants of JSX, which is not valid. Instead they should be written in ESM with the `.jsx` extension instead. ##### Bug fixes - Skip file format checks only for globbed files - Fix `"main"` field with ESM content detection ([https://github.com/bluwy/publint/issues/75](https://togithub.com/bluwy/publint/issues/75)) ##### Site - Add sidebar menu to rules page by [@​btea](https://togithub.com/btea) ([https://github.com/bluwy/publint/pull/65](https://togithub.com/bluwy/publint/pull/65)) - Quickly scroll to the prompt information location by [@​btea](https://togithub.com/btea) ([https://github.com/bluwy/publint/pull/68](https://togithub.com/bluwy/publint/pull/68)) - Fix version switch title not updated by [@​btea](https://togithub.com/btea) ([https://github.com/bluwy/publint/pull/72](https://togithub.com/bluwy/publint/pull/72)) - Improve documentation for `"types"` format - Fix message border styles - Fix docs list missing dot **Full Changelog**: bluwy/publint@v0.2.2...v0.2.3 ### [`v0.2.2`](https://togithub.com/bluwy/publint/releases/tag/v0.2.2) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.1...v0.2.2) ##### Features - Lint `"typings"` field file existence ([https://github.com/bluwy/publint/pull/60](https://togithub.com/bluwy/publint/pull/60)) - Check packed files when globbing exports locally ([https://github.com/bluwy/publint/issues/61](https://togithub.com/bluwy/publint/issues/61)) - Improve `"browser"` field suggestion for using `"imports"` and `"exports"` fields instead ([https://github.com/bluwy/publint/pull/59](https://togithub.com/bluwy/publint/pull/59)) ##### Bug fixes - Lower deprecated trailing slash glob syntax as `suggestion` instead of a `warning` when it's used for backwards compatibility only ([https://github.com/bluwy/publint/issues/62](https://togithub.com/bluwy/publint/issues/62)) - Suppress invalid globbed file format if has correct adjacent file - Fix extension replacement in messages - Improve invalid types format message and docs ##### Site - Fix invalid package name not found message - Highlight code blocks in rules page ##### New Contributors - [@​btea](https://togithub.com/btea) made their first contribution in [https://github.com/bluwy/publint/pull/64](https://togithub.com/bluwy/publint/pull/64) **Full Changelog**: bluwy/publint@v0.2.1...v0.2.2 ### [`v0.2.1`](https://togithub.com/bluwy/publint/releases/tag/v0.2.1) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.2.0...v0.2.1) ##### Bug fixes - Fix `"types"` condition check with `"exports"` array format - Disable packed files search when a `vfs` is passed - Fix `"browser"` field file existence extensions check - Fix file existence check with trailing slash ##### Site - Site-wide design touch-up - New "Popular packages" section - New package version select switcher ([https://github.com/bluwy/publint/issues/56](https://togithub.com/bluwy/publint/issues/56)) - New navigation header design - Update bottom documentation for clarity - Improve repo URL parsing ##### New Contributors - [@​lachlancollins](https://togithub.com/lachlancollins) made their first contribution in [https://github.com/bluwy/publint/pull/53](https://togithub.com/bluwy/publint/pull/53) **Full Changelog**: bluwy/publint@v0.2.0...v0.2.1 ### [`v0.2.0`](https://togithub.com/bluwy/publint/releases/tag/v0.2.0) [Compare Source](https://togithub.com/bluwy/publint/compare/v0.1.16...v0.2.0) ##### Breaking changes **Note:** If you're using `publint` from the CLI, these breaking changes should not affect you. - `publint()` now returns an object with `messages` instead of the `messages` array directly. This makes way for future APIs where `publint` will return more information than just `messages`. ```diff - const messages = await publint() + const { messages } = await publint() ``` - Rename `printMessage` API to `formatMessage` to better reflect it's intent. ([https://github.com/bluwy/publint/issues/43](https://togithub.com/bluwy/publint/issues/43)) ```diff - import { printMessage } from "publint/utils" + import { formatMessage } from "publint/utils" const { messages } = await publint() for (const message of messages) { - console.log(printMessage(message)) + console.log(formatMessage(message)) } ``` - Remove `filePath` `arg` for the `FILE_DOES_NOT_EXIST` message. ```diff import type { Message } from "publint" import { getPkgPathValue } from "publint/utils" function messageToString(message: Message, pkg: Record<string, any>) { switch (message.code) { case "FILE_DOES_NOT_EXIST": - return `The file "${message.args.filePath}" does not exist.` + return `The file "${getPkgPathValue(pkg, message.path)}" does not exist.` } } ``` - Remove the `import` condition for the `publint` package. This provides a better error message if you call `require("publint")`. ##### Features - Improve warnings when the exported `"types"` condition has an invalid format in ESM or CJS. This ensures your library's types will work in both environments when dual publishing. ([https://github.com/bluwy/publint/issues/46](https://togithub.com/bluwy/publint/issues/46)) It affects packages commonly packaged like: ```json { "exports": { ".": { "types": "./index.d.ts", <-- only works in CJS "import": "./index.mjs", "require": "./index.js", } } } ``` For more information, visit the [rules documentation](https://publint.dev/rules#export_types_invalid_format). This feature is inspired by https://arethetypeswrong.github.io. ##### Bug fixes - Suppress warnings when exported JS files using the `"exports"` field have adjacent `.d.ts` files and no `"types"` condition. This follows TypeScript's resolution algorithm. For more information, visit the [rules documentation](https://publint.dev/rules#types_not_exported). ([https://github.com/bluwy/publint/issues/46](https://togithub.com/bluwy/publint/issues/46)) **Full Changelog**: bluwy/publint@v0.1.16...v0.2.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/tnez/actions). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4xMS4wIiwidXBkYXRlZEluVmVyIjoiMzcuMTAzLjEiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
typings
field can also be used to point to the type definition file. (it's just an alias oftypes
field)https://www.typescriptlang.org/docs/handbook/declaration-files/publishing.html#including-declarations-in-your-npm-package
I simply added to the file existence check.
I can think of setting different values to
types
andtypings
but I believe no one would do that, so I didn't add that rule.