Update all dependencies #13

Merged
kjuulh merged 1 commits from renovate/all into main 2022-10-27 08:34:06 +02:00
Owner

This PR contains the following updates:

Package Type Update Change
@reduxjs/toolkit (source) dependencies minor 1.6.2 -> 1.8.6
@types/react (source) devDependencies major 17.0.34 -> 18.0.23
@types/react-redux (source) devDependencies patch 7.1.20 -> 7.1.24
AspNetCore.HealthChecks.MongoDb nuget major 5.0.1 -> 6.0.2
Mediatr nuget major 9.0.0 -> 11.0.0
Mediatr.Extensions.Microsoft.DependencyInjection nuget major 9.0.0 -> 11.0.0
MongoDB.Driver (source) nuget minor 2.13.2 -> 2.18.0
MongoDB.Driver.Core (source) nuget minor 2.13.2 -> 2.18.0
autoprefixer devDependencies patch 10.4.0 -> 10.4.12
axios (source) dependencies major 0.24.0 -> 1.1.3
cssnano devDependencies minor 5.0.10 -> 5.1.13
eslint (source) devDependencies major 7.32.0 -> 8.26.0
mcr.microsoft.com/dotnet/sdk stage major 6.0 -> 7.0
node final major 14-alpine -> 19-alpine
node stage major 14-alpine -> 19-alpine
postcss (source) devDependencies minor 8.3.11 -> 8.4.18
postcss-import devDependencies major 14.0.2 -> 15.0.0
prettier (source) devDependencies minor 2.5.1 -> 2.7.1
react-redux dependencies major 7.2.6 -> 8.0.4
react-textarea-autosize dependencies patch 8.3.3 -> 8.3.4
tailwindcss (source) dependencies major 2.2.19 -> 3.2.1
typescript (source) devDependencies minor 4.4.4 -> 4.8.4

Release Notes

reduxjs/redux-toolkit

v1.8.6

Compare Source

This bugfix release fixes a couple of issues with RTKQ endpoint tags not invalidating correctly, and tweaks the dispatch type inference to handle more variations of arrays.

What's Changed

Full Changelog: https://github.com/reduxjs/redux-toolkit/compare/v1.8.5...v1.8.6

v1.8.5

Compare Source

This bugfix releas fixes an issue with large keepUnusedDataFor values overflowing JS timers, exports the types for the Redux DevTools Extension option, and and improves behavior of URL string generation.

Changelog

keepUnusedDataFor Timer Fix

keepUnusedDataFor accepts a value in seconds. When there are no more active subscriptions for a piece of data, RTKQ will set a timer using setTimeout, and keepUnusedDataFor * 1000 as the timer value.

We've been advising users that if they want to keep data in the cache forever that they should use a very large value for keepUnusedDataFor, such as 10 years in seconds.

However, it turns out that JS engines use a 32-bit signed int for timers, and 32-bits in milliseconds is only 24.8 days. If a timer is given a value larger than that, it triggers immediately.

We've updated the internal logic to clamp the keepUnusedDataFor value to be between 0 and THIRTY_TWO_BIT_MAX_TIMER_SECONDS - 1.

Note that in RTK 1.9 (coming soon), RTKQ will also accept Infinity as a special keepUnusedDataFor value to indicate cached data should never be expired.

Other Changes

RTK inlines the TS types for the Redux DevTools Extension options to avoid an extra dependency, but the TS type for the options object wasn't exported publicly. We now export the DevToolsEnhancerOptions type.

The logic for generating a final URL has been updated to avoid adding an extra trailing /.

What's Changed

Full Changelog: https://github.com/reduxjs/redux-toolkit/compare/v1.8.4...v1.8.5

v1.8.4

Compare Source

This bugfix release adds exported TS types for RTKQ hooks for use in wrapping logic, adds useDebugValue to the hooks to improve display in the React DevTools, updates the inlined types for the Redux DevTools options, and fixes an issue in createEntityAdapter that could result in duplicate IDs being stored.

Changelog

RTKQ Hook Result Types

RTK's types heavily rely on inference to minimize the amount of type info users have to provide. However, this can also make it difficult to write functions that wrap calls to RTK APIs.

Some users have asked to have types that help them write "higher-order hooks". RTK now exports types that represent "the return object for a query/mutation hook with a given value": TypedUseQueryHookResult and TypedUseMutationResult. Both require <ResultType, QueryArg, BaseQuery> as generics, like this:

const baseQuery = fetchBaseQuery({url: "https://some.server"});

type CustomHookResult = TypedUseQueryHookResult<MyResultObject, MyArgObject, typeof baseQuery>

const useMyCustomHook = (arg: MyArgObject) : CustomHookResult => {
  return api.useGetSomeDataQuery(arg);
}
Redux DevTools Options Fixes

As of Redux DevTools 3.0, some of field names for custom DevTools options have changed to actionsAllowlist and actionsDenylist. Since we inline the types instead of having a separate dependency, we've updated our TS types to match that. No runtime behavior was changed.

Other Changes

RTKQ hooks now use useDebugValue to give a better preview of the current value in the React DevTools "Component" tab.

The <ApiProvider> component now does a better job of registering and cleaning up focus listeners.

Fixed a bug with createEntityAdapter that could allow duplicate IDs to be added depending on update parameters.

What's Changed

Full Changelog: https://github.com/reduxjs/redux-toolkit/compare/v1.8.3...v1.8.4

v1.8.3

Compare Source

This bugfix release fixes a few minor issues and bits of behavior, including updating the React-Redux peer dep to ^8.0.2 final, stable sorting in createEntityAdapter.updateMany and some initial state handling in createSlice.

Changelog

React-Redux Peer Dep

We'd previously published an RTK build that accepted React-Redux v8 beta as a peer dep (for use with RTK Query). Since React-Redux v8 is out now, we've updated the peer dep to ^8.0.2.

Entity Adapter Updates

Previously, applying updates via createEntityAdapter.updateMany caused sorting order to change. Entities that had the same sorting result should have stayed in the same order relative to each other, but if one of those items had any updates, it would sort to the back of that group. This was due to items being removed from the lookup table and re-added, and since JS engines iterate keys in insertion order, the updated item would now end up compared later than before.

We've reworked the implementation of updateMany to avoid that. This also ended up fixing another issue where multiple update entries targeting the same item ID would only have the first applied.

createSlice Initial State

createSlice now logs an error if initialState is undefined. This is most commonly seen when users misspell initialState. It also has better handling for values that can't be frozen by Immer such as primitives.

RTK Query

Several assorted improvements, including TS types for BaseQuery and checking if the body can actually be safely stringified.

What's Changed

New Contributors

Full Changelog: https://github.com/reduxjs/redux-toolkit/compare/v1.8.2...1.8.3

v1.8.2

Compare Source

This bugfix release fixes a minor issue where calling listenerMiddleware.startListening() multiple times with the same effect callback reference would result in multiple entries being added. The correct behavior is that only the first entry is added, and later attempts to add the same effect callback reference just return the existing entry.

What's Changed

Full Changelog: https://github.com/reduxjs/redux-toolkit/compare/v1.8.1...v1.8.2

v1.8.1

Compare Source

This release updates RTK's peer dependencies to accept React 18 as a valid version. This should fix installation errors caused by NPM's "install all the peer deps and error if they don't match" behavior.

React-Redux and React 18

Note: If you are now using React 18, we strongly recommend using the React-Redux v8 beta instead of v7.x!. v8 has been rewritten internally to work correctly with React 18's Concurrent Rendering capabilities. React-Redux v7 will run and generally work okay with existing code, but may have rendering issues if you start using Concurrent Rendering capabilities in your code.

Now that React 18 is out, we plan to finalize React-Redux v8 and release it live within the next couple weeks. We would really appreciate final feedback on using React-Redux v8 beta with React 18 before we publish the final version.

v1.8.0

Compare Source

This release adds the new "listener" middleware, updates configureStore's types to better handle type inference from middleware that override dispatch return values, and updates our TS support matrix to drop support for TS < 4.1.

Changelog

New "Listener" Side Effects Middleware

RTK has integrated the thunk middleware since the beginning. However, thunks are imperative functions, and do not let you run code in response to dispatched actions. That use case has typically been covered with libraries like redux-saga (which handles side effects with "sagas" based on generator functions), redux-observable (which uses RxJS observables), or custom middleware.

We've added a new "listener" middleware to RTK to cover that use case. The listener middleware is created using createListenerMiddleware(), and lets you define "listener" entries that contain an "effect" callback with additional logic and a way to specify when that callback should run based on dispatched actions or state changes.

Conceptually, you can think of this as being similar to React's useEffect hook, except that it runs logic in response to Redux store updates instead of component props/state updates.

The listener middleware is intended to be a lightweight alternative to more widely used Redux async middleware like sagas and observables. While similar to thunks in level of complexity and concept, it can replicate some common saga usage patterns. We believe that the listener middleware can be used to replace most of the remaining use cases for sagas, but with a fraction of the bundle size and a much simpler API.

Listener effect callbacks have access to dispatch and getState, similar to thunks. The listener also receives a set of async workflow functions like take, condition, pause, fork, and unsubscribe, which allow writing more complex async logic.

Listeners can be defined statically by calling listenerMiddleware.startListening() during setup, or added and removed dynamically at runtime with special dispatch(addListener()) and dispatch(removeListener()) actions.

The API reference is available at:

https://redux-toolkit.js.org/api/createListenerMiddleware

Huge thanks to @​FaberVitale for major contributions in refining the middleware API and implementing key functionality.

Basic usage of the listener middleware looks like:

import { configureStore, createListenerMiddleware } from '@&#8203;reduxjs/toolkit'

import todosReducer, {
  todoAdded,
  todoToggled,
  todoDeleted,
} from '../features/todos/todosSlice'

// Create the middleware instance and methods
const listenerMiddleware = createListenerMiddleware()

// Add one or more listener entries that look for specific actions.
// They may contain any sync or async logic, similar to thunks.
listenerMiddleware.startListening({
  actionCreator: todoAdded,
  effect: async (action, listenerApi) => {
    // Run whatever additional side-effect-y logic you want here
    console.log('Todo added: ', action.payload.text)

    // Can cancel other running instances
    listenerApi.cancelActiveListeners()

    // Run async logic
    const data = await fetchData()

    // Pause until action dispatched or state changed
    if (await listenerApi.condition(matchSomeAction)) {
      // Use the listener API methods to dispatch, get state,
      // unsubscribe the listener, start child tasks, and more
      listenerApi.dispatch(todoAdded('Buy pet food'))
      listenerApi.unsubscribe()
    }
  },
})

const store = configureStore({
  reducer: {
    todos: todosReducer,
  },
  // Add the listener middleware to the store.
  // NOTE: Since this can receive actions with functions inside,
  // it should go before the serializability check middleware
  middleware: (getDefaultMiddleware) =>
    getDefaultMiddleware().prepend(listenerMiddleware.middleware),
})

You can use it to write more complex async workflows, including pausing the effect callback until a condition check resolves, and forking "child tasks" to do additional work:

// Track how many times each message was processed by the loop
const receivedMessages = {
  a: 0,
  b: 0,
  c: 0,
}

const eventPollingStarted = createAction('serverPolling/started')
const eventPollingStopped = createAction('serverPolling/stopped')

listenerMiddleware.startListening({
  actionCreator: eventPollingStarted,
  effect: async (action, listenerApi) => {
    // Only allow one instance of this listener to run at a time
    listenerApi.unsubscribe()

    // Start a child job that will infinitely loop receiving messages
    const pollingTask = listenerApi.fork(async (forkApi) => {
      try {
        while (true) {
          // Cancellation-aware pause for a new server message
          const serverEvent = await forkApi.pause(pollForEvent())
          // Process the message. In this case, just count the times we've seen this message.
          if (serverEvent.type in receivedMessages) {
            receivedMessages[
              serverEvent.type as keyof typeof receivedMessages
            ]++
          }
        }
      } catch (err) {
        if (err instanceof TaskAbortError) {
          // could do something here to track that the task was cancelled
        }
      }
    })

    // Wait for the "stop polling" action
    await listenerApi.condition(eventPollingStopped.match)
    pollingTask.cancel()
  },
})
configureStore Middleware Type Improvements

Middleware can override the default return value of dispatch. configureStore tries to extract any declared dispatch type overrides from the middleware array, and uses that to alter the type of store.dispatch.

We identified some cases where the type inference wasn't working well enough, and rewrote the type behavior to be more correct.

TypeScript Support Matrix Updates

RTK now requires TS 4.1 or greater to work correctly, and we've dropped 4.0 and earlier from our support matrix.

Other Changes

The internal logic for the serializability middleware has been reorganized to allow skipping checks against actions, while still checking values in the state.

What's Changed

Since most of the implementation work on the middleware was done over the last few months, this list only contains the most recent PRs since 1.7.2. For details on the original use case discussions and the evolution of the middleware API over time, see:

PRs since 1.7.2:

Full Changelog: https://github.com/reduxjs/redux-toolkit/compare/v1.7.2...v1.8.0

v1.7.2

Compare Source

This release fixes a TS types bug with RTK Query generated selectors, makes the RTKQ structural sharing behavior configurable, adds an option to have the serializability middleware ignore all actions, and has several minor bugfixes and enhancements to RTK Query.

Changelog

RTK Query Selector TS Types Fix

Several users had reported that as of 1.7.0 selectors generated via apiSlice.endpoint.select() were failing to compile when used, with TS errors that looked like Type '{}' is missing the following properties from type 'CombinedState<>.

We've fixed the issue, and selectors should now compile correctly when used with TS.

Additional Configuration Options

RTK Query implements a technique called "structural sharing" to preserve existing object references if possible when data for an endpoint is re-fetched. RTKQ recurses over both data structures, and if the contents appear to be the same, keeps the existing values. That helps avoid potential unnecessary re-renders in the UI, because otherwise the entire re-fetched result would be new object references.

However, this update process can potentially take time depending on the size of the response. Endpoints can now be given a structuralSharing option that will turn that off to save on processing time:

    const api = createApi({
      baseQuery: fetchBaseQuery({ baseUrl: "https://example.com" }),
      endpoints: (build) => ({
        getEveryEntityInADatabase: build.query({
          query: () => ({ url: "/i-cant-paginate-data" }),
          structuralSharing: false,
        }),
      }),
    });

Additionally, the serializability check middleware can now be customized with an ignoreActions option to exempt all actions from being checked. This is an escape hatch and isn't recommended for most apps:

    const store = configureStore({
      reducer: rootReducer,
      middleware: (getDefaultMiddleware) =>
        getDefaultMiddleware({
          serializableCheck: {
            ignoreActions: true,
          },
        }),
    });
Other API Improvements

If an extraArgument was provided to the thunk middleware during store configuration, that value is now passed along to the prepareHeaders() function:

  const store = configureStore({
	reducer: rootReducer,
	middleware: (getDefaultMiddleware) =>
	  getDefaultMiddleware({
		thunk: {
		  extraArgument: { myCustomApiService },
		},
	  }),
  });

  // ..later on
  const api = createApi({
	baseQuery: fetchBaseQuery({
	  baseUrl: "https://example.com",
	  prepareHeaders: async (headers, { getState, extra }) => {
		const token = getState().auth.token;
		const somethingElse = await extra.myCustomApiService.someMethod();
		// do things with somethingElse
		return headers;
	  },
	}),
  });

The invalidatesTags/providesTags functions now receive the action.meta field as an argument, to help with potentially invalidating based on request/response headers.

Bug Fixes

refetchOnFocus now cleans up cache entries if a focus event is received and there are no active subscriptions, to avoid unnecessary requests.

Active polls are cleaned up when the last component for a given subscription unsubscribes.

The types for builder.addMatcher have been updated to support inference of guards without a type property.

What's Changed

Full Changelog: https://github.com/reduxjs/redux-toolkit/compare/v1.7.1...v1.7.2

v1.7.1

Compare Source

This release fixes a types issue with RTK 1.7.0 and TS 4.5, as seen in #​1829 .

What's Changed

Full Changelog: https://github.com/reduxjs/redux-toolkit/compare/v1.7.0...v1.7.1

v1.7.0

Compare Source

This feature release has a wide variety of API improvements:

  • updates RTK Query with support for SSR and rehydration
  • allows sharing mutation results across components
  • adds a new currentData field to query results
  • adds several new options for customizing endpoints and base queries
  • adds support for async condition options in createAsyncThunk
  • updates createSlice/createReducer to accept a "lazy state initializer" function
  • updates createSlice to avoid potential circular dependency issues by lazy-building its reducer
  • updates Reselect and Redux-Thunk to the latest versions with much-improved TS support and new selector customization options
  • Fixes a number of small code and types issues
npm i @&#8203;reduxjs/toolkit@latest

yarn add @&#8203;reduxjs/toolkit@latest

Changelog

RTK Query
RTK Query SSR and Rehydration Support

RTK Query now has support for SSR scenarios, such as the getStaticProps/getServerSideProps APIs in Next.js. Queries can be executed on the server using the existing dispatch(someEndpoint.initiate()) thunks, and then collected using the new await Promise.all(api.getRunningOperationPromises()) method.

API definitions can then provide an extractRehydrationInfo method that looks for a specific action type containing the fetched data, and return the data to initialize the API cache section of the store state.

The related api.util.getRunningOperationPromise() API adds a building block that may enable future support for React Suspense as well, and we'd encourage users to experiment with this idea.

Sharing Mutation Results Across Components

Mutation hooks provide status of in-progress requests, but as originally designed that information was unique per-component - there was no way for another component to see that request status data. But, we had several requests to enable this use case.

useMutation hooks now support a fixedCacheKey option that will store the result status in a common location, so multiple components can read the request status if needed.

This does mean that the data cannot easily be cleaned up automatically, so the mutation status object now includes a reset() function that can be used to clear that data.

Data Loading Updates

Query results now include a currentData field, which contains the latest data cached from the server for the current query arg. Additionally, transformResponse now receives the query arg as a parameter. These can be used to add additional derivation logic in cases when a hooks query arg has changed to represent a different value and the existing data no longer conceptually makes sense to keep displaying.

Data Serialization and Base Query Improvements

RTK Query originally only did shallow checks for query arg fields to determine if values had changed. This caused issues with infinite loops depending on user input.

The query hooks now use a "serialized stable value" hook internally to do more consistent comparisons of query args and eliminate those problems.

Also, fetchBaseQuery now supports a paramsSerializer option that allows customization of query string generation from the provided arguments, which enables better interaction with some backend APIs.

The BaseQueryApi and prepareheaders args now include fields for endpoint name, type to indicate if it's a query or mutation, and forced to indicate a re-fetch even if there was already a cache entry. These can be used to help determine headers like Cache-Control: no-cache.

Other RTK Query Improvements

API objects now have a selectInvalidatedBy function that accepts a root state object and an array of query tag objects, and returns a list of details on endpoints that would be invalidated. This can be used to help implement optimistic updates of paginated lists.

Fixed an issue serializing a query arg of undefined. Related, an empty JSON body now is stored as null instead of undefined.

There are now dev warnings for potential mistakes in endpoint setup, like a query function that does not return a data field.

Lazy query trigger promises can now be unwrapped similar to mutations.

Fixed a type error that led the endpoint return type to be erroneously used as a state key, which caused generated selectors to have an inferred state: never argument.

Fixed transformResponse to correctly receive the originalArgs as its third parameter.

api.util.resetApiState will now clear out cached values in useQuery hooks.

The RetryOptions interface is now exported, which resolves a TS build error when using the hooks with TS declarations.

RTK Core
createSlice Lazy Reducers and Circular Dependencies

For the last couple years we've specifically recommended using a "feature folder" structure with a single "slice" file of logic per feature, and createSlice makes that pattern really easy - no need to have separate folders and files for /actions and /constants any more.

The one downside to the "slice file" pattern is in cases when slice A needs to import actions from slice B to respond to them, and slice B also needs to listen to slice A. This circular import then causes runtime errors, because one of the modules will not have finished initializing by the time the other executes the module body. That causes the exports to be undefined, and createSlice throws an error because you can't pass undefined to builder.addCase() in extraReducers. (Or, worse, there's no obvious error and things break later.)

There are well-known patterns for breaking circular dependencies, typically requiring extracting shared logic into a separate file. For RTK, this usually means calling createAction separately, and importing those action creators into both slices.

While this is a rarer problem, it's one that can happen in real usage, and it's also been a semi-frequently listed concern from users who didn't want to use RTK.

We've updated createSlice to now lazily create its reducer function the first time you try to call it. That delay in instantiation should eliminate circular dependencies as a runtime error in createSlice.

createAsyncThunk Improvements

The condition option may now be async, which enables scenarios like checking if an existing operation is running and resolving the promise when the other instance is done.

If an idGenerator function is provided, it will now be given the thunkArg value as a parameter, which enables generating custom IDs based on the request data.

The createAsyncThunk types were updated to correctly handle type inference when using rejectWithValue().

Other RTK Improvements

createSlice and createReducer now accept a "lazy state initializer" function as the initialState argument. If provided, the initializer will be called to produce a new initial state value any time the reducer is given undefined as its state argument. This can be useful for cases like reading from localStorage, as well as testing.

The isPlainObject util has been updated to match the implementation in other Redux libs.

The UMD builds of RTK Query now attach as window.RTKQ instead of overwriting window.RTK.

Fixed an issue with sourcemap loading due to an incorrect filename replacement.

Dependency Updates

We've updated our deps to the latest versions:

  • Reselect 4.1.x: Reselect has brand-new customization capabilities for selectors, including configuring cache sizes > 1 and the ability to run equality checks on selector results. It also now has completely rewritten TS types that do a much better job of inferring arguments and catch previously broken patterns.
  • Redux Thunk 2.4.0: The thunk middleware also has improved types, as well as an optional "global override" import to modify the type of Dispatch everywhere in the app

We've also lowered RTK's peer dependency on React from ^16.14 to ^16.9, as we just need hooks to be available.

Other Redux Development Work

The Redux team has also been working on several other updates to the Redux family of libraries.

React-Redux v8.0 Beta

We've rewritten React-Redux to add compatibility with the upcoming React 18 release and converted its codebase to TypeScript. It still supports React 16.8+/17 via a /compat entry point. We'd appreciate further testing from the community so we can confirm it works as expected in real apps before final release. For details on the changes, see:

RTK "Action Listener Middleware" Alpha

We have been working on a new "action listener middleware" that we hope to release in an upcoming version of RTK. It's designed to let users write code that runs in response to dispatched actions and state changes, including simple callbacks and moderately complex async workflows. The current design appears capable of handling many of the use cases that previously required use of the Redux-Saga or Redux-Observable middlewares, but with a smaller bundle size and simpler API.

The listener middleware is still in alpha, but we'd really appreciate more users testing it out and giving us additional feedback to help us finalize the API and make sure it covers the right use cases.

RTK Query CodeGen

The RTK Query OpenAPI codegen tool has been rewritten with new options and improved output.

What's Changed

Full Changelog: https://github.com/reduxjs/redux-toolkit/compare/v1.6.2...v1.7.0

jbogard/MediatR

v11.0.0

What's Changed

New Contributors

Full Changelog: https://github.com/jbogard/MediatR/compare/v10.0.1...v11.0.0
Migration Guide: https://github.com/jbogard/MediatR/wiki/Migration-Guide-10.x-to-11.0

v10.0.1

This is a patch release to support the latest Contracts package, which changed its targets to netstandard2.0 and net461.

Although MediatR supports only netstandard2.1 and above, it should not force the consumers of the contracts as such.

v10.0.0

This release adds support for IAsyncEnumerable<T>. A new request type, IStreamRequest<T> represents a request to create a stream, with a new handler type IStreamRequestHandler<TRequest, TResponse> to handle. An example:

public class StreamPing : IStreamRequest<Pong>
{
    public string? Message { get; init; }
}

public class PingStreamHandler : IStreamRequestHandler<StreamPing, Pong>
{
    public async IAsyncEnumerable<Pong> Handle(StreamPing request, 
        [EnumeratorCancellation] CancellationToken cancellationToken)
    {
        yield return await Task.Run(() => new Pong { Message = request.Message + " Pang" }, cancellationToken);
    }
}

Where the work inside of the handler would likely be calling some other streaming API, such as gRPC, EF Core streaming support, Dapper streaming etc.

There are also separate behaviors, with IStreamPipelineBehavior that are separate from the normal IPipelineBehavior.

With the addition of IAsyncEnumerable, this release now targets netstandard2.1 exclusively.

There are some breaking API changes, called out in the 10.0 migration guide.

jbogard/MediatR.Extensions.Microsoft.DependencyInjection

v11.0.0

What's Changed

New Contributors

Full Changelog: https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection/compare/v10.0.1...v11.0.0

v10.0.0

In addition to targeting MediatR 10.0.0, this release adds a few new features:

  • Allow changing order of request exception behaviors (#​81)
  • Not registering open generics where arity does not match (#​109)
  • Pass a function to evaluate types for binding as an additional filter (#​107)
  • Updating to 6.0 of Microsoft.Extensions.DependencyInjection to support constrained generics
  • Targeting only netstandard2.1
mongodb/mongo-csharp-driver

v2.18.0

.NET Driver Version 2.18.0 Release Notes

This is the general availability release for the 2.18.0 version of the driver.

The main new features in 2.18.0 include:

  • Snappy compression now uses a managed implementation
  • ZStandard compression now uses a managed implementation
  • Cache AWS credentials when possible
  • New cross driver standard logging support
  • Support for $documents aggregation pipeline stage

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.18.0.md

The full list of JIRA issues resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.18.0%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

https://mongodb.github.io/mongo-csharp-driver/

v2.17.1

.NET Driver Version 2.17.1 Release Notes

This is a patch release that fixes a potential data corruption bug in RewrapManyDataKey when rotating encrypted data encryption keys backed by GCP or Azure key services.

The following conditions will trigger this bug:

  • A GCP-backed or Azure-backed data encryption key being rewrapped requires fetching an access token for decryption of the data encryption key.

The result of this bug is that the key material for all data encryption keys being rewrapped is replaced by new randomly generated material, destroying the original key material.

To mitigate potential data corruption, upgrade to this version or higher before using RewrapManyDataKey to rotate Azure-backed or GCP-backed data encryption keys. A backup of the key vault collection should always be taken before key rotation.

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.17.1.md

The list of JIRA tickets resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.17.1%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

http://mongodb.github.io/mongo-csharp-driver/

Upgrading

There are no known backwards breaking changes in this release.

v2.17.0

.NET Driver Version 2.17.0 Release Notes

This is the general availability release for the 2.17.0 version of the driver.

The main new features in 2.17.0 include:

  • Support for MongoDB server version 6.0.0 GA
  • [BETA] Support for Queryable Encryption
  • LINQ3 bug fixes and improvements
  • Add arbitrary aggregation stages to LINQ queries using IMongoQueryable.AppendStage() method (LINQ3)
  • Support for $topN and related accumulators in $group aggregation stage
EstimatedDocumentCount and Stable API

EstimatedDocumentCount is implemented using the count server command. Due to an oversight in versions
5.0.0-5.0.8 of MongoDB, the count command, which EstimatedDocumentCount uses in its implementation,
was not included in v1 of the Stable API. If you are using the Stable API with EstimatedDocumentCount,
you must upgrade to server version 5.0.9+ or set strict: false when configuring ServerApi to avoid
encountering errors.

For more information about the Stable API see:

https://mongodb.github.io/mongo-csharp-driver/2.16/reference/driver/stable_api/

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.17.0.md

The full list of JIRA issues resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.17.0%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

https://mongodb.github.io/mongo-csharp-driver/

v2.16.1

.NET Driver Version 2.16.1 Release Notes

This is a patch release that addresses some issues reported since 2.16.0 was released.

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.16.1.md

The list of JIRA tickets resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.16.1%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

http://mongodb.github.io/mongo-csharp-driver/

Upgrading

There are no known backwards breaking changes in this release.

v2.16.0

This is the general availability release for the 2.16.0 version of the driver.

The main new features in 2.16.0 include:

Support for MongoDB server version 6.0.0
[BETA] Support for Queryable Encryption
Support for creating collections with clustered indexes
Use count command for estimatedDocumentCount
LINQ3 bug fixes and improvements
Support for carry forward ($locf) and numerical/date densification ($densify)
Support for limit in $filter expressions
Support point-in-time pre-/post-images in change streams
Preemptively cancel in-progress operations when SDAM heartbeats timeout

EstimatedDocumentCount and Stable API

EstimatedDocumentCount is implemented using the count server command. Due to an oversight in versions 5.0.0-5.0.8 of MongoDB, the count command, which EstimatedDocumentCount uses in its implementation, was not included in v1 of the Stable API. If you are using the Stable API with EstimatedDocumentCount, you must upgrade to server version 5.0.9+ or set strict: false when configuring ServerApi to avoid encountering errors.

For more information about the Stable API see:

https://mongodb.github.io/mongo-csharp-driver/2.16/reference/driver/stable_api/

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.16.0.md

The full list of JIRA issues resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.16.0%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

https://mongodb.github.io/mongo-csharp-driver/

v2.15.1

This is a patch release that addresses some issues reported since 2.15.0 was released.

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.15.1.md

The list of JIRA tickets resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.15.1%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

http://mongodb.github.io/mongo-csharp-driver/

Upgrading
There are no known backwards breaking changes in this release.

v2.15.0

This is the general availability release for the 2.15.0 version of the driver.

The main new features in 2.15.0 include:

  • Reimplement CMAP Maintance and SDAM threads to use dedicated threads
  • Support for Window Functions using $setWindowFields
  • Support $merge and $out executing on secondaries
  • Publish symbols to NuGet.org Symbol Server and add Source Link support for improved debugging experience
  • Switch to using maxWireVersion rather than buildInfo to determine feature support
  • Support 'let' option for multiple CRUD commands
  • Support authorizedCollections option for listCollections helpers
  • Add support for 'comment' field in multiple commands for profiling
  • Upgrade DnsClient.NET up to 1.6.0. This should address problems that some users have had in containerized environments like Kubernetes.

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.15.0.md

The full list of JIRA issues resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.15.0%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

https://mongodb.github.io/mongo-csharp-driver/

v2.14.1

.NET Driver Version 2.14.1 Release Notes

This is a patch release that addresses some issues reported since 2.14.0 was released.

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.14.1.md

The list of JIRA tickets resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.14.1%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

http://mongodb.github.io/mongo-csharp-driver/

Upgrading

There are no known backwards breaking changes in this release.

v2.14.0

.NET Driver Version 2.14.0 Release Notes

This is the general availability release for the 2.14.0 version of the driver.

The main new features in 2.14.0 include:

  • Added a new improved LINQ provider (known as LINQ3, see: [LINQ3]({{< relref "reference\driver\crud\linq3.md" >}})), which is available on an opt-in basis
  • The current LINQ provider (known as LINQ2) continues to be available and is still the default LINQ provider for this version
  • Support for Zstandard and Snappy on Linux and MacOS
  • Added connection storm avoidance features
  • Added KMIP support for client-side field level encryption (CSFLE)
  • Added srvMaxHosts URI option to limit the number of mongos nodes used in connecting to sharded clusters
  • Use "hello" command for monitoring if supported
  • Removed support for .NET Framework 4.5.2; minimum is now 4.7.2
  • Removed support for .NET Standard 1.5; minimum is now 2.0
  • Minimum server version is now MongoDB 3.6+

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.14.0.md

The full list of JIRA issues resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.14.0%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

http://mongodb.github.io/mongo-csharp-driver/

v2.13.3

.NET Driver Version 2.13.3 Release Notes

This is a patch release that addresses some issues reported since 2.13.2 was released.

An online version of these release notes is available at:

https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.13.3.md

The list of JIRA tickets resolved in this release is available at:

https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.13.3%20ORDER%20BY%20key%20ASC

Documentation on the .NET driver can be found at:

http://mongodb.github.io/mongo-csharp-driver/

Upgrading

There are no known backwards breaking changes in this release.

postcss/autoprefixer

v10.4.12

Compare Source

  • Fixed support of unit-less zero angle in backgrounds (by 一丝).

v10.4.11

Compare Source

  • Fixed text-decoration prefixes by moving to MDN data (by Romain Menke).

v10.4.10

Compare Source

  • Fixed unicode-bidi prefixes by moving to MDN data.

v10.4.9

Compare Source

  • Fixed css-unicode-bidi issue from latest Can I Use.

v10.4.8

Compare Source

  • Do not print color-adjust warning if print-color-adjust also is in rule.

v10.4.7

Compare Source

  • Fixed print-color-adjust support in Firefox.

v10.4.6

Compare Source

  • Fixed print-color-adjust support.

v10.4.5

Compare Source

v10.4.4

Compare Source

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

v10.4.3

Compare Source

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

v10.4.2

Compare Source

  • Fixed missed -webkit- prefix for width: stretch.

v10.4.1

Compare Source

  • Fixed support of unit-less zero angle in backgrounds (by 一丝).
axios/axios

v1.1.3

Compare Source

Added

Added custom params serializer support #​5113

Fixed

Fixed top-level export to keep them in-line with static properties #​5109
Stopped including null values to query string. #​5108
Restored proxy config backwards compatibility with 0.x #​5097
Added back AxiosHeaders in AxiosHeaderValue #​5103
Pin CDN install instructions to a specific version #​5060
Handling of array values fixed for AxiosHeaders #​5085

Chores

docs: match badge style, add link to them #​5046
chore: fixing comments typo #​5054
chore: update issue template #​5061
chore: added progress capturing section to the docs; #​5084

Contributors to this release

v1.1.2

Compare Source

Fixed
  • Fixed broken exports for UMD builds.
Contributors to this release

v1.1.1

Compare Source

Fixed
  • Fixed broken exports for common js. This fix breaks a prior fix, I will fix both issues ASAP but the commonJS use is more impactful.
Contributors to this release

v1.1.0

Compare Source

Fixed
  • Fixed missing exports in type definition index.d.ts #​5003
  • Fixed query params composing #​5018
  • Fixed GenericAbortSignal interface by making it more generic #​5021
  • Fixed adding "clear" to AxiosInterceptorManager #​5010
  • Fixed commonjs & umd exports #​5030
  • Fixed inability to access response headers when using axios 1.x with Jest #​5036
Contributors to this release

v1.0.0

Compare Source

Added
  • Added stack trace to AxiosError #​4624
  • Add AxiosError to AxiosStatic #​4654
  • Replaced Rollup as our build runner #​4596
  • Added generic TS types for the exposed toFormData helper #​4668
  • Added listen callback function #​4096
  • Added instructions for installing using PNPM #​4207
  • Added generic AxiosAbortSignal TS interface to avoid importing AbortController polyfill #​4229
  • Added axios-url-template in ECOSYSTEM.md #​4238
  • Added a clear() function to the request and response interceptors object so a user can ensure that all interceptors have been removed from an axios instance #​4248
  • Added react hook plugin #​4319
  • Adding HTTP status code for transformResponse #​4580
  • Added blob to the list of protocols supported by the browser #​4678
  • Resolving proxy from env on redirect #​4436
  • Added enhanced toFormData implementation with additional options 4704
  • Adding Canceler parameters config and request #​4711
  • Added automatic payload serialization to application/x-www-form-urlencoded #​4714
  • Added the ability for webpack users to overwrite built-ins #​4715
  • Added string[] to AxiosRequestHeaders type #​4322
  • Added the ability for the url-encoded-form serializer to respect the formSerializer config #​4721
  • Added isCancel type assert #​4293
  • Added data URL support for node.js #​4725
  • Adding types for progress event callbacks #​4675
  • URL params serializer #​4734
  • Added axios.formToJSON method #​4735
  • Bower platform add data protocol #​4804
  • Use WHATWG URL API instead of url.parse() #​4852
  • Add ENUM containing Http Status Codes to typings #​4903
  • Improve typing of timeout in index.d.ts #​4934
Changed
  • Updated AxiosError.config to be optional in the type definition #​4665
  • Updated README emphasizing the URLSearchParam built-in interface over other solutions #​4590
  • Include request and config when creating a CanceledError instance #​4659
  • Changed func-names eslint rule to as-needed #​4492
  • Replacing deprecated substr() with slice() as substr() is deprecated #​4468
  • Updating HTTP links in README.md to use HTTPS #​4387
  • Updated to a better trim() polyfill #​4072
  • Updated types to allow specifying partial default headers on instance create #​4185
  • Expanded isAxiosError types #​4344
  • Updated type definition for axios instance methods #​4224
  • Updated eslint config #​4722
  • Updated Docs #​4742
  • Refactored Axios to use ES2017 #​4787
Deprecated
  • There are multiple deprecations, refactors and fixes provided in this release. Please read through the full release notes to see how this may impact your project and use case.
Removed
  • Removed incorrect argument for NetworkError constructor #​4656
  • Removed Webpack #​4596
  • Removed function that transform arguments to array #​4544
Fixed
  • Fixed grammar in README #​4649
  • Fixed code error in README #​4599
  • Optimized the code that checks cancellation #​4587
  • Fix url pointing to defaults.js in README #​4532
  • Use type alias instead of interface for AxiosPromise #​4505
  • Fix some word spelling and lint style in code comments #​4500
  • Edited readme with 3 updated browser icons of Chrome, FireFox and Safari #​4414
  • Bump follow-redirects from 1.14.9 to 1.15.0 #​4673
  • Fixing http tests to avoid hanging when assertions fail #​4435
  • Fix TS definition for AxiosRequestTransformer #​4201
  • Fix grammatical issues in README #​4232
  • Fixing instance.defaults.headers type #​4557
  • Fixed race condition on immediate requests cancellation #​4261
  • Fixing Z_BUF_ERROR when no content #​4701
  • Fixing proxy beforeRedirect regression #​4708
  • Fixed AxiosError status code type #​4717
  • Fixed AxiosError stack capturing #​4718
  • Fixing AxiosRequestHeaders typings #​4334
  • Fixed max body length defaults #​4731
  • Fixed toFormData Blob issue on node>v17 #​4728
  • Bump grunt from 1.5.2 to 1.5.3 #​4743
  • Fixing content-type header repeated #​4745
  • Fixed timeout error message for http 4738
  • Request ignores false, 0 and empty string as body values #​4785
  • Added back missing minified builds #​4805
  • Fixed a type error #​4815
  • Fixed a regression bug with unsubscribing from cancel token; #​4819
  • Remove repeated compression algorithm #​4820
  • The error of calling extend to pass parameters #​4857
  • SerializerOptions.indexes allows boolean | null | undefined #​4862
  • Require interceptors to return values #​4874
  • Removed unused imports #​4949
  • Allow null indexes on formSerializer and paramsSerializer #​4960
Chores
  • Set permissions for GitHub actions #​4765
  • Included githubactions in the dependabot config #​4770
  • Included dependency review #​4771
  • Update security.md #​4784
  • Remove unnecessary spaces #​4854
  • Simplify the import path of AxiosError #​4875
  • Fix Gitpod dead link #​4941
  • Enable syntax highlighting for a code block #​4970
  • Using Logo Axios in Readme.md #​4993
  • Fix markup for note in README #​4825
  • Fix typo and formatting, add colons #​4853
  • Fix typo in readme #​4942
Security
Contributors to this release

v0.27.2

Compare Source

Fixes and Functionality:

  • Fixed FormData posting in browser environment by reverting #​3785 (#​4640)
  • Enhanced protocol parsing implementation (#​4639)
  • Fixed bundle size

v0.27.1

Compare Source

Fixes and Functionality:
  • Removed import of url module in browser build due to huge size overhead and builds being broken (#​4594)
  • Bumped follow-redirects to ^1.14.9 (#​4615)

v0.27.0

Compare Source

Breaking changes:
  • New toFormData helper function that allows the implementor to pass an object and allow axios to convert it to FormData (#​3757)
  • Removed functionality that removed the the Content-Type request header when passing FormData (#​3785)
  • (*) Refactored error handling implementing AxiosError as a constructor, this is a large change to error handling on the whole (#​3645)
  • Separated responsibility for FormData instantiation between transformRequest and toFormData (#​4470)
  • (*) Improved and fixed multiple issues with FormData support (#​4448)
QOL and DevX improvements:
  • Added a multipart/form-data testing playground allowing contributors to debug changes easily (#​4465)
Fixes and Functionality:
  • Refactored project file structure to avoid circular imports (#​4515) & (#​4516)
  • Bumped follow-redirects to ^1.14.9 (#​4562)
Internal and Tests:
  • Updated dev dependencies to latest version
Documentation:
  • Fixing incorrect link in changelog (#​4551)
Notes:
  • (*) Please read these pull requests before updating, these changes are very impactful and far reaching.

v0.26.1

Compare Source

Fixes and Functionality:
  • Refactored project file structure to avoid circular imports (#​4220)

v0.26.0

Compare Source

Fixes and Functionality:
  • Fixed The timeoutErrorMessage property in config not work with Node.js (#​3581)
  • Added errors to be displayed when the query parsing process itself fails (#​3961)
  • Fix/remove url required (#​4426)
  • Update follow-redirects dependency due to Vulnerability (#​4462)
  • Bump karma from 6.3.11 to 6.3.14 (#​4461)
  • Bump follow-redirects from 1.14.7 to 1.14.8 (#​4473)

v0.25.0

Compare Source

Breaking changes:
  • Fixing maxBodyLength enforcement (#​3786)
  • Don't rely on strict mode behaviour for arguments (#​3470)
  • Adding error handling when missing url (#​3791)
  • Update isAbsoluteURL.js removing escaping of non-special characters (#​3809)
  • Use native Array.isArray() in utils.js (#​3836)
  • Adding error handling inside stream end callback (#​3967)
Fixes and Functionality:
  • Added aborted even handler (#​3916)
  • Header types expanded allowing boolean and number types (#​4144)
  • Fix cancel signature allowing cancel message to be undefined (#​3153)
  • Updated type checks to be formulated better (#​3342)
  • Avoid unnecessary buffer allocations (#​3321)
  • Adding a socket handler to keep TCP connection live when processing long living requests (#​3422)
  • Added toFormData helper function (#​3757)
  • Adding responseEncoding prop type in AxiosRequestConfig (#​3918)
Internal and Tests:
  • Adding axios-test-instance to ecosystem (#​3786)
  • Optimize the logic of isAxiosError (#​3546)
  • Add tests and documentation to display how multiple inceptors work (#​3564)
  • Updating follow-redirects to version 1.14.7 (#​4379)
Documentation:
  • Fixing changelog to show corrext pull request (#​4219)
  • Update upgrade guide for https proxy setting (#​3604)

Huge thanks to everyone who contributed to this release via code (authors listed below) or via reviews and triaging on GitHub:

cssnano/cssnano

v5.1.13

Compare Source

Bug Fixes

  • fix TypeScript type of cssnano() return value (b92dbe3ab1)

v5.1.12

Compare Source

Bug Fixes

  • fix: preserve hyphenated property case (120a888993)
  • fix: ensure sorting properties does not break the output (0a3a1331e2)
  • fix: recognize 'constant' as a function (858a8b77c9)

v5.1.11

Compare Source

Bug Fixes

  • postcss-ordered-values: preserve constant values (32ab4d9b7d20d)

v5.1.10

Compare Source

Bug Fixes

v5.1.9

Compare Source

Bug Fixes

  • postcss-merge-longhand: preserve more color function fallbacks (712993cb4a4e0)

v5.1.8

Compare Source

Bug Fixes

  • postcss-convert-values: preserve percentage sign on IE 11 (57f060ad21734)

v5.1.7

Compare Source

v5.1.6

Compare Source

Bug Fixes

  • preserve border color when merging border properties (5f5080a)

v5.1.5

Compare Source

v5.1.4

Compare Source

Bug Fixes

  • postcss-merge-longhand: preserve custom property case (5428d5fc9)

v5.1.3

Compare Source

Bug Fixes

  • fix: do not merge declarations containing custom properties when it might create invalid declarations (2c699341)

v5.1.2

Compare Source

Bug fixes

  • preserve empty custom properties and ensure they work in Chrome (4ed39679)

v5.1.1

Compare Source

v5.1.0

Compare Source

New Feature

Add TypeScript types

v5.0.17

Compare Source

Patch Changes

  • Publish untranspiled CommonJS source

v5.0.16

Compare Source

5.0.16

Patch Changes

  • refactor: replace natural sort with built-in array sort
  • Updated dependencies

v5.0.15

Compare Source

Patch Changes

  • refactor: remove getMatch function from cssnano-utils

    The getMatch function allows nested arrays to emulate a map.
    It is better to replace this function with a regular Map().
    It's unlikely this function is used outside of cssnano as it requires
    a very specific nested array struture.

  • fix: update postcss-calc to 8.2

    Remove a crash when postcss-calc cannot parse the value

  • Updated dependencies

    • cssnano-preset-default@5.1.10

v5.0.14

Compare Source

Bug fixes

v5.0.13

Compare Source

Patch Changes

  • chore(postcss-normalize-url): reduce dependencies (#​1255) (a4267dedcd6)
  • fix(postcss-colormin): accept configuration options (#​1263) (3b38038007)
  • Updated dependencies
    • cssnano-preset-default@5.1.9

v5.0.12

Compare Source

Bug fixes

v5.0.11

Compare Source

Bug fixes

  • c38f14c: postcss-normalize-url: avoid changing parameter encoding

Chore

  • 31d5c07: refactor: drop one-liner dependencies
  • 0717282: postcss-merge-longhand: drop css-color-names dependency
eslint/eslint

v8.26.0

Compare Source

Features

  • 4715787 feat: check Object.create() in getter-return (#​16420) (Yuki Hirasawa)
  • 28d1902 feat: no-implicit-globals supports exported block comment (#​16343) (Sosuke Suzuki)
  • e940be7 feat: Use ESLINT_USE_FLAT_CONFIG environment variable for flat config (#​16356) (Tomer Aberbach)
  • dd0c58f feat: Swap out Globby for custom globbing solution. (#​16369) (Nicholas C. Zakas)

Bug Fixes

  • df77409 fix: use baseConfig constructor option in FlatESLint (#​16432) (Milos Djermanovic)
  • 33668ee fix: Ensure that glob patterns are matched correctly. (#​16449) (Nicholas C. Zakas)
  • 740b208 fix: ignore messages without a ruleId in getRulesMetaForResults (#​16409) (Francesco Trotta)
  • 8f9759e fix: --ignore-pattern in flat config mode should be relative to cwd (#​16425) (Milos Djermanovic)
  • 325ad37 fix: make getRulesMetaForResults return a plain object in trivial case (#​16438) (Francesco Trotta)
  • a2810bc fix: Ensure that directories can be unignored. (#​16436) (Nicholas C. Zakas)
  • 35916ad fix: Ensure unignore and reignore work correctly in flat config. (#​16422) (Nicholas C. Zakas)

Documentation

  • 651649b docs: Core concepts page (#​16399) (Ben Perlmutter)
  • 631cf72 docs: note --ignore-path not supported with flat config (#​16434) (Andy Edwards)
  • 1692840 docs: fix syntax in examples for new config files (#​16427) (Milos Djermanovic)
  • d336cfc docs: Document extending plugin with new config (#​16394) (Ben Perlmutter)

Chores

v8.25.0

Compare Source

Features

  • 173e820 feat: Pass --max-warnings value to formatters (#​16348) (Brandon Mills)
  • 6964cb1 feat: remove support for ignore files in FlatESLint (#​16355) (Milos Djermanovic)
  • 1cc4b3a feat: id-length counts graphemes instead of code units (#​16321) (Sosuke Suzuki)

Documentation

Chores

v8.24.0

Compare Source

Features

  • 1729f9e feat: account for sourceType: "commonjs" in the strict rule (#​16308) (Milos Djermanovic)
  • b0d72c9 feat: add rule logical-assignment-operators (#​16102) (fnx)
  • f02bcd9 feat: array-callback-return support findLast and findLastIndex (#​16314) (Sosuke Suzuki)

Documentation

Chores

v8.23.1

Compare Source

Bug Fixes

  • b719893 fix: Upgrade eslintrc to stop redefining plugins (#​16297) (Brandon Mills)
  • 734b54e fix: improve autofix for the prefer-const rule (#​16292) (Nitin Kumar)
  • 6a923ff fix: Ensure that glob patterns are normalized (#​16287) (Nicholas C. Zakas)
  • c6900f8 fix: Ensure globbing doesn't include subdirectories (#​16272) (Nicholas C. Zakas)

Documentation

  • 16cba3f docs: fix mobile double tap issue (#​16293) (Sam Chen)
  • e098b5f docs: keyboard control to search results (#​16222) (Shanmughapriyan S)
  • 1b5b2a7 docs: add Consolas font and prioritize resource loading (#​16225) (Amaresh S M)
  • 1ae8236 docs: copy & use main package version in docs on release (#​16252) (Jugal Thakkar)
  • 279f0af docs: Improve id-denylist documentation (#​16223) (Mert Ciflikli)

Chores

v8.23.0

Compare Source

Features

  • 3e5839e feat: Enable eslint.config.js lookup from CLI (#​16235) (Nicholas C. Zakas)
  • 30b1a2d feat: add allowEmptyCase option to no-fallthrough rule (#​15887) (Amaresh S M)
  • 43f03aa feat: no-warning-comments support comments with decoration (#​16120) (Lachlan Hunt)

Documentation

Chores

v8.22.0

Compare Source

Features

  • 2b97607 feat: Implement caching for FlatESLint (#​16190) (Nicholas C. Zakas)
  • fd5d3d3 feat: add methodsIgnorePattern option to object-shorthand rule (#​16185) (Milos Djermanovic)

Documentation

Chores

  • 10a6e0e chore: remove deploy workflow for playground (#​16186) (Milos Djermanovic)

v8.21.0

Compare Source

Features

  • 7b43ea1 feat: Implement FlatESLint (#​16149) (Nicholas C. Zakas)
  • 92bf49a feat: improve the key width calculation in key-spacing rule (#​16154) (Nitin Kumar)
  • c461542 feat: add new allowLineSeparatedGroups option to the sort-keys rule (#​16138) (Nitin Kumar)
  • 1cdcbca feat: add deprecation warnings for legacy API in RuleTester (#​16063) (Nitin Kumar)

Bug Fixes

  • 0396775 fix: lines-around-comment apply allowBlockStart for switch statements (#​16153) (Nitin Kumar)

Documentation

Chores

v8.20.0

Compare Source

Features

Bug Fixes

  • 30be0ed fix: no-warning-comments rule escapes special RegEx characters in terms (#​16090) (Lachlan Hunt)
  • bfe5e88 fix: ignore spacing before ] and } in comma-spacing (#​16113) (Milos Djermanovic)

Documentation

Chores

  • bbf8df4 chore: Mark autogenerated release blog post as draft (#​16130) (Nicholas C. Zakas)
  • eee4306 chore: update internal lint dependencies (#​16088) (Bryan Mishkin)
  • 9615a42 chore: update formatter examples template to avoid markdown lint error (#​16085) (Milos Djermanovic)
  • 62541ed chore: fix markdown linting error (#​16083) (唯然)

v8.19.0

Compare Source

Features

  • 7023628 feat: add importNames support for patterns in no-restricted-imports (#​16059) (Brandon Scott)
  • 472c368 feat: fix handling of blockless with statements in indent rule (#​16068) (Milos Djermanovic)

Bug Fixes

  • fc81848 fix: throw helpful exception when rule has wrong return type (#​16075) (Bryan Mishkin)

Documentation

  • 3ae0574 docs: Remove duplicate rule descriptions (#​16052) (Amaresh S M)
  • f50cf43 docs: Add base href to each page to fix relative URLs (#​16046) (Nicholas C. Zakas)
  • ae4b449 docs: make logo link clickable on small width screens (#​16058) (Milos Djermanovic)
  • 280f898 docs: use only fenced code blocks (#​16044) (Milos Djermanovic)
  • f5d63b9 docs: add listener only if element exists (#​16045) (Amaresh S M)
  • 8b639cc docs: add missing migrating-to-8.0.0 in the user guide (#​16048) (唯然)
  • b8e68c1 docs: Update release process (#​16036) (Nicholas C. Zakas)
  • 6d0cb11 docs: remove table of contents from markdown text (#​15999) (Nitin Kumar)

Chores

v8.18.0

Compare Source

Features

  • a6273b8 feat: account for rule creation time in performance reports (#​15982) (Nitin Kumar)

Bug Fixes

  • f364d47 fix: Make no-unused-vars treat for..of loops same as for..in loops (#​15868) (Alex Bass)

Documentation

  • 4871047 docs: Update analytics, canonical URL, ads (#​15996) (Nicholas C. Zakas)
  • cddad14 docs: Add correct/incorrect containers (#​15998) (Nicholas C. Zakas)
  • b04bc6f docs: Add rules meta info to rule pages (#​15902) (Nicholas C. Zakas)
  • 1324f10 docs: unify the wording referring to optional exception (#​15893) (Abdelrahman Elkady)
  • ad54d02 docs: add missing trailing slash to some internal links (#​15991) (Milos Djermanovic)
  • df7768e docs: Switch to version-relative URLs (#​15978) (Nicholas C. Zakas)
  • 21d6479 docs: change some absolute links to relative (#​15970) (Milos Djermanovic)
  • f31216a docs: Update README team and sponsors (ESLint Jenkins)
  • ed49f15 build: remove unwanted parallel and image-min for dev server (#​15986) (Strek)

Chores

  • f6e2e63 chore: fix 'replaced by' rule list (#​16007) (Milos Djermanovic)
  • d94dc84 chore: remove unused deprecation warnings (#​15994) (Francesco Trotta)
  • cdcf11e chore: fix versions link (#​15995) (Milos Djermanovic)
  • d2a8715 chore: add trailing slash to pathPrefix (#​15993) (Milos Djermanovic)
  • 58a1bf0 chore: tweak URL rewriting for local previews (#​15992) (Milos Djermanovic)
  • 80404d2 chore: remove docs deploy workflow (#​15984) (Nicholas C. Zakas)
  • 71bc750 chore: Set permissions for GitHub actions (#​15971) (Naveen)
  • 90ff647 chore: avoid generating subdirectories for each page on new docs site (#​15967) (Milos Djermanovic)

v8.17.0

Compare Source

Features

  • 55319e1 feat: fix indent bug with semicolon-first style (#​15951) (Milos Djermanovic)
  • f6d7920 feat: add allowNamedExports option to no-use-before-define (#​15953) (Milos Djermanovic)

Bug Fixes

Documentation

Chores

v8.16.0

Compare Source

Features

  • cab0c22 feat: add Unicode flag suggestion in no-misleading-character-class (#​15867) (Milos Djermanovic)
  • 38ae956 feat: check Unicode code point escapes in no-control-regex (#​15862) (Milos Djermanovic)
  • ee69cd3 feat: Update global variables (#​15871) (Sébastien Règne)

Bug Fixes

  • 3f09aab fix: function-paren-newline crash on "new new Foo();" (#​15850) (coderaiser)

Documentation

  • 050d5f4 docs: Static further reading links (#​15890) (Nicholas C. Zakas)
  • 36287c0 docs: fix absolute paths in related rules shortcode to work from /docs (#​15892) (Milos Djermanovic)
  • 90b6990 docs: fix absolute links in rule macro to work from /docs (#​15891) (Milos Djermanovic)
  • f437249 docs: Adjust docs site path prefix (#​15889) (Nicholas C. Zakas)
  • 6e16025 docs: update 'Related Rules' and 'Further Reading' in remaining rules (#​15884) (Milos Djermanovic)
  • 1d39f69 docs: remove confusing examples for no-mixed-operators (#​15875) (Milos Djermanovic)
  • 3071d76 docs: Fix some grammar issues (#​15837) (byodian)

Chores

v8.15.0

Compare Source

Features

  • ab37d3b feat: add enforceInClassFields option to no-underscore-dangle (#​15818) (Roberto Cestari)

Bug Fixes

  • 8bf9440 fix: "use strict" should not trigger strict mode in ES3 (#​15846) (Milos Djermanovic)

Documentation

  • 28116cc docs: update AST node names link in no-restricted-syntax (#​15843) (Milos Djermanovic)
  • 272965f docs: fix h1 heading on formatters page (#​15834) (Milos Djermanovic)
  • a798166 docs: update example for running individual rule tests (#​15833) (Milos Djermanovic)
  • 57e732b docs: mark SourceCode#getJSDocComment deprecated in working-with-rules (#​15829) (Milos Djermanovic)
  • 9a90abf docs: update docs directory in working-with-rules (#​15830) (Milos Djermanovic)
  • 810adda docs: add more examples for prefer-object-spread (#​15831) (coderaiser)
  • 06b1edb docs: clarify no-control-regex rule (#​15808) (Milos Djermanovic)
  • 9ecd42f docs: Fixed typo in code comment (#​15812) (Addison G)
  • de992b7 docs: remove links to 2fa document (#​15804) (Milos Djermanovic)
  • 5222659 docs: fix 'Related Rules' heading in no-constant-binary-expression (#​15799) (Milos Djermanovic)
  • e70ae81 docs: Update README team and sponsors (ESLint Jenkins)

Chores

v8.14.0

Compare Source

Features

  • ab6363d feat: Add rule no-constant-binary-expression (#​15296) (Jordan Eldredge)

Bug Fixes

  • 35fa1dd fix: allow project paths to have URL-encoded characters (#​15795) (Milos Djermanovic)
  • 413f1d5 fix: update astUtils.isDirectiveComment with globals and exported (#​15775) (Milos Djermanovic)

Chores

  • 735458c chore: add static frontmatter to no-constant-binary-expression docs (#​15798) (Milos Djermanovic)
  • db28f2c chore: Add static frontmatter to docs (#​15782) (Nicholas C. Zakas)
  • 3bca59e chore: markdownlint autofix on commit (#​15783) (Nicholas C. Zakas)

v8.13.0

Compare Source

Features

  • 274acbd feat: fix no-eval logic for this in arrow functions (#​15755) (Milos Djermanovic)

Bug Fixes

  • 97b57ae fix: invalid operator in operator-assignment messages (#​15759) (Milos Djermanovic)

Documentation

  • c32482e docs: Typo in space-infix-ops docs (#​15754) (kmin-jeong)
  • f2c2d35 docs: disambiguate types FormatterFunction and LoadedFormatter (#​15727) (Francesco Trotta)

Chores

  • bb4c0d5 chore: Refactor docs to work with docs.eslint.org (#​15744) (Nicholas C. Zakas)
  • d36f12f chore: remove lib/init from eslint config (#​15748) (Milos Djermanovic)
  • a59a4e6 chore: replace trimLeft/trimRight with trimStart/trimEnd (#​15750) (Milos Djermanovic)

v8.12.0

Compare Source

Features

  • 685a67a feat: fix logic for top-level this in no-invalid-this and no-eval (#​15712) (Milos Djermanovic)

Chores

  • 18f5e05 chore: padding-line-between-statements remove useless additionalItems (#​15706) (Martin Sadovy)

v8.11.0

Compare Source

Features

  • 800bd25 feat: add destructuredArrayIgnorePattern option in no-unused-vars (#​15649) (Nitin Kumar)
  • 8933fe7 feat: Catch undefined and Boolean() in no-constant-condition (#​15613) (Jordan Eldredge)
  • f90fd9d feat: Add ESLint favicon to the HTML report document (#​15671) (Mahdi Hosseinzadeh)
  • 57b8a57 feat: valid-typeof always ban undefined (#​15635) (Zzzen)

Bug Fixes

  • 6814922 fix: escaping for square brackets in ignore patterns (#​15666) (Milos Djermanovic)
  • c178ce7 fix: extend the autofix range in comma-dangle to ensure the last element (#​15669) (Milos Djermanovic)

Documentation

  • c481cec docs: add fast-eslint-8 to atom integrations (userguide) (#​15695) (db developer)
  • d2255db docs: Add clarification about eslint-enable (#​15680) (dosisod)
  • 8b9433c docs: add object pattern to first section of computed-property-spacing (#​15679) (Milos Djermanovic)
  • de800c3 docs: link to minimatch docs added. (#​15688) (Gaurav Tewari)
  • 8f675b1 docs: sort-imports add single named import example (#​15675) (Arye Eidelman)

Chores

v8.10.0

Compare Source

Features

  • 6e2c325 feat: Add ignoreOnInitialization option to no-shadow rule (#​14963) (Soufiane Boutahlil)
  • 115cae5 feat: --debug prints time it takes to parse a file (#​15609) (Bartek Iwańczuk)
  • 345e70d feat: Add onlyOneSimpleParam option to no-confusing-arrow rule (#​15566) (Gautam Arora)

Bug Fixes

  • cdc5802 fix: Avoid __dirname for built-in configs (#​15616) (DoZerg)
  • ee7c5d1 fix: false positive in camelcase with combined properties (#​15581) (Nitin Kumar)

Documentation

Chores

v8.9.0

Compare Source

Features

  • 68f64a9 feat: update eslint-scope to ignore "use strict" directives in ES3 (#​15595) (Milos Djermanovic)
  • db57639 feat: add es2016, es2018, es2019, and es2022 environments (#​15587) (Milos Djermanovic)
  • 2dc38aa feat: fix bug with arrow function return types in function-paren-newline (#​15541) (Milos Djermanovic)
  • 6f940c3 feat: Implement FlatRuleTester (#​15519) (Nicholas C. Zakas)

Documentation

  • 570a036 docs: add one-var example with for-loop initializer (#​15596) (Milos Djermanovic)
  • 417191d docs: Remove the $ prefix in terminal commands (#​15565) (Andreas Lewis)
  • 389ff34 docs: add missing Variable#scope property in the scope manager docs (#​15571) (Milos Djermanovic)
  • f63795d docs: no-eval replace dead link with working one (#​15568) (rasenplanscher)
  • 0383591 docs: Remove old Markdown issue template (#​15556) (Brandon Mills)
  • a8dd5a2 docs: add 'when not to use it' section in no-duplicate-case docs (#​15563) (Milos Djermanovic)
  • 1ad439e docs: add missed verb in docs (#​15550) (Jeff Mosawy)

Chores

  • 586d45c chore: Upgrade to espree@9.3.1 (#​15600) (Milos Djermanovic)
  • 623e1e2 chore: Upgrade to eslint-visitor-keys@3.3.0 (#​15599) (Milos Djermanovic)
  • 355b23d chore: fix outdated link to Code of Conduct in PR template (#​15578) (Rich Trott)
  • b10fef2 ci: use Node 16 for browser test (#​15569) (Milos Djermanovic)
  • 92f89fb chore: suggest demo link in bug report template (#​15557) (Brandon Mills)

v8.8.0

Compare Source

Features

Documentation

v8.7.0

Compare Source

Features

  • 19ad061 feat: no-restricted-imports support casing (#​15439) (gfyoung)
  • 564ecdb feat: Support arbitrary module namespace names in no-restricted-imports (#​15491) (Milos Djermanovic)
  • 968a02a feat: Support arbitrary module namespace names in no-useless-rename (#​15493) (Milos Djermanovic)
  • 0d2b9a6 feat: move eslint --init to @​eslint/create-config (#​15150) (唯然)
  • 127f524 feat: false negative with property option in id-match (#​15474) (Nitin Kumar)
  • 359b2c1 feat: Support arbitrary module namespace names in the camelcase rule (#​15490) (Milos Djermanovic)
  • 3549571 feat: Support arbitrary module namespace names in the quotes rule (#​15479) (Milos Djermanovic)
  • 5563c45 feat: Support arbitrary module namespace names in keyword-spacing (#​15481) (Milos Djermanovic)
  • fd3683f feat: Support arbitrary module namespace names in no-restricted-exports (#​15478) (Milos Djermanovic)

Bug Fixes

  • a8db9a5 fix: no-invalid-this false positive in class field initializer (#​15495) (Milos Djermanovic)
  • 02d6426 fix: Correctly consume RuleTester statics (#​15507) (Brad Zacher)
  • db15802 fix: Add property fatalErrorCount to ignored file results (#​15520) (Francesco Trotta)
  • 03ac8cf fix: Prevent false positives with no-constant-condition (#​15486) (Jordan Eldredge)

Documentation

  • f50f849 docs: Update CLI docs to prefer local install (#​15513) (Nicholas C. Zakas)
  • 0469eb1 docs: Update shell code fences for new website (#​15522) (Olga)

Chores

v8.6.0

Compare Source

Features

  • 6802a54 feat: handle logical assignment in no-self-assign (#​14152) (Zzzen)
  • 3b38018 feat: allow to define eslint-disable-next-line in multiple lines (#​15436) (Nitin Kumar)
  • 9d6fe5a feat: false negative with onlyDeclarations + properties in id-match (#​15431) (Nitin Kumar)

Documentation

Chores

  • 3a384fc chore: Upgrade espree to 9.3.0 (#​15473) (Brandon Mills)
  • 1443cc2 chore: Update blogpost.md.ejs (#​15468) (Nicholas C. Zakas)
  • 28e907a refactor: remove unused parameter in linter.js (#​15451) (Milos Djermanovic)
  • eaa08d3 test: add tests for allowReserved parser option with flat config (#​15450) (Milos Djermanovic)

v8.5.0

Compare Source

Features

Bug Fixes

  • 7d832d4 fix: improve prefer-template fixer (#​15230) (Nitin Kumar)
  • 981fb48 fix: do not report global references in id-match rule (#​15420) (Nitin Kumar)
  • f13d4a6 fix: improve autofix of prefer-object-has-own (#​15419) (Nitin Kumar)
  • f4559a0 fix: add helpful message when test case has non-string code/name (#​15425) (Bryan Mishkin)

Documentation

  • 314c84c docs: add an incorrect code example in for-direction (#​15434) (Holger Jeromin)
  • 3928175 docs: add destructuring examples for computed-property-spacing (#​15423) (Nitin Kumar)
  • a53e59e docs: add more examples for array-element-newline rule (#​15427) (Nitin Kumar)
  • 74cf0a0 docs: update CLA info (#​15370) (Nitin Kumar)
  • e84195e docs: fix heading level for an option in class-methods-use-this rule (#​15399) (Takuya Fukuju)

Chores

  • 225f211 test: add destructuring test cases for computed-property-spacing (#​15424) (Nitin Kumar)
  • f2c7ba6 ci: use node v16 for macOS and windows jobs (#​15418) (Nitin Kumar)

v8.4.1

Compare Source

Bug Fixes

  • 234e3d9 fix: revert changes to reported locations in max-lines-per-function (#​15397) (Milos Djermanovic)

Documentation

  • fa4d483 docs: fix typo in example for sort-keys rule (#​15393) (Nitin Kumar)

v8.4.0

Compare Source

Features

Bug Fixes

  • 4940cc5 fix: mark --rulesdir option as deprecated in CLI docs (#​15310) (Kevin Partington)

Documentation

  • 54deec5 docs: update integrations.md (#​15380) (Vlad Sholokhov)
  • fa0423a docs: fix typo in PR template (#​15365) (Nitin Kumar)
  • e233920 docs: enable a few more markdownlint rules and fix violations (#​15368) (Bryan Mishkin)
  • 632176d docs: Dedent needlessly indented example in getter-return docs (#​15363) (Jordan Eldredge)
  • 4497e88 docs: Update release notes blog post template (#​15285) (Nicholas C. Zakas)

Chores

v8.3.0

Compare Source

Features

  • 60b0a29 feat: add allowProperties option to require-atomic-updates (#​15238) (Milos Djermanovic)
  • 79278a1 feat: update no-use-before-define for class static blocks (#​15312) (Milos Djermanovic)
  • ddd01dc feat: update no-redeclare for class static blocks (#​15313) (Milos Djermanovic)
  • de69cec feat: update no-inner-declarations for class static blocks (#​15290) (Milos Djermanovic)
  • e2fe7ef feat: support for private-in syntax (fixes #​14811) (#​15060) (Yosuke Ota)
  • 34bc8d7 feat: Update espree and eslint-scope (#​15338) (Brandon Mills)
  • b171cd7 feat: update max-depth for class static blocks (#​15316) (Milos Djermanovic)
  • 6487df3 feat: update padded-blocks for class static blocks (#​15333) (Milos Djermanovic)
  • 194f36d feat: update the complexity rule for class static blocks (#​15328) (Milos Djermanovic)
  • 3530337 feat: update the indent rule for class static blocks (#​15324) (Milos Djermanovic)
  • f03cd14 feat: update lines-around-comment for class static blocks (#​15323) (Milos Djermanovic)
  • 5c64747 feat: update brace-style for class static blocks (#​15322) (Milos Djermanovic)
  • df2f1cc feat: update max-statements for class static blocks (#​15315) (Milos Djermanovic)
  • fd5a0b8 feat: update prefer-const for class static blocks (#​15325) (Milos Djermanovic)
  • b3669fd feat: code path analysis for class static blocks (#​15282) (Milos Djermanovic)
  • 15c1397 feat: update eslint-scope for class static blocks (#​15321) (Milos Djermanovic)
  • 1a1bb4b feat: update one-var for class static blocks (#​15317) (Milos Djermanovic)
  • 9b666e0 feat: update padding-line-between-statements for class static blocks (#​15318) (Milos Djermanovic)
  • d3a267f feat: update class-methods-use-this for class static blocks (#​15298) (Milos Djermanovic)
  • cdaa541 feat: update no-lone-blocks for class static blocks (#​15295) (Milos Djermanovic)
  • 8611538 feat: update block-spacing for class static blocks (#​15297) (Milos Djermanovic)
  • 7b56844 feat: update keyword-spacing for class static blocks (#​15289) (Milos Djermanovic)
  • ea18711 feat: update no-extra-semi for class static blocks (#​15287) (Milos Djermanovic)
  • 0f0971f feat: update semi rule for class static blocks (#​15286) (Milos Djermanovic)
  • abe740c feat: add examples for block-scoped-var with class static blocks (#​15302) (Milos Djermanovic)
  • 0338fd2 feat: Normalize ecmaVersion to eslint-scope when using custom parser (#​15268) (Yosuke Ota)

Bug Fixes

  • 8aa7645 fix: update vars-on-top for class static blocks (#​15306) (Milos Djermanovic)
  • 479a4cb fix: update semi-style for class static blocks (#​15309) (Milos Djermanovic)
  • 6d1c666 fix: update no-invalid-this and no-eval for class static blocks (#​15300) (Milos Djermanovic)

Documentation

  • 6b85426 docs: Expand --debug option description in the CLI documentation (#​15308) (darkred)
  • 3ae5258 docs: the strict rule does not apply to class static blocks (#​15314) (Milos Djermanovic)
  • 9309841 docs: Remove inconsistent colon in pull request docs (#​15303) (Jordan Eldredge)
  • da238cc docs: remove deprecation note from lines-around-comment (#​15293) (Milos Djermanovic)
  • 1055f16 docs: no-unused-expressions - class static blocks don't have directives (#​15283) (Milos Djermanovic)
  • 4c55216 docs: Add variables option to no-use-before-define (#​15276) (Mathias Rasmussen)

Chores

  • edd8d24 chore: upgrade eslint-visitor-keys for class static blocks (#​15277) (Milos Djermanovic)

v8.2.0

Compare Source

Features

  • c9fefd2 feat: report class evaluation TDZ errors in no-use-before-define (#​15134) (Milos Djermanovic)

Documentation

  • c415c04 docs: Use string rule severity in CLI examples (#​15253) (Kevin Partington)
  • 12b627d docs: fix typo in working-with-rules.md (#​15233) (Nitin Kumar)
  • a86ffc0 docs: fix broken anchor in configuration files (#​15223) (Pierre Berger)
  • ee8af5f docs: Link to unit tests from rule documentation (#​15207) (Brandon Mills)
  • 1c0ca3c docs: add ci and perf tags for commit (#​15215) (Nitin Kumar)
  • 796587a build: upgrade eslint-release to v3.2.0 to support conventional commits (#​15246) (Milos Djermanovic)

Chores

v8.1.0

Compare Source

v8.0.1

Compare Source

v8.0.0

Compare Source

nodejs/node

v19

Moved to doc/changelogs/CHANGELOG_IOJS.md#​1.6.0.

v18

Moved to doc/changelogs/CHANGELOG_IOJS.md#​3.1.0.

v17

Moved to doc/changelogs/CHANGELOG_V5.md#​5.1.0.

v16

Moved to doc/changelogs/CHANGELOG_V012.md#​0.12.14.

v15

Moved to doc/changelogs/CHANGELOG_V4.md#​4.2.4.

postcss/postcss

v8.4.18

Compare Source

  • Fixed an error on absolute: true with empty sourceContent (by Rene Haas).

v8.4.17

Compare Source

  • Fixed Node.before() unexpected behavior (by Romain Menke).
  • Added TOC to docs (by Mikhail Dedov).

v8.4.16

Compare Source

  • Fixed Root AST migration.

v8.4.15

Compare Source

  • Fixed AST normalization after using custom parser with old PostCSS AST.

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

  • Fixed an error on absolute: true with empty sourceContent (by Rene Haas).

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

postcss/postcss-import

v15.0.0

Compare Source

  • BREAKING: Require Node.js v14+ (#​497)
  • BREAKING: Require nameLayer option for handling anonymous layers (#​496)
  • Fix handling of @media queries inside layered imports (#​495, #​496)

v14.1.0

Compare Source

prettier/prettier

v2.7.1

Compare Source

diff

Keep useful empty lines in description (#​13013 by @​chimurai)

v2.7.0

Compare Source

"""
First line
Second Line
"""
type Person {
name: String
}

v2.6.2

Compare Source

diff

Fix LESS/SCSS format error (#​12536 by @​fisker)
// Input
.background-gradient(@&#8203;cut) {
    background: linear-gradient(
        to right,
        @&#8203;white 0%,
        @&#8203;white (@&#8203;cut - 0.01%),
        @&#8203;portal-background @&#8203;cut,
        @&#8203;portal-background 100%
    );
}

// Prettier 2.6.1
TypeError: Cannot read properties of undefined (reading 'endOffset')

// Prettier 2.6.2
.background-gradient(@&#8203;cut) {
  background: linear-gradient(
    to right,
    @&#8203;white 0%,
    @&#8203;white (@&#8203;cut - 0.01%),
    @&#8203;portal-background @&#8203;cut,
    @&#8203;portal-background 100%
  );
}
Update meriyah to fix several bugs (#​12567 by @​fisker, fixes in meriyah by @​3cp)

Fixes bugs when parsing following valid code:

foo(await bar());
const regex = /.*/ms;
const element = <p>{/w/.test(s)}</p>;
class A extends B {
  #privateMethod() {
    super.method();
  }
}

v2.6.1

Compare Source

diff

Ignore loglevel when printing information (#​12477 by @​fisker)

v2.6.0

Compare Source

prettier --loglevel silent --find-config-path index.js

reduxjs/react-redux

v8.0.4

Compare Source

This patch release fixes some minor TS types issues, and updates the rarely-used areStatesEqual option for connect to now pass through ownProps for additional use in determining which pieces of state to compare if desired.

Note

: 8.0.3 was accidentally published without one of these fixes. Use 8.0.4 instead.

Changelog

TS Fixes

We've fixed an import of React that caused issues with the allowSyntheticDefaultImports TS compiler flag in user projects.

connect already accepted a custom context instance as props.context, and had runtime checks in case users were passing through a real value with app data as props.context instead. However, the TS types did not handle that case, and this would fail to compile. If your own component expects props.context with actual data, connect's types now use that type instead.

The ConnectedProps<T> type had a mismatch with React's built-in React.ComponentProps<Component> type, and that should now work correctly.

Other Changes

The areStatesEqual option to connect now receives ownProps as well, in case you need to make a more specific comparison with certain sections of state.

The new signature is:

{
  areStatesEqual?: (
    nextState: State,
    prevState: State,
    nextOwnProps: TOwnProps,
    prevOwnProps: TOwnProps
  ) => boolean
}

What's Changed

Full Changelog: https://github.com/reduxjs/react-redux/compare/v8.0.2...v8.0.4

v8.0.3

Compare Source

This release was accidentally published without an intended fix - please use v8.0.4 instead

v8.0.2

Compare Source

This patch release tweaks the behavior of connect to print a one-time warning when the obsolete pure option is passed in, rather than throwing an error. This fixes crashes caused by libraries such as react-beautiful-dnd continuing to pass in that option (unnecessarily) to React-Redux v8.

What's Changed

Full Changelog: https://github.com/reduxjs/react-redux/compare/v8.0.1...v8.0.2

v8.0.1

Compare Source

This release fixes an incorrect internal import of our Subscription type, which was causing TS compilation errors in some user projects. We've also listed @types/react-dom as an optional peerDep. There are no runtime changes in this release.

What's Changed

Full Changelog: https://github.com/reduxjs/react-redux/compare/v8.0.0...v8.0.1

v8.0.0

Compare Source

This major version release updates useSelector, connect, and <Provider> for compatibility with React 18, rewrites the React-Redux codebase to TypeScript (obsoleting use of @types/react-redux), modernizes build output, and removes the deprecated connectAdvanced API and the pure option for connect.

npm i react-redux@latest

yarn add react-redux@latest

Overview, Compatibility, and Migration

Our public API is still the same ( <Provider>, connect and useSelector/useDispatch), but we've updated the internals to use the new useSyncExternalStore hook from React. React-Redux v8 is still compatible with all versions of React that have hooks (16.8+, 17.x, and 18.x; React Native 0.59+), and should just work out of the box.

In most cases, it's very likely that the only change you will need to make is bumping the package version to "react-redux": "^8.0".

If you are using the rarely-used connectAdvanced API, you will need to rewrite your code to avoid that, likely by using the hooks API instead. Similarly, the pure option for connect has been removed.

If you are using Typescript, React-Redux is now written in TS and includes its own types. You should remove any dependencies on @types/react-redux.

While not directly tied to React-Redux, note that the recently updated @types/react@18 major version has changed component definitions to remove having children as a prop by default. This causes errors if you have multiple copies of @types/react in your project. To fix this, tell your package manager to resolve @types/react to a single version. Details:

React issue #​24304: React 18 types broken since release

Additionally, please see the React post on How to Ugprade to React 18 for details on how to migrate existing apps to correctly use React 18 and take advantage of its new features.

Changelog

React 18 Compatibility

React-Redux now requires the new useSyncExternalStore API in React 18. By default, it uses the "shim" package which backfills that API in earlier React versions, so React-Redux v8 is compatible with all React versions that have hooks (16.8+, and React Native 0.59+) as its acceptable peer dependencies.

We'd especially like to thank the React team for their extensive support and cooperation during the useSyncExternalStore development effort. They specifically designed useSyncExternalStore to support the needs and use cases of React-Redux, and we used React-Redux v8 as a testbed for how useSyncExternalStore would behave and what it needed to cover. This in turn helped ensure that useSyncExternalStore would be useful and work correctly for other libraries in the ecosystem as well.

Our performance benchmarks show parity with React-Redux v7.2.5 for both connect and useSelector, so we do not anticipate any meaningful performance regressions.

useSyncExternalStore and Bundling

The useSyncExternalStore shim is imported directly in the main entry point, so it's always included in bundles even if you're using React 18. This adds roughly 600 bytes minified to your bundle size.

If you are using React 18 and would like to avoid that extra bundle cost, React-Redux now has a new /next entry point. This exports the exact same APIs, but directly imports useSyncExternalStore from React itself, and thus avoids including the shim. You can alias "react-redux": "react-redux/next" in your bundler to use that instead.

SSR and Hydration

React 18 introduces a new hydrateRoot method for hydrating the UI on the client in Server-Side Rendering usage. As part of that, the useSyncExternalStore API requires that we pass in an alternate state value other than what's in the actual Redux store, and that alternate value will be used for the entire initial hydration render to ensure the initial rehydrated UI is an exact match for what was rendered on the server. After the hydration render is complete, React will then apply any additional changes from the store state in a follow-up render.

React-Redux v8 supports this by adding a new serverState prop for <Provider>. If you're using SSR, you should pass your serialized state to <Provider> to ensure there are no hydration mismatch errors:

import { hydrateRoot } from 'react-dom/client'
import { configureStore } from '@&#8203;reduxjs/toolkit'
import { Provider } from 'react-redux'

const preloadedState = window.__PRELOADED_STATE__

const clientStore = configureStore({
  reducer: rootReducer,
  preloadedState,
})

hydrateRoot(
  document.getElementById('root'),
  <Provider store={clientStore} serverState={preloadedState}>
    <App />
  </Provider>
)
TypeScript Migration and Support

The React-Redux library source has always been written in plain JS, and the community maintained the TS typings separately as @types/react-redux.

We've (finally!) migrated the React-Redux codebase to TypeScript, using the existing typings as a starting point. This means that the @types/react-redux package is no longer needed, and you should remove that as a dependency.

Note

Please ensure that any installed copies of redux and @types/react are de-duped. You are also encouraged to update to the latest versions of Redux Toolkit (1.8.1+) or Redux (4.1.2), to ensure consistency between installed types and avoid problems from types mismatches.

We've tried to maintain the same external type signatures as much as possible. If you do see any compile problems, please file issues with any apparent TS-related problems so we can review them.

The TS migration was a great collaborative effort, with many community members contributing migrated files. Thank you to everyone who helped out!

In addition to the "pre-typed" TypedUseSelectorHook, there's now also a Connect<State = unknown> type that can be used as a "pre-typed" version of connect as well.

As part of the process, we also updated the repo to use Yarn 3, copied the typetests files from DefinitelyTyped and expanded them, and improved our CI setup to test against multiple TS versions.

Removal of the DefaultRootState type

The @types/react-redux package, which has always been maintained by the community, included a DefaultRootState interface that was intended for use with TS's "module augmentation" capability. Both connect and useSelector used this as a fallback if no state generic was provided. When we migrated React-Redux to TS, we copied over all of the types from that package as a starting point.

However, the Redux team specifically considers use of a globally augmented state type to be an anti-pattern. Instead, we direct users to extract the RootState and AppDispatch types from the store setup, and create pre-typed versions of the React-Redux hooks for use in the app.

Now that React-Redux itself is written in TS, we've opted to remove the DefaultRootState type entirely. State generics now default to unknown instead.

Technically the module augmentation approach can still be done in userland, but we discourage this practice.

Modernized Build Output

We've always targeted ES5 syntax in our published build artifacts as the lowest common denominator. Even the "ES module" artifacts with import/export keywords still were compiled to ES5 syntax otherwise.

With IE11 now effectively dead and many sites no longer supporting it, we've updated our build tooling to target a more modern syntax equivalent to ES2017, which shrinks the bundle size slightly.

If you still need to support ES5-only environments, please compile your own dependencies as needed for your target environment.

Removal of Legacy APIs

We announced in 2019 that the legacy connectAdvanced API would be removed in the next major version, as it was rarely used, added internal complexity, and was also basically irrelevant with the introduction of hooks. As promised, we've removed that API.

We've also removed the pure option for connect, which forced components to re-render regardless of whether props/state had actually changed if it was set to false. This option was needed in some cases in the early days of the React ecosystem, when components sometimes relied on external mutable data sources that could change outside of rendering. Today, no one writes components that way, the option was barely used, and React 18's useSyncExternalStore strictly requires immutable updates. So, we've removed the pure flag.

Given that both of these options were almost never used, this shouldn't meaningfully affect anyone.

Changes

Due to the TS migration effort and number of contributors, this list covers just the major changes:

v7.2.9

Compare Source

This patch release updates the rarely-used areStatesEqual option for connect to now pass through ownProps for additional use in determining which pieces of state to compare if desired.

The new signature is:

{
  areStatesEqual?: (
    nextState: State,
    prevState: State,
    nextOwnProps: TOwnProps,
    prevOwnProps: TOwnProps
  ) => boolean
}

What's Changed

Full Changelog: https://github.com/reduxjs/react-redux/compare/v7.2.8...v7.2.9

v7.2.8

Compare Source

This release fixes a bug in the 7.x branch that caused <Provider> to unsubscribe and stop updating completely when used inside of React 18's <StrictMode>. The new "strict effects" behavior double-mounts components, and the subscription needed to be set up inside of a useLayoutEffect instead of a useMemo. This was previously fixed as part of v8 development, and we've backported it.

Note: If you are now using React 18, we strongly recommend using the React-Redux v8 beta instead of v7.x!. v8 has been rewritten internally to work correctly with React 18's Concurrent Rendering capabilities. React-Redux v7 will run and generally work okay with existing code, but may have rendering issues if you start using Concurrent Rendering capabilities in your code.

Now that React 18 is out, we plan to finalize React-Redux v8 and release it live within the next couple weeks. Per an update yesterday in the "v8 roadmap" thread, React-Redux v8 will be updated in the next couple days to ensure support for React 16.8+ as part of the next beta release. We would really appreciate final feedback on using React-Redux v8 beta with React 18 before we publish the final version.

Full Changelog: https://github.com/reduxjs/react-redux/compare/v7.2.7...v7.2.8

v7.2.7

Compare Source

This release updates React-Redux v7's peer dependencies to accept React 18 as a valid version, only to avoid installation errors caused by NPM's "install all the peer deps and error if they don't match" behavior.

Note: If you are now using React 18, we strongly recommend using the React-Redux v8 beta instead of v7.x!. v8 has been rewritten internally to work correctly with React 18's Concurrent Rendering capabilities. React-Redux v7 will run and generally work okay with existing code, but may have rendering issues if you start using Concurrent Rendering capabilities in your code.

Now that React 18 is out, we plan to finalize React-Redux v8 and release it live within the next couple weeks. We would really appreciate final feedback on using React-Redux v8 beta with React 18 before we publish the final version.

Andarist/react-textarea-autosize

v8.3.4

Compare Source

Patch Changes
tailwindlabs/tailwindcss

v3.2.1

Compare Source

Fixed

v3.2.0

Compare Source

Added
  • Add new @config directive (#​9405)
  • Add new relative: true option to resolve content paths relative to the config file (#​9396)
  • Add new supports-* variant (#​9453)
  • Add new min-* and max-* variants (#​9558)
  • Add new aria-* variants (#​9557, #​9588)
  • Add new data-* variants (#​9559, #​9588)
  • Add new break-keep utility for word-break: keep-all (#​9393)
  • Add new collapse utility for visibility: collapse (#​9181)
  • Add new fill-none utility for fill: none (#​9403)
  • Add new stroke-none utility for stroke: none (#​9403)
  • Add new place-content-baseline utility for place-content: baseline (#​9498)
  • Add new place-items-baseline utility for place-items: baseline (#​9507)
  • Add new content-baseline utility for align-content: baseline (#​9507)
  • Add support for configuring default font-feature-settings for a font family (#​9039)
  • Add standalone CLI build for 32-bit Linux on ARM (node16-linux-armv7) (#​9084)
  • Add future flag to disable color opacity utility plugins (#​9088)
  • Add negative value support for outline-offset (#​9136)
  • Add support for modifiers to matchUtilities (#​9541)
  • Allow negating utilities using min/max/clamp (#​9237)
  • Implement fallback plugins when there is ambiguity between plugins when using arbitrary values (#​9376)
  • Support sort function in matchVariant (#​9423)
  • Upgrade to postcss-nested v6.0 (#​9546)
Fixed
  • Use absolute paths when resolving changed files for resilience against working directory changes (#​9032)
  • Fix ring color utility generation when using respectDefaultRingColorOpacity (#​9070)
  • Sort tags before classes when @apply-ing a selector with joined classes (#​9107)
  • Remove invalid outline-hidden utility (#​9147)
  • Honor the hidden attribute on elements in preflight (#​9174)
  • Don't stop watching atomically renamed files (#​9173, #​9215)
  • Fix duplicate utilities issue causing memory leaks (#​9208)
  • Fix fontFamily config TypeScript types (#​9214)
  • Handle variants on complex selector utilities (#​9262)
  • Fix shared config mutation issue (#​9294)
  • Fix ordering of parallel variants (#​9282)
  • Handle variants in utility selectors using :where() and :has() (#​9309)
  • Improve data type analysis for arbitrary values (#​9320)
  • Don't emit generated utilities with invalid uses of theme functions (#​9319)
  • Revert change that only listened for stdin close on TTYs (#​9331)
  • Ignore unset values (like null or undefined) when resolving the classList for intellisense (#​9385)
  • Improve type checking for formal syntax (#​9349, #​9448)
  • Fix incorrect required content key in custom plugin configs (#​9502, #​9545)
  • Fix content path detection on Windows (#​9569)
  • Ensure --content is used in the CLI when passed (#​9587)

v3.1.8

Compare Source

Fixed
  • Don’t prefix classes within reused arbitrary variants (#​8992)
  • Fix usage of alpha values inside single-named colors that are functions (#​9008)
  • Fix @apply of user utilities when negative and non-negative versions both exist (#​9027)

v3.1.7

Compare Source

Fixed
  • Don't rewrite source maps for @layer rules (#​8971)
Added
  • Added types for resolveConfig (#​8924)

v3.1.6

Compare Source

Fixed
  • Fix usage on Node 12.x (b4e637e)
  • Handle theme keys with slashes when using theme() in CSS (#​8831)

v3.1.5

Compare Source

Added
  • Support configuring a default font-weight for each font size utility (#​8763)
  • Add support for alpha values in safe list (#​8774)
Fixed
  • Improve types to support fallback values in the CSS-in-JS syntax used in plugin APIs (#​8762)
  • Support including tailwindcss and autoprefixer in postcss.config.js in standalone CLI (#​8769)
  • Fix using special-characters as prefixes (#​8772)
  • Don’t prefix classes used within arbitrary variants (#​8773)
  • Add more explicit types for the default theme (#​8780)

v3.1.4

Compare Source

Fixed
  • Provide default to <alpha-value> when using theme() (#​8652)
  • Detect arbitrary variants with quotes (#​8687)
  • Don’t add spaces around raw / that are preceded by numbers (#​8688)

v3.1.3

Compare Source

Fixed
  • Fix extraction of multi-word utilities with arbitrary values and quotes (#​8604)
  • Fix casing of import of corePluginList type definition (#​8587)
  • Ignore PostCSS nodes returned by addVariant (#​8608)
  • Fix missing spaces around arithmetic operators (#​8615)
  • Detect alpha value in CSS theme() function when using quotes (#​8625)
  • Fix "Maximum call stack size exceeded" bug (#​8636)
  • Allow functions returning parallel variants to mutate the container (#​8622)
  • Remove text opacity CSS variables from ::marker (#​8622)

v3.1.2

Compare Source

Fixed
  • Ensure \ is a valid arbitrary variant token (#​8576)
  • Enable postcss-import in the CLI by default in watch mode (#​8574, #​8580)

v3.1.1

Compare Source

Fixed
  • Fix candidate extractor regression (#​8558)
  • Split ::backdrop into separate defaults group (#​8567)
  • Fix postcss plugin type (#​8564)
  • Fix class detection in markdown code fences and slim templates (#​8569)

v3.1.0

Compare Source

Fixed
  • Types: allow for arbitrary theme values (for 3rd party plugins) (#​7926)
  • Don’t split vars with numbers in them inside arbitrary values (#​8091)
  • Require matching prefix when detecting negatives (#​8121)
  • Handle duplicate At Rules without children (#​8122)
  • Allow arbitrary values with commas in @apply (#​8125)
  • Fix intellisense for plugins with multiple @apply rules (#​8213)
  • Improve type detection for arbitrary color values (#​8201)
  • Support PostCSS config options in config file in CLI (#​8226)
  • Remove default [hidden] style in preflight (#​8248)
  • Only check selectors containing base apply candidates for circular dependencies (#​8222)
  • Rewrite default class extractor (#​8204)
  • Move important selector to the front when @apply-ing selector-modifying variants in custom utilities (#​8313)
  • Error when registering an invalid custom variant (#​8345)
  • Create tailwind.config.cjs file in ESM package when running init (#​8363)
  • Fix matchVariant that use at-rules and placeholders (#​8392)
  • Improve types of the tailwindcss/plugin (#​8400)
  • Allow returning parallel variants from addVariant or matchVariant callback functions (#​8455)
  • Try using local postcss installation first in the CLI (#​8270)
  • Allow default ring color to be a function (#​7587)
  • Don't inherit to value from parent gradients (#​8489)
  • Remove process dependency from log functions (#​8530)
  • Ensure we can use @import 'tailwindcss/...' without node_modules (#​8537)
Changed
  • Only apply hover styles when supported (future) (#​8394)
  • Respect default ring color opacity (future) (#​8448, 3f4005e)
Added
  • Support PostCSS Document nodes (#​7291)
  • Add text-start and text-end utilities (#​6656)
  • Support customizing class name when using darkMode: 'class' (#​5800)
  • Add --poll option to the CLI (#​7725)
  • Add new border-spacing utilities (#​7102)
  • Add enabled variant (#​7905)
  • Add TypeScript types for the tailwind.config.js file (#​7891)
  • Add backdrop variant (#​7924, #​8526)
  • Add grid-flow-dense utility (#​8193)
  • Add mix-blend-plus-lighter utility (#​8288)
  • Add arbitrary variants (#​8299)
  • Add experimental matchVariant API (#​8310, 34fd0fb8)
  • Add prefers-contrast media query variants (#​8410)
  • Add opacity support when referencing colors with theme function (#​8416)
  • Add postcss-import support to the CLI (#​8437)
  • Add optional variant (#​8486)
  • Add <alpha-value> placeholder support for custom colors (#​8501)

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)
Microsoft/TypeScript

v4.8.4

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.8.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.8.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.7.4

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.7.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.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:


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

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

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


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

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [@reduxjs/toolkit](https://redux-toolkit.js.org) ([source](https://github.com/reduxjs/redux-toolkit)) | dependencies | minor | [`1.6.2` -> `1.8.6`](https://renovatebot.com/diffs/npm/@reduxjs%2ftoolkit/1.6.2/1.8.6) | | [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | devDependencies | major | [`17.0.34` -> `18.0.23`](https://renovatebot.com/diffs/npm/@types%2freact/17.0.34/18.0.23) | | [@types/react-redux](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-redux) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | devDependencies | patch | [`7.1.20` -> `7.1.24`](https://renovatebot.com/diffs/npm/@types%2freact-redux/7.1.20/7.1.24) | | [AspNetCore.HealthChecks.MongoDb](https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks) | nuget | major | `5.0.1` -> `6.0.2` | | [Mediatr](https://github.com/jbogard/MediatR) | nuget | major | `9.0.0` -> `11.0.0` | | [Mediatr.Extensions.Microsoft.DependencyInjection](https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection) | nuget | major | `9.0.0` -> `11.0.0` | | [MongoDB.Driver](https://www.mongodb.com/docs/drivers/csharp/) ([source](https://github.com/mongodb/mongo-csharp-driver)) | nuget | minor | `2.13.2` -> `2.18.0` | | [MongoDB.Driver.Core](https://www.mongodb.com/docs/drivers/csharp/) ([source](https://github.com/mongodb/mongo-csharp-driver)) | nuget | minor | `2.13.2` -> `2.18.0` | | [autoprefixer](https://github.com/postcss/autoprefixer) | devDependencies | patch | [`10.4.0` -> `10.4.12`](https://renovatebot.com/diffs/npm/autoprefixer/10.4.0/10.4.12) | | [axios](https://axios-http.com) ([source](https://github.com/axios/axios)) | dependencies | major | [`0.24.0` -> `1.1.3`](https://renovatebot.com/diffs/npm/axios/0.24.0/1.1.3) | | [cssnano](https://github.com/cssnano/cssnano) | devDependencies | minor | [`5.0.10` -> `5.1.13`](https://renovatebot.com/diffs/npm/cssnano/5.0.10/5.1.13) | | [eslint](https://eslint.org) ([source](https://github.com/eslint/eslint)) | devDependencies | major | [`7.32.0` -> `8.26.0`](https://renovatebot.com/diffs/npm/eslint/7.32.0/8.26.0) | | [mcr.microsoft.com/dotnet/sdk](https://github.com/dotnet/sdk) | stage | major | `6.0` -> `7.0` | | [node](https://github.com/nodejs/node) | final | major | `14-alpine` -> `19-alpine` | | [node](https://github.com/nodejs/node) | stage | major | `14-alpine` -> `19-alpine` | | [postcss](https://postcss.org/) ([source](https://github.com/postcss/postcss)) | devDependencies | minor | [`8.3.11` -> `8.4.18`](https://renovatebot.com/diffs/npm/postcss/8.3.11/8.4.18) | | [postcss-import](https://github.com/postcss/postcss-import) | devDependencies | major | [`14.0.2` -> `15.0.0`](https://renovatebot.com/diffs/npm/postcss-import/14.0.2/15.0.0) | | [prettier](https://prettier.io) ([source](https://github.com/prettier/prettier)) | devDependencies | minor | [`2.5.1` -> `2.7.1`](https://renovatebot.com/diffs/npm/prettier/2.5.1/2.7.1) | | [react-redux](https://github.com/reduxjs/react-redux) | dependencies | major | [`7.2.6` -> `8.0.4`](https://renovatebot.com/diffs/npm/react-redux/7.2.6/8.0.4) | | [react-textarea-autosize](https://github.com/Andarist/react-textarea-autosize) | dependencies | patch | [`8.3.3` -> `8.3.4`](https://renovatebot.com/diffs/npm/react-textarea-autosize/8.3.3/8.3.4) | | [tailwindcss](https://tailwindcss.com) ([source](https://github.com/tailwindlabs/tailwindcss)) | dependencies | major | [`2.2.19` -> `3.2.1`](https://renovatebot.com/diffs/npm/tailwindcss/2.2.19/3.2.1) | | [typescript](https://www.typescriptlang.org/) ([source](https://github.com/Microsoft/TypeScript)) | devDependencies | minor | [`4.4.4` -> `4.8.4`](https://renovatebot.com/diffs/npm/typescript/4.4.4/4.8.4) | --- ### Release Notes <details> <summary>reduxjs/redux-toolkit</summary> ### [`v1.8.6`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.8.6) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.8.5...v1.8.6) This bugfix release fixes a couple of issues with RTKQ endpoint tags not invalidating correctly, and tweaks the `dispatch` type inference to handle more variations of arrays. #### What's Changed - Fix the `dispatch` type inference to correctly handle read-only middleware arrays by [@&#8203;dokmic](https://github.com/dokmic) in https://github.com/reduxjs/redux-toolkit/pull/2629 - fix(toolkit): export "ThunkMiddleware" from redux-thunk by [@&#8203;VinceOPS](https://github.com/VinceOPS) in https://github.com/reduxjs/redux-toolkit/pull/2745 - Remove previous api tags before adding new provided tags by [@&#8203;Bezmehrabi](https://github.com/Bezmehrabi) in https://github.com/reduxjs/redux-toolkit/pull/2702 - Fix invalidateTags by [@&#8203;manceau-jb](https://github.com/manceau-jb) in https://github.com/reduxjs/redux-toolkit/pull/2721 **Full Changelog**: https://github.com/reduxjs/redux-toolkit/compare/v1.8.5...v1.8.6 ### [`v1.8.5`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.8.5) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.8.4...v1.8.5) This bugfix releas fixes an issue with large `keepUnusedDataFor` values overflowing JS timers, exports the types for the Redux DevTools Extension option, and and improves behavior of URL string generation. #### Changelog ##### `keepUnusedDataFor` Timer Fix `keepUnusedDataFor` accepts a value in seconds. When there are no more active subscriptions for a piece of data, RTKQ will set a timer using `setTimeout`, and `keepUnusedDataFor * 1000` as the timer value. We've been advising users that if they want to keep data in the cache forever that they should use a very large value for `keepUnusedDataFor`, such as 10 years in seconds. However, it turns out that JS engines use a 32-bit signed int for timers, and 32-bits in milliseconds is only 24.8 days. If a timer is given a value larger than that, it triggers immediately. We've updated the internal logic to clamp the `keepUnusedDataFor` value to be between 0 and `THIRTY_TWO_BIT_MAX_TIMER_SECONDS - 1`. Note that in RTK 1.9 (coming soon), RTKQ will also accept `Infinity` as a special `keepUnusedDataFor` value to indicate cached data should never be expired. ##### Other Changes RTK inlines the TS types for the Redux DevTools Extension options to avoid an extra dependency, but the TS type for the options object wasn't exported publicly. We now export the `DevToolsEnhancerOptions` type. The logic for generating a final URL has been updated to avoid adding an extra trailing `/`. #### What's Changed - Prevent `keepUnusedDataFor` values from overflowing `setTimeout` counter by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2595 - remove typeof undefined checks where not necessary 🐃🪒 by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1726 - Update RDT options types, and export those + AnyListenerPredicate by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2596 - Ensures there is no unexpected slash in url before query params by [@&#8203;ygrishajev](https://github.com/ygrishajev) in https://github.com/reduxjs/redux-toolkit/pull/2470 **Full Changelog**: https://github.com/reduxjs/redux-toolkit/compare/v1.8.4...v1.8.5 ### [`v1.8.4`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.8.4) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.8.3...v1.8.4) This bugfix release adds exported TS types for RTKQ hooks for use in wrapping logic, adds `useDebugValue` to the hooks to improve display in the React DevTools, updates the inlined types for the Redux DevTools options, and fixes an issue in `createEntityAdapter` that could result in duplicate IDs being stored. #### Changelog ##### RTKQ Hook Result Types RTK's types heavily rely on inference to minimize the amount of type info users have to provide. However, this can also make it difficult to write functions that wrap calls to RTK APIs. Some users have asked to have types that help them write "higher-order hooks". RTK now exports types that represent "the return object for a query/mutation hook with a given value": `TypedUseQueryHookResult` and `TypedUseMutationResult`. Both require `<ResultType, QueryArg, BaseQuery>` as generics, like this: ```ts const baseQuery = fetchBaseQuery({url: "https://some.server"}); type CustomHookResult = TypedUseQueryHookResult<MyResultObject, MyArgObject, typeof baseQuery> const useMyCustomHook = (arg: MyArgObject) : CustomHookResult => { return api.useGetSomeDataQuery(arg); } ``` ##### Redux DevTools Options Fixes As of Redux DevTools 3.0, some of field names for custom DevTools options have changed to `actionsAllowlist` and `actionsDenylist`. Since we inline the types instead of having a separate dependency, we've updated our TS types to match that. No runtime behavior was changed. ##### Other Changes RTKQ hooks now use `useDebugValue` to give a better preview of the current value in the React DevTools "Component" tab. The `<ApiProvider>` component now does a better job of registering and cleaning up focus listeners. Fixed a bug with `createEntityAdapter` that could allow duplicate IDs to be added depending on update parameters. #### What's Changed - fix: prevent duplicate ids when updating id of an element with the id of an existing element by [@&#8203;samatar26](https://github.com/samatar26) in https://github.com/reduxjs/redux-toolkit/pull/2020 - ApiProvider: correctly register listeners, allow to disable listeners by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/2277 - Update devtools options TS types based on RDT 3.0 by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2480 - fix: typo in unhandled error message by [@&#8203;MichielTondeur](https://github.com/MichielTondeur) in https://github.com/reduxjs/redux-toolkit/pull/2538 - Use useDebugValue in useQuery and useMutation hooks by [@&#8203;kaankeskin](https://github.com/kaankeskin) in https://github.com/reduxjs/redux-toolkit/pull/2500 - add types for manually typing hook results in userland code by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2580 **Full Changelog**: https://github.com/reduxjs/redux-toolkit/compare/v1.8.3...v1.8.4 ### [`v1.8.3`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.8.3) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.8.2...v1.8.3) This bugfix release fixes a few minor issues and bits of behavior, including updating the React-Redux peer dep to `^8.0.2` final, stable sorting in `createEntityAdapter.updateMany` and some initial state handling in `createSlice`. #### Changelog ##### React-Redux Peer Dep We'd previously published an RTK build that accepted React-Redux v8 beta as a peer dep (for use with RTK Query). Since React-Redux v8 is out now, we've updated the peer dep to `^8.0.2`. ##### Entity Adapter Updates Previously, applying updates via `createEntityAdapter.updateMany` caused sorting order to change. Entities that had the same sorting result *should* have stayed in the same order relative to each other, but if one of those items had any updates, it would sort to the back of that group. This was due to items being removed from the lookup table and re-added, and since JS engines iterate keys in insertion order, the updated item would now end up compared later than before. We've reworked the implementation of `updateMany` to avoid that. This also ended up fixing another issue where multiple update entries targeting the same item ID would only have the first applied. #### `createSlice` Initial State `createSlice` now logs an error if `initialState` is `undefined`. This is most commonly seen when users misspell `initialState`. It also has better handling for values that can't be frozen by Immer such as primitives. ##### RTK Query Several assorted improvements, including TS types for `BaseQuery` and checking if the body can actually be safely stringified. #### What's Changed - Add Missing Else to enhanceEndpoints Function by [@&#8203;kinson](https://github.com/kinson) in https://github.com/reduxjs/redux-toolkit/pull/2386 - Check initial state is draftable before using immer to freeze it. by [@&#8203;EskiMojo14](https://github.com/EskiMojo14) in https://github.com/reduxjs/redux-toolkit/pull/2378 - Check that body isJsonifiable before stringify by [@&#8203;ShaunDychko](https://github.com/ShaunDychko) in https://github.com/reduxjs/redux-toolkit/pull/2330 - Respect BaseQuery meta types when enhancing by [@&#8203;TamasSzigeti](https://github.com/TamasSzigeti) in https://github.com/reduxjs/redux-toolkit/pull/2225 - Throw new error when initial state is undefined by [@&#8203;dannielss](https://github.com/dannielss) in https://github.com/reduxjs/redux-toolkit/pull/2461 - Rewrite `updateMany` to ensure stable sorting order by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2464 - Bump React-Redux peer dep by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/commit/3033a33c3dd2ad743f02a44603bc77174599eebc #### New Contributors **Full Changelog**: https://github.com/reduxjs/redux-toolkit/compare/v1.8.2...1.8.3 ### [`v1.8.2`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.8.2) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.8.1...v1.8.2) This bugfix release fixes a minor issue where calling `listenerMiddleware.startListening()` multiple times with the same `effect` callback reference would result in multiple entries being added. The correct behavior is that only the first entry is added, and later attempts to add the same effect callback reference just return the existing entry. #### What's Changed - Add type [@&#8203;remarks](https://github.com/remarks) for configureStore's middleware by [@&#8203;msutkowski](https://github.com/msutkowski) in https://github.com/reduxjs/redux-toolkit/pull/2252 - Fix the "map values transpilation" bug, in yet another place by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2351 **Full Changelog**: https://github.com/reduxjs/redux-toolkit/compare/v1.8.1...v1.8.2 ### [`v1.8.1`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.8.1) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.8.0...v1.8.1) This release updates RTK's peer dependencies to accept React 18 as a valid version. This should fix installation errors caused by NPM's "install all the peer deps and error if they don't match" behavior. ##### React-Redux and React 18 **Note**: If you are now using React 18, **we strongly recommend using [the React-Redux v8 beta instead of v7.x!](https://github.com/reduxjs/react-redux/releases/tag/v8.0.0-beta.3)**. v8 has been rewritten internally to work correctly with React 18's Concurrent Rendering capabilities. React-Redux v7 will run and generally work okay with existing code, but may have rendering issues if you start using Concurrent Rendering capabilities in your code. Now that React 18 is out, we plan to finalize React-Redux v8 and release it live within the next couple weeks. We would really appreciate final feedback on using React-Redux v8 beta with React 18 before we publish the final version. ### [`v1.8.0`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.8.0) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.7.2...v1.8.0) This release adds the new "listener" middleware, updates `configureStore`'s types to better handle type inference from middleware that override `dispatch` return values, and updates our TS support matrix to drop support for TS < 4.1. #### Changelog ##### New "Listener" Side Effects Middleware RTK has integrated the thunk middleware since the beginning. However, thunks are imperative functions, and do not let you run code in response to dispatched actions. That use case has typically been covered with libraries like `redux-saga` (which handles side effects with "sagas" based on generator functions), `redux-observable` (which uses RxJS observables), or custom middleware. We've added a new "listener" middleware to RTK to cover that use case. The listener middleware is created using `createListenerMiddleware()`, and lets you define "listener" entries that contain an "effect" callback with additional logic and a way to specify when that callback should run based on dispatched actions or state changes. Conceptually, you can think of this as being similar to React's `useEffect` hook, except that it runs logic in response to Redux store updates instead of component props/state updates. The listener middleware is intended to be a lightweight alternative to more widely used Redux async middleware like sagas and observables. While similar to thunks in level of complexity and concept, it can replicate some common saga usage patterns. We believe that the listener middleware can be used to replace most of the remaining use cases for sagas, but with a fraction of the bundle size and a much simpler API. Listener effect callbacks have access to `dispatch` and `getState`, similar to thunks. The listener also receives a set of async workflow functions like `take`, `condition`, `pause`, `fork`, and `unsubscribe`, which allow writing more complex async logic. Listeners can be defined statically by calling `listenerMiddleware.startListening()` during setup, or added and removed dynamically at runtime with special `dispatch(addListener())` and `dispatch(removeListener())` actions. The API reference is available at: https://redux-toolkit.js.org/api/createListenerMiddleware Huge thanks to [@&#8203;FaberVitale](https://github.com/FaberVitale) for major contributions in refining the middleware API and implementing key functionality. Basic usage of the listener middleware looks like: ```js import { configureStore, createListenerMiddleware } from '@&#8203;reduxjs/toolkit' import todosReducer, { todoAdded, todoToggled, todoDeleted, } from '../features/todos/todosSlice' // Create the middleware instance and methods const listenerMiddleware = createListenerMiddleware() // Add one or more listener entries that look for specific actions. // They may contain any sync or async logic, similar to thunks. listenerMiddleware.startListening({ actionCreator: todoAdded, effect: async (action, listenerApi) => { // Run whatever additional side-effect-y logic you want here console.log('Todo added: ', action.payload.text) // Can cancel other running instances listenerApi.cancelActiveListeners() // Run async logic const data = await fetchData() // Pause until action dispatched or state changed if (await listenerApi.condition(matchSomeAction)) { // Use the listener API methods to dispatch, get state, // unsubscribe the listener, start child tasks, and more listenerApi.dispatch(todoAdded('Buy pet food')) listenerApi.unsubscribe() } }, }) const store = configureStore({ reducer: { todos: todosReducer, }, // Add the listener middleware to the store. // NOTE: Since this can receive actions with functions inside, // it should go before the serializability check middleware middleware: (getDefaultMiddleware) => getDefaultMiddleware().prepend(listenerMiddleware.middleware), }) ``` You can use it to write more complex async workflows, including pausing the effect callback until a condition check resolves, and forking "child tasks" to do additional work: ```js // Track how many times each message was processed by the loop const receivedMessages = { a: 0, b: 0, c: 0, } const eventPollingStarted = createAction('serverPolling/started') const eventPollingStopped = createAction('serverPolling/stopped') listenerMiddleware.startListening({ actionCreator: eventPollingStarted, effect: async (action, listenerApi) => { // Only allow one instance of this listener to run at a time listenerApi.unsubscribe() // Start a child job that will infinitely loop receiving messages const pollingTask = listenerApi.fork(async (forkApi) => { try { while (true) { // Cancellation-aware pause for a new server message const serverEvent = await forkApi.pause(pollForEvent()) // Process the message. In this case, just count the times we've seen this message. if (serverEvent.type in receivedMessages) { receivedMessages[ serverEvent.type as keyof typeof receivedMessages ]++ } } } catch (err) { if (err instanceof TaskAbortError) { // could do something here to track that the task was cancelled } } }) // Wait for the "stop polling" action await listenerApi.condition(eventPollingStopped.match) pollingTask.cancel() }, }) ``` ##### `configureStore` Middleware Type Improvements Middleware can override the default return value of `dispatch`. `configureStore` tries to extract any declared `dispatch` type overrides from the `middleware` array, and uses that to alter the type of `store.dispatch`. We identified some cases where the type inference wasn't working well enough, and rewrote the type behavior to be more correct. ##### TypeScript Support Matrix Updates RTK now requires TS 4.1 or greater to work correctly, and we've dropped 4.0 and earlier from our support matrix. ##### Other Changes The internal logic for the serializability middleware has been reorganized to allow skipping checks against actions, while still checking values in the state. #### What's Changed Since most of the implementation work on the middleware was done over the last few months, this list only contains the most recent PRs since 1.7.2. For details on the original use case discussions and the evolution of the middleware API over time, see: - [RTK issue #&#8203;237: Add an action listener middleware](https://github.com/reduxjs/redux-toolkit/issues/237) - [RTK PR #&#8203;547: yet another attempt at an action listener middleware](https://github.com/reduxjs/redux-toolkit/pull/547) - [RTK discussion #&#8203;1648: New experimental "action listener middleware" package available](https://github.com/reduxjs/redux-toolkit/discussions/1648) PRs since 1.7.2: - Rewrite MiddlewareArray and gDM for better Dispatch inference by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2001 - Change listener middleware API name and signature by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2005 - feat(alm): add cancellation message to TaskAbortError, listenerApi.signal & forkApi.signal. by [@&#8203;FaberVitale](https://github.com/FaberVitale) in https://github.com/reduxjs/redux-toolkit/pull/2023 - \[fix]\[1.8.0-integration]\[alm]: missing type export by [@&#8203;FaberVitale](https://github.com/FaberVitale) in https://github.com/reduxjs/redux-toolkit/pull/2026 - \[chore]\[1.8.0-integration]\[alm]: apply alm breaking API changes to counter-example by [@&#8203;FaberVitale](https://github.com/FaberVitale) in https://github.com/reduxjs/redux-toolkit/pull/2025 - Reorganize serializable check conditions by [@&#8203;msutkowski](https://github.com/msutkowski) in https://github.com/reduxjs/redux-toolkit/pull/2000 - fix(alm): prevent zombie listeners caused by forked tasks by [@&#8203;FaberVitale](https://github.com/FaberVitale) in https://github.com/reduxjs/redux-toolkit/pull/2070 - Integrate the listener middleware into the RTK package by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2072 - fix(alm): cancel forkApi.delay and forkApi.pause if listener is cancelled or completed by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2074 - chore(alm): update counter example to 1.8.0 by [@&#8203;FaberVitale](https://github.com/FaberVitale) in https://github.com/reduxjs/redux-toolkit/pull/2076 - Enable cancelling active listeners when unsubscribing by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2078 - v1.8.0 integration by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/2024 **Full Changelog**: https://github.com/reduxjs/redux-toolkit/compare/v1.7.2...v1.8.0 ### [`v1.7.2`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.7.2) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.7.1...v1.7.2) This release fixes a TS types bug with RTK Query generated selectors, makes the RTKQ structural sharing behavior configurable, adds an option to have the serializability middleware ignore all actions, and has several minor bugfixes and enhancements to RTK Query. #### Changelog ##### RTK Query Selector TS Types Fix Several users had reported that as of 1.7.0 selectors generated via `apiSlice.endpoint.select()` were failing to compile when used, with TS errors that looked like `Type '{}' is missing the following properties from type 'CombinedState<>`. We've fixed the issue, and selectors should now compile correctly when used with TS. ##### Additional Configuration Options RTK Query implements a technique called "structural sharing" to preserve existing object references if possible when data for an endpoint is re-fetched. RTKQ recurses over both data structures, and if the contents appear to be the same, keeps the existing values. That helps avoid potential unnecessary re-renders in the UI, because otherwise the *entire* re-fetched result would be new object references. However, this update process can potentially take time depending on the size of the response. Endpoints can now be given a `structuralSharing` option that will turn that off to save on processing time: ```ts const api = createApi({ baseQuery: fetchBaseQuery({ baseUrl: "https://example.com" }), endpoints: (build) => ({ getEveryEntityInADatabase: build.query({ query: () => ({ url: "/i-cant-paginate-data" }), structuralSharing: false, }), }), }); ``` Additionally, the serializability check middleware can now be customized with an `ignoreActions` option to exempt *all* actions from being checked. This is an escape hatch and isn't recommended for most apps: ```ts const store = configureStore({ reducer: rootReducer, middleware: (getDefaultMiddleware) => getDefaultMiddleware({ serializableCheck: { ignoreActions: true, }, }), }); ``` ##### Other API Improvements If an `extraArgument` was provided to the thunk middleware during store configuration, that value is now passed along to the `prepareHeaders()` function: ```ts const store = configureStore({ reducer: rootReducer, middleware: (getDefaultMiddleware) => getDefaultMiddleware({ thunk: { extraArgument: { myCustomApiService }, }, }), }); // ..later on const api = createApi({ baseQuery: fetchBaseQuery({ baseUrl: "https://example.com", prepareHeaders: async (headers, { getState, extra }) => { const token = getState().auth.token; const somethingElse = await extra.myCustomApiService.someMethod(); // do things with somethingElse return headers; }, }), }); ``` The `invalidatesTags/providesTags` functions now receive the `action.meta` field as an argument, to help with potentially invalidating based on request/response headers. ##### Bug Fixes `refetchOnFocus` now cleans up cache entries if a focus event is received and there are no active subscriptions, to avoid unnecessary requests. Active polls are cleaned up when the last component for a given subscription unsubscribes. The types for `builder.addMatcher` have been updated to support inference of guards without a `type` property. #### What's Changed - feat(meta): Passes meta to result description functions \[[#&#8203;1904](https://github.com/reduxjs/redux-toolkit/issues/1904)] by [@&#8203;bever1337](https://github.com/bever1337) in https://github.com/reduxjs/redux-toolkit/pull/1910 - Fix `addMatcher` typings by [@&#8203;crcarrick](https://github.com/crcarrick) in https://github.com/reduxjs/redux-toolkit/pull/1895 - Pass baseQueryMeta into calculateProvidedBy by [@&#8203;msutkowski](https://github.com/msutkowski) in https://github.com/reduxjs/redux-toolkit/pull/1926 - Cleanup polls on unsubscribeQueryResult by [@&#8203;msutkowski](https://github.com/msutkowski) in https://github.com/reduxjs/redux-toolkit/pull/1933 - Add `extra` to `prepareHeaders`, update documentation + tests by [@&#8203;msutkowski](https://github.com/msutkowski) in https://github.com/reduxjs/redux-toolkit/pull/1922 - fix `reducerPath` for query definitions by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1977 - Update serialize documentation link by [@&#8203;wuweiweiwu](https://github.com/wuweiweiwu) in https://github.com/reduxjs/redux-toolkit/pull/1983 - Refetch should not happen if no active subscribers by [@&#8203;AlexanderArvidsson](https://github.com/AlexanderArvidsson) in https://github.com/reduxjs/redux-toolkit/pull/1974 - Add `ignoreActions` flag to serializable state middleware by [@&#8203;msutkowski](https://github.com/msutkowski) in https://github.com/reduxjs/redux-toolkit/pull/1984 - RTKQ: configurable `structuralSharing` on endpoints/queries/createApi by [@&#8203;msutkowski](https://github.com/msutkowski) in https://github.com/reduxjs/redux-toolkit/pull/1954 **Full Changelog**: https://github.com/reduxjs/redux-toolkit/compare/v1.7.1...v1.7.2 ### [`v1.7.1`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.7.1) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.7.0...v1.7.1) This release fixes a types issue with RTK 1.7.0 and TS 4.5, as seen in [#&#8203;1829](https://github.com/reduxjs/redux-toolkit/issues/1829) . #### What's Changed - fix types for TS 4.5 by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1834 **Full Changelog**: https://github.com/reduxjs/redux-toolkit/compare/v1.7.0...v1.7.1 ### [`v1.7.0`](https://github.com/reduxjs/redux-toolkit/releases/tag/v1.7.0) [Compare Source](https://github.com/reduxjs/redux-toolkit/compare/v1.6.2...v1.7.0) This feature release has a wide variety of API improvements: - updates RTK Query with support for SSR and rehydration - allows sharing mutation results across components - adds a new `currentData` field to query results - adds several new options for customizing endpoints and base queries - adds support for async `condition` options in `createAsyncThunk` - updates `createSlice/createReducer` to accept a "lazy state initializer" function - updates `createSlice` to avoid potential circular dependency issues by lazy-building its reducer - updates Reselect and Redux-Thunk to the latest versions with much-improved TS support and new selector customization options - Fixes a number of small code and types issues ```bash npm i @&#8203;reduxjs/toolkit@latest yarn add @&#8203;reduxjs/toolkit@latest ``` #### Changelog ##### RTK Query ##### RTK Query SSR and Rehydration Support RTK Query now has support for SSR scenarios, such as the `getStaticProps/getServerSideProps` APIs in Next.js. Queries can be executed on the server using the existing `dispatch(someEndpoint.initiate())` thunks, and then collected using the new `await Promise.all(api.getRunningOperationPromises())` method. API definitions can then provide an `extractRehydrationInfo` method that looks for a specific action type containing the fetched data, and return the data to initialize the API cache section of the store state. The related `api.util.getRunningOperationPromise()` API adds a building block that may enable future support for React Suspense as well, and we'd encourage users to experiment with this idea. ##### Sharing Mutation Results Across Components Mutation hooks provide status of in-progress requests, but as originally designed that information was unique per-component - there was no way for another component to see that request status data. But, we had several requests to enable this use case. `useMutation` hooks now support a `fixedCacheKey` option that will store the result status in a common location, so multiple components can read the request status if needed. This does mean that the data cannot easily be cleaned up automatically, so the mutation status object now includes a `reset()` function that can be used to clear that data. ##### Data Loading Updates Query results now include a `currentData` field, which contains the latest data cached from the server for the *current* query arg. Additionally, `transformResponse` now receives the query arg as a parameter. These can be used to add additional derivation logic in cases when a hooks query arg has changed to represent a different value and the existing data no longer conceptually makes sense to keep displaying. ##### Data Serialization and Base Query Improvements RTK Query originally only did shallow checks for query arg fields to determine if values had changed. This caused issues with infinite loops depending on user input. The query hooks now use a "serialized stable value" hook internally to do more consistent comparisons of query args and eliminate those problems. Also, `fetchBaseQuery` now supports a `paramsSerializer` option that allows customization of query string generation from the provided arguments, which enables better interaction with some backend APIs. The `BaseQueryApi` and `prepareheaders` args now include fields for `endpoint` name, `type` to indicate if it's a query or mutation, and `forced` to indicate a re-fetch even if there was already a cache entry. These can be used to help determine headers like `Cache-Control: no-cache`. ##### Other RTK Query Improvements API objects now have a `selectInvalidatedBy` function that accepts a root state object and an array of query tag objects, and returns a list of details on endpoints that would be invalidated. This can be used to help implement optimistic updates of paginated lists. Fixed an issue serializing a query arg of `undefined`. Related, an empty JSON body now is stored as `null` instead of `undefined`. There are now dev warnings for potential mistakes in endpoint setup, like a query function that does not return a `data` field. Lazy query trigger promises can now be unwrapped similar to mutations. Fixed a type error that led the endpoint return type to be erroneously used as a state key, which caused generated selectors to have an inferred `state: never` argument. Fixed `transformResponse` to correctly receive the `originalArgs` as its third parameter. `api.util.resetApiState` will now clear out cached values in `useQuery` hooks. The `RetryOptions` interface is now exported, which resolves a TS build error when using the hooks with TS declarations. ##### RTK Core ##### `createSlice` Lazy Reducers and Circular Dependencies For the last couple years we've specifically recommended [using a "feature folder" structure with a single "slice" file of logic per feature](https://redux.js.org/style-guide/style-guide#structure-files-as-feature-folders-with-single-file-logic), and `createSlice` makes that pattern really easy - no need to have separate folders and files for `/actions` and `/constants` any more. The one downside to the "slice file" pattern is in cases when slice A needs to import actions from slice B to respond to them, and slice B also needs to listen to slice A. This circular import then causes runtime errors, because one of the modules will not have finished initializing by the time the other executes the module body. That causes the exports to be undefined, and `createSlice` throws an error because you can't pass `undefined` to `builder.addCase()` in `extraReducers`. (Or, worse, there's no obvious error and things break later.) There are [well-known patterns for breaking circular dependencies](https://medium.com/visual-development/how-to-fix-nasty-circular-dependency-issues-once-and-for-all-in-javascript-typescript-a04c987cf0de), typically requiring extracting shared logic into a separate file. For RTK, this usually means [calling `createAction` separately, and importing those action creators into both slices](https://redux-toolkit.js.org/usage/usage-guide#exporting-and-using-slices). While this is a rarer problem, it's one that *can* happen in real usage, and it's also been a semi-frequently listed concern from users who didn't want to use RTK. We've updated `createSlice` to now lazily create its reducer function *the first time you try to call it*. That delay in instantiation should **eliminate circular dependencies as a runtime error in `createSlice`**. ##### `createAsyncThunk` Improvements The `condition` option may now be `async`, which enables scenarios like checking if an existing operation is running and resolving the promise when the other instance is done. If an `idGenerator` function is provided, it will now be given the `thunkArg` value as a parameter, which enables generating custom IDs based on the request data. The `createAsyncThunk` types were updated to correctly handle type inference when using `rejectWithValue()`. ##### Other RTK Improvements `createSlice` and `createReducer` now accept a "lazy state initializer" function as the `initialState` argument. If provided, the initializer will be called to produce a new initial state value any time the reducer is given `undefined` as its state argument. This can be useful for cases like reading from `localStorage`, as well as testing. The `isPlainObject` util has been updated to match the implementation in other Redux libs. The UMD builds of RTK Query now attach as `window.RTKQ` instead of overwriting `window.RTK`. Fixed an issue with sourcemap loading due to an incorrect filename replacement. ##### Dependency Updates We've updated our deps to the latest versions: - [**Reselect 4.1.x**](https://github.com/reduxjs/reselect/releases/tag/v4.1.0): Reselect has brand-new customization capabilities for selectors, including configuring cache sizes > 1 and the ability to run equality checks on selector results. It also now has completely rewritten TS types that do a much better job of inferring arguments and catch previously broken patterns. - [**Redux Thunk 2.4.0**](https://github.com/reduxjs/redux-thunk/releases/tag/v2.4.0): The thunk middleware also has improved types, as well as an optional "global override" import to modify the type of `Dispatch` everywhere in the app We've also lowered RTK's peer dependency on React from `^16.14` to `^16.9`, as we just need hooks to be available. ##### Other Redux Development Work The Redux team has also been working on several other updates to the Redux family of libraries. ##### React-Redux v8.0 Beta We've rewritten React-Redux to add compatibility with the upcoming React 18 release and converted its codebase to TypeScript. It still supports React 16.8+/17 via a `/compat` entry point. We'd appreciate further testing from the community so we can confirm it works as expected in real apps before final release. For details on the changes, see: - https://github.com/reduxjs/react-redux/releases/tag/v8.0.0-beta.0 ##### RTK "Action Listener Middleware" Alpha We have been working on [a new "action listener middleware"](https://github.com/reduxjs/redux-toolkit/discussions/1648) that we hope to release in an upcoming version of RTK. It's designed to let users write code that runs in response to dispatched actions and state changes, including simple callbacks and moderately complex async workflows. The current design appears capable of handling many of the use cases that previously required use of the Redux-Saga or Redux-Observable middlewares, but with a smaller bundle size and simpler API. The listener middleware is still in alpha, but we'd really appreciate more users testing it out and giving us additional feedback to help us finalize the API and make sure it covers the right use cases. ##### RTK Query CodeGen The [RTK Query OpenAPI codegen tool](https://redux-toolkit.js.org/rtk-query/usage/code-generation) has been rewritten with new options and improved output. #### What's Changed - fix "isLoading briefly flips back to `true`" [#&#8203;1519](https://github.com/reduxjs/redux-toolkit/issues/1519) by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1520 - feat(createAsyncThunk): async condition by [@&#8203;thorn0](https://github.com/thorn0) in https://github.com/reduxjs/redux-toolkit/pull/1496 - add `arg` to `transformResponse` by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1521 - add `currentData` property to hook results. by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1500 - use `useSerializedStableValue` for value comparison by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1533 - fix(useLazyQuery): added docs for preferCache option by [@&#8203;akashshyamdev](https://github.com/akashshyamdev) in https://github.com/reduxjs/redux-toolkit/pull/1541 - correctly handle console logs in tests by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1567 - add `reset` method to useMutation hook by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1476 - allow for "shared component results" using the `useMutation` hook by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1477 - 🐛 Fix bug with `useMutation` shared results by [@&#8203;Shrugsy](https://github.com/Shrugsy) in https://github.com/reduxjs/redux-toolkit/pull/1616 - pass the ThunkArg to the idGenerator function by [@&#8203;loursbourg](https://github.com/loursbourg) in https://github.com/reduxjs/redux-toolkit/pull/1600 - Support a custom paramsSerializer on fetchBaseQuery by [@&#8203;msutkowski](https://github.com/msutkowski) in https://github.com/reduxjs/redux-toolkit/pull/1594 - SSR & rehydration support, suspense foundations by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1277 - add `endpoint`, `type` and `forced` to `BaseQueryApi` and `prepareHeaders` by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1656 - split off signature without `AsyncThunkConfig` for better inference by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1644 - Update createReducer to accept a lazy state init function by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/1662 - add `selectInvalidatedBy` by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1665 - Update Yarn from 2.4 to 3.1 by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/1688 - allow for circular references by building reducer lazily on first reducer call by [@&#8203;phryneas](https://github.com/phryneas) in https://github.com/reduxjs/redux-toolkit/pull/1686 - Update deps for 1.7 by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/redux-toolkit/pull/1692 - fetchBaseQuery: return nullon empty body for JSON. Add DevWarnings by [@&#8203;phryneas](https://github.com/phryneas) in [#&#8203;1699](https://github.com/reduxjs/redux-toolkit/issues/1699) - Add unwrap to QueryActionCreatorResult and update LazyQueryTrigger by [@&#8203;msutkowski](https://github.com/msutkowski) in [#&#8203;1701](https://github.com/reduxjs/redux-toolkit/issues/1701) - Only set originalArgs if they're not undefined by [@&#8203;phryneas](https://github.com/phryneas) in [#&#8203;1711](https://github.com/reduxjs/redux-toolkit/issues/1711) - Treat null as a valid plain object prototype in isPlainObject() in order to sync the util across reduxjs/\* repositories by [@&#8203;Ilyklem](https://github.com/Ilyklem) in [#&#8203;1734](https://github.com/reduxjs/redux-toolkit/issues/1734) - export RetryOptions interface from retry.ts by [@&#8203;colemars](https://github.com/colemars) in [#&#8203;1751](https://github.com/reduxjs/redux-toolkit/issues/1751) - fix: api.util.resetApiState should reset useQuery hooks by [@&#8203;phryneas](https://github.com/phryneas) in [#&#8203;1735](https://github.com/reduxjs/redux-toolkit/issues/1735) - fix issue where the global RTK object got overwritten in the UMD files by [@&#8203;Antignote](https://github.com/Antignote) in https://github.com/reduxjs/redux-toolkit/pull/1763 - Update dependencies and selector types by [@&#8203;markerikson](https://github.com/markerikson) in [#&#8203;1772](https://github.com/reduxjs/redux-toolkit/issues/1772) - Fix broken sourcemap output due to bad filename replacement by [@&#8203;markerikson](https://github.com/markerikson) in [#&#8203;1773](https://github.com/reduxjs/redux-toolkit/issues/1773) - Override unwrap behavior for buildInitiateQuery, update tests by [@&#8203;msutkowski](https://github.com/msutkowski) in [#&#8203;1786](https://github.com/reduxjs/redux-toolkit/issues/1786) - Fix incorrect RTKQ endpoint definition types for correct selector typings by [@&#8203;markerikson](https://github.com/markerikson) in [#&#8203;1818](https://github.com/reduxjs/redux-toolkit/issues/1818) - Use originalArgs in transformResponse by [@&#8203;msutkowski](https://github.com/msutkowski) in [#&#8203;1819](https://github.com/reduxjs/redux-toolkit/issues/1819) **Full Changelog**: https://github.com/reduxjs/redux-toolkit/compare/v1.6.2...v1.7.0 </details> <details> <summary>jbogard/MediatR</summary> ### [`v11.0.0`](https://github.com/jbogard/MediatR/releases/tag/v11.0.0) #### What's Changed - Small grammatical change by [@&#8203;NRKirby](https://github.com/NRKirby) in https://github.com/jbogard/MediatR/pull/740 - Fix "The Castle Windsor Implementation doesn't work with exception handlers [#&#8203;741](https://github.com/jbogard/MediatR/issues/741)" issue by [@&#8203;alexandruchirita4192](https://github.com/alexandruchirita4192) in https://github.com/jbogard/MediatR/pull/742 - Improve Test Code Coverage by [@&#8203;rafaelsc](https://github.com/rafaelsc) in https://github.com/jbogard/MediatR/pull/748 - MediatR.Examples.Windsor fix bug created by me before by [@&#8203;alexandruchirita4192](https://github.com/alexandruchirita4192) in https://github.com/jbogard/MediatR/pull/744 - Fixed documentation comment of RequestExceptionActionProcessorBehavior by [@&#8203;mjalil](https://github.com/mjalil) in https://github.com/jbogard/MediatR/pull/739 - Each matching exception handler/action is invoked at most once by [@&#8203;FDUdannychen](https://github.com/FDUdannychen) in https://github.com/jbogard/MediatR/pull/767 - Switching to ubuntu by [@&#8203;jbogard](https://github.com/jbogard) in https://github.com/jbogard/MediatR/pull/712 - CA1068: CancellationToken parameters must come last by [@&#8203;panosru](https://github.com/panosru) in https://github.com/jbogard/MediatR/pull/772 #### New Contributors - [@&#8203;NRKirby](https://github.com/NRKirby) made their first contribution in https://github.com/jbogard/MediatR/pull/740 - [@&#8203;alexandruchirita4192](https://github.com/alexandruchirita4192) made their first contribution in https://github.com/jbogard/MediatR/pull/742 - [@&#8203;rafaelsc](https://github.com/rafaelsc) made their first contribution in https://github.com/jbogard/MediatR/pull/748 - [@&#8203;mjalil](https://github.com/mjalil) made their first contribution in https://github.com/jbogard/MediatR/pull/739 - [@&#8203;FDUdannychen](https://github.com/FDUdannychen) made their first contribution in https://github.com/jbogard/MediatR/pull/767 - [@&#8203;panosru](https://github.com/panosru) made their first contribution in https://github.com/jbogard/MediatR/pull/772 **Full Changelog**: https://github.com/jbogard/MediatR/compare/v10.0.1...v11.0.0 **Migration Guide**: https://github.com/jbogard/MediatR/wiki/Migration-Guide-10.x-to-11.0 ### [`v10.0.1`](https://github.com/jbogard/MediatR/releases/tag/v10.0.1) This is a patch release to support the latest Contracts package, which changed its targets to `netstandard2.0` and `net461`. Although MediatR supports only `netstandard2.1` and above, it should not force the consumers of the contracts as such. ### [`v10.0.0`](https://github.com/jbogard/MediatR/releases/tag/v10.0.0) This release adds support for `IAsyncEnumerable<T>`. A new request type, `IStreamRequest<T>` represents a request to create a stream, with a new handler type `IStreamRequestHandler<TRequest, TResponse>` to handle. An example: ```csharp public class StreamPing : IStreamRequest<Pong> { public string? Message { get; init; } } public class PingStreamHandler : IStreamRequestHandler<StreamPing, Pong> { public async IAsyncEnumerable<Pong> Handle(StreamPing request, [EnumeratorCancellation] CancellationToken cancellationToken) { yield return await Task.Run(() => new Pong { Message = request.Message + " Pang" }, cancellationToken); } } ``` Where the work inside of the handler would likely be calling some other streaming API, such as gRPC, EF Core streaming support, Dapper streaming etc. There are also separate behaviors, with `IStreamPipelineBehavior` that are separate from the normal `IPipelineBehavior`. With the addition of `IAsyncEnumerable`, this release now targets `netstandard2.1` exclusively. There are some breaking API changes, called out in the [10.0 migration guide](https://github.com/jbogard/MediatR/wiki/Migration-Guide-9.x-to-10.0). </details> <details> <summary>jbogard/MediatR.Extensions.Microsoft.DependencyInjection</summary> ### [`v11.0.0`](https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection/releases/tag/v11.0.0) #### What's Changed - docs: Update README with lifetimes of IPublisher and ISender by [@&#8203;christianfosli](https://github.com/christianfosli) in https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection/pull/120 #### New Contributors - [@&#8203;christianfosli](https://github.com/christianfosli) made their first contribution in https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection/pull/120 **Full Changelog**: https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection/compare/v10.0.1...v11.0.0 ### [`v10.0.0`](https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection/releases/tag/v10.0.0) In addition to targeting MediatR 10.0.0, this release adds a few new features: - Allow changing order of request exception behaviors ([#&#8203;81](https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection/issues/81)) - Not registering open generics where arity does not match ([#&#8203;109](https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection/issues/109)) - Pass a function to evaluate types for binding as an additional filter ([#&#8203;107](https://github.com/jbogard/MediatR.Extensions.Microsoft.DependencyInjection/issues/107)) - Updating to 6.0 of Microsoft.Extensions.DependencyInjection to support constrained generics - Targeting only `netstandard2.1` </details> <details> <summary>mongodb/mongo-csharp-driver</summary> ### [`v2.18.0`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.18.0) ##### .NET Driver Version 2.18.0 Release Notes This is the general availability release for the 2.18.0 version of the driver. The main new features in 2.18.0 include: - Snappy compression now uses a managed implementation - ZStandard compression now uses a managed implementation - Cache AWS credentials when possible - New cross driver standard logging support - Support for $documents aggregation pipeline stage An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.18.0.md The full list of JIRA issues resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.18.0%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: https://mongodb.github.io/mongo-csharp-driver/ ### [`v2.17.1`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.17.1) ### .NET Driver Version 2.17.1 Release Notes This is a patch release that fixes a potential data corruption bug in `RewrapManyDataKey` when rotating encrypted data encryption keys backed by GCP or Azure key services. The following conditions will trigger this bug: - A GCP-backed or Azure-backed data encryption key being rewrapped requires fetching an access token for decryption of the data encryption key. The result of this bug is that the key material for all data encryption keys being rewrapped is replaced by new randomly generated material, destroying the original key material. To mitigate potential data corruption, upgrade to this version or higher before using `RewrapManyDataKey` to rotate Azure-backed or GCP-backed data encryption keys. A backup of the key vault collection should **always** be taken before key rotation. An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.17.1.md The list of JIRA tickets resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.17.1%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: http://mongodb.github.io/mongo-csharp-driver/ #### Upgrading There are no known backwards breaking changes in this release. ### [`v2.17.0`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.17.0) ### .NET Driver Version 2.17.0 Release Notes This is the general availability release for the 2.17.0 version of the driver. The main new features in 2.17.0 include: - Support for MongoDB server version 6.0.0 GA - \[BETA] Support for Queryable Encryption - LINQ3 bug fixes and improvements - Add arbitrary aggregation stages to LINQ queries using `IMongoQueryable.AppendStage()` method (LINQ3) - Support for `$topN` and related accumulators in `$group` aggregation stage ##### EstimatedDocumentCount and Stable API `EstimatedDocumentCount` is implemented using the `count` server command. Due to an oversight in versions 5.0.0-5.0.8 of MongoDB, the `count` command, which `EstimatedDocumentCount` uses in its implementation, was not included in v1 of the Stable API. If you are using the Stable API with `EstimatedDocumentCount`, you must upgrade to server version 5.0.9+ or set `strict: false` when configuring `ServerApi` to avoid encountering errors. For more information about the Stable API see: https://mongodb.github.io/mongo-csharp-driver/2.16/reference/driver/stable_api/ An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.17.0.md The full list of JIRA issues resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.17.0%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: https://mongodb.github.io/mongo-csharp-driver/ ### [`v2.16.1`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.16.1) ##### .NET Driver Version 2.16.1 Release Notes This is a patch release that addresses some issues reported since 2.16.0 was released. An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.16.1.md The list of JIRA tickets resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.16.1%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: http://mongodb.github.io/mongo-csharp-driver/ ##### Upgrading There are no known backwards breaking changes in this release. ### [`v2.16.0`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.16.0) This is the general availability release for the 2.16.0 version of the driver. The main new features in 2.16.0 include: Support for MongoDB server version 6.0.0 [BETA] Support for Queryable Encryption Support for creating collections with clustered indexes Use count command for estimatedDocumentCount LINQ3 bug fixes and improvements Support for carry forward ($locf) and numerical/date densification ($densify) Support for limit in $filter expressions Support point-in-time pre-/post-images in change streams Preemptively cancel in-progress operations when SDAM heartbeats timeout EstimatedDocumentCount and Stable API EstimatedDocumentCount is implemented using the count server command. Due to an oversight in versions 5.0.0-5.0.8 of MongoDB, the count command, which EstimatedDocumentCount uses in its implementation, was not included in v1 of the Stable API. If you are using the Stable API with EstimatedDocumentCount, you must upgrade to server version 5.0.9+ or set strict: false when configuring ServerApi to avoid encountering errors. For more information about the Stable API see: https://mongodb.github.io/mongo-csharp-driver/2.16/reference/driver/stable_api/ An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.16.0.md The full list of JIRA issues resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.16.0%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: https://mongodb.github.io/mongo-csharp-driver/ ### [`v2.15.1`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.15.1) This is a patch release that addresses some issues reported since 2.15.0 was released. An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.15.1.md The list of JIRA tickets resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.15.1%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: http://mongodb.github.io/mongo-csharp-driver/ Upgrading There are no known backwards breaking changes in this release. ### [`v2.15.0`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.15.0) This is the general availability release for the 2.15.0 version of the driver. The main new features in 2.15.0 include: - Reimplement CMAP Maintance and SDAM threads to use dedicated threads - Support for Window Functions using $setWindowFields - Support $merge and $out executing on secondaries - Publish symbols to NuGet.org Symbol Server and add Source Link support for improved debugging experience - Switch to using maxWireVersion rather than buildInfo to determine feature support - Support 'let' option for multiple CRUD commands - Support authorizedCollections option for listCollections helpers - Add support for 'comment' field in multiple commands for profiling - Upgrade DnsClient.NET up to 1.6.0. This should address problems that some users have had in containerized environments like Kubernetes. An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.15.0.md The full list of JIRA issues resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.15.0%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: https://mongodb.github.io/mongo-csharp-driver/ ### [`v2.14.1`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.14.1) ### .NET Driver Version 2.14.1 Release Notes This is a patch release that addresses some issues reported since 2.14.0 was released. An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.14.1.md The list of JIRA tickets resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.14.1%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: http://mongodb.github.io/mongo-csharp-driver/ #### Upgrading There are no known backwards breaking changes in this release. ### [`v2.14.0`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.14.0) ### .NET Driver Version 2.14.0 Release Notes This is the general availability release for the 2.14.0 version of the driver. The main new features in 2.14.0 include: - Added a new improved LINQ provider (known as LINQ3, see: \[LINQ3]\({{< relref "reference\driver\crud\linq3.md" >}})), which is available on an opt-in basis - The current LINQ provider (known as LINQ2) continues to be available and is still the default LINQ provider for this version - Support for Zstandard and Snappy on Linux and MacOS - Added connection storm avoidance features - Added KMIP support for client-side field level encryption (CSFLE) - Added `srvMaxHosts` URI option to limit the number of `mongos` nodes used in connecting to sharded clusters - Use "hello" command for monitoring if supported - Removed support for .NET Framework 4.5.2; minimum is now 4.7.2 - Removed support for .NET Standard 1.5; minimum is now 2.0 - Minimum server version is now MongoDB 3.6+ An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.14.0.md The full list of JIRA issues resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.14.0%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: http://mongodb.github.io/mongo-csharp-driver/ ### [`v2.13.3`](https://github.com/mongodb/mongo-csharp-driver/releases/tag/v2.13.3) ### .NET Driver Version 2.13.3 Release Notes This is a patch release that addresses some issues reported since 2.13.2 was released. An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.13.3.md The list of JIRA tickets resolved in this release is available at: https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.13.3%20ORDER%20BY%20key%20ASC Documentation on the .NET driver can be found at: http://mongodb.github.io/mongo-csharp-driver/ #### Upgrading There are no known backwards breaking changes in this release. </details> <details> <summary>postcss/autoprefixer</summary> ### [`v10.4.12`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;10412) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.11...10.4.12) - Fixed support of unit-less zero angle in backgrounds (by 一丝). ### [`v10.4.11`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;10411) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.10...10.4.11) - Fixed `text-decoration` prefixes by moving to MDN data (by Romain Menke). ### [`v10.4.10`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;10410) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.9...10.4.10) - Fixed `unicode-bidi` prefixes by moving to MDN data. ### [`v10.4.9`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;1049) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.8...10.4.9) - Fixed `css-unicode-bidi` issue from latest Can I Use. ### [`v10.4.8`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;1048) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.7...10.4.8) - Do not print `color-adjust` warning if `print-color-adjust` also is in rule. ### [`v10.4.7`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;1047) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.6...10.4.7) - Fixed `print-color-adjust` support in Firefox. ### [`v10.4.6`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;1046) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.5...10.4.6) - Fixed `print-color-adjust` support. ### [`v10.4.5`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;1045) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.4...10.4.5) - Fixed `NaN` in grid (by [@&#8203;SukkaW](https://github.com/SukkaW)). ### [`v10.4.4`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;1044) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.3...10.4.4) - Fixed `package.funding` to have same value between all PostCSS packages. ### [`v10.4.3`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;1043) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.2...10.4.3) - Fixed `package.funding` (by Álvaro Mondéjar). ### [`v10.4.2`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;1042) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.1...10.4.2) - Fixed missed `-webkit-` prefix for `width: stretch`. ### [`v10.4.1`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#&#8203;10412) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.0...10.4.1) - Fixed support of unit-less zero angle in backgrounds (by 一丝). </details> <details> <summary>axios/axios</summary> ### [`v1.1.3`](https://github.com/axios/axios/blob/HEAD/CHANGELOG.md#&#8203;113---2022-10-15) [Compare Source](https://github.com/axios/axios/compare/v1.1.2...v1.1.3) ##### Added Added custom params serializer support [#&#8203;5113](https://github.com/axios/axios/pull/5113) ##### Fixed Fixed top-level export to keep them in-line with static properties [#&#8203;5109](https://github.com/axios/axios/pull/5109) Stopped including null values to query string. [#&#8203;5108](https://github.com/axios/axios/pull/5108) Restored proxy config backwards compatibility with 0.x [#&#8203;5097](https://github.com/axios/axios/pull/5097) Added back AxiosHeaders in AxiosHeaderValue [#&#8203;5103](https://github.com/axios/axios/pull/5103) Pin CDN install instructions to a specific version [#&#8203;5060](https://github.com/axios/axios/pull/5060) Handling of array values fixed for AxiosHeaders [#&#8203;5085](https://github.com/axios/axios/pull/5085) ##### Chores docs: match badge style, add link to them [#&#8203;5046](https://github.com/axios/axios/pull/5046) chore: fixing comments typo [#&#8203;5054](https://github.com/axios/axios/pull/5054) chore: update issue template [#&#8203;5061](https://github.com/axios/axios/pull/5061) chore: added progress capturing section to the docs; [#&#8203;5084](https://github.com/axios/axios/pull/5084) ##### Contributors to this release - [Jason Saayman](https://github.com/jasonsaayman) - [scarf](https://github.com/scarf005) - [Lenz Weber-Tronic](https://github.com/phryneas) - [Arvindh](https://github.com/itsarvindh) - [Félix Legrelle](https://github.com/FelixLgr) - [Patrick Petrovic](https://github.com/ppati000) - [Dmitriy Mozgovoy](https://github.com/DigitalBrainJS) - [littledian](https://github.com/littledian) - [ChronosMasterOfAllTime](https://github.com/ChronosMasterOfAllTime) - [Salman Shaikh](https://github.com/salmannotkhan) ### [`v1.1.2`](https://github.com/axios/axios/blob/HEAD/CHANGELOG.md#&#8203;112---2022-10-07) [Compare Source](https://github.com/axios/axios/compare/v1.1.1...v1.1.2) ##### Fixed - Fixed broken exports for UMD builds. ##### Contributors to this release - [Jason Saayman](https://github.com/jasonsaayman) ### [`v1.1.1`](https://github.com/axios/axios/blob/HEAD/CHANGELOG.md#&#8203;111---2022-10-07) [Compare Source](https://github.com/axios/axios/compare/v1.1.0...v1.1.1) ##### Fixed - Fixed broken exports for common js. This fix breaks a prior fix, I will fix both issues ASAP but the commonJS use is more impactful. ##### Contributors to this release - [Jason Saayman](https://github.com/jasonsaayman) ### [`v1.1.0`](https://github.com/axios/axios/blob/HEAD/CHANGELOG.md#&#8203;110---2022-10-06) [Compare Source](https://github.com/axios/axios/compare/v1.0.0...v1.1.0) ##### Fixed - Fixed missing exports in type definition index.d.ts [#&#8203;5003](https://github.com/axios/axios/pull/5003) - Fixed query params composing [#&#8203;5018](https://github.com/axios/axios/pull/5018) - Fixed GenericAbortSignal interface by making it more generic [#&#8203;5021](https://github.com/axios/axios/pull/5021) - Fixed adding "clear" to AxiosInterceptorManager [#&#8203;5010](https://github.com/axios/axios/pull/5010) - Fixed commonjs & umd exports [#&#8203;5030](https://github.com/axios/axios/pull/5030) - Fixed inability to access response headers when using axios 1.x with Jest [#&#8203;5036](https://github.com/axios/axios/pull/5036) ##### Contributors to this release - [Trim21](https://github.com/trim21) - [Dmitriy Mozgovoy](https://github.com/DigitalBrainJS) - [shingo.sasaki](https://github.com/s-sasaki-0529) - [Ivan Pepelko](https://github.com/ivanpepelko) - [Richard Kořínek](https://github.com/risa) ### [`v1.0.0`](https://github.com/axios/axios/blob/HEAD/CHANGELOG.md#&#8203;100---2022-10-04) [Compare Source](https://github.com/axios/axios/compare/v0.27.2...v1.0.0) ##### Added - Added stack trace to AxiosError [#&#8203;4624](https://github.com/axios/axios/pull/4624) - Add AxiosError to AxiosStatic [#&#8203;4654](https://github.com/axios/axios/pull/4654) - Replaced Rollup as our build runner [#&#8203;4596](https://github.com/axios/axios/pull/4596) - Added generic TS types for the exposed toFormData helper [#&#8203;4668](https://github.com/axios/axios/pull/4668) - Added listen callback function [#&#8203;4096](https://github.com/axios/axios/pull/4096) - Added instructions for installing using PNPM [#&#8203;4207](https://github.com/axios/axios/pull/4207) - Added generic AxiosAbortSignal TS interface to avoid importing AbortController polyfill [#&#8203;4229](https://github.com/axios/axios/pull/4229) - Added axios-url-template in ECOSYSTEM.md [#&#8203;4238](https://github.com/axios/axios/pull/4238) - Added a clear() function to the request and response interceptors object so a user can ensure that all interceptors have been removed from an axios instance [#&#8203;4248](https://github.com/axios/axios/pull/4248) - Added react hook plugin [#&#8203;4319](https://github.com/axios/axios/pull/4319) - Adding HTTP status code for transformResponse [#&#8203;4580](https://github.com/axios/axios/pull/4580) - Added blob to the list of protocols supported by the browser [#&#8203;4678](https://github.com/axios/axios/pull/4678) - Resolving proxy from env on redirect [#&#8203;4436](https://github.com/axios/axios/pull/4436) - Added enhanced toFormData implementation with additional options [4704](https://github.com/axios/axios/pull/4704) - Adding Canceler parameters config and request [#&#8203;4711](https://github.com/axios/axios/pull/4711) - Added automatic payload serialization to application/x-www-form-urlencoded [#&#8203;4714](https://github.com/axios/axios/pull/4714) - Added the ability for webpack users to overwrite built-ins [#&#8203;4715](https://github.com/axios/axios/pull/4715) - Added string\[] to AxiosRequestHeaders type [#&#8203;4322](https://github.com/axios/axios/pull/4322) - Added the ability for the url-encoded-form serializer to respect the formSerializer config [#&#8203;4721](https://github.com/axios/axios/pull/4721) - Added isCancel type assert [#&#8203;4293](https://github.com/axios/axios/pull/4293) - Added data URL support for node.js [#&#8203;4725](https://github.com/axios/axios/pull/4725) - Adding types for progress event callbacks [#&#8203;4675](https://github.com/axios/axios/pull/4675) - URL params serializer [#&#8203;4734](https://github.com/axios/axios/pull/4734) - Added axios.formToJSON method [#&#8203;4735](https://github.com/axios/axios/pull/4735) - Bower platform add data protocol [#&#8203;4804](https://github.com/axios/axios/pull/4804) - Use WHATWG URL API instead of url.parse() [#&#8203;4852](https://github.com/axios/axios/pull/4852) - Add ENUM containing Http Status Codes to typings [#&#8203;4903](https://github.com/axios/axios/pull/4903) - Improve typing of timeout in index.d.ts [#&#8203;4934](https://github.com/axios/axios/pull/4934) ##### Changed - Updated AxiosError.config to be optional in the type definition [#&#8203;4665](https://github.com/axios/axios/pull/4665) - Updated README emphasizing the URLSearchParam built-in interface over other solutions [#&#8203;4590](https://github.com/axios/axios/pull/4590) - Include request and config when creating a CanceledError instance [#&#8203;4659](https://github.com/axios/axios/pull/4659) - Changed func-names eslint rule to as-needed [#&#8203;4492](https://github.com/axios/axios/pull/4492) - Replacing deprecated substr() with slice() as substr() is deprecated [#&#8203;4468](https://github.com/axios/axios/pull/4468) - Updating HTTP links in README.md to use HTTPS [#&#8203;4387](https://github.com/axios/axios/pull/4387) - Updated to a better trim() polyfill [#&#8203;4072](https://github.com/axios/axios/pull/4072) - Updated types to allow specifying partial default headers on instance create [#&#8203;4185](https://github.com/axios/axios/pull/4185) - Expanded isAxiosError types [#&#8203;4344](https://github.com/axios/axios/pull/4344) - Updated type definition for axios instance methods [#&#8203;4224](https://github.com/axios/axios/pull/4224) - Updated eslint config [#&#8203;4722](https://github.com/axios/axios/pull/4722) - Updated Docs [#&#8203;4742](https://github.com/axios/axios/pull/4742) - Refactored Axios to use ES2017 [#&#8203;4787](https://github.com/axios/axios/pull/4787) ##### Deprecated - There are multiple deprecations, refactors and fixes provided in this release. Please read through the full release notes to see how this may impact your project and use case. ##### Removed - Removed incorrect argument for NetworkError constructor [#&#8203;4656](https://github.com/axios/axios/pull/4656) - Removed Webpack [#&#8203;4596](https://github.com/axios/axios/pull/4596) - Removed function that transform arguments to array [#&#8203;4544](https://github.com/axios/axios/pull/4544) ##### Fixed - Fixed grammar in README [#&#8203;4649](https://github.com/axios/axios/pull/4649) - Fixed code error in README [#&#8203;4599](https://github.com/axios/axios/pull/4599) - Optimized the code that checks cancellation [#&#8203;4587](https://github.com/axios/axios/pull/4587) - Fix url pointing to defaults.js in README [#&#8203;4532](https://github.com/axios/axios/pull/4532) - Use type alias instead of interface for AxiosPromise [#&#8203;4505](https://github.com/axios/axios/pull/4505) - Fix some word spelling and lint style in code comments [#&#8203;4500](https://github.com/axios/axios/pull/4500) - Edited readme with 3 updated browser icons of Chrome, FireFox and Safari [#&#8203;4414](https://github.com/axios/axios/pull/4414) - Bump follow-redirects from 1.14.9 to 1.15.0 [#&#8203;4673](https://github.com/axios/axios/pull/4673) - Fixing http tests to avoid hanging when assertions fail [#&#8203;4435](https://github.com/axios/axios/pull/4435) - Fix TS definition for AxiosRequestTransformer [#&#8203;4201](https://github.com/axios/axios/pull/4201) - Fix grammatical issues in README [#&#8203;4232](https://github.com/axios/axios/pull/4232) - Fixing instance.defaults.headers type [#&#8203;4557](https://github.com/axios/axios/pull/4557) - Fixed race condition on immediate requests cancellation [#&#8203;4261](https://github.com/axios/axios/pull/4261) - Fixing Z_BUF_ERROR when no content [#&#8203;4701](https://github.com/axios/axios/pull/4701) - Fixing proxy beforeRedirect regression [#&#8203;4708](https://github.com/axios/axios/pull/4708) - Fixed AxiosError status code type [#&#8203;4717](https://github.com/axios/axios/pull/4717) - Fixed AxiosError stack capturing [#&#8203;4718](https://github.com/axios/axios/pull/4718) - Fixing AxiosRequestHeaders typings [#&#8203;4334](https://github.com/axios/axios/pull/4334) - Fixed max body length defaults [#&#8203;4731](https://github.com/axios/axios/pull/4731) - Fixed toFormData Blob issue on node>v17 [#&#8203;4728](https://github.com/axios/axios/pull/4728) - Bump grunt from 1.5.2 to 1.5.3 [#&#8203;4743](https://github.com/axios/axios/pull/4743) - Fixing content-type header repeated [#&#8203;4745](https://github.com/axios/axios/pull/4745) - Fixed timeout error message for http [4738](https://github.com/axios/axios/pull/4738) - Request ignores false, 0 and empty string as body values [#&#8203;4785](https://github.com/axios/axios/pull/4785) - Added back missing minified builds [#&#8203;4805](https://github.com/axios/axios/pull/4805) - Fixed a type error [#&#8203;4815](https://github.com/axios/axios/pull/4815) - Fixed a regression bug with unsubscribing from cancel token; [#&#8203;4819](https://github.com/axios/axios/pull/4819) - Remove repeated compression algorithm [#&#8203;4820](https://github.com/axios/axios/pull/4820) - The error of calling extend to pass parameters [#&#8203;4857](https://github.com/axios/axios/pull/4857) - SerializerOptions.indexes allows boolean | null | undefined [#&#8203;4862](https://github.com/axios/axios/pull/4862) - Require interceptors to return values [#&#8203;4874](https://github.com/axios/axios/pull/4874) - Removed unused imports [#&#8203;4949](https://github.com/axios/axios/pull/4949) - Allow null indexes on formSerializer and paramsSerializer [#&#8203;4960](https://github.com/axios/axios/pull/4960) ##### Chores - Set permissions for GitHub actions [#&#8203;4765](https://github.com/axios/axios/pull/4765) - Included githubactions in the dependabot config [#&#8203;4770](https://github.com/axios/axios/pull/4770) - Included dependency review [#&#8203;4771](https://github.com/axios/axios/pull/4771) - Update security.md [#&#8203;4784](https://github.com/axios/axios/pull/4784) - Remove unnecessary spaces [#&#8203;4854](https://github.com/axios/axios/pull/4854) - Simplify the import path of AxiosError [#&#8203;4875](https://github.com/axios/axios/pull/4875) - Fix Gitpod dead link [#&#8203;4941](https://github.com/axios/axios/pull/4941) - Enable syntax highlighting for a code block [#&#8203;4970](https://github.com/axios/axios/pull/4970) - Using Logo Axios in Readme.md [#&#8203;4993](https://github.com/axios/axios/pull/4993) - Fix markup for note in README [#&#8203;4825](https://github.com/axios/axios/pull/4825) - Fix typo and formatting, add colons [#&#8203;4853](https://github.com/axios/axios/pull/4853) - Fix typo in readme [#&#8203;4942](https://github.com/axios/axios/pull/4942) ##### Security - Update SECURITY.md [#&#8203;4687](https://github.com/axios/axios/pull/4687) ##### Contributors to this release - [Bertrand Marron](https://github.com/tusbar) - [Dmitriy Mozgovoy](https://github.com/DigitalBrainJS) - [Dan Mooney](https://github.com/danmooney) - [Michael Li](https://github.com/xiaoyu-tamu) - [aong](https://github.com/yxwzaxns) - [Des Preston](https://github.com/despreston) - [Ted Robertson](https://github.com/tredondo) - [zhoulixiang](https://github.com/zh-lx) - [Arthur Fiorette](https://github.com/arthurfiorette) - [Kumar Shanu](https://github.com/Kr-Shanu) - [JALAL](https://github.com/JLL32) - [Jingyi Lin](https://github.com/MageeLin) - [Philipp Loose](https://github.com/phloose) - [Alexander Shchukin](https://github.com/sashsvamir) - [Dave Cardwell](https://github.com/davecardwell) - [Cat Scarlet](https://github.com/catscarlet) - [Luca Pizzini](https://github.com/lpizzinidev) - [Kai](https://github.com/Schweinepriester) - [Maxime Bargiel](https://github.com/mbargiel) - [Brian Helba](https://github.com/brianhelba) - [reslear](https://github.com/reslear) - [Jamie Slome](https://github.com/JamieSlome) - [Landro3](https://github.com/Landro3) - [rafw87](https://github.com/rafw87) - [Afzal Sayed](https://github.com/afzalsayed96) - [Koki Oyatsu](https://github.com/kaishuu0123) - [Dave](https://github.com/wangcch) - [暴走老七](https://github.com/baozouai) - [Spencer](https://github.com/spalger) - [Adrian Wieprzkowicz](https://github.com/Argeento) - [Jamie Telin](https://github.com/lejahmie) - [毛呆](https://github.com/aweikalee) - [Kirill Shakirov](https://github.com/turisap) - [Rraji Abdelbari](https://github.com/estarossa0) - [Jelle Schutter](https://github.com/jelleschutter) - [Tom Ceuppens](https://github.com/KyorCode) - [Johann Cooper](https://github.com/JohannCooper) - [Dimitris Halatsis](https://github.com/mitsos1os) - [chenjigeng](https://github.com/chenjigeng) - [João Gabriel Quaresma](https://github.com/joaoGabriel55) - [Victor Augusto](https://github.com/VictorAugDB) - [neilnaveen](https://github.com/neilnaveen) - [Pavlos](https://github.com/psmoros) - [Kiryl Valkovich](https://github.com/visortelle) - [Naveen](https://github.com/naveensrinivasan) - [wenzheng](https://github.com/0x30) - [hcwhan](https://github.com/hcwhan) - [Bassel Rachid](https://github.com/basselworkforce) - [Grégoire Pineau](https://github.com/lyrixx) - [felipedamin](https://github.com/felipedamin) - [Karl Horky](https://github.com/karlhorky) - [Yue JIN](https://github.com/kingyue737) - [Usman Ali Siddiqui](https://github.com/usman250994) - [WD](https://github.com/techbirds) - [Günther Foidl](https://github.com/gfoidl) - [Stephen Jennings](https://github.com/jennings) - [C.T.Lin](https://github.com/chentsulin) - [mia-z](https://github.com/mia-z) - [Parth Banathia](https://github.com/Parth0105) - [parth0105pluang](https://github.com/parth0105pluang) - [Marco Weber](https://github.com/mrcwbr) - [Luca Pizzini](https://github.com/lpizzinidev) - [Willian Agostini](https://github.com/WillianAgostini) - [Huyen Nguyen](https://github.com/huyenltnguyen) ### [`v0.27.2`](https://github.com/axios/axios/releases/tag/v0.27.2) [Compare Source](https://github.com/axios/axios/compare/v0.27.1...v0.27.2) Fixes and Functionality: - Fixed FormData posting in browser environment by reverting [#&#8203;3785](https://github.com/axios/axios/issues/3785) ([#&#8203;4640](https://github.com/axios/axios/pull/4640)) - Enhanced protocol parsing implementation ([#&#8203;4639](https://github.com/axios/axios/pull/4639)) - Fixed bundle size ### [`v0.27.1`](https://github.com/axios/axios/releases/tag/v0.27.1) [Compare Source](https://github.com/axios/axios/compare/v0.27.0...v0.27.1) ##### Fixes and Functionality: - Removed import of url module in browser build due to huge size overhead and builds being broken ([#&#8203;4594](https://github.com/axios/axios/pull/4594)) - Bumped follow-redirects to ^1.14.9 ([#&#8203;4615](https://github.com/axios/axios/pull/4615)) ### [`v0.27.0`](https://github.com/axios/axios/releases/tag/v0.27.0) [Compare Source](https://github.com/axios/axios/compare/v0.26.1...v0.27.0) ##### Breaking changes: - New toFormData helper function that allows the implementor to pass an object and allow axios to convert it to FormData ([#&#8203;3757](https://github.com/axios/axios/pull/3757)) - Removed functionality that removed the the `Content-Type` request header when passing FormData ([#&#8203;3785](https://github.com/axios/axios/pull/3785)) - **(\*)** Refactored error handling implementing AxiosError as a constructor, this is a large change to error handling on the whole ([#&#8203;3645](https://github.com/axios/axios/pull/3645)) - Separated responsibility for FormData instantiation between `transformRequest` and `toFormData` ([#&#8203;4470](https://github.com/axios/axios/pull/4470)) - **(\*)** Improved and fixed multiple issues with FormData support ([#&#8203;4448](https://github.com/axios/axios/pull/4448)) ##### QOL and DevX improvements: - Added a multipart/form-data testing playground allowing contributors to debug changes easily ([#&#8203;4465](https://github.com/axios/axios/pull/4465)) ##### Fixes and Functionality: - Refactored project file structure to avoid circular imports ([#&#8203;4515](https://github.com/axios/axios/pull/4516)) & ([#&#8203;4516](https://github.com/axios/axios/pull/4516)) - Bumped follow-redirects to ^1.14.9 ([#&#8203;4562](https://github.com/axios/axios/pull/4562)) ##### Internal and Tests: - Updated dev dependencies to latest version ##### Documentation: - Fixing incorrect link in changelog ([#&#8203;4551](https://github.com/axios/axios/pull/4551)) ##### Notes: - **(\*)** Please read these pull requests before updating, these changes are very impactful and far reaching. ### [`v0.26.1`](https://github.com/axios/axios/releases/tag/v0.26.1) [Compare Source](https://github.com/axios/axios/compare/v0.26.0...v0.26.1) ##### Fixes and Functionality: - Refactored project file structure to avoid circular imports ([#&#8203;4220](https://github.com/axios/axios/pull/4220)) ### [`v0.26.0`](https://github.com/axios/axios/releases/tag/v0.26.0) [Compare Source](https://github.com/axios/axios/compare/v0.25.0...v0.26.0) ##### Fixes and Functionality: - Fixed The timeoutErrorMessage property in config not work with Node.js ([#&#8203;3581](https://github.com/axios/axios/pull/3581)) - Added errors to be displayed when the query parsing process itself fails ([#&#8203;3961](https://github.com/axios/axios/pull/3961)) - Fix/remove url required ([#&#8203;4426](https://github.com/axios/axios/pull/4426)) - Update follow-redirects dependency due to Vulnerability ([#&#8203;4462](https://github.com/axios/axios/pull/4462)) - Bump karma from 6.3.11 to 6.3.14 ([#&#8203;4461](https://github.com/axios/axios/pull/4461)) - Bump follow-redirects from 1.14.7 to 1.14.8 ([#&#8203;4473](https://github.com/axios/axios/pull/4473)) ### [`v0.25.0`](https://github.com/axios/axios/releases/tag/v0.25.0) [Compare Source](https://github.com/axios/axios/compare/v0.24.0...v0.25.0) ##### Breaking changes: - Fixing maxBodyLength enforcement ([#&#8203;3786](https://github.com/axios/axios/pull/3786)) - Don't rely on strict mode behaviour for arguments ([#&#8203;3470](https://github.com/axios/axios/pull/3470)) - Adding error handling when missing url ([#&#8203;3791](https://github.com/axios/axios/pull/3791)) - Update isAbsoluteURL.js removing escaping of non-special characters ([#&#8203;3809](https://github.com/axios/axios/pull/3809)) - Use native Array.isArray() in utils.js ([#&#8203;3836](https://github.com/axios/axios/pull/3836)) - Adding error handling inside stream end callback ([#&#8203;3967](https://github.com/axios/axios/pull/3967)) ##### Fixes and Functionality: - Added aborted even handler ([#&#8203;3916](https://github.com/axios/axios/pull/3916)) - Header types expanded allowing `boolean` and `number` types ([#&#8203;4144](https://github.com/axios/axios/pull/4144)) - Fix cancel signature allowing cancel message to be `undefined` ([#&#8203;3153](https://github.com/axios/axios/pull/3153)) - Updated type checks to be formulated better ([#&#8203;3342](https://github.com/axios/axios/pull/3342)) - Avoid unnecessary buffer allocations ([#&#8203;3321](https://github.com/axios/axios/pull/3321)) - Adding a socket handler to keep TCP connection live when processing long living requests ([#&#8203;3422](https://github.com/axios/axios/pull/3422)) - Added toFormData helper function ([#&#8203;3757](https://github.com/axios/axios/pull/3757)) - Adding responseEncoding prop type in AxiosRequestConfig ([#&#8203;3918](https://github.com/axios/axios/pull/3918)) ##### Internal and Tests: - Adding axios-test-instance to ecosystem ([#&#8203;3786](https://github.com/axios/axios/pull/3786)) - Optimize the logic of isAxiosError ([#&#8203;3546](https://github.com/axios/axios/pull/3546)) - Add tests and documentation to display how multiple inceptors work ([#&#8203;3564](https://github.com/axios/axios/pull/3564)) - Updating follow-redirects to version 1.14.7 ([#&#8203;4379](https://github.com/axios/axios/pull/4379)) ##### Documentation: - Fixing changelog to show corrext pull request ([#&#8203;4219](https://github.com/axios/axios/pull/4219)) - Update upgrade guide for https proxy setting ([#&#8203;3604](https://github.com/axios/axios/pull/3604)) Huge thanks to everyone who contributed to this release via code (authors listed below) or via reviews and triaging on GitHub: - [Jay](mailto:jasonsaayman@gmail.com) - [Rijk van Zanten](https://github.com/rijkvanzanten) - [Kohta Ito](https://github.com/koh110) - [Brandon Faulkner](https://github.com/bfaulk96) - [Stefano Magni](https://github.com/NoriSte) - [enofan](https://github.com/fanguangyi) - [Andrey Pechkurov](https://github.com/puzpuzpuz) - [Doowonee](https://github.com/doowonee) - [Emil Broman](https://github.com/emilbroman-eqt) - [Remco Haszing](https://github.com/remcohaszing) - [Black-Hole](https://github.com/BlackHole1) - [Wolfram Kriesing](https://github.com/wolframkriesing) - [Andrew Ovens](https://github.com/repl-andrew-ovens) - [Paulo Renato](https://github.com/PauloRSF) - [Ben Carp](https://github.com/carpben) - [Hirotaka Tagawa](https://github.com/wafuwafu13) - [狼族小狈](https://github.com/lzxb) - [C. Lewis](https://github.com/ctjlewis) - [Felipe Carvalho](https://github.com/FCarvalhoVII) - [Daniel](https://github.com/djs113) - [Gustavo Sales](https://github.com/gussalesdev) </details> <details> <summary>cssnano/cssnano</summary> ### [`v5.1.13`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.13) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.12...cssnano@5.1.13) #### Bug Fixes - fix TypeScript type of `cssnano()` return value (https://github.com/cssnano/cssnano/commit/b92dbe3ab1db16141dc6296cd350f3fdf5c2defe) ### [`v5.1.12`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.12) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.11...cssnano@5.1.12) #### Bug Fixes - fix: preserve hyphenated property case (https://github.com/cssnano/cssnano/commit/120a88899376a29c8756234fdc648c519921f515) - fix: ensure sorting properties does not break the output (https://github.com/cssnano/cssnano/commit/0a3a1331e29f3d1009d2a938181ffa4b34ab5b32) - fix: recognize 'constant' as a function (https://github.com/cssnano/cssnano/commit/858a8b77c951f3698b14e834f38128b176438edc) ### [`v5.1.11`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.11) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.10...cssnano@5.1.11) #### Bug Fixes - postcss-ordered-values: preserve constant values ([32ab4d9b7d20d](https://github.com/cssnano/cssnano/commit/32ab4d9b7d20d9dbebed3b7f348b20bf732c52a4)) ### [`v5.1.10`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.10) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.9...cssnano@5.1.10) #### Bug Fixes - postcss-minify-selectors: preserve similar nested selectors ([f6c29fb3e75ac26a2635d](https://github.com/cssnano/cssnano/commit/f6c29fb3e75ac26a2635d52b24bc5edfa2447f8e)) ### [`v5.1.9`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.9) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.8...cssnano@5.1.9) #### Bug Fixes - postcss-merge-longhand: preserve more color function fallbacks ([712993cb4a4e0](https://github.com/cssnano/cssnano/commit/712993cb4a4e0af6bcf83dd4529b6e825193c367)) ### [`v5.1.8`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.8) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.7...cssnano@5.1.8) #### Bug Fixes - postcss-convert-values: preserve percentage sign on IE 11 ([57f060ad21734](https://github.com/cssnano/cssnano/commit/57f060ad21734460549bc5986309528f34d3d36e)) ### [`v5.1.7`](https://github.com/cssnano/cssnano/compare/cssnano@5.1.6...cssnano@5.1.7) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.6...cssnano@5.1.7) ### [`v5.1.6`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.6) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.5...cssnano@5.1.6) #### Bug Fixes - preserve border color when merging border properties ([5f5080a](https://github.com/cssnano/cssnano/commit/5f5080a80bbffcd6adab3f2c3bc0846f1c455dae)) ### [`v5.1.5`](https://github.com/cssnano/cssnano/compare/cssnano@5.1.4...cssnano@5.1.5) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.4...cssnano@5.1.5) ### [`v5.1.4`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.4) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.3...cssnano@5.1.4) #### Bug Fixes - postcss-merge-longhand: preserve custom property case ([5428d5fc9](https://github.com/cssnano/cssnano/commit/5428d5fc9518f0a4808d0bdd8a6d5f6eaa90c3cf)) ### [`v5.1.3`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.3) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.2...cssnano@5.1.3) #### Bug Fixes - fix: do not merge declarations containing custom properties when it might create invalid declarations ([2c699341](https://github.com/cssnano/cssnano/commit/2c699341efb42d148f2df9a81211c60191d2265e)) ### [`v5.1.2`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.2) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.1...cssnano@5.1.2) #### Bug fixes - preserve empty custom properties and ensure they work in Chrome ([4ed39679](https://github.com/cssnano/cssnano/commit/4ed396795a88d8b06953b9abb2656f686402821c)) ### [`v5.1.1`](https://github.com/cssnano/cssnano/compare/cssnano@5.1.0...cssnano@5.1.1) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.1.0...cssnano@5.1.1) ### [`v5.1.0`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.1.0) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.0.17...cssnano@5.1.0) #### New Feature Add TypeScript types ### [`v5.0.17`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.0.17) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.0.16...cssnano@5.0.17) #### Patch Changes - Publish untranspiled CommonJS source ### [`v5.0.16`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.0.16) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.0.15...cssnano@5.0.16) #### 5.0.16 #### Patch Changes - refactor: replace natural sort with built-in array sort - Updated dependencies ### [`v5.0.15`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.0.15) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.0.14...cssnano@5.0.15) #### Patch Changes - refactor: remove getMatch function from cssnano-utils The getMatch function allows nested arrays to emulate a map. It is better to replace this function with a regular Map(). It's unlikely this function is used outside of cssnano as it requires a very specific nested array struture. - fix: update postcss-calc to 8.2 Remove a crash when postcss-calc cannot parse the value - Updated dependencies - cssnano-preset-default@5.1.10 ### [`v5.0.14`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.0.14) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.0.13...cssnano@5.0.14) #### Bug fixes - fix(cssnano): correctly resolve presets in pnpm monorepo ([#&#8203;1269](https://github.com/cssnano/cssnano/pull/1269)) ([6f9c7477eb](https://github.com/cssnano/cssnano/commit/6f9c7477eb3eb191d3a7454071908a17dac90fa3)) ### [`v5.0.13`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.0.13) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.0.12...cssnano@5.0.13) #### Patch Changes - chore(postcss-normalize-url): reduce dependencies ([#&#8203;1255](https://github.com/cssnano/cssnano/pull/1255)) ([a4267dedcd6](https://github.com/cssnano/cssnano/commit/a4267dedcd6d41ece45a0dfc5a73ea4b9e4ae028)) - fix(postcss-colormin): accept configuration options ([#&#8203;1263](https://github.com/cssnano/cssnano/pull/1263)) ([3b38038007](https://github.com/cssnano/cssnano/commit/3b38038007bfd8761d84a9e35f0191b56e5b50d7)) - Updated dependencies - cssnano-preset-default@5.1.9 ### [`v5.0.12`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.0.12) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.0.11...cssnano@5.0.12) #### Bug fixes - fix(postcss-reduce-initial): update initial values data ([#&#8203;1242](https://github.com/cssnano/cssnano/pull/1242)) ([c6e9f00b785](https://github.com/cssnano/cssnano/commit/c6e9f00b785d85df0d92a110ec95a14fd98adcc9)) ### [`v5.0.11`](https://github.com/cssnano/cssnano/releases/tag/cssnano%405.0.11) [Compare Source](https://github.com/cssnano/cssnano/compare/cssnano@5.0.10...cssnano@5.0.11) #### Bug fixes - [`c38f14c`](https://github.com/cssnano/cssnano/commit/c38f14c3ce3d0): **postcss-normalize-url**: avoid changing parameter encoding #### Chore - [`31d5c07`](https://github.com/cssnano/cssnano/commit/31d5c07dc07a4): refactor: drop one-liner dependencies - [`0717282`](https://github.com/cssnano/cssnano/commit/07172825ffbb4f4): **postcss-merge-longhand**: drop css-color-names dependency </details> <details> <summary>eslint/eslint</summary> ### [`v8.26.0`](https://github.com/eslint/eslint/releases/tag/v8.26.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.25.0...v8.26.0) #### Features - [`4715787`](https://github.com/eslint/eslint/commit/4715787724a71494ba0bb0c5fe4639570bb6985b) feat: check `Object.create()` in getter-return ([#&#8203;16420](https://github.com/eslint/eslint/issues/16420)) (Yuki Hirasawa) - [`28d1902`](https://github.com/eslint/eslint/commit/28d190264017dbaa29f2ab218f73b623143cd1af) feat: `no-implicit-globals` supports `exported` block comment ([#&#8203;16343](https://github.com/eslint/eslint/issues/16343)) (Sosuke Suzuki) - [`e940be7`](https://github.com/eslint/eslint/commit/e940be7a83d0caea15b64c1e1c2785a6540e2641) feat: Use ESLINT_USE_FLAT_CONFIG environment variable for flat config ([#&#8203;16356](https://github.com/eslint/eslint/issues/16356)) (Tomer Aberbach) - [`dd0c58f`](https://github.com/eslint/eslint/commit/dd0c58f0f34d24331ae55139af39cf2747125f5e) feat: Swap out Globby for custom globbing solution. ([#&#8203;16369](https://github.com/eslint/eslint/issues/16369)) (Nicholas C. Zakas) #### Bug Fixes - [`df77409`](https://github.com/eslint/eslint/commit/df7740967ffab2915974c7b310ac76ea2915ac2d) fix: use `baseConfig` constructor option in FlatESLint ([#&#8203;16432](https://github.com/eslint/eslint/issues/16432)) (Milos Djermanovic) - [`33668ee`](https://github.com/eslint/eslint/commit/33668ee9d22e1988ba03e07fb547738bdb21dc0e) fix: Ensure that glob patterns are matched correctly. ([#&#8203;16449](https://github.com/eslint/eslint/issues/16449)) (Nicholas C. Zakas) - [`740b208`](https://github.com/eslint/eslint/commit/740b20826fadc5322ea5547c1ba41793944e571d) fix: ignore messages without a `ruleId` in `getRulesMetaForResults` ([#&#8203;16409](https://github.com/eslint/eslint/issues/16409)) (Francesco Trotta) - [`8f9759e`](https://github.com/eslint/eslint/commit/8f9759e2a94586357d85fac902e038fabdba79a7) fix: `--ignore-pattern` in flat config mode should be relative to `cwd` ([#&#8203;16425](https://github.com/eslint/eslint/issues/16425)) (Milos Djermanovic) - [`325ad37`](https://github.com/eslint/eslint/commit/325ad375a52d1c7b8b8fd23943350c91781366a2) fix: make `getRulesMetaForResults` return a plain object in trivial case ([#&#8203;16438](https://github.com/eslint/eslint/issues/16438)) (Francesco Trotta) - [`a2810bc`](https://github.com/eslint/eslint/commit/a2810bc485d9f1123a86b60702fcaa51e19d71a3) fix: Ensure that directories can be unignored. ([#&#8203;16436](https://github.com/eslint/eslint/issues/16436)) (Nicholas C. Zakas) - [`35916ad`](https://github.com/eslint/eslint/commit/35916ad9bfc07dab63361721df1bd7f21e43e094) fix: Ensure unignore and reignore work correctly in flat config. ([#&#8203;16422](https://github.com/eslint/eslint/issues/16422)) (Nicholas C. Zakas) #### Documentation - [`651649b`](https://github.com/eslint/eslint/commit/651649b12797594a86c0d659d6a0d1cdbda6f57b) docs: Core concepts page ([#&#8203;16399](https://github.com/eslint/eslint/issues/16399)) (Ben Perlmutter) - [`631cf72`](https://github.com/eslint/eslint/commit/631cf72e82f316a2cc08770e5c81b858637ab04a) docs: note --ignore-path not supported with flat config ([#&#8203;16434](https://github.com/eslint/eslint/issues/16434)) (Andy Edwards) - [`1692840`](https://github.com/eslint/eslint/commit/1692840a2f763737a4891419dc304db4ebedab5d) docs: fix syntax in examples for new config files ([#&#8203;16427](https://github.com/eslint/eslint/issues/16427)) (Milos Djermanovic) - [`d336cfc`](https://github.com/eslint/eslint/commit/d336cfc9145a72bf8730250ee1e331a135e6ee2c) docs: Document extending plugin with new config ([#&#8203;16394](https://github.com/eslint/eslint/issues/16394)) (Ben Perlmutter) #### Chores - [`e917a9a`](https://github.com/eslint/eslint/commit/e917a9a2e555d398c64b985fc933d44a42c958f0) ci: add node v19 ([#&#8203;16443](https://github.com/eslint/eslint/issues/16443)) (Koichi ITO) - [`4b70b91`](https://github.com/eslint/eslint/commit/4b70b91a6e28669ab8e2a4ce2a6d9ed40be20fa7) chore: Add VS Code issues link ([#&#8203;16423](https://github.com/eslint/eslint/issues/16423)) (Nicholas C. Zakas) - [`232d291`](https://github.com/eslint/eslint/commit/232d2916ac5e44db55c2ffbd2f3b37ad70037b7b) chore: suppress a Node.js deprecation warning ([#&#8203;16398](https://github.com/eslint/eslint/issues/16398)) (Koichi ITO) ### [`v8.25.0`](https://github.com/eslint/eslint/releases/tag/v8.25.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.24.0...v8.25.0) #### Features - [`173e820`](https://github.com/eslint/eslint/commit/173e82040895ad53b2d9940bfb3fb67a0478f00b) feat: Pass --max-warnings value to formatters ([#&#8203;16348](https://github.com/eslint/eslint/issues/16348)) (Brandon Mills) - [`6964cb1`](https://github.com/eslint/eslint/commit/6964cb1e0f073b236cb3288b9d8be495336bbf29) feat: remove support for ignore files in FlatESLint ([#&#8203;16355](https://github.com/eslint/eslint/issues/16355)) (Milos Djermanovic) - [`1cc4b3a`](https://github.com/eslint/eslint/commit/1cc4b3a8f82a7945dcd8c59550b6a906a0fabbb4) feat: `id-length` counts graphemes instead of code units ([#&#8203;16321](https://github.com/eslint/eslint/issues/16321)) (Sosuke Suzuki) #### Documentation - [`90c6028`](https://github.com/eslint/eslint/commit/90c602802b6e330b79c42f282e9a615c583e32d7) docs: Conflicting fixes ([#&#8203;16366](https://github.com/eslint/eslint/issues/16366)) (Ben Perlmutter) - [`5a3fe70`](https://github.com/eslint/eslint/commit/5a3fe70c5261acbf115fa5f47231cbc4ac62c1bc) docs: Add VS to integrations page ([#&#8203;16381](https://github.com/eslint/eslint/issues/16381)) (Maria José Solano) - [`49bd1e5`](https://github.com/eslint/eslint/commit/49bd1e5669b34fd7e0f4a3cf42009866980d7e15) docs: remove unused link definitions ([#&#8203;16376](https://github.com/eslint/eslint/issues/16376)) (Nick Schonning) - [`3bd380d`](https://github.com/eslint/eslint/commit/3bd380d3ea7e88ade4905ec0b240c866ab79a69d) docs: typo cleanups for docs ([#&#8203;16374](https://github.com/eslint/eslint/issues/16374)) (Nick Schonning) - [`b3a0837`](https://github.com/eslint/eslint/commit/b3a08376cfb61275a7557d6d166b6116f36e5ac2) docs: remove duplicate words ([#&#8203;16378](https://github.com/eslint/eslint/issues/16378)) (Nick Schonning) - [`a682562`](https://github.com/eslint/eslint/commit/a682562458948f74a227be60a80e10e7a3753124) docs: add `BigInt` to `new-cap` docs ([#&#8203;16362](https://github.com/eslint/eslint/issues/16362)) (Sosuke Suzuki) - [`f6d57fb`](https://github.com/eslint/eslint/commit/f6d57fb657c2f4e8e0140ad057da34c935482972) docs: Update docs README ([#&#8203;16352](https://github.com/eslint/eslint/issues/16352)) (Ben Perlmutter) - [`7214347`](https://github.com/eslint/eslint/commit/721434705bd569e33911e25d2688e33f10898d52) docs: fix logical-assignment-operators option typo ([#&#8203;16346](https://github.com/eslint/eslint/issues/16346)) (Jonathan Wilsson) #### Chores - [`1f78594`](https://github.com/eslint/eslint/commit/1f785944f61c97996445e48cb74fc300142e7310) chore: upgrade [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).3.3 ([#&#8203;16397](https://github.com/eslint/eslint/issues/16397)) (Milos Djermanovic) - [`8476a9b`](https://github.com/eslint/eslint/commit/8476a9b8b81164887cdf38a21d431b75ff2956b1) chore: Remove CODEOWNERS ([#&#8203;16375](https://github.com/eslint/eslint/issues/16375)) (Nick Schonning) - [`720ff75`](https://github.com/eslint/eslint/commit/720ff75beb9f4fdcf2a185fcb8020cf78483fdeb) chore: use "ci" for Dependabot commit message ([#&#8203;16377](https://github.com/eslint/eslint/issues/16377)) (Nick Schonning) - [`42f5479`](https://github.com/eslint/eslint/commit/42f547948f284f1c67799f237dfeb86fc400c7c7) chore: bump actions/stale from 5 to 6 ([#&#8203;16350](https://github.com/eslint/eslint/issues/16350)) (dependabot\[bot]) - [`e5e9e27`](https://github.com/eslint/eslint/commit/e5e9e271da58361bda16f7abc8f367ccc6f91510) chore: remove `jsdoc` dev dependency ([#&#8203;16344](https://github.com/eslint/eslint/issues/16344)) (Milos Djermanovic) ### [`v8.24.0`](https://github.com/eslint/eslint/releases/tag/v8.24.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.23.1...v8.24.0) #### Features - [`1729f9e`](https://github.com/eslint/eslint/commit/1729f9ea4d7b2945b2b701d72027fd4aace954cf) feat: account for `sourceType: "commonjs"` in the strict rule ([#&#8203;16308](https://github.com/eslint/eslint/issues/16308)) (Milos Djermanovic) - [`b0d72c9`](https://github.com/eslint/eslint/commit/b0d72c96b2a9cde7a5798c2b08ec4e70683c6aca) feat: add rule logical-assignment-operators ([#&#8203;16102](https://github.com/eslint/eslint/issues/16102)) (fnx) - [`f02bcd9`](https://github.com/eslint/eslint/commit/f02bcd91bf89b6c167d5346a36677fdb854f0c05) feat: `array-callback-return` support `findLast` and `findLastIndex` ([#&#8203;16314](https://github.com/eslint/eslint/issues/16314)) (Sosuke Suzuki) #### Documentation - [`2c152ff`](https://github.com/eslint/eslint/commit/2c152ff0fb709b99e62c19ecd2c95689efacbe4c) docs: note false positive `Object.getOwnPropertyNames` in prefer-reflect ([#&#8203;16317](https://github.com/eslint/eslint/issues/16317)) (AnnAngela) - [`bf7bd88`](https://github.com/eslint/eslint/commit/bf7bd885a92046a6b6bcbcaaa1e78e9f2c4b482f) docs: fix warn severity description for new config files ([#&#8203;16324](https://github.com/eslint/eslint/issues/16324)) (Nitin Kumar) - [`8cc0bbe`](https://github.com/eslint/eslint/commit/8cc0bbe440dc5e6af6ef02f00d0514a40ca07c24) docs: use more clean link syntax ([#&#8203;16309](https://github.com/eslint/eslint/issues/16309)) (Percy Ma) - [`6ba269e`](https://github.com/eslint/eslint/commit/6ba269ed673f965d081287b769c12beeb5f98887) docs: fix typo ([#&#8203;16288](https://github.com/eslint/eslint/issues/16288)) (jjangga0214) #### Chores - [`131e646`](https://github.com/eslint/eslint/commit/131e646e227b9aca3937fe287343bf2c3df408af) chore: Upgrade [@&#8203;humanwhocodes/config-array](https://github.com/humanwhocodes/config-array) for perf ([#&#8203;16339](https://github.com/eslint/eslint/issues/16339)) (Nicholas C. Zakas) - [`504fe59`](https://github.com/eslint/eslint/commit/504fe59b0e0f4f5a2afb6a69aaed5cb4ca631012) perf: switch from object spread to `Object.assign` when merging globals ([#&#8203;16311](https://github.com/eslint/eslint/issues/16311)) (Milos Djermanovic) ### [`v8.23.1`](https://github.com/eslint/eslint/releases/tag/v8.23.1) [Compare Source](https://github.com/eslint/eslint/compare/v8.23.0...v8.23.1) #### Bug Fixes - [`b719893`](https://github.com/eslint/eslint/commit/b71989388a921886caa4c6cb48729bbf60c46100) fix: Upgrade eslintrc to stop redefining plugins ([#&#8203;16297](https://github.com/eslint/eslint/issues/16297)) (Brandon Mills) - [`734b54e`](https://github.com/eslint/eslint/commit/734b54eb9c6c4839c0f99ebe18dc5695754aac1d) fix: improve autofix for the `prefer-const` rule ([#&#8203;16292](https://github.com/eslint/eslint/issues/16292)) (Nitin Kumar) - [`6a923ff`](https://github.com/eslint/eslint/commit/6a923ff9257a4f009cefed049ebb59a4b5acdab5) fix: Ensure that glob patterns are normalized ([#&#8203;16287](https://github.com/eslint/eslint/issues/16287)) (Nicholas C. Zakas) - [`c6900f8`](https://github.com/eslint/eslint/commit/c6900f89a89f3de5d3c50c69a1bc62eac6eb76d7) fix: Ensure globbing doesn't include subdirectories ([#&#8203;16272](https://github.com/eslint/eslint/issues/16272)) (Nicholas C. Zakas) #### Documentation - [`16cba3f`](https://github.com/eslint/eslint/commit/16cba3f31294a673721864267aa13ea35233326b) docs: fix mobile double tap issue ([#&#8203;16293](https://github.com/eslint/eslint/issues/16293)) (Sam Chen) - [`e098b5f`](https://github.com/eslint/eslint/commit/e098b5f80472e80c70603306e77e14ea15f1a93b) docs: keyboard control to search results ([#&#8203;16222](https://github.com/eslint/eslint/issues/16222)) (Shanmughapriyan S) - [`1b5b2a7`](https://github.com/eslint/eslint/commit/1b5b2a7de504f2971a6a488d8a57442e73b56a51) docs: add Consolas font and prioritize resource loading ([#&#8203;16225](https://github.com/eslint/eslint/issues/16225)) (Amaresh S M) - [`1ae8236`](https://github.com/eslint/eslint/commit/1ae8236a2e71c9dead20ba9da60d8cc9e317859a) docs: copy & use main package version in docs on release ([#&#8203;16252](https://github.com/eslint/eslint/issues/16252)) (Jugal Thakkar) - [`279f0af`](https://github.com/eslint/eslint/commit/279f0afc14617c037da482919942beef87f56e45) docs: Improve id-denylist documentation ([#&#8203;16223](https://github.com/eslint/eslint/issues/16223)) (Mert Ciflikli) #### Chores - [`38e8171`](https://github.com/eslint/eslint/commit/38e8171d9b170f400ac340368d044b2093114e94) perf: migrate rbTree to js-sdsl ([#&#8203;16267](https://github.com/eslint/eslint/issues/16267)) (Zilong Yao) - [`1c388fb`](https://github.com/eslint/eslint/commit/1c388fb37739cc09dbd0b4aa59e9d45674280ad5) chore: switch nyc to c8 ([#&#8203;16263](https://github.com/eslint/eslint/issues/16263)) (唯然) - [`67db10c`](https://github.com/eslint/eslint/commit/67db10c51dbb871a201eab444f6a73fbc1e4fc75) chore: enable linting `.eleventy.js` again ([#&#8203;16274](https://github.com/eslint/eslint/issues/16274)) (Milos Djermanovic) - [`42bfbd7`](https://github.com/eslint/eslint/commit/42bfbd7b7b91106e5f279a05f40c20769e3cd29f) chore: fix `npm run perf` crashes ([#&#8203;16258](https://github.com/eslint/eslint/issues/16258)) (唯然) ### [`v8.23.0`](https://github.com/eslint/eslint/releases/tag/v8.23.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.22.0...v8.23.0) #### Features - [`3e5839e`](https://github.com/eslint/eslint/commit/3e5839ecae96aecfbc1ac9526e88e0105e671032) feat: Enable eslint.config.js lookup from CLI ([#&#8203;16235](https://github.com/eslint/eslint/issues/16235)) (Nicholas C. Zakas) - [`30b1a2d`](https://github.com/eslint/eslint/commit/30b1a2dac9060673101485841c4c7521675bf917) feat: add `allowEmptyCase` option to no-fallthrough rule ([#&#8203;15887](https://github.com/eslint/eslint/issues/15887)) (Amaresh S M) - [`43f03aa`](https://github.com/eslint/eslint/commit/43f03aa96b632039b1d9cad097a70b227bb7d348) feat: no-warning-comments support comments with decoration ([#&#8203;16120](https://github.com/eslint/eslint/issues/16120)) (Lachlan Hunt) #### Documentation - [`b1918da`](https://github.com/eslint/eslint/commit/b1918da0f6cb8fe690c7377667616ec7cb57111e) docs: package.json conventions ([#&#8203;16206](https://github.com/eslint/eslint/issues/16206)) (Patrick McElhaney) - [`0e03c33`](https://github.com/eslint/eslint/commit/0e03c333a70bebd00307deead0befa519f983f44) docs: remove word immediately ([#&#8203;16217](https://github.com/eslint/eslint/issues/16217)) (Strek) - [`c6790db`](https://github.com/eslint/eslint/commit/c6790db6494e64a5261d74c0f3c4dc6139c59435) docs: add anchor link for "migrating from jscs" ([#&#8203;16207](https://github.com/eslint/eslint/issues/16207)) (Percy Ma) - [`7137344`](https://github.com/eslint/eslint/commit/71373442c42b356f34179dba18f860e1d79a780d) docs: auto-generation edit link ([#&#8203;16213](https://github.com/eslint/eslint/issues/16213)) (Percy Ma) #### Chores - [`2e004ab`](https://github.com/eslint/eslint/commit/2e004ab990a4a5a4efc44974da005d2161490256) chore: upgrade [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).3.1 ([#&#8203;16249](https://github.com/eslint/eslint/issues/16249)) (Milos Djermanovic) - [`d35fbbe`](https://github.com/eslint/eslint/commit/d35fbbef895e8f4ac6eaf1756349230769a02b4d) chore: Upgrade to espree@9.4.0 ([#&#8203;16243](https://github.com/eslint/eslint/issues/16243)) (Milos Djermanovic) - [`ed26229`](https://github.com/eslint/eslint/commit/ed26229a19359b356f3a401698488c1707d4c029) test: add no-extra-parens tests with rest properties ([#&#8203;16236](https://github.com/eslint/eslint/issues/16236)) (Milos Djermanovic) - [`deaf69f`](https://github.com/eslint/eslint/commit/deaf69ffd8f9b97b4b8c29a244a79969ff14c80a) chore: fix off-by-one `min-width: 1023px` media queries ([#&#8203;15974](https://github.com/eslint/eslint/issues/15974)) (Milos Djermanovic) - [`63dec9f`](https://github.com/eslint/eslint/commit/63dec9fdee793be9bf2939e1bda0717b9cc6dcf8) refactor: simplify `parseListConfig` ([#&#8203;16241](https://github.com/eslint/eslint/issues/16241)) (Milos Djermanovic) ### [`v8.22.0`](https://github.com/eslint/eslint/releases/tag/v8.22.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.21.0...v8.22.0) #### Features - [`2b97607`](https://github.com/eslint/eslint/commit/2b97607675e1d0920a3abedd736e2ae00ed26d52) feat: Implement caching for FlatESLint ([#&#8203;16190](https://github.com/eslint/eslint/issues/16190)) (Nicholas C. Zakas) - [`fd5d3d3`](https://github.com/eslint/eslint/commit/fd5d3d37c97001fad1d9ae4386f76b3587cceba9) feat: add `methodsIgnorePattern` option to object-shorthand rule ([#&#8203;16185](https://github.com/eslint/eslint/issues/16185)) (Milos Djermanovic) #### Documentation - [`9f5a752`](https://github.com/eslint/eslint/commit/9f5a75206675f2404ad6733640cf05ab44b02274) docs: optimize image assets ([#&#8203;16170](https://github.com/eslint/eslint/issues/16170)) (Sam Chen) - [`61b2948`](https://github.com/eslint/eslint/commit/61b2948cb71ec505d2f7e904c7ad77ee1da64db2) docs: add svgo command to pre commit hook ([#&#8203;16178](https://github.com/eslint/eslint/issues/16178)) (Amaresh S M) - [`784096d`](https://github.com/eslint/eslint/commit/784096d37808e59ce8cc07c3c18018b31a31c3f8) docs: improve search result UI ([#&#8203;16187](https://github.com/eslint/eslint/issues/16187)) (Sam Chen) - [`d0f4cb4`](https://github.com/eslint/eslint/commit/d0f4cb42e86b4b9c7bdf91e88a4ec0d36074f36b) docs: use shorthand property name in example ([#&#8203;16180](https://github.com/eslint/eslint/issues/16180)) (Kevin Elliott) #### Chores - [`10a6e0e`](https://github.com/eslint/eslint/commit/10a6e0e14488e4ae9ab267fb5db2ec0c5bb85d59) chore: remove deploy workflow for playground ([#&#8203;16186](https://github.com/eslint/eslint/issues/16186)) (Milos Djermanovic) ### [`v8.21.0`](https://github.com/eslint/eslint/releases/tag/v8.21.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.20.0...v8.21.0) #### Features - [`7b43ea1`](https://github.com/eslint/eslint/commit/7b43ea14a8af5fc3dbac38fa9d5bc71741328c16) feat: Implement FlatESLint ([#&#8203;16149](https://github.com/eslint/eslint/issues/16149)) (Nicholas C. Zakas) - [`92bf49a`](https://github.com/eslint/eslint/commit/92bf49a4b39dde728fbc6d348e62c7009e21cf7d) feat: improve the key width calculation in `key-spacing` rule ([#&#8203;16154](https://github.com/eslint/eslint/issues/16154)) (Nitin Kumar) - [`c461542`](https://github.com/eslint/eslint/commit/c4615421cb4825e2ad22e275ec9439756d56299c) feat: add new `allowLineSeparatedGroups` option to the `sort-keys` rule ([#&#8203;16138](https://github.com/eslint/eslint/issues/16138)) (Nitin Kumar) - [`1cdcbca`](https://github.com/eslint/eslint/commit/1cdcbca8a961a057a9db40df412f249545befe2b) feat: add deprecation warnings for legacy API in `RuleTester` ([#&#8203;16063](https://github.com/eslint/eslint/issues/16063)) (Nitin Kumar) #### Bug Fixes - [`0396775`](https://github.com/eslint/eslint/commit/03967755270ae28eec651281c50b6990d3983f48) fix: lines-around-comment apply `allowBlockStart` for switch statements ([#&#8203;16153](https://github.com/eslint/eslint/issues/16153)) (Nitin Kumar) #### Documentation - [`2aadc93`](https://github.com/eslint/eslint/commit/2aadc93272f1ab7f40246c6b18c4056660f2b3a2) docs: add anchors to headings inside docs content ([#&#8203;16134](https://github.com/eslint/eslint/issues/16134)) (Strek) #### Chores - [`8892511`](https://github.com/eslint/eslint/commit/889251194867b1f394c571a5982249329fa44cfd) chore: Upgrade to Espree 9.3.3 ([#&#8203;16173](https://github.com/eslint/eslint/issues/16173)) (Brandon Mills) - [`1233bee`](https://github.com/eslint/eslint/commit/1233beea3938fc4234c8f75917776832226fc3c8) chore: switch to eslint-plugin-node's maintained fork ([#&#8203;16150](https://github.com/eslint/eslint/issues/16150)) (唯然) - [`97b95c0`](https://github.com/eslint/eslint/commit/97b95c068d5b35fae68ca919257b61430271ac76) chore: upgrade puppeteer v13 ([#&#8203;16151](https://github.com/eslint/eslint/issues/16151)) (唯然) ### [`v8.20.0`](https://github.com/eslint/eslint/releases/tag/v8.20.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.19.0...v8.20.0) #### Features - [`ca83178`](https://github.com/eslint/eslint/commit/ca83178b18cd5d649bd52a20aef8f8b3f48d3085) feat: catch preprocess errors ([#&#8203;16105](https://github.com/eslint/eslint/issues/16105)) (JounQin) #### Bug Fixes - [`30be0ed`](https://github.com/eslint/eslint/commit/30be0ed4d84dd436e6c2e345e264c10b2bd37308) fix: no-warning-comments rule escapes special RegEx characters in terms ([#&#8203;16090](https://github.com/eslint/eslint/issues/16090)) (Lachlan Hunt) - [`bfe5e88`](https://github.com/eslint/eslint/commit/bfe5e884098874bb512609bcd94a5e5ed797839d) fix: ignore spacing before `]` and `}` in comma-spacing ([#&#8203;16113](https://github.com/eslint/eslint/issues/16113)) (Milos Djermanovic) #### Documentation - [`845c4f4`](https://github.com/eslint/eslint/commit/845c4f40274ccb3727c624db44c7a23aafa71318) docs: Add website team details ([#&#8203;16115](https://github.com/eslint/eslint/issues/16115)) (Nicholas C. Zakas) - [`5a0dfdb`](https://github.com/eslint/eslint/commit/5a0dfdb9938ffdcea52047466bac11ea983f4b29) docs: Link to blog post in no-constant-binary-expression ([#&#8203;16112](https://github.com/eslint/eslint/issues/16112)) (Jordan Eldredge) - [`bc692a9`](https://github.com/eslint/eslint/commit/bc692a9bf5c664c646ce386eff44eb706c231127) docs: remove install command ([#&#8203;16084](https://github.com/eslint/eslint/issues/16084)) (Strek) - [`49ca3f0`](https://github.com/eslint/eslint/commit/49ca3f090425e06fdf6e66bcf2415508c46671e1) docs: don't show toc when content not found ([#&#8203;16095](https://github.com/eslint/eslint/issues/16095)) (Amaresh S M) - [`ba19e3f`](https://github.com/eslint/eslint/commit/ba19e3f80a32ceae82e0ed6c0acf16061d8370da) docs: enhance 404 page UI ([#&#8203;16097](https://github.com/eslint/eslint/issues/16097)) (Amaresh S M) - [`a75d3b4`](https://github.com/eslint/eslint/commit/a75d3b47b84f59c080c0c8301ae859fa64aa0f0f) docs: remove unused meta.docs.category field in working-with-rules page ([#&#8203;16109](https://github.com/eslint/eslint/issues/16109)) (Brandon Scott) - [`cdc0206`](https://github.com/eslint/eslint/commit/cdc020639022dd931863460273de61f4ed4ce0f8) docs: add formatters page edit link ([#&#8203;16094](https://github.com/eslint/eslint/issues/16094)) (Amaresh S M) - [`4d1ed22`](https://github.com/eslint/eslint/commit/4d1ed22dede531108c8a7899d513f64f0662c135) docs: preselect default theme ([#&#8203;16098](https://github.com/eslint/eslint/issues/16098)) (Strek) - [`4b79612`](https://github.com/eslint/eslint/commit/4b79612f0bdf860142401033f32fe9a5b8cd7d03) docs: add missing correct/incorrect containers ([#&#8203;16087](https://github.com/eslint/eslint/issues/16087)) (Milos Djermanovic) - [`09f6acb`](https://github.com/eslint/eslint/commit/09f6acbf2136e3084a3174607ab29a48d5d519b0) docs: fix UI bug on rules index and details pages ([#&#8203;16082](https://github.com/eslint/eslint/issues/16082)) (Deepshika S) - [`f5db264`](https://github.com/eslint/eslint/commit/f5db264931fd6259e064b5cf24b4233f5aaa4c7d) docs: remove remaining duplicate rule descriptions ([#&#8203;16093](https://github.com/eslint/eslint/issues/16093)) (Milos Djermanovic) - [`32a6b2a`](https://github.com/eslint/eslint/commit/32a6b2a5caae8fa3734dfbdb9640bb4963fc5f4f) docs: Add scroll behaviour smooth ([#&#8203;16056](https://github.com/eslint/eslint/issues/16056)) (Amaresh S M) #### Chores - [`bbf8df4`](https://github.com/eslint/eslint/commit/bbf8df41c901d41753ca4f3f0baf021944782597) chore: Mark autogenerated release blog post as draft ([#&#8203;16130](https://github.com/eslint/eslint/issues/16130)) (Nicholas C. Zakas) - [`eee4306`](https://github.com/eslint/eslint/commit/eee43067f635c0ec3b61e416f47849029d12268d) chore: update internal lint dependencies ([#&#8203;16088](https://github.com/eslint/eslint/issues/16088)) (Bryan Mishkin) - [`9615a42`](https://github.com/eslint/eslint/commit/9615a42c9f065188024423a28b603cb93dad18d4) chore: update formatter examples template to avoid markdown lint error ([#&#8203;16085](https://github.com/eslint/eslint/issues/16085)) (Milos Djermanovic) - [`62541ed`](https://github.com/eslint/eslint/commit/62541edf5843ff8e01f14f870701d5df0b2c1cb5) chore: fix markdown linting error ([#&#8203;16083](https://github.com/eslint/eslint/issues/16083)) (唯然) ### [`v8.19.0`](https://github.com/eslint/eslint/releases/tag/v8.19.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.18.0...v8.19.0) #### Features - [`7023628`](https://github.com/eslint/eslint/commit/7023628eb3af1bcc0151afab2bf617217fae51b1) feat: add importNames support for patterns in no-restricted-imports ([#&#8203;16059](https://github.com/eslint/eslint/issues/16059)) (Brandon Scott) - [`472c368`](https://github.com/eslint/eslint/commit/472c3681364833f697d726abc3c33fbe2663eeb7) feat: fix handling of blockless `with` statements in indent rule ([#&#8203;16068](https://github.com/eslint/eslint/issues/16068)) (Milos Djermanovic) #### Bug Fixes - [`fc81848`](https://github.com/eslint/eslint/commit/fc81848238ee0f6ff93615875ea4b8e95dc09249) fix: throw helpful exception when rule has wrong return type ([#&#8203;16075](https://github.com/eslint/eslint/issues/16075)) (Bryan Mishkin) #### Documentation - [`3ae0574`](https://github.com/eslint/eslint/commit/3ae0574fc78c4a2b406625e4792cb2859cb9bcb1) docs: Remove duplicate rule descriptions ([#&#8203;16052](https://github.com/eslint/eslint/issues/16052)) (Amaresh S M) - [`f50cf43`](https://github.com/eslint/eslint/commit/f50cf436aaa5dff1273f4753dd3fc6782f95a045) docs: Add base href to each page to fix relative URLs ([#&#8203;16046](https://github.com/eslint/eslint/issues/16046)) (Nicholas C. Zakas) - [`ae4b449`](https://github.com/eslint/eslint/commit/ae4b449719d496fd611903d596341ec4c1d81c16) docs: make logo link clickable on small width screens ([#&#8203;16058](https://github.com/eslint/eslint/issues/16058)) (Milos Djermanovic) - [`280f898`](https://github.com/eslint/eslint/commit/280f898bff9b809327e4c94cea3632ba95af4485) docs: use only fenced code blocks ([#&#8203;16044](https://github.com/eslint/eslint/issues/16044)) (Milos Djermanovic) - [`f5d63b9`](https://github.com/eslint/eslint/commit/f5d63b9e15d9f325ef4953b683cb67133b05e9ea) docs: add listener only if element exists ([#&#8203;16045](https://github.com/eslint/eslint/issues/16045)) (Amaresh S M) - [`8b639cc`](https://github.com/eslint/eslint/commit/8b639ccb2fb0f0a7d7aaee1f1fc2881a237de95d) docs: add missing migrating-to-8.0.0 in the user guide ([#&#8203;16048](https://github.com/eslint/eslint/issues/16048)) (唯然) - [`b8e68c1`](https://github.com/eslint/eslint/commit/b8e68c1f7e2b8fa5c108216f74dcd3100aa33b0f) docs: Update release process ([#&#8203;16036](https://github.com/eslint/eslint/issues/16036)) (Nicholas C. Zakas) - [`6d0cb11`](https://github.com/eslint/eslint/commit/6d0cb11c6d134896d8920c9bf3cc3e492f0eb8e2) docs: remove table of contents from markdown text ([#&#8203;15999](https://github.com/eslint/eslint/issues/15999)) (Nitin Kumar) #### Chores - [`e884933`](https://github.com/eslint/eslint/commit/e88493395b3be2b08e14e9b84d20d2733f78582c) chore: use `github-slugger` for markdown anchors ([#&#8203;16067](https://github.com/eslint/eslint/issues/16067)) (Strek) - [`02e9cb0`](https://github.com/eslint/eslint/commit/02e9cb01e7663af3a3fd16725afc7d71e73b9eed) chore: revamp carbon ad style ([#&#8203;16078](https://github.com/eslint/eslint/issues/16078)) (Amaresh S M) - [`b6aee95`](https://github.com/eslint/eslint/commit/b6aee9591ecc2e2f5738ab8bef20faac1e05b5c3) chore: remove unwanted comments from rules markdown ([#&#8203;16054](https://github.com/eslint/eslint/issues/16054)) (Strek) - [`6840940`](https://github.com/eslint/eslint/commit/6840940a766d671831d5cee0e3c0e2f4e642632a) chore: correctly use .markdownlintignore in Makefile ([#&#8203;16060](https://github.com/eslint/eslint/issues/16060)) (Bryan Mishkin) - [`48904fb`](https://github.com/eslint/eslint/commit/48904fb00fc5001e534034e2e513ca99f3ada35e) chore: add missing images ([#&#8203;16017](https://github.com/eslint/eslint/issues/16017)) (Amaresh S M) - [`910f741`](https://github.com/eslint/eslint/commit/910f741885a18b7744d4125e98e554312bc873eb) chore: add architecture to nav ([#&#8203;16039](https://github.com/eslint/eslint/issues/16039)) (Strek) - [`9bb24c1`](https://github.com/eslint/eslint/commit/9bb24c1deb7ab6743080520d11aefe9c6b8b8f2d) chore: add correct incorrect in all rules doc ([#&#8203;16021](https://github.com/eslint/eslint/issues/16021)) (Deepshika S) - [`5a96af8`](https://github.com/eslint/eslint/commit/5a96af853dcbe29c9f125a63528f3fec9fc0aae8) chore: prepare versions data file ([#&#8203;16035](https://github.com/eslint/eslint/issues/16035)) (Nicholas C. Zakas) - [`50afe6f`](https://github.com/eslint/eslint/commit/50afe6fe8c92a1d5d52415e149d52e1e129c3cc7) chore: Included githubactions in the dependabot config ([#&#8203;15985](https://github.com/eslint/eslint/issues/15985)) (Naveen) - [`473411e`](https://github.com/eslint/eslint/commit/473411e61d46c2bbac70e9a66d434d477851d98a) chore: add deploy workflow for playground ([#&#8203;16034](https://github.com/eslint/eslint/issues/16034)) (Milos Djermanovic) - [`a30b66c`](https://github.com/eslint/eslint/commit/a30b66c030bf45864784c0550276267e5a146697) chore: fix print style ([#&#8203;16025](https://github.com/eslint/eslint/issues/16025)) (Amaresh S M) - [`f4dad59`](https://github.com/eslint/eslint/commit/f4dad59e5c7e966291d6f8c1456a465ae5629061) chore: add noindex meta tag ([#&#8203;16016](https://github.com/eslint/eslint/issues/16016)) (Milos Djermanovic) - [`db387a8`](https://github.com/eslint/eslint/commit/db387a87b23c398ed691ba35bdf3b6aa7dcfe750) chore: fix sitemap ([#&#8203;16026](https://github.com/eslint/eslint/issues/16026)) (Milos Djermanovic) - [`285fbc5`](https://github.com/eslint/eslint/commit/285fbc5e6a92c50e1195f252675b599ecd929b9d) chore: remove TOC from printable ([#&#8203;16020](https://github.com/eslint/eslint/issues/16020)) (Strek) - [`8e84c21`](https://github.com/eslint/eslint/commit/8e84c2148cc2d25a7076e73233ae41bc1a000a53) chore: remove ligatures from fonts ([#&#8203;16019](https://github.com/eslint/eslint/issues/16019)) (Strek) ### [`v8.18.0`](https://github.com/eslint/eslint/releases/tag/v8.18.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.17.0...v8.18.0) #### Features - [`a6273b8`](https://github.com/eslint/eslint/commit/a6273b83b103c463937936ef2404575758a7baa4) feat: account for rule creation time in performance reports ([#&#8203;15982](https://github.com/eslint/eslint/issues/15982)) (Nitin Kumar) #### Bug Fixes - [`f364d47`](https://github.com/eslint/eslint/commit/f364d47013d146cdea42b27a7b24d105223f5ffe) fix: Make no-unused-vars treat for..of loops same as for..in loops ([#&#8203;15868](https://github.com/eslint/eslint/issues/15868)) (Alex Bass) #### Documentation - [`4871047`](https://github.com/eslint/eslint/commit/4871047dbd0c5ef5e4089425a85ac85dcd9cf263) docs: Update analytics, canonical URL, ads ([#&#8203;15996](https://github.com/eslint/eslint/issues/15996)) (Nicholas C. Zakas) - [`cddad14`](https://github.com/eslint/eslint/commit/cddad1495fbc1750c26330f7aadc6647e2eebac3) docs: Add correct/incorrect containers ([#&#8203;15998](https://github.com/eslint/eslint/issues/15998)) (Nicholas C. Zakas) - [`b04bc6f`](https://github.com/eslint/eslint/commit/b04bc6f1d558d9ad5eb57383a779fec5a170b3d3) docs: Add rules meta info to rule pages ([#&#8203;15902](https://github.com/eslint/eslint/issues/15902)) (Nicholas C. Zakas) - [`1324f10`](https://github.com/eslint/eslint/commit/1324f10ac58d3685fdb656a4fc9d1e5c9d035e42) docs: unify the wording referring to optional exception ([#&#8203;15893](https://github.com/eslint/eslint/issues/15893)) (Abdelrahman Elkady) - [`ad54d02`](https://github.com/eslint/eslint/commit/ad54d0246797cdd849948e7a5d31571c498af7aa) docs: add missing trailing slash to some internal links ([#&#8203;15991](https://github.com/eslint/eslint/issues/15991)) (Milos Djermanovic) - [`df7768e`](https://github.com/eslint/eslint/commit/df7768e16a5ab55da97749bb89ff19f98ce0cc6c) docs: Switch to version-relative URLs ([#&#8203;15978](https://github.com/eslint/eslint/issues/15978)) (Nicholas C. Zakas) - [`21d6479`](https://github.com/eslint/eslint/commit/21d647904dc30f9484b22acdd9243a6d0ecfba38) docs: change some absolute links to relative ([#&#8203;15970](https://github.com/eslint/eslint/issues/15970)) (Milos Djermanovic) - [`f31216a`](https://github.com/eslint/eslint/commit/f31216a90a6204ed1fd56547772376a10f5d3ebb) docs: Update README team and sponsors (ESLint Jenkins) #### Build Related - [`ed49f15`](https://github.com/eslint/eslint/commit/ed49f15fad96060501927ca27ebda1a4c736ed04) build: remove unwanted parallel and image-min for dev server ([#&#8203;15986](https://github.com/eslint/eslint/issues/15986)) (Strek) #### Chores - [`f6e2e63`](https://github.com/eslint/eslint/commit/f6e2e632fa3710cfa467b15350b08dea6e0e3dfc) chore: fix 'replaced by' rule list ([#&#8203;16007](https://github.com/eslint/eslint/issues/16007)) (Milos Djermanovic) - [`d94dc84`](https://github.com/eslint/eslint/commit/d94dc84ae76a36b4ee9268c40d8536d2f5b1c63c) chore: remove unused deprecation warnings ([#&#8203;15994](https://github.com/eslint/eslint/issues/15994)) (Francesco Trotta) - [`cdcf11e`](https://github.com/eslint/eslint/commit/cdcf11e457a2455bd8875d78651fec55dd148139) chore: fix versions link ([#&#8203;15995](https://github.com/eslint/eslint/issues/15995)) (Milos Djermanovic) - [`d2a8715`](https://github.com/eslint/eslint/commit/d2a871543a12143fa0ecea13d7508021fd019031) chore: add trailing slash to `pathPrefix` ([#&#8203;15993](https://github.com/eslint/eslint/issues/15993)) (Milos Djermanovic) - [`58a1bf0`](https://github.com/eslint/eslint/commit/58a1bf0de33adb1d54c8051090f01984daa08c86) chore: tweak URL rewriting for local previews ([#&#8203;15992](https://github.com/eslint/eslint/issues/15992)) (Milos Djermanovic) - [`80404d2`](https://github.com/eslint/eslint/commit/80404d28f040df49706ba2c1e954aee945711aa9) chore: remove docs deploy workflow ([#&#8203;15984](https://github.com/eslint/eslint/issues/15984)) (Nicholas C. Zakas) - [`71bc750`](https://github.com/eslint/eslint/commit/71bc75012b1377d3c7e57deea0ad06f99c4c65bf) chore: Set permissions for GitHub actions ([#&#8203;15971](https://github.com/eslint/eslint/issues/15971)) (Naveen) - [`90ff647`](https://github.com/eslint/eslint/commit/90ff64742ede6ef29018cb967fc4f20d7b85b592) chore: avoid generating subdirectories for each page on new docs site ([#&#8203;15967](https://github.com/eslint/eslint/issues/15967)) (Milos Djermanovic) ### [`v8.17.0`](https://github.com/eslint/eslint/releases/tag/v8.17.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.16.0...v8.17.0) #### Features - [`55319e1`](https://github.com/eslint/eslint/commit/55319e133f0862a008db3557d7350f154f2c784f) feat: fix indent bug with semicolon-first style ([#&#8203;15951](https://github.com/eslint/eslint/issues/15951)) (Milos Djermanovic) - [`f6d7920`](https://github.com/eslint/eslint/commit/f6d79209821241c8e03c183b5844a024da0efe8a) feat: add `allowNamedExports` option to no-use-before-define ([#&#8203;15953](https://github.com/eslint/eslint/issues/15953)) (Milos Djermanovic) #### Bug Fixes - [`54c0953`](https://github.com/eslint/eslint/commit/54c09530c778eb4076d89777165d59db96c9acb5) fix: cleanup typos ([#&#8203;15939](https://github.com/eslint/eslint/issues/15939)) (Nick Schonning) - [`845a7af`](https://github.com/eslint/eslint/commit/845a7af90ce03b383c8f09654ac049fc161dbb9f) fix: typo ocatal -> octal ([#&#8203;15940](https://github.com/eslint/eslint/issues/15940)) (Nick Schonning) #### Documentation - [`b915018`](https://github.com/eslint/eslint/commit/b9150186bcc0f2732a69ab0ebd83a9b2fb2e6552) docs: Update website UI to latest ([#&#8203;15944](https://github.com/eslint/eslint/issues/15944)) (Nicholas C. Zakas) - [`f0bb609`](https://github.com/eslint/eslint/commit/f0bb6099668f54ae6f444126b90dbb1146248146) docs: Update Exponentiation operator MDN link ([#&#8203;15960](https://github.com/eslint/eslint/issues/15960)) (Pranjal Jain) - [`baa0153`](https://github.com/eslint/eslint/commit/baa01530469ec233fb60380a0960c1550f9d9a45) docs: Use correct past tense "left" instead of "leaved" ([#&#8203;15950](https://github.com/eslint/eslint/issues/15950)) (Frederik Braun) - [`1351a9b`](https://github.com/eslint/eslint/commit/1351a9b875aa32a8961a68457dde03ede9ef7c78) docs: Add Resources section to rule pages ([#&#8203;15901](https://github.com/eslint/eslint/issues/15901)) (Nicholas C. Zakas) - [`68cf0fb`](https://github.com/eslint/eslint/commit/68cf0fb7f645da5d992a5e749fc6c1311d30e75a) docs: cleanup typos ([#&#8203;15936](https://github.com/eslint/eslint/issues/15936)) (Nick Schonning) - [`13b62ae`](https://github.com/eslint/eslint/commit/13b62aeb710a68e5d838a4d3847c487af1ba9520) docs: use-dart-sass instead of node-sass ([#&#8203;15912](https://github.com/eslint/eslint/issues/15912)) (Deepshika S) - [`c81c5d6`](https://github.com/eslint/eslint/commit/c81c5d6ef1ba5808cca95ab965a162802af9b7cc) docs: add social media links ([#&#8203;15920](https://github.com/eslint/eslint/issues/15920)) (Deepshika S) - [`0d6a50b`](https://github.com/eslint/eslint/commit/0d6a50b41f2fe444fd222463adad48473eaf9b7d) docs: fix openjs link ([#&#8203;15917](https://github.com/eslint/eslint/issues/15917)) (Amaresh S M) - [`54910f5`](https://github.com/eslint/eslint/commit/54910f5a3bf6615f8ac03d33fd26fc1fa6dea21f) docs: display version in mobile view ([#&#8203;15909](https://github.com/eslint/eslint/issues/15909)) (Amaresh S M) #### Chores - [`da694b9`](https://github.com/eslint/eslint/commit/da694b9d7cb0247541bcabbf943d1289e0e30167) chore: avoid theme flashes ([#&#8203;15927](https://github.com/eslint/eslint/issues/15927)) (Strek) - [`f836743`](https://github.com/eslint/eslint/commit/f836743e95cb8ad3bdd4e88687dbe2f16bfade62) chore: Use build hook for docs deploy ([#&#8203;15945](https://github.com/eslint/eslint/issues/15945)) (Nicholas C. Zakas) - [`ce035e5`](https://github.com/eslint/eslint/commit/ce035e5fac632ba8d4f1860f92465f22d6b44d42) test: cleanup typos ([#&#8203;15937](https://github.com/eslint/eslint/issues/15937)) (Nick Schonning) - [`10249ad`](https://github.com/eslint/eslint/commit/10249ad1a961463b6b347be71c074951ab8e2652) chore: use addEventListener instead of addListener ([#&#8203;15923](https://github.com/eslint/eslint/issues/15923)) (Amaresh S M) - [`5f5c1fb`](https://github.com/eslint/eslint/commit/5f5c1fb1083573ea511d0dae7913651db0dca772) chore: lint eleventy config file ([#&#8203;15904](https://github.com/eslint/eslint/issues/15904)) (Milos Djermanovic) - [`8513d37`](https://github.com/eslint/eslint/commit/8513d37c725509c9e9ec1dbbc431f20d32632cf3) chore: update Rule typedefs ([#&#8203;15915](https://github.com/eslint/eslint/issues/15915)) (Milos Djermanovic) - [`55534f1`](https://github.com/eslint/eslint/commit/55534f1a7040fad94bb5726759fbb9acb60d1c24) test: ensure no-restricted-imports works with NodeJS imports ([#&#8203;15907](https://github.com/eslint/eslint/issues/15907)) (Nick Mazuk) ### [`v8.16.0`](https://github.com/eslint/eslint/releases/tag/v8.16.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.15.0...v8.16.0) #### Features - [`cab0c22`](https://github.com/eslint/eslint/commit/cab0c2287e12561d869dfcfcd1c4e14c9d6d70d5) feat: add Unicode flag suggestion in no-misleading-character-class ([#&#8203;15867](https://github.com/eslint/eslint/issues/15867)) (Milos Djermanovic) - [`38ae956`](https://github.com/eslint/eslint/commit/38ae9564a41e1d38adad55976565d85c5c981e1d) feat: check Unicode code point escapes in no-control-regex ([#&#8203;15862](https://github.com/eslint/eslint/issues/15862)) (Milos Djermanovic) - [`ee69cd3`](https://github.com/eslint/eslint/commit/ee69cd30b3551b3adebfd959a44a9a149221946a) feat: Update global variables ([#&#8203;15871](https://github.com/eslint/eslint/issues/15871)) (Sébastien Règne) #### Bug Fixes - [`3f09aab`](https://github.com/eslint/eslint/commit/3f09aab709980ca974b721de474be2dd183409a2) fix: function-paren-newline crash on "new new Foo();" ([#&#8203;15850](https://github.com/eslint/eslint/issues/15850)) (coderaiser) #### Documentation - [`050d5f4`](https://github.com/eslint/eslint/commit/050d5f4e0456ae9a9d769f4306bc0d60058b0898) docs: Static further reading links ([#&#8203;15890](https://github.com/eslint/eslint/issues/15890)) (Nicholas C. Zakas) - [`36287c0`](https://github.com/eslint/eslint/commit/36287c00d56596fbb2672cfe3f9b9dd24b2926da) docs: fix absolute paths in related rules shortcode to work from /docs ([#&#8203;15892](https://github.com/eslint/eslint/issues/15892)) (Milos Djermanovic) - [`90b6990`](https://github.com/eslint/eslint/commit/90b69901efd265fd11425540928793f1387095cc) docs: fix absolute links in rule macro to work from /docs ([#&#8203;15891](https://github.com/eslint/eslint/issues/15891)) (Milos Djermanovic) - [`f437249`](https://github.com/eslint/eslint/commit/f437249a3bedb47155d33ac753b821ae31b814fa) docs: Adjust docs site path prefix ([#&#8203;15889](https://github.com/eslint/eslint/issues/15889)) (Nicholas C. Zakas) - [`6e16025`](https://github.com/eslint/eslint/commit/6e16025e8fbffa0e1d0c977cb4b6eae30a502d9b) docs: update 'Related Rules' and 'Further Reading' in remaining rules ([#&#8203;15884](https://github.com/eslint/eslint/issues/15884)) (Milos Djermanovic) - [`1d39f69`](https://github.com/eslint/eslint/commit/1d39f698a22e2995bbfcf90b6dafd196a173092a) docs: remove confusing examples for no-mixed-operators ([#&#8203;15875](https://github.com/eslint/eslint/issues/15875)) (Milos Djermanovic) - [`3071d76`](https://github.com/eslint/eslint/commit/3071d76772c002bd7b03053be5be54da52c01242) docs: Fix some grammar issues ([#&#8203;15837](https://github.com/eslint/eslint/issues/15837)) (byodian) #### Chores - [`1768d0d`](https://github.com/eslint/eslint/commit/1768d0de58e10046ed3e54f0fa52be48ba41f12b) chore: upgrade [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).3.0 ([#&#8203;15903](https://github.com/eslint/eslint/issues/15903)) (Milos Djermanovic) - [`c686e4c`](https://github.com/eslint/eslint/commit/c686e4c4a04525118f5585fd76bdba59dddf3a97) chore: Add deploy workflow for docs site ([#&#8203;15894](https://github.com/eslint/eslint/issues/15894)) (Nicholas C. Zakas) - [`c7894cd`](https://github.com/eslint/eslint/commit/c7894cd433319e09b10a80b260a5398dac0d5dab) chore: enable some rules from eslint-plugin-unicorn internally ([#&#8203;15878](https://github.com/eslint/eslint/issues/15878)) (Bryan Mishkin) - [`ea65cb5`](https://github.com/eslint/eslint/commit/ea65cb5435162ad29559d175e68f5b6d97e6cdcc) chore: upgrade eslint-plugin-eslint-plugin@^4.2.0 ([#&#8203;15882](https://github.com/eslint/eslint/issues/15882)) (唯然) - [`cc29c69`](https://github.com/eslint/eslint/commit/cc29c696a08430fcbf202482306b8c3dbccc0257) chore: Upgrade official GitHub actions to latest versions ([#&#8203;15880](https://github.com/eslint/eslint/issues/15880)) (Darius Dzien) - [`5891c75`](https://github.com/eslint/eslint/commit/5891c7533f500110129fdea7b9b63c8a409da0bd) chore: Refactor rule docs format ([#&#8203;15869](https://github.com/eslint/eslint/issues/15869)) (Nicholas C. Zakas) ### [`v8.15.0`](https://github.com/eslint/eslint/releases/tag/v8.15.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.14.0...v8.15.0) #### Features - [`ab37d3b`](https://github.com/eslint/eslint/commit/ab37d3ba302856007beb833c34b56658a34bbb5d) feat: add `enforceInClassFields` option to no-underscore-dangle ([#&#8203;15818](https://github.com/eslint/eslint/issues/15818)) (Roberto Cestari) #### Bug Fixes - [`8bf9440`](https://github.com/eslint/eslint/commit/8bf9440ac47907ffd27aba095428908e7ddeae8a) fix: "use strict" should not trigger strict mode in ES3 ([#&#8203;15846](https://github.com/eslint/eslint/issues/15846)) (Milos Djermanovic) #### Documentation - [`28116cc`](https://github.com/eslint/eslint/commit/28116ccce4b99da3d5aa9b8994dd3652df7b1cab) docs: update AST node names link in no-restricted-syntax ([#&#8203;15843](https://github.com/eslint/eslint/issues/15843)) (Milos Djermanovic) - [`272965f`](https://github.com/eslint/eslint/commit/272965feda8adfbf5bfa0e01b37df27ce70fc9fd) docs: fix h1 heading on formatters page ([#&#8203;15834](https://github.com/eslint/eslint/issues/15834)) (Milos Djermanovic) - [`a798166`](https://github.com/eslint/eslint/commit/a7981669fffe33deaf4fbe295f660edc8ccad4cd) docs: update example for running individual rule tests ([#&#8203;15833](https://github.com/eslint/eslint/issues/15833)) (Milos Djermanovic) - [`57e732b`](https://github.com/eslint/eslint/commit/57e732be4e349470fad3e3cc44d96bf0746a598b) docs: mark `SourceCode#getJSDocComment` deprecated in working-with-rules ([#&#8203;15829](https://github.com/eslint/eslint/issues/15829)) (Milos Djermanovic) - [`9a90abf`](https://github.com/eslint/eslint/commit/9a90abf59e31247c03a24ca789cd6157504f63ed) docs: update docs directory in working-with-rules ([#&#8203;15830](https://github.com/eslint/eslint/issues/15830)) (Milos Djermanovic) - [`810adda`](https://github.com/eslint/eslint/commit/810addac9b958c03d69f5f8f21d47ff7fb4c5db6) docs: add more examples for prefer-object-spread ([#&#8203;15831](https://github.com/eslint/eslint/issues/15831)) (coderaiser) - [`06b1edb`](https://github.com/eslint/eslint/commit/06b1edb68f251558601bf68d47e6bbde693089c9) docs: clarify no-control-regex rule ([#&#8203;15808](https://github.com/eslint/eslint/issues/15808)) (Milos Djermanovic) - [`9ecd42f`](https://github.com/eslint/eslint/commit/9ecd42f36462331a0d697e74323a4d24f0cf02fc) docs: Fixed typo in code comment ([#&#8203;15812](https://github.com/eslint/eslint/issues/15812)) (Addison G) - [`de992b7`](https://github.com/eslint/eslint/commit/de992b7016e3d91092de7748f0375943ad2c77f0) docs: remove links to 2fa document ([#&#8203;15804](https://github.com/eslint/eslint/issues/15804)) (Milos Djermanovic) - [`5222659`](https://github.com/eslint/eslint/commit/52226593974fc7fcb60f1be73b165863b3d1a7fb) docs: fix 'Related Rules' heading in no-constant-binary-expression ([#&#8203;15799](https://github.com/eslint/eslint/issues/15799)) (Milos Djermanovic) - [`e70ae81`](https://github.com/eslint/eslint/commit/e70ae8116256e5b69c6eac1ed71c0fa33a8e6d7a) docs: Update README team and sponsors (ESLint Jenkins) #### Chores - [`1ba6a92`](https://github.com/eslint/eslint/commit/1ba6a926eedcfe725900ed95cf029cff02d0355a) chore: upgrade [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).2.3 ([#&#8203;15847](https://github.com/eslint/eslint/issues/15847)) (Milos Djermanovic) - [`8167aa7`](https://github.com/eslint/eslint/commit/8167aa7d43d00f1a0e8400f73c0dd66798fd4c56) chore: bump version of minimatch due to security issue PRISMA-2022-0039 ([#&#8203;15774](https://github.com/eslint/eslint/issues/15774)) (Jan Opravil) - [`b8995a4`](https://github.com/eslint/eslint/commit/b8995a40087f3a1e4e87c239951f91ddaac73571) chore: Implement docs site ([#&#8203;15815](https://github.com/eslint/eslint/issues/15815)) (Nicholas C. Zakas) - [`6494e3e`](https://github.com/eslint/eslint/commit/6494e3e8916f0a07226bdd8c8f6b2c5f0884bf6b) chore: update link in `codeql-analysis.yml` ([#&#8203;15817](https://github.com/eslint/eslint/issues/15817)) (Milos Djermanovic) - [`36503ec`](https://github.com/eslint/eslint/commit/36503ec8b6fca292be8e584792fc2ad056df4d2f) chore: enable no-constant-binary-expression in eslint-config-eslint ([#&#8203;15807](https://github.com/eslint/eslint/issues/15807)) (唯然) ### [`v8.14.0`](https://github.com/eslint/eslint/releases/tag/v8.14.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.13.0...v8.14.0) #### Features - [`ab6363d`](https://github.com/eslint/eslint/commit/ab6363dffb9dfd9c6a9abb5292fc712745fe7a64) feat: Add rule no-constant-binary-expression ([#&#8203;15296](https://github.com/eslint/eslint/issues/15296)) (Jordan Eldredge) #### Bug Fixes - [`35fa1dd`](https://github.com/eslint/eslint/commit/35fa1dd8932ef3e55c37ec0e4b73b5d88f187e69) fix: allow project paths to have URL-encoded characters ([#&#8203;15795](https://github.com/eslint/eslint/issues/15795)) (Milos Djermanovic) - [`413f1d5`](https://github.com/eslint/eslint/commit/413f1d55f0ad05b6fe75bdde6df423253806797d) fix: update `astUtils.isDirectiveComment` with `globals` and `exported` ([#&#8203;15775](https://github.com/eslint/eslint/issues/15775)) (Milos Djermanovic) #### Build Related - [`c2407e8`](https://github.com/eslint/eslint/commit/c2407e81caf2d50325d9aa09bae70d38615ddf2c) build: add node v18 ([#&#8203;15791](https://github.com/eslint/eslint/issues/15791)) (唯然) #### Chores - [`735458c`](https://github.com/eslint/eslint/commit/735458cc96d4ecdb4ed97448b63ed4a579890b13) chore: add static frontmatter to no-constant-binary-expression docs ([#&#8203;15798](https://github.com/eslint/eslint/issues/15798)) (Milos Djermanovic) - [`db28f2c`](https://github.com/eslint/eslint/commit/db28f2c9ea6b654f615daf2f7e6f1a2034b85062) chore: Add static frontmatter to docs ([#&#8203;15782](https://github.com/eslint/eslint/issues/15782)) (Nicholas C. Zakas) - [`3bca59e`](https://github.com/eslint/eslint/commit/3bca59e30de73fb82d4def262ae1df72089df80d) chore: markdownlint autofix on commit ([#&#8203;15783](https://github.com/eslint/eslint/issues/15783)) (Nicholas C. Zakas) ### [`v8.13.0`](https://github.com/eslint/eslint/releases/tag/v8.13.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.12.0...v8.13.0) #### Features - [`274acbd`](https://github.com/eslint/eslint/commit/274acbd56537f6b8199da1ac9e7bced74ae81b56) feat: fix no-eval logic for `this` in arrow functions ([#&#8203;15755](https://github.com/eslint/eslint/issues/15755)) (Milos Djermanovic) #### Bug Fixes - [`97b57ae`](https://github.com/eslint/eslint/commit/97b57ae3ebae9150456f5516c64b6d2ba75b4038) fix: invalid operator in operator-assignment messages ([#&#8203;15759](https://github.com/eslint/eslint/issues/15759)) (Milos Djermanovic) #### Documentation - [`c32482e`](https://github.com/eslint/eslint/commit/c32482e4fd4ad09f3d5fd960dc1fb7c1b4e56f23) docs: Typo in space-infix-ops docs ([#&#8203;15754](https://github.com/eslint/eslint/issues/15754)) (kmin-jeong) - [`f2c2d35`](https://github.com/eslint/eslint/commit/f2c2d350425268efa4b78ee6e0a2df8860e0efad) docs: disambiguate types `FormatterFunction` and `LoadedFormatter` ([#&#8203;15727](https://github.com/eslint/eslint/issues/15727)) (Francesco Trotta) #### Chores - [`bb4c0d5`](https://github.com/eslint/eslint/commit/bb4c0d530a231a8a14ed70ad61c06e284bbaaef0) chore: Refactor docs to work with docs.eslint.org ([#&#8203;15744](https://github.com/eslint/eslint/issues/15744)) (Nicholas C. Zakas) - [`d36f12f`](https://github.com/eslint/eslint/commit/d36f12f71b3e4f9e9552f1054d7a75be4dc03671) chore: remove `lib/init` from eslint config ([#&#8203;15748](https://github.com/eslint/eslint/issues/15748)) (Milos Djermanovic) - [`a59a4e6`](https://github.com/eslint/eslint/commit/a59a4e6e9217b3cc503c0a702b9e3b02b20b980d) chore: replace `trimLeft`/`trimRight` with `trimStart`/`trimEnd` ([#&#8203;15750](https://github.com/eslint/eslint/issues/15750)) (Milos Djermanovic) ### [`v8.12.0`](https://github.com/eslint/eslint/releases/tag/v8.12.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.11.0...v8.12.0) #### Features - [`685a67a`](https://github.com/eslint/eslint/commit/685a67a62bdea19ca9ce12008a034b8d31162422) feat: fix logic for top-level `this` in no-invalid-this and no-eval ([#&#8203;15712](https://github.com/eslint/eslint/issues/15712)) (Milos Djermanovic) #### Chores - [`18f5e05`](https://github.com/eslint/eslint/commit/18f5e05bce10503186989d81ca484abb185a2c9d) chore: padding-line-between-statements remove useless `additionalItems` ([#&#8203;15706](https://github.com/eslint/eslint/issues/15706)) (Martin Sadovy) ### [`v8.11.0`](https://github.com/eslint/eslint/releases/tag/v8.11.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.10.0...v8.11.0) #### Features - [`800bd25`](https://github.com/eslint/eslint/commit/800bd258e4484de24323809ebbf13fc72fcbabac) feat: add `destructuredArrayIgnorePattern` option in `no-unused-vars` ([#&#8203;15649](https://github.com/eslint/eslint/issues/15649)) (Nitin Kumar) - [`8933fe7`](https://github.com/eslint/eslint/commit/8933fe7afcc7cdd99cc0efccc08e8fe3a5e2996f) feat: Catch `undefined` and `Boolean()` in no-constant-condition ([#&#8203;15613](https://github.com/eslint/eslint/issues/15613)) (Jordan Eldredge) - [`f90fd9d`](https://github.com/eslint/eslint/commit/f90fd9d779a5b28dfd15ca3f993e6b3cd09e71e8) feat: Add ESLint favicon to the HTML report document ([#&#8203;15671](https://github.com/eslint/eslint/issues/15671)) (Mahdi Hosseinzadeh) - [`57b8a57`](https://github.com/eslint/eslint/commit/57b8a57be75ed2379fe39c93168175090dfe4cdd) feat: `valid-typeof` always ban `undefined` ([#&#8203;15635](https://github.com/eslint/eslint/issues/15635)) (Zzzen) #### Bug Fixes - [`6814922`](https://github.com/eslint/eslint/commit/68149221637faa8e4f2718773e751126b7ae8ac9) fix: escaping for square brackets in ignore patterns ([#&#8203;15666](https://github.com/eslint/eslint/issues/15666)) (Milos Djermanovic) - [`c178ce7`](https://github.com/eslint/eslint/commit/c178ce7044b5c19db2f4aabfdbe58003db5062fd) fix: extend the autofix range in comma-dangle to ensure the last element ([#&#8203;15669](https://github.com/eslint/eslint/issues/15669)) (Milos Djermanovic) #### Documentation - [`c481cec`](https://github.com/eslint/eslint/commit/c481cecacc728618832b4044374e445d332b4381) docs: add fast-eslint-8 to atom integrations (userguide) ([#&#8203;15695](https://github.com/eslint/eslint/issues/15695)) (db developer) - [`d2255db`](https://github.com/eslint/eslint/commit/d2255db24526de604b4a34e90c870158c4ea277e) docs: Add clarification about `eslint-enable` ([#&#8203;15680](https://github.com/eslint/eslint/issues/15680)) (dosisod) - [`8b9433c`](https://github.com/eslint/eslint/commit/8b9433c90c842d8ec06f633df7fbba6ac6d5036b) docs: add object pattern to first section of computed-property-spacing ([#&#8203;15679](https://github.com/eslint/eslint/issues/15679)) (Milos Djermanovic) - [`de800c3`](https://github.com/eslint/eslint/commit/de800c3c0b8e3f85921b40eaa97134fef12effa2) docs: link to minimatch docs added. ([#&#8203;15688](https://github.com/eslint/eslint/issues/15688)) (Gaurav Tewari) - [`8f675b1`](https://github.com/eslint/eslint/commit/8f675b1f7f6c0591abe36c20410d226bd9e1faa6) docs: sort-imports add single named import example ([#&#8203;15675](https://github.com/eslint/eslint/issues/15675)) (Arye Eidelman) #### Chores - [`385c9ad`](https://github.com/eslint/eslint/commit/385c9ad685b24b1821ec4085596b3aad299fb751) chore: rm trailing space in docs ([#&#8203;15689](https://github.com/eslint/eslint/issues/15689)) (唯然) ### [`v8.10.0`](https://github.com/eslint/eslint/releases/tag/v8.10.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.9.0...v8.10.0) #### Features - [`6e2c325`](https://github.com/eslint/eslint/commit/6e2c325324479df1b3f868cf00a529b67d2c3d82) feat: Add `ignoreOnInitialization` option to no-shadow rule ([#&#8203;14963](https://github.com/eslint/eslint/issues/14963)) (Soufiane Boutahlil) - [`115cae5`](https://github.com/eslint/eslint/commit/115cae54125b9ef509af90620f51d4a692b51ab7) feat: `--debug` prints time it takes to parse a file ([#&#8203;15609](https://github.com/eslint/eslint/issues/15609)) (Bartek Iwańczuk) - [`345e70d`](https://github.com/eslint/eslint/commit/345e70d9d6490fb12b18953f56f3cea28fd61d83) feat: Add `onlyOneSimpleParam` option to no-confusing-arrow rule ([#&#8203;15566](https://github.com/eslint/eslint/issues/15566)) (Gautam Arora) #### Bug Fixes - [`cdc5802`](https://github.com/eslint/eslint/commit/cdc58025d9a8b522f516c3665d225b69a76c4ee1) fix: Avoid `__dirname` for built-in configs ([#&#8203;15616](https://github.com/eslint/eslint/issues/15616)) (DoZerg) - [`ee7c5d1`](https://github.com/eslint/eslint/commit/ee7c5d14a2cb5ce352d1851cec858b942572d2cc) fix: false positive in `camelcase` with combined properties ([#&#8203;15581](https://github.com/eslint/eslint/issues/15581)) (Nitin Kumar) #### Documentation - [`1005bd5`](https://github.com/eslint/eslint/commit/1005bd525a08208fee124149a6ad4cf9da20d7d5) docs: update CLA information ([#&#8203;15630](https://github.com/eslint/eslint/issues/15630)) (Nitin Kumar) - [`5d65c3b`](https://github.com/eslint/eslint/commit/5d65c3bc1e514ed07406c502437a1642913b27ed) docs: Fix typo in `no-irregular-whitespace` ([#&#8203;15634](https://github.com/eslint/eslint/issues/15634)) (Ryota Sekiya) - [`b93af98`](https://github.com/eslint/eslint/commit/b93af98b3c417225a027cabc964c38e779adb945) docs: add links between rules about whitespace around block curly braces ([#&#8203;15625](https://github.com/eslint/eslint/issues/15625)) (Milos Djermanovic) - [`ebc0460`](https://github.com/eslint/eslint/commit/ebc0460c411ea608ba5bab05829a1fd122fe21e8) docs: update babel links ([#&#8203;15624](https://github.com/eslint/eslint/issues/15624)) (Milos Djermanovic) #### Chores - [`7cec74e`](https://github.com/eslint/eslint/commit/7cec74e842b6e51da1b00a9e9b2c9da97dd17362) chore: upgrade [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).2.0 ([#&#8203;15648](https://github.com/eslint/eslint/issues/15648)) (Milos Djermanovic) - [`11c8580`](https://github.com/eslint/eslint/commit/11c8580de0dcedd5577cffe2b23d23a322cc97df) chore: read `ESLINT_MOCHA_TIMEOUT` env var in Makefile.js ([#&#8203;15626](https://github.com/eslint/eslint/issues/15626)) (Piggy) - [`bfaa548`](https://github.com/eslint/eslint/commit/bfaa5488bbc794c0d160fb55bd277a2c618953b2) test: add integration tests with built-in configs ([#&#8203;15612](https://github.com/eslint/eslint/issues/15612)) (Milos Djermanovic) - [`39a2fb3`](https://github.com/eslint/eslint/commit/39a2fb3f448a7096bfb2fc172fef6cc3f6a7ed3b) perf: fix lazy loading of core rules ([#&#8203;15606](https://github.com/eslint/eslint/issues/15606)) (Milos Djermanovic) - [`3fc9196`](https://github.com/eslint/eslint/commit/3fc919626ef6a00e35bb6b559b60a1e89cf6ca1a) chore: include `tests/conf` in test runs ([#&#8203;15610](https://github.com/eslint/eslint/issues/15610)) (Milos Djermanovic) ### [`v8.9.0`](https://github.com/eslint/eslint/releases/tag/v8.9.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.8.0...v8.9.0) #### Features - [`68f64a9`](https://github.com/eslint/eslint/commit/68f64a9218341e5e9d83270c72587e1b413846de) feat: update eslint-scope to ignore `"use strict"` directives in ES3 ([#&#8203;15595](https://github.com/eslint/eslint/issues/15595)) (Milos Djermanovic) - [`db57639`](https://github.com/eslint/eslint/commit/db576396d20f5e31af1a90f8e5d88e08284a1672) feat: add `es2016`, `es2018`, `es2019`, and `es2022` environments ([#&#8203;15587](https://github.com/eslint/eslint/issues/15587)) (Milos Djermanovic) - [`2dc38aa`](https://github.com/eslint/eslint/commit/2dc38aa653f1d5137a9abf82024c67a11620bb7c) feat: fix bug with arrow function return types in function-paren-newline ([#&#8203;15541](https://github.com/eslint/eslint/issues/15541)) (Milos Djermanovic) - [`6f940c3`](https://github.com/eslint/eslint/commit/6f940c3ce715327f282c197d0f71b91848e5d83d) feat: Implement FlatRuleTester ([#&#8203;15519](https://github.com/eslint/eslint/issues/15519)) (Nicholas C. Zakas) #### Documentation - [`570a036`](https://github.com/eslint/eslint/commit/570a03699c5abfbcde39bb00fba39329695771e5) docs: add `one-var` example with `for-loop` initializer ([#&#8203;15596](https://github.com/eslint/eslint/issues/15596)) (Milos Djermanovic) - [`417191d`](https://github.com/eslint/eslint/commit/417191dff0dbfa353675c409e25f27f578ee1559) docs: Remove the $ prefix in terminal commands ([#&#8203;15565](https://github.com/eslint/eslint/issues/15565)) (Andreas Lewis) - [`389ff34`](https://github.com/eslint/eslint/commit/389ff34e26cb8ebad49e5ace0280a1f859f8d7ca) docs: add missing `Variable#scope` property in the scope manager docs ([#&#8203;15571](https://github.com/eslint/eslint/issues/15571)) (Milos Djermanovic) - [`f63795d`](https://github.com/eslint/eslint/commit/f63795dc710f6394d884932034a3e0cbe48f4ad2) docs: no-eval replace dead link with working one ([#&#8203;15568](https://github.com/eslint/eslint/issues/15568)) (rasenplanscher) - [`0383591`](https://github.com/eslint/eslint/commit/0383591a6cd7083455af9e34fa9333da7fed46bf) docs: Remove old Markdown issue template ([#&#8203;15556](https://github.com/eslint/eslint/issues/15556)) (Brandon Mills) - [`a8dd5a2`](https://github.com/eslint/eslint/commit/a8dd5a286bcb68595b85cd29490e081251a2c3c7) docs: add 'when not to use it' section in no-duplicate-case docs ([#&#8203;15563](https://github.com/eslint/eslint/issues/15563)) (Milos Djermanovic) - [`1ad439e`](https://github.com/eslint/eslint/commit/1ad439ed1d6c4ee50183c8f5d146a771e6c1be4c) docs: add missed verb in docs ([#&#8203;15550](https://github.com/eslint/eslint/issues/15550)) (Jeff Mosawy) #### Chores - [`586d45c`](https://github.com/eslint/eslint/commit/586d45c54b8468fb23376b7b2aedf984cf701cc2) chore: Upgrade to espree@9.3.1 ([#&#8203;15600](https://github.com/eslint/eslint/issues/15600)) (Milos Djermanovic) - [`623e1e2`](https://github.com/eslint/eslint/commit/623e1e28643381025b393a379493d9baea9b4869) chore: Upgrade to eslint-visitor-keys@3.3.0 ([#&#8203;15599](https://github.com/eslint/eslint/issues/15599)) (Milos Djermanovic) - [`355b23d`](https://github.com/eslint/eslint/commit/355b23d0c4e050be4e53292f552a47c10ec6e00e) chore: fix outdated link to Code of Conduct in PR template ([#&#8203;15578](https://github.com/eslint/eslint/issues/15578)) (Rich Trott) - [`b10fef2`](https://github.com/eslint/eslint/commit/b10fef25c99134d514fec4ddde19302661db5974) ci: use Node 16 for browser test ([#&#8203;15569](https://github.com/eslint/eslint/issues/15569)) (Milos Djermanovic) - [`92f89fb`](https://github.com/eslint/eslint/commit/92f89fb0647fef10468fd70d6782a845d75330e3) chore: suggest demo link in bug report template ([#&#8203;15557](https://github.com/eslint/eslint/issues/15557)) (Brandon Mills) ### [`v8.8.0`](https://github.com/eslint/eslint/releases/tag/v8.8.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.7.0...v8.8.0) #### Features - [`5d60812`](https://github.com/eslint/eslint/commit/5d60812d440762dff72420714273c714c4c5d074) feat: implement rfc 2021-suppression-support ([#&#8203;15459](https://github.com/eslint/eslint/issues/15459)) (Yiwei Ding) #### Documentation - [`5769cc2`](https://github.com/eslint/eslint/commit/5769cc23eca7197bb5993a0201cc269a056d4dfd) docs: fix relative link ([#&#8203;15544](https://github.com/eslint/eslint/issues/15544)) (Nick Schonning) - [`ccbc35f`](https://github.com/eslint/eslint/commit/ccbc35ff3ebc89bb524a8fd8dc60df9408e58275) docs: trimmed rules h1s to just be rule names ([#&#8203;15514](https://github.com/eslint/eslint/issues/15514)) (Josh Goldberg) - [`851f1f1`](https://github.com/eslint/eslint/commit/851f1f18bd1a5da32c1b645bfcb28fadc627ad9e) docs: fixed typo in comment ([#&#8203;15531](https://github.com/eslint/eslint/issues/15531)) (Jiapei Liang) - [`7d7af55`](https://github.com/eslint/eslint/commit/7d7af55759eab2328aeeb71098d91f4a5e41b269) docs: address upcoming violation of markdownlint rule MD050/strong-style ([#&#8203;15529](https://github.com/eslint/eslint/issues/15529)) (David Anson) ### [`v8.7.0`](https://github.com/eslint/eslint/releases/tag/v8.7.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.6.0...v8.7.0) #### Features - [`19ad061`](https://github.com/eslint/eslint/commit/19ad061290e1e97f760cfdce90a651cea9042c32) feat: no-restricted-imports support casing ([#&#8203;15439](https://github.com/eslint/eslint/issues/15439)) (gfyoung) - [`564ecdb`](https://github.com/eslint/eslint/commit/564ecdb992c6e236fa3ca903f8b2a645afc32d7e) feat: Support arbitrary module namespace names in no-restricted-imports ([#&#8203;15491](https://github.com/eslint/eslint/issues/15491)) (Milos Djermanovic) - [`968a02a`](https://github.com/eslint/eslint/commit/968a02af455f76446269afe07191c6aa37d44a88) feat: Support arbitrary module namespace names in no-useless-rename ([#&#8203;15493](https://github.com/eslint/eslint/issues/15493)) (Milos Djermanovic) - [`0d2b9a6`](https://github.com/eslint/eslint/commit/0d2b9a6dfa544f7ab084425eafc90a90aa14bcae) feat: move `eslint --init` to [@&#8203;eslint/create-config](https://github.com/eslint/create-config) ([#&#8203;15150](https://github.com/eslint/eslint/issues/15150)) (唯然) - [`127f524`](https://github.com/eslint/eslint/commit/127f524337f92dd72d36e71e646c91c9715ad444) feat: false negative with `property` option in `id-match` ([#&#8203;15474](https://github.com/eslint/eslint/issues/15474)) (Nitin Kumar) - [`359b2c1`](https://github.com/eslint/eslint/commit/359b2c18233cb48f7dae9433a877e5727fab3411) feat: Support arbitrary module namespace names in the camelcase rule ([#&#8203;15490](https://github.com/eslint/eslint/issues/15490)) (Milos Djermanovic) - [`3549571`](https://github.com/eslint/eslint/commit/3549571702dc3e0d9a4d3de615adb6abb13859c4) feat: Support arbitrary module namespace names in the quotes rule ([#&#8203;15479](https://github.com/eslint/eslint/issues/15479)) (Milos Djermanovic) - [`5563c45`](https://github.com/eslint/eslint/commit/5563c454901aafd54e01521e923cdcbaf051b08d) feat: Support arbitrary module namespace names in keyword-spacing ([#&#8203;15481](https://github.com/eslint/eslint/issues/15481)) (Milos Djermanovic) - [`fd3683f`](https://github.com/eslint/eslint/commit/fd3683f2f5ead78a2444163cab6849784a966a0a) feat: Support arbitrary module namespace names in no-restricted-exports ([#&#8203;15478](https://github.com/eslint/eslint/issues/15478)) (Milos Djermanovic) #### Bug Fixes - [`a8db9a5`](https://github.com/eslint/eslint/commit/a8db9a597672d3f9122f1cc8de8dfeb6a7f6aeac) fix: no-invalid-this false positive in class field initializer ([#&#8203;15495](https://github.com/eslint/eslint/issues/15495)) (Milos Djermanovic) - [`02d6426`](https://github.com/eslint/eslint/commit/02d642690282189664b9551e02fb7ff0e4b5c4fb) fix: Correctly consume RuleTester statics ([#&#8203;15507](https://github.com/eslint/eslint/issues/15507)) (Brad Zacher) - [`db15802`](https://github.com/eslint/eslint/commit/db15802ec4d129c89e563a4bf43ec610292695ab) fix: Add property `fatalErrorCount` to ignored file results ([#&#8203;15520](https://github.com/eslint/eslint/issues/15520)) (Francesco Trotta) - [`03ac8cf`](https://github.com/eslint/eslint/commit/03ac8cfc773279c01a62897692160f9a883ff4f5) fix: Prevent false positives with no-constant-condition ([#&#8203;15486](https://github.com/eslint/eslint/issues/15486)) (Jordan Eldredge) #### Documentation - [`f50f849`](https://github.com/eslint/eslint/commit/f50f849d2d2d92f28a944846cda209eaf624b9f4) docs: Update CLI docs to prefer local install ([#&#8203;15513](https://github.com/eslint/eslint/issues/15513)) (Nicholas C. Zakas) - [`0469eb1`](https://github.com/eslint/eslint/commit/0469eb1028e82e71a2da8608a1b8864dc3f47f24) docs: Update shell code fences for new website ([#&#8203;15522](https://github.com/eslint/eslint/issues/15522)) (Olga) #### Chores - [`369fb1b`](https://github.com/eslint/eslint/commit/369fb1b066279d761e59502111c2580834a41648) chore: Upgrade to eslint-visitor-keys@3.2.0 ([#&#8203;15526](https://github.com/eslint/eslint/issues/15526)) (Brandon Mills) - [`ba6317b`](https://github.com/eslint/eslint/commit/ba6317b4031c9f782b317bd1d9913e70b5625f28) ci: remove master branch from CI configs ([#&#8203;15501](https://github.com/eslint/eslint/issues/15501)) (Milos Djermanovic) - [`79b6340`](https://github.com/eslint/eslint/commit/79b6340d6ced0ad62628de6e51dce18d50a5be9f) chore: fixed typo in client-Engine ([#&#8203;15497](https://github.com/eslint/eslint/issues/15497)) (Abhay Gupta) - [`6278281`](https://github.com/eslint/eslint/commit/6278281fab5e1a9623c32ace62a050561e1c0a21) chore: switch `new syntax` issue template to forms ([#&#8203;15480](https://github.com/eslint/eslint/issues/15480)) (Nitin Kumar) ### [`v8.6.0`](https://github.com/eslint/eslint/releases/tag/v8.6.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.5.0...v8.6.0) #### Features - [`6802a54`](https://github.com/eslint/eslint/commit/6802a54837ea008bef4d5ae11522941693ba5ef6) feat: handle logical assignment in no-self-assign ([#&#8203;14152](https://github.com/eslint/eslint/issues/14152)) (Zzzen) - [`3b38018`](https://github.com/eslint/eslint/commit/3b38018ef5cb004ad5bc011de726bd2df2eb2f3f) feat: allow to define `eslint-disable-next-line` in multiple lines ([#&#8203;15436](https://github.com/eslint/eslint/issues/15436)) (Nitin Kumar) - [`9d6fe5a`](https://github.com/eslint/eslint/commit/9d6fe5a6b65f397bafc5eb0a995e96717cdc9b53) feat: false negative with `onlyDeclarations` + `properties` in id-match ([#&#8203;15431](https://github.com/eslint/eslint/issues/15431)) (Nitin Kumar) #### Documentation - [`6c4dee2`](https://github.com/eslint/eslint/commit/6c4dee2e87dac8d0751ce2426ded651ed0986112) docs: Document homedir is a configuration root ([#&#8203;15469](https://github.com/eslint/eslint/issues/15469)) (Bas Bosman) - [`51c37b1`](https://github.com/eslint/eslint/commit/51c37b118aed9c0d7a0efd40c491efca04c82ef9) docs: consistency changes ([#&#8203;15404](https://github.com/eslint/eslint/issues/15404)) (Bas Bosman) - [`775d181`](https://github.com/eslint/eslint/commit/775d18138244a28ebe1cb92849cd0f4e8cd27672) docs: Mention character classes in no-useless-escape ([#&#8203;15421](https://github.com/eslint/eslint/issues/15421)) (Sebastian Simon) #### Chores - [`3a384fc`](https://github.com/eslint/eslint/commit/3a384fc287cebb7be5fe5ed95497d578437a503a) chore: Upgrade espree to 9.3.0 ([#&#8203;15473](https://github.com/eslint/eslint/issues/15473)) (Brandon Mills) - [`1443cc2`](https://github.com/eslint/eslint/commit/1443cc2fc8785157936b864258924fe9bcd23210) chore: Update blogpost.md.ejs ([#&#8203;15468](https://github.com/eslint/eslint/issues/15468)) (Nicholas C. Zakas) - [`28e907a`](https://github.com/eslint/eslint/commit/28e907a4ca05a026d156f814f4118f8fe713e99d) refactor: remove unused parameter in `linter.js` ([#&#8203;15451](https://github.com/eslint/eslint/issues/15451)) (Milos Djermanovic) - [`eaa08d3`](https://github.com/eslint/eslint/commit/eaa08d3055b195bce59cc96bb63ac29038cd7c7d) test: add tests for `allowReserved` parser option with flat config ([#&#8203;15450](https://github.com/eslint/eslint/issues/15450)) (Milos Djermanovic) ### [`v8.5.0`](https://github.com/eslint/eslint/releases/tag/v8.5.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.4.1...v8.5.0) #### Features - [`94e77a6`](https://github.com/eslint/eslint/commit/94e77a693fd5124c9057320310b41e92567d7e76) feat: Suggestions support for `prefer-regex-literals` ([#&#8203;15077](https://github.com/eslint/eslint/issues/15077)) (Yash Singh) - [`eafaf52`](https://github.com/eslint/eslint/commit/eafaf52464c01072fcf7be2bd2d91cd0b3ae67d0) feat: add `prefer-object-has-own` rule ([#&#8203;15346](https://github.com/eslint/eslint/issues/15346)) (Nitin Kumar) #### Bug Fixes - [`7d832d4`](https://github.com/eslint/eslint/commit/7d832d4ad55f3c987aca8d858809cbcb77697648) fix: improve `prefer-template` fixer ([#&#8203;15230](https://github.com/eslint/eslint/issues/15230)) (Nitin Kumar) - [`981fb48`](https://github.com/eslint/eslint/commit/981fb48991448bec171d7d4332d7dc514252f83f) fix: do not report global references in `id-match` rule ([#&#8203;15420](https://github.com/eslint/eslint/issues/15420)) (Nitin Kumar) - [`f13d4a6`](https://github.com/eslint/eslint/commit/f13d4a6cf7c7ff6160be7426fc6fe02e3e37a0b7) fix: improve autofix of `prefer-object-has-own` ([#&#8203;15419](https://github.com/eslint/eslint/issues/15419)) (Nitin Kumar) - [`f4559a0`](https://github.com/eslint/eslint/commit/f4559a0f7150ad7494658bd5ea846cfca5073caf) fix: add helpful message when test case has non-string code/name ([#&#8203;15425](https://github.com/eslint/eslint/issues/15425)) (Bryan Mishkin) #### Documentation - [`314c84c`](https://github.com/eslint/eslint/commit/314c84c1b83b32e75587ce7a77130eac7e2a8f49) docs: add an incorrect code example in for-direction ([#&#8203;15434](https://github.com/eslint/eslint/issues/15434)) (Holger Jeromin) - [`3928175`](https://github.com/eslint/eslint/commit/3928175d01c6ac2b37147b3256c56df8faf2c6c4) docs: add destructuring examples for `computed-property-spacing` ([#&#8203;15423](https://github.com/eslint/eslint/issues/15423)) (Nitin Kumar) - [`a53e59e`](https://github.com/eslint/eslint/commit/a53e59eab7da52e3df095a679a6fdab74a7bce6f) docs: add more examples for `array-element-newline` rule ([#&#8203;15427](https://github.com/eslint/eslint/issues/15427)) (Nitin Kumar) - [`74cf0a0`](https://github.com/eslint/eslint/commit/74cf0a040e1a83990d8d7eb57e1f5ce919a11ebe) docs: update CLA info ([#&#8203;15370](https://github.com/eslint/eslint/issues/15370)) (Nitin Kumar) - [`e84195e`](https://github.com/eslint/eslint/commit/e84195ea39b5cf54d7a551c62671af80b859f1ac) docs: fix heading level for an option in `class-methods-use-this` rule ([#&#8203;15399](https://github.com/eslint/eslint/issues/15399)) (Takuya Fukuju) #### Chores - [`225f211`](https://github.com/eslint/eslint/commit/225f2111ebcfc6bcd2d475f5261c85eb00fb0191) test: add destructuring test cases for `computed-property-spacing` ([#&#8203;15424](https://github.com/eslint/eslint/issues/15424)) (Nitin Kumar) - [`f2c7ba6`](https://github.com/eslint/eslint/commit/f2c7ba6c34c8943dc24a1c41317d536c1a63cb36) ci: use node v16 for `macOS` and `windows` jobs ([#&#8203;15418](https://github.com/eslint/eslint/issues/15418)) (Nitin Kumar) ### [`v8.4.1`](https://github.com/eslint/eslint/releases/tag/v8.4.1) [Compare Source](https://github.com/eslint/eslint/compare/v8.4.0...v8.4.1) #### Bug Fixes - [`234e3d9`](https://github.com/eslint/eslint/commit/234e3d98eeab8956cefb14c982b9c348c21bb2d9) fix: revert changes to reported locations in max-lines-per-function ([#&#8203;15397](https://github.com/eslint/eslint/issues/15397)) (Milos Djermanovic) #### Documentation - [`fa4d483`](https://github.com/eslint/eslint/commit/fa4d4830a0e77f92154079ada17ffb893ce64232) docs: fix typo in example for `sort-keys` rule ([#&#8203;15393](https://github.com/eslint/eslint/issues/15393)) (Nitin Kumar) ### [`v8.4.0`](https://github.com/eslint/eslint/releases/tag/v8.4.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.3.0...v8.4.0) #### Features - [`5771663`](https://github.com/eslint/eslint/commit/5771663e8d3e86fec9454ee0af439c6989506bf3) feat: add `allowReserved` parser option ([#&#8203;15387](https://github.com/eslint/eslint/issues/15387)) (Milos Djermanovic) - [`32ac37a`](https://github.com/eslint/eslint/commit/32ac37a76b2e009a8f106229bc7732671d358189) feat: Flat config support in Linter (refs [#&#8203;13481](https://github.com/eslint/eslint/issues/13481)) ([#&#8203;15185](https://github.com/eslint/eslint/issues/15185)) (Nicholas C. Zakas) - [`d041f34`](https://github.com/eslint/eslint/commit/d041f345cdf0306f15faa2f305fe1d21ef137eb1) feat: Treat Class/New Expressions as truthy in no-constant-condition ([#&#8203;15326](https://github.com/eslint/eslint/issues/15326)) (Jordan Eldredge) - [`8f44cf5`](https://github.com/eslint/eslint/commit/8f44cf505765b663e371412ab57f0f1dbbe78513) feat: report only lines that exceed the limit in max-lines-per-function ([#&#8203;15140](https://github.com/eslint/eslint/issues/15140)) (Sneh Khatri) - [`808ad35`](https://github.com/eslint/eslint/commit/808ad35f204c838cd5eb8d766807dc43692f42f9) feat: pass cwd to formatters (refs [eslint/rfcs#&#8203;57](https://github.com/eslint/rfcs/issues/57)) ([#&#8203;13392](https://github.com/eslint/eslint/issues/13392)) (Toru Nagashima) - [`f1b7499`](https://github.com/eslint/eslint/commit/f1b7499a5162d3be918328ce496eb80692353a5a) feat: support async formatters ([#&#8203;15243](https://github.com/eslint/eslint/issues/15243)) (MO) #### Bug Fixes - [`4940cc5`](https://github.com/eslint/eslint/commit/4940cc5c4903a691fe51d409137dd573c4c7706e) fix: mark --rulesdir option as deprecated in CLI docs ([#&#8203;15310](https://github.com/eslint/eslint/issues/15310)) (Kevin Partington) #### Documentation - [`54deec5`](https://github.com/eslint/eslint/commit/54deec56bc25d516becaf767769ee7543f491d62) docs: update integrations.md ([#&#8203;15380](https://github.com/eslint/eslint/issues/15380)) (Vlad Sholokhov) - [`fa0423a`](https://github.com/eslint/eslint/commit/fa0423af7f8453f6c97b915b3b026f258b76a600) docs: fix typo in PR template ([#&#8203;15365](https://github.com/eslint/eslint/issues/15365)) (Nitin Kumar) - [`e233920`](https://github.com/eslint/eslint/commit/e233920857e282ba22116ad5f1dcc6dfabc8ef5b) docs: enable a few more markdownlint rules and fix violations ([#&#8203;15368](https://github.com/eslint/eslint/issues/15368)) (Bryan Mishkin) - [`632176d`](https://github.com/eslint/eslint/commit/632176dc43180ea4e7f99da429fee3ee3814a04d) docs: Dedent needlessly indented example in getter-return docs ([#&#8203;15363](https://github.com/eslint/eslint/issues/15363)) (Jordan Eldredge) - [`4497e88`](https://github.com/eslint/eslint/commit/4497e880248c24dc19eea8a5466555b847c0c7eb) docs: Update release notes blog post template ([#&#8203;15285](https://github.com/eslint/eslint/issues/15285)) (Nicholas C. Zakas) #### Chores - [`efede90`](https://github.com/eslint/eslint/commit/efede90d59edc5cca9cd739df7e98f1ff00ca37d) chore: upgrade [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).0.5 ([#&#8203;15389](https://github.com/eslint/eslint/issues/15389)) (Milos Djermanovic) - [`0b8c846`](https://github.com/eslint/eslint/commit/0b8c846c77234125fbb211980bc1e62dc8791513) chore: fix update-readme to avoid multiple consecutive blank lines ([#&#8203;15375](https://github.com/eslint/eslint/issues/15375)) (Milos Djermanovic) - [`94b2a8b`](https://github.com/eslint/eslint/commit/94b2a8b3d1f7d139dd6b06216a64727b7d5f009b) chore: Use default Chromium binary in M1 Mac tests ([#&#8203;15371](https://github.com/eslint/eslint/issues/15371)) (Brandon Mills) - [`ba58d94`](https://github.com/eslint/eslint/commit/ba58d94cb51d4d2644c024446d5750eaf4853129) ci: use node `v16` for Verify Files ([#&#8203;15364](https://github.com/eslint/eslint/issues/15364)) (Nitin Kumar) - [`1e32ee5`](https://github.com/eslint/eslint/commit/1e32ee591e978188b121604d0af9cbc04a50a3b5) chore: add jsdoc type annotation to rules ([#&#8203;15291](https://github.com/eslint/eslint/issues/15291)) (Bryan Mishkin) ### [`v8.3.0`](https://github.com/eslint/eslint/releases/tag/v8.3.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.2.0...v8.3.0) #### Features - [`60b0a29`](https://github.com/eslint/eslint/commit/60b0a292efd1b9cdc318b1e88a0cb7bbf14860b1) feat: add `allowProperties` option to require-atomic-updates ([#&#8203;15238](https://github.com/eslint/eslint/issues/15238)) (Milos Djermanovic) - [`79278a1`](https://github.com/eslint/eslint/commit/79278a14f1c8747bff8f5cb2100d8776f9d517f2) feat: update no-use-before-define for class static blocks ([#&#8203;15312](https://github.com/eslint/eslint/issues/15312)) (Milos Djermanovic) - [`ddd01dc`](https://github.com/eslint/eslint/commit/ddd01dcd5f14c6ddea5decca46db2f379ec35aeb) feat: update no-redeclare for class static blocks ([#&#8203;15313](https://github.com/eslint/eslint/issues/15313)) (Milos Djermanovic) - [`de69cec`](https://github.com/eslint/eslint/commit/de69cec834411aeb276a525c11dc10f628df2f51) feat: update no-inner-declarations for class static blocks ([#&#8203;15290](https://github.com/eslint/eslint/issues/15290)) (Milos Djermanovic) - [`e2fe7ef`](https://github.com/eslint/eslint/commit/e2fe7ef7ea0458de56bed4e4c3d5f71aaebd3f28) feat: support for private-in syntax (fixes [#&#8203;14811](https://github.com/eslint/eslint/issues/14811)) ([#&#8203;15060](https://github.com/eslint/eslint/issues/15060)) (Yosuke Ota) - [`34bc8d7`](https://github.com/eslint/eslint/commit/34bc8d7cb42d696ec56e0a3c780aa5b042285d6b) feat: Update espree and eslint-scope ([#&#8203;15338](https://github.com/eslint/eslint/issues/15338)) (Brandon Mills) - [`b171cd7`](https://github.com/eslint/eslint/commit/b171cd7ec839a0481a74a613b0d48a193f16bb6b) feat: update max-depth for class static blocks ([#&#8203;15316](https://github.com/eslint/eslint/issues/15316)) (Milos Djermanovic) - [`6487df3`](https://github.com/eslint/eslint/commit/6487df371496dd15272e2097e4d2c932532c8727) feat: update padded-blocks for class static blocks ([#&#8203;15333](https://github.com/eslint/eslint/issues/15333)) (Milos Djermanovic) - [`194f36d`](https://github.com/eslint/eslint/commit/194f36d9c009a72ec72fa9592ea9e31f9f168a52) feat: update the complexity rule for class static blocks ([#&#8203;15328](https://github.com/eslint/eslint/issues/15328)) (Milos Djermanovic) - [`3530337`](https://github.com/eslint/eslint/commit/3530337e71327d8325d0de01e8e73952010b1a08) feat: update the indent rule for class static blocks ([#&#8203;15324](https://github.com/eslint/eslint/issues/15324)) (Milos Djermanovic) - [`f03cd14`](https://github.com/eslint/eslint/commit/f03cd146a97ed312d635ac7b53ba0f8d01aa8b47) feat: update lines-around-comment for class static blocks ([#&#8203;15323](https://github.com/eslint/eslint/issues/15323)) (Milos Djermanovic) - [`5c64747`](https://github.com/eslint/eslint/commit/5c64747a8d7a4f896f0cbce67c7f5e7690837a9b) feat: update brace-style for class static blocks ([#&#8203;15322](https://github.com/eslint/eslint/issues/15322)) (Milos Djermanovic) - [`df2f1cc`](https://github.com/eslint/eslint/commit/df2f1cc81a559bbc9eee78a3a97315e2927af764) feat: update max-statements for class static blocks ([#&#8203;15315](https://github.com/eslint/eslint/issues/15315)) (Milos Djermanovic) - [`fd5a0b8`](https://github.com/eslint/eslint/commit/fd5a0b8506e4b6acd740ab966cc2c0e4ff6a4d15) feat: update prefer-const for class static blocks ([#&#8203;15325](https://github.com/eslint/eslint/issues/15325)) (Milos Djermanovic) - [`b3669fd`](https://github.com/eslint/eslint/commit/b3669fde2316f136af3a16b58b0c44e8ec196cee) feat: code path analysis for class static blocks ([#&#8203;15282](https://github.com/eslint/eslint/issues/15282)) (Milos Djermanovic) - [`15c1397`](https://github.com/eslint/eslint/commit/15c1397f0063931f50f31af8d110a23c6d660000) feat: update eslint-scope for class static blocks ([#&#8203;15321](https://github.com/eslint/eslint/issues/15321)) (Milos Djermanovic) - [`1a1bb4b`](https://github.com/eslint/eslint/commit/1a1bb4b1ee87c1b33f2d86ef70b3d81e83377547) feat: update one-var for class static blocks ([#&#8203;15317](https://github.com/eslint/eslint/issues/15317)) (Milos Djermanovic) - [`9b666e0`](https://github.com/eslint/eslint/commit/9b666e0682bacf44d2a5afa0023874b8b131b5f5) feat: update padding-line-between-statements for class static blocks ([#&#8203;15318](https://github.com/eslint/eslint/issues/15318)) (Milos Djermanovic) - [`d3a267f`](https://github.com/eslint/eslint/commit/d3a267f5f39167e3ee8248ae6b9cae5034d0486f) feat: update class-methods-use-this for class static blocks ([#&#8203;15298](https://github.com/eslint/eslint/issues/15298)) (Milos Djermanovic) - [`cdaa541`](https://github.com/eslint/eslint/commit/cdaa54130aca7a9c8dfd76c613d0718b048401b2) feat: update no-lone-blocks for class static blocks ([#&#8203;15295](https://github.com/eslint/eslint/issues/15295)) (Milos Djermanovic) - [`8611538`](https://github.com/eslint/eslint/commit/8611538b47e325c6d6b115bf3d901a26e9ac29f8) feat: update block-spacing for class static blocks ([#&#8203;15297](https://github.com/eslint/eslint/issues/15297)) (Milos Djermanovic) - [`7b56844`](https://github.com/eslint/eslint/commit/7b56844ece544e501f0173f6427038c9c5e0534f) feat: update keyword-spacing for class static blocks ([#&#8203;15289](https://github.com/eslint/eslint/issues/15289)) (Milos Djermanovic) - [`ea18711`](https://github.com/eslint/eslint/commit/ea1871146402a77234393613fe56a416382c7f0f) feat: update no-extra-semi for class static blocks ([#&#8203;15287](https://github.com/eslint/eslint/issues/15287)) (Milos Djermanovic) - [`0f0971f`](https://github.com/eslint/eslint/commit/0f0971ffc2ca6f4513eeffdf5cfa36826c8f4543) feat: update semi rule for class static blocks ([#&#8203;15286](https://github.com/eslint/eslint/issues/15286)) (Milos Djermanovic) - [`abe740c`](https://github.com/eslint/eslint/commit/abe740ce68dcc9e5413df93b3d80a2e3260f1c18) feat: add examples for block-scoped-var with class static blocks ([#&#8203;15302](https://github.com/eslint/eslint/issues/15302)) (Milos Djermanovic) - [`0338fd2`](https://github.com/eslint/eslint/commit/0338fd201614247eeb21e68a26e4b4c8a74f71b0) feat: Normalize ecmaVersion to eslint-scope when using custom parser ([#&#8203;15268](https://github.com/eslint/eslint/issues/15268)) (Yosuke Ota) #### Bug Fixes - [`8aa7645`](https://github.com/eslint/eslint/commit/8aa764524cf74f0b70d184c7957dbbb5f36a5ac7) fix: update vars-on-top for class static blocks ([#&#8203;15306](https://github.com/eslint/eslint/issues/15306)) (Milos Djermanovic) - [`479a4cb`](https://github.com/eslint/eslint/commit/479a4cbc70f4032d4accd48e4471629e8635d677) fix: update semi-style for class static blocks ([#&#8203;15309](https://github.com/eslint/eslint/issues/15309)) (Milos Djermanovic) - [`6d1c666`](https://github.com/eslint/eslint/commit/6d1c666d318cc9e1860e1e2c72fbfa4bdd4a2c4b) fix: update no-invalid-this and no-eval for class static blocks ([#&#8203;15300](https://github.com/eslint/eslint/issues/15300)) (Milos Djermanovic) #### Documentation - [`6b85426`](https://github.com/eslint/eslint/commit/6b85426c33ba7ac0206cccef39ccc875b773aeae) docs: Expand `--debug` option description in the CLI documentation ([#&#8203;15308](https://github.com/eslint/eslint/issues/15308)) (darkred) - [`3ae5258`](https://github.com/eslint/eslint/commit/3ae52584296887e5fc5b0267346294bb920a00e6) docs: the strict rule does not apply to class static blocks ([#&#8203;15314](https://github.com/eslint/eslint/issues/15314)) (Milos Djermanovic) - [`9309841`](https://github.com/eslint/eslint/commit/9309841a6cfa85005e0bf79e20415bb9220ba46e) docs: Remove inconsistent colon in pull request docs ([#&#8203;15303](https://github.com/eslint/eslint/issues/15303)) (Jordan Eldredge) - [`da238cc`](https://github.com/eslint/eslint/commit/da238cc731a9b5ecd48280e0ea4ebd8a48ebeedc) docs: remove deprecation note from lines-around-comment ([#&#8203;15293](https://github.com/eslint/eslint/issues/15293)) (Milos Djermanovic) - [`1055f16`](https://github.com/eslint/eslint/commit/1055f16fc6f78cc553f0b1462e8af44244c1f84b) docs: no-unused-expressions - class static blocks don't have directives ([#&#8203;15283](https://github.com/eslint/eslint/issues/15283)) (Milos Djermanovic) - [`4c55216`](https://github.com/eslint/eslint/commit/4c55216ba958fcc8c3dd29fcaa80298216a48303) docs: Add variables option to no-use-before-define ([#&#8203;15276](https://github.com/eslint/eslint/issues/15276)) (Mathias Rasmussen) #### Chores - [`edd8d24`](https://github.com/eslint/eslint/commit/edd8d240db8878763dbb147fb6124412c0783a42) chore: upgrade eslint-visitor-keys for class static blocks ([#&#8203;15277](https://github.com/eslint/eslint/issues/15277)) (Milos Djermanovic) ### [`v8.2.0`](https://github.com/eslint/eslint/releases/tag/v8.2.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.1.0...v8.2.0) #### Features - [`c9fefd2`](https://github.com/eslint/eslint/commit/c9fefd2e40348b3e02b855597707a557dc4991d5) feat: report class evaluation TDZ errors in no-use-before-define ([#&#8203;15134](https://github.com/eslint/eslint/issues/15134)) (Milos Djermanovic) #### Documentation - [`c415c04`](https://github.com/eslint/eslint/commit/c415c041912a3abbf106cc5713bdcf4ef42590ac) docs: Use string rule severity in CLI examples ([#&#8203;15253](https://github.com/eslint/eslint/issues/15253)) (Kevin Partington) - [`12b627d`](https://github.com/eslint/eslint/commit/12b627da401c68a5081822a49068421f1bb2465c) docs: fix typo in `working-with-rules.md` ([#&#8203;15233](https://github.com/eslint/eslint/issues/15233)) (Nitin Kumar) - [`a86ffc0`](https://github.com/eslint/eslint/commit/a86ffc076014d1de7eefc7456a8ccfb3a2318155) docs: fix broken anchor in configuration files ([#&#8203;15223](https://github.com/eslint/eslint/issues/15223)) (Pierre Berger) - [`ee8af5f`](https://github.com/eslint/eslint/commit/ee8af5fb864b510ba6b50dcfb706b8b28fdfb74e) docs: Link to unit tests from rule documentation ([#&#8203;15207](https://github.com/eslint/eslint/issues/15207)) (Brandon Mills) - [`1c0ca3c`](https://github.com/eslint/eslint/commit/1c0ca3c744dd5761d424d19c9cdcccc569dfe34c) docs: add `ci` and `perf` tags for commit ([#&#8203;15215](https://github.com/eslint/eslint/issues/15215)) (Nitin Kumar) #### Build Related - [`796587a`](https://github.com/eslint/eslint/commit/796587ad950f6804d60473c2b5998ed3ec71c59e) build: upgrade eslint-release to v3.2.0 to support conventional commits ([#&#8203;15246](https://github.com/eslint/eslint/issues/15246)) (Milos Djermanovic) #### Chores - [`cf5b6be`](https://github.com/eslint/eslint/commit/cf5b6be6f8144f5932cdf062d380f7c0f51e64bd) chore: update [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc) to avoid different versions of `js-yaml` ([#&#8203;15265](https://github.com/eslint/eslint/issues/15265)) (Milos Djermanovic) - [`4fd7a6c`](https://github.com/eslint/eslint/commit/4fd7a6ca7339bcbbfa6feda266dcca96684b81c6) perf: don't prepare a fix for valid code in key-spacing ([#&#8203;15239](https://github.com/eslint/eslint/issues/15239)) (Milos Djermanovic) - [`fda533c`](https://github.com/eslint/eslint/commit/fda533cda4b70278acfce4e21b5b1ebe52ff7a3d) chore: update `strip-ansi` dependency ([#&#8203;15221](https://github.com/eslint/eslint/issues/15221)) (Nitin Kumar) - [`67949bd`](https://github.com/eslint/eslint/commit/67949bd9f3cbda08442d2e5946feb9a4f8b22d85) ci: Remove Node 16 CI prerelease workaround ([#&#8203;14935](https://github.com/eslint/eslint/issues/14935)) (Brandon Mills) ### [`v8.1.0`](https://github.com/eslint/eslint/releases/tag/v8.1.0) [Compare Source](https://github.com/eslint/eslint/compare/v8.0.1...v8.1.0) - [`446b4b3`](https://github.com/eslint/eslint/commit/446b4b3583f90dba7e0ac347b57db013aecc101d) Docs: Update commit message format docs ([#&#8203;15200](https://github.com/eslint/eslint/issues/15200)) (Nicholas C. Zakas) - [`d9d84a0`](https://github.com/eslint/eslint/commit/d9d84a060362efbaac727f18e3a790098bf0bc4b) Fix: keyword-spacing conflict with space-infix-ops on `>` (fixes [#&#8203;14712](https://github.com/eslint/eslint/issues/14712)) ([#&#8203;15172](https://github.com/eslint/eslint/issues/15172)) (Milos Djermanovic) - [`a1f7ad7`](https://github.com/eslint/eslint/commit/a1f7ad77e2da00ac7d6daade547fe6bef4ef6003) Fix: allow `baseConfig` to extend preloaded plugin config (fixes [#&#8203;15079](https://github.com/eslint/eslint/issues/15079)) ([#&#8203;15187](https://github.com/eslint/eslint/issues/15187)) (Milos Djermanovic) - [`3d370fb`](https://github.com/eslint/eslint/commit/3d370fb3596ccd3463c29f1a7a1e3f321dd8083a) New: Add no-unused-private-class-members rule (fixes [#&#8203;14859](https://github.com/eslint/eslint/issues/14859)) ([#&#8203;14895](https://github.com/eslint/eslint/issues/14895)) (Tim van der Lippe) - [`e926b17`](https://github.com/eslint/eslint/commit/e926b1735c77bf55abc1150b060a535a6c4e2778) New: Add name to RuleTester ([#&#8203;15179](https://github.com/eslint/eslint/issues/15179)) (Gareth Jones) - [`90a5b6b`](https://github.com/eslint/eslint/commit/90a5b6b4aeff7343783f85418c683f2c9901ab07) Chore: improve performance of `:function` selector ([#&#8203;15181](https://github.com/eslint/eslint/issues/15181)) (Milos Djermanovic) - [`31af1c8`](https://github.com/eslint/eslint/commit/31af1c8770c7dac9e9686a0549af329abe5a795b) Chore: fix counting of files in performance test ([#&#8203;15190](https://github.com/eslint/eslint/issues/15190)) (Milos Djermanovic) - [`1b87fa8`](https://github.com/eslint/eslint/commit/1b87fa835892d9da3b945db763196715d8088090) Build: add node v17 ([#&#8203;15193](https://github.com/eslint/eslint/issues/15193)) (唯然) - [`0fb3bb2`](https://github.com/eslint/eslint/commit/0fb3bb2af3301c92ccd46ece739644a17df89bab) Docs: remove `instanceof` from keyword-spacing docs ([#&#8203;15180](https://github.com/eslint/eslint/issues/15180)) (Milos Djermanovic) - [`249a040`](https://github.com/eslint/eslint/commit/249a04070f88d2c895af3b78d60d2eff2730730e) Upgrade: `eslint-plugin-eslint-plugin` to v4 ([#&#8203;15169](https://github.com/eslint/eslint/issues/15169)) (Bryan Mishkin) - [`35f3254`](https://github.com/eslint/eslint/commit/35f3254d5f8027f75a6cb35b58bea10037003be8) Docs: Describe range in rule docs (fixes [#&#8203;14162](https://github.com/eslint/eslint/issues/14162)) ([#&#8203;15174](https://github.com/eslint/eslint/issues/15174)) (Nicholas C. Zakas) - [`b5049c8`](https://github.com/eslint/eslint/commit/b5049c89a00f1a0da59ecaee74b9b024ef3c3621) Chore: Update stale bot settings ([#&#8203;15173](https://github.com/eslint/eslint/issues/15173)) (Nicholas C. Zakas) - [`2b32f50`](https://github.com/eslint/eslint/commit/2b32f50460d6858367b25df20b7a717528891e0d) Docs: Fix typo in README.md ([#&#8203;15168](https://github.com/eslint/eslint/issues/15168)) (Dmitriy Fishman) - [`dd58cd4`](https://github.com/eslint/eslint/commit/dd58cd4afa6ced9016c091fc99a702c97a3e44f0) Chore: migrate master to main ([#&#8203;15062](https://github.com/eslint/eslint/issues/15062)) (Nitesh Seram) - [`ec0f8e0`](https://github.com/eslint/eslint/commit/ec0f8e0bb7d7ce502ca68fcd13ac323eb6307455) Chore: Add stale issue/PR checker ([#&#8203;15151](https://github.com/eslint/eslint/issues/15151)) (Nicholas C. Zakas) - [`2cfbd4b`](https://github.com/eslint/eslint/commit/2cfbd4bfd90b31cd728d6595bd1e36667715c84d) Docs: Update README team and sponsors (ESLint Jenkins) ### [`v8.0.1`](https://github.com/eslint/eslint/releases/tag/v8.0.1) [Compare Source](https://github.com/eslint/eslint/compare/v8.0.0...v8.0.1) - [`f9217e5`](https://github.com/eslint/eslint/commit/f9217e527e1c49c6244400c4a58b6d1c14de51db) Upgrade: [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).0.3 for Jest workaround ([#&#8203;15164](https://github.com/eslint/eslint/issues/15164)) (Brandon Mills) - [`c584a63`](https://github.com/eslint/eslint/commit/c584a63e2d6d9c0a66e5c5a5d43bc8148c054f5d) Chore: add ecmaVersion 13 to types.js ([#&#8203;15163](https://github.com/eslint/eslint/issues/15163)) (Milos Djermanovic) - [`ff5fcd4`](https://github.com/eslint/eslint/commit/ff5fcd4d9bf43354a1b85d1f7ec1c4e1c0e5cbd9) Docs: add 13 as allowed ecma version (fixes [#&#8203;15159](https://github.com/eslint/eslint/issues/15159)) ([#&#8203;15162](https://github.com/eslint/eslint/issues/15162)) (唯然) ### [`v8.0.0`](https://github.com/eslint/eslint/releases/tag/v8.0.0) [Compare Source](https://github.com/eslint/eslint/compare/v7.32.0...v8.0.0) - [`7d3f7f0`](https://github.com/eslint/eslint/commit/7d3f7f01281671c4761f8da0d3ae9882a38eca8a) Upgrade: unfrozen [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc) (fixes [#&#8203;15036](https://github.com/eslint/eslint/issues/15036)) ([#&#8203;15146](https://github.com/eslint/eslint/issues/15146)) (Brandon Mills) - [`2174a6f`](https://github.com/eslint/eslint/commit/2174a6f0e5d18b673604d31e3ca7b790cdc9429b) Fix: require-atomic-updates property assignment message (fixes [#&#8203;15076](https://github.com/eslint/eslint/issues/15076)) ([#&#8203;15109](https://github.com/eslint/eslint/issues/15109)) (Milos Djermanovic) - [`f885fe0`](https://github.com/eslint/eslint/commit/f885fe06a0a79d91fc72a132fd31edf9ef0502cd) Docs: add note and example for extending the range of fix (refs [#&#8203;13706](https://github.com/eslint/eslint/issues/13706)) ([#&#8203;13748](https://github.com/eslint/eslint/issues/13748)) (Milos Djermanovic) - [`3da1509`](https://github.com/eslint/eslint/commit/3da1509106f508f0eb8ba48cdfc666225fda7edc) Docs: Add jsdoc `type` annotation to sample rule ([#&#8203;15085](https://github.com/eslint/eslint/issues/15085)) (Bryan Mishkin) - [`68a49a9`](https://github.com/eslint/eslint/commit/68a49a9446c3286bb9ff24b90713c794b7e1f6f5) Docs: Update Rollup Integrations ([#&#8203;15142](https://github.com/eslint/eslint/issues/15142)) (xiaohai) - [`d867f81`](https://github.com/eslint/eslint/commit/d867f8100737bb82742debee2b5dc853c5f07c91) Docs: Remove a dot from curly link ([#&#8203;15128](https://github.com/eslint/eslint/issues/15128)) (Mauro Murru) - [`9f8b919`](https://github.com/eslint/eslint/commit/9f8b91922839b9d438df6cc1d542eea0509ef122) Sponsors: Sync README with website (ESLint Jenkins) - [`4b08f29`](https://github.com/eslint/eslint/commit/4b08f299a172d3eef09e97e85d19a1612e83ac45) Sponsors: Sync README with website (ESLint Jenkins) - [`ebc1ba1`](https://github.com/eslint/eslint/commit/ebc1ba1416834b7a52d1e16909ba05c731e97ed4) Sponsors: Sync README with website (ESLint Jenkins) - [`2d654f1`](https://github.com/eslint/eslint/commit/2d654f115f6e05b59c85434e75cf68204b976f22) Docs: add example .eslintrc.json ([#&#8203;15087](https://github.com/eslint/eslint/issues/15087)) (Nicolas Mattia) - [`16034f0`](https://github.com/eslint/eslint/commit/16034f09ae6c7a78b8268b4c859928f18de7b9d6) Docs: fix fixable example ([#&#8203;15107](https://github.com/eslint/eslint/issues/15107)) (QiChang Li) - [`07175b8`](https://github.com/eslint/eslint/commit/07175b8e9532d79e55c499aa27f79f023abda3c3) 8.0.0-rc.0 (ESLint Jenkins) - [`71faa38`](https://github.com/eslint/eslint/commit/71faa38adada4bd2f1ec0da7e45e6c7c84d1671d) Build: changelog update for 8.0.0-rc.0 (ESLint Jenkins) - [`67c0074`](https://github.com/eslint/eslint/commit/67c0074fa843fab629f464ff875007a8ee33cc7f) Update: Suggest missing rule in flat config (fixes [#&#8203;14027](https://github.com/eslint/eslint/issues/14027)) ([#&#8203;15074](https://github.com/eslint/eslint/issues/15074)) (Nicholas C. Zakas) - [`cf34e5c`](https://github.com/eslint/eslint/commit/cf34e5cf5ed5d09eb53c16cca06821c4e34b7b70) Update: space-before-blocks ignore after switch colons (fixes [#&#8203;15082](https://github.com/eslint/eslint/issues/15082)) ([#&#8203;15093](https://github.com/eslint/eslint/issues/15093)) (Milos Djermanovic) - [`c9efb5f`](https://github.com/eslint/eslint/commit/c9efb5f91937dcb6c8f3d7cb2f59940046d77901) Fix: preserve formatting when rules are removed from disable directives ([#&#8203;15081](https://github.com/eslint/eslint/issues/15081)) (Milos Djermanovic) - [`14a4739`](https://github.com/eslint/eslint/commit/14a4739ab2233acef995a6dde233de05d067a0f3) Update: `no-new-func` rule catching eval case of `MemberExpression` ([#&#8203;14860](https://github.com/eslint/eslint/issues/14860)) (Mojtaba Samimi) - [`7f2346b`](https://github.com/eslint/eslint/commit/7f2346b40ffd0d470092e52b995d7ab2648089db) Docs: Update release blog post template ([#&#8203;15094](https://github.com/eslint/eslint/issues/15094)) (Nicholas C. Zakas) - [`fabdf8a`](https://github.com/eslint/eslint/commit/fabdf8a4e2f82b5fe2f903f015c3e60747a0b143) Chore: Remove `target.all` from `Makefile.js` ([#&#8203;15088](https://github.com/eslint/eslint/issues/15088)) (Hirotaka Tagawa / wafuwafu13) - [`e3cd141`](https://github.com/eslint/eslint/commit/e3cd1414489ceda460d593ac7e7b14f8ad45d4fc) Sponsors: Sync README with website (ESLint Jenkins) - [`05d7140`](https://github.com/eslint/eslint/commit/05d7140d46e2b5300d4dc9a60450eed956c95420) Chore: document target global in Makefile.js ([#&#8203;15084](https://github.com/eslint/eslint/issues/15084)) (Hirotaka Tagawa / wafuwafu13) - [`0a1a850`](https://github.com/eslint/eslint/commit/0a1a850575ca75db017051abe5e931f0f9c8012b) Update: include `ruleId` in error logs (fixes [#&#8203;15037](https://github.com/eslint/eslint/issues/15037)) ([#&#8203;15053](https://github.com/eslint/eslint/issues/15053)) (Ari Perkkiö) - [`47be800`](https://github.com/eslint/eslint/commit/47be8003d700bc0606495ae42610eaba94e639c5) Chore: test Property > .key with { a = 1 } pattern (fixes [#&#8203;14799](https://github.com/eslint/eslint/issues/14799)) ([#&#8203;15072](https://github.com/eslint/eslint/issues/15072)) (Milos Djermanovic) - [`a744dfa`](https://github.com/eslint/eslint/commit/a744dfa1f077afe406014f84135f8d26e9a12a94) Docs: Update CLA info ([#&#8203;15058](https://github.com/eslint/eslint/issues/15058)) (Brian Warner) - [`9fb0f70`](https://github.com/eslint/eslint/commit/9fb0f7040759ea23538997648f2d2d53e7c9db8a) Chore: fix bug report template ([#&#8203;15061](https://github.com/eslint/eslint/issues/15061)) (Milos Djermanovic) - [`f87e199`](https://github.com/eslint/eslint/commit/f87e199e988f42fc490890eee0642d86c48c85ff) Chore: Cleanup issue templates ([#&#8203;15039](https://github.com/eslint/eslint/issues/15039)) (Nicholas C. Zakas) - [`660f075`](https://github.com/eslint/eslint/commit/660f075386d0b700faf1a1a94cde9d51899738a3) 8.0.0-beta.2 (ESLint Jenkins) - [`d148ffd`](https://github.com/eslint/eslint/commit/d148ffdec385e832956c748e36941e598b57b031) Build: changelog update for 8.0.0-beta.2 (ESLint Jenkins) - [`9e5c2e8`](https://github.com/eslint/eslint/commit/9e5c2e853ace560876c2f2119e134639be8659d0) Upgrade: [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).0.1 ([#&#8203;15047](https://github.com/eslint/eslint/issues/15047)) (Milos Djermanovic) - [`7cf96cf`](https://github.com/eslint/eslint/commit/7cf96cf185f849d379b660072d660ec35ac5b46d) Breaking: Disallow reserved words in ES3 (fixes [#&#8203;15017](https://github.com/eslint/eslint/issues/15017)) ([#&#8203;15046](https://github.com/eslint/eslint/issues/15046)) (Milos Djermanovic) - [`88a3952`](https://github.com/eslint/eslint/commit/88a39520716bdd11f8647e47c57bd8bf91bc7148) Update: support class fields in the `complexity` rule (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14957](https://github.com/eslint/eslint/issues/14957)) (Milos Djermanovic) - [`9bd3d87`](https://github.com/eslint/eslint/commit/9bd3d87c8d7369e85f2b7d9b784fed8143191d30) Fix: semicolon-less style in lines-between-class-members (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;15045](https://github.com/eslint/eslint/issues/15045)) (Milos Djermanovic) - [`6d1ccb6`](https://github.com/eslint/eslint/commit/6d1ccb676fedd1ceb4b1e44abf8133f116a5aecb) Update: enforceForClassFields in class-methods-use-this (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;15018](https://github.com/eslint/eslint/issues/15018)) (YeonJuan) - [`91e82f5`](https://github.com/eslint/eslint/commit/91e82f5c4cfeab5ac6d01865ce0eb9ea0649df39) Docs: LintMessage.line and column are possibly undefined ([#&#8203;15032](https://github.com/eslint/eslint/issues/15032)) (Brandon Mills) - [`921ba1e`](https://github.com/eslint/eslint/commit/921ba1ee53e5f2219f09050565b8d69fab517d72) Chore: fix failing cli test ([#&#8203;15041](https://github.com/eslint/eslint/issues/15041)) (Milos Djermanovic) - [`dd56631`](https://github.com/eslint/eslint/commit/dd5663166a8235512e797522731af1e9651f9392) Docs: remove duplicate code path analysis document ([#&#8203;15033](https://github.com/eslint/eslint/issues/15033)) (Milos Djermanovic) - [`143a598`](https://github.com/eslint/eslint/commit/143a5987f18f063a47a0646fa1e10e0f88602f6f) Chore: Switch issues to use forms ([#&#8203;15024](https://github.com/eslint/eslint/issues/15024)) (Nicholas C. Zakas) - [`f966fe6`](https://github.com/eslint/eslint/commit/f966fe6286b6f668812f5155b79d4ee2a8b584b3) Fix: Update semi for class-fields (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14945](https://github.com/eslint/eslint/issues/14945)) (Nicholas C. Zakas) - [`8c61f5a`](https://github.com/eslint/eslint/commit/8c61f5ac67682fcfec7fc6faafcf72e4b1a339ff) Docs: add info about non-capturing groups to prefer-named-capture-group ([#&#8203;15009](https://github.com/eslint/eslint/issues/15009)) (Andrzej Wódkiewicz) - [`dd10937`](https://github.com/eslint/eslint/commit/dd109379f730a988a9e6c0102bcfe443ad0b4b94) Update: added ignoreExpressions option to max-classes-per-file ([#&#8203;15000](https://github.com/eslint/eslint/issues/15000)) (Josh Goldberg) - [`e9764f3`](https://github.com/eslint/eslint/commit/e9764f3e2fe3f7b6341c9a4381f0dcd23548338e) Fix: no-undef-init should not apply to class fields (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14994](https://github.com/eslint/eslint/issues/14994)) (Milos Djermanovic) - [`4338b74`](https://github.com/eslint/eslint/commit/4338b74767fa71e4e8d171f8503aa33d970e509f) Docs: add no-dupe-class-members examples with class fields (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;15005](https://github.com/eslint/eslint/issues/15005)) (Milos Djermanovic) - [`b4232d4`](https://github.com/eslint/eslint/commit/b4232d47f88611c68a6c0f915b092b68845ecbaf) Chore: Add test that deprecated rules display a deprecated notice ([#&#8203;14989](https://github.com/eslint/eslint/issues/14989)) (TagawaHirotaka) - [`88b4e3d`](https://github.com/eslint/eslint/commit/88b4e3d191c2577e2e1a283cc5f825feea6271cc) Docs: Make clear how rule options are overridden (fixes [#&#8203;14962](https://github.com/eslint/eslint/issues/14962)) ([#&#8203;14976](https://github.com/eslint/eslint/issues/14976)) (Jake Ob) - [`4165c7f`](https://github.com/eslint/eslint/commit/4165c7f937f5fc46d4209ae8f763238d73f37238) Docs: Clarify Linter vs ESLint in node.js api docs (fixes [#&#8203;14953](https://github.com/eslint/eslint/issues/14953)) ([#&#8203;14995](https://github.com/eslint/eslint/issues/14995)) (Brian Bartels) - [`80cfb8f`](https://github.com/eslint/eslint/commit/80cfb8f858888bddfefd7de6b4ecbf5aabe267bc) Docs: fix typo in migration guide ([#&#8203;14985](https://github.com/eslint/eslint/issues/14985)) (Nitin Kumar) - [`1ddc955`](https://github.com/eslint/eslint/commit/1ddc9559dff437c605e33c156b4380246a231a6e) 8.0.0-beta.1 (ESLint Jenkins) - [`95cc61e`](https://github.com/eslint/eslint/commit/95cc61e40a89aa2278ae93ae2f35c38737280abb) Build: changelog update for 8.0.0-beta.1 (ESLint Jenkins) - [`05ca24c`](https://github.com/eslint/eslint/commit/05ca24c57f90f91421b682dca3d7a45b7957fb77) Update: Code path analysis for class fields (fixes [#&#8203;14343](https://github.com/eslint/eslint/issues/14343)) ([#&#8203;14886](https://github.com/eslint/eslint/issues/14886)) (Nicholas C. Zakas) - [`db15183`](https://github.com/eslint/eslint/commit/db1518374a5e88efedf1ed4609d879f3091af74f) Chore: Refactor comments of tests ([#&#8203;14956](https://github.com/eslint/eslint/issues/14956)) (TagawaHirotaka) - [`396a0e3`](https://github.com/eslint/eslint/commit/396a0e3c7c82e5d2680d07250008094f336856db) Docs: update ScopeManager with class fields ([#&#8203;14974](https://github.com/eslint/eslint/issues/14974)) (Milos Djermanovic) - [`6663e7a`](https://github.com/eslint/eslint/commit/6663e7aed498a73108b5e6371f218d9411b87796) Docs: remove `docs` script (fixes [#&#8203;14288](https://github.com/eslint/eslint/issues/14288)) ([#&#8203;14971](https://github.com/eslint/eslint/issues/14971)) (Nitin Kumar) - [`44c6fc8`](https://github.com/eslint/eslint/commit/44c6fc879de61e9513835d1d4d6ae978d9a43c51) Update: support class fields in func-name-matching (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14964](https://github.com/eslint/eslint/issues/14964)) (Milos Djermanovic) - [`44f7de5`](https://github.com/eslint/eslint/commit/44f7de5ee4d934dee540d3d55305126c670f6bfc) Docs: Update deprecated information ([#&#8203;14961](https://github.com/eslint/eslint/issues/14961)) (TagawaHirotaka) - [`305e14a`](https://github.com/eslint/eslint/commit/305e14af8bd12afc01487abee5c9b0f3eaca989e) Breaking: remove meta.docs.category in core rules (fixes [#&#8203;13398](https://github.com/eslint/eslint/issues/13398)) ([#&#8203;14594](https://github.com/eslint/eslint/issues/14594)) (薛定谔的猫) - [`a79c9f3`](https://github.com/eslint/eslint/commit/a79c9f35d665c2bcc63267bdf359a8176e0a84ce) Chore: Enforce jsdoc check-line-alignment never ([#&#8203;14955](https://github.com/eslint/eslint/issues/14955)) (Brett Zamir) - [`a8bcef7`](https://github.com/eslint/eslint/commit/a8bcef70a4a6b1fbb2007075bed754635f27ff01) Docs: Add 2021 and 2022 to supported ECMAScript versions ([#&#8203;14952](https://github.com/eslint/eslint/issues/14952)) (coderaiser) - [`3409785`](https://github.com/eslint/eslint/commit/3409785a41a5bd2b128ed11b8baf7a59f9e412ee) Fix: camelcase ignoreGlobals shouldn't apply to undef vars (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14966](https://github.com/eslint/eslint/issues/14966)) (Milos Djermanovic) - [`b301069`](https://github.com/eslint/eslint/commit/b301069981dc1dcca51df2813dcebdca8c150502) Docs: fix 'When Not To Use' in prefer-named-capture-group (refs [#&#8203;14959](https://github.com/eslint/eslint/issues/14959)) ([#&#8203;14969](https://github.com/eslint/eslint/issues/14969)) (Milos Djermanovic) - [`2d18db6`](https://github.com/eslint/eslint/commit/2d18db6278320fb97bc8e0bff3518c790566a6a6) Chore: add test for merging `parserOptions` in Linter ([#&#8203;14948](https://github.com/eslint/eslint/issues/14948)) (Milos Djermanovic) - [`3d7d5fb`](https://github.com/eslint/eslint/commit/3d7d5fb32425e8c04d3eaa0107a2ab03a2e285df) Update: reporting loc for `never` option in `eol-last` (refs [#&#8203;12334](https://github.com/eslint/eslint/issues/12334)) ([#&#8203;14840](https://github.com/eslint/eslint/issues/14840)) (Nitin Kumar) - [`f110926`](https://github.com/eslint/eslint/commit/f110926a7abcc875a86dd13116f794e4f950e2ba) Update: fix no-unused-vars false negative with comma operator ([#&#8203;14928](https://github.com/eslint/eslint/issues/14928)) (Sachin) - [`e98f14d`](https://github.com/eslint/eslint/commit/e98f14d356b5ff934dd2a0a1fb226f1b15317ab3) Docs: Fix typo in no-implicit-globals.md ([#&#8203;14954](https://github.com/eslint/eslint/issues/14954)) (jwbth) - [`9a4ae3b`](https://github.com/eslint/eslint/commit/9a4ae3b68a1afd9483d331997635727fb19a1a99) Chore: Apply comment require-description and check ClassDeclaration ([#&#8203;14949](https://github.com/eslint/eslint/issues/14949)) (Brett Zamir) - [`8344675`](https://github.com/eslint/eslint/commit/8344675c309a359dd2af5afddba6122f5dc803d0) Chore: fix small typo ([#&#8203;14951](https://github.com/eslint/eslint/issues/14951)) (Sosuke Suzuki) - [`26b0cd9`](https://github.com/eslint/eslint/commit/26b0cd924e79a0ab2374c0cd813e92055f9fff7b) Update: fix no-unreachable logic for class fields (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14920](https://github.com/eslint/eslint/issues/14920)) (Milos Djermanovic) - [`ee1b54f`](https://github.com/eslint/eslint/commit/ee1b54f31fa840e6ec72a313aa4090fdd3e985cd) Fix: keyword-spacing private name compat (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14946](https://github.com/eslint/eslint/issues/14946)) (Nicholas C. Zakas) - [`58840ac`](https://github.com/eslint/eslint/commit/58840ac844a61c72eabb603ecfb761812b82a7ed) Chore: Update jsdoc plugin and tweak rules in effect ([#&#8203;14814](https://github.com/eslint/eslint/issues/14814)) (Brett Zamir) - [`81c60f4`](https://github.com/eslint/eslint/commit/81c60f4a8725738f191580646562d1dca7eee933) Docs: document ESLint api ([#&#8203;14934](https://github.com/eslint/eslint/issues/14934)) (Sam Chen) - [`c74fe08`](https://github.com/eslint/eslint/commit/c74fe08642c30e1a4cd4e0866251a2d29466add8) Build: Force prerelease peer dep for Node 16 in CI ([#&#8203;14933](https://github.com/eslint/eslint/issues/14933)) (Brandon Mills) - [`c9947d2`](https://github.com/eslint/eslint/commit/c9947d2a3e0250928d4d80f3b287f10e68fc8db2) 8.0.0-beta.0 (ESLint Jenkins) - [`027165c`](https://github.com/eslint/eslint/commit/027165cacf62ab1662f4c343ff30b235fd9d46b8) Build: changelog update for 8.0.0-beta.0 (ESLint Jenkins) - [`be334f9`](https://github.com/eslint/eslint/commit/be334f9d8633e9d193dcb8b36f484547e9d3ab97) Chore: Fix Makefile call to linter.getRules() ([#&#8203;14932](https://github.com/eslint/eslint/issues/14932)) (Brandon Mills) - [`0c86b68`](https://github.com/eslint/eslint/commit/0c86b68a6e2435eb03b681b51b099b552b521adc) Chore: Replace old syntax for Array flat/flatMap ([#&#8203;14614](https://github.com/eslint/eslint/issues/14614)) (Stephen Wade) - [`6a89f3f`](https://github.com/eslint/eslint/commit/6a89f3f7b6a3edb3465952521bdf06a220515b95) Chore: ignore `yarn-error.log` and `.pnpm-debug.log` ([#&#8203;14925](https://github.com/eslint/eslint/issues/14925)) (Nitin Kumar) - [`28fe19c`](https://github.com/eslint/eslint/commit/28fe19c4a9108111932966aa7c9f361c26601d70) Docs: Add v8.0.0 migration guide (fixes [#&#8203;14856](https://github.com/eslint/eslint/issues/14856)) ([#&#8203;14884](https://github.com/eslint/eslint/issues/14884)) (Nicholas C. Zakas) - [`ec9db63`](https://github.com/eslint/eslint/commit/ec9db63e53a6605a558dcd82947d2425f89887c3) Upgrade: [@&#8203;eslint/eslintrc](https://github.com/eslint/eslintrc)[@&#8203;1](https://github.com/1).0.0 ([#&#8203;14865](https://github.com/eslint/eslint/issues/14865)) (Milos Djermanovic) - [`1f5d088`](https://github.com/eslint/eslint/commit/1f5d0889264c60dddb6fb07a3b1e43f840e84d57) Docs: add an example `Object.assign()` for rule no-import-assign ([#&#8203;14916](https://github.com/eslint/eslint/issues/14916)) (薛定谔的猫) - [`af96584`](https://github.com/eslint/eslint/commit/af965848c010612c3e136c367cc9b9e2e822f580) Fix: handle computed class fields in operator-linebreak (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14915](https://github.com/eslint/eslint/issues/14915)) (Milos Djermanovic) - [`3b6cd89`](https://github.com/eslint/eslint/commit/3b6cd8934b3640ffb6fa49b471babf07f0ad769a) Chore: Add rel/abs path tests in `no-restricted-{imports/modules}` rules ([#&#8203;14910](https://github.com/eslint/eslint/issues/14910)) (Bryan Mishkin) - [`62c6fe7`](https://github.com/eslint/eslint/commit/62c6fe7d10ff4eeebd196e143f96cfd88818393d) Upgrade: Debug 4.0.1 > 4.3.2 ([#&#8203;14892](https://github.com/eslint/eslint/issues/14892)) (sandesh bafna) - [`f984515`](https://github.com/eslint/eslint/commit/f98451584a82e41f82ceacd484ea0fe90aa9ce63) Chore: add assertions on reporting location in `semi` ([#&#8203;14899](https://github.com/eslint/eslint/issues/14899)) (Nitin Kumar) - [`a773b99`](https://github.com/eslint/eslint/commit/a773b99873965652a86bec489193dc42a8923f5f) Fix: no-useless-computed-key edge cases with class fields (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14903](https://github.com/eslint/eslint/issues/14903)) (Milos Djermanovic) - [`88db3f5`](https://github.com/eslint/eslint/commit/88db3f54988dddfbda35764ecf1ea16354c4213a) Upgrade: `js-yaml` to v4 ([#&#8203;14890](https://github.com/eslint/eslint/issues/14890)) (Bryan Mishkin) - [`cbc43da`](https://github.com/eslint/eslint/commit/cbc43daad2ea229fb15a9198efd2bc2721dfb75f) Fix: prefer-destructuring PrivateIdentifier false positive (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14897](https://github.com/eslint/eslint/issues/14897)) (Milos Djermanovic) - [`ccb9a91`](https://github.com/eslint/eslint/commit/ccb9a9138acd63457e004630475495954c1be6f4) Fix: dot-notation false positive with private identifier (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14898](https://github.com/eslint/eslint/issues/14898)) (Milos Djermanovic) - [`8c35066`](https://github.com/eslint/eslint/commit/8c350660e61284c41a5cc1a5955c858db53c516b) Sponsors: Sync README with website (ESLint Jenkins) - [`a3dd825`](https://github.com/eslint/eslint/commit/a3dd8257252f392de5cf793c36ecab2acd955659) Sponsors: Sync README with website (ESLint Jenkins) - [`c4e5802`](https://github.com/eslint/eslint/commit/c4e58023f22381508babfc52087853b5e3965b9c) Docs: improve rule details for `no-console` (fixes [#&#8203;14793](https://github.com/eslint/eslint/issues/14793)) ([#&#8203;14901](https://github.com/eslint/eslint/issues/14901)) (Nitin Kumar) - [`9052eee`](https://github.com/eslint/eslint/commit/9052eee07a459dc059cd92f657a3ae73acc95bb5) Update: check class fields in no-extra-parens (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14906](https://github.com/eslint/eslint/issues/14906)) (Milos Djermanovic) - [`5c3a470`](https://github.com/eslint/eslint/commit/5c3a47072aeb5cfda40a1eb20b43a10c5ca7aab3) Docs: add class fields in no-multi-assign documentation (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14907](https://github.com/eslint/eslint/issues/14907)) (Milos Djermanovic) - [`d234d89`](https://github.com/eslint/eslint/commit/d234d890b383837f8e4bda0f6ce1e2a348f9835e) Docs: add class fields in func-names documentation (refs [#&#8203;14857](https://github.com/eslint/eslint/issues/14857)) ([#&#8203;14908](https://github.com/eslint/eslint/issues/14908)) (Milos Djermanovic) - [`ae6072b`](https://github.com/eslint/eslint/commit/ae6072b1de5c8b30ce6c58290852082439c40b30) Upgrade: `eslint-visitor-keys` to v3 ([#&#8203;14902](https://github.com/eslint/eslint/issues/14902)) (Bryan Mishkin) - [`e53d8cf`](https://github.com/eslint/eslint/commit/e53d8cf9d73bd105cf6ba4f6b5477ccc4b980939) Upgrade: `markdownlint` dev dependencies ([#&#8203;14883](https://github.com/eslint/eslint/issues/14883)) (Bryan Mishkin) - [`d66e941`](https://github.com/eslint/eslint/commit/d66e9414be60e05badb96bc3e1a55ca34636d7f8) Upgrade: [@&#8203;humanwhocodes/config-array](https://github.com/humanwhocodes/config-array) to 0.6 ([#&#8203;14891](https://github.com/eslint/eslint/issues/14891)) (Bryan Mishkin) - [`149230c`](https://github.com/eslint/eslint/commit/149230ce7e296c029a0b6c085216fc0360ed4c65) Chore: Specify Node 14.x for Verify Files CI job ([#&#8203;14896](https://github.com/eslint/eslint/issues/14896)) (Milos Djermanovic) - [`537cf6a`](https://github.com/eslint/eslint/commit/537cf6a0e78ee9b7167e7f8c56f4053d3fb5b2d7) Chore: update `glob-parent` (fixes [#&#8203;14879](https://github.com/eslint/eslint/issues/14879))([#&#8203;14887](https://github.com/eslint/eslint/issues/14887)) (Nitin Kumar) - [`f7b4a3f`](https://github.com/eslint/eslint/commit/f7b4a3f6a44e167c71985d373f73eebd3a4d9556) Chore: update dev deps to latest ([#&#8203;14624](https://github.com/eslint/eslint/issues/14624)) (薛定谔的猫) - [`24c9f2a`](https://github.com/eslint/eslint/commit/24c9f2ac57efcd699ca69695c82e51ce5742df7b) Breaking: Strict package exports (refs [#&#8203;13654](https://github.com/eslint/eslint/issues/13654)) ([#&#8203;14706](https://github.com/eslint/eslint/issues/14706)) (Nicholas C. Zakas) - [`86d31a4`](https://github.com/eslint/eslint/commit/86d31a4951e3a39e359e284f5fe336ac477369fe) Breaking: disallow SourceCode#getComments() in RuleTester (refs [#&#8203;14744](https://github.com/eslint/eslint/issues/14744)) ([#&#8203;14769](https://github.com/eslint/eslint/issues/14769)) (Milos Djermanovic) - [`1d2213d`](https://github.com/eslint/eslint/commit/1d2213deb69c5901c1950bbe648aa819e7e742ed) Breaking: Fixable disable directives (fixes [#&#8203;11815](https://github.com/eslint/eslint/issues/11815)) ([#&#8203;14617](https://github.com/eslint/eslint/issues/14617)) (Josh Goldberg) - [`4a7aab7`](https://github.com/eslint/eslint/commit/4a7aab7d4323ff7027eebca709d4e95a9aaa80bc) Breaking: require `meta` for fixable rules (fixes [#&#8203;13349](https://github.com/eslint/eslint/issues/13349)) ([#&#8203;14634](https://github.com/eslint/eslint/issues/14634)) (Milos Djermanovic) - [`d6a761f`](https://github.com/eslint/eslint/commit/d6a761f9b6582e9f71705161be827ca303ef183f) Breaking: Require `meta.hasSuggestions` for rules with suggestions ([#&#8203;14573](https://github.com/eslint/eslint/issues/14573)) (Bryan Mishkin) - [`6bd747b`](https://github.com/eslint/eslint/commit/6bd747b5b7731195224875b952a9ea61445a9938) Breaking: support new regex d flag (fixes [#&#8203;14640](https://github.com/eslint/eslint/issues/14640)) ([#&#8203;14653](https://github.com/eslint/eslint/issues/14653)) (Yosuke Ota) - [`8b4f3ab`](https://github.com/eslint/eslint/commit/8b4f3abdb794feb3be31959bb44bfb0ef6318e8e) Breaking: fix comma-dangle schema (fixes [#&#8203;13739](https://github.com/eslint/eslint/issues/13739)) ([#&#8203;14030](https://github.com/eslint/eslint/issues/14030)) (Joakim Nilsson) - [`b953a4e`](https://github.com/eslint/eslint/commit/b953a4ee12f120658a9ec27d1f8ca88dd3dfb599) Breaking: upgrade espree and support new class features (refs [#&#8203;14343](https://github.com/eslint/eslint/issues/14343)) ([#&#8203;14591](https://github.com/eslint/eslint/issues/14591)) (Toru Nagashima) - [`8cce06c`](https://github.com/eslint/eslint/commit/8cce06cb39886902ce0d2e6882f46c3bf52fb955) Breaking: add some rules to eslint:recommended (refs [#&#8203;14673](https://github.com/eslint/eslint/issues/14673)) ([#&#8203;14691](https://github.com/eslint/eslint/issues/14691)) (薛定谔的猫) - [`86bb63b`](https://github.com/eslint/eslint/commit/86bb63b370e0ff350e988a5fa228a8234abe800c) Breaking: Drop `codeframe` and `table` formatters ([#&#8203;14316](https://github.com/eslint/eslint/issues/14316)) (Federico Brigante) - [`f3cb320`](https://github.com/eslint/eslint/commit/f3cb3208c8952a6218d54658cfda85942b9fda42) Breaking: drop node v10/v13/v15 (fixes [#&#8203;14023](https://github.com/eslint/eslint/issues/14023)) ([#&#8203;14592](https://github.com/eslint/eslint/issues/14592)) (薛定谔的猫) - [`b8b2d55`](https://github.com/eslint/eslint/commit/b8b2d5553b0de23e8b72ee45949650cd5f9a10d2) Build: add codeql ([#&#8203;14729](https://github.com/eslint/eslint/issues/14729)) (薛定谔的猫) - [`e037d61`](https://github.com/eslint/eslint/commit/e037d61a12ad17a36e05dcf65aa63fad303c79b9) Docs: Mention workaround for escaping the slash character in selectors ([#&#8203;14675](https://github.com/eslint/eslint/issues/14675)) (Aria) - [`81f03b6`](https://github.com/eslint/eslint/commit/81f03b6ad69c7f67ad6ba72e02e73266aa8f7696) Docs: Update license copyright ([#&#8203;14877](https://github.com/eslint/eslint/issues/14877)) (Nicholas C. Zakas) - [`fa1c07c`](https://github.com/eslint/eslint/commit/fa1c07c0d65ce21a30f5bb4a9f2ac511f8df6446) Sponsors: Sync README with website (ESLint Jenkins) - [`e31f492`](https://github.com/eslint/eslint/commit/e31f49206f94e2b3977ec37892d4b87ab1e46872) Sponsors: Sync README with website (ESLint Jenkins) - [`8307256`](https://github.com/eslint/eslint/commit/83072561b006a558d026c5a507f92945b821a0cd) Sponsors: Sync README with website (ESLint Jenkins) </details> <details> <summary>nodejs/node</summary> ### [`v19`](https://github.com/nodejs/node/blob/HEAD/CHANGELOG.md#&#8203;2015-03-19-Version-160-chrisdickinson) <a href="doc/changelogs/CHANGELOG_IOJS.md#&#8203;1.6.0">Moved to doc/changelogs/CHANGELOG_IOJS.md#&#8203;1.6.0</a>. ### [`v18`](https://github.com/nodejs/node/blob/HEAD/CHANGELOG.md#&#8203;2015-08-18-Version-310-Fishrock123) <a href="doc/changelogs/CHANGELOG_IOJS.md#&#8203;3.1.0">Moved to doc/changelogs/CHANGELOG_IOJS.md#&#8203;3.1.0</a>. ### [`v17`](https://github.com/nodejs/node/blob/HEAD/CHANGELOG.md#&#8203;2015-11-17-Version-510-Stable--Fishrock123) <a href="doc/changelogs/CHANGELOG_V5.md#&#8203;5.1.0">Moved to doc/changelogs/CHANGELOG_V5.md#&#8203;5.1.0</a>. ### [`v16`](https://github.com/nodejs/node/blob/HEAD/CHANGELOG.md#&#8203;2016-05-06-Version-01214-Maintenance--rvagg) <a href="doc/changelogs/CHANGELOG_V012.md#&#8203;0.12.14">Moved to doc/changelogs/CHANGELOG_V012.md#&#8203;0.12.14</a>. ### [`v15`](https://github.com/nodejs/node/blob/HEAD/CHANGELOG.md#&#8203;2015-12-23-Version-424-Argon-LTS--jasnell) <a href="doc/changelogs/CHANGELOG_V4.md#&#8203;4.2.4">Moved to doc/changelogs/CHANGELOG_V4.md#&#8203;4.2.4</a>. </details> <details> <summary>postcss/postcss</summary> ### [`v8.4.18`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8418) [Compare Source](https://github.com/postcss/postcss/compare/8.4.17...8.4.18) - Fixed an error on `absolute: true` with empty `sourceContent` (by Rene Haas). ### [`v8.4.17`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8417) [Compare Source](https://github.com/postcss/postcss/compare/8.4.16...8.4.17) - Fixed `Node.before()` unexpected behavior (by Romain Menke). - Added TOC to docs (by Mikhail Dedov). ### [`v8.4.16`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8416) [Compare Source](https://github.com/postcss/postcss/compare/8.4.15...8.4.16) - Fixed `Root` AST migration. ### [`v8.4.15`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8415) [Compare Source](https://github.com/postcss/postcss/compare/8.4.14...8.4.15) - Fixed AST normalization after using custom parser with old PostCSS AST. ### [`v8.4.14`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8414) [Compare Source](https://github.com/postcss/postcss/compare/8.4.13...8.4.14) - Print “old plugin API” warning only if plugin was used (by [@&#8203;zardoy](https://github.com/zardoy)). ### [`v8.4.13`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8413) [Compare Source](https://github.com/postcss/postcss/compare/8.4.12...8.4.13) - Fixed `append()` error after using `.parent` (by Jordan Pittman). ### [`v8.4.12`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8412) [Compare Source](https://github.com/postcss/postcss/compare/8.4.11...8.4.12) - Fixed `package.funding` to have same value between all PostCSS packages. ### [`v8.4.11`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8411) [Compare Source](https://github.com/postcss/postcss/compare/8.4.10...8.4.11) - Fixed `Declaration#raws.value` type. ### [`v8.4.10`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8410) [Compare Source](https://github.com/postcss/postcss/compare/8.4.9...8.4.10) - Fixed `package.funding` URL format. ### [`v8.4.9`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;849) [Compare Source](https://github.com/postcss/postcss/compare/8.4.8...8.4.9) - Fixed `package.funding` (by Álvaro Mondéjar). ### [`v8.4.8`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;848) [Compare Source](https://github.com/postcss/postcss/compare/8.4.7...8.4.8) - Fixed end position in empty Custom Properties. ### [`v8.4.7`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;847) [Compare Source](https://github.com/postcss/postcss/compare/8.4.6...8.4.7) - Fixed `Node#warn()` type (by Masafumi Koba). - Fixed comment removal in values after `,`. ### [`v8.4.6`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;846) [Compare Source](https://github.com/postcss/postcss/compare/8.4.5...8.4.6) - 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`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;845) [Compare Source](https://github.com/postcss/postcss/compare/8.4.4...8.4.5) - Fixed `raws` types to make object extendable (by James Garbutt). - Moved from Yarn 1 to pnpm. ### [`v8.4.4`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;844) [Compare Source](https://github.com/postcss/postcss/compare/8.4.3...8.4.4) - Fixed absolute path in source map on zero plugins mode. ### [`v8.4.3`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;843) [Compare Source](https://github.com/postcss/postcss/compare/8.4.2...8.4.3) - Fixed `this.css.replace is not a function` error. ### [`v8.4.2`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;842) [Compare Source](https://github.com/postcss/postcss/compare/8.4.1...8.4.2) - Fixed previous source map support in zero plugins mode. ### [`v8.4.1`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#&#8203;8418) [Compare Source](https://github.com/postcss/postcss/compare/8.4.0...8.4.1) - Fixed an error on `absolute: true` with empty `sourceContent` (by Rene Haas). ### [`v8.4.0`](https://github.com/postcss/postcss/releases/tag/8.4.0) [Compare Source](https://github.com/postcss/postcss/compare/8.3.11...8.4.0) <img src="https://user-images.githubusercontent.com/19343/143240813-e6fb2eff-0188-4426-8534-d9076df9fa96.jpg" align="right" width="200" height="200" alt="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. <a href="https://tailwindcss.com/"> <img src="https://refactoringui.nyc3.cdn.digitaloceanspaces.com/tailwind-logo.svg" alt="Sponsored by Tailwind CSS" width="213" height="50"> </a> <a href="https://themeisle.com/"> <img src="https://mllj2j8xvfl0.i.optimole.com/d0cOXWA.3970~373ad/w:auto/h:auto/q:90/https://s30246.pcdn.co/wp-content/uploads/2019/03/logo.png" alt="Sponsored by ThemeIsle" width="171" height="56"> </a> 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: - [**Tidelift**](https://tidelift.com/) with a Spotify-like subscription model supporting all projects from your lock file. - Direct donations in [**PostCSS & Autoprefixer Open Collective**](https://opencollective.com/postcss#section-contributors). #### Rages for Errors and Warnings [@&#8203;adalinesimonian](https://github.com/adalinesimonian), the author of amazing [Stylelint extension](https://github.com/stylelint/vscode-stylelint) for VS Code, added ranges to errors and warnings. ```js 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, [@&#8203;bogdan0083](https://github.com/bogdan0083) (with the help of [@&#8203;WilhelmYakunin](https://github.com/WilhelmYakunin)) tries to solve the problem in another way. It allows us to save resources and remove the `PostCSS does nothing` warning. ```js // 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](https://npm-stat.com/charts.html?package=postcss) downloads, PostCSS has responsibility for the world’s resource spending. Together with [@&#8203;7rulnik](https://github.com/7rulnik) we [reduced](https://github.com/7rulnik/source-map-js/pull/7) [`source-map-js`](https://github.com/7rulnik/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](https://packagephobia.com/result?p=postcss). With the huge popularity of PostCSS, it will free a lot of resources on our CIs. <img src="https://user-images.githubusercontent.com/19343/143244369-9ec362c5-4dbd-4aff-ba9e-7b4a50a97484.png" width="550" height="392" alt="PostCSS install size reduction"> #### Migration from Jest to `uvu` [@&#8203;kimoofey](https://github.com/kimoofey) refactored all tests from the popular Jest framework to small and fast [`uvu`](https://github.com/lukeed/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 [@&#8203;43081j](https://github.com/43081j)). - Fixed types `Root` and `Document` in result values (by [@&#8203;43081j](https://github.com/43081j)). - Fixed `Node#walkRules()` types (by [@&#8203;hudochenkov](https://github.com/hudochenkov)). #### Other Changes - Fixed docs (by [@&#8203;paulshryock](https://github.com/paulshryock)). </details> <details> <summary>postcss/postcss-import</summary> ### [`v15.0.0`](https://github.com/postcss/postcss-import/blob/HEAD/CHANGELOG.md#&#8203;1500--2022-08-30) [Compare Source](https://github.com/postcss/postcss-import/compare/14.1.0...15.0.0) - **BREAKING:** Require Node.js v14+ ([#&#8203;497](https://github.com/postcss/postcss-import/pull/497)) - **BREAKING:** Require `nameLayer` option for handling anonymous layers ([#&#8203;496](https://github.com/postcss/postcss-import/pull/496)) - Fix handling of `@media` queries inside layered imports ([#&#8203;495](https://github.com/postcss/postcss-import/issues/495), [#&#8203;496](https://github.com/postcss/postcss-import/pull/496)) ### [`v14.1.0`](https://github.com/postcss/postcss-import/blob/HEAD/CHANGELOG.md#&#8203;1410--2022-03-22) [Compare Source](https://github.com/postcss/postcss-import/compare/14.0.2...14.1.0) - Add `@layer` support ([#&#8203;483](https://github.com/postcss/postcss-import/pull/483)) </details> <details> <summary>prettier/prettier</summary> ### [`v2.7.1`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#&#8203;271) [Compare Source](https://github.com/prettier/prettier/compare/2.7.0...2.7.1) [diff](https://github.com/prettier/prettier/compare/2.7.0...2.7.1) ##### Keep useful empty lines in description ([#&#8203;13013](https://github.com/prettier/prettier/pull/13013) by [@&#8203;chimurai](https://github.com/chimurai)) <!-- prettier-ignore --> ```graphql ``` ### [`v2.7.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#Prettier-270) [Compare Source](https://github.com/prettier/prettier/compare/2.6.2...2.7.0) """ First line Second Line """ type Person { name: String } ### [`v2.6.2`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#&#8203;262) [Compare Source](https://github.com/prettier/prettier/compare/2.6.1...2.6.2) [diff](https://github.com/prettier/prettier/compare/2.6.1...2.6.2) ##### Fix LESS/SCSS format error ([#&#8203;12536](https://github.com/prettier/prettier/pull/12536) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```less // Input .background-gradient(@&#8203;cut) { background: linear-gradient( to right, @&#8203;white 0%, @&#8203;white (@&#8203;cut - 0.01%), @&#8203;portal-background @&#8203;cut, @&#8203;portal-background 100% ); } // Prettier 2.6.1 TypeError: Cannot read properties of undefined (reading 'endOffset') // Prettier 2.6.2 .background-gradient(@&#8203;cut) { background: linear-gradient( to right, @&#8203;white 0%, @&#8203;white (@&#8203;cut - 0.01%), @&#8203;portal-background @&#8203;cut, @&#8203;portal-background 100% ); } ``` ##### Update `meriyah` to fix several bugs ([#&#8203;12567](https://github.com/prettier/prettier/pull/12567) by [@&#8203;fisker](https://github.com/fisker), fixes in [`meriyah`](https://github.com/meriyah/meriyah/) by [@&#8203;3cp](https://github.com/3cp)) Fixes bugs when parsing following valid code: ```js foo(await bar()); ``` ```js const regex = /.*/ms; ``` ```js const element = <p>{/w/.test(s)}</p>; ``` ```js class A extends B { #privateMethod() { super.method(); } } ``` ### [`v2.6.1`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#&#8203;261) [Compare Source](https://github.com/prettier/prettier/compare/2.6.0...2.6.1) [diff](https://github.com/prettier/prettier/compare/2.6.0...2.6.1) ##### Ignore `loglevel` when printing information ([#&#8203;12477](https://github.com/prettier/prettier/pull/12477) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```bash ``` ### [`v2.6.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#Prettier-260) [Compare Source](https://github.com/prettier/prettier/compare/2.5.1...2.6.0) prettier --loglevel silent --find-config-path index.js </details> <details> <summary>reduxjs/react-redux</summary> ### [`v8.0.4`](https://github.com/reduxjs/react-redux/releases/tag/v8.0.4) [Compare Source](https://github.com/reduxjs/react-redux/compare/v8.0.3...v8.0.4) This patch release fixes some minor TS types issues, and updates the rarely-used `areStatesEqual` option for `connect` to now pass through `ownProps` for additional use in determining which pieces of state to compare if desired. > **Note**: 8.0.3 was accidentally published without one of these fixes. Use 8.0.4 instead. #### Changelog ##### TS Fixes We've fixed an import of `React` that caused issues with the `allowSyntheticDefaultImports` TS compiler flag in user projects. `connect` already accepted a custom context instance as `props.context`, and had runtime checks in case users were passing through a real value with app data as `props.context` instead. However, the TS types did not handle that case, and this would fail to compile. If your own component expects `props.context` with actual data, `connect`'s types now use that type instead. The `ConnectedProps<T>` type had a mismatch with React's built-in `React.ComponentProps<Component>` type, and that should now work correctly. ##### Other Changes The `areStatesEqual` option to `connect` now receives `ownProps` as well, in case you need to make a more specific comparison with certain sections of state. The new signature is: ```ts { areStatesEqual?: ( nextState: State, prevState: State, nextOwnProps: TOwnProps, prevOwnProps: TOwnProps ) => boolean } ``` #### What's Changed - Don't require allowSyntheticDefaultImports: true by [@&#8203;apepper](https://github.com/apepper) in https://github.com/reduxjs/react-redux/pull/1924 - Fixed type issue with `ComponentProps` from older `@types/react` by [@&#8203;Andarist](https://github.com/Andarist) in https://github.com/reduxjs/react-redux/pull/1956 - connect: pass ownProps to areStatesEqual by [@&#8203;jspurlin](https://github.com/jspurlin) in https://github.com/reduxjs/react-redux/pull/1951 - Omit built-in context prop if user component props include context by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1958 **Full Changelog**: https://github.com/reduxjs/react-redux/compare/v8.0.2...v8.0.4 ### [`v8.0.3`](https://github.com/reduxjs/react-redux/releases/tag/v8.0.3) [Compare Source](https://github.com/reduxjs/react-redux/compare/v8.0.2...v8.0.3) **This release was accidentally published without an intended fix - please use [v8.0.4](https://github.com/reduxjs/react-redux/releases/tag/v8.0.4) instead** ### [`v8.0.2`](https://github.com/reduxjs/react-redux/releases/tag/v8.0.2) [Compare Source](https://github.com/reduxjs/react-redux/compare/v8.0.1...v8.0.2) This patch release tweaks the behavior of `connect` to print a one-time warning when the obsolete `pure` option is passed in, rather than throwing an error. This fixes crashes caused by libraries such as `react-beautiful-dnd` continuing to pass in that option (unnecessarily) to React-Redux v8. #### What's Changed - Show warning instead of throwing error that pure option has been removed by [@&#8203;ApacheEx](https://github.com/ApacheEx) in https://github.com/reduxjs/react-redux/pull/1922 **Full Changelog**: https://github.com/reduxjs/react-redux/compare/v8.0.1...v8.0.2 ### [`v8.0.1`](https://github.com/reduxjs/react-redux/releases/tag/v8.0.1) [Compare Source](https://github.com/reduxjs/react-redux/compare/v8.0.0...v8.0.1) This release fixes an incorrect internal import of our `Subscription` type, which was causing TS compilation errors in some user projects. We've also listed `@types/react-dom` as an optional peerDep. There are no runtime changes in this release. #### What's Changed - Add optional peer dependency on [@&#8203;types/react-dom](https://github.com/types/react-dom) by [@&#8203;Methuselah96](https://github.com/Methuselah96) in https://github.com/reduxjs/react-redux/pull/1904 - fix(ts): incorrect import of `Subscription` causes `noImplicitAny` error by [@&#8203;vicrep](https://github.com/vicrep) in https://github.com/reduxjs/react-redux/pull/1910 **Full Changelog**: https://github.com/reduxjs/react-redux/compare/v8.0.0...v8.0.1 ### [`v8.0.0`](https://github.com/reduxjs/react-redux/releases/tag/v8.0.0) [Compare Source](https://github.com/reduxjs/react-redux/compare/v7.2.9...v8.0.0) This **major version** release updates `useSelector`, `connect`, and `<Provider>` for compatibility with React 18, rewrites the React-Redux codebase to TypeScript (obsoleting use of `@types/react-redux`), modernizes build output, and removes the deprecated `connectAdvanced` API and the `pure` option for `connect`. npm i react-redux@latest yarn add react-redux@latest #### Overview, Compatibility, and Migration Our public API is still the same ( `<Provider>`, `connect` and `useSelector/useDispatch`), but we've updated the internals to use the new `useSyncExternalStore` hook from React. React-Redux v8 is still compatible with all versions of React that have hooks (16.8+, 17.x, and 18.x; React Native 0.59+), and *should* just work out of the box. In most cases, it's very likely that the only change you will need to make is bumping the package version to `"react-redux": "^8.0"`. *If* you are using the rarely-used `connectAdvanced` API, you will need to rewrite your code to avoid that, likely by using the hooks API instead. Similarly, the `pure` option for `connect` has been removed. If you are using Typescript, React-Redux is now written in TS and includes its own types. You should remove any dependencies on `@types/react-redux`. While not directly tied to React-Redux, note that **the recently updated `@types/react@18` major version has changed component definitions to remove having `children` as a prop by default**. This causes errors if you have multiple copies of `@types/react` in your project. To fix this, tell your package manager to resolve `@types/react` to a single version. Details: [**React issue #&#8203;24304: React 18 types broken since release**](https://github.com/facebook/react/issues/24304#issuecomment-1094565891) Additionally, please see the React post on [**How to Ugprade to React 18**](https://reactjs.org/blog/2022/03/08/react-18-upgrade-guide.html) for details on how to migrate existing apps to correctly use React 18 and take advantage of its new features. #### Changelog ##### React 18 Compatibility React-Redux now requires the new [`useSyncExternalStore` API in React 18](https://github.com/reactwg/react-18/discussions/86). By default, it uses the "shim" package which backfills that API in earlier React versions, so **React-Redux v8 is compatible with all React versions that have hooks** (16.8+, and React Native 0.59+) as its acceptable peer dependencies. We'd especially like to thank the React team for their extensive support and cooperation during the `useSyncExternalStore` development effort. They specifically designed `useSyncExternalStore` to support the needs and use cases of React-Redux, and we used React-Redux v8 as a testbed for how `useSyncExternalStore` would behave and what it needed to cover. This in turn helped ensure that `useSyncExternalStore` would be useful and work correctly for other libraries in the ecosystem as well. Our performance benchmarks show parity with React-Redux v7.2.5 for both `connect` and `useSelector`, so we do not anticipate any meaningful performance regressions. ##### `useSyncExternalStore` and Bundling The `useSyncExternalStore` shim is imported directly in the main entry point, so it's *always* included in bundles even if you're using React 18. This adds roughly 600 bytes minified to your bundle size. If you are using React 18 and would like to avoid that extra bundle cost, React-Redux now has a new `/next` entry point. This exports the exact same APIs, but directly imports `useSyncExternalStore` from React itself, and thus avoids including the shim. You can alias `"react-redux": "react-redux/next"` in your bundler to use that instead. ##### SSR and Hydration React 18 introduces a new `hydrateRoot` method for hydrating the UI on the client in Server-Side Rendering usage. As part of that, the `useSyncExternalStore` API requires that we pass in an alternate state value other than what's in the actual Redux store, and that alternate value will be used for the entire initial hydration render to ensure the initial rehydrated UI is an exact match for what was rendered on the server. After the hydration render is complete, React will then apply any additional changes from the store state in a follow-up render. React-Redux v8 supports this by adding a new `serverState` prop for `<Provider>`. If you're using SSR, you should pass your serialized state to `<Provider>` to ensure there are no hydration mismatch errors: ```ts import { hydrateRoot } from 'react-dom/client' import { configureStore } from '@&#8203;reduxjs/toolkit' import { Provider } from 'react-redux' const preloadedState = window.__PRELOADED_STATE__ const clientStore = configureStore({ reducer: rootReducer, preloadedState, }) hydrateRoot( document.getElementById('root'), <Provider store={clientStore} serverState={preloadedState}> <App /> </Provider> ) ``` ##### TypeScript Migration and Support The React-Redux library source has always been written in plain JS, and the community maintained the TS typings separately as `@types/react-redux`. We've (finally!) [migrated the React-Redux codebase to TypeScript](https://github.com/reduxjs/react-redux/issues/1737), using the existing typings as a starting point. This means that **the `@types/react-redux` package is no longer needed, and you should remove that as a dependency**. > **Note** Please ensure that any installed copies of `redux` and `@types/react` are de-duped. You are also encouraged to update to the latest versions of Redux Toolkit (1.8.1+) or Redux (4.1.2), to ensure consistency between installed types and avoid problems from types mismatches. We've tried to maintain the same external type signatures as much as possible. If you do see any compile problems, please file issues with any apparent TS-related problems so we can review them. The TS migration was a great collaborative effort, with many community members contributing migrated files. Thank you to everyone who helped out! In addition to the "pre-typed" `TypedUseSelectorHook`, there's now also a `Connect<State = unknown>` type that can be used as a "pre-typed" version of `connect` as well. As part of the process, we also updated the repo to use Yarn 3, copied the typetests files from DefinitelyTyped and expanded them, and improved our CI setup to test against multiple TS versions. ##### Removal of the `DefaultRootState` type The `@types/react-redux` package, which has always been maintained by the community, included a `DefaultRootState` interface that was intended for use with TS's "module augmentation" capability. Both `connect` and `useSelector` used this as a fallback if no state generic was provided. When we migrated React-Redux to TS, we copied over all of the types from that package as a starting point. However, the Redux team [specifically considers use of a globally augmented state type to be an anti-pattern](https://github.com/reduxjs/react-redux/issues/1879). Instead, we direct users to [extract the `RootState` and `AppDispatch` types from the store setup](https://redux.js.org/tutorials/typescript-quick-start#define-root-state-and-dispatch-types), and [create pre-typed versions of the React-Redux hooks](https://redux.js.org/tutorials/typescript-quick-start#define-typed-hooks) for use in the app. Now that React-Redux itself is written in TS, we've opted to remove the `DefaultRootState` type entirely. State generics now default to `unknown` instead. Technically [the module augmentation approach can still be done in userland](https://github.com/reduxjs/react-redux/issues/1879#issuecomment-1073284804), but we discourage this practice. ##### Modernized Build Output We've always targeted ES5 syntax in our published build artifacts as the lowest common denominator. Even the "ES module" artifacts with `import/export` keywords still were compiled to ES5 syntax otherwise. With IE11 now effectively dead and many sites no longer supporting it, we've updated our build tooling to target a more modern syntax equivalent to ES2017, which shrinks the bundle size slightly. If you still need to support ES5-only environments, please compile your own dependencies as needed for your target environment. ##### Removal of Legacy APIs We announced in 2019 that [the legacy `connectAdvanced` API would be removed in the next major version](https://github.com/reduxjs/react-redux/issues/1236), as it was rarely used, added internal complexity, and was also basically irrelevant with the introduction of hooks. As promised, we've removed that API. We've also removed the `pure` option for `connect`, which forced components to re-render regardless of whether props/state had actually changed if it was set to `false`. This option was needed in some cases in the early days of the React ecosystem, when components sometimes relied on external mutable data sources that could change outside of rendering. Today, no one writes components that way, the option was barely used, and React 18's `useSyncExternalStore` strictly requires immutable updates. So, we've removed the `pure` flag. Given that both of these options were almost never used, this shouldn't meaningfully affect anyone. #### Changes Due to the TS migration effort and number of contributors, this list covers just the major changes: - Integrate TypeScript port by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1739 - Initial experimental React 18 compat prototyping by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1808 - Fix compatibility with React 18 strict effects by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1817 - Update to latest React 18 alpha dependencies by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1834 - Port remaining v7 typetests and improve v8 types by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1855 - Add initial SSR support for React 18 and React-Redux v8 by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1835 - test: Adjust type tests to be compatible with React 18 typings by [@&#8203;eps1lon](https://github.com/eps1lon) in https://github.com/reduxjs/react-redux/pull/1868 - Switch back to Subscription in useSelector to fix unsubscribe perf by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1870 - Cleanup more code after `pure` removal by [@&#8203;Andarist](https://github.com/Andarist) in https://github.com/reduxjs/react-redux/pull/1859 - Swap `useSyncExternalStore` shim behavior and update React deps by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1884 - Remove `DefaultRootState` type by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1887 - Add SSR test for `serverState` behavior by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1888 - Cleanup internal types in selectorFactory.ts by [@&#8203;Methuselah96](https://github.com/Methuselah96) in https://github.com/reduxjs/react-redux/pull/1889 - Remove ts-ignore for initMergeProps by [@&#8203;Methuselah96](https://github.com/Methuselah96) in https://github.com/reduxjs/react-redux/pull/1891 - fix(deps): add optional peer deps into `peerDependencies` by [@&#8203;kyletsang](https://github.com/kyletsang) in https://github.com/reduxjs/react-redux/pull/1893 - Update peer deps for v8 by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1895 - Port DT fix for `dispatchProp` arg in `mergeProps` by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1897 - Update docs for v8 final by [@&#8203;markerikson](https://github.com/markerikson) in https://github.com/reduxjs/react-redux/pull/1902 ### [`v7.2.9`](https://github.com/reduxjs/react-redux/releases/tag/v7.2.9) [Compare Source](https://github.com/reduxjs/react-redux/compare/v7.2.8...v7.2.9) This patch release updates the rarely-used `areStatesEqual` option for `connect` to now pass through `ownProps` for additional use in determining which pieces of state to compare if desired. The new signature is: ```ts { areStatesEqual?: ( nextState: State, prevState: State, nextOwnProps: TOwnProps, prevOwnProps: TOwnProps ) => boolean } ``` #### What's Changed - connect: pass ownProps to areStatesEqual by [@&#8203;jspurlin](https://github.com/jspurlin) in https://github.com/reduxjs/react-redux/pull/1952 **Full Changelog**: https://github.com/reduxjs/react-redux/compare/v7.2.8...v7.2.9 ### [`v7.2.8`](https://github.com/reduxjs/react-redux/releases/tag/v7.2.8) [Compare Source](https://github.com/reduxjs/react-redux/compare/v7.2.7...v7.2.8) This release fixes a bug in the 7.x branch that caused `<Provider>` to unsubscribe and stop updating completely when used inside of React 18's `<StrictMode>`. The new "strict effects" behavior double-mounts components, and the subscription needed to be set up inside of a `useLayoutEffect` instead of a `useMemo`. This was previously fixed as part of v8 development, and we've backported it. **Note**: If you are now using React 18, **we strongly recommend using [the React-Redux v8 beta instead of v7.x!](https://github.com/reduxjs/react-redux/releases/tag/v8.0.0-beta.3)**. v8 has been rewritten internally to work correctly with React 18's Concurrent Rendering capabilities. React-Redux v7 will run and generally work okay with existing code, but may have rendering issues if you start using Concurrent Rendering capabilities in your code. Now that React 18 is out, we plan to finalize React-Redux v8 and release it live within the next couple weeks. Per [an update yesterday in the "v8 roadmap" thread](https://github.com/reduxjs/react-redux/issues/1740#issuecomment-1085190240), React-Redux v8 will be updated in the next couple days to ensure support for React 16.8+ as part of the next beta release. We would really appreciate final feedback on using React-Redux v8 beta with React 18 before we publish the final version. **Full Changelog**: https://github.com/reduxjs/react-redux/compare/v7.2.7...v7.2.8 ### [`v7.2.7`](https://github.com/reduxjs/react-redux/releases/tag/v7.2.7) [Compare Source](https://github.com/reduxjs/react-redux/compare/v7.2.6...v7.2.7) This release updates React-Redux v7's peer dependencies to accept React 18 as a valid version, *only* to avoid installation errors caused by NPM's "install all the peer deps and error if they don't match" behavior. **Note**: If you are now using React 18, **we strongly recommend using [the React-Redux v8 beta instead of v7.x!](https://github.com/reduxjs/react-redux/releases/tag/v8.0.0-beta.3)**. v8 has been rewritten internally to work correctly with React 18's Concurrent Rendering capabilities. React-Redux v7 will run and generally work okay with existing code, but may have rendering issues if you start using Concurrent Rendering capabilities in your code. Now that React 18 is out, we plan to finalize React-Redux v8 and release it live within the next couple weeks. We would really appreciate final feedback on using React-Redux v8 beta with React 18 before we publish the final version. </details> <details> <summary>Andarist/react-textarea-autosize</summary> ### [`v8.3.4`](https://github.com/Andarist/react-textarea-autosize/blob/HEAD/CHANGELOG.md#&#8203;834) [Compare Source](https://github.com/Andarist/react-textarea-autosize/compare/v8.3.3...v8.3.4) ##### Patch Changes - [#&#8203;341](https://github.com/Andarist/react-textarea-autosize/pull/341) [`9124bbf`](https://github.com/Andarist/react-textarea-autosize/commit/9124bbf71e82d9123c5dff2c3b008d33a54fc884) Thanks [@&#8203;rebelliard](https://github.com/rebelliard)! - Add React 18 to the allowed peer dependency range. </details> <details> <summary>tailwindlabs/tailwindcss</summary> ### [`v3.2.1`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;321---2022-10-21) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.2.0...v3.2.1) ##### Fixed - Fix missing `supports` in types ([#&#8203;9616](https://github.com/tailwindlabs/tailwindcss/pull/9616)) - Fix missing PostCSS dependencies in the CLI ([#&#8203;9617](https://github.com/tailwindlabs/tailwindcss/pull/9617)) - Ensure `micromatch` is a proper CLI dependency ([#&#8203;9620](https://github.com/tailwindlabs/tailwindcss/pull/9620)) - Ensure modifier values exist when using a `modifiers` object for `matchVariant` ([ba6551db0f2726461371b4f3c6cd4c7090888504](https://github.com/tailwindlabs/tailwindcss/commit/ba6551db0f2726461371b4f3c6cd4c7090888504)) ### [`v3.2.0`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;320---2022-10-19) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.1.8...v3.2.0) ##### Added - Add new `@config` directive ([#&#8203;9405](https://github.com/tailwindlabs/tailwindcss/pull/9405)) - Add new `relative: true` option to resolve content paths relative to the config file ([#&#8203;9396](https://github.com/tailwindlabs/tailwindcss/pull/9396)) - Add new `supports-*` variant ([#&#8203;9453](https://github.com/tailwindlabs/tailwindcss/pull/9453)) - Add new `min-*` and `max-*` variants ([#&#8203;9558](https://github.com/tailwindlabs/tailwindcss/pull/9558)) - Add new `aria-*` variants ([#&#8203;9557](https://github.com/tailwindlabs/tailwindcss/pull/9557), [#&#8203;9588](https://github.com/tailwindlabs/tailwindcss/pull/9588)) - Add new `data-*` variants ([#&#8203;9559](https://github.com/tailwindlabs/tailwindcss/pull/9559), [#&#8203;9588](https://github.com/tailwindlabs/tailwindcss/pull/9588)) - Add new `break-keep` utility for `word-break: keep-all` ([#&#8203;9393](https://github.com/tailwindlabs/tailwindcss/pull/9393)) - Add new `collapse` utility for `visibility: collapse` ([#&#8203;9181](https://github.com/tailwindlabs/tailwindcss/pull/9181)) - Add new `fill-none` utility for `fill: none` ([#&#8203;9403](https://github.com/tailwindlabs/tailwindcss/pull/9403)) - Add new `stroke-none` utility for `stroke: none` ([#&#8203;9403](https://github.com/tailwindlabs/tailwindcss/pull/9403)) - Add new `place-content-baseline` utility for `place-content: baseline` ([#&#8203;9498](https://github.com/tailwindlabs/tailwindcss/pull/9498)) - Add new `place-items-baseline` utility for `place-items: baseline` ([#&#8203;9507](https://github.com/tailwindlabs/tailwindcss/pull/9507)) - Add new `content-baseline` utility for `align-content: baseline` ([#&#8203;9507](https://github.com/tailwindlabs/tailwindcss/pull/9507)) - Add support for configuring default `font-feature-settings` for a font family ([#&#8203;9039](https://github.com/tailwindlabs/tailwindcss/pull/9039)) - Add standalone CLI build for 32-bit Linux on ARM (`node16-linux-armv7`) ([#&#8203;9084](https://github.com/tailwindlabs/tailwindcss/pull/9084)) - Add future flag to disable color opacity utility plugins ([#&#8203;9088](https://github.com/tailwindlabs/tailwindcss/pull/9088)) - Add negative value support for `outline-offset` ([#&#8203;9136](https://github.com/tailwindlabs/tailwindcss/pull/9136)) - Add support for modifiers to `matchUtilities` ([#&#8203;9541](https://github.com/tailwindlabs/tailwindcss/pull/9541)) - Allow negating utilities using `min`/`max`/`clamp` ([#&#8203;9237](https://github.com/tailwindlabs/tailwindcss/pull/9237)) - Implement fallback plugins when there is ambiguity between plugins when using arbitrary values ([#&#8203;9376](https://github.com/tailwindlabs/tailwindcss/pull/9376)) - Support `sort` function in `matchVariant` ([#&#8203;9423](https://github.com/tailwindlabs/tailwindcss/pull/9423)) - Upgrade to `postcss-nested` v6.0 ([#&#8203;9546](https://github.com/tailwindlabs/tailwindcss/pull/9546)) ##### Fixed - Use absolute paths when resolving changed files for resilience against working directory changes ([#&#8203;9032](https://github.com/tailwindlabs/tailwindcss/pull/9032)) - Fix ring color utility generation when using `respectDefaultRingColorOpacity` ([#&#8203;9070](https://github.com/tailwindlabs/tailwindcss/pull/9070)) - Sort tags before classes when `@apply`-ing a selector with joined classes ([#&#8203;9107](https://github.com/tailwindlabs/tailwindcss/pull/9107)) - Remove invalid `outline-hidden` utility ([#&#8203;9147](https://github.com/tailwindlabs/tailwindcss/pull/9147)) - Honor the `hidden` attribute on elements in preflight ([#&#8203;9174](https://github.com/tailwindlabs/tailwindcss/pull/9174)) - Don't stop watching atomically renamed files ([#&#8203;9173](https://github.com/tailwindlabs/tailwindcss/pull/9173), [#&#8203;9215](https://github.com/tailwindlabs/tailwindcss/pull/9215)) - Fix duplicate utilities issue causing memory leaks ([#&#8203;9208](https://github.com/tailwindlabs/tailwindcss/pull/9208)) - Fix `fontFamily` config TypeScript types ([#&#8203;9214](https://github.com/tailwindlabs/tailwindcss/pull/9214)) - Handle variants on complex selector utilities ([#&#8203;9262](https://github.com/tailwindlabs/tailwindcss/pull/9262)) - Fix shared config mutation issue ([#&#8203;9294](https://github.com/tailwindlabs/tailwindcss/pull/9294)) - Fix ordering of parallel variants ([#&#8203;9282](https://github.com/tailwindlabs/tailwindcss/pull/9282)) - Handle variants in utility selectors using `:where()` and `:has()` ([#&#8203;9309](https://github.com/tailwindlabs/tailwindcss/pull/9309)) - Improve data type analysis for arbitrary values ([#&#8203;9320](https://github.com/tailwindlabs/tailwindcss/pull/9320)) - Don't emit generated utilities with invalid uses of theme functions ([#&#8203;9319](https://github.com/tailwindlabs/tailwindcss/pull/9319)) - Revert change that only listened for stdin close on TTYs ([#&#8203;9331](https://github.com/tailwindlabs/tailwindcss/pull/9331)) - Ignore unset values (like `null` or `undefined`) when resolving the classList for intellisense ([#&#8203;9385](https://github.com/tailwindlabs/tailwindcss/pull/9385)) - Improve type checking for formal syntax ([#&#8203;9349](https://github.com/tailwindlabs/tailwindcss/pull/9349), [#&#8203;9448](https://github.com/tailwindlabs/tailwindcss/pull/9448)) - Fix incorrect required `content` key in custom plugin configs ([#&#8203;9502](https://github.com/tailwindlabs/tailwindcss/pull/9502), [#&#8203;9545](https://github.com/tailwindlabs/tailwindcss/pull/9545)) - Fix content path detection on Windows ([#&#8203;9569](https://github.com/tailwindlabs/tailwindcss/pull/9569)) - Ensure `--content` is used in the CLI when passed ([#&#8203;9587](https://github.com/tailwindlabs/tailwindcss/pull/9587)) ### [`v3.1.8`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;318---2022-08-05) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.1.7...v3.1.8) ##### Fixed - Don’t prefix classes within reused arbitrary variants ([#&#8203;8992](https://github.com/tailwindlabs/tailwindcss/pull/8992)) - Fix usage of alpha values inside single-named colors that are functions ([#&#8203;9008](https://github.com/tailwindlabs/tailwindcss/pull/9008)) - Fix `@apply` of user utilities when negative and non-negative versions both exist ([#&#8203;9027](https://github.com/tailwindlabs/tailwindcss/pull/9027)) ### [`v3.1.7`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;317---2022-07-29) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.1.6...v3.1.7) ##### Fixed - Don't rewrite source maps for `@layer` rules ([#&#8203;8971](https://github.com/tailwindlabs/tailwindcss/pull/8971)) ##### Added - Added types for `resolveConfig` ([#&#8203;8924](https://github.com/tailwindlabs/tailwindcss/pull/8924)) ### [`v3.1.6`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;316---2022-07-11) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.1.5...v3.1.6) ##### Fixed - Fix usage on Node 12.x ([b4e637e](https://github.com/tailwindlabs/tailwindcss/commit/b4e637e2e096a9d6f2210efba9541f6fd4f28e56)) - Handle theme keys with slashes when using `theme()` in CSS ([#&#8203;8831](https://github.com/tailwindlabs/tailwindcss/pull/8831)) ### [`v3.1.5`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;315---2022-07-07) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.1.4...v3.1.5) ##### Added - Support configuring a default `font-weight` for each font size utility ([#&#8203;8763](https://github.com/tailwindlabs/tailwindcss/pull/8763)) - Add support for alpha values in safe list ([#&#8203;8774](https://github.com/tailwindlabs/tailwindcss/pull/8774)) ##### Fixed - Improve types to support fallback values in the CSS-in-JS syntax used in plugin APIs ([#&#8203;8762](https://github.com/tailwindlabs/tailwindcss/pull/8762)) - Support including `tailwindcss` and `autoprefixer` in `postcss.config.js` in standalone CLI ([#&#8203;8769](https://github.com/tailwindlabs/tailwindcss/pull/8769)) - Fix using special-characters as prefixes ([#&#8203;8772](https://github.com/tailwindlabs/tailwindcss/pull/8772)) - Don’t prefix classes used within arbitrary variants ([#&#8203;8773](https://github.com/tailwindlabs/tailwindcss/pull/8773)) - Add more explicit types for the default theme ([#&#8203;8780](https://github.com/tailwindlabs/tailwindcss/pull/8780)) ### [`v3.1.4`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;314---2022-06-21) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.1.3...v3.1.4) ##### Fixed - Provide default to `<alpha-value>` when using `theme()` ([#&#8203;8652](https://github.com/tailwindlabs/tailwindcss/pull/8652)) - Detect arbitrary variants with quotes ([#&#8203;8687](https://github.com/tailwindlabs/tailwindcss/pull/8687)) - Don’t add spaces around raw `/` that are preceded by numbers ([#&#8203;8688](https://github.com/tailwindlabs/tailwindcss/pull/8688)) ### [`v3.1.3`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;313---2022-06-14) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.1.2...v3.1.3) ##### Fixed - Fix extraction of multi-word utilities with arbitrary values and quotes ([#&#8203;8604](https://github.com/tailwindlabs/tailwindcss/pull/8604)) - Fix casing of import of `corePluginList` type definition ([#&#8203;8587](https://github.com/tailwindlabs/tailwindcss/pull/8587)) - Ignore PostCSS nodes returned by `addVariant` ([#&#8203;8608](https://github.com/tailwindlabs/tailwindcss/pull/8608)) - Fix missing spaces around arithmetic operators ([#&#8203;8615](https://github.com/tailwindlabs/tailwindcss/pull/8615)) - Detect alpha value in CSS `theme()` function when using quotes ([#&#8203;8625](https://github.com/tailwindlabs/tailwindcss/pull/8625)) - Fix "Maximum call stack size exceeded" bug ([#&#8203;8636](https://github.com/tailwindlabs/tailwindcss/pull/8636)) - Allow functions returning parallel variants to mutate the container ([#&#8203;8622](https://github.com/tailwindlabs/tailwindcss/pull/8622)) - Remove text opacity CSS variables from `::marker` ([#&#8203;8622](https://github.com/tailwindlabs/tailwindcss/pull/8622)) ### [`v3.1.2`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;312---2022-06-10) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.1.1...v3.1.2) ##### Fixed - Ensure `\` is a valid arbitrary variant token ([#&#8203;8576](https://github.com/tailwindlabs/tailwindcss/pull/8576)) - Enable `postcss-import` in the CLI by default in watch mode ([#&#8203;8574](https://github.com/tailwindlabs/tailwindcss/pull/8574), [#&#8203;8580](https://github.com/tailwindlabs/tailwindcss/pull/8580)) ### [`v3.1.1`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;311---2022-06-09) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.1.0...v3.1.1) ##### Fixed - Fix candidate extractor regression ([#&#8203;8558](https://github.com/tailwindlabs/tailwindcss/pull/8558)) - Split `::backdrop` into separate defaults group ([#&#8203;8567](https://github.com/tailwindlabs/tailwindcss/pull/8567)) - Fix postcss plugin type ([#&#8203;8564](https://github.com/tailwindlabs/tailwindcss/pull/8564)) - Fix class detection in markdown code fences and slim templates ([#&#8203;8569](https://github.com/tailwindlabs/tailwindcss/pull/8569)) ### [`v3.1.0`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;310---2022-06-08) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.24...v3.1.0) ##### Fixed - Types: allow for arbitrary theme values (for 3rd party plugins) ([#&#8203;7926](https://github.com/tailwindlabs/tailwindcss/pull/7926)) - Don’t split vars with numbers in them inside arbitrary values ([#&#8203;8091](https://github.com/tailwindlabs/tailwindcss/pull/8091)) - Require matching prefix when detecting negatives ([#&#8203;8121](https://github.com/tailwindlabs/tailwindcss/pull/8121)) - Handle duplicate At Rules without children ([#&#8203;8122](https://github.com/tailwindlabs/tailwindcss/pull/8122)) - Allow arbitrary values with commas in `@apply` ([#&#8203;8125](https://github.com/tailwindlabs/tailwindcss/pull/8125)) - Fix intellisense for plugins with multiple `@apply` rules ([#&#8203;8213](https://github.com/tailwindlabs/tailwindcss/pull/8213)) - Improve type detection for arbitrary color values ([#&#8203;8201](https://github.com/tailwindlabs/tailwindcss/pull/8201)) - Support PostCSS config options in config file in CLI ([#&#8203;8226](https://github.com/tailwindlabs/tailwindcss/pull/8226)) - Remove default `[hidden]` style in preflight ([#&#8203;8248](https://github.com/tailwindlabs/tailwindcss/pull/8248)) - Only check selectors containing base apply candidates for circular dependencies ([#&#8203;8222](https://github.com/tailwindlabs/tailwindcss/pull/8222)) - Rewrite default class extractor ([#&#8203;8204](https://github.com/tailwindlabs/tailwindcss/pull/8204)) - Move `important` selector to the front when `@apply`-ing selector-modifying variants in custom utilities ([#&#8203;8313](https://github.com/tailwindlabs/tailwindcss/pull/8313)) - Error when registering an invalid custom variant ([#&#8203;8345](https://github.com/tailwindlabs/tailwindcss/pull/8345)) - Create tailwind.config.cjs file in ESM package when running init ([#&#8203;8363](https://github.com/tailwindlabs/tailwindcss/pull/8363)) - Fix `matchVariant` that use at-rules and placeholders ([#&#8203;8392](https://github.com/tailwindlabs/tailwindcss/pull/8392)) - Improve types of the `tailwindcss/plugin` ([#&#8203;8400](https://github.com/tailwindlabs/tailwindcss/pull/8400)) - Allow returning parallel variants from `addVariant` or `matchVariant` callback functions ([#&#8203;8455](https://github.com/tailwindlabs/tailwindcss/pull/8455)) - Try using local `postcss` installation first in the CLI ([#&#8203;8270](https://github.com/tailwindlabs/tailwindcss/pull/8270)) - Allow default ring color to be a function ([#&#8203;7587](https://github.com/tailwindlabs/tailwindcss/pull/7587)) - Don't inherit `to` value from parent gradients ([#&#8203;8489](https://github.com/tailwindlabs/tailwindcss/pull/8489)) - Remove process dependency from log functions ([#&#8203;8530](https://github.com/tailwindlabs/tailwindcss/pull/8530)) - Ensure we can use `@import 'tailwindcss/...'` without node_modules ([#&#8203;8537](https://github.com/tailwindlabs/tailwindcss/pull/8537)) ##### Changed - Only apply hover styles when supported (future) ([#&#8203;8394](https://github.com/tailwindlabs/tailwindcss/pull/8394)) - Respect default ring color opacity (future) ([#&#8203;8448](https://github.com/tailwindlabs/tailwindcss/pull/8448), [3f4005e](https://github.com/tailwindlabs/tailwindcss/commit/3f4005e833445f7549219eb5ae89728cbb3a2630)) ##### Added - Support PostCSS `Document` nodes ([#&#8203;7291](https://github.com/tailwindlabs/tailwindcss/pull/7291)) - Add `text-start` and `text-end` utilities ([#&#8203;6656](https://github.com/tailwindlabs/tailwindcss/pull/6656)) - Support customizing class name when using `darkMode: 'class'` ([#&#8203;5800](https://github.com/tailwindlabs/tailwindcss/pull/5800)) - Add `--poll` option to the CLI ([#&#8203;7725](https://github.com/tailwindlabs/tailwindcss/pull/7725)) - Add new `border-spacing` utilities ([#&#8203;7102](https://github.com/tailwindlabs/tailwindcss/pull/7102)) - Add `enabled` variant ([#&#8203;7905](https://github.com/tailwindlabs/tailwindcss/pull/7905)) - Add TypeScript types for the `tailwind.config.js` file ([#&#8203;7891](https://github.com/tailwindlabs/tailwindcss/pull/7891)) - Add `backdrop` variant ([#&#8203;7924](https://github.com/tailwindlabs/tailwindcss/pull/7924), [#&#8203;8526](https://github.com/tailwindlabs/tailwindcss/pull/8526)) - Add `grid-flow-dense` utility ([#&#8203;8193](https://github.com/tailwindlabs/tailwindcss/pull/8193)) - Add `mix-blend-plus-lighter` utility ([#&#8203;8288](https://github.com/tailwindlabs/tailwindcss/pull/8288)) - Add arbitrary variants ([#&#8203;8299](https://github.com/tailwindlabs/tailwindcss/pull/8299)) - Add experimental `matchVariant` API ([#&#8203;8310](https://github.com/tailwindlabs/tailwindcss/pull/8310), [34fd0fb8](https://github.com/tailwindlabs/tailwindcss/commit/34fd0fb82aa574cddc5c7aa3ad7d1af5e3735e5d)) - Add `prefers-contrast` media query variants ([#&#8203;8410](https://github.com/tailwindlabs/tailwindcss/pull/8410)) - Add opacity support when referencing colors with `theme` function ([#&#8203;8416](https://github.com/tailwindlabs/tailwindcss/pull/8416)) - Add `postcss-import` support to the CLI ([#&#8203;8437](https://github.com/tailwindlabs/tailwindcss/pull/8437)) - Add `optional` variant ([#&#8203;8486](https://github.com/tailwindlabs/tailwindcss/pull/8486)) - Add `<alpha-value>` placeholder support for custom colors ([#&#8203;8501](https://github.com/tailwindlabs/tailwindcss/pull/8501)) ### [`v3.0.24`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3024---2022-04-12) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.23...v3.0.24) ##### Fixed - Prevent nesting plugin from breaking other plugins ([#&#8203;7563](https://github.com/tailwindlabs/tailwindcss/pull/7563)) - Recursively collapse adjacent rules ([#&#8203;7565](https://github.com/tailwindlabs/tailwindcss/pull/7565)) - Preserve source maps for generated CSS ([#&#8203;7588](https://github.com/tailwindlabs/tailwindcss/pull/7588)) - Split box shadows on top-level commas only ([#&#8203;7479](https://github.com/tailwindlabs/tailwindcss/pull/7479)) - Use local user CSS cache for `@apply` ([#&#8203;7524](https://github.com/tailwindlabs/tailwindcss/pull/7524)) - Invalidate context when main CSS changes ([#&#8203;7626](https://github.com/tailwindlabs/tailwindcss/pull/7626)) - Only add `!` to selector class matching template candidate when using important modifier with mutli-class selectors ([#&#8203;7664](https://github.com/tailwindlabs/tailwindcss/pull/7664)) - Correctly parse and prefix animation names with dots ([#&#8203;7163](https://github.com/tailwindlabs/tailwindcss/pull/7163)) - Fix extraction from template literal/function with array ([#&#8203;7481](https://github.com/tailwindlabs/tailwindcss/pull/7481)) - Don't output unparsable arbitrary values ([#&#8203;7789](https://github.com/tailwindlabs/tailwindcss/pull/7789)) - Fix generation of `div:not(.foo)` if `.foo` is never defined ([#&#8203;7815](https://github.com/tailwindlabs/tailwindcss/pull/7815)) - Allow for custom properties in `rgb`, `rgba`, `hsl` and `hsla` colors ([#&#8203;7933](https://github.com/tailwindlabs/tailwindcss/pull/7933)) - Remove autoprefixer as explicit peer-dependency to avoid invalid warnings in situations where it isn't actually needed ([#&#8203;7949](https://github.com/tailwindlabs/tailwindcss/pull/7949)) - Ensure the `percentage` data type is validated correctly ([#&#8203;8015](https://github.com/tailwindlabs/tailwindcss/pull/8015)) - Make sure `font-weight` is inherited by form controls in all browsers ([#&#8203;8078](https://github.com/tailwindlabs/tailwindcss/pull/8078)) ##### Changed - Replace `chalk` with `picocolors` ([#&#8203;6039](https://github.com/tailwindlabs/tailwindcss/pull/6039)) - Replace `cosmiconfig` with `lilconfig` ([#&#8203;6039](https://github.com/tailwindlabs/tailwindcss/pull/6038)) - Update `cssnano` to avoid removing empty variables when minifying ([#&#8203;7818](https://github.com/tailwindlabs/tailwindcss/pull/7818)) ### [`v3.0.23`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3023---2022-02-16) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.22...v3.0.23) ##### Fixed - Remove opacity variables from `:visited` pseudo class ([#&#8203;7458](https://github.com/tailwindlabs/tailwindcss/pull/7458)) - Support arbitrary values + calc + theme with quotes ([#&#8203;7462](https://github.com/tailwindlabs/tailwindcss/pull/7462)) - Don't duplicate layer output when scanning content with variants + wildcards ([#&#8203;7478](https://github.com/tailwindlabs/tailwindcss/pull/7478)) - Implement `getClassOrder` instead of `sortClassList` ([#&#8203;7459](https://github.com/tailwindlabs/tailwindcss/pull/7459)) ### [`v3.0.22`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3022---2022-02-11) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.21...v3.0.22) ##### Fixed - Temporarily move `postcss` to dependencies ([#&#8203;7424](https://github.com/tailwindlabs/tailwindcss/pull/7424)) ### [`v3.0.21`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3021---2022-02-10) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.20...v3.0.21) ##### Fixed - Move prettier plugin to dev dependencies ([#&#8203;7418](https://github.com/tailwindlabs/tailwindcss/pull/7418)) ### [`v3.0.20`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3020---2022-02-10) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.19...v3.0.20) ##### Added - Expose `context.sortClassList(classes)` ([#&#8203;7412](https://github.com/tailwindlabs/tailwindcss/pull/7412)) ### [`v3.0.19`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3019---2022-02-07) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.18...v3.0.19) ##### Fixed - Fix preflight border color fallback ([#&#8203;7288](https://github.com/tailwindlabs/tailwindcss/pull/7288)) - Correctly parse shadow lengths without a leading zero ([#&#8203;7289](https://github.com/tailwindlabs/tailwindcss/pull/7289)) - Don't crash when scanning extremely long class candidates ([#&#8203;7331](https://github.com/tailwindlabs/tailwindcss/pull/7331)) - Use less hacky fix for URLs detected as custom properties ([#&#8203;7275](https://github.com/tailwindlabs/tailwindcss/pull/7275)) - Correctly generate negative utilities when dash is before the prefix ([#&#8203;7295](https://github.com/tailwindlabs/tailwindcss/pull/7295)) - Detect prefixed negative utilities in the safelist ([#&#8203;7295](https://github.com/tailwindlabs/tailwindcss/pull/7295)) ### [`v3.0.18`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3018---2022-01-28) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.17...v3.0.18) ##### Fixed - Fix `@apply` order regression (in `addComponents`, `addUtilities`, ...) ([#&#8203;7232](https://github.com/tailwindlabs/tailwindcss/pull/7232)) - Quick fix for incorrect arbitrary properties when using URLs ([#&#8203;7252](https://github.com/tailwindlabs/tailwindcss/pull/7252)) ### [`v3.0.17`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3017---2022-01-26) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.16...v3.0.17) ##### Fixed - Remove false positive warning in CLI when using the `--content` option ([#&#8203;7220](https://github.com/tailwindlabs/tailwindcss/pull/7220)) ### [`v3.0.16`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3016---2022-01-24) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.15...v3.0.16) ##### Fixed - Ensure to transpile the PostCSS Nesting plugin (tailwindcss/nesting) ([#&#8203;7080](https://github.com/tailwindlabs/tailwindcss/pull/7080)) - Improve various warnings ([#&#8203;7118](https://github.com/tailwindlabs/tailwindcss/pull/7118)) - Fix grammatical mistake ([cca5a38](https://github.com/tailwindlabs/tailwindcss/commit/cca5a3804e1d3ee0214491921e1aec35bf62a813)) ### [`v3.0.15`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3015---2022-01-15) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.14...v3.0.15) ##### Fixed - Temporarily remove optional chaining in nesting plugin ([#&#8203;7077](https://github.com/tailwindlabs/tailwindcss/pull/7077)) ### [`v3.0.14`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3014---2022-01-14) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.13...v3.0.14) ##### Added - Show warnings for invalid content config ([#&#8203;7065](https://github.com/tailwindlabs/tailwindcss/pull/7065)) ##### Fixed - Only emit utility/component variants when those layers exist ([#&#8203;7066](https://github.com/tailwindlabs/tailwindcss/pull/7066)) - Ensure nesting plugins can receive options ([#&#8203;7016](https://github.com/tailwindlabs/tailwindcss/pull/7016)) ### [`v3.0.13`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3013---2022-01-11) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.12...v3.0.13) ##### Fixed - Fix consecutive builds with at apply producing different CSS ([#&#8203;6999](https://github.com/tailwindlabs/tailwindcss/pull/6999)) ### [`v3.0.12`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3012---2022-01-07) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.11...v3.0.12) ##### Fixed - Allow use of falsy values in theme config ([#&#8203;6917](https://github.com/tailwindlabs/tailwindcss/pull/6917)) - Ensure we can apply classes that are grouped with non-class selectors ([#&#8203;6922](https://github.com/tailwindlabs/tailwindcss/pull/6922)) - Improve standalone CLI compatibility on Linux by switching to the `linuxstatic` build target ([#&#8203;6914](https://github.com/tailwindlabs/tailwindcss/pull/6914)) - Ensure `@apply` works consistently with or without `@layer` ([#&#8203;6938](https://github.com/tailwindlabs/tailwindcss/pull/6938)) - Only emit defaults when using base layer ([#&#8203;6926](https://github.com/tailwindlabs/tailwindcss/pull/6926)) - Emit plugin defaults regardless of usage ([#&#8203;6926](https://github.com/tailwindlabs/tailwindcss/pull/6926)) - Move default border color back to preflight ([#&#8203;6926](https://github.com/tailwindlabs/tailwindcss/pull/6926)) - Change `experimental.optimizeUniversalDefaults` to only work with `@tailwind base` ([#&#8203;6926](https://github.com/tailwindlabs/tailwindcss/pull/6926)) ### [`v3.0.11`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3011---2022-01-05) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.10...v3.0.11) ##### Fixed - Preserve casing of CSS variables added by plugins ([#&#8203;6888](https://github.com/tailwindlabs/tailwindcss/pull/6888)) - Ignore content paths that are passed in but don't actually exist ([#&#8203;6901](https://github.com/tailwindlabs/tailwindcss/pull/6901)) - Revert change that applies Tailwind's defaults in isolated environments like CSS modules ([9fdc391](https://github.com/tailwindlabs/tailwindcss/commit/9fdc391d4ff93e7e350f5ce439060176b1f0162f)) ### [`v3.0.10`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3010---2022-01-04) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.9...v3.0.10) ##### Fixed - Fix `@apply` in files without `@tailwind` directives ([#&#8203;6580](https://github.com/tailwindlabs/tailwindcss/pull/6580), [#&#8203;6875](https://github.com/tailwindlabs/tailwindcss/pull/6875)) - CLI: avoid unnecessary writes to output files ([#&#8203;6550](https://github.com/tailwindlabs/tailwindcss/pull/6550)) ##### Added - Allow piping data into the CLI ([#&#8203;6876](https://github.com/tailwindlabs/tailwindcss/pull/6876)) ### [`v3.0.9`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;309---2022-01-03) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.8...v3.0.9) ##### Fixed - Improve `DEBUG` flag ([#&#8203;6797](https://github.com/tailwindlabs/tailwindcss/pull/6797), [#&#8203;6804](https://github.com/tailwindlabs/tailwindcss/pull/6804)) - Ensure we can use `<` and `>` characters in modifiers ([#&#8203;6851](https://github.com/tailwindlabs/tailwindcss/pull/6851)) - Validate `theme()` works in arbitrary values ([#&#8203;6852](https://github.com/tailwindlabs/tailwindcss/pull/6852)) - Properly detect `theme()` value usage in arbitrary properties ([#&#8203;6854](https://github.com/tailwindlabs/tailwindcss/pull/6854)) - Improve collapsing of duplicate declarations ([#&#8203;6856](https://github.com/tailwindlabs/tailwindcss/pull/6856)) - Remove support for `TAILWIND_MODE=watch` ([#&#8203;6858](https://github.com/tailwindlabs/tailwindcss/pull/6858)) ### [`v3.0.8`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;308---2021-12-28) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.7...v3.0.8) ##### Fixed - Reduce specificity of `abbr` rule in preflight ([#&#8203;6671](https://github.com/tailwindlabs/tailwindcss/pull/6671)) - Support HSL with hue units in arbitrary values ([#&#8203;6726](https://github.com/tailwindlabs/tailwindcss/pull/6726)) - Add `node16-linux-arm64` target for standalone CLI ([#&#8203;6693](https://github.com/tailwindlabs/tailwindcss/pull/6693)) ### [`v3.0.7`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;307---2021-12-17) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.6...v3.0.7) ##### Fixed - Don't mutate custom color palette when overriding per-plugin colors ([#&#8203;6546](https://github.com/tailwindlabs/tailwindcss/pull/6546)) - Improve circular dependency detection when using `@apply` ([#&#8203;6588](https://github.com/tailwindlabs/tailwindcss/pull/6588)) - Only generate variants for non-`user` layers ([#&#8203;6589](https://github.com/tailwindlabs/tailwindcss/pull/6589)) - Properly extract classes with arbitrary values in arrays and classes followed by escaped quotes ([#&#8203;6590](https://github.com/tailwindlabs/tailwindcss/pull/6590)) - Improve jsx interpolation candidate matching ([#&#8203;6593](https://github.com/tailwindlabs/tailwindcss/pull/6593)) - Ensure `@apply` of a rule inside an AtRule works ([#&#8203;6594](https://github.com/tailwindlabs/tailwindcss/pull/6594)) ### [`v3.0.6`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;306---2021-12-16) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.5...v3.0.6) ##### Fixed - Support square bracket notation in paths ([#&#8203;6519](https://github.com/tailwindlabs/tailwindcss/pull/6519)) - Ensure all plugins are executed for a given candidate ([#&#8203;6540](https://github.com/tailwindlabs/tailwindcss/pull/6540)) ### [`v3.0.5`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;305---2021-12-15) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.4...v3.0.5) ##### Fixed - Revert: add `li` to list-style reset ([9777562d](https://github.com/tailwindlabs/tailwindcss/commit/9777562da37ee631bbf77374c0d14825f09ef9af)) ### [`v3.0.4`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;304---2021-12-15) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.3...v3.0.4) ##### Fixed - Insert always-on defaults layer in correct spot ([#&#8203;6526](https://github.com/tailwindlabs/tailwindcss/pull/6526)) ### [`v3.0.3`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;303---2021-12-15) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.2...v3.0.3) ##### Added - Warn about invalid globs in `content` ([#&#8203;6449](https://github.com/tailwindlabs/tailwindcss/pull/6449)) - Add standalone tailwindcss CLI ([#&#8203;6506](https://github.com/tailwindlabs/tailwindcss/pull/6506)) - Add `li` to list-style reset ([00f60e6](https://github.com/tailwindlabs/tailwindcss/commit/00f60e61013c6e4e3419e4b699371a13eb30b75d)) ##### Fixed - Don't output unparsable values ([#&#8203;6469](https://github.com/tailwindlabs/tailwindcss/pull/6469)) - Fix text decoration utilities from overriding the new text decoration color/style/thickness utilities when used with a modifier ([#&#8203;6378](https://github.com/tailwindlabs/tailwindcss/pull/6378)) - Move defaults to their own always-on layer ([#&#8203;6500](https://github.com/tailwindlabs/tailwindcss/pull/6500)) - Support negative values in safelist patterns ([#&#8203;6480](https://github.com/tailwindlabs/tailwindcss/pull/6480)) ### [`v3.0.2`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3024---2022-04-12) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.1...v3.0.2) ##### Fixed - Prevent nesting plugin from breaking other plugins ([#&#8203;7563](https://github.com/tailwindlabs/tailwindcss/pull/7563)) - Recursively collapse adjacent rules ([#&#8203;7565](https://github.com/tailwindlabs/tailwindcss/pull/7565)) - Preserve source maps for generated CSS ([#&#8203;7588](https://github.com/tailwindlabs/tailwindcss/pull/7588)) - Split box shadows on top-level commas only ([#&#8203;7479](https://github.com/tailwindlabs/tailwindcss/pull/7479)) - Use local user CSS cache for `@apply` ([#&#8203;7524](https://github.com/tailwindlabs/tailwindcss/pull/7524)) - Invalidate context when main CSS changes ([#&#8203;7626](https://github.com/tailwindlabs/tailwindcss/pull/7626)) - Only add `!` to selector class matching template candidate when using important modifier with mutli-class selectors ([#&#8203;7664](https://github.com/tailwindlabs/tailwindcss/pull/7664)) - Correctly parse and prefix animation names with dots ([#&#8203;7163](https://github.com/tailwindlabs/tailwindcss/pull/7163)) - Fix extraction from template literal/function with array ([#&#8203;7481](https://github.com/tailwindlabs/tailwindcss/pull/7481)) - Don't output unparsable arbitrary values ([#&#8203;7789](https://github.com/tailwindlabs/tailwindcss/pull/7789)) - Fix generation of `div:not(.foo)` if `.foo` is never defined ([#&#8203;7815](https://github.com/tailwindlabs/tailwindcss/pull/7815)) - Allow for custom properties in `rgb`, `rgba`, `hsl` and `hsla` colors ([#&#8203;7933](https://github.com/tailwindlabs/tailwindcss/pull/7933)) - Remove autoprefixer as explicit peer-dependency to avoid invalid warnings in situations where it isn't actually needed ([#&#8203;7949](https://github.com/tailwindlabs/tailwindcss/pull/7949)) - Ensure the `percentage` data type is validated correctly ([#&#8203;8015](https://github.com/tailwindlabs/tailwindcss/pull/8015)) - Make sure `font-weight` is inherited by form controls in all browsers ([#&#8203;8078](https://github.com/tailwindlabs/tailwindcss/pull/8078)) ##### Changed - Replace `chalk` with `picocolors` ([#&#8203;6039](https://github.com/tailwindlabs/tailwindcss/pull/6039)) - Replace `cosmiconfig` with `lilconfig` ([#&#8203;6039](https://github.com/tailwindlabs/tailwindcss/pull/6038)) - Update `cssnano` to avoid removing empty variables when minifying ([#&#8203;7818](https://github.com/tailwindlabs/tailwindcss/pull/7818)) ### [`v3.0.1`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;3019---2022-02-07) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v3.0.0...v3.0.1) ##### Fixed - Fix preflight border color fallback ([#&#8203;7288](https://github.com/tailwindlabs/tailwindcss/pull/7288)) - Correctly parse shadow lengths without a leading zero ([#&#8203;7289](https://github.com/tailwindlabs/tailwindcss/pull/7289)) - Don't crash when scanning extremely long class candidates ([#&#8203;7331](https://github.com/tailwindlabs/tailwindcss/pull/7331)) - Use less hacky fix for URLs detected as custom properties ([#&#8203;7275](https://github.com/tailwindlabs/tailwindcss/pull/7275)) - Correctly generate negative utilities when dash is before the prefix ([#&#8203;7295](https://github.com/tailwindlabs/tailwindcss/pull/7295)) - Detect prefixed negative utilities in the safelist ([#&#8203;7295](https://github.com/tailwindlabs/tailwindcss/pull/7295)) ### [`v3.0.0`](https://github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#&#8203;300---2021-12-09) [Compare Source](https://github.com/tailwindlabs/tailwindcss/compare/v2.2.19...v3.0.0) ##### Fixed - Enforce the order of some variants (like `before` and `after`) ([#&#8203;6018](https://github.com/tailwindlabs/tailwindcss/pull/6018)) ##### Added - Add `placeholder` variant ([#&#8203;6106](https://github.com/tailwindlabs/tailwindcss/pull/6106)) - Add composable `touch-action` utilities ([#&#8203;6115](https://github.com/tailwindlabs/tailwindcss/pull/6115)) - Add support for "arbitrary properties" ([#&#8203;6161](https://github.com/tailwindlabs/tailwindcss/pull/6161)) - Add `portrait` and `landscape` variants ([#&#8203;6046](https://github.com/tailwindlabs/tailwindcss/pull/6046)) - Add `text-decoration-style`, `text-decoration-thickness`, and `text-underline-offset` utilities ([#&#8203;6004](https://github.com/tailwindlabs/tailwindcss/pull/6004)) - Add `menu` reset to preflight ([#&#8203;6213](https://github.com/tailwindlabs/tailwindcss/pull/6213)) - Allow `0` as a valid `length` value ([#&#8203;6233](https://github.com/tailwindlabs/tailwindcss/pull/6233), [#&#8203;6259](https://github.com/tailwindlabs/tailwindcss/pull/6259)) - Add CSS functions to data types ([#&#8203;6258](https://github.com/tailwindlabs/tailwindcss/pull/6258)) - Support negative values for `scale-*` utilities ([c48e629](https://github.com/tailwindlabs/tailwindcss/commit/c48e629955585ad18dadba9f470fda59cc448ab7)) - Improve `length` data type, by validating each value individually ([#&#8203;6283](https://github.com/tailwindlabs/tailwindcss/pull/6283)) ##### Changed - Deprecate `decoration-slice` and `decoration-break` in favor `box-decoration-slice` and `box-decoration-break` *(non-breaking)* ([#&#8203;6004](https://github.com/tailwindlabs/tailwindcss/pull/6004)) </details> <details> <summary>Microsoft/TypeScript</summary> ### [`v4.8.4`](https://github.com/microsoft/TypeScript/releases/tag/v4.8.4) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.8.3...v4.8.4) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-8/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.8.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.0%22+). - [fixed issues query for Typescript 4.8.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.1%22+). - [fixed issues query for Typescript 4.8.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.2%22+). - [fixed issues query for Typescript 4.8.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.3%22+). - [fixed issues query for Typescript 4.8.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.4%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-484) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017)) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.8.3`](https://github.com/microsoft/TypeScript/releases/tag/v4.8.3) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.8.2...v4.8.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-8/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.8.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.0%22+). - [fixed issues query for Typescript 4.8.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.1%22+). - [fixed issues query for Typescript 4.8.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.2%22+). - [fixed issues query for Typescript 4.8.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.3%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-483) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017)) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.8.2`](https://github.com/microsoft/TypeScript/releases/tag/v4.8.2) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.7.4...v4.8.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-8/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.8.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.0%22+). - [fixed issues query for Typescript 4.8.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.1%22+). - [fixed issues query for Typescript 4.8.1 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.2%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-48) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017)) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.7.4`](https://github.com/microsoft/TypeScript/releases/tag/v4.7.4) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.7.3...v4.7.4) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-7/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.7.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.0%22+). - [fixed issues query for Typescript 4.7.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.1%22+). - [fixed issues query for Typescript 4.7.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.2%22+). - [fixed issues query for Typescript 4.7.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.3%22+). - [fixed issues query for Typescript 4.7.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.4%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-474) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017)) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.7.3`](https://github.com/microsoft/TypeScript/releases/tag/v4.7.3) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.7.2...v4.7.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-7/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.7.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.0%22+). - [fixed issues query for Typescript 4.7.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.1%22+). - [fixed issues query for Typescript 4.7.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.2%22+). - [fixed issues query for Typescript 4.7.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.3%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-473) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017)) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.7.2`](https://github.com/microsoft/TypeScript/releases/tag/v4.7.2) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.6.4...v4.7.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-7/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.7.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.0%22+). - [fixed issues query for Typescript 4.7.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.1%22+). - [fixed issues query for Typescript 4.7.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.2%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-472) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017)) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.6.4`](https://github.com/microsoft/TypeScript/releases/tag/v4.6.4) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.6.3...v4.6.4) This release includes [a bug fix for text formatting on certain ranges](Studiohttps://github.com/microsoft/TypeScript/pull/48463), which was impacting Visual Studio users. For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.6.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.0%22+). - [fixed issues query for Typescript 4.6.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.1%22+). - [fixed issues query for Typescript 4.6.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.2%22+). - [fixed issues query for Typescript 4.6.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.3%22+). - [fixed issues query for Typescript 4.6.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.4%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-464) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017)) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.6.3`](https://github.com/microsoft/TypeScript/releases/tag/v4.6.3) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.6.2...v4.6.3) This release includes fixes for - [an incremental parsing bug caused by faulty error recovery logic](https://github.com/microsoft/TypeScript/issues/47895) - [improved results from the TypeScript API's `preProcessFile` function](https://github.com/microsoft/TypeScript/pull/47657) For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.6.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.0%22+). - [fixed issues query for Typescript 4.6.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.1%22+). - [fixed issues query for Typescript 4.6.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.2%22+). - [fixed issues query for Typescript 4.6.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.3%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) ### [`v4.6.2`](https://github.com/microsoft/TypeScript/releases/tag/v4.6.2) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.5.5...v4.6.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-6/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.6.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.0%22+). - [fixed issues query for Typescript 4.6.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.1%22+). - [fixed issues query for Typescript 4.6.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.2%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-46) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017)) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.5.5`](https://github.com/microsoft/TypeScript/releases/tag/v4.5.5) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.5.4...v4.5.5) This [patch release](https://github.com/microsoft/TypeScript/issues?q=is%3Aissue+milestone%3A%22TypeScript+4.5.5%22+is%3Aclosed) 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 - [fixed issues query for Typescript 4.5.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.0%22+). - [fixed issues query for Typescript 4.5.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.1%22+). - [fixed issues query for Typescript 4.5.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.2%22+). - [fixed issues query for Typescript 4.5.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.3%22+). - [fixed issues query for Typescript 4.5.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.4%22+). - [fixed issues query for Typescript 4.5.5 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.5%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) <!-- * [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) --> ### [`v4.5.4`](https://github.com/microsoft/TypeScript/releases/tag/v4.5.4) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.5.3...v4.5.4) This patch release includes a fix for [incorrectly offering up JSX attribute snippet completions at the beginning of a tag name](https://github.com/microsoft/TypeScript/issues/47090). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.5.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.0%22+). - [fixed issues query for Typescript 4.5.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.1%22+). - [fixed issues query for Typescript 4.5.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.2%22+). - [fixed issues query for Typescript 4.5.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.3%22+). - - [fixed issues query for Typescript 4.5.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.4%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.5.3`](https://github.com/microsoft/TypeScript/releases/tag/v4.5.3) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.5.2...v4.5.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-5/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.5.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.0%22+). - [fixed issues query for Typescript 4.5.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.1%22+). - [fixed issues query for Typescript 4.5.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.2%22+). - [fixed issues query for Typescript 4.5.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.3%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v4.5.2`](https://github.com/microsoft/TypeScript/releases/tag/v4.5.2) [Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.4.4...v4.5.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-5/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 4.5.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.0%22+). - [fixed issues query for Typescript 4.5.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.1%22+). - [fixed issues query for Typescript 4.5.1 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.2%22+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [Visual Studio 2017/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-45) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017)) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzMi4yNDEuMTEiLCJ1cGRhdGVkSW5WZXIiOiIzMi4yNDEuMTEifQ==-->
kjuulh added 1 commit 2022-10-27 08:34:05 +02:00
Update all dependencies
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
930144c6a9
kjuulh merged commit 930144c6a9 into main 2022-10-27 08:34:06 +02:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kjuulh/todo#13
No description provided.