Skip to content

chore(deps): update all dependencies

Renovate requested to merge renovate/all into master

This MR contains the following updates:

Package Change Age Adoption Passing Confidence
@cypress/react ^5.9.4 -> ^5.12.5 age adoption passing confidence
@cypress/webpack-dev-server ^1.4.0 -> ^1.8.4 age adoption passing confidence
@testing-library/jest-dom ^5.14.1 -> ^5.16.4 age adoption passing confidence
@testing-library/react ^11.2.7 -> ^13.3.0 age adoption passing confidence
@testing-library/user-event ^12.8.3 -> ^14.2.0 age adoption passing confidence
@types/body-parser ^1.19.1 -> ^1.19.2 age adoption passing confidence
@types/cookie-parser ^1.4.2 -> ^1.4.3 age adoption passing confidence
@types/ejs ^3.0.7 -> ^3.1.1 age adoption passing confidence
@​types/faker ^5.5.8 -> ^6.6.8 age adoption passing confidence
@types/jest ^26.0.24 -> ^27.5.1 age adoption passing confidence
@types/node ^16.6.1 -> ^17.0.36 age adoption passing confidence
@types/react ^17.0.17 -> ^18.0.9 age adoption passing confidence
@types/react-dom ^17.0.9 -> ^18.0.5 age adoption passing confidence
@types/react-router ^5.1.16 -> ^5.1.18 age adoption passing confidence
@types/react-router-dom ^5.1.8 -> ^5.3.3 age adoption passing confidence
@types/supertest ^2.0.11 -> ^2.0.12 age adoption passing confidence
@types/validator ^13.6.3 -> ^13.7.2 age adoption passing confidence
babel-jest ^26.6.0 -> ^28.1.0 age adoption passing confidence
body-parser ^1.19.0 -> ^1.20.0 age adoption passing confidence
concurrently ^6.2.1 -> ^7.2.1 age adoption passing confidence
connect-mongo ^3.2.0 -> ^4.6.0 age adoption passing confidence
cookie-parser ^1.4.5 -> ^1.4.6 age adoption passing confidence
cypress ^8.3.0 -> ^9.7.0 age adoption passing confidence
dotenv ^10.0.0 -> ^16.0.1 age adoption passing confidence
ejs ^3.1.6 -> ^3.1.8 age adoption passing confidence
eslint-plugin-cypress ^2.11.3 -> ^2.12.1 age adoption passing confidence
express (source) ^4.17.1 -> ^4.18.1 age adoption passing confidence
express-session ^1.17.2 -> ^1.17.3 age adoption passing confidence
express-validator (source) ^5.3.1 -> ^6.14.1 age adoption passing confidence
faker ^5.5.3 -> ^6.6.6 age adoption passing confidence
jest (source) 26.6.0 -> 28.1.0 age adoption passing confidence
jest-junit ^12.2.0 -> ^13.2.0 age adoption passing confidence
mongoose (source) ^5.13.7 -> ^6.3.4 age adoption passing confidence
nodemon (source) ^2.0.12 -> ^2.0.16 age adoption passing confidence
passport (source) ^0.4.1 -> ^0.6.0 age adoption passing confidence
postcss (source) ^8.3.6 -> ^8.4.14 age adoption passing confidence
postcss-cli ^8.3.1 -> ^9.1.0 age adoption passing confidence
react (source) ^17.0.2 -> ^18.1.0 age adoption passing confidence
react-dom (source) ^17.0.2 -> ^18.1.0 age adoption passing confidence
react-router ^5.2.0 -> ^6.3.0 age adoption passing confidence
react-router-dom ^5.2.0 -> ^6.3.0 age adoption passing confidence
react-scripts 4.0.3 -> 5.0.1 age adoption passing confidence
sass ^1.37.5 -> ^1.52.1 age adoption passing confidence
supertest ^6.1.5 -> ^6.2.3 age adoption passing confidence
tailwindcss (source) ^2.2.7 -> ^3.0.24 age adoption passing confidence
ts-jest (source) ^26.0.0 -> ^28.0.3 age adoption passing confidence
ts-node (source) ^10.2.0 -> ^10.8.0 age adoption passing confidence
typescript (source) ^4.3.5 -> ^4.7.2 age adoption passing confidence
validator ^10.11.0 -> ^13.7.0 age adoption passing confidence
web-vitals ^1.1.2 -> ^2.1.4 age adoption passing confidence

Release Notes

cypress-io/cypress

v5.12.5

Compare Source

v5.12.4

Compare Source

v5.12.3

Compare Source

v5.12.2

Compare Source

v5.12.1

Compare Source

v5.12.0

Compare Source

v5.11.0

Compare Source

v5.10.3

Compare Source

v5.10.2

Compare Source

v5.10.1

Compare Source

v5.10.0

Compare Source

testing-library/jest-dom

v5.16.4

Compare Source

Bug Fixes
  • Support unenclosed inner text for details elements in to be visible (#​396) (af18453)

v5.16.3

Compare Source

Bug Fixes

v5.16.2

Compare Source

Bug Fixes

v5.16.1

Compare Source

Bug Fixes

v5.16.0

Compare Source

Features

v5.15.1

Compare Source

Bug Fixes

v5.15.0

Compare Source

Features
testing-library/react-testing-library

v13.3.0

Compare Source

Features

v13.2.0

Compare Source

Features

v13.1.1

Compare Source

Bug Fixes

v13.1.0

Compare Source

Features

v13.0.1

Compare Source

Bug Fixes

v13.0.0

Compare Source

Features
BREAKING CHANGES

v12.1.5

Compare Source

Bug Fixes

v12.1.4

Compare Source

Bug Fixes
  • Match runtime type of baseElement in TypeScript types (#​1023) (96ed8da)

v12.1.3

Compare Source

Bug Fixes

v12.1.2

Compare Source

Bug Fixes
  • render: Don't reject wrapper types based on statics (#​973) (7f53b56)

v12.1.1

Compare Source

Bug Fixes

v12.1.0

Compare Source

Features

v12.0.0

Compare Source

Bug Fixes
Features
BREAKING CHANGES
  • Bump @testing-library/dom to 8.0.0. Please check out the @testing-library/dom@8.0.0 release page for a detailed list of breaking changes.
  • node 10 is no longer supported. It reached its end-of-life on 30.04.2021.
testing-library/user-event

v14.2.0

Compare Source

Features
  • report element with declaration in pointerEventsCheck (#​950) (31b7091)
Bug Fixes

v14.1.1

Compare Source

14.1.1 (2022-04-17)
Bug Fixes

v14.1.0

Compare Source

Features
Bug Fixes

v14.0.4

Compare Source

14.0.4 (2022-04-01)
Bug Fixes

v14.0.3

Compare Source

14.0.3 (2022-03-31)
Bug Fixes
  • pointer: change selection before dispatching focus (#​895) (06f12a6)

v14.0.2

Compare Source

14.0.2 (2022-03-31)
Bug Fixes

v14.0.1

Compare Source

14.0.1 (2022-03-31)
Bug Fixes

v14.0.0

Compare Source

BREAKING CHANGES
  • APIs always return a Promise.
  • pointer: skipPointerEvents has been removed. Use pointerEventsCheck: PointerEventsCheckLevel.Never instead.
  • upload: init parameter has been removed from userEvent.upload.
  • upload: applyAccept defaults to true.
  • The userEvent.paste API has new parameters.
  • {ctrl}, {del}, {esc} no longer describe a key. Use {Control}, {Delete}, {Escape} instead.
  • {alt}, {ctrl}, {meta}, {shift} no longer imply not releasing the key. Use {Alt>}, {Control>}, {Meta>}, {Shift>} instead.
  • init parameter has been removed from these APIs:
    • userEvent.click
    • userEvent.dblClick
    • userEvent.tripleClick
    • userEvent.hover
    • userEvent.unhover
    • userEvent.selectOptions
    • userEvent.deselectOptions
  • userEvent.upload no longer supports clickInit as part of its init parameter.
  • Behavior for special key descriptor {selectall} has been removed.
  • Support for keyCode property on keyboard events has been removed.
  • An error is thrown when calling userEvent.clear on an element which is not editable.
  • An error is thrown when event handlers prevent userEvent.clear from focussing/selecting content.
  • tab: The focusTrap option has been removed from userEvent.tab().
  • type: userEvent.type does no longer move the cursor if used with skipClick=false and without initialSelectionStart.
  • The implementation of pointer related APIs was replaced. This might break tests relying on unintended side-effects of the previous implementation.
  • Support for node 10 was removed as it reached its end-of-life.
Features
Bug Fixes
Miscellaneous Chores

v13.5.0

Compare Source

Features
  • keyboard: keep key pressed for multiple keydown events (#​728) (5d946d5)

v13.4.2

Compare Source

Bug Fixes
  • keyboard: submit on enter keypress for checkboxes and radio buttons (#​741) (97ba08e)

v13.4.1

Compare Source

Bug Fixes

v13.4.0

Compare Source

Features

v13.3.0

Compare Source

Features

v13.2.1

Compare Source

Bug Fixes

v13.2.0

Compare Source

Features
  • add keydownBehavior for ArrowLeft and ArrowRight on <textarea> (#​686) (f8f00d4)

v13.1.9

Compare Source

Bug Fixes
  • keyboard: do not set document selection when typing on <input> (#​679) (f2fec13)

v13.1.8

Compare Source

Bug Fixes
  • keyboard: maintain cursor position on controlled React input (#​665) (03f38b9)

v13.1.7

Compare Source

Bug Fixes

v13.1.6

Compare Source

Bug Fixes
  • keyboard: add link to README in key descriptor error (#​666) (ebc90d8)

v13.1.5

Compare Source

Bug Fixes
  • relax typing and throw error for unsupported elements (#​649) (dc13160)

v13.1.4

Compare Source

Bug Fixes
  • keyboard: recognize checkbox/radio as clickable inputs (#​654) (35d996e)

v13.1.3

Compare Source

Bug Fixes
  • throw error when click/hover on pointer-events: none (#​647) (6b2ce66)

v13.1.2

Compare Source

Bug Fixes

v13.1.1

Compare Source

Bug Fixes

v13.1.0

Compare Source

Features

v13.0.16

Compare Source

Bug Fixes
  • keyboard: suppress invalid input on <input type="number"> (#​628) (f633a52)

v13.0.15

Compare Source

Bug Fixes

v13.0.14

Compare Source

Bug Fixes

v13.0.13

Compare Source

Bug Fixes

v13.0.12

Compare Source

Bug Fixes

v13.0.11

Compare Source

Bug Fixes

v13.0.10

Compare Source

Bug Fixes

v13.0.9

Compare Source

Bug Fixes
  • keyboard: inputType for Enter on contenteditable (#​614) (2b0632a)

v13.0.8

Compare Source

Bug Fixes

v13.0.7

Compare Source

Bug Fixes

v13.0.6

Compare Source

Bug Fixes

v13.0.5

Compare Source

Bug Fixes

v13.0.4

Compare Source

Bug Fixes

v13.0.3

Compare Source

Bug Fixes

v13.0.2

Compare Source

Bug Fixes

v13.0.1

Compare Source

Bug Fixes

v13.0.0

Compare Source

Features
BREAKING CHANGES
  • userEvent.type features a rewritten implementation shared with the new userEvent.keyboard. This might break code depending on unintended/undocumented behavior of the previous implementation.
  • userEvent.type treats { and [ as special characters.
  • userEvent.type returns no Promise if called without delay.
facebook/jest

v28.1.0

Compare Source

Features
  • [jest-circus] Add failing test modifier that inverts the behavior of tests (#​12610)
  • [jest-environment-node, jest-environment-jsdom] Allow specifying customExportConditions (#​12774)
Fixes
  • [expect] Adjust typings of lastCalledWith, nthCalledWith, toBeCalledWith matchers to allow a case there a mock was called with no arguments (#​12807)
  • [@jest/expect-utils] Fix deep equality of ImmutableJS Lists (#​12763)
  • [jest-core] Do not collect SIGNREQUEST as open handles (#​12789)
Chore & Maintenance
  • [docs] Specified documentation about --filter CLI docs (#​12799)
  • [@jest-reporters] Move helper functions from utils.ts into separate files (#​12782)
  • [jest-resolve] Replace process.versions.pnp type declaration with @types/pnpapi devDependency (#​12783)

v28.0.3

Compare Source

Fixes
  • [jest-config] Normalize reporters option defined in presets (#​12769)
  • [@jest/reporters] Fix trailing slash in matching coverageThreshold key (#​12714)
  • [jest-resolve] Fix (experimental) ESM module mocking for re-exports (#​12766)
  • [@jest/transform] Throw better error if an invalid return value if encountered (#​12764)
Chore & Maintenance
  • [docs] Fix typo in --shard CLI docs (#​12761)

v28.0.2

Compare Source

Features
  • [jest-worker] Add JestWorkerFarm helper type (#​12753)
Fixes
  • [*] Lower Node 16 requirement to 16.10 from 16.13 due to a Node bug that causes memory and performance issues (#​12754)

v28.0.1

Compare Source

Features
  • [jest-resolve] Expose ResolverOptions type (#​12736)
Fixes
  • [expect] Add missing dependency jest-util (#​12744)
  • [jest-circus] Improve test.concurrent (#​12748)
  • [jest-resolve] Correctly throw an error if jsdom test environment is used, but not installed (#​12749)
Chore & Maintenance
  • [jest-serializer] Remove deprecated module from source tree (#​12735)

v28.0.0

Compare Source

Features
  • [babel-jest] Export createTransformer function (#​12399)
  • [expect] Expose AsymmetricMatchers, MatcherFunction and MatcherFunctionWithState interfaces (#​12363, #​12376)
  • [jest-circus] Support error logging before retry (#​12201)
  • [jest-circus, jest-jasmine2] Allowed classes and functions as describe and it/test names (#​12484)
  • [jest-cli, jest-config] [BREAKING] Remove testURL config, use testEnvironmentOptions.url instead (#​10797)
  • [jest-cli, jest-core] Add --shard parameter for distributed parallel test execution (#​12546)
  • [jest-cli] [BREAKING] Remove undocumented --timers option (#​12572)
  • [jest-config] [BREAKING] Stop shipping jest-environment-jsdom by default (#​12354)
  • [jest-config] [BREAKING] Stop shipping jest-jasmine2 by default (#​12355)
  • [jest-config, @&#8203;jest/types] Add ci to GlobalConfig (#​12378)
  • [jest-config] [BREAKING] Rename moduleLoader to runtime (#​10817)
  • [jest-config] [BREAKING] Rename extraGlobals to sandboxInjectedGlobals (#​10817)
  • [jest-config] [BREAKING] Throw an error instead of showing a warning if multiple configs are used (#​12510)
  • [jest-config] [BREAKING] Do not normalize long deprecated configuration options preprocessorIgnorePatterns, scriptPreprocessor, setupTestFrameworkScriptFile and testPathDirs (#​12701)
  • [jest-cli, jest-core] Add --ignoreProjects CLI argument to ignore test suites by project name (#​12620)
  • [jest-core] Pass project config to globalSetup/globalTeardown function as second argument (#​12440)
  • [jest-core] Stabilize test runners with event emitters (#​12641)
  • [jest-core, jest-watcher] [BREAKING] Move TestWatcher class to jest-watcher package (#​12652)
  • [jest-core] Allow using Summary Reporter as stand-alone reporter (#​12687)
  • [jest-environment-jsdom] [BREAKING] Upgrade jsdom to 19.0.0 (#​12290)
  • [jest-environment-jsdom] [BREAKING] Add default browser condition to exportConditions for jsdom environment (#​11924)
  • [jest-environment-jsdom] [BREAKING] Pass global config to Jest environment constructor for jsdom environment (#​12461)
  • [jest-environment-jsdom] [BREAKING] Second argument context to constructor is mandatory (#​12469)
  • [jest-environment-node] [BREAKING] Add default node and node-addon conditions to exportConditions for node environment (#​11924)
  • [jest-environment-node] [BREAKING] Pass global config to Jest environment constructor for node environment (#​12461)
  • [jest-environment-node] [BREAKING] Second argument context to constructor is mandatory (#​12469)
  • [jest-environment-node] Add all available globals to test globals, not just explicit ones (#​12642, #​12696)
  • [@jest/expect] New module which extends expect with jest-snapshot matchers (#​12404, #​12410, #​12418)
  • [@jest/expect-utils] New module exporting utils for expect (#​12323)
  • [@jest/fake-timers] [BREAKING] Rename timers configuration option to fakeTimers (#​12572)
  • [@jest/fake-timers] [BREAKING] Allow jest.useFakeTimers() and projectConfig.fakeTimers to take an options bag (#​12572)
  • [jest-haste-map] [BREAKING] HasteMap.create now returns a promise (#​12008)
  • [jest-haste-map] Add support for dependencyExtractor written in ESM (#​12008)
  • [jest-mock] [BREAKING] Rename exported utility types ClassLike, FunctionLike, ConstructorLikeKeys, MethodLikeKeys, PropertyLikeKeys; remove exports of utility types ArgumentsOf, ArgsType, ConstructorArgumentsOf - TS builtin utility types ConstructorParameters and Parameters should be used instead (#​12435, #​12489)
  • [jest-mock] Improve isMockFunction to infer types of passed function (#​12442)
  • [jest-mock] [BREAKING] Improve the usage of jest.fn generic type argument (#​12489)
  • [jest-mock] Add support for auto-mocking async generator functions (#​11080)
  • [jest-mock] Add contexts member to mock functions (#​12601)
  • [@jest/reporters] Add GitHub Actions reporter (#​11320, #​12658)
  • [@jest/reporters] Pass reporterContext to custom reporter constructors as third argument (#​12657)
  • [jest-resolve] [BREAKING] Add support for package.json exports (#​11961, #​12373)
  • [jest-resolve] Support package self-reference (#​12682)
  • [jest-resolve, jest-runtime] Add support for data: URI import and mock (#​12392)
  • [jest-resolve, jest-runtime] Add support for async resolver (#​11540)
  • [jest-resolve] [BREAKING] Remove browser?: boolean from resolver options, conditions: ['browser'] should be used instead (#​12707)
  • [jest-resolve] Expose JestResolver, AsyncResolver, SyncResolver, PackageFilter, PathFilter and PackageJSON types (#​12707, (#​12712)
  • [jest-runner] Allow setupFiles module to export an async function (#​12042)
  • [jest-runner] Allow passing testEnvironmentOptions via docblocks (#​12470)
  • [jest-runner] Expose CallbackTestRunner, EmittingTestRunner abstract classes and CallbackTestRunnerInterface, EmittingTestRunnerInterface to help typing third party runners (#​12646, #​12715)
  • [jest-runner] Lock version of source-map-support to 0.5.13 (#​12720)
  • [jest-runtime] [BREAKING] Runtime.createHasteMap now returns a promise (#​12008)
  • [jest-runtime] Calling jest.resetModules function will clear FS and transform cache (#​12531)
  • [jest-runtime] [BREAKING] Remove Context type export, it must be imported from @jest/test-result (#​12685)
  • [jest-runtime] Add import.meta.jest (#​12698)
  • [@jest/schemas] New module for JSON schemas for Jest's config (#​12384)
  • [@jest/source-map] Migrate from source-map to @jridgewell/trace-mapping (#​12692)
  • [jest-transform] [BREAKING] Make it required for process() and processAsync() methods to always return structured data (#​12638)
  • [jest-test-result] Add duration property to JSON test output (#​12518)
  • [jest-watcher] [BREAKING] Make PatternPrompt class to take entityName as third constructor parameter instead of this._entityName (#​12591)
  • [jest-worker] [BREAKING] Allow only absolute workerPath (#​12343)
  • [jest-worker] [BREAKING] Default to advanced serialization when using child process workers (#​10983)
  • [pretty-format] New maxWidth parameter (#​12402)
Fixes
  • [*] Use sha256 instead of md5 as hashing algortihm for compatibility with FIPS systems (#​12722)
  • [babel-jest] [BREAKING] Pass rootDir as root in Babel's options (#​12689)
  • [expect] Move typings of .not, .rejects and .resolves modifiers outside of Matchers interface (#​12346)
  • [expect] Throw useful error if expect.extend is called with invalid matchers (#​12488)
  • [expect] Fix iterableEquality ignores other properties (#​8359)
  • [expect] Fix print for the closeTo matcher (#​12626)
  • [jest-changed-files] Improve changedFilesWithAncestor pattern for Mercurial SCM (#​12322)
  • [jest-circus, @&#8203;jest/types] Disallow undefined value in TestContext type (#​12507)
  • [jest-config] Correctly detect CI environment and update snapshots accordingly (#​12378)
  • [jest-config] Pass moduleTypes to ts-node to enforce CJS when transpiling (#​12397)
  • [jest-config] [BREAKING] Add mjs and cjs to default moduleFileExtensions config (#​12578)
  • [jest-config, jest-haste-map] Allow searching for tests in node_modules by exposing retainAllFiles (#​11084)
  • [jest-core] [BREAKING] Exit with status 1 if no tests are found with --findRelatedTests flag (#​12487)
  • [jest-core] Do not report unref-ed subprocesses as open handles (#​12705)
  • [jest-each] %# is not replaced with index of the test case (#​12517)
  • [jest-each] Fixes error message with incorrect count of missing arguments (#​12464)
  • [jest-environment-jsdom] Make jsdom accessible to extending environments again (#​12232)
  • [jest-environment-jsdom] Log JSDOM errors more cleanly (#​12386)
  • [jest-environment-node] Add MessageChannel, MessageEvent to globals (#​12553)
  • [jest-environment-node] Add structuredClone to globals (#​12631)
  • [@jest/expect-utils] [BREAKING] Fix false positives when looking for undefined prop (#​8923)
  • [jest-haste-map] Don't use partial results if file crawl errors (#​12420)
  • [jest-haste-map] Make watchman existence check lazy+async (#​12675)
  • [jest-jasmine2, jest-types] [BREAKING] Move all jasmine specific types from @jest/types to its own package (#​12125)
  • [jest-jasmine2] Do not set duration to 0 for skipped tests (#​12518)
  • [jest-matcher-utils] Pass maxWidth to pretty-format to avoid printing every element in arrays by default (#​12402)
  • [jest-mock] Fix function overloads for spyOn to allow more correct type inference in complex object (#​12442)
  • [jest-mock] Handle overridden Function.name property (#​12674)
  • [@jest/reporters] Notifications generated by the --notify flag are no longer persistent in GNOME Shell. (#​11733)
  • [@jest/reporters] Move missing icon file which is needed for NotifyReporter class. (#​12593)
  • [@jest/reporters] Update v8-to-istanbul (#​12697)
  • [jest-resolver] Call custom resolver with core node.js modules (#​12654)
  • [jest-runner] Correctly resolve source-map-support (#​12706)
  • [jest-worker] Fix Farm execution results memory leak (#​12497)
Chore & Maintenance
  • [*] [BREAKING] Drop support for Node v10 and v15 and target first LTS 16.13.0 (#​12220)
  • [*] [BREAKING] Drop support for typescript@3.8, minimum version is now 4.3 (#​11142, #​12648)
  • [*] Bundle all .d.ts files into a single index.d.ts per module (#​12345)
  • [*] Use globalThis instead of global (#​12447)
  • [babel-jest] [BREAKING] Only export createTransformer (#​12407)
  • [docs] Add note about not mixing done() with Promises (#​11077)
  • [docs, examples] Update React examples to match with the new React guidelines for code examples (#​12217)
  • [docs] Add clarity for module factory hoisting limitations (#​12453)
  • [docs] Add more information about how code transformers work (#​12407)
  • [docs] Add upgrading guide (#​12633)
  • [expect] [BREAKING] Remove support for importing build/utils (#​12323)
  • [expect] [BREAKING] Migrate to ESM (#​12344)
  • [expect] [BREAKING] Snapshot matcher types are moved to @jest/expect (#​12404)
  • [jest-cli] Update yargs to v17 (#​12357)
  • [jest-config] [BREAKING] Remove getTestEnvironment export (#​12353)
  • [jest-config] [BREAKING] Rename config option name to id (#​11981)
  • [jest-create-cache-key-function] Added README.md file with basic usage instructions (#​12492)
  • [@jest/core] Use index.ts instead of jest.ts as main export (#​12329)
  • [jest-environment-jsdom] [BREAKING] Migrate to ESM (#​12340)
  • [jest-environment-node] [BREAKING] Migrate to ESM (#​12340)
  • [jest-haste-map] Remove legacy isRegExpSupported (#​12676)
  • [@jest/fake-timers] Update @sinonjs/fake_timers to v9 (#​12357)
  • [jest-jasmine2, jest-runtime] [BREAKING] Use Symbol to pass jest.setTimeout value instead of jasmine specific logic (#​12124)
  • [jest-phabricator] [BREAKING] Migrate to ESM (#​12341)
  • [jest-resolve] [BREAKING] Make requireResolveFunction argument mandatory (#​12353)
  • [jest-runner] [BREAKING] Remove some type exports from @jest/test-result (#​12353)
  • [jest-runner] [BREAKING] Second argument to constructor (Context) is not optional (#​12640)
  • [jest-serializer] [BREAKING] Deprecate package in favour of using v8 APIs directly (#​12391)
  • [jest-snapshot] [BREAKING] Migrate to ESM (#​12342)
  • [jest-transform] Update write-file-atomic to v4 (#​12357)
  • [jest-types] [BREAKING] Remove Config.Glob and Config.Path (#​12406)
  • [jest] Use index.ts instead of jest.ts as main export (#​12329)
Performance
  • [jest-haste-map] [BREAKING] Default to node crawler over shelling out to find if watchman is not enabled (#​12320)

v27.5.1

Compare Source

Features
  • [jest-config] Support comments in JSON config file (#​12316)
  • [pretty-format] Expose ConvertAnsi plugin (#​12308)
Fixes
  • [expect] Add type definitions for asymmetric closeTo matcher (#​12304)
  • [jest-cli] Load binary via exported API (#​12315)
  • [jest-config] Replace jsonlint with parse-json (#​12316)
  • [jest-repl] Make module importable (#​12311 & #​12315)
Chore & Maintenance
  • [*] Avoid anonymous default exports (#​12313)

v27.5.0

Compare Source

Features
  • [expect] Add asymmetric matcher expect.closeTo (#​12243)
  • [jest-mock] Added mockFn.mock.lastCall to retrieve last argument (#​12285)
Fixes
  • [expect] Add a fix for .toHaveProperty('') (#​12251)
  • [jest-each, @&#8203;jest/globals] Allow passing ReadonlyArray type of a table to describe.each and test.each (#​12297)
  • [@jest/globals] Add missing options argument to jest.doMock typing (#​12292)
  • [jest-environment-node] Add atob and btoa (#​12269)
  • [jest-matcher-utils] Correct diff for expected asymmetric matchers (#​12264)
  • [jest-message-util] Fix .getTopFrame() (and toMatchInlineSnapshot()) with mjs files (#​12277)
Chore & Maintenance
  • [*] Update graceful-fs to ^4.2.9 (#​11749)
Performance
  • [jest-resolve] perf: skip error creation on not found stat calls (#​11749)

v27.4.6

Compare Source

Fixes
  • [jest-environment-node] Add AbortSignal (#​12157)
  • [jest-environment-node] Add Missing node global performance (#​12002)
  • [jest-runtime] Handle missing mocked property (#​12213)
  • [@jest/transform] Update dependency package pirates to 4.0.4 (#​12002)
Performance
  • jest-config perf: only register ts-node once when loading TS config files (#​12160)

v27.4.5

Compare Source

Fixes
  • [jest-worker] Stop explicitly passing process.env (#​12141)

v27.4.4

Compare Source

Fixes
  • [babel-jest] Add process.version chunk to the cache key (#​12122)
  • [jest-environment] Add mocked to jest object (#​12133)
  • [jest-worker] Stop explicitly passing execArgv (#​12128)
Chore & Maintenance
  • [website] Fix the card front that looks overlapping part of the card back

v27.4.2

Compare Source

Fixes
  • [jest-worker] Add additional execArgv to filter (#​12103)

v27.4.1

Compare Source

Fixes
  • [jest-worker] Filter execArgv correctly (#​12097)

v27.4.0

Compare Source

Features
  • [expect] Enhancing the toHaveProperty matcher to support array selection (#​12092)
  • [jest-core] Add support for testResultsProcessor written in ESM (#​12006)
  • [jest-diff, pretty-format] Add compareKeys option for custom sorting of object keys (#​11992)
  • [jest-mock] Add ts-jest mock util functions (#​12089)
Fixes
  • [expect] Allow again expect.Matchers generic with single value (#​11986)
  • [jest-circus, jest-jasmine2] Avoid false concurrent test failures due to unhandled promise rejections (#​11987)
  • [jest-config] Add missing slash dependency to package.json (#​12080)
  • [jest-core] Incorrect detection of open ZLIB handles (#​12022)
  • [jest-diff] Break dependency cycle (#​10818)
  • [jest-environment-jsdom] Add @types/jsdom dependency (#​11999)
  • [jest-environment-jsdom] Do not reset the global.document too early on teardown (#​11871)
  • [jest-transform] Improve error and warning messages (#​11998)
  • [jest-worker] Pass execArgv correctly to worker_threads worker (#​12069)
Chore & Maintenance
  • [docs] CLI options alphabetized (#​11586)
  • [jest-runner] Add info regarding timers to forcedExit message(#​12083)
  • [*] Replaced substr method with substring (#​12066)
  • [*] Add types entry to all export maps (#​12073)

v27.3.1

Compare Source

Fixes
  • [expect] Make expect extension properties configurable (#​11978)
  • [expect] Fix .any() checks on primitive wrapper classes (#​11976)
Chore & Maintenance
  • [expect] BigInt global is always defined, don't check for its existence at runtime (#​11979)
  • [jest-config, jest-util] Use ci-info instead of is-ci to detect CI environment (#​11973)

v27.3.0

Compare Source

Features
  • [jest-config] Add testEnvironmentOptions.html to apply to jsdom input (#​11950)
  • [jest-resolver] Support default export (.) in exports field if main is missing (#​11919)
Fixes
  • [expect] Tweak and improve types (#​11949)
  • [jest-runtime] Ensure absolute paths can be resolved within test modules (#​11943)
  • [jest-runtime] Fix instanceof for ModernFakeTimers and LegacyFakeTimers methods (#​11946)

v27.2.5

Compare Source

Features
  • [jest-config] Warn when multiple Jest configs are located (#​11922)
Fixes
  • [expect] Pass matcher context to asymmetric matchers (#​11926 & #​11930)
  • [expect] Improve TypeScript types (#​11931)
  • [expect] Improve typings of toThrow() and toThrowError() matchers (#​11929)
  • [jest-cli] Improve --help printout by removing defunct --browser option (#​11914)
  • [jest-haste-map] Use distinct cache paths for different values of computeDependencies (#​11916)
  • [@jest/reporters] Do not buffer console.logs when using verbose reporter (#​11054)
Chore & Maintenance
  • [expect] Export default matchers (#​11932)
  • [@jest/types] Mark deprecated configuration options as @deprecated (#​11913)

v27.2.4

Compare Source

Features
  • [expect] Add equality checks for Array Buffers in expect.ToStrictEqual() (#​11805)
Fixes
  • [jest-snapshot] Correctly indent inline snapshots (#​11560)

v27.2.3

Compare Source

Features
  • [@jest/fake-timers] Update @sinonjs/fake-timers to v8 (#​11879)
Fixes
  • [jest-config] Parse testEnvironmentOptions if received from CLI (#​11902)
  • [jest-reporters] Call destroy on v8-to-istanbul converters to free memory (#​11896)

v27.2.2

Compare Source

Fixes
  • [jest-runtime] Correct wrapperLength value for ESM modules. (#​11893)

v27.2.1

Compare Source

Features
  • [jest-transform] Improve the unexpected token error message. (#​11807)
Fixes
  • [jest-runtime] Fix regression when using jest.isolateModules and mocks (#​11882)
  • [jest-runtime] Include test name when importing modules after test has completed (#​11885)
  • [jest-runtime] Error when ESM import is used after test is torn down (#​11885)

v27.2.0

Compare Source

Features
  • [jest-resolver, jest-runtime] Pass conditions to custom resolvers to enable them to implement support for package.json exports field (#​11859)
  • [jest-runtime] Allow custom envs to specify exportConditions which is passed together with Jest's own conditions to custom resolvers (#​11863)
Fixes
  • [@jest/reporters] Use async transform if available to transform files with no coverage (#​11852)
  • [jest-util] Return correct value from process.send stub (#​11799)

v27.1.1

Compare Source

Features
  • [jest-runtime] Add experimental, limited (and undocumented) support for mocking ECMAScript Modules (#​11818)
Fixes
  • [jest-resolver] Support node: prefix when importing Node core modules with ESM (#​11817)
  • [jest-types] Export the PrettyFormatOptions interface (#​11801)

v27.1.0

Compare Source

Features
  • [jest-haste-map] Use watchman suffix-set option for faster file indexing. (#​11784)
  • [jest-cli] Adds a new config options snapshotFormat which offers a way to override any of the formatting settings which come with pretty-format. (#​11654)
  • [jest-reporters] Expose the getSummary util (#​11695).
  • [jest-resolver] Support node: prefix when importing Node core modules (#​11331)
Fixes
  • [jest-each] Relaxed the validation to allow multibyte characters in headings (#​11575)
  • [jest-environment-jsdom] Add support for userAgent option (#​11773)
  • [jest-environment-node] Add Event and EventTarget to node global environment. (#​11727)
  • [jest-mock] Fix spyOn to use Object.prototype.hasOwnProperty (#​11721)
  • [jest-resolver] Add dependency on jest-haste-map (#​11759)
  • [jest-types] Compat with @types/node v16 (#​11645)
Chore & Maintenance
  • [docs] Correct expects.assertions documentation by adding async/await for asynchronous function.

v27.0.6

Compare Source

Fixes
  • [*] Publish all modules to include the build change in (#​11569)

v27.0.5

Compare Source

Features
  • [@jest/fake-timers] Flush callbacks scheduled with requestAnimationFrame every 16ms when using legacy timers. (#​11523)
  • [pretty-format] Use globalThis (with polyfill if required) to bring support for esbuild's browser bundling mode (#​11569)
Fixes
  • [jest-core] Support special characters like @, + and () on Windows with --findRelatedTests (#​11548)
  • [@jest/fake-timers] Do not add setImmediate and clearImmediate if they do not exist in the global environment (#​11599)
  • [@jest/reporters] Allow node-notifier@10 as peer dependency (#​11523)
  • [@jest/reporters] Update v8-to-istanbul (#​11523)

v27.0.2

Compare Source

Features
  • [jest-circus] Add some APIs to make it easier to build your own test runner
  • [jest-reporters] Expose the getResultHeader util (#​11460)
  • [jest-resolver] Export resolve* utils for different Jest modules (#​11466)
  • [@jest/test-result] Export Test, TestEvents and TestFileEvent (#​11466)
Fixes
  • [jest-circus] Add missing slash dependency (#​11465)
  • [jest-circus, @&#8203;jest/test-sequencer] Remove dependency on jest-runner (#​11466)
  • [jest-config] Resolve config.runner to absolute path (#​11465)
  • [jest-config] Make sure to support functions as config (#​11475)
  • [jest-core] Do not warn about DNSCHANNEL handles when using the --detectOpenHandles option (#​11470)
  • [jest-runner] Remove dependency on jest-config (#​11466)
  • [jest-worker] Loosen engine requirement to >= 10.13.0 (#​11451)

v27.0.1

Compare Source

Fixes
  • [jest-environment-jsdom] Bump version of JSDOM to avoid deprecated request package (#​11442)

v27.0.0

Compare Source

Features
  • [babel-jest] Add async transformation (#​11192)
  • [jest-changed-files] Use '--' to separate paths from revisions (#​11160)
  • [jest-circus] [BREAKING] Fail tests when multiple done() calls are made (#​10624)
  • [jest-circus, jest-jasmine2] [BREAKING] Fail the test instead of just warning when describe returns a value (#​10947)
  • [jest-config] [BREAKING] Default to Node testing environment instead of browser (JSDOM) (#​9874)
  • [jest-config] [BREAKING] Use jest-circus as default test runner (#​10686)
  • [jest-config] Add support for preset written in ESM (#​11200)
  • [jest-config, jest-runtime] Support ESM for files other than .js and .mjs (#​10823)
  • [jest-config, jest-runtime] [BREAKING] Use "modern" implementation as default for fake timers (#​10874 & #​11197)
  • [jest-config Allow passing forceNodeFilesystemAPI through to jest-haste-map (#​11264)
  • [jest-config, jest-haste-map, jest-resolve, jest-runner, jest-runtime, jest-test-sequencer, jest-transform, jest-types] [BREAKING] Add custom HasteMap class implementation config option (#​11107)
  • [jest-core] make TestWatcher extend emittery (#​10324)
  • [jest-core] Run failed tests interactively the same way we do with snapshots (#​10858)
  • [jest-core] more TestSequencer methods can be async (#​10980)
  • [jest-core] Add support for testSequencer written in ESM (#​11207)
  • [jest-core] Add support for globalSetup and globalTeardown written in ESM (#​11267)
  • [jest-core] Add support for watchPlugins written in ESM (#​11315)
  • [jest-core] Add support for runner written in ESM (#​11232)
  • [jest-core] Add support for reporters written in ESM (#​11427)
  • [jest-each] Add support for interpolation with object properties (#​11388)
  • [jest-environment-node] Add AbortController to globals (#​11182)
  • [@jest/fake-timers] Update to @sinonjs/fake-timers to v7 (#​11198)
  • [jest-haste-map] Handle injected scm clocks (#​10966)
  • [jest-haste-map] Add enableSymlinks configuration option to follow symlinks for test files (#​9351)
  • [jest-repl, jest-runner] [BREAKING] Run transforms over environment (#​8751)
  • [jest-repl] Add support for testEnvironment written in ESM (#​11232)
  • [jest-reporters] Add static filepath property to all reporters (#​11015)
  • [jest-runner] [BREAKING] set exit code to 1 if test logs after teardown (#​10728)
  • [jest-runner] [BREAKING] Run transforms over runner (#​8823)
  • [jest-runner] [BREAKING] Run transforms over testRunner (#​8823)
  • [jest-runner] Possibility to use ESM for test environment (11033)
  • [jest-runner] Add support for testRunner written in ESM (#​11232)
  • [jest-runtime] Detect reexports from CJS as named exports in ESM (#​10988)
  • [jest-runtime] Support for async code transformations (#​11191 & #​11220)
  • [jest-snapshot] [BREAKING] Make prettier optional for inline snapshots - fall back to string replacement (#​7792 & #​11192)
  • [jest-snapshot] [BREAKING] Run transforms over snapshotResolver (#​8751)
  • [jest-transform] Pass config options defined in Jest's config to transformer's process and getCacheKey functions (#​10926)
  • [jest-transform] Add support for transformers written in ESM (#​11163)
  • [jest-transform] [BREAKING] Do not export ScriptTransformer class, instead export the async function createScriptTransformer (#​11163)
  • [jest-transform] Async code transformations (#​9889)
  • [jest-transform] Support transpiled transformers (#​11193)
  • [jest-transform] [BREAKING] requireAndTranspileModule always return a Promise, and the third parameter type is changed to RequireAndTranspileModuleOptions which accept applyInteropRequireDefault option (#​11232)
  • [jest-transform] [BREAKING] createTranspilingRequire return function which return a Promise now (#​11232)
  • [jest-util] add requireOrImportModule for importing CJS or ESM (#​11199)
  • [jest-util] add applyInteropRequireDefault option on requireOrImportModule (#​11232)
  • [jest-watcher] Added support for clearing the line when <C-u> is pressed in a watch mode pattern prompt (#​11358)
  • [jest-worker] Add support for custom task queues and adds a PriorityQueue implementation. (#​10921)
  • [jest-worker] Add in-order scheduling policy to jest worker (10902)
  • [pretty-format] Better print for sparse arrays (11326)
  • [pretty-print] Add option printBasicPrototype which determines whether or not the prototype should be printed for raw objects or arrays (#​11441)
Fixes
  • [babel-plugin-jest-hoist] Add __dirname and __filename to whitelisted globals (#​10903)
  • [expect] [BREAKING] Revise expect.not.objectContaining() to be the inverse of expect.objectContaining(), as documented. (#​10708)
  • [expect] [BREAKING] Make toContain more strict with the received type (#​10119 & #​10929)
  • [expect] [BREAKING] matcherResult on JestAssertionError are now strings rather than functions (#​10989)
  • [jest-circus] Fixed the issue of beforeAll & afterAll hooks getting executed even if it is inside a skipped describe block (#​10806)
  • [jest-circus] Fix testLocation on Windows when using test.each (#​10871)
  • [jest-cli] Use testFailureExitCode when bailing from a failed test (#​10958)
  • [jest-cli] Print custom error if error thrown from global hooks is not an error already (#​11003)
  • [jest-cli] Allow running multiple "projects" from programmatic API (#​11307)
  • [jest-cli] Fix missing collectCoverage after init (#​11353)
  • [jest-cli, jest-config, jest-types] Move all default values into jest-config (#​9924)
  • [jest-config] [BREAKING] Change default file extension order by moving json behind ts and tsx (10572)
  • [jest-console] console.dir now respects the second argument correctly (#​10638)
  • [jest-core] Don't report PerformanceObserver as open handle (#​11123)
  • [jest-core] Use WeakRef to hold timers when detecting open handles (#​11277)
  • [jest-core] Correctly detect open handles that were created in test functions using done callbacks (#​11382)
  • [jest-core] Do not collect RANDOMBYTESREQUEST as open handles (#​11278)
  • [jest-core] Wait briefly for open handles to close before flagging them when using --detectOpenHandles (#​11429)
  • [jest-diff] [BREAKING] Use only named exports (#​11371)
  • [jest-each] [BREAKING] Ignore excess words in headings (#​8766)
  • [jest-each] Support array index with template strings (#​10763)
  • [jest-each] Interpolate %% correctly (#​11364)
  • [jest-each] Fix wrong interpolation when the value of array contains multiple % (#​11364)
  • [jest-environment] [BREAKING] Drop support for runScript for test environments (#​11155)
  • [jest-environment-jsdom] Use inner realm’s ArrayBuffer constructor (#​10885)
  • [jest-environment-jsdom] [BREAKING] Remove Node globals setImmediate and clearImmediate (#​11222)
  • [jest-get-type] [BREAKING] Convert to ES Module (#​11359)
  • [jest-globals] [BREAKING] Disallow return values other than a Promise from hooks and tests (#​10512)
  • [jest-globals] [BREAKING] Disallow mixing a done callback and returning a Promise from hooks and tests (#​10512)
  • [jest-haste-map] Vendor NodeWatcher from sane (#​10919)
  • [jest-jasmine2] Fixed the issue of beforeAll & afterAll hooks getting executed even if it is inside a skipped describe block when it has child tests marked as either only or todo (#​10806)
  • [jest-jasmine2] Fixed the issues of child tests marked with only or todo getting executed even if it is inside a skipped parent describe block (#​10806)
  • [jest-jasmine2] Wrap all test functions so they open handles that were created in test functions using done callbacks can be detected (#​11382)
  • [jest-reporter] Handle empty files when reporting code coverage with V8 (#​10819)
  • [jest-resolve] Replace read-pkg-up with escalade package (#​10781)
  • [jest-resolve] Disable jest-pnp-resolver for Yarn 2 (#​10847)
  • [jest-runtime] [BREAKING] Do not inject global variable into module wrapper (#​10644)
  • [jest-runtime] [BREAKING] remove long-deprecated jest.addMatchers, jest.resetModuleRegistry, and jest.runTimersToTime (#​9853)
  • [jest-runtime] Fix stack overflow and promise deadlock when importing mutual dependant ES module (#​10892)
  • [jest-runtime] Prevent global module registry from leaking into isolateModules registry (#​10963)
  • [jest-runtime] Refactor to prevent race condition when linking and evaluating ES Modules (#​11150)
  • [jest-runtime] Throw correct error when attempting to load ESM via require (#​11260)
  • [jest-runtime] Do not cache modules that throw during evaluation (#​11263)
  • [jest-transform] Show enhanced SyntaxError message for all SyntaxErrors (#​10749)
  • [jest-transform] [BREAKING] Refactor API to pass an options bag around rather than multiple boolean options (#​10753)
  • [jest-transform] [BREAKING] Refactor API of transformers to pass an options bag rather than separate config and other options (#​10834)
  • [jest-types] Fix Config.ts projects types (#​11285)
  • [jest-util] Replace micromatch with picomatch to fix issues with negated globs (#​11287)
  • [jest-validate] Use en-US locale to avoid case conversion problems while validating CLI options on machines with some certain locales(e.g. Turkish) set as default locale. (#​11412)
  • [jest-worker] [BREAKING] Use named exports (#​10623)
  • [jest-worker] Do not swallow errors during serialization (#​10984)
  • [jest-worker] Handle ERR_IPC_CHANNEL_CLOSED errors properly (#​11143)
  • [pretty-format] [BREAKING] Convert to ES Modules (#​10515)
  • [pretty-format] Only call hasAttribute if it's a function (#​11000)
  • [pretty-format] Handle jsdom attributes properly (#​11189)
  • [pretty-format] Import pretty-format using named imports (#​11360)
Chore & Maintenance
  • [*] [BREAKING] Only support Node LTS releases and Node 15 (#​10685)
  • [*] [BREAKING] Add exports field to all package.jsons (#​9921)
  • [*] Make it easier for Jest's packages to use the VM escape hatch (#​10824)
  • [*] [BREAKING] Remove deprecated mapCoverage (#​9968)
  • [babel-jest] [BREAKING] Migrate to ESM (#​11193)
  • [docs] Correct example using browser-resolve (#​11140)
  • [docs] Clarify timers configuration property (#​11376)
  • [jest, jest-core] [BREAKING] Replace TestScheduler export with createTestScheduler (#​11427)
  • [jest-config] [BREAKING] Remove enabledTestsMap config, use filter instead (#​10787)
  • [jest-console] [BREAKING] Move root into config and take GlobalConfig as mandatory parameter for getConsoleOutput (#​10126)
  • [jest-console] Export LogEntry (#​11017)
  • [jest-fake-timers] Clarify global behavior of jest.useFakeTimers and jest.useRealTimers (#​10867)
  • [jest-haste-map] [BREAKING] Migrate to ESM (#​10875)
  • [jest-haste-map] [BREAKING] Remove support for deprecated option ignorePattern as function (#​10348)
  • [jest-jasmine2] [BREAKING] Migrate to ESM (#​10906)
  • [jest-jasmine2] [BREAKING] Remove unused options argument from Env constructor (#​10240)
  • [jest-repl, jest-runtime] [BREAKING] Move the jest-runtime CLI into jest-repl (#​10016 & #​10925)
  • [jest-resolve] [BREAKING] Migrate to ESM (#​10688)
  • [jest-resolve-dependencies] [BREAKING] Migrate to ESM (#​10876)
  • [jest-mock] [BREAKING] Migrate to ESM (#​10887)
  • [jest-reporters] [BREAKING] Make node-notifier a peer dependency (#​10977)
  • [jest-resolve, jest-runtime] [BREAKING] Use Maps instead of objects for all cached resources (#​10968)
  • [jest-runner] [BREAKING] Migrate to ESM (#​10900)
  • [jest-runtime] [BREAKING] Remove deprecated and unused getSourceMapInfo from Runtime (#​9969)
  • [jest-transformer] [BREAKING] Remove unused isCoreModule option (#​11166)
  • [jest-util] No longer checking enumerable when adding process.domain (#​10862)
  • [jest-validate] [BREAKING] Remove recursiveBlacklist option in favor of previously introduced recursiveDenylist (#​10650)
  • [website] Replace 'Github' with 'GitHub' (#​11279)
  • [website] Remove a language code from the link to the Node.js website (#​11282)
  • [website] Remove a duplicated word (#​11281)
  • [website] Add french to website (#​11361)
Performance
  • [jest-resolve] Cache reading and parsing of package.jsons (#​11076)
  • [jest-runtime, jest-transform] share cacheFS between runtime and transformer (#​10901)
  • [jest-runtime] Load chalk only once per worker (#​10864)
  • [jest-worker] Fix memory leak of previous task arguments while no new task is scheduled (#​11187)
expressjs/body-parser

v1.20.0

Compare Source

===================

  • Fix error message for json parse whitespace in strict
  • Fix internal error when inflated body exceeds limit
  • Prevent loss of async hooks context
  • Prevent hanging when request already read
  • deps: depd@2.0.0
    • Replace internal eval usage with Function constructor
    • Use instance methods on process to check for listeners
  • deps: http-errors@2.0.0
    • deps: depd@2.0.0
    • deps: statuses@2.0.1
  • deps: on-finished@2.4.1
  • deps: qs@6.10.3
  • deps: raw-body@2.5.1
    • deps: http-errors@2.0.0

v1.19.2

Compare Source

===================

  • deps: bytes@3.1.2
  • deps: qs@6.9.7
    • Fix handling of __proto__ keys
  • deps: raw-body@2.4.3
    • deps: bytes@3.1.2

v1.19.1

Compare Source

===================

  • deps: bytes@3.1.1
  • deps: http-errors@1.8.1
    • deps: inherits@2.0.4
    • deps: toidentifier@1.0.1
    • deps: setprototypeof@1.2.0
  • deps: qs@6.9.6
  • deps: raw-body@2.4.2
    • deps: bytes@3.1.1
    • deps: http-errors@1.8.1
  • deps: safe-buffer@5.2.1
  • deps: type-is@~1.6.18
open-cli-tools/concurrently

v7.2.1

Compare Source

What's Changed

  • Fix --success command- syntax when command name has dashes - #​324, #​325

v7.2.0

Compare Source

New Contributors

v7.1.0

Compare Source

  • Excluding pattern support added, e.g. concurrently npm:lint:*(!fix) (#​305, #​306)
  • Fixed programmatic API docs to resemble v7.0.0 changes (#​303)

New Contributors

v7.0.0

Compare Source

🎉 🥂 Happy 2022!

Breaking changes

  • Dropped support for Node 10. Minimum version is now 12.20.
  • concurrently() API now has a different return value. Please refer to the docs.

Functional changes

  • Added --group flag/option to run process in parallel but print output in sequence - #​75, #​79, #​272
  • Codebase converted to TypeScript. Some bugs may arise due to this, but I hope not!

API Changes

  • concurrently can now be imported as an ES Module! Just do import concurrently from 'concurrently'.
  • concurrently() now returns the commands alongside a promise for the result - #​209

New Contributors

v6.5.1

Compare Source

v6.5.0

Compare Source

  • Add support for configuring via environment variables that start with CONCURRENTLY_ prefix (#​289)
  • Add --timings flag to show when each process started and stopped, and how long they ran for (#​291, #​295)

v6.4.0

Compare Source

  • Add --hide flag to hide the output of specified commands (#​138, #​173)

v6.3.0

Compare Source

  • Distribute prefix colors correctly when using npm/yarn/pnpm script expansion (#​186, #​210, #​234, #​286)
  • Add new option to programmatic API, prefixColors, which serves as fallback for commands without a prefixColor (#​286)

v6.2.2

Compare Source

  • Remove read-pkg dependency which had a vulnerability issue (#​274)
jdesboeufs/connect-mongo

v4.6.0

Compare Source

Changed
  • Moved mongodb to a peer dependency (and also as a dev dependency for connect-mongo developers). connect-mongo is no longer pinned to a specific version of mongodb. This allows end users to avoid errors due to Typescript definition changes when moving to new versions of mongodb. Users can use any version of mongodb that provides a compatible (non-breaking) interface to mongodb ^4.1.0. Tested on mongodb 4.1.0 and 4.1.1. Should fix: #​433 #​434 #​436
Fixed
  • Fixed "Callback was already called" when some code throws immediately after calling the set function

v4.5.0

Compare Source

BREAKING CHANGES
  • Drop Node 10 support
Changed
Fixed
  • Move writeConcern away from top-level option to fix deprecation warning #​422

v4.4.1

Compare Source

Fixed
  • store.all() method not working with encrypted store #​410 #​411
  • Update and unpin mongodb dependency due to upstream fix has been deployed #​409

v4.4.0

Compare Source

BREAKING CHANGES
  • Use export = for better cjs require without .default
Added
  • Add typescript example

v4.3.1

Compare Source

Fixed
  • Fix incorrect assertion checking after adding client options

v4.3.0

Compare Source

Added
  • Add client option for non-promise client

v4.2.2

Compare Source

Fixed
  • Fix crypto parsing error by upgrading kruptein to v3.0.0 and change encodeas to base64

v4.2.1

Compare Source

v4.2.0

Compare Source

Added
  • Added mongoose example
  • Revert createAutoRemoveIdx and add back autoRemove and autoRemoveInterval
Fixed
  • Use matchedCount instead of modifiedCount to avoid throwing exceptions when nothing to modify #​390
  • Fixed Warning: Accessing non-existent property 'MongoError' of module exports inside circular dependency by downgrade to mongodb@3.6.3
  • Revert update session when touch #​351
  • Fix cannot read property lastModified of null
  • Fix TS typing error

v4.1.0

Compare Source

BREAKING CHANGES
  • Support Node.Js 10.x, 12.x and 14.x and drop older support.
  • Review method to connect to MongoDB and keep only mongoUrl and clientPromise options.
  • Remove the "Remove expired sessions compatibility mode". Now library user can choose to create auto remove index on startup or not.
  • Remove fallbackMemory options.
  • Rewrite the library and test case using typescript.

Checkout the complete migration guide for more details.

v4.0.0

Compare Source

expressjs/cookie-parser

v1.4.6

Compare Source

==================

  • deps: cookie@0.4.1
motdotla/dotenv

v16.0.1

Compare Source

Changed
  • Minor README clarifications
  • Development ONLY: updated devDependencies as recommended for development only security risks (#​658)

v16.0.0

Compare Source

Added
  • Breaking: Backtick support 🎉 (#​615)

If you had values containing the backtick character, please quote those values with either single or double quotes.

v15.0.1

Compare Source

Changed
  • Properly parse empty single or double quoted values 🐞 (#​614)

v15.0.0

Compare Source

v15.0.0 is a major new release with some important breaking changes.

Added
  • Breaking: Multiline parsing support (just works. no need for the flag.)
Changed
  • Breaking: # marks the beginning of a comment (UNLESS the value is wrapped in quotes. Please update your .env files to wrap in quotes any values containing #. For example: SECRET_HASH="something-with-a-#-hash").

..Understandably, (as some teams have noted) this is tedious to do across the entire team. To make it less tedious, we recommend using dotenv cli going forward. It's an optional plugin that will keep your .env files in sync between machines, environments, or team members.

Removed
  • Breaking: Remove multiline option (just works out of the box now. no need for the flag.)

v14.3.2

Compare Source

Changed
  • Preserve backwards compatibility on values containing # 🐞 (#​603)

v14.3.1

Compare Source

Changed
  • Preserve backwards compatibility on exports by re-introducing the prior in-place exports 🐞 (#​606)

v14.3.0

Compare Source

Added
  • Add multiline option 🎉 (#​486)

v14.2.0

Compare Source

Added
  • Add dotenv_config_override cli option
  • Add DOTENV_CONFIG_OVERRIDE command line env option

v14.1.1

Compare Source

Added
  • Add React gotcha to FAQ on README

v14.1.0

Compare Source

Added
  • Add override option 🎉 (#​595)

v14.0.1

Compare Source

Added
  • Log error on failure to load .env file (#​594)

v14.0.0

Compare Source

Added
  • Breaking: Support inline comments for the parser 🎉 (#​568)

v13.0.1

Compare Source

Changed
  • Hide comments and newlines from debug output (#​404)

v13.0.0

Compare Source

Added
  • Breaking: Add type file for config.js (#​539)

v12.0.4

Compare Source

Changed
  • README updates
  • Minor order adjustment to package json format

v12.0.3

Compare Source

Changed
  • Simplified jsdoc for consistency across editors

v12.0.2

Compare Source

Changed
  • Improve embedded jsdoc type documentation

v12.0.1

Compare Source

Changed
  • README updates and clarifications

v12.0.0

Compare Source

Removed
  • Breaking: drop support for Flow static type checker (#​584)
Changed
  • Move types/index.d.ts to lib/main.d.ts (#​585)
  • Typescript cleanup (#​587)
  • Explicit typescript inclusion in package.json (#​566)

v11.0.0

Compare Source

Changed
  • Breaking: drop support for Node v10 (#​558)
  • Patch debug option (#​550)
mde/ejs

v3.1.8

Compare Source

Version 3.1.8

v3.1.7

Compare Source

Version 3.1.7

cypress-io/eslint-plugin-cypress

v2.12.1

Compare Source

Bug Fixes

v2.12.0

Compare Source

Features
expressjs/express

v4.18.1

Compare Source

===================

  • Fix hanging on large stack of sync routes

v4.18.0

Compare Source

===================

  • Add "root" option to res.download
  • Allow options without filename in res.download
  • Deprecate string and non-integer arguments to res.status
  • Fix behavior of null/undefined as maxAge in res.cookie
  • Fix handling very large stacks of sync middleware
  • Ignore Object.prototype values in settings through app.set/app.get
  • Invoke default with same arguments as types in res.format
  • Support proper 205 responses using res.send
  • Use http-errors for res.format error
  • deps: body-parser@1.20.0
    • Fix error message for json parse whitespace in strict
    • Fix internal error when inflated body exceeds limit
    • Prevent loss of async hooks context
    • Prevent hanging when request already read
    • deps: depd@2.0.0
    • deps: http-errors@2.0.0
    • deps: on-finished@2.4.1
    • deps: qs@6.10.3
    • deps: raw-body@2.5.1
  • deps: cookie@0.5.0
    • Add priority option
    • Fix expires option to reject invalid dates
  • deps: depd@2.0.0
    • Replace internal eval usage with Function constructor
    • Use instance methods on process to check for listeners
  • deps: finalhandler@1.2.0
    • Remove set content headers that break response
    • deps: on-finished@2.4.1
    • deps: statuses@2.0.1
  • deps: on-finished@2.4.1
    • Prevent loss of async hooks context
  • deps: qs@6.10.3
  • deps: send@0.18.0
    • Fix emitted 416 error missing headers property
    • Limit the headers removed for 304 response
    • deps: depd@2.0.0
    • deps: destroy@1.2.0
    • deps: http-errors@2.0.0
    • deps: on-finished@2.4.1
    • deps: statuses@2.0.1
  • deps: serve-static@1.15.0
    • deps: send@0.18.0
  • deps: statuses@2.0.1
    • Remove code 306
    • Rename 425 Unordered Collection to standard 425 Too Early

v4.17.3

Compare Source

===================

  • deps: accepts@~1.3.8
    • deps: mime-types@~2.1.34
    • deps: negotiator@0.6.3
  • deps: body-parser@1.19.2
    • deps: bytes@3.1.2
    • deps: qs@6.9.7
    • deps: raw-body@2.4.3
  • deps: cookie@0.4.2
  • deps: qs@6.9.7
    • Fix handling of __proto__ keys
  • pref: remove unnecessary regexp for trust proxy

v4.17.2

Compare Source

===================

  • Fix handling of undefined in res.jsonp
  • Fix handling of undefined when "json escape" is enabled
  • Fix incorrect middleware execution with unanchored RegExps
  • Fix res.jsonp(obj, status) deprecation message
  • Fix typo in res.is JSDoc
  • deps: body-parser@1.19.1
    • deps: bytes@3.1.1
    • deps: http-errors@1.8.1
    • deps: qs@6.9.6
    • deps: raw-body@2.4.2
    • deps: safe-buffer@5.2.1
    • deps: type-is@~1.6.18
  • deps: content-disposition@0.5.4
    • deps: safe-buffer@5.2.1
  • deps: cookie@0.4.1
    • Fix maxAge option to reject invalid values
  • deps: proxy-addr@~2.0.7
    • Use req.socket over deprecated req.connection
    • deps: forwarded@0.2.0
    • deps: ipaddr.js@1.9.1
  • deps: qs@6.9.6
  • deps: safe-buffer@5.2.1
  • deps: send@0.17.2
    • deps: http-errors@1.8.1
    • deps: ms@2.1.3
    • pref: ignore empty http tokens
  • deps: serve-static@1.14.2
    • deps: send@0.17.2
  • deps: setprototypeof@1.2.0
expressjs/session

v1.17.3

Compare Source

===================

  • Fix resaving already-saved new session at end of request
  • deps: cookie@0.4.2
express-validator/express-validator

v6.14.1

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/express-validator/express-validator/compare/v6.14.0...v6.14.1

v6.14.0

Compare Source

What's Changed

Full Changelog: https://github.com/express-validator/express-validator/compare/v6.13.0...v6.14.0

v6.13.0

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/express-validator/express-validator/compare/v6.12.2...v6.13.0

v6.12.2

Compare Source

Fixes:
  • #​1072: add type for checkSchema function return
  • #​1092, #​1086: correctly allow falsy values as options in checkSchema

v6.12.1

Compare Source

v6.12.0

Compare Source

v6.11.1

Compare Source

v6.11.0

Compare Source

v6.10.1

Compare Source

v6.10.0

Compare Source

big kudos to @​fedeci for the many improvements! 🎉

v6.9.2

Compare Source

  • #​973 - TypeScript - republish of v6.9.1 without the source .ts files

v6.9.1

Compare Source

  • #​963 - TypeScript - Updated signature of isAlpha() to work again with the underlying validator

v6.9.0

Compare Source

v6.8.2

Compare Source

  • #​963 - TypeScript - Update IsAlphaOptions#ignore to allow RegExps, in addition to string[]

v6.8.1

Compare Source

v6.8.0

Compare Source

  • #​952 - Upgraded validator to v13.5.x

v6.7.0

Compare Source

v6.6.1

Compare Source

  • #​907 - upgrade lodash due to security concerns

v6.6.0

Compare Source

  • #​886 - Update validator to v13.1
  • #​887 - fix bug in Getting Started docs example
  • #​888 - Add ability to dry-run validations with check().run(req, { dryRun: boolean }). See docs for more information.

v6.5.0

Compare Source

v6.4.1

Compare Source

  • #​544 - Create field paths considering . to be a special character

v6.4.0

Compare Source

  • #​781 - Warn on use of sanitization-only middlewares
  • #​792 - Upgrade validator to v12.1
  • #​826 - Compile TS code to ES2017. This should not be a breaking change, as Node 8 should fully support the output code.

v6.3.1

Compare Source

  • #​813 - don't use Symbol internally to avoid breaking express-validator reuse

v6.3.0

Compare Source

  • #​476 - Bring notEmpty validator back
  • #​772, #​776 - Add missing pt-BR mobile phone locale
  • #​794, #​795 - Make all properties available in all union branches of ValidationError

v6.2.0

Compare Source

  • #​500, #​638, #​751 - Bail validation when there's an error
  • #​761 - Add min/max options to isArray() validator
  • #​693, #​742, #​765 - Fix typing for optional when using checkSchema
  • #​762 - Don't log a validation error when using .if() with another validation chain
  • #​745 - Upgrade Lodash to fix vulnerability and validator to v11.1
  • #​748 - Correct typo in a validator name in the docs

v6.1.1

Compare Source

  • #​729 - Fix optional data being sanitized

v6.1.0

Compare Source

  • #​439, #​655, #​658 - Conditional validation support
  • #​625 - Improve field selection performance massively
  • #​728, #​731 - Fix imperative validations (await body('email').isEmail().run(req)) not generating any errors
  • #​730, #​733 - docs: some improvements to the "Running imperatively" page

v6.0.1

Compare Source

  • #​726 - Fix TypeScript declarations incorrectly importing validator module

v6.0.0

Compare Source

BREAKING CHANGES 💥
  • Legacy APIs (req.check(), req.checkBody(), req.filter(), etc) have been removed;
  • require('express-validator/check') and require('express-validator/filter) are now deprecated. Instead, just use require('express-validator');
  • #​616, #​722 - Validators and sanitizers will now run in the order they are specified, instead of always running sanitizers first, then validators;
  • #​592, #​641, #​632, #​630, #​580, #​651, #​711 - non-string values will now be sanitized;
  • Node.js version 6 is no longer supported. Use version 8 or newer.
New features
  • #​698 - express-validator is now written in TypeScript!
  • #​407 - express-validator now works with other libraries like Restify or similar;
  • #​679, #​713 - Add a toArray() sanitizer;
  • Validations can now be run imperatively with check('field').run(req). See docs.
Other changes 🐛
Marak/Faker.js

v6.6.6

Compare Source

jest-community/jest-junit

v13.2.0

Compare Source

Support monorepos better via filePathPrefix option by @​marvinroger - https://github.com/jest-community/jest-junit/pull/209

Fix CI builds for windows and drop support for Node 10.x - https://github.com/jest-community/jest-junit/pull/210

v13.1.0

Compare Source

Configurable test suite properties file location by @​JohanBrorson - https://github.com/jest-community/jest-junit/pull/204

v13.0.0

Compare Source

Update strip-ansi to newer version - https://github.com/jest-community/jest-junit/pull/188 Add noStackTrace CLI option - https://github.com/jest-community/jest-junit/pull/160 Fix rootDir usage - https://github.com/jest-community/jest-junit/pull/154

v12.3.0

Compare Source

Fix displayName usage in templates by @​D4N14L - https://github.com/jest-community/jest-junit/pull/179

Automattic/mongoose

v6.3.4

Compare Source

==================

  • fix(schema): disallow using schemas with schema-level projection with map subdocuments #​11698
  • fix(document): avoid setting nested paths to null when they're undefined #​11723
  • fix: allow using comment with findOneAndUpdate(), count(), distinct() and hint with findOneAndUpdate() #​11793
  • fix(document): clean modified subpaths when setting nested path to null after modifying subpaths #​11764
  • fix(types): allow calling deleteModel() with RegExp in TypeScript #​11812
  • docs(typescript): add section on PopulatedDoc to TypeScript populate docs #​11685

v6.3.3

Compare Source

==================

  • perf: avoid leaking memory when using populate() with QueryCursor because of reusing populate options with _docs #​11641
  • fix(types): add _id back for LeanDocument #​11769 #​11761 taxilian
  • fix(model): add skipValidation option for bulkWrite() to allow skipping validation for insertOne and replaceOne #​11663
  • fix(document): correctly $__reset() subdocuments that are under nested paths #​11672
  • fix(query): handle casting BSONRegExp instances as RegExps in queries #​11597
  • fix: correctly cast $not in $expr #​11689
  • perf: optimize size of browser bundle, use buffer v.5.7.1 package to match buffer package of mongodb in browser bundle #​11765 Uzlopak
  • docs: Query.populate docs do not include using an array of strings for the path param #​11768 #​11641 AbdelrahmanHafez
  • chore: add GitHub workflow to close stale "can't reproduce", "help", "needs clarification" issues #​11753 Uzlopak
  • chore: remove Makefile dependency for compiling docs #​11751 Uzlopak

v6.3.2

Compare Source

==================

  • perf: avoid registering event listeners on subdocuments to reduce memory usage #​11541
  • fix(setDefaultsOnInsert): set default if sibling of nested path is $set #​11668
  • perf(document): remove unnecessary workaround for ignoring subpaths of arrays #​11541
  • fix(types): various fixes and improvements for types #​11650 taxilian
  • fix(types): make mongoose typings work without esmModuleInterop true #​11695 Uzlopak
  • fix(types): support populate(path, fields, model) syntax #​11649 #​11598 mohammad0-0ahmad
  • fix(types): correct SchemaTypeOptions.get function signature #​11561
  • fix: fix browser build for Webpack 5 #​11717
  • docs: improve readme #​11705 mahendrap1512

v6.3.1

Compare Source

==================

  • perf: improve perf of key order #​11639 Uzlopak
  • fix(timestamps): set createdAt when creating new single nested subdocuments #​11603
  • fix: improve CastError message when throwing StrictModeError #​11506
  • fix: upgrade bson to match mongodb@4.5 #​11676
  • fix(populate): avoid populating single nested subdocs underneath arrays if there's no ref #​11538
  • fix: handle { capped: number } in schema definition with createCollection() #​11539
  • fix: call markModified before setting changes in Array and in DocumentArray methods #​11660 josegl
  • fix: only allow using minus path to remove auto-selected discriminatorKey from projection #​11546
  • fix(types): set context on virtual getters/setters by default #​11543
  • fix(types): correct return type for Connection.prototype.transaction #​9919
  • fix(types): allow model as document interface key when using extends Document #​11629
  • docs: improve populate typing #​11690 onichandame
  • docs: add information regarding typings-tests #​11691 Uzlopak
  • docs: fix jsdoc for mongoose.createConnection #​11693 Uzlopak

v6.3.0

Compare Source

==================

v6.2.11

Compare Source

===================

  • fix(document): handle validation with triply nested document arrays #​11564
  • fix(query): skip applying string schema setters on $regex #​11426
  • fix: skip findOneAndReplace() validation if runValidators = false #​11559
  • fix(model): correctly handle schema-level collations in syncIndexes() #​7621
  • fix(types): correct populate query return type with lean #​11560 mohammad0-0ahmad
  • fix(types): allow using { type: Mixed } as schema type definition for any path #​10900
  • docs: fix example on Schema.prototype.post() #​11648 EmilienLeroy
  • docs: fix typo in methods/index.js #​11651 eltociear

v6.2.10

Compare Source

===================

v6.2.9

Compare Source

==================

v6.2.8

Compare Source

==================

  • fix(document): handle casting array of spread docs #​11522
  • fix(document): avoid setting nested properties on top-level document when initing with strict: false #​11526
  • fix(document): correctly handle deeply nested subdocuments when getting paths to validate #​11501
  • fix(types): avoid making TInstanceMethods any by default leading to this = any in middleware #​11435
  • fix(types): allow defining array default if using Types.Array<> in document interface #​11391
  • docs(migrating_to_6): describe breaking change in Mongoose 6 about default query populate model #​11289
  • docs(middleware): fix typo #​11537 x1489

v6.2.7

Compare Source

==================

  • perf(document): avoid running validation on every array element if there's no validators to run #​11380
  • fix(cursor): correctly populate in batches when batchSize is set #​11509
  • fix(connection): avoid setting MongoClient on useDb() connections until after setting on base connection #​11445
  • fix(schema): throw more helpful error when using schema from a different version of Mongoose module #​10453
  • fix: add missing timeseries expiration handling #​11489 #​11229 Uzlopak
  • docs: correct Model.findOneAndReplace docs param naming #​11524 anatolykopyl

v6.2.6

Compare Source

==================

  • fix(types): correct reference to cursor TypeScript bindings #​11513 SimonHausdorf
  • fix(types): allow calling Query.prototype.populate() with array of strings #​11518
  • fix(types): export and refactor types of PreMiddlewareFunction, PreSaveMiddlewareFunction, PostMiddlewareFunction, ErrorHandlingMiddlewareFunction #​11485 Uzlopak

v6.2.5

Compare Source

==================

  • fix(mongoose): add isObjectIdOrHexString() to better capture the most common use case for isValidObjectId() #​11419
  • fix(query): prevent modifying discriminator key in updates using operators other than $set #​11456
  • fix(populate+types): call foreignField functions with doc as 1st param, better typings for localField and foreignField functions #​11321
  • fix(populate): return an array when using populate count on an array localField #​11307
  • fix(query): avoid error when using $not with arrays #​11467
  • perf: only deep clone validators if necessary #​11412 Uzlopak
  • fix(types): rename definition files to lowercase to avoid typescript bug #​11469
  • fix(types): aggregate.sort() accepts a string but also { field: 'asc'|'ascending'|'desc'|'descending' } #​11479 simonbrunel
  • fix(types): extract and refactor aggregationcursor and querycursor #​11488 Uzlopak
  • fix(types): extract and refactor schemaoptions #​11484 Uzlopak
  • fix(types): make first param to Query.prototype.populate() a string #​11475 minhthinhls
  • fix(types): improve type checking for doc arrays in schema definitions #​11241
  • docs: fix length comparaison in lean.test.js #​11493 zazapeta
  • docs(timestamps): fix typo #​11481 saibbyweb
  • docs: fix broken link to rawResult #​11459 chhiring90

v6.2.4

Compare Source

==================

  • fix(query): correctly return full deleteOne(), deleteMany() result #​11211
  • fix(query): handle update validators on deeply nested subdocuments #​11455 #​11394
  • fix(discriminator): handle modifying multiple nested paths underneath a discriminator #​11428
  • perf: improve isAsyncFunction #​11408 Uzlopak
  • fix(index.d.ts): add typedefs for Schema pick() #​11448 Moisei-Shkil
  • fix(index.d.ts): allow type override for distinct() #​11306
  • fix(index.d.ts): allow array of validators in schema definition #​11355
  • fix(index.d.ts): improve connection typings #​11418 Uzlopak
  • docs: add timestamps docs #​11336
  • docs(timestamps): explain how timestamps works under the hood #​11336
  • docs(migrating_to_6): add model.exists breaking change returning doument instead of boolean #​11407 AbdelrahmanHafez
  • docs(index.d.ts): add docs for FilterQuery, UpdateQuery, and LeanDocument #​11457 Moisei-Shkil

v6.2.3

Compare Source

==================

  • fix(model): avoid dropping base model indexes when using discriminators with Connection.prototype.syncIndexes() #​11424 #​11421 AbdelrahmanHafez
  • fix(document): handle array defaults when selecting element underneath array #​11376
  • fix(populate): correctly handle depopulating populated subdocuments #​11436
  • fix(utils): improve deepEqual() handling for comparing objects with non-objects #​11417
  • fix(schema): allow declaring array of arrays using [{ type: [String] }] #​11252
  • perf: improve validation sync and async by replacing forEach with classic for loops #​11414 Uzlopak
  • perf: make hasDollarKeys faster #​11401 Uzlopak
  • fix(index.d.ts): ValidationError errors only contains CastError or ValidationError #​11369 Uzlopak
  • fix(index.d.ts): make InsertManyResult.insertedIds return an array of Types.ObjectId by default #​11197
  • fix(index.d.ts): allow pre('save') middleware with pre options #​11257
  • fix(index.d.ts): add supressReservedKeysWarning option to schema #​11439 hiukky
  • docs(connections): improve replica set hostname docs with correct error message and info about err.reason.servers #​11200
  • docs(populate): add virtual populate match option documentation #​11411 remirobichet
  • docs(document): add note to API docs that flattenMaps defaults to true for toJSON() but not toObject() #​11213
  • docs(document+model): add populate option to populate() API docs #​11170
  • docs(migrating_to_6): add additional info about removing omitUndefined #​11038
  • docs(migrating_to_6): add model.exists breaking change returning doument instead of boolean AbdelrahmanHafez

v6.2.2

Compare Source

==================

v6.2.1

Compare Source

===================

  • fix(document): handle validation with triply nested document arrays #​11564
  • fix(query): skip applying string schema setters on $regex #​11426
  • fix: skip findOneAndReplace() validation if runValidators = false #​11559
  • fix(model): correctly handle schema-level collations in syncIndexes() #​7621
  • fix(types): correct populate query return type with lean #​11560 mohammad0-0ahmad
  • fix(types): allow using { type: Mixed } as schema type definition for any path #​10900
  • docs: fix example on Schema.prototype.post() #​11648 EmilienLeroy
  • docs: fix typo in methods/index.js #​11651 eltociear

v6.2.0

Compare Source

==================

  • feat: upgrade MongoDB driver to 4.3.1
  • feat(connection+mongoose): add support for continueOnError for syncIndexes #​11266 AbdelrahmanHafez
  • feat(query): cast literals in $expr where possible #​10663
  • feat(schema+mongoose): add pluginTags to allow applying global plugins to only schemas with matching tags #​9780
  • feat(discriminator): support overwriteModels:true to reuse discriminator names #​11244 #​10931 IslandRhythms
  • feat(index.d.ts): add DocType generic param to Model functions that return queries to better support projections #​11156
  • feat(error): export MongooseServerSelectionError #​11202
  • feat(schematype): add validators, path, isRequired to public API and TypeScript types #​11139
  • fix(model): make exists(...) return lean document with _id or null instead of boolean #​11142 AbdelrahmanHafez
  • fix(model): support storing versionKey in nested paths #​10980
  • fix(index.d.ts): add options to bulkSave() type def #​11201 Uzlopak
  • fix(index.d.ts): better support for query projections #​11210 EugeneKorshenko

v6.1.10

Compare Source

===================

  • fix(mongoose): correctly handle destructured isValidObjectId #​11304
  • fix(mongoose): defer to MongoDB driver isValid() for isValidObjectId() #​11227

v6.1.9

Compare Source

==================

  • fix(query): respect nested schema strict as default when casting query filters #​11291
  • fix(mongoose): make isValidObjectId() consistent with isValid(), make ObjectId() casting more flexible #​11209
  • fix(setDefaultsOnInsert): ignore defaults underneath maps #​11235
  • fix(query): avoid setting nested schema properties that are stripped out by strictQuery to undefined in query filter #​11291
  • fix: check for all flags in a regex deepequal #​11242 Uzlopak
  • fix: replace substr with substring #​11278 Uzlopak
  • docs: port for documentation testing in CONTRIBUTING.md #​11273 Uzlopak

v6.1.8

Compare Source

==================

v6.1.7

Compare Source

==================

  • fix(model): correct handling for $push on a nested array #​11108
  • fix(update): correctly apply timestamps to update pipelines #​11151
  • fix(document): correctly handle modifying array subdocument after setting array subdocument to itself #​11172
  • fix(index.d.ts): allow passing options to model() in place of removed skipInit #​11137
  • fix(aggregate): allow passing verbosity to Aggregate.prototype.explain() #​11144
  • fix(index.d.ts): avoid TypeScript inferring _id as any type with HydratedDocument #​11085
  • docs: fix Node.js Driver compat link #​11214 wesbos
  • docs: remove extraneous backquote #​11204 joebowbeer

v6.1.6

Compare Source

==================

  • perf(document): delay creating document event emitter until used to improve memory usage, several small improvements to improve initing docs with large arrays #​10400
  • fix(model): avoid bulkSave() error when versionKey: false #​11186 #​11071 IslandRhythms
  • fix(model): revert #​11079: findByIdAndUpdate(undefined) breaking change #​11149
  • fix(index.d.ts): support strings in deep populate #​11181 ivalduan
  • fix(index.d.ts): rename map() -> transform() to line up with change in v6.0 #​11161
  • fix(index.d.ts): allow new Model(obj) for stricter type checks #​11148
  • fix(index.d.ts): make Schema.prototype.pre() and post() generics default to HydratedDocument #​11180
  • docs: improve autoCreate docs #​11116
  • docs(schematype): add missing parameter to example #​11185 kerolloz
  • docs(connections): use updated link to list of MongoDB Node driver connect() options #​11184 splinter
  • docs(aggregate): fix formatting #​11191 enieber
  • docs: fix broken link #​11179 khairnarsaurabh23

v6.1.5

Compare Source

==================

  • perf(index.d.ts): simplify Schema typedef for query helpers and methods to significantly reduce TS compiler overhead #​10349
  • fix(document): allow populating deeply nested models as strings #​11168 #​11160 AbdelrahmanHafez
  • fix(query): allow calling limit() and skip() with a string #​11017
  • fix(cursor): propery apply selected fields when loading discriminator docs with query cursor #​11130
  • fix(mongoose+connection): clone schema correctly when passing instance of another Mongoose instance's Schema to Connection.prototype.model() #​11047
  • fix(index.d.ts): handle primitives with FlattenMaps #​11117
  • fix(index.d.ts): enforce id on lean query result type #​11118
  • fix(index.d.ts): export facet stage type #​11150 mhoc
  • fix(index.d.ts): correct return type of projection method #​11176 EugeneKorshenko
  • fix(index.d.ts): additional fix for $group pipeline stage #​11140 #​11067 EugeneKorshenko
  • docs: update CONTRIBUTING.md for TS tests #​11164 ahmedelshenawy25
  • docs: use es6 object destructuring instead of regular dot operator for accessing value in object #​11147 Shivaansh-Agarwal

v6.1.4

Compare Source

==================

  • fix(document): handle save with undefined nested doc under subdoc #​11110
  • fix(document): allow manually populating subdocument refs with create() #​10856
  • fix(populate): handles refPath underneath map of subdocuments #​9359
  • fix(update): throw error when calling findByIdAndUpdate with undefined id #​11079 gramliu
  • fix(mongoose): export ConnectionStates #​11133 orgads
  • fix(index.d.ts): unpack array when using generic type override with populate() #​11027
  • fix(index.d.ts): fix typings in Merge stage #​11132
  • fix(index.d.ts): PipelineStage.Merge interface definition is wrong #​11109
  • docs(typescript): add note about Schema.Types.ObjectId vs Types.ObjectId in document definition #​10949
  • docs(connection): clarify that "connected" and "open" are different #​10886
  • docs(populate): correct refPath example to not use on as a schema path name #​11113
  • docs: fix strictQuery example #​11135 MontgomeryWatts

v6.1.3

Compare Source

==================

  • perf(populate): avoid duplicate model names when using refPath to avoid O(n^2) memory growth with number of array elements #​10983
  • fix(schema+model): cast paths marked with ref when hydrating #​11052
  • fix(schema): handle default function that returns null on document arrays #​11058
  • fix(document): clean modified paths when setting deeply nested subdocument #​11060
  • fix(populate): report full path when throwing strictPopulate error with deep populate #​10923
  • fix(connection): allow calling setClient() when disconnected #​11114 hustxiaoc
  • fix(index.d.ts): fix typings in Group stage #​11124 DavideViolante
  • fix(index.d.ts): add Mongoose.prototype.trusted() function to type defs #​10957
  • fix(index.d.ts): allow use type string in $unset update with aggregation pipeline #​11107 rpenido
  • fix(index.d.ts) treat _id like other fields in $project #​11102
  • docs(migrating_to_6): add omitUndefined to Mongoose 6 migration guide #​10672
  • docs: add MongooseDocumentArray to API docs #​10998
  • docs: fix typo in model.js #​11121 eltociear
  • docs: fix typo in validation.md #​11103 warlock1996

v6.1.2

Compare Source

==================

  • fix: upgrade mongodb driver to 4.2.2 #​11092 lorand-horvath
  • fix(model): respect discriminators when calling Model.watch() #​11007
  • fix(populate): allow referencing parent connection models by name when using useDb() #​11003
  • fix(query): support options param to Query.prototype.countDocuments() #​11037
  • fix(query): correctly use awaitData instead of awaitdata in Query.prototype.tailable() #​10875
  • fix(index.d.ts): fix replaceRoot type #​11098 alibehroozi
  • fix(index.d.ts): add missing syncIndexes() definition to Mongoose global and Connection class #​11065
  • fix(index.d.ts): add boolean type for transform option #​11057 AliYusuf95
  • docs(model.estimatedDocumentCount): add await into example to get value from the Query #​11044 olecom
  • docs: fix broken build from awaitdata comment #​11096 medolino
  • docs: correct Query.prototype.transform() docs #​11094 medolino

v6.1.1

Compare Source

===================

  • fix(mongoose): correctly handle destructured isValidObjectId #​11304
  • fix(mongoose): defer to MongoDB driver isValid() for isValidObjectId() #​11227

v6.1.0

Compare Source

==================

v6.0.15

Compare Source

===================

  • fix(document): avoid overwriting schema methods when creating a new document with new Model() and strict: false #​11001
  • fix(document): avoid overwriting top-level document _id with nested _id when strict = false #​10934
  • fix(collection): avoid double-calling callback on sync error #​10956
  • fix(connection): handle direct connection to uninitialized replica set that then becomes initialized #​10948
  • fix(index.d.ts): allow partial updates on subdocuments for defaults #​10947
  • fix(index.d.ts): handle buffer type in schema definitions #​11026

v6.0.14

Compare Source

===================

  • fix(document): catch errors in required functions #​10968
  • fix(connection): clone schema when passing a schema from a different copy of Mongoose to Connection#model() #​10904
  • fix(populate): set empty array [] on virtual populate with no result #​10992
  • fix(query): handle orFail() with replaceOne() #​10963
  • fix(populate): use Model by default when using Model.populate() on a POJO #​10978
  • fix(document): throw VersionError if saving a document with version bump and document isn't found #​10974
  • fix(index.d.ts): make populate type param optional #​10989 mohd-akram
  • docs(migrating_to_6): add a note about minimize and toObject() behavior change in v5.10.5 #​10827
  • docs: remove duplicate path in docs #​11020 ItWorksOnMyMachine
  • docs: fix typo in populate docs #​11015 gavi-shandler
  • docs: fix typo in model.js #​10982 eltociear

v6.0.13

Compare Source

===================

  • fix(document): allows validating doc again if pre validate errors out #​10830
  • fix: upgrade to mongodb driver 4.1.4 #​10955 mohd-akram
  • fix(schema): handle functions with accidental type properties in schema definitions #​10807
  • fix(path): add check to avoid flattening dotted paths on Mongoose docs, improve error when flattening dotted paths causes conflicts #​10825
  • fix(index.d.ts): rename EnforceDocument -> HydratedDocument, export HydratedDocument for easier typing for users #​10843
  • fix(index.d.ts): handle maps in TypeScript schema definitions #​10838
  • fix(index.d.ts): add clone to query #​10943 asportnoy
  • fix(index.d.ts): add strictQuery global option #​10933
  • fix(index.d.ts): add generic to allow overriding Schema#clone() return type #​10951 StefanoA1
  • docs(typescript): add quick guide to virtuals in TypeScript #​10754
  • docs(aggregate): remove exec() from AggregationCursor example, no longer correct for Mongoose 6 #​10862
  • docs(document.js): fix link leading to old github pages site #​10958 PuneetGopinath
  • docs: fixed typo in document.js #​10950 Haosik

v6.0.12

Compare Source

===================

  • fix(cursor): remove the logic for emitting close, rely on autoDestroy option for Node 12 support #​10906 iovanom
  • fix(map): support passing flattenMaps: false to Map toJSON(), make toJSON() flatten maps by default in TypeScript #​10872
  • fix: upgrade to mongodb driver 4.1.3 #​10911 orgads
  • fix(index.d.ts): correct TS function signature for SchemaType.prototype.set() #​10799
  • fix(index.d.ts): support implicit $in in FilterQuery #​10826
  • fix(index.d.ts): More precise type for Schema.clone() #​10899 coyotte508
  • fix(index.d.ts): add caster property to schema arrays and document arrays #​10865
  • docs: update updateMany() and deleteMany() docs to reflect new matchedCount, modifiedCount, deletedCount properties #​10908 IslandRhythms
  • docs: fix broken links to populate virtuals #​10870 IslandRhythms
  • docs: updated docs to have returnOriginal, removed new and returnDocument #​10887 IslandRhythms

v6.0.11

Compare Source

===================

  • perf(index.d.ts): remove some unnecessary definitions, streamline some union types to reduce number of instantiations #​10349
  • fix(cursor): use stream destroy method on close to prevent emitting duplicate 'close' #​10878 #​10876 iovanom
  • fix: create indexes when readPreference=primary is set #​10861 #​10855 gemyero
  • fix(document): avoid depopulating when setting array of subdocs from different doc #​10819
  • fix(index.d.ts): allow modifying properties of UpdateQuery instances #​10786
  • fix(index.d.ts): add generic Paths to populate() to allow overriding path types #​10758

v6.0.10

Compare Source

===================

  • fix(query): add back strictQuery option to avoid empty filter issues, tie it to strict by default for compatibility #​10781 #​10763
  • fix(model): avoid unnecessarily dropping text indexes in syncIndexes() #​10851 #​10850 IslandRhythms
  • fix(query): avoid trying to call toArray() on cursor if find() error occurred #​10845
  • fix: accepts uppercase values in mongoose.isValidObjectId #​10846 foxadb
  • perf(document): further reduce unnecessary objects and keys to minimize document memory overhead #​10400
  • fix(index.d.ts): restore unpacked type and avoid distributive conditional types #​10859 dbellavista
  • fix(index.d.ts): add correct null typings for findOneAndUpdate() and findByIdAndUpdate() #​10820
  • fix(index.d.ts): make insertMany() correctly return Promise if passing single document to insertMany() #​10802
  • fix(index.d.ts): avoid weird issue where TypeScript 4.3.x and 4.4.x makes string extend Function #​10746
  • fix(index.d.ts): allow type: SchemaTypeOptions[] when defining schema #​10789
  • fix(index.d.ts): allow using $in with enum fields #​10757 #​10734
  • fix(index.d.ts): add missing fields and options params to Model constructor #​10817
  • fix(index.d.ts): support extending type for mongoose.models #​10806 MunifTanjim
  • docs: enhance docs section linking #​10779 saveman71
  • docs(middleware): add missing query middleware #​10721
  • docs: fix typo #​10853 mdatif796
  • docs: add missing to #​10848 digidub

v6.0.9

Compare Source

==================

  • fix(document): init non-schema values if strict is set to false #​10828
  • fix(document): correctly track saved state for deeply nested objects #​10773
  • fix(array): avoid mutating arrays passed into Model() constructor #​10766
  • fix(cursor): allow using find().cursor() before connecting, report errors in pre('find') hooks when using .cursor() #​10785
  • fix(populate): support ref: Model with virtual populate #​10695
  • fix(schema): support type: { subpath: String } in document array definitions and improve schema interpretAsType error messages if type name is undefined #​10750
  • fix: upgrade to mongodb driver 4.1.2 #​10810 orgads
  • fix(subdocument): add extra precaution to throw an error if a subdocument is a parent of itself in ownerDocument() #​9259
  • perf(index.d.ts): make model() call more strict to improve VS Code autocomplete perf #​10801 traverse1984
  • fix(index.d.ts): allow calling depopulate with 0 args #​10793
  • fix(index.d.ts): Add type definitions for allowDiskUse #​10791 coyotte508
  • docs(populate): expand virtual populate docs with info on principle of least cardinality and other info #​10558
  • docs: add migration guide to side bar #​10769
  • docs(connections+api): clarify that maxPoolSize is now 100 by default #​10809
  • docs(schema): add Schema#virtuals to docs as a public property #​10829
  • docs: remove array indexes section from FAQ #​10784 Duchynko
  • docs(model): fix broken example #​10831 Okekeprince1
  • docs: fix markdown issue with schemas.md #​10839 aseerkt

v6.0.8

Compare Source

==================

  • fix: support $set on elements of map of subdocuments #​10720
  • fix(schematype): handle schema type definition where unique: false and index not set #​10738
  • fix(timestamps): handle createdAt with custom typeKey #​10768 #​10761 jclaudan
  • fix(model): amend Model.translateAliases to observe non-aliased sub schemas #​10772 frisbee09
  • fix: allow ObjectId#valueOf() to override built-in Object#valueOf(), clarify using == with ObjectIds in migration guide #​10741
  • fix: use process.emitWarning() instead of console.warn() for warnings #​10687
  • fix(index.d.ts): allow array of schema type options for string[], number[] property Schema definitions #​10731
  • fix(index.d.ts): make built-in subdocument properties not required in UpdateQuery #​10597
  • docs(ssl): correct sslCA option and clarify that sslCA should be the path to the CA file #​10705

v6.0.7

Compare Source

==================

  • fix(populate): wrap populate filters in trusted() so they work with sanitizeFilter #​10740
  • fix(aggregate): handle calling aggregate() before initial connection succeeds #​10722
  • fix(query): avoid throwing error when using $not with $size #​10716 IslandRhythms
  • fix(discriminator): handle setting nested discriminator paths #​10702
  • fix(documentarray): don't throw TypeError on DocumentArray#create() when top-level doc has populated paths #​10749
  • fix(update): avoid setting single nested subdoc defaults if subdoc isn't set #​10660
  • fix: delay creating id virtual until right before model compilation to allow plugins to disable the id option #​10701
  • fix(connection): correct auth object when using user option to connect() #​10727 #​10726 saveman71
  • fix(timestamps): avoid calling getters when checking whether createdAt is set #​10742 kaishu16
  • fix(index.d.ts): allow using strings for ObjectIds with $in #​10735
  • fix(index.d.ts): add TVirtuals generic to Model to make it easier to separate virtuals from DocType #​10689
  • fix(index.d.ts): add Model.bulkSave() definition #​10745
  • fix(index.d.ts): allow RegExp for match in schema definition #​10744 easen-amp
  • fix(index.d.ts): allow arbitrary additional keys in QueryOptions #​10688
  • docs: correct TypeScript schema generic params in docs #​10739 minifjurt123
  • docs: fix h2 header links #​10682 IslandRhythms

v6.0.6

Compare Source

==================

  • perf(index.d.ts): streamline SchemaDefinitionType and SchemaTypeOptions to reduce number of instantiations and speed up lib checking #​10349
  • perf(document): make $locals a getter/setter, avoid creating unnecessary undefined properties in Document constructor, remove unnecessary event listeners #​10400
  • fix(connection): use username parameter for MongoDB driver instead of user #​10727 saveman71
  • fix(update): handle casting $or and $and in array filters #​10696
  • fix(connection): allow calling connection helpers before calling mongoose.connect() #​10706
  • fix(document): correctly handle subpaths of arrays that contain non-alphanumeric chars like - #​10709
  • fix(index.d.ts): correct return value for findOneAndUpdate(), findByIdAndUpdate() to support query helpers #​10658
  • fix(index.d.ts): add missing methods to ValidationError & ValidatorError classes #​10725 medfreeman
  • perf(subdocument): make internal $isSingleNested and $isDocumentArrayElement properties constants on the prototype rather than setting them on every instance #​10400
  • docs: improve Document#populate documentation, tests #​10728 saveman71

v6.0.5

Compare Source

==================

  • fix(model): allow calling Model.validate() static with POJO array #​10669
  • fix(cast): let $expr through in query filters if strict mode enabled #​10662
  • fix(map): propagate flattenMaps option down to nested maps #​10653
  • fix(setDefaultsOnInsert): avoid adding unnecessary auto _id to $setOnInsert #​10646
  • fix(schema): support object with values and message syntax for Number enums #​10648
  • fix(index.d.ts): fix Document#populate() type #​10651 thiagokisaki
  • fix(index.d.ts): allow using $in and $nin on array paths #​10605
  • fix(index.d.ts): make _id required in query results and return value from create() #​10657
  • docs: update deprecations.md to reflect version 6 #​10673 multiwebinc
  • docs: fix typo in queries.md #​10681 yogabonito
  • docs: fix typo in models.md #​10680 yogabonito
  • ci: add test for ubuntu-20.04 #​10679 YC

v6.0.4

Compare Source

==================

  • fix(schema): handle maps of maps #​10644
  • fix: avoid setting defaults on insert on a path whose subpath is referenced in the update #​10624
  • fix(index.d.ts): simplify UpdateQuery to avoid "excessively deep and possibly infinite" errors with extends Document and any #​10617
  • fix(index.d.ts): allow using type: [documentDefinition] when defining a doc array in a schema #​10605
  • docs: remove useNewUrlParser, useUnifiedTopology, some other legacy options from docs #​10631 #​10632
  • docs(defaults): clarify that setDefaultsOnInsert is true by default in 6.x #​10643
  • test: use async/await instead of co #​10633 AbdelrahmanHafez

v6.0.3

Compare Source

==================

v6.0.2

Compare Source

==================

  • fix(query): handle find() when buffering on initial connection #​10610
  • fix(populate): get doc schema using $__schema to avoid paths named schema #​10619
  • docs: use async/await in the quickstart #​10610
  • docs: fix links to guide, schematypes, connections in v5.x docs #​10607
  • docs: add link to 6.x migration guide to schemas guide #​10616
  • docs: add migration to 6.x in Migration Guides section #​10618 HunterKohler
  • docs: fix missing URL part on layout.pug #​10622 ItsLhun

v6.0.1

Compare Source

===================

  • fix(document): avoid overwriting schema methods when creating a new document with new Model() and strict: false #​11001
  • fix(document): avoid overwriting top-level document _id with nested _id when strict = false #​10934
  • fix(collection): avoid double-calling callback on sync error #​10956
  • fix(connection): handle direct connection to uninitialized replica set that then becomes initialized #​10948
  • fix(index.d.ts): allow partial updates on subdocuments for defaults #​10947
  • fix(index.d.ts): handle buffer type in schema definitions #​11026

v6.0.0

Compare Source

==================

  • Follow the migration guide to get a list of all breaking changes in v6.0.
  • BREAKING CHANGE: remove the deprecated safe option in favor of write concerns
  • fix: upgrade to mongodb driver 4.1.1
  • fix: consistently use $__parent to store subdoc parent as a property, and $parent() as a getter function #​10584 #​10414
  • fix: allow calling countDocuments() with options

v5.13.14

Compare Source

====================

  • fix(timestamps): avoid setting createdAt on documents that already exist but dont have createdAt #​11024
  • docs(models): fix up nModified example for 5.x #​11055

v5.13.13

Compare Source

====================

v5.13.12

Compare Source

====================

  • fix(cursor): use stream destroy method on close to prevent emitting duplicate 'close' #​10897 iovanom
  • fix(index.d.ts): backport streamlining of FilterQuery and DocumentDefinition to avoid "excessively deep and possibly infinite" TS errors #​10617

v5.13.11

Compare Source

====================

  • fix: upgrade mongodb -> 3.7.2 #​10871 winstonralph
  • fix(connection): call setMaxListeners(0) on MongoClient to avoid event emitter memory leak warnings with useDb() #​10732

v5.13.10

Compare Source

====================

  • fix(index.d.ts): allow using type: SchemaDefinitionProperty in schema definitions #​10674
  • fix(index.d.ts): allow AnyObject as param to findOneAndReplace() #​10714

v5.13.9

Compare Source

===================

  • fix(populate): avoid setting empty array on lean document when populate result is undefined #​10599
  • fix(document): make depopulate() handle populated paths underneath document arrays #​10592
  • fix: peg @​types/bson version to 1.x || 4.0.x to avoid stubbed 4.2.x release #​10678
  • fix(index.d.ts): simplify UpdateQuery to avoid "excessively deep and possibly infinite" errors with extends Document and any #​10647
  • fix(index.d.ts): allow specifying weights as an IndexOption #​10586
  • fix: upgrade to mpath v0.8.4 re: security issue #​10683

v5.13.8

Compare Source

===================

  • fix(populate): handle populating subdoc array virtual with sort #​10552
  • fix(model): check for code instead of codeName when checking for existing collections for backwards compat with MongoDB 3.2 #​10420
  • fix(index.d.ts): correct value of this for custom query helper methods #​10545
  • fix(index.d.ts): allow strings for ObjectIds in nested properties #​10573
  • fix(index.d.ts): add match to VirtualTypeOptions.options #​8749
  • fix(index.d.ts): allow QueryOptions populate parameter type PopulateOptions #​10587 osmanakol
  • docs(api): add Document#$where to API docs #​10583
remy/nodemon

v2.0.16

Compare Source

Bug Fixes
  • support windows by using path.delimiter (e26aaa9)

v2.0.15

Compare Source

Bug Fixes

v2.0.14

Compare Source

Bug Fixes

v2.0.13

Compare Source

Bug Fixes
jaredhanson/passport

v0.6.0

Compare Source

Added
  • authenticate(), req#login, and req#logout accept a keepSessionInfo: true option to keep session information after regenerating the session.
Changed
  • req#login() and req#logout() regenerate the the session and clear session information by default.
  • req#logout() is now an asynchronous function and requires a callback function as the last argument.
Security
  • Improved robustness against session fixation attacks in cases where there is physical access to the same system or the application is susceptible to cross-site scripting (XSS).

v0.5.3

Compare Source

Fixed
  • initialize() middleware extends request with login(), logIn(), logout(), logOut(), isAuthenticated(), and isUnauthenticated() functions again, reverting change from 0.5.1.

v0.5.2

Compare Source

Fixed
  • Introduced a compatibility layer for strategies that depend directly on passport@0.4.x or earlier (such as passport-azure-ad), which were broken by the removal of private variables in passport@0.5.1.

v0.5.1

Compare Source

Added
  • Informative error message in session strategy if session support is not available.
Changed
  • authenticate() middleware, rather than initialize() middleware, extends request with login(), logIn(), logout(), logOut(), isAuthenticated(), and isUnauthenticated() functions.

v0.5.0

Compare Source

Changed
  • initialize() middleware extends request with login(), logIn(), logout(), logOut(), isAuthenticated(), and isUnauthenticated() functions.
Removed
  • login(), logIn(), logout(), logOut(), isAuthenticated(), and isUnauthenticated() functions no longer added to http.IncomingMessage.prototype.
Fixed
  • userProperty option to initialize() middleware only affects the current request, rather than all requests processed via singleton Passport instance, eliminating a race condition in situations where initialize() middleware is used multiple times in an application with userProperty set to different values.
postcss/postcss

v8.4.14

Compare Source

  • Print “old plugin API” warning only if plugin was used (by @​zardoy).

v8.4.13

Compare Source

  • Fixed append() error after using .parent (by Jordan Pittman).

v8.4.12

Compare Source

  • Fixed package.funding to have same value between all PostCSS packages.

v8.4.11

Compare Source

  • Fixed Declaration#raws.value type.

v8.4.10

Compare Source

  • Fixed package.funding URL format.

v8.4.9

Compare Source

  • Fixed package.funding (by Álvaro Mondéjar).

v8.4.8

Compare Source

  • Fixed end position in empty Custom Properties.

v8.4.7

Compare Source

  • Fixed Node#warn() type (by Masafumi Koba).
  • Fixed comment removal in values after ,.

v8.4.6

Compare Source

  • Prevented comment removing when it change meaning of CSS.
  • Fixed parsing space in last semicolon-less CSS Custom Properties.
  • Fixed comment cleaning in CSS Custom Properties with space.
  • Fixed throwing an error on .root access for plugin-less case.

v8.4.5

Compare Source

  • Fixed raws types to make object extendable (by James Garbutt).
  • Moved from Yarn 1 to pnpm.

v8.4.4

Compare Source

  • Fixed absolute path in source map on zero plugins mode.

v8.4.3

Compare Source

  • Fixed this.css.replace is not a function error.

v8.4.2

Compare Source

  • Fixed previous source map support in zero plugins mode.

v8.4.1

Compare Source

  • Print “old plugin API” warning only if plugin was used (by @​zardoy).

v8.4.0

Compare Source

President Camio seal

PostCSS 8.4 brought ranges for warnings and errors, smaller node_modules size, lazy parsing to avoid PostCSS does nothing warning, and TypeScript fixes.

Thanks to Sponsors

This release was possible thanks to our community.

Sponsored by Tailwind CSS Sponsored by ThemeIsle

If your company wants to support the sustainability of front-end infrastructure or wants to give some love to PostCSS, you can join our supporters by:

Rages for Errors and Warnings

@​adalinesimonian, the author of amazing Stylelint extension for VS Code, added ranges to errors and warnings.

result.warn(msg, { index })           // One character warning at index
result.warn(msg, { endIndex })        // Starts at node start, ends at endIndex
result.warn(msg, { index, endIndex }) // Starts at index, ends at endIndex
result.warn(msg, { start })           // Starts at start, ends at node end
result.warn(msg, { end })             // Starts at node start, ends at end
result.warn(msg, { start, end })      // Starts at start, ends at end
result.warn(msg, { word })            // Starts at word location, ends at word index + length

It will improve DX in the IDE extension.

Lazy Parsing

Previously, we found that many tools run PostCSS even if the developer didn’t pass any PostCSS plugins. Parsing is the most expensive step in CSS processing. It led to a waste of resources without any reason.

We tried to resolve the problem by adding a PostCSS does nothing warning. But it didn’t force tool authors to be more careful with user’s resources.

If PostCSS sees that tool call it without passing plugins (or changing parser/stringifier), PostCSS will not parse CSS (until toll will call Result#root). In 8.4, @​bogdan0083 (with the help of @​WilhelmYakunin) tries to solve the problem in another way. It allows us to save resources and remove the PostCSS does nothing warning.

// No plugins, we do not parse CSS
let result = await postcss().process(css, { from  })
result.css  // Is the same string passed to process()
result.map  // Special 1-to-1 source map
result.root // CSS will parsed only here

Install Size Reduction

With ≈60M weekly downloads, PostCSS has responsibility for the world’s resource spending.

Together with @​7rulnik we reduced source-map-js size. It is transitive dependency of PostCSS.

In 8.4, we moved to a fixed version of source-map-js, which reduced the postcss size in your node_modules from ≈1 MB to 0.3 MB. With the huge popularity of PostCSS, it will free a lot of resources on our CIs.

PostCSS install size reduction #### Migration from Jest to `uvu`

@​kimoofey refactored all tests from the popular Jest framework to small and fast uvu.

It will not affect end-users. However, it reduced our node_modules size by 33 MB and made tests twice faster (yarn install & yarn unit: 24 → 13 seconds).

TypeScript Fixes

  • Added Processor types.
  • Added Stringifier types (by @​43081j).
  • Fixed types Root and Document in result values (by @​43081j).
  • Fixed Node#walkRules() types (by @​hudochenkov).

Other Changes

v8.3.11

Compare Source

  • Remove debugging code.

v8.3.10

Compare Source

  • Fixed Maximum call stack issue of some source maps (by Yeting Li).

v8.3.9

Compare Source

  • Replaced nanocolors to picocolors.
  • Reduced package size.

v8.3.8

Compare Source

  • Update nanocolors.

v8.3.7

Compare Source

  • Replaced colorette to nanocolors.
  • Added bug field to package.json (by Christian Oliff).
  • Improved docs (by Andrew Bruce and Paul Shryock).
postcss/postcss-cli

v9.1.0

Compare Source

v9.0.2

Compare Source

  • Switch to picocolors (#​409)
  • Remove test files from npm package

v9.0.1

Compare Source

  • Actually exit with error when attempting to stdout in watch mode
  • Remove bin/ from files in package.json

v9.0.0

Compare Source

  • BREAKING: Require Node.js v12+
  • BREAKING: Must specify full file path, including .js extension, when loading local plugins with --use (#​401)
  • BREAKING: Officially remove support for watching postcss config (was already broken in previous releases)
  • Add support for dir-dependency messages (#​383, #​391)
  • Update deps
facebook/react

v18.1.0

Compare Source

React DOM
React DOM Server
ESLint Plugin: React Hooks
Use Subscription

v18.0.0

Compare Source

Below is a list of all new features, APIs, deprecations, and breaking changes. Read React 18 release post and React 18 upgrade guide for more information.

New Features
React
  • useId is a new hook for generating unique IDs on both the client and server, while avoiding hydration mismatches. It is primarily useful for component libraries integrating with accessibility APIs that require unique IDs. This solves an issue that already exists in React 17 and below, but it’s even more important in React 18 because of how the new streaming server renderer delivers HTML out-of-order.
  • startTransition and useTransition let you mark some state updates as not urgent. Other state updates are considered urgent by default. React will allow urgent state updates (for example, updating a text input) to interrupt non-urgent state updates (for example, rendering a list of search results).
  • useDeferredValue lets you defer re-rendering a non-urgent part of the tree. It is similar to debouncing, but has a few advantages compared to it. There is no fixed time delay, so React will attempt the deferred render right after the first render is reflected on the screen. The deferred render is interruptible and doesn't block user input.
  • useSyncExternalStore is a new hook that allows external stores to support concurrent reads by forcing updates to the store to be synchronous. It removes the need for useEffect when implementing subscriptions to external data sources, and is recommended for any library that integrates with state external to React.
  • useInsertionEffect is a new hook that allows CSS-in-JS libraries to address performance issues of injecting styles in render. Unless you’ve already built a CSS-in-JS library we don’t expect you to ever use this. This hook will run after the DOM is mutated, but before layout effects read the new layout. This solves an issue that already exists in React 17 and below, but is even more important in React 18 because React yields to the browser during concurrent rendering, giving it a chance to recalculate layout.
React DOM Client

These new APIs are now exported from react-dom/client:

  • createRoot: New method to create a root to render or unmount. Use it instead of ReactDOM.render. New features in React 18 don't work without it.
  • hydrateRoot: New method to hydrate a server rendered application. Use it instead of ReactDOM.hydrate in conjunction with the new React DOM Server APIs. New features in React 18 don't work without it.

Both createRoot and hydrateRoot accept a new option called onRecoverableError in case you want to be notified when React recovers from errors during rendering or hydration for logging. By default, React will use reportError, or console.error in the older browsers.

React DOM Server

These new APIs are now exported from react-dom/server and have full support for streaming Suspense on the server:

  • renderToPipeableStream: for streaming in Node environments.
  • renderToReadableStream: for modern edge runtime environments, such as Deno and Cloudflare workers.

The existing renderToString method keeps working but is discouraged.

remix-run/react-router

v6.3.0

Compare Source

What's Changed
New Contributors

Full Changelog: https://github.com/remix-run/react-router/compare/v6.2.2...v6.3.0

v6.2.2

Compare Source

What's Changed
🐛 Bug Fixes
  • Fixed nested splat routes that begin with special URL-safe characters (#​8563)
  • Fixed a bug where index routes were missing route context in some cases (#​8497)
New Contributors

Full Changelog: https://github.com/remix-run/react-router/compare/v6.2.1...v6.2.2

v6.2.1

Compare Source

This release updates the internal history dependency to 5.2.0.

Full Changelog: https://github.com/remix-run/react-router/compare/v6.2.0...v6.2.1

v6.2.0

Compare Source

🐛 Bug fixes
  • Fixed the RouteProps element type, which should be a ReactNode (#​8473)
  • Fixed a bug with useOutlet for top-level routes (#​8483)
Features
  • We now use statically analyzable CJS exports. This enables named imports in Node ESM scripts (See the commit).
New Contributors

Full Changelog: https://github.com/remix-run/react-router/compare/v6.1.1...v6.2.0

v6.1.1

Compare Source

In v6.1.0 we inadvertently shipped a new, undocumented API that will likely introduce bugs (#​7586). We have flagged HistoryRouter as unstable_HistoryRouter, as this API will likely need to change before a new major release.

Full Changelog: https://github.com/remix-run/react-router/compare/v6.1.0...v6.1.1

v6.1.0

Compare Source

🐛 Bug fixes
  • Fixed a bug that broke support for base64 encoded IDs on nested routes (#​8291)
Features
  • <Outlet> can now receive a context prop. This value is passed to child routes and is accessible via the new useOutletContext hook. See the API docs for details. (#​8461)
  • <NavLink> can now receive a child function for access to its props. (#​8164)
💅 Enhancements
  • Improved TypeScript signature for useMatch and matchPath. For example, when you call useMatch("foo/:bar/:baz"), the path is parsed and the return type will be PathMatch<"bar" | "baz">. (#​8030)
  • A few error message improvements (#​8202)
New Contributors

Full Changelog: https://github.com/remix-run/react-router/compare/v6.0.1...v6.1.0

v6.0.2

Compare Source

Features
  • Added the reloadDocument prop to <Link>. This allows <Link> to function like a normal anchor tag by reloading the document after navigation while maintaining the relative to resolution.
🗒️ Docs
  • Fixed several issues in docblocks and the docs themselves. See the full changelog for the deets!
🤝 New Contributors
Full Changelog

v6.0.1

Compare Source

🐛 Bug Fixes
  • Add a default <StaticRouter location> value (#​8243)
  • Add invariant for using <Route> inside <Routes> to help people make the change (#​8238)

v6.0.0

Compare Source

React Router v6 is here!

Please go read our blog post for more information on all the great stuff in v6 including notes about how to upgrade from React Router v5 and Reach Router.

v5.3.3

Compare Source

This release fixes a bad version selector in react-router-native.

v5.3.2

Compare Source

v5.3.1

Compare Source

This release adds missing LICENSE files to the published build.

v5.2.1

Compare Source

This release fixes a bug with <Link> so that, when the to location is the same as the current, the history state entry is replaced instead of pushed to the stack. See https://github.com/remix-run/react-router/issues/5362 for details. 🥳

Thanks to @​guidobouman for the MR and for everyone else who weighed in for the fix!

facebook/create-react-app

v5.0.1

Compare Source

Inside any created project that has not been ejected, run:

npm install --save --save-exact react-scripts@5.0.1

or

yarn add --exact react-scripts@5.0.1
🐛 Bug Fix
💅 Enhancement
📝 Documentation
🏠 Internal
Committers: 11

5.0.0 (2021-12-14)

Create React App 5.0 is a major release with several new features and the latest version of all major dependencies.

Thanks to all the maintainers and contributors who worked so hard on this release! 🙌

v5.0.0

Compare Source

Inside any created project that has not been ejected, run:

npm install --save --save-exact react-scripts@5.0.1

or

yarn add --exact react-scripts@5.0.1
🐛 Bug Fix
💅 Enhancement
📝 Documentation
🏠 Internal
Committers: 11

5.0.0 (2021-12-14)

Create React App 5.0 is a major release with several new features and the latest version of all major dependencies.

Thanks to all the maintainers and contributors who worked so hard on this release! 🙌

sass/dart-sass

v1.52.1

Compare Source

Command Line Interface
  • Fix a bug where --watch mode would close immediately in TTY mode. This was caused by our change to close --watch when stdin was closed outside of TTY mode, which has been reverted for now while we work on a fix.

v1.52.0

Compare Source

  • Add support for arbitrary modifiers at the end of plain CSS imports, in addition to the existing supports() and media queries. Sass now allows any sequence of identifiers of functions after the URL of an import for forwards compatibility with future additions to the CSS spec.

  • Fix an issue where source locations tracked through variable references could potentially become incorrect.

  • Fix a bug where a loud comment in the source can break the source map when embedding the sources, when using the command-line interface or the legacy JS API.

JS API
  • SassNumber.assertUnit() and SassNumber.assertNoUnits() now correctly return the number called on when it passes the assertion.

v1.51.0

Compare Source

  • Potentially breaking change: Change the order of maps returned by map.deep-merge() to match those returned by map.merge(). All keys that appeared in the first map will now be listed first in the same order they appeared in that map, followed by any new keys added from the second map.

  • Improve the string output of some AST nodes in error messages.

v1.50.1

Compare Source

Embedded Sass
  • The JS embedded host and the embedded compiler will now properly avoid resolving imports relative to the current working directory unless '.' is passed as a load path.

  • Fix a bug in the JS embedded host's implementation of the legacy JS API where imports that began with / could crash on Windows.

v1.50.0

Compare Source

  • @extend now treats [:where()][:where()] the same as :is().
Command Line Interface
  • Closing the standard input stream will now cause the --watch command to stop running.
Embedded Sass
  • Fix a bug where the JS embedded host crashed when invoking a legacy importer after resolving a relative filesystem import.

  • Improve error messages when returning non-Object values from legacy importers.

v1.49.11

Compare Source

  • Add support for 64-bit ARM releases on Linux.
Embedded Sass
  • The embedded compiler now correctly sets the id field for all OutboundMessages.

v1.49.10

Compare Source

  • Quiet deps mode now silences compiler warnings in mixins and functions that are defined in dependencies even if they're invoked from application stylesheets.

  • In expanded mode, Sass will now emit colors using rgb(), rbga(), hsl(), and hsla() function notation if they were defined using the corresponding notation. As per our browser support policy, this change was only done once 95% of browsers were confirmed to support this output format, and so is not considered a breaking change.

    Note that this output format is intended for human readability and not for interoperability with other tools. As always, Sass targets the CSS specification, and any tool that consumes Sass's output should parse all colors that are supported by the CSS spec.

  • Fix a bug in which a color written using the four- or eight-digit hex format could be emitted as a hex color rather than a format with higher browser compatibility.

  • Calculations are no longer simplified within supports declarations

v1.49.9

Compare Source

Embedded Sass
  • Fixed a bug where the legacy API could crash when passed an empty importer list.

v1.49.8

Compare Source

  • Fixed a bug where some plain CSS imports would not be emitted.
JS API
  • Fix a bug where inspecting the Sass module in the Node.js console crashed on Node 17.
Embedded Sass
  • Fix a bug where source map URLs were incorrectly generated when passing importers to the legacy API.

v1.49.7

Compare Source

Embedded Sass
  • First stable release the sass-embedded npm package that contains the Node.js Embedded Host.

  • First stable release of the sass_embedded pub package that contains the Embedded Dart Sass compiler.

v1.49.6

Compare Source

  • No user-visible changes.

v1.49.5

Compare Source

  • No user-visible changes.

v1.49.4

Compare Source

  • No user-visible changes.

v1.49.3

Compare Source

  • No user-visible changes.

v1.49.2

Compare Source

  • No user-visible changes.

v1.49.1

Compare Source

  • Add support for 64-bit ARM releases on Linux.
Embedded Sass
  • The embedded compiler now correctly sets the id field for all OutboundMessages.

v1.49.0

Compare Source

  • Fix a bug in string.insert with certain negative indices.
JS API
  • Add support for the sourceMapIncludeSources option in the new JS API.
TypeScript Declarations
  • Fix a bug where LegacyPluginThis.options.linefeed was typed to return abbreviations when it actually returned literal linefeed characters.

v1.48.0

Compare Source

JS API
  • Potentially breaking bug fix: Match the specification of the new JS API by setting LegacyResult.map to undefined rather than null.
TypeScript Declarations
  • Add a declaration for the NULL constant.

v1.47.0

Compare Source

JS API
TypeScript Declarations
  • Add declarations for the TRUE and FALSE constants.

v1.46.0

Compare Source

JS API
  • Potentially breaking bug fix: Match the specification of the new JS API by passing undefined rather than null to Logger.warn() for an unset span.
TypeScript Declarations
  • Add a declaration for the LegacyPluginThis.options.context field.

  • Update the definition of LegacyAsyncFunction to include explicit definitions with zero through six arguments before the done parameter. This makes it possible for TypeScript users to pass in callbacks that take a specific number of arguments, rather than having to declare a callback that takes an arbitrary number.

  • Add a declaration for types.Error, a legacy API class that can be returned by asynchronous functions to signal asynchronous errors.

  • Add a LegacyAsyncFunctionDone type for the done callback that's passed to LegacyAsyncFunction.

v1.45.2

Compare Source

JS API
  • Potentially breaking bug fix: Change the default value of the separator parameter for new SassArgumentList() to ',' rather than null. This matches the API specification.

v1.45.1

Compare Source

  • Potentially breaking bug fix: Properly parse custom properties in @supports conditions. Note that this means that SassScript expressions on the right-hand side of custom property @supports queries now need to be interpolated, as per https://sass-lang.com/d/css-vars.

  • Potentially breaking bug fix: Fix a bug where inspect() was not properly printing nested, empty, bracketed lists.

v1.45.0

Compare Source

JS API

This release includes an entirely new JavaScript API, designed to be more idiomatic, performant, and usable. The old API will continue to be supported until Dart Sass 2.0.0, but it is now considered deprecated and should be avoided for new code.

The new API includes:

  • compile() and compileAsync() functions that take Sass file paths and return the result of compiling them to CSS. The async function returns a Promise rather than using a callback-based API.

  • compileString() and compileStringAsync() functions that take a string of Sass source and compiles it to CSS. As above, the async function returns a Promise.

  • A new importer API that more closely matches the Sass specification's logic for resolving loads. This makes it much easier for Sass to cache information across @import and @use rules, which substantially improves performance for applications that rely heavily on repeated @imports.

  • A new custom function API, including much more usable JS representations of Sass value types complete with type-assertion functions, easy map and list lookups, and compatibility with the [immutable][immutable] package. Unlike in the legacy API, function callbacks now take one argument which contains an array of Sass values (rather than taking a separate JS argument for each Sass argument).

For full documentation of this API, please see the Sass website.

This release also adds TypeScript type definitions.

v1.44.0

Compare Source

  • Suggest calc() as an alternative in /-as-division deprecation messages.
Dart API
  • Add SassNumber.convert() and SassNumber.convertValue(). These work like SassNumber.coerce() and SassNumber.coerceValue(), except they don't treat unitless numbers as universally compatible.

  • Fix a bug where SassNumber.coerceToMatch() and SassNumber.coerceValueToMatch() wouldn't coerce single-unit numbers to match unitless numbers.

v1.43.5

Compare Source

  • Fix a bug where calculations with different operators were incorrectly considered equal.

  • Properly parse attribute selectors with empty namespaces.

JS API
  • Print more detailed JS stack traces. This is mostly useful for the Sass team's own debugging purposes.

v1.43.4

Compare Source

JS API
  • Fix a bug where the logger option was ignored for the render() function.

v1.43.3

Compare Source

  • Improve performance.

v1.43.2

Compare Source

  • Improve the error message when the default namespace of a @use rule is not a valid identifier.

v1.42.1

Compare Source

  • Fix a bug where Sass variables and function calls in calculations weren't being resolved correctly if there was a parenthesized interpolation elsewhere in the file.

v1.42.0

Compare Source

  • min() and max() expressions are once again parsed as calculations as long as they contain only syntax that's allowed in calculation expressions. To avoid the backwards-compatibility issues that were present in 1.40.0, they now allow unitless numbers to be mixed with numbers with units just like the global min() and max() functions. Similarly, + and - operations within min() and max() functions allow unitless numbers to be mixed with numbers with units.

v1.41.1

Compare Source

  • Preserve parentheses around var() functions in calculations, because they could potentially be replaced with sub-expressions that might need to be parenthesized.

v1.41.0

Compare Source

  • Calculation values can now be combined with strings using the + operator. This was an error in 1.40.0, but this broke stylesheets that were relying on $value + "" expressions to generically convert values to strings. (Note that the Sass team recommends the use of "#{$value}" or inspect($value) for that use-case.)

  • The selector.unify() function now correctly returns null when one selector is a :host or :host-context and the other is a selector that's guaranteed to be within the current shadow DOM. The @extend logic has been updated accordingly as well.

  • Fix a bug where extra whitespace in min(), max(), clamp(), and calc() expressions could cause bogus parse errors.

  • Fix a bug where the right-hand operand of a - in a calculation could incorrectly be stripped of parentheses.

Dart API
  • SassCalculation.plus() now allows SassString arguments.

v1.40.1

Compare Source

  • Potentially breaking bug fix: min() and max() expressions outside of calculations now behave the same way they did in 1.39.2, returning unquoted strings if they contain no Sass-specific features and calling the global min() and max() functions otherwise. Within calculations, they continue to behave how they did in 1.40.0.

    This fixes an unintended breaking change added in 1.40.0, wherein passing a unitless number and a number without units to min() or max() now produces an error. Since this breakage affects a major Sass library, we're temporarily reverting support for min() and max() calculations while we work on designing a longer-term fix.

v1.40.0

Compare Source

  • Add support for first-class calc() expressions (as well as clamp() and plain-CSS min() and max()). This means:

    • calc() expressions will be parsed more thoroughly, and errors will be highlighted where they weren't before. This may break your stylesheets, but only if they were already producing broken CSS.

    • calc() expressions will be simplified where possible, and may even return numbers if they can be simplified away entirely.

    • calc() expressions that can't be simplified to numbers return a new data type known as "calculations".

    • Sass variables and functions can now be used in calc() expressions.

    • New functions meta.calc-name() and meta.calc-args() can now inspect calculations.

Dart API
  • Add a new value type, SassCalculation, that represents calculations.

  • Add new CalculationOperation, CalculationOperator, and CalculationInterpolation types to represent types of arguments that may exist as part of a calculation.

  • Add a new Value.assertCalculation() method.

  • Add a new Number.hasCompatibleUnits() method.

v1.39.2

Compare Source

  • Fix a bug where configuring with @use ... with would throw an error when that variable was defined in a module that also contained @forward ... with.

v1.39.1

Compare Source

  • Partial fix for a bug where @at-root does not work properly in nested imports that contain @use rules. If the only @use rules in the nested import are for built-in modules, @at-root should now work properly.

v1.39.0

Compare Source

JS API
  • Add a charset option that controls whether or not Sass emits a @charset/BOM for non-ASCII stylesheets.

v1.38.2

Compare Source

  • No user-visible changes

v1.38.1

Compare Source

  • No user-visible changes

v1.38.0

Compare Source

  • In expanded mode, emit characters in Unicode private-use areas as escape sequences rather than literal characters.

  • Fix a bug where quotes would be omitted for an attribute selector whose value was a single backslash.

  • Properly consider numbers that begin with . as "plain CSS" for the purposes of parsing plain-CSS min() and max() functions.

  • Allow if to be used as an unquoted string.

  • Properly parse backslash escapes within url() expressions.

  • Fix a couple bugs where @extends could be marked as unsatisfied when multiple identical @extends extended selectors across @use rules.

Command Line Interface
  • Strip CRLF newlines from snippets of the original stylesheet that are included in the output when an error occurs.
JS API
  • Don't crash when a Windows path is returned by a custom Node importer at the same time as file contents.

  • Don't crash when an error occurs in a stylesheet loaded via a custom importer with a custom URL scheme.

Dart API
  • Add a SassArgumentList.keywordsWithoutMarking getter to access the keyword arguments of an argument list without marking them accessed.
visionmedia/supertest

v6.2.3

Compare Source

  • chore: bump deps 6329e2d
  • Merge pull request #​759 from francescobarbera/master e6d371c
  • docs: add an example for complex object in multipart upload 729e818

v6.2.2

Compare Source

v6.2.1

Compare Source

v6.2.0

Compare Source

v6.1.6

Compare Source

tailwindlabs/tailwindcss

v3.0.24

Compare Source

Fixed
  • Prevent nesting plugin from breaking other plugins (#​7563)
  • Recursively collapse adjacent rules (#​7565)
  • Preserve source maps for generated CSS (#​7588)
  • Split box shadows on top-level commas only (#​7479)
  • Use local user CSS cache for @apply (#​7524)
  • Invalidate context when main CSS changes (#​7626)
  • Only add ! to selector class matching template candidate when using important modifier with mutli-class selectors (#​7664)
  • Correctly parse and prefix animation names with dots (#​7163)
  • Fix extraction from template literal/function with array (#​7481)
  • Don't output unparsable arbitrary values (#​7789)
  • Fix generation of div:not(.foo) if .foo is never defined (#​7815)
  • Allow for custom properties in rgb, rgba, hsl and hsla colors (#​7933)
  • Remove autoprefixer as explicit peer-dependency to avoid invalid warnings in situations where it isn't actually needed (#​7949)
  • Ensure the percentage data type is validated correctly (#​8015)
  • Make sure font-weight is inherited by form controls in all browsers (#​8078)
Changed
  • Replace chalk with picocolors (#​6039)
  • Replace cosmiconfig with lilconfig (#​6039)
  • Update cssnano to avoid removing empty variables when minifying (#​7818)

v3.0.23

Compare Source

Fixed
  • Remove opacity variables from :visited pseudo class (#​7458)
  • Support arbitrary values + calc + theme with quotes (#​7462)
  • Don't duplicate layer output when scanning content with variants + wildcards (#​7478)
  • Implement getClassOrder instead of sortClassList (#​7459)

v3.0.22

Compare Source

Fixed
  • Temporarily move postcss to dependencies (#​7424)

v3.0.21

Compare Source

Fixed
  • Move prettier plugin to dev dependencies (#​7418)

v3.0.20

Compare Source

Added
  • Expose context.sortClassList(classes) (#​7412)

v3.0.19

Compare Source

Fixed
  • Fix preflight border color fallback (#​7288)
  • Correctly parse shadow lengths without a leading zero (#​7289)
  • Don't crash when scanning extremely long class candidates (#​7331)
  • Use less hacky fix for URLs detected as custom properties (#​7275)
  • Correctly generate negative utilities when dash is before the prefix (#​7295)
  • Detect prefixed negative utilities in the safelist (#​7295)

v3.0.18

Compare Source

Fixed
  • Fix @apply order regression (in addComponents, addUtilities, ...) (#​7232)
  • Quick fix for incorrect arbitrary properties when using URLs (#​7252)

v3.0.17

Compare Source

Fixed
  • Remove false positive warning in CLI when using the --content option (#​7220)

v3.0.16

Compare Source

Fixed
  • Ensure to transpile the PostCSS Nesting plugin (tailwindcss/nesting) (#​7080)
  • Improve various warnings (#​7118)
  • Fix grammatical mistake (cca5a38)

v3.0.15

Compare Source

Fixed
  • Temporarily remove optional chaining in nesting plugin (#​7077)

v3.0.14

Compare Source

Added
  • Show warnings for invalid content config (#​7065)
Fixed
  • Only emit utility/component variants when those layers exist (#​7066)
  • Ensure nesting plugins can receive options (#​7016)

v3.0.13

Compare Source

Fixed
  • Fix consecutive builds with at apply producing different CSS (#​6999)

v3.0.12

Compare Source

Fixed
  • Allow use of falsy values in theme config (#​6917)
  • Ensure we can apply classes that are grouped with non-class selectors (#​6922)
  • Improve standalone CLI compatibility on Linux by switching to the linuxstatic build target (#​6914)
  • Ensure @apply works consistently with or without @layer (#​6938)
  • Only emit defaults when using base layer (#​6926)
  • Emit plugin defaults regardless of usage (#​6926)
  • Move default border color back to preflight (#​6926)
  • Change experimental.optimizeUniversalDefaults to only work with @tailwind base (#​6926)

v3.0.11

Compare Source

Fixed
  • Preserve casing of CSS variables added by plugins (#​6888)
  • Ignore content paths that are passed in but don't actually exist (#​6901)
  • Revert change that applies Tailwind's defaults in isolated environments like CSS modules (9fdc391)

v3.0.10

Compare Source

Fixed
  • Fix @apply in files without @tailwind directives (#​6580, #​6875)
  • CLI: avoid unnecessary writes to output files (#​6550)
Added
  • Allow piping data into the CLI (#​6876)

v3.0.9

Compare Source

Fixed
  • Improve DEBUG flag (#​6797, #​6804)
  • Ensure we can use < and > characters in modifiers (#​6851)
  • Validate theme() works in arbitrary values (#​6852)
  • Properly detect theme() value usage in arbitrary properties (#​6854)
  • Improve collapsing of duplicate declarations (#​6856)
  • Remove support for TAILWIND_MODE=watch (#​6858)

v3.0.8

Compare Source

Fixed
  • Reduce specificity of abbr rule in preflight (#​6671)
  • Support HSL with hue units in arbitrary values (#​6726)
  • Add node16-linux-arm64 target for standalone CLI (#​6693)

v3.0.7

Compare Source

Fixed
  • Don't mutate custom color palette when overriding per-plugin colors (#​6546)
  • Improve circular dependency detection when using @apply (#​6588)
  • Only generate variants for non-user layers (#​6589)
  • Properly extract classes with arbitrary values in arrays and classes followed by escaped quotes (#​6590)
  • Improve jsx interpolation candidate matching (#​6593)
  • Ensure @apply of a rule inside an AtRule works (#​6594)

v3.0.6

Compare Source

Fixed
  • Support square bracket notation in paths (#​6519)
  • Ensure all plugins are executed for a given candidate (#​6540)

v3.0.5

Compare Source

Fixed
  • Revert: add li to list-style reset (9777562d)

v3.0.4

Compare Source

Fixed
  • Insert always-on defaults layer in correct spot (#​6526)

v3.0.3

Compare Source

Added
  • Warn about invalid globs in content (#​6449)
  • Add standalone tailwindcss CLI (#​6506)
  • Add li to list-style reset (00f60e6)
Fixed
  • Don't output unparsable values (#​6469)
  • Fix text decoration utilities from overriding the new text decoration color/style/thickness utilities when used with a modifier (#​6378)
  • Move defaults to their own always-on layer (#​6500)
  • Support negative values in safelist patterns (#​6480)

v3.0.2

Compare Source

Fixed
  • Prevent nesting plugin from breaking other plugins (#​7563)
  • Recursively collapse adjacent rules (#​7565)
  • Preserve source maps for generated CSS (#​7588)
  • Split box shadows on top-level commas only (#​7479)
  • Use local user CSS cache for @apply (#​7524)
  • Invalidate context when main CSS changes (#​7626)
  • Only add ! to selector class matching template candidate when using important modifier with mutli-class selectors (#​7664)
  • Correctly parse and prefix animation names with dots (#​7163)
  • Fix extraction from template literal/function with array (#​7481)
  • Don't output unparsable arbitrary values (#​7789)
  • Fix generation of div:not(.foo) if .foo is never defined (#​7815)
  • Allow for custom properties in rgb, rgba, hsl and hsla colors (#​7933)
  • Remove autoprefixer as explicit peer-dependency to avoid invalid warnings in situations where it isn't actually needed (#​7949)
  • Ensure the percentage data type is validated correctly (#​8015)
  • Make sure font-weight is inherited by form controls in all browsers (#​8078)
Changed
  • Replace chalk with picocolors (#​6039)
  • Replace cosmiconfig with lilconfig (#​6039)
  • Update cssnano to avoid removing empty variables when minifying (#​7818)

v3.0.1

Compare Source

Fixed
  • Fix preflight border color fallback (#​7288)
  • Correctly parse shadow lengths without a leading zero (#​7289)
  • Don't crash when scanning extremely long class candidates (#​7331)
  • Use less hacky fix for URLs detected as custom properties (#​7275)
  • Correctly generate negative utilities when dash is before the prefix (#​7295)
  • Detect prefixed negative utilities in the safelist (#​7295)

v3.0.0

Compare Source

Fixed
  • Enforce the order of some variants (like before and after) (#​6018)
Added
  • Add placeholder variant (#​6106)
  • Add composable touch-action utilities (#​6115)
  • Add support for "arbitrary properties" (#​6161)
  • Add portrait and landscape variants (#​6046)
  • Add text-decoration-style, text-decoration-thickness, and text-underline-offset utilities (#​6004)
  • Add menu reset to preflight (#​6213)
  • Allow 0 as a valid length value (#​6233, #​6259)
  • Add CSS functions to data types (#​6258)
  • Support negative values for scale-* utilities (c48e629)
  • Improve length data type, by validating each value individually (#​6283)
Changed
  • Deprecate decoration-slice and decoration-break in favor box-decoration-slice and box-decoration-break (non-breaking) (#​6004)

v2.2.19

Compare Source

Fixed
  • Ensure corePlugins order is consisent in AOT mode (#​5928)

v2.2.18

Compare Source

Fixed
  • Bump versions for security vulnerabilities (#​5924)

v2.2.17

Compare Source

Fixed
  • Configure chokidar's awaitWriteFinish setting to avoid occasional stale builds on Windows (#​5758)

v2.2.16

Compare Source

Fixed
  • JIT: Properly handle animations that use CSS custom properties (#​5602)

v2.2.15

Compare Source

Fixed
  • Ensure using CLI without -i for input file continues to work even though deprecated (#​5464)

v2.2.14

Compare Source

Fixed
  • Only use @defaults in JIT, switch back to clean-css in case there's any meaningful differences in the output (bf248cb)

v2.2.13

Compare Source

Fixed
  • Replace clean-css with cssnano for CDN builds to fix minified builds (75cc3ca)

v2.2.12

Compare Source

Fixed
  • Ensure that divide utilities inject a default border color (#​5438)

v2.2.11

Compare Source

Fixed
  • Rebundle to fix missing CLI peer dependencies

v2.2.10

Compare Source

Fixed
  • Fix build error when using presets: [] in config file (#​4903)
Added
  • Reintroduce universal selector optimizations under experimental optimizeUniversalDefaults flag (a9e160c)

v2.2.9

Compare Source

Fixed
  • JIT: Fix @applying utilities that contain variants + the important modifier (#​4854)
  • JIT: Don't strip "null" when parsing tracked file paths (#​5008)
  • Pin clean-css to v5.1.4 to fix empty CSS variables in CDN builds (#​5338)

v2.2.8

Compare Source

Fixed
  • Improve accessibility of default link focus styles in Firefox (#​5082)
  • JIT: Fix animation variants corrupting keyframes rules (#​5223)
  • JIT: Ignore escaped commas when splitting selectors to apply prefixes (#​5239)
  • Nesting: Maintain PostCSS node sources when handling @apply (#​5249)
  • JIT: Fix support for animation lists (#​5252)
  • JIT: Fix arbitrary value support for object-position utilities (#​5245)
  • CLI: Abort watcher if stdin is closed to avoid zombie processes (#​4997)
  • JIT: Ignore arbitrary values with unbalanced brackets (#​5293)
kulshekhar/ts-jest

v28.0.3

Compare Source

Bug Fixes

v28.0.2

Compare Source

Bug Fixes

v28.0.1

Compare Source

Bug Fixes

v28.0.0

Compare Source

Bug Fixes
  • legacy invoke Babel processAsync for babel-jest in ESM mode instead of process (#​3430) (0d7356c)
Features
BREAKING CHANGES
  • path-mapping AST transformer is no longer shipped in ts-jest v28. Please use an alternative one like https://github.com/LeDDGroup/typescript-transform-paths instead.
  • Any imports ts-jest/dist/compiler/ts-compiler should change to ts-jest/dist/legacy/compiler/ts-compiler
  • Any imports ts-jest/dist/compiler/ts-jest-compiler should change to ts-jest/dist/legacy/compiler/ts-jest-compiler
  • Any imports ts-jest/dist/config/config-set should change to ts-jest/dist/legacy/config/config-set
  • Minimum support TypeScript version is now 4.3 since Jest 28 requires it.
  • Jest 28 is required.
  • core: Any imports ts-jest/utils should be replaced with ts-jest.
  • core: Starting from Jest 27.4, mocked has been integrated into Jest repo.
  • core: Support for Node.js v10 has been removed as Jest drops support for it.

27.1.5 (2022-05-17)

Bug Fixes

27.1.4 (2022-03-24)

Bug Fixes

27.1.3 (2022-01-14)

Bug Fixes
  • compiler: update memory cache for compiler using received file content (#​3194) (e4d9541)

27.1.2 (2021-12-15)

Bug Fixes
  • stimulate esbuild type to avoid importing esbuild directly (#​3147) (9ace0a9)

27.1.1 (2021-12-07)

Bug Fixes

v27.1.5

Compare Source

Bug Fixes

v27.1.4

Compare Source

Bug Fixes

v27.1.3

Compare Source

Bug Fixes
  • compiler: update memory cache for compiler using received file content (#​3194) (e4d9541)

v27.1.2

Compare Source

Bug Fixes
  • stimulate esbuild type to avoid importing esbuild directly (#​3147) (9ace0a9)

v27.1.1

Compare Source

Bug Fixes

v27.1.0

Compare Source

Features
Code Refactoring

DEMRECATIONS

27.0.7 (2021-10-16)

Bug Fixes

27.0.6 (2021-10-14)

Bug Fixes

27.0.5 (2021-08-14)

Bug Fixes
Code Refactoring

27.0.4 (2021-07-21)

Bug Fixes
  • add @types/jest as optional peerDependencies to solve yarn 2 (#​2756) (5fbf43e)
  • add babel-jest as optional peerDependencies to solve yarn 2 (#​2751) (8bede2e)
  • config: include AST transformer's name and version into cache key (#​2755) (310fb9a), closes #​2753
Features

27.0.3 (2021-06-06)

Bug Fixes
Features

27.0.2 (2021-05-30)

Bug Fixes

27.0.1 (2021-05-26)

Bug Fixes

v27.0.7

Compare Source

Bug Fixes

v27.0.6

Compare Source

Bug Fixes

v27.0.5

Compare Source

Bug Fixes
Code Refactoring

v27.0.4

Compare Source

Bug Fixes
  • add @types/jest as optional peerDependencies to solve yarn 2 (#​2756) (5fbf43e)
  • add babel-jest as optional peerDependencies to solve yarn 2 (#​2751) (8bede2e)
  • config: include AST transformer's name and version into cache key (#​2755) (310fb9a), closes #​2753
Features

v27.0.3

Compare Source

Bug Fixes
Features

v27.0.2

Compare Source

Bug Fixes

v27.0.1

Compare Source

Bug Fixes

v27.0.0

Compare Source

Bug Fixes
Features
Performance Improvements
  • reuse jest file system cache for isolatedModules: false (#​2189) (68f446b)
Code Refactoring

BREAKING CHANGES

import type { TsCompilerInstance } from 'ts-jest/dist/types'

export function factory(compilerInstance: TsCompilerInstance) {
   //...
}
  • One is currently using pathRegex should use exclude with glob patterns.
  • If one currently relies on type check for js files, please set checkJs: true in your tsconfig.
  • Now both isolatedModules: true and isolatedModule: false codes are in one single class TsCompiler which is an instance created in TsJestCompiler based on config option compiler with value typescript or ttypescript.
  • config: packageJson config option is not used in internal ts-jest so this option is now removed.
  • config: One is defining ast transformers in jest.config.js/package.json should change to
// jest.config.js
module.exports = {
   //...
   globals: {
      'ts-jest': {
         astTransformers: {
           before: ['your_before_transformer_path'],
           after: ['your_after_transformer_path'],
           afterDeclarations: ['your_afterDeclarations_transformer_path'],
         }
      }
   }
}

or

// package.json
{
  "jest": {
     "globals": {
        "ts-jest": {
           "astTransformers": {
              "before": ["your_before_transformer_path"],
              "after": ["your_after_transformer_path"],
              "afterDeclarations": ["your_afterDeclarations_transformer_path"]
           }
        }
     }
  }
}
  • One currently refers type in jest.config.js
/** @&#8203;typedef {import('ts-jest')} */
module.exports = {
  //...
}

should change to

/** @&#8203;typedef {import('ts-jest/dist/types')} */
module.exports = {
  //...
}
  • Remove possibilities to import mocked, createJestPreset, pathsToModuleNameMapper from package entry. One should change to
import { mocked, createJestPreset, pathsToModuleNameMapper } from 'ts-jest/utils'
  • config: One currently uses tsConfig should change to tsconfig in your jest.config.js or package.json.

26.5.6 (2021-05-05)

Code Refactoring
  • refactor(config): show warning message for sourceMap: false (#​2557) (cf60990).
TypeStrong/ts-node

v10.8.0

Compare Source

Questions about this release? Ask in the official discussion thread: #​1767

Added

  • Added support for module=NodeNext, module=Node16, .mts, .cts, .mjs, and .cjs file extensions (#​1414, #​1694, #​1744, #​1745, #​1727, #​1717, #​1753, #​1757) @​cspotcode
  • Added ability to include file extensions in CommonJS imports (#​1727, #​1753) @​cspotcode
    • Enables consistency with ESM, where file extensions are often mandatory
  • Resolves from emitted to source file extensions (#​1727, #​1753) @​cspotcode
    • Must enable experimentalResolver, will be enabled by default in a future version (docs)
    • Typechecker requires importing the emitted file extension; ts-node resolves correctly to the source file. E.g. import "./foo.js" will execute foo.ts See also: TypeScript issue #​37582
    • If typechecking is disabled, you can also use source file extensions. E.g. import "./foo.ts"
  • Added experimentalSpecifierResolution (#​1727, #​1753) @​cspotcode
    • the same as Node's --experimental-specifier-resolution (Node docs)
    • can also be specified in tsconfig.json for convenience, to avoid the CLI flag
    • allows omitting file extensions in ESM imports, plus a few other CommonJS-style conveniences
  • Adds diagnostics property to TSError, with array of TypeScript diagnostic objects from the compiler (API docs) (#​1705, #​1706) @​paulbrimicombe

Changed

Fixed

Docs

https://github.com/TypeStrong/ts-node/milestone/12

v10.7.0

Compare Source

Questions about this release? Ask in the official discussion thread: #​1680

Added

  • Adds --esm flag, option, and ts-node-esm binary (#​1258, #​1655)
    • Enables full esm support; no need for --loader nor NODE_OPTIONS
    • Use shebang #!/usr/bin/env ts-node-esm, run ts-node --esm, or add to your tsconfig.json: "ts-node": {"esm": true}

Changed

Fixed

  • Fixed bug where "compiler", "transpiler", and swc backend would not resolve relative to the tsconfig.json that declared them (#​1662, #​1655)
    • Enables reusable tsconfig.json shared via node module to include necessary dependencies

https://github.com/TypeStrong/ts-node/milestone/11

v10.6.0

Compare Source

Questions about this release? Ask in the official discussion thread: #​1666

Added

  • Adds workaround for extensionless entrypoints with ESM loader (#​1649, #​1654)
    • You can now combine tools such as mocha with --loader ts-node/esm, where previously node would throw [ERR_UNKNOWN_FILE_EXTENSION]
    • node has a bug where combining --loader with an extensionless entrypoint causes this error nodejs/node#​33226
    • Some tools, for example mocha, have an extensionless entrypoint. (source, source)
    • Combining NODE_OPTIONS=--loader ts-node/esm with these tools causes this error. mochajs/mocha#​4645
    • node intends to fix this bug in a future release: nodejs/node#​41711
    • In the interim, we have implemented a workaround in ts-node.
  • Adds support for target "ES2022" in moduleTypes overrides (#​1650)

Fixed

  • Fixed bug where --swc and other third-party transpilers did not respect moduleTypes overrides (#​1651, #​1652, #​1660)
  • Fixed bug where node flags were not preserved correctly in process.execArgv (#​1657, #​1658)
    • This affected child_process.fork(), since it uses process.execArgv to create a similar child runtime.
    • With this fix, child_process.fork() will preserve both node flags and ts-node hooks.
  • Fixed compatibility TypeScript 4.7's API changes (#​1647, #​1648)

https://github.com/TypeStrong/ts-node/milestone/9

v10.5.0

Compare Source

Questions about this release? Ask in the official discussion thread: #​1634

Added

  • Eliminate "Emit Skipped" errors (#​693, #​1345, #​1629)
    • Avoids all "Emit Skipped" errors by performing a fallback transpileOnly-style transformation.
    • Does not affect typechecking. Type errors are still detected and thrown.
    • Fallback has the same limitations as isolatedModules. This will only affect rare cases such as using const enums with preserveConstEnums disabled.
    • Fixes #​693
  • Graduate swc transpiler out of experimental; add swc: true convenience option (docs) (#​1487, #​1536, #​1613, #​1627)
    • "swc": true or --swc will use swc for faster execution
    • This feature is no longer marked "experimental." Thank you to everyone who filed bugs!
  • swc transpiler attempts to load @swc/core or @swc/wasm dependencies from your project before falling-back to global installations (#​1613, #​1627)
    • global fallback only occurs when using a global installation of ts-node
  • Add support for TypeScript's traceResolution output (docs) (#​1128, #​1491) @​TheUnlocked
  • Support import assertions in ESM loader (docs) (#​1557, #​1558, #​1559, #​1573) @​Pokute, @​geigerzaehler
    • Allows importing JSON files from ESM with the requisite flag (docs)
  • ts-node -vvv also logs absolute paths to ts-node and typescript, to make it more obvious when you're accidentally using globally-installed versions (#​1323, #​1620)
  • Add swc target "es2022" (#​1535, #​1540)
    • When you have target es2022 in tsconfig, will use swc's es2022 target

Changed

  • Initialize TypeScript compiler before starting REPL prompt (#​1498) @​TheUnlocked
    • Improves responsiveness for first line of REPL input
  • Use v8-compile-cache-lib to load typescript
  • Support both --camelCase and --hyphen-case for all CLI flags; update documentation to use --camelCase (#​1598, #​1599)
    • Not a breaking change; CLI continues to accept both forms
  • Make TSError diagnosticText property non-enumerable to prevent it from being logged below the stack (#​1632)

Fixed

Docs

Misc

  • Adds experimental experimentalResolverFeatures option, but it does not do anything yet (#​1514, #​1614)

https://github.com/TypeStrong/ts-node/milestone/4

v10.4.0

Compare Source

Added

  • Adds support for targets "es2020" and "es2021" to swc transpiler (#​1521)
  • Adds automatic target downgrade when using older versions of swc (#​1521)
    • If tsconfig specifies es2020, but your version of swc only supports up to es2019, ts-node will automatically switch to es2019 instead of throwing an error

Changed

Fixed

https://github.com/TypeStrong/ts-node/milestone/8

v10.3.1

Compare Source

Fixed

https://github.com/TypeStrong/ts-node/milestone/7

v10.3.0

Compare Source

Questions about this release? Ask in the official discussion thread: #​1507

Added

  • Declare types for node builtin modules within REPL so you do not need to import them (#​1424, #​1500)
    • Node REPL exposes builtin modules as globals; typechecker now understands this
    • Typechecking should no longer raise errors when using builtins without first importing
    • For example: util.promisify(setTimeout)(1000) or fs.readFileSync('example.txt')
  • Add createEsmHooks() function to create ESM loader hooks (API docs) (#​1439) @​nonara
    • Can be used to compose our loader hooks with another loader or additional logic
  • register() accepts a ts-node Service (API docs) (#​1474)
    • register(options) is still supported; no breaking changes
  • Add support for Node.js's new loader hooks API (#​1372, #​1457, #​1007) @​jonaskello
    • Node.js has changed their loader hooks API
    • ts-node is compatible with all node versions, detects your node version and exposes the correct hooks API
    • Node's new API currently only available in node v17 nightly builds
    • Node will eventually backport the changes to node 16, and may also be backport to 14 and 12
  • Add --emit to --help output (#​1400, #​1484) @​markbradley27

Changed

  • When ts-node is registered and other libraries require('source-map-support'), they will be redirected to @cspotcode/source-map-support
    • See complete description in Fixed section below

Fixed

  • Fix #​1440, #​1441, #​1438, #​1495: Incorrect stack traces when third-party libraries use source-map-support instead of @cspotcode/source-map-support (#​1440, #​1441, #​1438, #​1495, cspotcode/node-source-map-support#​23, #​1496, #​1497) @​ejose19
    • When ts-node is registered and other libraries require('source-map-support'), they will be redirected to @cspotcode/source-map-support
    • ts-node uses @cspotcode/source-map-support for the fixes and enhancements listed here: @cspotcode/source-map-support changelog
    • To ensure correct stack traces, all libraries must share a compatible sourcemap support implementation
  • Fix #​1363: REPL may erroneously combine previous input with next input, eval both as a single statement (#​1363, #​1480) @​TheUnlocked
    • For example, entering 100 on first line and * 2 on second line would erronously be interpreted as 100 * 2
    • REPL now ensures both lines are separate statements, both when typechecking and when evaluating
  • Fix #​1488: Node may log "circular dependency" warning when using allowJs (#​1488, #​1489)
  • Fix #​1301: Filter empty strings from TS_NODE_IGNORE and TS_NODE_IGNORE_DIAGNOSTICS; treat empty environment variable as empty array (#​1301, #​1483) @​ValeriaVG
    • TS_NODE_IGNORE= ts-node ./example.ts will disable default ignore rules; will compile files in ./node_modules

Docs

  • Update VSCode debug configuration (Docs) (#​1466)
  • Update ESM-related messaging to clarify that experimental status is due to Node.js, not ts-node (#​1455)
  • Refer to ts-node consistently (#​1481) @​animafps

https://github.com/TypeStrong/ts-node/milestone/5

v10.2.1

Compare Source

Fixed

  • Fixes #​1426: Do not import typescript outside of configuration/project loading (#​1433, #​1426) @​Songkeys
    • We take care to load your project's version of typescript, falling back to a globally-installed version if necessary.
    • 10.2.0 introduced a bug where we did not do this consistently, causing global or npx installations of ts-node to attempt loading typescript relative to themselves, not your project.
    • This failed if typescript was not globally installed or npx did not install peer dependencies.

https://github.com/TypeStrong/ts-node/milestone/6

Microsoft/TypeScript

v4.7.2

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v4.6.4

Compare Source

This release includes a bug fix for text formatting on certain ranges, which was impacting Visual Studio users.

For the complete list of fixed issues, check out the

Downloads are available on:

v4.6.3

Compare Source

This release includes fixes for

For the complete list of fixed issues, check out the

Downloads are available on:

v4.6.2

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v4.5.5

Compare Source

This patch release includes a number of fixes to language service crashes and assertion violations, along with improvements to JSX attribute snippets.

For the complete list of fixed issues, check out the

Downloads are available on:

v4.5.4

Compare Source

This patch release includes a fix for incorrectly offering up JSX attribute snippet completions at the beginning of a tag name.

For the complete list of fixed issues, check out the

Downloads are available on:

v4.5.3

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v4.5.2

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v4.4.4

Compare Source

This patch release contains fixes for a performance regression in --build mode by only calling realpath on package.json files only when those files are known to exist on disk, and to only perform this work under --watch mode.


For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v4.4.3

Compare Source

This patch release contains a fix for leaking file watchers on package.json, and a minor fix for completions in JavaScript files.


For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v4.4.2

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

validatorjs/validator.js

v13.7.0

Compare Source

New Features
New Features
Fixes and Enhancements
New and Improved Locales
13.6.1
13.5.0 13.5.1

— this release is dedicated to @​dbnandaa 🧒

13.1.17
13.1.1
  • Hotfix for a regex incompatibility in some browsers (#​1355
13.1.0
13.0.0
12.2.0
12.1.0
12.0.0
11.1.0
11.0.0
10.11.0
  • Fix imports like import .. from "validator/lib/.." (#​961)
  • New locale (#​958)
10.10.0
10.9.0
10.8.0
10.7.1
  • Ignore case when checking URL protocol (#​887)
  • Locale fix (#​889)
10.7.0
10.6.0
  • Updated isMobilePhone() to match any locale's pattern by default (#​874)
  • Added an option to ignore whitespace in isEmpty() (#​880)
  • New and improved locales (#​878, #​879)
10.5.0
10.4.0
  • Added an isIMRange() validator (#​842)
  • Accept an array of locales in isMobilePhone() (#​742)
  • New locale (#​843)
10.3.0
10.2.0
  • Export the list of supported locales in isPostalCode() (#​830)
10.1.0
  • Added an isISO31661Alpha3() validator (#​809)
10.0.0
  • Allow floating points in isNumeric() (#​810)
  • Disallow GMail addresses with multiple consecutive dots, or leading/trailing dots (#​820)
  • Added an isRFC3339() validator (#​816)
  • Reject domain parts longer than 63 octets in isFQDN(), isURL() and isEmail() (bb3e542)
  • Added a new Amex prefix to isCreditCard() (#​805)
  • Fixed isFloat() min/max/gt/lt filters when a locale with a comma decimal is used (2b70821)
  • Normalize Yandex emails (#​807)
  • New locales (#​803)
9.4.1
  • Patched a REDOS vulnerability in isDataURI
  • New and improved locales (#​788)
9.4.0
  • Added an option to isMobilePhone to require a country code (#​769)
  • New and improved locales (#​785)
9.3.0
9.2.0
9.1.2
  • Fixed a bug with the isFloat validator (#​752)
9.1.1
9.1.0
9.0.0
  • normalizeEmail() no longer validates the email address (#​725)
  • Added locale-aware validation to isFloat() and isDecimal() (#​721)
  • Added an isPort() validator (#​733)
  • New locales (#​731)
8.2.0
8.1.0
  • Fix require('validator/lib/isIS8601') calls (#​688)
  • Added an isLatLong() and isPostalCode() validator (#​684)
  • Allow comma in email display names (#​692)
  • Add missing string to unescape() (#​690)
  • Fix isMobilePhone() with Node <= 6.x (#​681)
  • New locales (#​695)
8.0.0
  • isURL() now requires the require_tld: false option to validate localhost (#​675)
  • isURL() now rejects URLs that are protocol only (#​642)
  • Fixed a bug where isMobilePhone() would silently return false if the locale was invalid or unsupported (#​657)
7.2.0
  • Added an option to validate any phone locale (#​663)
  • Fixed a bug in credit card validation (#​672)
  • Disallow whitespace, including unicode whitespace, in TLDs (#​677)
  • New locales (#​673, #​676)
7.1.0
7.0.0
  • Remove isDate()
6.3.0
6.2.1
6.2.0
  • Added an option to require an email display name (#​607)
  • Added support for lt and gt to isInt() (#​588)
  • New locales (#​601)
6.1.0
  • Added support for greater or less than in isFloat() (#​544)
  • Added support for ISSN validation via isISSN() (#​593)
  • Fixed a bug in normalizeEmail() (#​594)
  • New locales (#​585)
6.0.0
  • Renamed isNull() to isEmpty() (#​574)
  • Backslash is now escaped in escape() (#​516)
  • Improved normalizeEmail() (#​583)
  • Allow leading zeroes by default in isInt() (#​532)
5.7.0
  • Added support for IPv6 in isURL() (#​564)
  • Added support for urls without a host (e.g. file:///foo.txt) in isURL() (#​563)
  • Added support for regular expressions in the isURL() host whitelist and blacklist (#​562)
  • Added support for MasterCard 2-Series BIN (#​576)
  • New locales (#​575, #​552)
5.6.0
5.5.0
  • Fixed a regex denial of service in trim() and rtrim() (#​556)
  • Added an Algerian locale to isMobilePhone() (#​540)
  • Fixed the Hungarian locale in isAlpha() and isAlphanumeric() (#​541)
  • Added a Polish locale to isMobilePhone() (#​545)
5.4.0
  • Accept Union Pay credit cards in isCreditCard() (#​539)
  • Added Danish locale to isMobilePhone() (#​538)
  • Added Hungarian locales to isAlpha(), isAlphanumeric() and isMobilePhone() (#​537)
5.3.0
  • Added an allow_leading_zeroes option to isInt() (#​532)
  • Adjust Chinese mobile phone validation (#​523)
  • Added a Canadian locale to isMobilePhone() (#​524)
5.2.0
  • Added a isDataURI() validator (#​521)
  • Added Czech locales (#​522)
  • Fixed a bug with isURL() when protocol was missing and "://" appeared in the query (#​518)
5.1.0
  • Added a unescape() HTML function (#​509)
  • Added a Malaysian locale to isMobilePhone() (#​507)
  • Added Polish locales to isAlpha() and isAlphanumeric() (#​506)
  • Added Turkish locales to isAlpha(), isAlphanumeric() and isMobilePhone() (#​512)
  • Allow >1 underscore in hostnames when using allow_underscores (#​510)
5.0.0
  • Migrate to ES6 (#​496)
  • Break the library up so that individual functions can be imported (#​496)
  • Remove auto-coercion of input to a string (#​496)
  • Remove the extend() function (#​496)
  • Added Arabic locales to isAlpha() and isAlphanumeric() (#​496)
  • Fix validation of very large base64 strings (#​503)
4.9.0
  • Added a Russian locale to isAlpha() and isAlphanumeric() (#​499)
  • Remove the restriction on adjacent hyphens in hostnames (#​500)
4.8.0
  • Added Spanish, French, Portuguese and Dutch support for isAlpha() and isAlphanumeric() (#​492)
  • Added a Brazilian locale to isMobilePhone() (#​489)
  • Reject IPv4 addresses with invalid zero padding (#​490)
  • Fix the client-side version when used with RequireJS (#​494)
4.7.1
4.7.0
  • Print a deprecation warning if validator input is not a string (1f67e1e). Note that this will be an error in v5.
  • Added a German locale to isMobilePhone(), isAlpha() and isAlphanumeric() (#​477)
  • Added a Finnish locale to isMobilePhone() (#​455)
4.6.1
  • Fix coercion of objects: Object.toString() is [object Object] not "" (a57f3c8)
4.6.0
  • Added a Spanish locale to isMobilePhone() (#​481)
  • Fix string coercion of objects created with Object.create(null) (#​484)
4.5.2
  • Fix a timezone issue with short-form ISO 8601 dates, e.g. validator.isDate('2011-12-21') (#​480)
4.5.1
  • Make isLength() / isByteLength() accept {min, max} as options object. (#​474)
4.5.0
  • Add validation for Indian mobile phone numbers (#​471)
  • Tweak Greek and Chinese mobile phone validation (#​467, #​468)
  • Fixed a bug in isDate() when validating ISO 8601 dates without a timezone (#​472)
4.4.1
  • Allow triple hyphens in IDNA hostnames (#​466)
4.4.0
  • Added isMACAddress() validator (#​458)
  • Added isWhitelisted() validator (#​462)
  • Added a New Zealand locale to isMobilePhone() (#​452)
  • Added options to control GMail address normalization (#​460)
4.3.0
  • Support Ember CLI module definitions (#​448)
  • Added a Vietnam locale to isMobilePhone() (#​451)
4.2.1
  • Fix isDate() handling of RFC2822 timezones (#​447)
4.2.0
  • Fix isDate() handling of ISO8601 timezones (#​444)
  • Fix the incorrect isFloat('.') === true (#​443)
  • Added a Norwegian locale to isMobilePhone() (#​439)
4.1.0
  • General isDate() improvements (#​431)
  • Tests now require node 4.0+ (#​438)
4.0.6
  • Added a Taiwan locale to isMobilePhone() (#​432)
  • Fixed a bug in isBefore() where it would return null (#​436)
4.0.5
  • Fixed a denial of service vulnerability in the isEmail() regex (#​152)
4.0.4
  • Reverted the leap year validation in isDate() as it introduced some regressions (#​422, #​423)
4.0.3
  • Added leap year validation to isDate() (#​418)
4.0.2
  • Fixed isDecimal() with an empty string (#​419)
4.0.1
  • Fixed isByteLength() with certain strings (09f0c6d)
  • Put length restrictions on email parts (#​258)
4.0.0
  • Simplified the isEmail() regex and fixed some edge cases (#​258)
  • Added ISO 8601 date validation via isISO8601() (#​373)

v13.6.0

Compare Source

v13.5.2

Compare Source

v13.5.1

Compare Source

— this release is dedicated to @​dbnandaa 🧒

v13.5.0

Compare Source

— this release is dedicated to @​dbnandaa 🧒

v13.1.17

Compare Source

v13.1.1

Compare Source

v13.1.0

Compare Source

v13.0.0

Compare Source

v12.2.0

Compare Source

v12.1.0

Compare Source

v12.0.0

Compare Source

v11.1.0

Compare Source

v11.0.0

Compare Source

GoogleChrome/web-vitals

v2.1.4

Compare Source

  • Prevent TTFB from reporting after bfcache restore (#​201)

v2.1.3

Compare Source

  • Only call report if LCP occurs before first hidden (#​197)

v2.1.2

Compare Source

  • Ensure reported TTFB values are less than the current page time (#​187)

v2.1.1

Compare Source

  • Add feature detects to support Opera mini in extreme data saver mode (#​186)

v2.1.0

Compare Source

  • Add batch reporting support and guidance (#​166)

v2.0.1

Compare Source

  • Detect getEntriesByName support before calling (#​158)

v2.0.0

Compare Source

  • [BREAKING] Update CLS to max session window 5s cap 1s gap (#​148)
  • Ensure CLS is only reported if page was visible (#​149)
  • Only report CLS when FCP is reported (#​154)
  • Update the unique ID version prefix (#​157)

Configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This MR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this MR, click this checkbox.

This MR has been generated by Renovate Bot.

Merge request reports