From d0ce7f1f89e770afda63a54d0992b0e33e1ae427 Mon Sep 17 00:00:00 2001 From: Tom Pereira Date: Tue, 24 Dec 2024 17:31:32 +0000 Subject: [PATCH 01/41] change initial commit message in changelogs (#3) --- docs/CHANGELOG.md | 2 +- packages/features/docs/CHANGELOG.md | 2 +- packages/react-pointcuts/docs/CHANGELOG.md | 2 +- packages/ssr/docs/CHANGELOG.md | 2 +- packages/webpack/docs/CHANGELOG.md | 3 +-- 5 files changed, 5 insertions(+), 6 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index fe59d05..6f9d606 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -233,4 +233,4 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Added -- Initial version, copying code from PLP. +- Initial commit. diff --git a/packages/features/docs/CHANGELOG.md b/packages/features/docs/CHANGELOG.md index be37a9f..abc3dd8 100644 --- a/packages/features/docs/CHANGELOG.md +++ b/packages/features/docs/CHANGELOG.md @@ -93,4 +93,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- Initial version, copying code from PLP +- Initial commit. diff --git a/packages/react-pointcuts/docs/CHANGELOG.md b/packages/react-pointcuts/docs/CHANGELOG.md index 10c985a..932854d 100644 --- a/packages/react-pointcuts/docs/CHANGELOG.md +++ b/packages/react-pointcuts/docs/CHANGELOG.md @@ -103,4 +103,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- Initial version, copying code from PLP +- Initial commit. diff --git a/packages/ssr/docs/CHANGELOG.md b/packages/ssr/docs/CHANGELOG.md index f7b0824..75ca4ea 100644 --- a/packages/ssr/docs/CHANGELOG.md +++ b/packages/ssr/docs/CHANGELOG.md @@ -83,4 +83,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- Initial version, copying code from PLP +- Initial commit. diff --git a/packages/webpack/docs/CHANGELOG.md b/packages/webpack/docs/CHANGELOG.md index ae2c30c..5102394 100644 --- a/packages/webpack/docs/CHANGELOG.md +++ b/packages/webpack/docs/CHANGELOG.md @@ -103,5 +103,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- Initial version, copying code from PLP -- Added unit tests around the plugin itself, not originally developed in PLP +- Initial commit From 27e436a05e74b57ec5de78cb88fe09594c55c70e Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 30 Jan 2025 15:30:26 +0000 Subject: [PATCH 02/41] [#18] Fix JSDoc module names (#19) * rename to proper module namespace * update docs links * update versions * web toggle point in readme title * fixup changelog from revised 0.x range * 2.0.0 -> 0.5.0 in oss version scheme * fix broken link syntax in CHANGELOG * consistent quoting * more version history issues * fixup module name in jsdoc * add web remove sdkInstanceProvider * remove SDKInstanceProvider * fixup jsdoc dedupe * tweak * clarity re: ssr package * casing etc --- docs/CHANGELOG.md | 17 +++++++++----- docs/README.md | 2 +- docs/dedupeExternalJsdocPlugin.js | 10 ++++----- package-lock.json | 12 +++++----- package.json | 2 +- packages/features/docs/CHANGELOG.md | 10 +++++++-- packages/features/docs/README.md | 2 +- packages/features/package.json | 2 +- packages/features/src/global.js | 14 ++++++------ packages/features/src/global/store.js | 10 ++++----- .../features/src/nodeRequestScoped/store.js | 10 ++++----- packages/features/src/reactContext/store.js | 10 ++++----- .../src/ssrBackedReactContext/store.js | 12 +++++----- packages/react-pointcuts/docs/CHANGELOG.md | 8 ++++++- packages/react-pointcuts/docs/README.md | 2 +- packages/react-pointcuts/package.json | 2 +- packages/react-pointcuts/src/external.js | 11 ---------- .../src/getCodeSelectionPlugins.js | 2 +- packages/react-pointcuts/src/index.js | 2 +- .../src/withTogglePointFactory/index.js | 8 +++---- .../src/withToggledHookFactory/index.js | 8 +++---- packages/ssr/docs/CHANGELOG.md | 8 ++++++- packages/ssr/docs/README.md | 2 +- packages/ssr/package.json | 2 +- packages/ssr/src/external.js | 11 ---------- packages/ssr/src/index.js | 4 ++-- .../ssr/src/serializationFactory/index.js | 22 +++++++++---------- packages/ssr/src/withJsonIsomorphism/index.js | 2 +- packages/webpack/docs/CHANGELOG.md | 6 +++++ packages/webpack/docs/README.md | 2 +- packages/webpack/package.json | 2 +- packages/webpack/src/index.js | 2 +- .../src/plugins/togglePointInjection/index.js | 2 +- 33 files changed, 115 insertions(+), 106 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 6f9d606..532c7d8 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -14,6 +14,13 @@ N.B. See changelogs for individual packages, where most change will occur: This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). +## [0.10.2] - 2024-12-26 + +### Fixed + +- "Toggle Point" to "Web Toggle Point" in title of `README.md` +- fixed the dedupe external JSDoc plugin, after move to type imports + ## [0.10.1] - 2024-12-24 ### Fixed @@ -73,7 +80,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Fixed -- Removed old `yarn.lock` left over from 1.0.3 update. +- Removed old `yarn.lock` left over from 0.4.3 update. ## Added @@ -85,7 +92,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). - Moved to v4 of [`upload-artifact`](https://github.com/actions/upload-artifact) and [`download-artifact`](https://github.com/actions/download-artifact) actions - Changed nature of pre-release packages to `beta` from `alpha` (better matching the reality of how these pre-releases are used) -- Fixed up contribution guide since version 2.0.0 added the proposed update checks +- Fixed up contribution guide since version 0.5.0 added the proposed update checks - Updated to JSDoc 4, issue with factories resolved ### Changed @@ -127,7 +134,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Fixed -- Fixup documentation left fallow from package split (2.0.0) +- Fixup documentation left fallow from package split (0.5.0) - Upgrade serialize-javascript to 6.0.2 to avoid [`SNYK-JS-SERIALIZEJAVASCRIPT-614760`](https://security.snyk.io/vuln/SNYK-JS-SERIALIZEJAVASCRIPT-6147607) - snyk ignore [`SNYK-JS-INFLIGHT-6095116`](https://security.snyk.io/vuln/SNYK-JS-INFLIGHT-6095116) - move to use asos runner groups @@ -157,7 +164,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Changed - Split the "app" package into separate "ssr", "features" and "react-pointcuts" packages. -- Move to explicit rather than wildcard workspaces, to enable reification of the repo when publishing (waiting on [https://github.com/Roaders/workspace-version/issues/3](an issue to resolve)) +- Move to explicit rather than wildcard workspaces, to enable reification of the repo when publishing (waiting on [an issue to resolve](https://github.com/Roaders/workspace-version/issues/3)) - Updated the `dedupeExternalJsdocPlugin` to de-duplicate members of external namespaces, rather than just the namespaces themselves (to ensure we don't duplicate React, HostApplication etc. in the html documentation) - Updated packages for snyk vulnerabilities, populated policy file - Removed redundant export fields from workspace `package.json` @@ -175,7 +182,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Added -- Danger support, with checks for CHANGELOG.md updates and package-lock.json updates +- Danger support, with checks for `CHANGELOG.md` updates and `package-lock.json` updates ### Fixed diff --git a/docs/README.md b/docs/README.md index 116c4fd..e6e59fa 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,5 +1,5 @@

-

Toggle Point

+

Web Toggle Point

A library providing a means to toggle or branch web application code. diff --git a/docs/dedupeExternalJsdocPlugin.js b/docs/dedupeExternalJsdocPlugin.js index e339a52..56ee304 100644 --- a/docs/dedupeExternalJsdocPlugin.js +++ b/docs/dedupeExternalJsdocPlugin.js @@ -18,15 +18,15 @@ exports.defineTags = function (dictionary) { .synonym("external"); }; -const seenExternals = new Map(); +const seen = new Map(); exports.handlers = { jsdocCommentFound: function (e) { if (e.filename.endsWith("external.js")) { - const match = e.comment.match(/external:(\S+)/); + const match = e.comment.match(/(?:[\s\S]*@typedef \{.+\} (?.+))?[\s\S]+external:(?\S+)/); if (match) { - const [external] = match; - if (!seenExternals.has(external)) { - seenExternals.set(external, true); + const symbol = match.groups.typedef || match.groups.external; + if (!seen.has(symbol)) { + seen.set(symbol, true); } else { e.comment = "/**/"; } diff --git a/package-lock.json b/package-lock.json index e3b0abd..71ede54 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@asos/web-toggle-point", - "version": "0.10.1", + "version": "0.10.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@asos/web-toggle-point", - "version": "0.10.1", + "version": "0.10.2", "license": "MIT", "workspaces": [ "packages/features", @@ -20346,7 +20346,7 @@ }, "packages/features": { "name": "@asos/web-toggle-point-features", - "version": "0.3.0", + "version": "0.3.1", "license": "MIT", "dependencies": { "@babel/runtime": "^7.26.0" @@ -20403,7 +20403,7 @@ }, "packages/react-pointcuts": { "name": "@asos/web-toggle-point-react-pointcuts", - "version": "0.4.0", + "version": "0.4.2", "license": "MIT", "dependencies": { "@babel/runtime": "^7.26.0" @@ -20441,7 +20441,7 @@ }, "packages/ssr": { "name": "@asos/web-toggle-point-ssr", - "version": "0.2.0", + "version": "0.2.1", "license": "MIT", "dependencies": { "@babel/runtime": "^7.26.0", @@ -20477,7 +20477,7 @@ }, "packages/webpack": { "name": "@asos/web-toggle-point-webpack", - "version": "0.7.2", + "version": "0.7.3", "license": "MIT", "dependencies": { "@babel/runtime": "^7.26.0", diff --git a/package.json b/package.json index 5c5e40e..d72f35a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@asos/web-toggle-point", - "version": "0.10.1", + "version": "0.10.2", "repository": "git@github.com:asos/web-toggle-point.git", "homepage": "https://asos.github.io/web-toggle-point/", "license": "MIT", diff --git a/packages/features/docs/CHANGELOG.md b/packages/features/docs/CHANGELOG.md index abc3dd8..fa7b6a2 100644 --- a/packages/features/docs/CHANGELOG.md +++ b/packages/features/docs/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.3.1] - 2024-12-26 + +### Fixed + +- updated some errant JSDoc namespaces + ## [0.3.0] - 2024-11-28 ### Changed @@ -32,7 +38,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - updated to latest `@testing-library/react` to remove errant warning about import of `act` - updated to `react@18.3.1`, set minimum required react to `17` - - technically a breaking change, but `jsx-runtime` already introduced in [version 1.0.0](#100---2023-09-12)... so was already broken, oops. + - technically a breaking change, but `jsx-runtime` already introduced in [version 0.1.0](#010---2023-09-12)... so was already broken, oops. - renamed commonJs exports to have `.cjs` extension to prevent `[ERR_REQUIRE_ESM]` errors in consumers that aren't `"type": "module"` ## [0.2.2] - 2024-12-26 @@ -61,7 +67,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed -- Fixup documentation left fallow from package split (0.1.0) +- Fixup documentation left fallow from package split ([version 0.1.0](#010---2023-09-12)) ## [0.1.1] - 2023-11-16 diff --git a/packages/features/docs/README.md b/packages/features/docs/README.md index 0353466..fd7cdef 100644 --- a/packages/features/docs/README.md +++ b/packages/features/docs/README.md @@ -8,7 +8,7 @@ A store should be chosen based on the requirement for global or partitioned stat ## Usage -See: [JSDoc output](https://asos.github.io/web-toggle-point/module-asos-web-toggle-point-features.html) +See: [JSDoc output](https://asos.github.io/web-toggle-point/module-web-toggle-point-features.html) > [!WARNING] > ### Use with React 17 diff --git a/packages/features/package.json b/packages/features/package.json index 36abbcf..e38f533 100644 --- a/packages/features/package.json +++ b/packages/features/package.json @@ -1,7 +1,7 @@ { "name": "@asos/web-toggle-point-features", "description": "toggle point features code", - "version": "0.3.0", + "version": "0.3.1", "license": "MIT", "type": "module", "main": "./lib/main.es5.cjs", diff --git a/packages/features/src/global.js b/packages/features/src/global.js index abf4590..bd618e8 100644 --- a/packages/features/src/global.js +++ b/packages/features/src/global.js @@ -2,21 +2,21 @@ import "./external"; /** * Application code for holding feature toggle state - * @module toggle-point-features + * @module web-toggle-point-features */ /** * Interface for feature toggle stores * * @interface FeaturesStore - * @memberof module:toggle-point-features + * @memberof module:web-toggle-point-features */ /** * Method to return the value of the feature toggle store. * For {@link https://reactjs.org/docs/context.html|React context}-backed feature stores, this should be called following {@link https://react.dev/warnings/invalid-hook-call-warning|the rules of hooks} * * @function - * @memberof module:toggle-point-features + * @memberof module:web-toggle-point-features * @name FeaturesStore#getFeatures */ @@ -24,13 +24,13 @@ import "./external"; * Interface for singleton value-based feature toggle stores * * @interface SingletonFeaturesStore - * @memberof module:toggle-point-features + * @memberof module:web-toggle-point-features */ /** * Method to set a value to the feature toggle store. * * @function - * @memberof module:toggle-point-features + * @memberof module:web-toggle-point-features * @name SingletonFeaturesStore#useValue * @param {object} params parameters * @param {object} params.value A value to store, used to drive feature toggles. @@ -40,13 +40,13 @@ import "./external"; * Interface for {@link https://reactjs.org/docs/context.html|React context}-based feature toggle stores * * @interface ContextFeaturesStore - * @memberof module:toggle-point-features + * @memberof module:web-toggle-point-features */ /** * Method to create a React context provider, linked to the features store. * * @function - * @memberof module:toggle-point-features + * @memberof module:web-toggle-point-features * @name ContextFeaturesStore#providerFactory * @returns {external:React.Component} A react context provider that accepts a `value` prop, representing the feature toggle state. */ diff --git a/packages/features/src/global/store.js b/packages/features/src/global/store.js index 7722bd3..2a0c8da 100644 --- a/packages/features/src/global/store.js +++ b/packages/features/src/global/store.js @@ -8,16 +8,16 @@ const storeMap = new WeakMap(); * A thin wrapper around a singleton, used as an extension point for future plugins. * Consider {@link https://github.com/christophehurpeau/deep-freeze-es6|deep freezing} the value to prevent accidental mutation, if this is intended to be static. * For reactive decisions, consider implementing something that allows for reactivity e.g. a {@link https://github.com/pmndrs/valtio|valtio/vanilla} proxy, and subscribe appropriately in a toggle point. - * @memberof module:toggle-point-features - * @returns {module:toggle-point-features.globalFeaturesStore} A store for features, held globally in the application. + * @memberof module:web-toggle-point-features + * @returns {module:web-toggle-point-features.globalFeaturesStore} A store for features, held globally in the application. */ const globalFeaturesStoreFactory = () => { const identifier = Symbol(); /** * @name globalFeaturesStore - * @memberof module:toggle-point-features - * @implements module:toggle-point-features.FeaturesStore - * @implements module:toggle-point-features.SingletonFeaturesStore + * @memberof module:web-toggle-point-features + * @implements module:web-toggle-point-features.FeaturesStore + * @implements module:web-toggle-point-features.SingletonFeaturesStore */ return { useValue: ({ value }) => { diff --git a/packages/features/src/nodeRequestScoped/store.js b/packages/features/src/nodeRequestScoped/store.js index 0092fb4..c2232df 100644 --- a/packages/features/src/nodeRequestScoped/store.js +++ b/packages/features/src/nodeRequestScoped/store.js @@ -4,17 +4,17 @@ import { AsyncLocalStorage } from "async_hooks"; * A factory function used to create a store for features, held in request-scoped global value. * Should only be used server-side, for anything user or request specific. * A thin wrapper around node {@link https://nodejs.org/api/async_context.html#class-asynclocalstorage|AsyncLocalStorage}, used as an extension point for future plugins. - * @memberof module:toggle-point-features - * @returns {module:toggle-point-features.requestScopedFeaturesStore} A store for features, scoped for the current request. + * @memberof module:web-toggle-point-features + * @returns {module:web-toggle-point-features.requestScopedFeaturesStore} A store for features, scoped for the current request. */ const requestScopedFeaturesStoreFactory = () => { const store = new AsyncLocalStorage(); /** * @name requestScopedFeaturesStore - * @memberof module:toggle-point-features - * @implements module:toggle-point-features.FeaturesStore - * @implements module:toggle-point-features.SingletonFeaturesStore + * @memberof module:web-toggle-point-features + * @implements module:web-toggle-point-features.FeaturesStore + * @implements module:web-toggle-point-features.SingletonFeaturesStore */ return { useValue: ({ value, scopeCallBack }) => { diff --git a/packages/features/src/reactContext/store.js b/packages/features/src/reactContext/store.js index db64c55..6ef45cb 100644 --- a/packages/features/src/reactContext/store.js +++ b/packages/features/src/reactContext/store.js @@ -4,17 +4,17 @@ import PropTypes from "prop-types"; /** * A factory function used to create a store for features, held in a {@link https://reactjs.org/docs/context.html|React context}. * A thin wrapper around a context, used as an extension point for future plugins. - * @memberof module:toggle-point-features - * @returns {module:toggle-point-features.reactContextFeaturesStore} A store for features, held within a {@link https://reactjs.org/docs/context.html|React context}. + * @memberof module:web-toggle-point-features + * @returns {module:web-toggle-point-features.reactContextFeaturesStore} A store for features, held within a {@link https://reactjs.org/docs/context.html|React context}. */ const reactContextFeaturesStoreFactory = ({ name }) => { const context = createContext(); /** * @name reactContextFeaturesStore - * @memberof module:toggle-point-features - * @implements module:toggle-point-features.FeaturesStore - * @implements module:toggle-point-features.ContextFeaturesStore + * @memberof module:web-toggle-point-features + * @implements module:web-toggle-point-features.FeaturesStore + * @implements module:web-toggle-point-features.ContextFeaturesStore */ return { providerFactory: () => { diff --git a/packages/features/src/ssrBackedReactContext/store.js b/packages/features/src/ssrBackedReactContext/store.js index ea91d06..44b624f 100644 --- a/packages/features/src/ssrBackedReactContext/store.js +++ b/packages/features/src/ssrBackedReactContext/store.js @@ -3,9 +3,9 @@ import reactContextFeaturesStoreFactory from "../reactContext/store"; /** * A factory function used to create a store for features, held in a {@link https://reactjs.org/docs/context.html|React context}, backed by server-side rendering. - * A wrapper around a {@link module:toggle-point-features.reactContextFeaturesStore|reactContextFeaturesStore}, with server-side rendering supplied by the {@link module:toggle-point-ssr|toggle-point-ssr} package. - * @memberof module:toggle-point-features - * @returns {module:toggle-point-features.ssrBackedReactContextFeaturesStore} A store for features, held within a {@link https://reactjs.org/docs/context.html|React context}. + * A wrapper around a {@link module:web-toggle-point-features.reactContextFeaturesStore|reactContextFeaturesStore}, with server-side rendering supplied by the {@link module:web-toggle-point-ssr|toggle-point-ssr} package. + * @memberof module:web-toggle-point-features + * @returns {module:web-toggle-point-features.ssrBackedReactContextFeaturesStore} A store for features, held within a {@link https://reactjs.org/docs/context.html|React context}. */ const ssrBackedReactContextFeaturesStoreFactory = ({ namespace = "toggles", @@ -18,9 +18,9 @@ const ssrBackedReactContextFeaturesStoreFactory = ({ /** * @name ssrBackedReactContextFeaturesStore - * @memberof module:toggle-point-features - * @implements module:toggle-point-features.FeaturesStore - * @implements module:toggle-point-features.ContextFeaturesStore + * @memberof module:web-toggle-point-features + * @implements module:web-toggle-point-features.FeaturesStore + * @implements module:web-toggle-point-features.ContextFeaturesStore */ return { providerFactory: () => { diff --git a/packages/react-pointcuts/docs/CHANGELOG.md b/packages/react-pointcuts/docs/CHANGELOG.md index 932854d..cd6be4f 100644 --- a/packages/react-pointcuts/docs/CHANGELOG.md +++ b/packages/react-pointcuts/docs/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.4.2] - 2024-12-26 + +### Fixed + +- updated some errant JSDoc namespaces + ## [0.4.1] - 2024-12-17 ### Removed @@ -33,7 +39,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - a `Map` of features (de-coupling from a webpack-specific data structure) - a [javascript module](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules), rather than its `default` export (preparing for support of named exports) - updated to `react@18.3.1`, set minimum required react to `17` - - technically a breaking change, but `jsx-runtime` already introduced in [version 1.0.0](#100---2023-09-05)... so was already broken, oops. + - technically a breaking change, but `jsx-runtime` already introduced in [version 0.1.0](#010---2023-09-05)... so was already broken, oops. - moved package to `"type": "module"` and renamed commonJs exports to have `.cjs` extension to prevent `[ERR_REQUIRE_ESM]` errors in consumers that aren't `"type": "module"` ### Fixed diff --git a/packages/react-pointcuts/docs/README.md b/packages/react-pointcuts/docs/README.md index 8fb4694..92347dc 100644 --- a/packages/react-pointcuts/docs/README.md +++ b/packages/react-pointcuts/docs/README.md @@ -18,7 +18,7 @@ Both accept plugins, currently supporting a hook called during code activation ( ## Usage -See: [JSDoc output](https://asos.github.io/web-toggle-point/module-asos-web-toggle-point-react-pointcuts.html) +See: [JSDoc output](https://asos.github.io/web-toggle-point/module-web-toggle-point-react-pointcuts.html) > [!WARNING] > ### Use with React 17 diff --git a/packages/react-pointcuts/package.json b/packages/react-pointcuts/package.json index 62282e7..7ade338 100644 --- a/packages/react-pointcuts/package.json +++ b/packages/react-pointcuts/package.json @@ -1,7 +1,7 @@ { "name": "@asos/web-toggle-point-react-pointcuts", "description": "react pointcut code", - "version": "0.4.0", + "version": "0.4.2", "license": "MIT", "type": "module", "main": "./lib/main.es5.cjs", diff --git a/packages/react-pointcuts/src/external.js b/packages/react-pointcuts/src/external.js index ef62d00..d3834a4 100644 --- a/packages/react-pointcuts/src/external.js +++ b/packages/react-pointcuts/src/external.js @@ -2,17 +2,6 @@ * Code expected in the host application * @external HostApplication */ -/** - * A factory for SDKs; should return an instance of asos-web-features when called with "features" - * @callback external:HostApplication.sdkInstanceProvider - * @async - * @type {Function} - * @param {string} sdkName Name of the SDK to access; will be passed "features" - * @returns {external:asos-web-features} - * @see SiteChrome SDK interface {@link https://asoscom.atlassian.net/wiki/spaces/WEB/pages/593592455/SCP+-+Interface+Definition#SDK-Instances|SDK Instances} - * @example - * const sdkInstance = await sdkInstanceProvider("features"); - */ /** * A delegate passed to log an error * @callback external:HostApplication.logError diff --git a/packages/react-pointcuts/src/getCodeSelectionPlugins.js b/packages/react-pointcuts/src/getCodeSelectionPlugins.js index 7dde7b2..4aa9b83 100644 --- a/packages/react-pointcuts/src/getCodeSelectionPlugins.js +++ b/packages/react-pointcuts/src/getCodeSelectionPlugins.js @@ -1,6 +1,6 @@ /** * A plugin for the point cuts package - * @typedef {object} module:toggle-point-react-pointcuts~plugin + * @typedef {object} module:web-toggle-point-react-pointcuts~plugin * @property {string} name plugin name, used as a prefix when creating {@link https://legacy.reactjs.org/docs/higher-order-components.html|React Higher-Order-Components} when toggling * @property {Function} onCodeSelected hook to be called when a code selection is made */ diff --git a/packages/react-pointcuts/src/index.js b/packages/react-pointcuts/src/index.js index fc91576..b31c5df 100644 --- a/packages/react-pointcuts/src/index.js +++ b/packages/react-pointcuts/src/index.js @@ -4,6 +4,6 @@ import "./external"; /** * Application code for creating a React {@link https://en.wikipedia.org/wiki/Pointcut|pointcut}. - * @module toggle-point-react-pointcuts + * @module web-toggle-point-react-pointcuts */ export { withTogglePointFactory, withToggledHookFactory }; diff --git a/packages/react-pointcuts/src/withTogglePointFactory/index.js b/packages/react-pointcuts/src/withTogglePointFactory/index.js index cd8e6f0..ecd92a2 100644 --- a/packages/react-pointcuts/src/withTogglePointFactory/index.js +++ b/packages/react-pointcuts/src/withTogglePointFactory/index.js @@ -7,17 +7,17 @@ import getCodeSelectionPlugins from "../getCodeSelectionPlugins"; {} /** * A factory function used to create a withTogglePoint React Higher-Order-Component. - * @memberof module:toggle-point-react-pointcuts + * @memberof module:web-toggle-point-react-pointcuts * @inner * @function * @param {object} params parameters * @param {function} params.getActiveFeatures a method to get active features. Called honouring the rules of hooks. * @param {external:HostApplication.logError} params.logError a method that logs errors * @param {string} [params.variantKey=bucket] A key use to identify a variant from the features data structure. Remaining members of the feature will be passed to the variant as props. - * @param {Array} [params.plugins] plugins to be used when toggling + * @param {Array} [params.plugins] plugins to be used when toggling * Will be used when a toggled component throws an error that can be caught by an {@link https://reactjs.org/docs/error-boundaries.html|ErrorBoundary}. * When errors are caught, the control/base code will be used as the fallback component. - * @returns {module:toggle-point-react-pointcuts.withTogglePoint} withTogglePoint React Higher-Order-Component. + * @returns {module:web-toggle-point-react-pointcuts.withTogglePoint} withTogglePoint React Higher-Order-Component. * @example * const withTogglePoint = withTogglePointFactory({ * getActiveFeatures, @@ -37,7 +37,7 @@ const withTogglePointFactory = ({ /** * A React Higher-Order-Component that wraps a base / control component and swaps in a variant when deemed appropriate by a context * @function withTogglePoint - * @memberof module:toggle-point-react-pointcuts + * @memberof module:web-toggle-point-react-pointcuts * @param {ReactComponentModuleNamespaceObject} controlModule The control / base module * @param {external:React.Component} controlModule.default The control react component * @param {Map} featuresMap A map of features and their variants, with features as top-level keys and variants as nested keys with modules as the values. diff --git a/packages/react-pointcuts/src/withToggledHookFactory/index.js b/packages/react-pointcuts/src/withToggledHookFactory/index.js index 61baeb7..13c7413 100644 --- a/packages/react-pointcuts/src/withToggledHookFactory/index.js +++ b/packages/react-pointcuts/src/withToggledHookFactory/index.js @@ -6,13 +6,13 @@ import getCodeSelectionPlugins from "../getCodeSelectionPlugins"; {} /** * A factory function used to create a withToggledHook React hook, wrapping an existing hook/function. - * @memberof module:toggle-point-react-pointcuts + * @memberof module:web-toggle-point-react-pointcuts * @inner * @function * @param {object} params parameters * @param {function} params.getActiveFeatures a method to get active features, which is called honouring the rules of hooks. - * @param {Array} [params.plugins] plugins to be used when toggling - * @returns {module:toggle-point-react-pointcuts.withToggledHook} withToggledHook hook function, use to wrap a function (either a hook itself, or a function that must be called wherever a hook can...). + * @param {Array} [params.plugins] plugins to be used when toggling + * @returns {module:web-toggle-point-react-pointcuts.withToggledHook} withToggledHook hook function, use to wrap a function (either a hook itself, or a function that must be called wherever a hook can...). * @example * const getActiveFeatures = () => useContext(myContext); * const withToggledHook = withToggledHookFactory({ @@ -28,7 +28,7 @@ const withToggledHookFactory = ({ getActiveFeatures, plugins = [] }) => { /** * A React hook that wraps a base / control function or hook and swaps in a variant when deemed appropriate by a context * @function withToggledHook - * @memberof module:toggle-point-react-pointcuts + * @memberof module:web-toggle-point-react-pointcuts * @param {ReactHookModuleNamespaceObject} controlModule The control / base module * @param {(external:React.Hook|function)} controlModule.default The control react hook or function. * @param {Map} featuresMap A map of features and their variants, with features as top-level keys and variants as nested keys with modules as the values. diff --git a/packages/ssr/docs/CHANGELOG.md b/packages/ssr/docs/CHANGELOG.md index 75ca4ea..31ed972 100644 --- a/packages/ssr/docs/CHANGELOG.md +++ b/packages/ssr/docs/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.2.1] - 2024-12-26 + +### Fixed + +- updated some errant JSDoc namespaces + ## [0.2.0] - 2024-12-17 ### Removed @@ -50,7 +56,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - updated to latest `@testing-library/react` to remove errant warning about import of `act` - updated to `react@18.3.1`, set minimum required react to `17` - - technically a breaking change, but `jsx-runtime` already introduced in [version 1.0.0](#100---2023-09-05)... so was already broken, oops. + - technically a breaking change, but `jsx-runtime` already introduced in [version 0.1.0](#010---2023-09-05)... so was already broken, oops. - renamed commonJs exports to have `.cjs` extension to prevent `[ERR_REQUIRE_ESM]` errors in consumers that aren't `"type": "module"` ## [0.1.2] - 2024-12-06 diff --git a/packages/ssr/docs/README.md b/packages/ssr/docs/README.md index 78845c2..54873d8 100644 --- a/packages/ssr/docs/README.md +++ b/packages/ssr/docs/README.md @@ -28,7 +28,7 @@ For the browser: ## Usage -See: [JSDoc output](https://asos.github.io/web-toggle-point/module-asos-web-toggle-point-ssr.html) +See: [JSDoc output](https://asos.github.io/web-toggle-point/module-web-toggle-point-ssr.html) > [!WARNING] > ### Use with React 17 diff --git a/packages/ssr/package.json b/packages/ssr/package.json index 2a6578d..10b2ff7 100644 --- a/packages/ssr/package.json +++ b/packages/ssr/package.json @@ -1,7 +1,7 @@ { "name": "@asos/web-toggle-point-ssr", "description": "toggle point server side rendering code", - "version": "0.2.0", + "version": "0.2.1", "license": "MIT", "type": "module", "main": "./lib/main.es5.cjs", diff --git a/packages/ssr/src/external.js b/packages/ssr/src/external.js index 3603746..68c0153 100644 --- a/packages/ssr/src/external.js +++ b/packages/ssr/src/external.js @@ -2,17 +2,6 @@ * Code expected in the host application * @external HostApplication */ -/** - * A factory for SDKs; should return an instance of asos-web-features when called with "features" - * @callback external:HostApplication.sdkInstanceProvider - * @async - * @type {Function} - * @param {string} sdkName Name of the SDK to access; will be passed "features" - * @returns {external:asos-web-features} - * @see SiteChrome SDK interface {@link https://asoscom.atlassian.net/wiki/spaces/WEB/pages/593592455/SCP+-+Interface+Definition#SDK-Instances|SDK Instances} - * @example - * const sdkInstance = await sdkInstanceProvider("features"); - */ /** * A delegate passed to log a warning * @callback external:HostApplication.logWarning diff --git a/packages/ssr/src/index.js b/packages/ssr/src/index.js index cbba6c8..e4d6750 100644 --- a/packages/ssr/src/index.js +++ b/packages/ssr/src/index.js @@ -3,7 +3,7 @@ import withJsonIsomorphism from "./withJsonIsomorphism"; import "./external"; /** - * Server Side Rendering code for Isomorphic React applications - * @module asos-web-toggle-point-ssr + * Server Side Rendering code for isomorphic / universal applications + * @module web-toggle-point-ssr */ export { withJsonIsomorphism, serializationFactory }; diff --git a/packages/ssr/src/serializationFactory/index.js b/packages/ssr/src/serializationFactory/index.js index 53ab300..c3e6794 100644 --- a/packages/ssr/src/serializationFactory/index.js +++ b/packages/ssr/src/serializationFactory/index.js @@ -5,16 +5,16 @@ import parse from "html-react-parser"; {} /** * A factory for creating a serialization object that has methods for serializing and deserializing JSON data in server-rendered web applications. - * @memberof module:asos-web-toggle-point-ssr + * @memberof module:web-toggle-point-ssr * @inner * @function - * @memberof module:asos-web-toggle-point-ssr + * @memberof module:web-toggle-point-ssr * @inner * @function * @param {object} params parameters * @param {string} params.id The id attribute of the backing application/json script. * @param {external:HostApplication.logWarning} params.logWarning A method that logs warnings; will be used when malformed JSON is found in the backing store when deserialize on the client, which should only be possible if processed in a system downstream from the origin. - * @returns {module:asos-web-toggle-point-ssr.serialization} Some serialization / deserialization methods + * @returns {module:web-toggle-point-ssr.serialization} Some serialization / deserialization methods * @example * const logWarning = (warning) => console.log(warning); * const id = "app_features"; @@ -23,33 +23,33 @@ import parse from "html-react-parser"; const serializationFactory = ({ id, logWarning }) => /** * @typedef {function} getScriptMarkup - * @memberof module:asos-web-toggle-point-ssr + * @memberof module:web-toggle-point-ssr * @param {object} params parameters * @param {object} params.content The JSON content to be serialized. */ /** * @typedef {function} getScriptReactElement - * @memberof module:asos-web-toggle-point-ssr + * @memberof module:web-toggle-point-ssr * @param {object} params parameters * @param {object} params.content The JSON content to be serialized. */ /** * @typedef {function} getJSONFromScript - * @memberof module:asos-web-toggle-point-ssr + * @memberof module:web-toggle-point-ssr * @returns {object} The JSON content of the script element. */ /** * An object containing methods for serializing and deserializing JSON data in server-rendered web applications. * @typedef {object} serialization - * @memberof module:asos-web-toggle-point-ssr - * @property {module:asos-web-toggle-point-ssr.getScriptMarkup} getScriptMarkup Gets a string containing markup for a type="application/json" script element with the specified content. - * @property {module:asos-web-toggle-point-ssr.getScriptReactElement} getScriptReactElement - Gets a React element for a type="application/json" script element with the specified content. - * @property {module:asos-web-toggle-point-ssr.getJSONFromScript} getJSONFromScript - Returns the JSON content of the script element. + * @memberof module:web-toggle-point-ssr + * @property {module:web-toggle-point-ssr.getScriptMarkup} getScriptMarkup Gets a string containing markup for a type="application/json" script element with the specified content. + * @property {module:web-toggle-point-ssr.getScriptReactElement} getScriptReactElement - Gets a React element for a type="application/json" script element with the specified content. + * @property {module:web-toggle-point-ssr.getJSONFromScript} getJSONFromScript - Returns the JSON content of the script element. */ ({ /** - * @memberof module:asos-web-toggle-point-ssr.serialization + * @memberof module:web-toggle-point-ssr.serialization * @param {object} content The JSON content to be serialized. * @returns {string} A string containing markup for a type="application/json" script element with the specified content. */ diff --git a/packages/ssr/src/withJsonIsomorphism/index.js b/packages/ssr/src/withJsonIsomorphism/index.js index b68c691..8559f37 100644 --- a/packages/ssr/src/withJsonIsomorphism/index.js +++ b/packages/ssr/src/withJsonIsomorphism/index.js @@ -8,7 +8,7 @@ import { useState, useEffect } from "react"; * which are then realised into a prop when first hydrating on the client. It will be reactive to subsequent non-`undefined` prop values, * for that prop. * The package "browser" export includes the code to read the script, omitted from the "import" / "require" export (server package). - * @memberof module:asos-web-toggle-point-ssr + * @memberof module:web-toggle-point-ssr * @inner * @function * @param {external:React.Component} WrappedComponent The React component that will receive the props. diff --git a/packages/webpack/docs/CHANGELOG.md b/packages/webpack/docs/CHANGELOG.md index 5102394..9467746 100644 --- a/packages/webpack/docs/CHANGELOG.md +++ b/packages/webpack/docs/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.7.3] - 2024-12-26 + +### Fixed + +- updated some errant JSDoc namespaces + ## [0.7.2] - 2024-12-17 ### Removed diff --git a/packages/webpack/docs/README.md b/packages/webpack/docs/README.md index 823c534..f4c7b1d 100644 --- a/packages/webpack/docs/README.md +++ b/packages/webpack/docs/README.md @@ -20,7 +20,7 @@ The join points are configured using a [glob](https://en.wikipedia.org/wiki/Glob ### Configuration -See [JSDoc output](https://asos.github.io/web-toggle-point/module-asos-web-toggle-point-webpack.html) +See [JSDoc output](https://asos.github.io/web-toggle-point/module-web-toggle-point-webpack.html) Different code paths may have different toggling needs, and may want a toggle point applied in differing ways. Independent point cuts should be configured for each different: diff --git a/packages/webpack/package.json b/packages/webpack/package.json index 38fbc45..ec17f81 100644 --- a/packages/webpack/package.json +++ b/packages/webpack/package.json @@ -1,7 +1,7 @@ { "name": "@asos/web-toggle-point-webpack", "description": "toggle point webpack plugin", - "version": "0.7.2", + "version": "0.7.3", "license": "MIT", "type": "module", "main": "./lib/main.cjs", diff --git a/packages/webpack/src/index.js b/packages/webpack/src/index.js index a99fcdc..a11c1e9 100644 --- a/packages/webpack/src/index.js +++ b/packages/webpack/src/index.js @@ -2,6 +2,6 @@ import "./external.js"; /** * Webpack code for injecting toggle points - * @module toggle-point-webpack + * @module web-toggle-point-webpack */ export { TogglePointInjection } from "./plugins"; diff --git a/packages/webpack/src/plugins/togglePointInjection/index.js b/packages/webpack/src/plugins/togglePointInjection/index.js index df98970..0148828 100644 --- a/packages/webpack/src/plugins/togglePointInjection/index.js +++ b/packages/webpack/src/plugins/togglePointInjection/index.js @@ -9,7 +9,7 @@ import schema from "./schema.json"; /** * Toggle Point Injection Plugin - * @memberof module:toggle-point-webpack + * @memberof module:web-toggle-point-webpack * @inner */ class TogglePointInjection { From 81163656dd4455632111ed0c4d056c2aa0e74ee3 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 14:38:54 +0000 Subject: [PATCH 03/41] fix showExperiments querystring in nextJs example --- examples/next/docs/CHANGELOG.md | 6 ++++ examples/next/package.json | 2 +- .../src/app/fixtures/experiments/example.tsx | 9 +++-- .../fixtures/experiments/styles.module.css | 33 +++++++------------ 4 files changed, 23 insertions(+), 27 deletions(-) diff --git a/examples/next/docs/CHANGELOG.md b/examples/next/docs/CHANGELOG.md index 8f4e287..735a7ff 100644 --- a/examples/next/docs/CHANGELOG.md +++ b/examples/next/docs/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.2.3] - 2025-02-07 + +### Fixed + +- fixed a regression in the ability to use `?showExperiments` query in the experiments fixtures, regressed in version `0.2.0`. + ## [0.2.2] - 2024-12-24 ### Fixed diff --git a/examples/next/package.json b/examples/next/package.json index b7478e4..60a4744 100644 --- a/examples/next/package.json +++ b/examples/next/package.json @@ -1,6 +1,6 @@ { "name": "web-toggle-point-next-example", - "version": "0.2.2", + "version": "0.2.3", "private": true, "type": "module", "scripts": { diff --git a/examples/next/src/app/fixtures/experiments/example.tsx b/examples/next/src/app/fixtures/experiments/example.tsx index 7b33b2b..c008a1c 100644 --- a/examples/next/src/app/fixtures/experiments/example.tsx +++ b/examples/next/src/app/fixtures/experiments/example.tsx @@ -9,11 +9,10 @@ const Example = ({ children, experiments }) => { const searchParams = useSearchParams(); const FeaturesProvider = providerFactory(); return ( -

+
+ {searchParams.has("showExperiments") ? ( + {JSON.stringify(experiments)} + ) : undefined}
{children}
diff --git a/examples/next/src/app/fixtures/experiments/styles.module.css b/examples/next/src/app/fixtures/experiments/styles.module.css index 6e463d0..faaf04d 100644 --- a/examples/next/src/app/fixtures/experiments/styles.module.css +++ b/examples/next/src/app/fixtures/experiments/styles.module.css @@ -14,25 +14,16 @@ } } -.debug { - & script { - display: inline; - font-family: monospace; - width: 100%; - padding: 2px; - margin: 2px; - flex: 0 0 auto; - background: #eee; - border: 1px solid #ccc; - } - & script[id$="decisions"]{ - &::before { - content: "decisions: "; - } - } - & script[id$="audience"] { - &::before { - content: "audience: "; - } - } +.code { + padding: 0.2em; + background: #eee; + border: 1px solid #ccc; + text-indent: -7em; +} +.code::before { + content: "experiments: "; + position: relative; + left: 5.5em; + top: -1.7em; + font-family: 'Didact Gothic', 'Didact Gothic Fallback'; } From 5311b33a70e8c05936355e2114d7471395127d9c Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 14:39:02 +0000 Subject: [PATCH 04/41] clarify contribution guide --- docs/CHANGELOG.md | 8 ++++++++ docs/CONTRIBUTING.md | 6 ++++++ package.json | 2 +- 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 532c7d8..2d26045 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -14,6 +14,14 @@ N.B. See changelogs for individual packages, where most change will occur: This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). +## [0.10.3] - 2025-02-07 + +### Fixed + +- Updated the `CONTRIBUTING.md`: + - Clarification regarding changes needing to be committed for the `danger:local` script to be effective. + - Clarification regarding write access being needed to open a pull request. + ## [0.10.2] - 2024-12-26 ### Fixed diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 453730e..01a88d8 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -16,6 +16,9 @@ On this project we follow mainline development (or trunk based development), and Therefore you need to branch / fork from `main` and merge into `main`. +> [!NOTE] +> To contribute a pull request, [you will need to have write permission to the repository](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request), so please get in contact! + ### Coding style Generally try to match the style and conventions of the code around your changes. Ultimately we want code that is clear, concise, consistent and easy to read. @@ -35,6 +38,9 @@ npm run test:unit npm run test:automation npm run danger:local ``` +> [!NOTE] +> N.B. The `danger:local` script requires changes to be committed, otherwise you will receive the message: +> > `No git changes detected between head and main` ## Opening a PR diff --git a/package.json b/package.json index d72f35a..a2992c6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@asos/web-toggle-point", - "version": "0.10.2", + "version": "0.10.3", "repository": "git@github.com:asos/web-toggle-point.git", "homepage": "https://asos.github.io/web-toggle-point/", "license": "MIT", From 5c743b1863dcf3ecb5ca91fcd3172f05563f33ea Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 14:42:43 +0000 Subject: [PATCH 05/41] clarify fork vs write access --- docs/CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 01a88d8..5bd165c 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -17,7 +17,7 @@ On this project we follow mainline development (or trunk based development), and Therefore you need to branch / fork from `main` and merge into `main`. > [!NOTE] -> To contribute a pull request, [you will need to have write permission to the repository](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request), so please get in contact! +> To contribute a pull request, [you will need to fork the repository](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork) or be given [write access](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request), so get in touch to discuss the latter! ### Coding style From e475e9436b7219406ed4fe0a5861e3cc3ae854c4 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 14:47:22 +0000 Subject: [PATCH 06/41] clarify clarification, dawg --- docs/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 2d26045..e7485ba 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -20,7 +20,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). - Updated the `CONTRIBUTING.md`: - Clarification regarding changes needing to be committed for the `danger:local` script to be effective. - - Clarification regarding write access being needed to open a pull request. + - Clarification regarding write access or forking being needed to open a pull request. ## [0.10.2] - 2024-12-26 From b15ea3f8ac767f6b9e0c240e3e8dc1fc9fa18b89 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 14:48:16 +0000 Subject: [PATCH 07/41] remove extra quote level in note --- docs/CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 5bd165c..ff2721f 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -40,7 +40,7 @@ npm run danger:local ``` > [!NOTE] > N.B. The `danger:local` script requires changes to be committed, otherwise you will receive the message: -> > `No git changes detected between head and main` +> `No git changes detected between head and main` ## Opening a PR From 3ad71f34dce82e07e012e882d77b4938c219d9d6 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 14:49:10 +0000 Subject: [PATCH 08/41] extra blank line, for clarity --- docs/CONTRIBUTING.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index ff2721f..58ecdcf 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -40,6 +40,7 @@ npm run danger:local ``` > [!NOTE] > N.B. The `danger:local` script requires changes to be committed, otherwise you will receive the message: +> > `No git changes detected between head and main` ## Opening a PR From 3a6d809be96a49dc0a3a137f9c4e3a1a4ff4959c Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 14:50:04 +0000 Subject: [PATCH 09/41] add "staged" for clarity --- docs/CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 58ecdcf..f5c1fb0 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -39,7 +39,7 @@ npm run test:automation npm run danger:local ``` > [!NOTE] -> N.B. The `danger:local` script requires changes to be committed, otherwise you will receive the message: +> N.B. The `danger:local` script requires staged changes to be committed, otherwise you will receive the message: > > `No git changes detected between head and main` From 4712a19dad4465abd25b9dbfbe0eb4f01c2f6331 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 15:06:36 +0000 Subject: [PATCH 10/41] update some linux playwright screenshots?! New ubuntu image subtly changed rendering engine? May need a fuzzier match, or a stable ubuntu image --- .../-screenshots-control-chromium-linux.png | Bin 1515 -> 1281 bytes ...enshots-st-patricks-day-chromium-linux.png | Bin 3354 -> 3079 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/examples/serve/src/fixtures/event/playwright.spec.ts-snapshots/-screenshots-control-chromium-linux.png b/examples/serve/src/fixtures/event/playwright.spec.ts-snapshots/-screenshots-control-chromium-linux.png index 6615aa1a81dce531b97b8f2d111a015ab6a08e19..f1aa0ebed6c0d579a89a296353976c95a38abd46 100644 GIT binary patch delta 1249 zcmV<71RneA3xNudFn)my&Yb+>UG`%YU6`?^f*U%c*q61R@!uK()RUrEOE zp4{I7pq}kA#OdlH001CSx2CS*gd+OMdUO6JcDvo8#RP%DFF zbljMgS+zGGRDX&b%W_hAuu78Epe%8P0w+~Qo8*RjZM2FWr8wAZIz_%RPfjND3a|Ep zy8&lqR_!fjjgr6?3Y<`C&i1ESHigqcg~swc>zA#25mHW(O@Xs@$!N|Nog!D6-x6oi zFeIKWu$*Kx=fTaAuKMzf6d9BRyWMUVj10cOtCh}Vv44q@vywk12G5r|^G%c_AInii z;-uy>IYwuBwJ{H(D45kGRwxI98%o2Ih&efQQObVUE^7qWsS+H z&}d??>fmryE^55g`8ujsTlXWRCjF)Yw}dTR4}ZFY{yb)wXMf`jQD5at2ZMSO^ zPnnZHjbqUdfsT(0DK;iS`qZVm4!o(0NgIQ3c+VIEAZqfdP>3L;^y-y39Gh~>0{{Sk zEq}*r$(P%=BiyeLe_MfnZV4-1y+z%6>sV=NpU!|`4ke}c<)IYmhkEG#{^dEuT7B#Q z4fn@uA_8zN{rM3-b25j=7YnVs9-GXC4}?$Jm<080k7{7*V$wzcgm;Y{02t;x?sX{u z07S;VPU+1mKuUzPq~B72+IFh2k6<44<$s|R*_3<(vD+o}>GpgPBE(Qik*uJ#?Vf#Q z<2&|NRK!Pz+Jh7Yt=%<)J^^ufSw)%+HVJa3u4lX0G|`g*Q(++7yFvK0QLd1NbR#p_G1RU3>dv2NG=FOXT?%bg|^jDJRdhu{3 z003sQxvsA6>VMU%008iKy!Q6?l9G}$XU=4F!Zd#oD2nR!`ttJf-Q8U@hRw~*_V#v> zNW|fAsNF;K*-2`3Y`gpzG!-o%VZ*OBh4Gj%Xo;)E*2!dcqNr}Z` zSzTQ<8jUO#%j5B&D7v$=)6~?|)zuY=LK9u2d?0^X84y=@bfuo12?>_@hUU8XFs#p21yNs@#znGCn*=jX4luM=Lxfqy{Y)TvWgyQQV&?%lfthqxKYSCN_mafN;G z-~nMicDwz;g$o=G2e)AP6YfhwDaaRM#sD91ai!1^=?Wy`8+zi4!LZ3JNS1%f!TlR;x`iAqiPoS$JSh zPEH0_K{Yn6uyMoZ=H@mwHe&7R?0-uJl*FELrKP3A!^43<06~zKFJDeiPv5w4Ln4t> zRaITPcFpVcuC1+&jEp>f{J5*DE6LQw#l@E{UD9YYU%!4027|M+vllO3G#CuY`{;DK zTeof%78VKwf+Q1WoOFur6&ow;z`#Ikcv)H5*|TSBYiqxK`xXj?j7DQoQGZb=6iRbn zGN2@O$9eVYl}sk%a=BbCx1yrLVzFTMt*xz&jt;R{oSmI5lgU1Q{D@zXKoI=#;|JC@ z8jTed75I=+sl+Z*csQHQmPjP{2hnIqe0)A1004u7g9)9ZCxfDBV`JmPhYtzYw^#@l z;k_~>QY16DxJI9zHa0fe+S)`S5u42}FE9V}=@X@WA(0{-B^mTT_h_g> n|6oZ&8T!!BP=-DuSX(O1u+tD@ zm(@Y&RzWYTjGbEFVzVc&FX_s;vjXnY_%H#E5Z-uU{D#rR%+{;Xea-wCU_j%VA` zwo`Gv%X6t;alM<3=C={vL^@H>)T4UdyYv0CdqO3DL&)EX`nYrFqq&{9MPawq+AY-B zESuig_dv9#cc5>mI)8rYmc3Um@8$a2apg_sQl??PJAV@Zd~{IY*iPAJ+9U zu7}85^pU~G-m6aB!}rHHetxlb_L6_8wlF}ph#Nn*`rTMDReWZ&24HaCUbDDIreNNr zq5tbMuYU(ypWKrW+6noi1m=vV(-R&*5?V2}^5flLLj=l$r{Y~PsKi78yfCcY=3v?( zs>@EgDeQI%>A3TKj-Laf;UXJ9Ti7Wa*hoIUz9+m`Ti|=5+xj>EUx0l(zEhd|WhBxw zK!*Bz<4t|}u3Kw-lJ(s(1pp!pXG;5R`GlMn?|+sd&z~+99G8VeR?=F`vptUxN&rel z+WziLrDQlRs;)CNHiaEzJncYGl}sYOs*OrHUZi&i9Wg-w7^N%y#~debjGIoC5vu4) zIw^Kk0qqcV8=Q1g*zFWjPb3o77I{PgZ0_xU|AU`=dh1{QyYpA!;z9(tcf+T)fBe%w z{C~yQYxMwi#Q1xkRQ{u>FCmfKl6(5xEHIYNCmc1Kk!1?dkxYRIQp+&>>0*AoWXIFR zJ+e1lwi%Iz6p;X-S9VI4$An>B7q2u!zCDr8+otU^5J4G9XB4$bl2@`E(!>+eW7GPZ z8UU0{<TM5?1xRkg@Cd z=7g1PI0$h80P|gsh|5c=Neo@&Cv+{lSe&$3Oid~Ri2~e>h2)#Bs`^_@-D?=b)IO0) z9V?m#%EggZwRDq2b(`(w=%%pS*|mGc{_gQ#K6n4%1_0aoH}^z(rrCTye@|uZSAU@5}Ai?bkBpm?BoKu~~e6uVwC$N$3<_)KXJS z-DegRnfRsDQQZ;>)vZlN2%~9ahTtLQ#0h)#cL4#tDq;%D;`$E&Jd( zf~3o=ls|Jii0(M7myIDaapVt2H$VG7Pi2~p6s)-1rkpl3cXwWLGRC>700W=>l#$<` zlu4_A#V+yVPaDZ%W^|73+9DC(KFP>n%~uZirIF>;>?Ea^kC9#f=_FJFfPWRVBZtQN zpZHO#n20q?B6Hg(s%en7%=YaO_A0w}i}l5~&W>*S*b<4+NKd`KcqyEHXVzIe!J{MLwFds*U^<^rMHq zH-*IGwv#UBV&a{ivFw@Gq za>@JFdq00P;h#FB7IJp$N9zhdtdx53>Cri|@5{FRHLLth=S^j0LE01M40u_Tmy}Tz z5__M2Ue%cAvZhHSZ4=cZ$oAR(P=&opYv*_;7JIx6eSG8V`QU>G)^FO_H+11QTy$L! z>G3wK;}_~Rf8i2<>VL%rg!gT~=QFK+va0J;96y#Y^c1S4Wd5;Z=bq6DzLm-ePQj{y z- zW}e7eAOOJ0k8YzhWWcgvwUuRDk)wv~xt3RQdCichYc@9~lz#%?wbbs$oF{6-Qf9^x z1qq?e0K^)L41&;SA)$oQ7^NIo$oxJ#bxtxT{LmM+r~cb}j*HYU1dZ7Q>j`)M-FI7fV}3DJNFJLF5PkGt z(j@?hB{Irqi^op}?-ufIE>raZh=SZmBO#Omv$L)j0vux@2w9?t5DM^=(rYVYKu}}= z!^+@Wr>U4LB~%IkZrO2(Aj>z+Ks$;xod0yFa}V1WwAjB2Y}KTX&G=g_*ptDqBM5(<^+wBSvCgA!wP?T z%$;^1D*zDM`I1qlN#hZfwMZh`B&ua<+GV>Hx-0C}Tf3cGzPOQmqF%29k-^v}AKv!u zFMZ;>y?@dET77|V8y?;H&oc{)?=4(v7)PT$y?e3qvwR%Oti< zltbxxE=yFX*r4{aY74C)MJ&NYWF)jCm=!KVC^Uxzh*?(sRkSar56r*swQvNl!H0y|*B;80kU2Ze~ zB?N)%dw>K0%&~p&Lz+rj#^85@pLjwa%$}UFO~=JYX3T1wf?cNxTW7l&2m`KK|fsV7npUE(`nS-?eMNIR4d#9{BRZ+kd|T zU~ay0YUY*d{Dp0s)FJv%G_p!@dXq-_HKQ~$6)gS04-6=}nm1&L00`aUtI704*{^{P zDBA99ZjUMe%(u%Gk8zSJu5iHOd6r%AJm!OH`f#^SU>vh-`9ebP?094e%o$JWmgRGz zB4u;hiYJ@PY@Ui2zB%sEp>$z?LVo~r%6j62&EjeEV7i$s&^>EQSn-te`mTHp9~PKzl_p(KMH`kV;5r4HCK9XfgstT2qn5;ug>KzpA)UD} zp8u~W4}bB+jq8Peeq#q7*06@V5FHCUn$2cAxZkG!``%}j@4xX4u7{U|-|xV~8rE#=KC!$$(03H$#6xPes0BF2(|00000NkvXXu0mjf DQGgC^ delta 3339 zcmV+m4fOJd7@8W8Fn-0yzBd+#^j+yT++_0Wet^r2@!&AUxQD1R;ONgw*~_F;Bn59&Zj}_CYeRQ3cNTqk7eVNWCV7)R%N_ybZTr&e=wV`aduvzM`jGs=py96l zm`-*~YZi@4Q-42e{?l|LBAKYDuBh-uVM$|2i>ie@S<+ZS=!x$7^UuSv;$ssJO$-%; z-mSa)c0Ium?5Dz?@HCwL9XtJI`rCD;x6#AIHfd|8(J94>DlWqlL#Z}&7pYoAo~P6P zx}AozO)+(?>e|vXOUV>rQCKW0OC%H7&};x8%p)vkPJfOmM*i8D;5A{^u~|NLJ|i4Q zylr1#{DARkm(zUv`6dS?zinSE4+|!C*M)So{MT#3?~+jSbz!lM~vdDX~%g{K#09-G;$Y+ezv!W57H zUikUe&wnQ$pCoj|mgp_R9EO>~v7%bBs4O2lpEvI8Yv5+>1^`nAP3i4{OcBbmMl6`v zCKXcNV*yT+0bp94@>caeKc|nlbbBUBC{p@Qg6U<2QhUnty_`PtK|c)x44OoUNSi)ZVdY+G}(g zFRm92qnT)=xS{yudmlX}L1eW7XNm zYk#yl4Fcd~C@Am(9#J}VH;xPpK z(C0%2&M@xAjpsKG+&kcE?YcT_b>WM`dTD*QN4Pc3T1}`kOERCld@_E(_z>3+13$Yo zTTmpZmQ-^Y-06d-FY;f6BCmfT?8pps34h#_zv)`lwGB}l0ASVmRX3mC%$$|!Yw!D7 zvt>{xncX@qA)K}|t|UqXYtA-go2firUAbALkJLKzzv zgY5=m+kaK3xYn;K8$(dNUN6^(Yg-=cbozp7fmS8tQJJc6Z%GULeXp|k5{_3@eUF$ZJF-d(k%I!qAud)eupmC&V0#iQFF<{7dk#{|w`&^XsH_ zZ8_wsvF498GltBNuYZvXrV94o-5;G1ttQk)e6WZ)@ z`XXRYz`2TZQTwB=&%b`6J|zB(}zsYxSz2$Z*78K0syE8)#m}9FZN#y z0OJOX%PGrQ61ZeZ;1a_op6vcrw^Rdwhpor=e}0dnID#M;g2j5rDm03Ao)}?jlKRVE!5$zB?x_^a$>*wQbul2 zM>~%OfPZLy^v3*+QT?NKP2L3nYC@e`o;$*EM1R}%ukXg0fi8iWC7HKg+=}y!qheGe zWHq4%0B@c*9e=fek?$K({iDb=l1*i6by@^LevJ9Cqb#M3rENJFf+@91!_*9uwWZq{ zcev;JWR+%-d_#AEe0L=$*cQRA!Ga>e1JMKWP=BdaF8qCAf7|{k5h+H3NXlZ0P!>@e zL$JH7=XcZ0e1_Pl<(L~4T zL9RgzoMFV_p6lal@7pe9Ib}Iy`=QipUhDK9)Q#k-!czWTBkT0khb=Txw34RHAm3b1C zBw<*>?4h$ASPrlC#|SfqACqz^#ofj|%p=S=naAX1&B`)#_SJ+s#4RMmEkr054tE$% z#i+Ml+**HSeWkdP!{Bs`tEa7JTYruYbaIXSnfMubRiRasH52(wxeK2c4;<>pk(g01&hKu|H=8qxr+n$1lrJSm=xyGxTBK>P9nc& zbQZ*J3AH79%iQ5}Ev|MiC3d&}*N(*2KN9>sCXe-+0{}90E~KXpMsi#aRJv28|94>mBh`)t?kv$g4lDRxW7SfTz zb!tMH7`)kxdr2s?irUs%1VQYX_J(bq0a~3_5Bk?et`EHpp;&mj{C_l`%a7(qBYyk$FIYD25Qpi=qH)Zy(1$*}gD^X>v6Pe)Gsfex zoF&ReL4Goh(tI4pm|>w0eRv09c4C|PL;?UUp?=a(=*b&F@8o^14}JJM!o0-(AFhOd V$k~JKp#T5?07*qoL Date: Fri, 7 Feb 2025 15:08:00 +0000 Subject: [PATCH 11/41] update changelog --- docs/CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index e7485ba..abad499 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -22,6 +22,10 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). - Clarification regarding changes needing to be committed for the `danger:local` script to be effective. - Clarification regarding write access or forking being needed to open a pull request. +### Changed + +- Modified some playwright screenshots from the "serve" example, false negatives assumed due to subtle change in Linux Chromium in latest Ubuntu? Will need a new issue to make less flaky! + ## [0.10.2] - 2024-12-26 ### Fixed From d36add08f367986d5f4c79a36e2adfe6e888cb90 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 15:26:56 +0000 Subject: [PATCH 12/41] empty commit, to attempt reboot of check run From 0c7086e37e2eba19965803b4558d1c0a26ee5293 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 15:33:31 +0000 Subject: [PATCH 13/41] update danger --- docs/CHANGELOG.md | 1 + package-lock.json | 396 +++++----------------------------------------- package.json | 2 +- 3 files changed, 38 insertions(+), 361 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index abad499..7bb1c36 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -25,6 +25,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Changed - Modified some playwright screenshots from the "serve" example, false negatives assumed due to subtle change in Linux Chromium in latest Ubuntu? Will need a new issue to make less flaky! +- Updated the `danger` version ## [0.10.2] - 2024-12-26 diff --git a/package-lock.json b/package-lock.json index 71ede54..af417c3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@asos/web-toggle-point", - "version": "0.10.2", + "version": "0.10.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@asos/web-toggle-point", - "version": "0.10.2", + "version": "0.10.3", "license": "MIT", "workspaces": [ "packages/features", @@ -35,7 +35,7 @@ "browserslist-config-asos": "file:./peripheral/browserslist-config-asos", "core-js": "^3.0.0", "cross-env": "^7.0.3", - "danger": "^11.3.0", + "danger": "^12.3.3", "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-jest": "^28.9.0", @@ -89,7 +89,7 @@ }, "examples/next": { "name": "web-toggle-point-next-example", - "version": "0.2.2", + "version": "0.2.3", "dependencies": { "@asos/web-toggle-point-features": "file:../../packages/features", "@asos/web-toggle-point-react-pointcuts": "file:../../packages/react-pointcuts", @@ -2063,47 +2063,43 @@ } }, "node_modules/@gitbeaker/core": { - "version": "35.8.1", + "version": "38.12.1", + "resolved": "https://ecom-su-nexus.platform.wtrecom.com/repository/npm-group/@gitbeaker/core/-/core-38.12.1.tgz", + "integrity": "sha512-8XMVcBIdVAAoxn7JtqmZ2Ee8f+AZLcCPmqEmPFOXY2jPS84y/DERISg/+sbhhb18iRy+ZsZhpWgQ/r3CkYNJOQ==", "dev": true, - "license": "MIT", "dependencies": { - "@gitbeaker/requester-utils": "^35.8.1", - "form-data": "^4.0.0", - "li": "^1.3.0", - "mime": "^3.0.0", - "query-string": "^7.0.0", + "@gitbeaker/requester-utils": "^38.12.1", + "qs": "^6.11.1", "xcase": "^2.0.1" }, "engines": { - "node": ">=14.2.0" + "node": ">=18.0.0" } }, - "node_modules/@gitbeaker/node": { - "version": "35.8.1", + "node_modules/@gitbeaker/requester-utils": { + "version": "38.12.1", + "resolved": "https://ecom-su-nexus.platform.wtrecom.com/repository/npm-group/@gitbeaker/requester-utils/-/requester-utils-38.12.1.tgz", + "integrity": "sha512-Rc/DgngS0YPN+AY1s9UnexKSy4Lh0bkQVAq9p7PRbRpXb33SlTeCg8eg/8+A/mrMcHgYmP0XhH8lkizyA5tBUQ==", "dev": true, - "license": "MIT", "dependencies": { - "@gitbeaker/core": "^35.8.1", - "@gitbeaker/requester-utils": "^35.8.1", - "delay": "^5.0.0", - "got": "^11.8.3", + "qs": "^6.11.1", "xcase": "^2.0.1" }, "engines": { - "node": ">=14.2.0" + "node": ">=18.0.0" } }, - "node_modules/@gitbeaker/requester-utils": { - "version": "35.8.1", + "node_modules/@gitbeaker/rest": { + "version": "38.12.1", + "resolved": "https://ecom-su-nexus.platform.wtrecom.com/repository/npm-group/@gitbeaker/rest/-/rest-38.12.1.tgz", + "integrity": "sha512-9KMSDtJ/sIov+5pcH+CAfiJXSiuYgN0KLKQFg0HHWR2DwcjGYkcbmhoZcWsaOWOqq4kihN1l7wX91UoRxxKKTQ==", "dev": true, - "license": "MIT", "dependencies": { - "form-data": "^4.0.0", - "qs": "^6.10.1", - "xcase": "^2.0.1" + "@gitbeaker/core": "^38.12.1", + "@gitbeaker/requester-utils": "^38.12.1" }, "engines": { - "node": ">=14.2.0" + "node": ">=18.0.0" } }, "node_modules/@humanfs/core": { @@ -4410,17 +4406,6 @@ "devOptional": true, "license": "MIT" }, - "node_modules/@sindresorhus/is": { - "version": "4.6.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, "node_modules/@sinonjs/commons": { "version": "3.0.1", "devOptional": true, @@ -4478,17 +4463,6 @@ "tslib": "^2.8.0" } }, - "node_modules/@szmarczak/http-timer": { - "version": "4.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "defer-to-connect": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@testing-library/dom": { "version": "10.4.0", "dev": true, @@ -4628,17 +4602,6 @@ "@babel/types": "^7.20.7" } }, - "node_modules/@types/cacheable-request": { - "version": "6.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/http-cache-semantics": "*", - "@types/keyv": "^3.1.4", - "@types/node": "*", - "@types/responselike": "^1.0.0" - } - }, "node_modules/@types/concat-stream": { "version": "2.0.3", "dev": true, @@ -4715,11 +4678,6 @@ "@types/unist": "*" } }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.4", - "dev": true, - "license": "MIT" - }, "node_modules/@types/is-empty": { "version": "1.2.3", "dev": true, @@ -4764,14 +4722,6 @@ "version": "0.0.29", "license": "MIT" }, - "node_modules/@types/keyv": { - "version": "3.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/linkify-it": { "version": "5.0.0", "dev": true, @@ -4842,14 +4792,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/responselike": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/stack-utils": { "version": "2.0.3", "devOptional": true, @@ -6176,31 +6118,6 @@ "node": ">= 0.8" } }, - "node_modules/cacheable-lookup": { - "version": "5.0.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.6.0" - } - }, - "node_modules/cacheable-request": { - "version": "7.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^4.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^6.0.1", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/call-bind": { "version": "1.0.8", "license": "MIT", @@ -6685,17 +6602,6 @@ "node": ">=0.10.0" } }, - "node_modules/clone-response": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/co": { "version": "4.6.0", "devOptional": true, @@ -7125,12 +7031,12 @@ "license": "BSD-2-Clause" }, "node_modules/danger": { - "version": "11.3.1", + "version": "12.3.3", + "resolved": "https://ecom-su-nexus.platform.wtrecom.com/repository/npm-group/danger/-/danger-12.3.3.tgz", + "integrity": "sha512-nZKzpgXN21rr4dwa6bFhM7G2JEa79dZRJiT3RVRSyi4yk1/hgZ2f8HDGoa7tMladTmu8WjJFyE3LpBIihh+aDw==", "dev": true, - "license": "MIT", "dependencies": { - "@gitbeaker/core": "^35.8.1", - "@gitbeaker/node": "^35.8.1", + "@gitbeaker/rest": "^38.0.0", "@octokit/rest": "^18.12.0", "async-retry": "1.2.3", "chalk": "^2.3.0", @@ -7142,7 +7048,7 @@ "http-proxy-agent": "^5.0.0", "https-proxy-agent": "^5.0.1", "hyperlinker": "^1.0.0", - "json5": "^2.1.0", + "json5": "^2.2.3", "jsonpointer": "^5.0.0", "jsonwebtoken": "^9.0.0", "lodash.find": "^4.6.0", @@ -7180,7 +7086,7 @@ "danger-runner": "distribution/commands/danger-runner.js" }, "engines": { - "node": ">=14.13.1" + "node": ">=18" } }, "node_modules/danger/node_modules/ansi-styles": { @@ -7414,39 +7320,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/decompress-response": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decompress-response/node_modules/mimic-response": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/dedent": { "version": "1.5.3", "devOptional": true, @@ -7479,14 +7352,6 @@ "node": ">=0.10.0" } }, - "node_modules/defer-to-connect": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, "node_modules/define-data-property": { "version": "1.1.4", "license": "MIT", @@ -7517,17 +7382,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/delay": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/delayed-stream": { "version": "1.0.0", "dev": true, @@ -7762,14 +7616,6 @@ "node": ">= 0.8" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "dev": true, - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, "node_modules/enhanced-resolve": { "version": "5.18.0", "devOptional": true, @@ -9446,14 +9292,6 @@ "node": ">=8" } }, - "node_modules/filter-obj": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/finalhandler": { "version": "1.3.1", "license": "MIT", @@ -9741,20 +9579,6 @@ "node": ">=4" } }, - "node_modules/get-stream": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/get-symbol-description": { "version": "1.1.0", "license": "MIT", @@ -9888,30 +9712,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/got": { - "version": "11.8.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@sindresorhus/is": "^4.0.0", - "@szmarczak/http-timer": "^4.0.5", - "@types/cacheable-request": "^6.0.1", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.2", - "decompress-response": "^6.0.0", - "http2-wrapper": "^1.0.0-beta.5.2", - "lowercase-keys": "^2.0.0", - "p-cancelable": "^2.0.0", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=10.19.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" - } - }, "node_modules/graceful-fs": { "version": "4.2.11", "devOptional": true, @@ -10180,11 +9980,6 @@ "entities": "^4.5.0" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "dev": true, - "license": "BSD-2-Clause" - }, "node_modules/http-errors": { "version": "2.0.0", "license": "MIT", @@ -10216,18 +10011,6 @@ "version": "2.3.0", "license": "MIT" }, - "node_modules/http2-wrapper": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" - }, - "engines": { - "node": ">=10.19.0" - } - }, "node_modules/https-proxy-agent": { "version": "5.0.1", "dev": true, @@ -13739,11 +13522,6 @@ "node": ">= 0.8.0" } }, - "node_modules/li": { - "version": "1.3.0", - "dev": true, - "license": "MIT" - }, "node_modules/lilconfig": { "version": "3.1.3", "dev": true, @@ -14044,14 +13822,6 @@ "loose-envify": "cli.js" } }, - "node_modules/lowercase-keys": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/lru-cache": { "version": "5.1.1", "license": "ISC", @@ -15239,17 +15009,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/mime": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/mime-db": { "version": "1.52.0", "license": "MIT", @@ -15289,14 +15048,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mimic-response": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/min-indent": { "version": "1.0.1", "dev": true, @@ -15586,17 +15337,6 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-url": { - "version": "6.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/npm-install-checks": { "version": "6.3.0", "dev": true, @@ -15880,14 +15620,6 @@ "dev": true, "license": "BSD-3-Clause" }, - "node_modules/p-cancelable": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/p-limit": { "version": "2.3.0", "devOptional": true, @@ -16589,15 +16321,6 @@ "url": "https://github.com/sponsors/lupomontero" } }, - "node_modules/pump": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, "node_modules/punycode": { "version": "2.3.1", "license": "MIT", @@ -16629,11 +16352,12 @@ "license": "MIT" }, "node_modules/qs": { - "version": "6.13.1", + "version": "6.14.0", + "resolved": "https://ecom-su-nexus.platform.wtrecom.com/repository/npm-group/qs/-/qs-6.14.0.tgz", + "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.6" + "side-channel": "^1.1.0" }, "engines": { "node": ">=0.6" @@ -16642,23 +16366,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/query-string": { - "version": "7.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "decode-uri-component": "^0.2.2", - "filter-obj": "^1.1.0", - "split-on-first": "^1.0.0", - "strict-uri-encode": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/querystringify": { "version": "2.2.0", "dev": true, @@ -17292,11 +16999,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-alpn": { - "version": "1.2.1", - "dev": true, - "license": "MIT" - }, "node_modules/resolve-cwd": { "version": "3.0.0", "devOptional": true, @@ -17332,17 +17034,6 @@ "node": ">=10" } }, - "node_modules/responselike": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "lowercase-keys": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/restore-cursor": { "version": "5.1.0", "dev": true, @@ -18265,14 +17956,6 @@ "dev": true, "license": "CC0-1.0" }, - "node_modules/split-on-first": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/sprintf-js": { "version": "1.0.3", "devOptional": true, @@ -18315,14 +17998,6 @@ "node": ">=10.0.0" } }, - "node_modules/strict-uri-encode": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/string_decoder": { "version": "1.3.0", "dev": true, @@ -20196,8 +19871,9 @@ }, "node_modules/xcase": { "version": "2.0.1", - "dev": true, - "license": "MIT" + "resolved": "https://ecom-su-nexus.platform.wtrecom.com/repository/npm-group/xcase/-/xcase-2.0.1.tgz", + "integrity": "sha512-UmFXIPU+9Eg3E9m/728Bii0lAIuoc+6nbrNUKaRPJOFp91ih44qqGlWtxMB6kXFrRD6po+86ksHM5XHCfk6iPw==", + "dev": true }, "node_modules/xml-name-validator": { "version": "4.0.0", diff --git a/package.json b/package.json index a2992c6..6bf3122 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "browserslist-config-asos": "file:./peripheral/browserslist-config-asos", "core-js": "^3.0.0", "cross-env": "^7.0.3", - "danger": "^11.3.0", + "danger": "^12.3.3", "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-jest": "^28.9.0", From bb70ed450b3098c388a2ad57e26e20a53e43c74b Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Feb 2025 15:47:49 +0000 Subject: [PATCH 14/41] fixup registry --- docs/CHANGELOG.md | 1 + package-lock.json | 396 +++++----------------------------------------- package.json | 2 +- 3 files changed, 38 insertions(+), 361 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index abad499..7bb1c36 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -25,6 +25,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Changed - Modified some playwright screenshots from the "serve" example, false negatives assumed due to subtle change in Linux Chromium in latest Ubuntu? Will need a new issue to make less flaky! +- Updated the `danger` version ## [0.10.2] - 2024-12-26 diff --git a/package-lock.json b/package-lock.json index 71ede54..2ea736b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@asos/web-toggle-point", - "version": "0.10.2", + "version": "0.10.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@asos/web-toggle-point", - "version": "0.10.2", + "version": "0.10.3", "license": "MIT", "workspaces": [ "packages/features", @@ -35,7 +35,7 @@ "browserslist-config-asos": "file:./peripheral/browserslist-config-asos", "core-js": "^3.0.0", "cross-env": "^7.0.3", - "danger": "^11.3.0", + "danger": "^12.3.3", "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-jest": "^28.9.0", @@ -89,7 +89,7 @@ }, "examples/next": { "name": "web-toggle-point-next-example", - "version": "0.2.2", + "version": "0.2.3", "dependencies": { "@asos/web-toggle-point-features": "file:../../packages/features", "@asos/web-toggle-point-react-pointcuts": "file:../../packages/react-pointcuts", @@ -2063,47 +2063,43 @@ } }, "node_modules/@gitbeaker/core": { - "version": "35.8.1", + "version": "38.12.1", + "resolved": "https://registry.npmjs.org/@gitbeaker/core/-/core-38.12.1.tgz", + "integrity": "sha512-8XMVcBIdVAAoxn7JtqmZ2Ee8f+AZLcCPmqEmPFOXY2jPS84y/DERISg/+sbhhb18iRy+ZsZhpWgQ/r3CkYNJOQ==", "dev": true, - "license": "MIT", "dependencies": { - "@gitbeaker/requester-utils": "^35.8.1", - "form-data": "^4.0.0", - "li": "^1.3.0", - "mime": "^3.0.0", - "query-string": "^7.0.0", + "@gitbeaker/requester-utils": "^38.12.1", + "qs": "^6.11.1", "xcase": "^2.0.1" }, "engines": { - "node": ">=14.2.0" + "node": ">=18.0.0" } }, - "node_modules/@gitbeaker/node": { - "version": "35.8.1", + "node_modules/@gitbeaker/requester-utils": { + "version": "38.12.1", + "resolved": "https://registry.npmjs.org/@gitbeaker/requester-utils/-/requester-utils-38.12.1.tgz", + "integrity": "sha512-Rc/DgngS0YPN+AY1s9UnexKSy4Lh0bkQVAq9p7PRbRpXb33SlTeCg8eg/8+A/mrMcHgYmP0XhH8lkizyA5tBUQ==", "dev": true, - "license": "MIT", "dependencies": { - "@gitbeaker/core": "^35.8.1", - "@gitbeaker/requester-utils": "^35.8.1", - "delay": "^5.0.0", - "got": "^11.8.3", + "qs": "^6.11.1", "xcase": "^2.0.1" }, "engines": { - "node": ">=14.2.0" + "node": ">=18.0.0" } }, - "node_modules/@gitbeaker/requester-utils": { - "version": "35.8.1", + "node_modules/@gitbeaker/rest": { + "version": "38.12.1", + "resolved": "https://registry.npmjs.org/@gitbeaker/rest/-/rest-38.12.1.tgz", + "integrity": "sha512-9KMSDtJ/sIov+5pcH+CAfiJXSiuYgN0KLKQFg0HHWR2DwcjGYkcbmhoZcWsaOWOqq4kihN1l7wX91UoRxxKKTQ==", "dev": true, - "license": "MIT", "dependencies": { - "form-data": "^4.0.0", - "qs": "^6.10.1", - "xcase": "^2.0.1" + "@gitbeaker/core": "^38.12.1", + "@gitbeaker/requester-utils": "^38.12.1" }, "engines": { - "node": ">=14.2.0" + "node": ">=18.0.0" } }, "node_modules/@humanfs/core": { @@ -4410,17 +4406,6 @@ "devOptional": true, "license": "MIT" }, - "node_modules/@sindresorhus/is": { - "version": "4.6.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, "node_modules/@sinonjs/commons": { "version": "3.0.1", "devOptional": true, @@ -4478,17 +4463,6 @@ "tslib": "^2.8.0" } }, - "node_modules/@szmarczak/http-timer": { - "version": "4.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "defer-to-connect": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@testing-library/dom": { "version": "10.4.0", "dev": true, @@ -4628,17 +4602,6 @@ "@babel/types": "^7.20.7" } }, - "node_modules/@types/cacheable-request": { - "version": "6.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/http-cache-semantics": "*", - "@types/keyv": "^3.1.4", - "@types/node": "*", - "@types/responselike": "^1.0.0" - } - }, "node_modules/@types/concat-stream": { "version": "2.0.3", "dev": true, @@ -4715,11 +4678,6 @@ "@types/unist": "*" } }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.4", - "dev": true, - "license": "MIT" - }, "node_modules/@types/is-empty": { "version": "1.2.3", "dev": true, @@ -4764,14 +4722,6 @@ "version": "0.0.29", "license": "MIT" }, - "node_modules/@types/keyv": { - "version": "3.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/linkify-it": { "version": "5.0.0", "dev": true, @@ -4842,14 +4792,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/responselike": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/stack-utils": { "version": "2.0.3", "devOptional": true, @@ -6176,31 +6118,6 @@ "node": ">= 0.8" } }, - "node_modules/cacheable-lookup": { - "version": "5.0.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.6.0" - } - }, - "node_modules/cacheable-request": { - "version": "7.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^4.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^6.0.1", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/call-bind": { "version": "1.0.8", "license": "MIT", @@ -6685,17 +6602,6 @@ "node": ">=0.10.0" } }, - "node_modules/clone-response": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/co": { "version": "4.6.0", "devOptional": true, @@ -7125,12 +7031,12 @@ "license": "BSD-2-Clause" }, "node_modules/danger": { - "version": "11.3.1", + "version": "12.3.3", + "resolved": "https://registry.npmjs.org/danger/-/danger-12.3.3.tgz", + "integrity": "sha512-nZKzpgXN21rr4dwa6bFhM7G2JEa79dZRJiT3RVRSyi4yk1/hgZ2f8HDGoa7tMladTmu8WjJFyE3LpBIihh+aDw==", "dev": true, - "license": "MIT", "dependencies": { - "@gitbeaker/core": "^35.8.1", - "@gitbeaker/node": "^35.8.1", + "@gitbeaker/rest": "^38.0.0", "@octokit/rest": "^18.12.0", "async-retry": "1.2.3", "chalk": "^2.3.0", @@ -7142,7 +7048,7 @@ "http-proxy-agent": "^5.0.0", "https-proxy-agent": "^5.0.1", "hyperlinker": "^1.0.0", - "json5": "^2.1.0", + "json5": "^2.2.3", "jsonpointer": "^5.0.0", "jsonwebtoken": "^9.0.0", "lodash.find": "^4.6.0", @@ -7180,7 +7086,7 @@ "danger-runner": "distribution/commands/danger-runner.js" }, "engines": { - "node": ">=14.13.1" + "node": ">=18" } }, "node_modules/danger/node_modules/ansi-styles": { @@ -7414,39 +7320,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/decompress-response": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decompress-response/node_modules/mimic-response": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/dedent": { "version": "1.5.3", "devOptional": true, @@ -7479,14 +7352,6 @@ "node": ">=0.10.0" } }, - "node_modules/defer-to-connect": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, "node_modules/define-data-property": { "version": "1.1.4", "license": "MIT", @@ -7517,17 +7382,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/delay": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/delayed-stream": { "version": "1.0.0", "dev": true, @@ -7762,14 +7616,6 @@ "node": ">= 0.8" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "dev": true, - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, "node_modules/enhanced-resolve": { "version": "5.18.0", "devOptional": true, @@ -9446,14 +9292,6 @@ "node": ">=8" } }, - "node_modules/filter-obj": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/finalhandler": { "version": "1.3.1", "license": "MIT", @@ -9741,20 +9579,6 @@ "node": ">=4" } }, - "node_modules/get-stream": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/get-symbol-description": { "version": "1.1.0", "license": "MIT", @@ -9888,30 +9712,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/got": { - "version": "11.8.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@sindresorhus/is": "^4.0.0", - "@szmarczak/http-timer": "^4.0.5", - "@types/cacheable-request": "^6.0.1", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.2", - "decompress-response": "^6.0.0", - "http2-wrapper": "^1.0.0-beta.5.2", - "lowercase-keys": "^2.0.0", - "p-cancelable": "^2.0.0", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=10.19.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" - } - }, "node_modules/graceful-fs": { "version": "4.2.11", "devOptional": true, @@ -10180,11 +9980,6 @@ "entities": "^4.5.0" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "dev": true, - "license": "BSD-2-Clause" - }, "node_modules/http-errors": { "version": "2.0.0", "license": "MIT", @@ -10216,18 +10011,6 @@ "version": "2.3.0", "license": "MIT" }, - "node_modules/http2-wrapper": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" - }, - "engines": { - "node": ">=10.19.0" - } - }, "node_modules/https-proxy-agent": { "version": "5.0.1", "dev": true, @@ -13739,11 +13522,6 @@ "node": ">= 0.8.0" } }, - "node_modules/li": { - "version": "1.3.0", - "dev": true, - "license": "MIT" - }, "node_modules/lilconfig": { "version": "3.1.3", "dev": true, @@ -14044,14 +13822,6 @@ "loose-envify": "cli.js" } }, - "node_modules/lowercase-keys": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/lru-cache": { "version": "5.1.1", "license": "ISC", @@ -15239,17 +15009,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/mime": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/mime-db": { "version": "1.52.0", "license": "MIT", @@ -15289,14 +15048,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mimic-response": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/min-indent": { "version": "1.0.1", "dev": true, @@ -15586,17 +15337,6 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-url": { - "version": "6.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/npm-install-checks": { "version": "6.3.0", "dev": true, @@ -15880,14 +15620,6 @@ "dev": true, "license": "BSD-3-Clause" }, - "node_modules/p-cancelable": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/p-limit": { "version": "2.3.0", "devOptional": true, @@ -16589,15 +16321,6 @@ "url": "https://github.com/sponsors/lupomontero" } }, - "node_modules/pump": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, "node_modules/punycode": { "version": "2.3.1", "license": "MIT", @@ -16629,11 +16352,12 @@ "license": "MIT" }, "node_modules/qs": { - "version": "6.13.1", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", + "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.6" + "side-channel": "^1.1.0" }, "engines": { "node": ">=0.6" @@ -16642,23 +16366,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/query-string": { - "version": "7.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "decode-uri-component": "^0.2.2", - "filter-obj": "^1.1.0", - "split-on-first": "^1.0.0", - "strict-uri-encode": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/querystringify": { "version": "2.2.0", "dev": true, @@ -17292,11 +16999,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-alpn": { - "version": "1.2.1", - "dev": true, - "license": "MIT" - }, "node_modules/resolve-cwd": { "version": "3.0.0", "devOptional": true, @@ -17332,17 +17034,6 @@ "node": ">=10" } }, - "node_modules/responselike": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "lowercase-keys": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/restore-cursor": { "version": "5.1.0", "dev": true, @@ -18265,14 +17956,6 @@ "dev": true, "license": "CC0-1.0" }, - "node_modules/split-on-first": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/sprintf-js": { "version": "1.0.3", "devOptional": true, @@ -18315,14 +17998,6 @@ "node": ">=10.0.0" } }, - "node_modules/strict-uri-encode": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/string_decoder": { "version": "1.3.0", "dev": true, @@ -20196,8 +19871,9 @@ }, "node_modules/xcase": { "version": "2.0.1", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/xcase/-/xcase-2.0.1.tgz", + "integrity": "sha512-UmFXIPU+9Eg3E9m/728Bii0lAIuoc+6nbrNUKaRPJOFp91ih44qqGlWtxMB6kXFrRD6po+86ksHM5XHCfk6iPw==", + "dev": true }, "node_modules/xml-name-validator": { "version": "4.0.0", diff --git a/package.json b/package.json index a2992c6..6bf3122 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "browserslist-config-asos": "file:./peripheral/browserslist-config-asos", "core-js": "^3.0.0", "cross-env": "^7.0.3", - "danger": "^11.3.0", + "danger": "^12.3.3", "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-jest": "^28.9.0", From 9b5ce0a6421c6a91ba992fe70aab03ccd9ccd6cb Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Sat, 8 Feb 2025 08:26:39 +0000 Subject: [PATCH 15/41] fix examples readme links --- examples/express/README.md | 4 ++-- examples/express/docs/CHANGELOG.md | 6 ++++++ examples/express/package.json | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/examples/express/README.md b/examples/express/README.md index 6fe37d1..ac9e6f6 100644 --- a/examples/express/README.md +++ b/examples/express/README.md @@ -4,8 +4,8 @@ Some example applications based on an [express](https://expressjs.com/) router 1. [animals](./src/routes/animals/README.md) - This is a basic example using the [`webpack`](../packages/webpack/docs/README.md) package. + This is a basic example using the [`webpack`](../../packages/webpack/docs/README.md) package. 2. [config](./src/routes/config/README.md) - This example shows the use of the [`react-pointcuts`](../packages/react-pointcuts/docs/README.md), [`features`](../packages/features/docs/README.md), [`ssr`](../packages/ssr/docs/README.md) and [`webpack`](../packages/webpack/docs/README.md) packages. + This example shows the use of the [`react-pointcuts`](../../packages/react-pointcuts/docs/README.md), [`features`](../../packages/features/docs/README.md), [`ssr`](../../packages/ssr/docs/README.md) and [`webpack`](../../packages/webpack/docs/README.md) packages. diff --git a/examples/express/docs/CHANGELOG.md b/examples/express/docs/CHANGELOG.md index 6ac4195..7247ccf 100644 --- a/examples/express/docs/CHANGELOG.md +++ b/examples/express/docs/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.2.4] - 2024-02-07 + +### Fixed + +- corrected some links to packages from the examples readme. + ## [0.2.3] - 2024-12-24 ### Changed diff --git a/examples/express/package.json b/examples/express/package.json index 995407b..75ecd27 100644 --- a/examples/express/package.json +++ b/examples/express/package.json @@ -1,6 +1,6 @@ { "name": "web-toggle-point-express-example", - "version": "0.2.3", + "version": "0.2.4", "type": "module", "engines": { "node": ">=20.6.0" From 041368e453e9cc784fbeeff6e9a21dc71e96ad50 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Sun, 9 Feb 2025 11:30:37 +0000 Subject: [PATCH 16/41] add danger:local:staged --- docs/CHANGELOG.md | 1 + docs/CONTRIBUTING.md | 2 ++ package-lock.json | 2 +- package.json | 1 + 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 7bb1c36..9673185 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -20,6 +20,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). - Updated the `CONTRIBUTING.md`: - Clarification regarding changes needing to be committed for the `danger:local` script to be effective. + - Added a `danger:local:staged` command to augment the above - Clarification regarding write access or forking being needed to open a pull request. ### Changed diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index f5c1fb0..48ae95f 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -42,6 +42,8 @@ npm run danger:local > N.B. The `danger:local` script requires staged changes to be committed, otherwise you will receive the message: > > `No git changes detected between head and main` +> +> If you'd like to check just staged commits, you can instead run `npm run danger:local:staged` ## Opening a PR diff --git a/package-lock.json b/package-lock.json index 2ea736b..6d188ab 100644 --- a/package-lock.json +++ b/package-lock.json @@ -57,7 +57,7 @@ }, "examples/express": { "name": "web-toggle-point-express-example", - "version": "0.2.3", + "version": "0.2.4", "dependencies": { "@asos/web-toggle-point-features": "file:../../packages/features", "@asos/web-toggle-point-react-pointcuts": "file:../../packages/react-pointcuts", diff --git a/package.json b/package.json index 6bf3122..aeebc82 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "scripts": { "build": "npm run build --workspace packages", "danger:local": "DANGER_DISABLE_TRANSPILATION=true danger local --base main", + "danger:local:staged": "DANGER_DISABLE_TRANSPILATION=true danger local --staging --base main", "docs": "rimraf ./docs/html/* && jsdoc ./packages/*/src -c ./docs/jsdoc.conf.js", "lint": "npm run lint --workspaces --if-present && npm run lint:docs && npm run lint:danger", "lint:danger": "eslint danger", From 62da38ef85e0d2db4ebb3cc2f05c77625c29e432 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Sun, 9 Feb 2025 18:39:49 +0000 Subject: [PATCH 17/41] serve changelog & version --- examples/serve/docs/CHANGELOG.md | 7 +++++++ examples/serve/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/examples/serve/docs/CHANGELOG.md b/examples/serve/docs/CHANGELOG.md index 126a3c8..c833149 100644 --- a/examples/serve/docs/CHANGELOG.md +++ b/examples/serve/docs/CHANGELOG.md @@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.2.3] - 2025-02-07 + +### Changed + +- updated some linux playwright snapshots + - no code changes, so this must be a change in linux chromium. Assets look identical to eye, so presumably need to relax the fuzziness. + ## [0.2.2] - 2024-12-17 ### Removed diff --git a/examples/serve/package.json b/examples/serve/package.json index 945644b..20a3f5d 100644 --- a/examples/serve/package.json +++ b/examples/serve/package.json @@ -1,6 +1,6 @@ { "name": "web-toggle-point-serve-example", - "version": "0.2.0", + "version": "0.2.3", "type": "module", "private": true, "scripts": { From f5236d3146a5513851b7b0b45119378468c7e466 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Wed, 12 Feb 2025 17:07:58 +0000 Subject: [PATCH 18/41] update readme --- docs/CHANGELOG.md | 3 +++ docs/README.md | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 9673185..1f12d98 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -22,6 +22,9 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). - Clarification regarding changes needing to be committed for the `danger:local` script to be effective. - Added a `danger:local:staged` command to augment the above - Clarification regarding write access or forking being needed to open a pull request. +- Updated main `README.md`: + - Linked to `CONTRIBUTING.md` + - Added link to repo discussions, alongside the issues ### Changed diff --git a/docs/README.md b/docs/README.md index e6e59fa..0371fe0 100644 --- a/docs/README.md +++ b/docs/README.md @@ -84,7 +84,7 @@ Please see separate [examples documentation](../examples/README.md). ### 🔜 Future Plans -Please see [issues](https://github.com/ASOS/web-toggle-point/issues) and please consider contributing! +Please see [discussions](https://github.com/ASOS/web-toggle-point/discussions) and [issues](https://github.com/ASOS/web-toggle-point/issues), and please consider [contributing](./CONTRIBUTING.md)! ### 🔗 Links From 4493d7a54a43caf4570a6a7e04c9c7fd745a80d7 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 27 Feb 2025 14:19:30 +0000 Subject: [PATCH 19/41] fix typo in jsdoc --- packages/webpack/docs/CHANGELOG.md | 6 ++++++ packages/webpack/package.json | 2 +- packages/webpack/src/plugins/togglePointInjection/index.js | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/webpack/docs/CHANGELOG.md b/packages/webpack/docs/CHANGELOG.md index 9467746..4545094 100644 --- a/packages/webpack/docs/CHANGELOG.md +++ b/packages/webpack/docs/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.7.4] - 2025-02-27 + +### Fixed + +- fixed typo in JSDoc comment + ## [0.7.3] - 2024-12-26 ### Fixed diff --git a/packages/webpack/package.json b/packages/webpack/package.json index ec17f81..cf9b216 100644 --- a/packages/webpack/package.json +++ b/packages/webpack/package.json @@ -1,7 +1,7 @@ { "name": "@asos/web-toggle-point-webpack", "description": "toggle point webpack plugin", - "version": "0.7.3", + "version": "0.7.4", "license": "MIT", "type": "module", "main": "./lib/main.cjs", diff --git a/packages/webpack/src/plugins/togglePointInjection/index.js b/packages/webpack/src/plugins/togglePointInjection/index.js index 0148828..2611dd0 100644 --- a/packages/webpack/src/plugins/togglePointInjection/index.js +++ b/packages/webpack/src/plugins/togglePointInjection/index.js @@ -21,7 +21,7 @@ class TogglePointInjection { * @param {string} options.pointCuts[].togglePointModule path, from root of the compilation, of where the toggle point sits. Or a resolvable node_module. * @param {object} [options.pointCuts[].variantGlob=.\/**\/__variants__/*\/*\/!(*.test).{js,jsx,ts,tsx}] {@link https://en.wikipedia.org/wiki/Glob_(programming)|Globs} to identified variant modules. The plugin uses {@link https://github.com/mrmlnc/fast-glob|fast-glob} under the hood, so supports any glob that it does. * @param {function} [options.pointCuts[].joinPointResolver=(variantPath) => path.posix.resolve(variantPath, "../../../..", path.basename(variantPath))] A function that takes the path to a variant module and returns a join point / base module. N.B. This is executed at build-time, so cannot use run-time context. It should use posix path segments, so on Windows be sure to use path.posix.resolve. - * @param {string} [options.pointsCuts[].toggleHandler] Path to a toggle handler that unpicks a {@link https://webpack.js.org/api/module-methods/#requirecontext|require.context} containing potential variants, passing that plus a joint point module to a toggle point function. If not provided, the plugin will use a default handler that processes folder names into a tree held in a Map. Leaf nodes of the tree are the variant modules. + * @param {string} [options.pointCuts[].toggleHandler] Path to a toggle handler that unpicks a {@link https://webpack.js.org/api/module-methods/#requirecontext|require.context} containing potential variants, passing that plus a joint point module to a toggle point function. If not provided, the plugin will use a default handler that processes folder names into a tree held in a Map. Leaf nodes of the tree are the variant modules. * @param {function} [options.webpackNormalModule] A function that returns the Webpack NormalModule class. This is required for Next.js, as it does not expose the NormalModule class directly * @returns {external:Webpack.WebpackPluginInstance} WebpackPluginInstance * @example N.B. forward slashes are escaped in the glob, due to JSDoc shortcomings, but in reality should be un-escaped From 51c2c48894ea513328ea5fb7f2fd9b963b5a6675 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Tue, 4 Mar 2025 10:33:27 +0000 Subject: [PATCH 20/41] package-lock.json --- package-lock.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6d188ab..44d5f4d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -116,7 +116,7 @@ }, "examples/serve": { "name": "web-toggle-point-serve-example", - "version": "0.2.0", + "version": "0.2.3", "dependencies": { "@asos/web-toggle-point-features": "file:../../packages/features", "@asos/web-toggle-point-webpack": "file:../../packages/webpack", @@ -20153,7 +20153,7 @@ }, "packages/webpack": { "name": "@asos/web-toggle-point-webpack", - "version": "0.7.3", + "version": "0.7.4", "license": "MIT", "dependencies": { "@babel/runtime": "^7.26.0", From 1f0cb29d36b158f19c1301eba2c122c0810c146b Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 6 Mar 2025 12:18:52 +0000 Subject: [PATCH 21/41] [26] Fix public/scoped package publishing (#27) * update workflows * version * typo * update chromium linux snaps * versions for serve update * package.json repository field * update root package.lock * bugs & directories/doc fields * fix changelog --------- Co-authored-by: Tom Pereira --- .github/actions/publish/publish.sh | 2 +- .github/workflows/release.yaml | 2 ++ docs/CHANGELOG.md | 6 ++++++ examples/serve/docs/CHANGELOG.md | 7 +++++++ examples/serve/package.json | 2 +- .../-screenshots-control-chromium-linux.png | Bin 1515 -> 1281 bytes ...enshots-st-patricks-day-chromium-linux.png | Bin 3354 -> 3079 bytes package-lock.json | 14 +++++++------- package.json | 2 +- packages/features/docs/CHANGELOG.md | 6 ++++++ packages/features/package.json | 13 ++++++++++++- packages/react-pointcuts/docs/CHANGELOG.md | 6 ++++++ packages/react-pointcuts/package.json | 13 ++++++++++++- packages/ssr/docs/CHANGELOG.md | 6 ++++++ packages/ssr/package.json | 13 ++++++++++++- packages/webpack/docs/CHANGELOG.md | 6 ++++++ packages/webpack/package.json | 13 ++++++++++++- 17 files changed, 97 insertions(+), 14 deletions(-) diff --git a/.github/actions/publish/publish.sh b/.github/actions/publish/publish.sh index cd06cdf..cd8920a 100755 --- a/.github/actions/publish/publish.sh +++ b/.github/actions/publish/publish.sh @@ -1,2 +1,2 @@ TAG=$([ "$PRE_RELEASE" == "true" ] && echo "--tag=pre-release ") -npm publish $TAG--workspace=$WORKSPACE 2> publish_stderr_digest.log +npm publish --access public $TAG--workspace=$WORKSPACE 2> publish_stderr_digest.log diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index eb97d40..ef7b596 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -219,3 +219,5 @@ jobs: name: ${{ matrix.package.name }} version: ${{ steps.newVersion.outputs.version }} is-pre-release: ${{ env.IS_PRE_RELEASE }} + env: + NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }} diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 532c7d8..42e9399 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -14,6 +14,12 @@ N.B. See changelogs for individual packages, where most change will occur: This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). +## [0.10.3] - 2025-02-27 + +### Fixed + +- GHA pipelines for publishing to public/scoped NPM repository + ## [0.10.2] - 2024-12-26 ### Fixed diff --git a/examples/serve/docs/CHANGELOG.md b/examples/serve/docs/CHANGELOG.md index 126a3c8..9f2b321 100644 --- a/examples/serve/docs/CHANGELOG.md +++ b/examples/serve/docs/CHANGELOG.md @@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.2.3] - 2025-02-27 + +### Changed + +- updated some linux playwright snapshots + - no code changes, so this must be a change in linux chromium. Assets look identical to eye, so presumably need to relax the fuzziness. + ## [0.2.2] - 2024-12-17 ### Removed diff --git a/examples/serve/package.json b/examples/serve/package.json index 945644b..20a3f5d 100644 --- a/examples/serve/package.json +++ b/examples/serve/package.json @@ -1,6 +1,6 @@ { "name": "web-toggle-point-serve-example", - "version": "0.2.0", + "version": "0.2.3", "type": "module", "private": true, "scripts": { diff --git a/examples/serve/src/fixtures/event/playwright.spec.ts-snapshots/-screenshots-control-chromium-linux.png b/examples/serve/src/fixtures/event/playwright.spec.ts-snapshots/-screenshots-control-chromium-linux.png index 6615aa1a81dce531b97b8f2d111a015ab6a08e19..f1aa0ebed6c0d579a89a296353976c95a38abd46 100644 GIT binary patch delta 1249 zcmV<71RneA3xNudFn)my&Yb+>UG`%YU6`?^f*U%c*q61R@!uK()RUrEOE zp4{I7pq}kA#OdlH001CSx2CS*gd+OMdUO6JcDvo8#RP%DFF zbljMgS+zGGRDX&b%W_hAuu78Epe%8P0w+~Qo8*RjZM2FWr8wAZIz_%RPfjND3a|Ep zy8&lqR_!fjjgr6?3Y<`C&i1ESHigqcg~swc>zA#25mHW(O@Xs@$!N|Nog!D6-x6oi zFeIKWu$*Kx=fTaAuKMzf6d9BRyWMUVj10cOtCh}Vv44q@vywk12G5r|^G%c_AInii z;-uy>IYwuBwJ{H(D45kGRwxI98%o2Ih&efQQObVUE^7qWsS+H z&}d??>fmryE^55g`8ujsTlXWRCjF)Yw}dTR4}ZFY{yb)wXMf`jQD5at2ZMSO^ zPnnZHjbqUdfsT(0DK;iS`qZVm4!o(0NgIQ3c+VIEAZqfdP>3L;^y-y39Gh~>0{{Sk zEq}*r$(P%=BiyeLe_MfnZV4-1y+z%6>sV=NpU!|`4ke}c<)IYmhkEG#{^dEuT7B#Q z4fn@uA_8zN{rM3-b25j=7YnVs9-GXC4}?$Jm<080k7{7*V$wzcgm;Y{02t;x?sX{u z07S;VPU+1mKuUzPq~B72+IFh2k6<44<$s|R*_3<(vD+o}>GpgPBE(Qik*uJ#?Vf#Q z<2&|NRK!Pz+Jh7Yt=%<)J^^ufSw)%+HVJa3u4lX0G|`g*Q(++7yFvK0QLd1NbR#p_G1RU3>dv2NG=FOXT?%bg|^jDJRdhu{3 z003sQxvsA6>VMU%008iKy!Q6?l9G}$XU=4F!Zd#oD2nR!`ttJf-Q8U@hRw~*_V#v> zNW|fAsNF;K*-2`3Y`gpzG!-o%VZ*OBh4Gj%Xo;)E*2!dcqNr}Z` zSzTQ<8jUO#%j5B&D7v$=)6~?|)zuY=LK9u2d?0^X84y=@bfuo12?>_@hUU8XFs#p21yNs@#znGCn*=jX4luM=Lxfqy{Y)TvWgyQQV&?%lfthqxKYSCN_mafN;G z-~nMicDwz;g$o=G2e)AP6YfhwDaaRM#sD91ai!1^=?Wy`8+zi4!LZ3JNS1%f!TlR;x`iAqiPoS$JSh zPEH0_K{Yn6uyMoZ=H@mwHe&7R?0-uJl*FELrKP3A!^43<06~zKFJDeiPv5w4Ln4t> zRaITPcFpVcuC1+&jEp>f{J5*DE6LQw#l@E{UD9YYU%!4027|M+vllO3G#CuY`{;DK zTeof%78VKwf+Q1WoOFur6&ow;z`#Ikcv)H5*|TSBYiqxK`xXj?j7DQoQGZb=6iRbn zGN2@O$9eVYl}sk%a=BbCx1yrLVzFTMt*xz&jt;R{oSmI5lgU1Q{D@zXKoI=#;|JC@ z8jTed75I=+sl+Z*csQHQmPjP{2hnIqe0)A1004u7g9)9ZCxfDBV`JmPhYtzYw^#@l z;k_~>QY16DxJI9zHa0fe+S)`S5u42}FE9V}=@X@WA(0{-B^mTT_h_g> n|6oZ&8T!!BP=-DuSX(O1u+tD@ zm(@Y&RzWYTjGbEFVzVc&FX_s;vjXnY_%H#E5Z-uU{D#rR%+{;Xea-wCU_j%VA` zwo`Gv%X6t;alM<3=C={vL^@H>)T4UdyYv0CdqO3DL&)EX`nYrFqq&{9MPawq+AY-B zESuig_dv9#cc5>mI)8rYmc3Um@8$a2apg_sQl??PJAV@Zd~{IY*iPAJ+9U zu7}85^pU~G-m6aB!}rHHetxlb_L6_8wlF}ph#Nn*`rTMDReWZ&24HaCUbDDIreNNr zq5tbMuYU(ypWKrW+6noi1m=vV(-R&*5?V2}^5flLLj=l$r{Y~PsKi78yfCcY=3v?( zs>@EgDeQI%>A3TKj-Laf;UXJ9Ti7Wa*hoIUz9+m`Ti|=5+xj>EUx0l(zEhd|WhBxw zK!*Bz<4t|}u3Kw-lJ(s(1pp!pXG;5R`GlMn?|+sd&z~+99G8VeR?=F`vptUxN&rel z+WziLrDQlRs;)CNHiaEzJncYGl}sYOs*OrHUZi&i9Wg-w7^N%y#~debjGIoC5vu4) zIw^Kk0qqcV8=Q1g*zFWjPb3o77I{PgZ0_xU|AU`=dh1{QyYpA!;z9(tcf+T)fBe%w z{C~yQYxMwi#Q1xkRQ{u>FCmfKl6(5xEHIYNCmc1Kk!1?dkxYRIQp+&>>0*AoWXIFR zJ+e1lwi%Iz6p;X-S9VI4$An>B7q2u!zCDr8+otU^5J4G9XB4$bl2@`E(!>+eW7GPZ z8UU0{<TM5?1xRkg@Cd z=7g1PI0$h80P|gsh|5c=Neo@&Cv+{lSe&$3Oid~Ri2~e>h2)#Bs`^_@-D?=b)IO0) z9V?m#%EggZwRDq2b(`(w=%%pS*|mGc{_gQ#K6n4%1_0aoH}^z(rrCTye@|uZSAU@5}Ai?bkBpm?BoKu~~e6uVwC$N$3<_)KXJS z-DegRnfRsDQQZ;>)vZlN2%~9ahTtLQ#0h)#cL4#tDq;%D;`$E&Jd( zf~3o=ls|Jii0(M7myIDaapVt2H$VG7Pi2~p6s)-1rkpl3cXwWLGRC>700W=>l#$<` zlu4_A#V+yVPaDZ%W^|73+9DC(KFP>n%~uZirIF>;>?Ea^kC9#f=_FJFfPWRVBZtQN zpZHO#n20q?B6Hg(s%en7%=YaO_A0w}i}l5~&W>*S*b<4+NKd`KcqyEHXVzIe!J{MLwFds*U^<^rMHq zH-*IGwv#UBV&a{ivFw@Gq za>@JFdq00P;h#FB7IJp$N9zhdtdx53>Cri|@5{FRHLLth=S^j0LE01M40u_Tmy}Tz z5__M2Ue%cAvZhHSZ4=cZ$oAR(P=&opYv*_;7JIx6eSG8V`QU>G)^FO_H+11QTy$L! z>G3wK;}_~Rf8i2<>VL%rg!gT~=QFK+va0J;96y#Y^c1S4Wd5;Z=bq6DzLm-ePQj{y z- zW}e7eAOOJ0k8YzhWWcgvwUuRDk)wv~xt3RQdCichYc@9~lz#%?wbbs$oF{6-Qf9^x z1qq?e0K^)L41&;SA)$oQ7^NIo$oxJ#bxtxT{LmM+r~cb}j*HYU1dZ7Q>j`)M-FI7fV}3DJNFJLF5PkGt z(j@?hB{Irqi^op}?-ufIE>raZh=SZmBO#Omv$L)j0vux@2w9?t5DM^=(rYVYKu}}= z!^+@Wr>U4LB~%IkZrO2(Aj>z+Ks$;xod0yFa}V1WwAjB2Y}KTX&G=g_*ptDqBM5(<^+wBSvCgA!wP?T z%$;^1D*zDM`I1qlN#hZfwMZh`B&ua<+GV>Hx-0C}Tf3cGzPOQmqF%29k-^v}AKv!u zFMZ;>y?@dET77|V8y?;H&oc{)?=4(v7)PT$y?e3qvwR%Oti< zltbxxE=yFX*r4{aY74C)MJ&NYWF)jCm=!KVC^Uxzh*?(sRkSar56r*swQvNl!H0y|*B;80kU2Ze~ zB?N)%dw>K0%&~p&Lz+rj#^85@pLjwa%$}UFO~=JYX3T1wf?cNxTW7l&2m`KK|fsV7npUE(`nS-?eMNIR4d#9{BRZ+kd|T zU~ay0YUY*d{Dp0s)FJv%G_p!@dXq-_HKQ~$6)gS04-6=}nm1&L00`aUtI704*{^{P zDBA99ZjUMe%(u%Gk8zSJu5iHOd6r%AJm!OH`f#^SU>vh-`9ebP?094e%o$JWmgRGz zB4u;hiYJ@PY@Ui2zB%sEp>$z?LVo~r%6j62&EjeEV7i$s&^>EQSn-te`mTHp9~PKzl_p(KMH`kV;5r4HCK9XfgstT2qn5;ug>KzpA)UD} zp8u~W4}bB+jq8Peeq#q7*06@V5FHCUn$2cAxZkG!``%}j@4xX4u7{U|-|xV~8rE#=KC!$$(03H$#6xPes0BF2(|00000NkvXXu0mjf DQGgC^ delta 3339 zcmV+m4fOJd7@8W8Fn-0yzBd+#^j+yT++_0Wet^r2@!&AUxQD1R;ONgw*~_F;Bn59&Zj}_CYeRQ3cNTqk7eVNWCV7)R%N_ybZTr&e=wV`aduvzM`jGs=py96l zm`-*~YZi@4Q-42e{?l|LBAKYDuBh-uVM$|2i>ie@S<+ZS=!x$7^UuSv;$ssJO$-%; z-mSa)c0Ium?5Dz?@HCwL9XtJI`rCD;x6#AIHfd|8(J94>DlWqlL#Z}&7pYoAo~P6P zx}AozO)+(?>e|vXOUV>rQCKW0OC%H7&};x8%p)vkPJfOmM*i8D;5A{^u~|NLJ|i4Q zylr1#{DARkm(zUv`6dS?zinSE4+|!C*M)So{MT#3?~+jSbz!lM~vdDX~%g{K#09-G;$Y+ezv!W57H zUikUe&wnQ$pCoj|mgp_R9EO>~v7%bBs4O2lpEvI8Yv5+>1^`nAP3i4{OcBbmMl6`v zCKXcNV*yT+0bp94@>caeKc|nlbbBUBC{p@Qg6U<2QhUnty_`PtK|c)x44OoUNSi)ZVdY+G}(g zFRm92qnT)=xS{yudmlX}L1eW7XNm zYk#yl4Fcd~C@Am(9#J}VH;xPpK z(C0%2&M@xAjpsKG+&kcE?YcT_b>WM`dTD*QN4Pc3T1}`kOERCld@_E(_z>3+13$Yo zTTmpZmQ-^Y-06d-FY;f6BCmfT?8pps34h#_zv)`lwGB}l0ASVmRX3mC%$$|!Yw!D7 zvt>{xncX@qA)K}|t|UqXYtA-go2firUAbALkJLKzzv zgY5=m+kaK3xYn;K8$(dNUN6^(Yg-=cbozp7fmS8tQJJc6Z%GULeXp|k5{_3@eUF$ZJF-d(k%I!qAud)eupmC&V0#iQFF<{7dk#{|w`&^XsH_ zZ8_wsvF498GltBNuYZvXrV94o-5;G1ttQk)e6WZ)@ z`XXRYz`2TZQTwB=&%b`6J|zB(}zsYxSz2$Z*78K0syE8)#m}9FZN#y z0OJOX%PGrQ61ZeZ;1a_op6vcrw^Rdwhpor=e}0dnID#M;g2j5rDm03Ao)}?jlKRVE!5$zB?x_^a$>*wQbul2 zM>~%OfPZLy^v3*+QT?NKP2L3nYC@e`o;$*EM1R}%ukXg0fi8iWC7HKg+=}y!qheGe zWHq4%0B@c*9e=fek?$K({iDb=l1*i6by@^LevJ9Cqb#M3rENJFf+@91!_*9uwWZq{ zcev;JWR+%-d_#AEe0L=$*cQRA!Ga>e1JMKWP=BdaF8qCAf7|{k5h+H3NXlZ0P!>@e zL$JH7=XcZ0e1_Pl<(L~4T zL9RgzoMFV_p6lal@7pe9Ib}Iy`=QipUhDK9)Q#k-!czWTBkT0khb=Txw34RHAm3b1C zBw<*>?4h$ASPrlC#|SfqACqz^#ofj|%p=S=naAX1&B`)#_SJ+s#4RMmEkr054tE$% z#i+Ml+**HSeWkdP!{Bs`tEa7JTYruYbaIXSnfMubRiRasH52(wxeK2c4;<>pk(g01&hKu|H=8qxr+n$1lrJSm=xyGxTBK>P9nc& zbQZ*J3AH79%iQ5}Ev|MiC3d&}*N(*2KN9>sCXe-+0{}90E~KXpMsi#aRJv28|94>mBh`)t?kv$g4lDRxW7SfTz zb!tMH7`)kxdr2s?irUs%1VQYX_J(bq0a~3_5Bk?et`EHpp;&mj{C_l`%a7(qBYyk$FIYD25Qpi=qH)Zy(1$*}gD^X>v6Pe)Gsfex zoF&ReL4Goh(tI4pm|>w0eRv09c4C|PL;?UUp?=a(=*b&F@8o^14}JJM!o0-(AFhOd V$k~JKp#T5?07*qoL Date: Thu, 6 Mar 2025 13:01:22 +0000 Subject: [PATCH 22/41] changelog typo --- examples/serve/docs/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/serve/docs/CHANGELOG.md b/examples/serve/docs/CHANGELOG.md index c833149..9f2b321 100644 --- a/examples/serve/docs/CHANGELOG.md +++ b/examples/serve/docs/CHANGELOG.md @@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [0.2.3] - 2025-02-07 +## [0.2.3] - 2025-02-27 ### Changed From d85e398b1c1c58cedc316a8aace4b5e98ab09e87 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 6 Mar 2025 14:23:30 +0000 Subject: [PATCH 23/41] fix registry url etc (#34) Co-authored-by: Tom Pereira --- .github/actions/publish/action.yaml | 2 ++ docs/CHANGELOG.md | 6 ++++++ package.json | 2 +- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/actions/publish/action.yaml b/.github/actions/publish/action.yaml index bb3659c..2106e92 100644 --- a/.github/actions/publish/action.yaml +++ b/.github/actions/publish/action.yaml @@ -21,6 +21,8 @@ runs: - uses: actions/setup-node@v4 with: node-version-file: .nvmrc + registry-url: https://registry.npmjs.org/ + always-auth: true cache: npm - name: Install diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 42e9399..bfcd51b 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -14,6 +14,12 @@ N.B. See changelogs for individual packages, where most change will occur: This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). +## [0.10.4] - 2025-03-06 + +### Fixed + +- Ensured that the registry is explicitly set, to ensure that [`@actions/setup-node`](https://github.com/actions/setup-node) honours the `NODE_AUTH_TOKEN` + ## [0.10.3] - 2025-02-27 ### Fixed diff --git a/package.json b/package.json index a2992c6..540f361 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@asos/web-toggle-point", - "version": "0.10.3", + "version": "0.10.4", "repository": "git@github.com:asos/web-toggle-point.git", "homepage": "https://asos.github.io/web-toggle-point/", "license": "MIT", From 97e7f7a0b1890614a26ecb8f7978b00e46a0eb69 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 6 Mar 2025 15:25:37 +0000 Subject: [PATCH 24/41] undo update to danger, might as well wait for https://github.com/ASOS/web-toggle-point/pull/25 --- docs/CHANGELOG.md | 10 +- package-lock.json | 459 +++++++++++++++++++++++++++++++++++++++++++--- package.json | 2 +- 3 files changed, 437 insertions(+), 34 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 0e42951..0c84522 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -20,16 +20,18 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). - Updated the `CONTRIBUTING.md`: - Clarification regarding changes needing to be committed for the `danger:local` script to be effective. - - Added a `danger:local:staged` command to augment the above - Clarification regarding write access or forking being needed to open a pull request. + +### Changed + +- Modified some playwright screenshots from the "serve" example, false negatives assumed due to subtle change in Linux Chromium in latest Ubuntu? Will need a new issue to make less flaky! - Updated main `README.md`: - Linked to `CONTRIBUTING.md` - Added link to repo discussions, alongside the issues -### Changed +### Added -- Modified some playwright screenshots from the "serve" example, false negatives assumed due to subtle change in Linux Chromium in latest Ubuntu? Will need a new issue to make less flaky! -- Updated the `danger` version + - A `danger:local:staged` command to augment the above fix ## [0.10.4] - 2025-03-06 diff --git a/package-lock.json b/package-lock.json index bfb883b..031baaf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@asos/web-toggle-point", - "version": "0.10.4", + "version": "0.10.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@asos/web-toggle-point", - "version": "0.10.4", + "version": "0.10.5", "license": "MIT", "workspaces": [ "packages/features", @@ -35,7 +35,7 @@ "browserslist-config-asos": "file:./peripheral/browserslist-config-asos", "core-js": "^3.0.0", "cross-env": "^7.0.3", - "danger": "^12.3.3", + "danger": "^11.3.0", "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-jest": "^28.9.0", @@ -2063,43 +2063,54 @@ } }, "node_modules/@gitbeaker/core": { - "version": "38.12.1", - "resolved": "https://registry.npmjs.org/@gitbeaker/core/-/core-38.12.1.tgz", - "integrity": "sha512-8XMVcBIdVAAoxn7JtqmZ2Ee8f+AZLcCPmqEmPFOXY2jPS84y/DERISg/+sbhhb18iRy+ZsZhpWgQ/r3CkYNJOQ==", + "version": "35.8.1", + "resolved": "https://registry.npmjs.org/@gitbeaker/core/-/core-35.8.1.tgz", + "integrity": "sha512-KBrDykVKSmU9Q9Gly8KeHOgdc0lZSa435srECxuO0FGqqBcUQ82hPqUc13YFkkdOI9T1JRA3qSFajg8ds0mZKA==", "dev": true, + "license": "MIT", "dependencies": { - "@gitbeaker/requester-utils": "^38.12.1", - "qs": "^6.11.1", + "@gitbeaker/requester-utils": "^35.8.1", + "form-data": "^4.0.0", + "li": "^1.3.0", + "mime": "^3.0.0", + "query-string": "^7.0.0", "xcase": "^2.0.1" }, "engines": { - "node": ">=18.0.0" + "node": ">=14.2.0" } }, - "node_modules/@gitbeaker/requester-utils": { - "version": "38.12.1", - "resolved": "https://registry.npmjs.org/@gitbeaker/requester-utils/-/requester-utils-38.12.1.tgz", - "integrity": "sha512-Rc/DgngS0YPN+AY1s9UnexKSy4Lh0bkQVAq9p7PRbRpXb33SlTeCg8eg/8+A/mrMcHgYmP0XhH8lkizyA5tBUQ==", + "node_modules/@gitbeaker/node": { + "version": "35.8.1", + "resolved": "https://registry.npmjs.org/@gitbeaker/node/-/node-35.8.1.tgz", + "integrity": "sha512-g6rX853y61qNhzq9cWtxIEoe2KDeFBtXAeWMGWJnc3nz3WRump2pIICvJqw/yobLZqmTNt+ea6w3/n92Mnbn3g==", + "deprecated": "Please use its successor @gitbeaker/rest", "dev": true, + "license": "MIT", "dependencies": { - "qs": "^6.11.1", + "@gitbeaker/core": "^35.8.1", + "@gitbeaker/requester-utils": "^35.8.1", + "delay": "^5.0.0", + "got": "^11.8.3", "xcase": "^2.0.1" }, "engines": { - "node": ">=18.0.0" + "node": ">=14.2.0" } }, - "node_modules/@gitbeaker/rest": { - "version": "38.12.1", - "resolved": "https://registry.npmjs.org/@gitbeaker/rest/-/rest-38.12.1.tgz", - "integrity": "sha512-9KMSDtJ/sIov+5pcH+CAfiJXSiuYgN0KLKQFg0HHWR2DwcjGYkcbmhoZcWsaOWOqq4kihN1l7wX91UoRxxKKTQ==", + "node_modules/@gitbeaker/requester-utils": { + "version": "35.8.1", + "resolved": "https://registry.npmjs.org/@gitbeaker/requester-utils/-/requester-utils-35.8.1.tgz", + "integrity": "sha512-MFzdH+Z6eJaCZA5ruWsyvm6SXRyrQHjYVR6aY8POFraIy7ceIHOprWCs1R+0ydDZ8KtBnd8OTHjlJ0sLtSFJCg==", "dev": true, + "license": "MIT", "dependencies": { - "@gitbeaker/core": "^38.12.1", - "@gitbeaker/requester-utils": "^38.12.1" + "form-data": "^4.0.0", + "qs": "^6.10.1", + "xcase": "^2.0.1" }, "engines": { - "node": ">=18.0.0" + "node": ">=14.2.0" } }, "node_modules/@humanfs/core": { @@ -4406,6 +4417,19 @@ "devOptional": true, "license": "MIT" }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, "node_modules/@sinonjs/commons": { "version": "3.0.1", "devOptional": true, @@ -4463,6 +4487,19 @@ "tslib": "^2.8.0" } }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "dev": true, + "license": "MIT", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@testing-library/dom": { "version": "10.4.0", "dev": true, @@ -4602,6 +4639,19 @@ "@babel/types": "^7.20.7" } }, + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, "node_modules/@types/concat-stream": { "version": "2.0.3", "dev": true, @@ -4678,6 +4728,13 @@ "@types/unist": "*" } }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/is-empty": { "version": "1.2.3", "dev": true, @@ -4722,6 +4779,16 @@ "version": "0.0.29", "license": "MIT" }, + "node_modules/@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/linkify-it": { "version": "5.0.0", "dev": true, @@ -4792,6 +4859,16 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/responselike": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", + "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/stack-utils": { "version": "2.0.3", "devOptional": true, @@ -6118,6 +6195,35 @@ "node": ">= 0.8" } }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", + "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "dev": true, + "license": "MIT", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/call-bind": { "version": "1.0.8", "license": "MIT", @@ -6602,6 +6708,19 @@ "node": ">=0.10.0" } }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/co": { "version": "4.6.0", "devOptional": true, @@ -7031,12 +7150,14 @@ "license": "BSD-2-Clause" }, "node_modules/danger": { - "version": "12.3.3", - "resolved": "https://registry.npmjs.org/danger/-/danger-12.3.3.tgz", - "integrity": "sha512-nZKzpgXN21rr4dwa6bFhM7G2JEa79dZRJiT3RVRSyi4yk1/hgZ2f8HDGoa7tMladTmu8WjJFyE3LpBIihh+aDw==", + "version": "11.3.1", + "resolved": "https://registry.npmjs.org/danger/-/danger-11.3.1.tgz", + "integrity": "sha512-+slkGnbf0czY7g4LSuYpYkKJgFrb9YIXFJvV5JAuLLF39CXLlUw0iebgeL3ASK1t6RDb8xe+Rk2F5ilh2Hdv2w==", "dev": true, + "license": "MIT", "dependencies": { - "@gitbeaker/rest": "^38.0.0", + "@gitbeaker/core": "^35.8.1", + "@gitbeaker/node": "^35.8.1", "@octokit/rest": "^18.12.0", "async-retry": "1.2.3", "chalk": "^2.3.0", @@ -7048,7 +7169,7 @@ "http-proxy-agent": "^5.0.0", "https-proxy-agent": "^5.0.1", "hyperlinker": "^1.0.0", - "json5": "^2.2.3", + "json5": "^2.1.0", "jsonpointer": "^5.0.0", "jsonwebtoken": "^9.0.0", "lodash.find": "^4.6.0", @@ -7086,7 +7207,7 @@ "danger-runner": "distribution/commands/danger-runner.js" }, "engines": { - "node": ">=18" + "node": ">=14.13.1" } }, "node_modules/danger/node_modules/ansi-styles": { @@ -7320,6 +7441,45 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/dedent": { "version": "1.5.3", "devOptional": true, @@ -7352,6 +7512,16 @@ "node": ">=0.10.0" } }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, "node_modules/define-data-property": { "version": "1.1.4", "license": "MIT", @@ -7382,6 +7552,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/delay": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz", + "integrity": "sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/delayed-stream": { "version": "1.0.0", "dev": true, @@ -7616,6 +7799,16 @@ "node": ">= 0.8" } }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, "node_modules/enhanced-resolve": { "version": "5.18.0", "devOptional": true, @@ -9292,6 +9485,16 @@ "node": ">=8" } }, + "node_modules/filter-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz", + "integrity": "sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/finalhandler": { "version": "1.3.1", "license": "MIT", @@ -9579,6 +9782,22 @@ "node": ">=4" } }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/get-symbol-description": { "version": "1.1.0", "license": "MIT", @@ -9712,6 +9931,32 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, "node_modules/graceful-fs": { "version": "4.2.11", "devOptional": true, @@ -9980,6 +10225,13 @@ "entities": "^4.5.0" } }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true, + "license": "BSD-2-Clause" + }, "node_modules/http-errors": { "version": "2.0.0", "license": "MIT", @@ -10011,6 +10263,20 @@ "version": "2.3.0", "license": "MIT" }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, "node_modules/https-proxy-agent": { "version": "5.0.1", "dev": true, @@ -13522,6 +13788,13 @@ "node": ">= 0.8.0" } }, + "node_modules/li": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/li/-/li-1.3.0.tgz", + "integrity": "sha512-z34TU6GlMram52Tss5mt1m//ifRIpKH5Dqm7yUVOdHI+BQCs9qGPHFaCUTIzsWX7edN30aa2WrPwR7IO10FHaw==", + "dev": true, + "license": "MIT" + }, "node_modules/lilconfig": { "version": "3.1.3", "dev": true, @@ -13822,6 +14095,16 @@ "loose-envify": "cli.js" } }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/lru-cache": { "version": "5.1.1", "license": "ISC", @@ -15009,6 +15292,19 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/mime-db": { "version": "1.52.0", "license": "MIT", @@ -15048,6 +15344,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/min-indent": { "version": "1.0.1", "dev": true, @@ -15337,6 +15643,19 @@ "node": ">=0.10.0" } }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/npm-install-checks": { "version": "6.3.0", "dev": true, @@ -15620,6 +15939,16 @@ "dev": true, "license": "BSD-3-Clause" }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/p-limit": { "version": "2.3.0", "devOptional": true, @@ -16321,6 +16650,17 @@ "url": "https://github.com/sponsors/lupomontero" } }, + "node_modules/pump": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", + "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==", + "dev": true, + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, "node_modules/punycode": { "version": "2.3.1", "license": "MIT", @@ -16356,6 +16696,7 @@ "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "side-channel": "^1.1.0" }, @@ -16366,6 +16707,25 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/query-string": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-7.1.3.tgz", + "integrity": "sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==", + "dev": true, + "license": "MIT", + "dependencies": { + "decode-uri-component": "^0.2.2", + "filter-obj": "^1.1.0", + "split-on-first": "^1.0.0", + "strict-uri-encode": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/querystringify": { "version": "2.2.0", "dev": true, @@ -16999,6 +17359,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", + "dev": true, + "license": "MIT" + }, "node_modules/resolve-cwd": { "version": "3.0.0", "devOptional": true, @@ -17034,6 +17401,19 @@ "node": ">=10" } }, + "node_modules/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "dev": true, + "license": "MIT", + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/restore-cursor": { "version": "5.1.0", "dev": true, @@ -17956,6 +18336,16 @@ "dev": true, "license": "CC0-1.0" }, + "node_modules/split-on-first": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", + "integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/sprintf-js": { "version": "1.0.3", "devOptional": true, @@ -17998,6 +18388,16 @@ "node": ">=10.0.0" } }, + "node_modules/strict-uri-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", + "integrity": "sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/string_decoder": { "version": "1.3.0", "dev": true, @@ -19873,7 +20273,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/xcase/-/xcase-2.0.1.tgz", "integrity": "sha512-UmFXIPU+9Eg3E9m/728Bii0lAIuoc+6nbrNUKaRPJOFp91ih44qqGlWtxMB6kXFrRD6po+86ksHM5XHCfk6iPw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/xml-name-validator": { "version": "4.0.0", diff --git a/package.json b/package.json index c772f49..82d302a 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "browserslist-config-asos": "file:./peripheral/browserslist-config-asos", "core-js": "^3.0.0", "cross-env": "^7.0.3", - "danger": "^12.3.3", + "danger": "^11.3.0", "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-jest": "^28.9.0", From 39f2e56556316459c501296bc1b8b815a12f2a06 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 6 Mar 2025 15:29:26 +0000 Subject: [PATCH 25/41] consistent full-stops --- docs/CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 0c84522..0c36775 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -19,8 +19,8 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Fixed - Updated the `CONTRIBUTING.md`: - - Clarification regarding changes needing to be committed for the `danger:local` script to be effective. - - Clarification regarding write access or forking being needed to open a pull request. + - Clarification regarding changes needing to be committed for the `danger:local` script to be effective + - Clarification regarding write access or forking being needed to open a pull request ### Changed From 093bd57f0426507a920a4900571ecdb18874bb28 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 6 Mar 2025 15:34:20 +0000 Subject: [PATCH 26/41] remove note re: playwright - that's now fixed --- docs/CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 0c36775..ab02722 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -24,7 +24,6 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Changed -- Modified some playwright screenshots from the "serve" example, false negatives assumed due to subtle change in Linux Chromium in latest Ubuntu? Will need a new issue to make less flaky! - Updated main `README.md`: - Linked to `CONTRIBUTING.md` - Added link to repo discussions, alongside the issues From 16b6afe647f48ba10f0ed3e0a8437ba0862a1b66 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 6 Mar 2025 15:48:50 +0000 Subject: [PATCH 27/41] homepage in package.json and README in npm package --- package-lock.json | 6 +++--- packages/features/.npmignore | 1 + packages/features/docs/CHANGELOG.md | 12 +++++++++++- packages/features/package.json | 3 ++- packages/react-pointcuts/.npmignore | 1 + packages/react-pointcuts/docs/CHANGELOG.md | 10 ++++++++++ packages/react-pointcuts/package.json | 3 ++- packages/ssr/.npmignore | 1 + packages/ssr/docs/CHANGELOG.md | 10 ++++++++++ packages/ssr/package.json | 3 ++- packages/webpack/.npmignore | 1 + packages/webpack/docs/CHANGELOG.md | 8 ++++++++ packages/webpack/package.json | 1 + 13 files changed, 53 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index 031baaf..6bc0882 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20423,7 +20423,7 @@ }, "packages/features": { "name": "@asos/web-toggle-point-features", - "version": "0.3.2", + "version": "0.3.3", "license": "MIT", "dependencies": { "@babel/runtime": "^7.26.0" @@ -20480,7 +20480,7 @@ }, "packages/react-pointcuts": { "name": "@asos/web-toggle-point-react-pointcuts", - "version": "0.4.3", + "version": "0.4.4", "license": "MIT", "dependencies": { "@babel/runtime": "^7.26.0" @@ -20518,7 +20518,7 @@ }, "packages/ssr": { "name": "@asos/web-toggle-point-ssr", - "version": "0.2.2", + "version": "0.2.3", "license": "MIT", "dependencies": { "@babel/runtime": "^7.26.0", diff --git a/packages/features/.npmignore b/packages/features/.npmignore index ea00334..4238c07 100644 --- a/packages/features/.npmignore +++ b/packages/features/.npmignore @@ -1,4 +1,5 @@ * !lib/* !docs/CHANGELOG.md +!docs/README.md !package.json diff --git a/packages/features/docs/CHANGELOG.md b/packages/features/docs/CHANGELOG.md index c7b7a37..2eadffe 100644 --- a/packages/features/docs/CHANGELOG.md +++ b/packages/features/docs/CHANGELOG.md @@ -5,11 +5,21 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.3.3] - 2025-03-06 + +### Changed + +- added `package.json` [homepage](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#homepage), for clarity once on https://www.npmjs.com/ + +### Fixed + +- include the `README.md` in the NPM package + ## [0.3.2] - 2025-03-03 ### Changed -- Added `package.json` [repository](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#repository), [bugs](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bugs), and [`directories/doc`](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#directories) fields, for clarity once on NPM +- added `package.json` [repository](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#repository), [bugs](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bugs), and [`directories/doc`](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#directories) fields, for clarity once on NPM ## [0.3.1] - 2024-12-26 diff --git a/packages/features/package.json b/packages/features/package.json index f5e2477..74e0ea1 100644 --- a/packages/features/package.json +++ b/packages/features/package.json @@ -1,7 +1,7 @@ { "name": "@asos/web-toggle-point-features", "description": "toggle point features code", - "version": "0.3.2", + "version": "0.3.3", "license": "MIT", "type": "module", "main": "./lib/main.es5.cjs", @@ -24,6 +24,7 @@ "bugs": { "url": "https://github.com/asos/web-toggle-point/issues" }, + "homepage": "https://github.com/asos/web-toggle-point/tree/main/packages/features", "directories": { "doc": "docs" }, diff --git a/packages/react-pointcuts/.npmignore b/packages/react-pointcuts/.npmignore index ea00334..4238c07 100644 --- a/packages/react-pointcuts/.npmignore +++ b/packages/react-pointcuts/.npmignore @@ -1,4 +1,5 @@ * !lib/* !docs/CHANGELOG.md +!docs/README.md !package.json diff --git a/packages/react-pointcuts/docs/CHANGELOG.md b/packages/react-pointcuts/docs/CHANGELOG.md index d8cb61a..ff716c7 100644 --- a/packages/react-pointcuts/docs/CHANGELOG.md +++ b/packages/react-pointcuts/docs/CHANGELOG.md @@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.4.4] - 2025-03-06 + +### Changed + +- added `package.json` [homepage](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#homepage), for clarity once on https://www.npmjs.com/ + +### Fixed + +- include the `README.md` in the NPM package + ## [0.4.3] - 2025-03-03 ### Changed diff --git a/packages/react-pointcuts/package.json b/packages/react-pointcuts/package.json index f6ed552..d41e39f 100644 --- a/packages/react-pointcuts/package.json +++ b/packages/react-pointcuts/package.json @@ -1,7 +1,7 @@ { "name": "@asos/web-toggle-point-react-pointcuts", "description": "react pointcut code", - "version": "0.4.3", + "version": "0.4.4", "license": "MIT", "type": "module", "main": "./lib/main.es5.cjs", @@ -23,6 +23,7 @@ "bugs": { "url": "https://github.com/asos/web-toggle-point/issues" }, + "homepage": "https://github.com/asos/web-toggle-point/tree/main/packages/react-pointcuts", "directories": { "doc": "docs" }, diff --git a/packages/ssr/.npmignore b/packages/ssr/.npmignore index ea00334..4238c07 100644 --- a/packages/ssr/.npmignore +++ b/packages/ssr/.npmignore @@ -1,4 +1,5 @@ * !lib/* !docs/CHANGELOG.md +!docs/README.md !package.json diff --git a/packages/ssr/docs/CHANGELOG.md b/packages/ssr/docs/CHANGELOG.md index 8bbdb26..aa2ef79 100644 --- a/packages/ssr/docs/CHANGELOG.md +++ b/packages/ssr/docs/CHANGELOG.md @@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.2.3] - 2025-03-06 + +### Changed + +- added `package.json` [homepage](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#homepage), for clarity once on https://www.npmjs.com/ + +### Fixed + +- include the `README.md` in the NPM package + ## [0.2.2] - 2025-03-03 ### Changed diff --git a/packages/ssr/package.json b/packages/ssr/package.json index 2656ae1..dcdc958 100644 --- a/packages/ssr/package.json +++ b/packages/ssr/package.json @@ -1,7 +1,7 @@ { "name": "@asos/web-toggle-point-ssr", "description": "toggle point server side rendering code", - "version": "0.2.2", + "version": "0.2.3", "license": "MIT", "type": "module", "main": "./lib/main.es5.cjs", @@ -23,6 +23,7 @@ "bugs": { "url": "https://github.com/asos/web-toggle-point/issues" }, + "homepage": "https://github.com/asos/web-toggle-point/tree/main/packages/ssr", "directories": { "doc": "docs" }, diff --git a/packages/webpack/.npmignore b/packages/webpack/.npmignore index ea00334..4238c07 100644 --- a/packages/webpack/.npmignore +++ b/packages/webpack/.npmignore @@ -1,4 +1,5 @@ * !lib/* !docs/CHANGELOG.md +!docs/README.md !package.json diff --git a/packages/webpack/docs/CHANGELOG.md b/packages/webpack/docs/CHANGELOG.md index 20abfa4..6a69f8c 100644 --- a/packages/webpack/docs/CHANGELOG.md +++ b/packages/webpack/docs/CHANGELOG.md @@ -7,10 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [0.7.5] - 2025-03-06 +### Changed + +- added `package.json` [homepage](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#homepage), for clarity once on https://www.npmjs.com/ + ### Fixed - fixed typo in JSDoc comment +### Fixed + +- include the `README.md` in the NPM package + ## [0.7.4] - 2025-03-03 ### Changed diff --git a/packages/webpack/package.json b/packages/webpack/package.json index d90999d..a2fce31 100644 --- a/packages/webpack/package.json +++ b/packages/webpack/package.json @@ -20,6 +20,7 @@ "bugs": { "url": "https://github.com/asos/web-toggle-point/issues" }, + "homepage": "https://github.com/asos/web-toggle-point/tree/main/packages/webpack", "directories": { "doc": "docs" }, From 63f9c72d90a045bb69c2d34c210f2c47416b20cb Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 6 Mar 2025 16:05:39 +0000 Subject: [PATCH 28/41] fixup pr template --- .github/pull_request_template.md | 2 +- docs/CHANGELOG.md | 13 +++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index ee90a14..ebbf74e 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,6 +1,6 @@ # Issue -[_ISSUE_ID_](https://github.com/ASOS/web-toggle-point/issues/_ISSUE_ID_) +resolves #_ISSUE_ID_ ## Details diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index ab02722..82f17c8 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -18,25 +18,26 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Fixed -- Updated the `CONTRIBUTING.md`: - - Clarification regarding changes needing to be committed for the `danger:local` script to be effective - - Clarification regarding write access or forking being needed to open a pull request +- updated the `CONTRIBUTING.md`: + - clarification regarding changes needing to be committed for the `danger:local` script to be effective + - clarification regarding write access or forking being needed to open a pull request ### Changed -- Updated main `README.md`: +- updated main `README.md`: - Linked to `CONTRIBUTING.md` - Added link to repo discussions, alongside the issues +- updated `pull_request_template.md` to ensure "resolves #issue" is prompted, to make sure linked issues are closed automatically with PR merges ### Added - - A `danger:local:staged` command to augment the above fix + - A `danger:local:staged` command to augment the above danger fix ## [0.10.4] - 2025-03-06 ### Fixed -- Ensured that the registry is explicitly set, to ensure that [`@actions/setup-node`](https://github.com/actions/setup-node) honours the `NODE_AUTH_TOKEN` +- ensured that the registry is explicitly set, to ensure that [`@actions/setup-node`](https://github.com/actions/setup-node) honours the `NODE_AUTH_TOKEN` ## [0.10.3] - 2025-02-27 From 3e54e597f2ff04585f09ce9aa6be77053cd54501 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 6 Mar 2025 18:51:40 +0000 Subject: [PATCH 29/41] consistent capitalisation --- docs/CHANGELOG.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 82f17c8..2353f53 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -25,13 +25,13 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). ### Changed - updated main `README.md`: - - Linked to `CONTRIBUTING.md` - - Added link to repo discussions, alongside the issues + - linked to `CONTRIBUTING.md` + - added link to repo discussions, alongside the issues - updated `pull_request_template.md` to ensure "resolves #issue" is prompted, to make sure linked issues are closed automatically with PR merges ### Added - - A `danger:local:staged` command to augment the above danger fix + - a `danger:local:staged` command to augment the above danger fix ## [0.10.4] - 2025-03-06 From f442486d2e06125d03a8fa893608dece015cab49 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 6 Mar 2025 18:53:39 +0000 Subject: [PATCH 30/41] remove dupe changelog title --- packages/webpack/docs/CHANGELOG.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/packages/webpack/docs/CHANGELOG.md b/packages/webpack/docs/CHANGELOG.md index 6a69f8c..cd164cb 100644 --- a/packages/webpack/docs/CHANGELOG.md +++ b/packages/webpack/docs/CHANGELOG.md @@ -14,9 +14,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - fixed typo in JSDoc comment - -### Fixed - - include the `README.md` in the NPM package ## [0.7.4] - 2025-03-03 From 191985ad1c5a7b28000458663596692806ba0d52 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Mar 2025 17:09:18 +0000 Subject: [PATCH 31/41] move react 17 note --- packages/features/docs/CHANGELOG.md | 1 + packages/features/docs/README.md | 25 +++++++++++-------------- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/packages/features/docs/CHANGELOG.md b/packages/features/docs/CHANGELOG.md index 2eadffe..c29fe2e 100644 --- a/packages/features/docs/CHANGELOG.md +++ b/packages/features/docs/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - added `package.json` [homepage](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#homepage), for clarity once on https://www.npmjs.com/ +- move the React 17 note to the end, in the `README.md`, since only relevant to the last two store factories ### Fixed diff --git a/packages/features/docs/README.md b/packages/features/docs/README.md index fd7cdef..e576cb2 100644 --- a/packages/features/docs/README.md +++ b/packages/features/docs/README.md @@ -10,18 +10,6 @@ A store should be chosen based on the requirement for global or partitioned stat See: [JSDoc output](https://asos.github.io/web-toggle-point/module-web-toggle-point-features.html) -> [!WARNING] -> ### Use with React 17 -> The package should work with React 17 and above, but due to [a bug](https://github.com/facebook/react/issues/20235) that they are not back-filling, the use of `"type": "module"` in the package means webpack will be unable to resolve the extensionless import. -> To fix, either upgrade to React 18+ or add the following resolve configuration to the webpack config: -> ```js -> resolve: { -> alias: { -> "react/jsx-runtime": "react/jsx-runtime.js" -> } -> } -> ``` - ## Exports The package contains the following exports: @@ -106,5 +94,14 @@ It accepts the following parameters: - a method to log warnings, should the serialized json somehow become malformed when hydrating the client application - this was designed to allow modifications of markup in systems upstream of the origin, but downstream of the browser, with a view to ensure adequate telemetry is in place. - - +> [!WARNING] +> ### Use with React 17 +> The react-specific stores should work with React 17 and above, but due to [a bug](https://github.com/facebook/react/issues/20235) that they are not back-filling, the use of `"type": "module"` in the package means webpack will be unable to resolve the extensionless import. +> To fix, either upgrade to React 18+ or add the following resolve configuration to the webpack config: +> ```js +> resolve: { +> alias: { +> "react/jsx-runtime": "react/jsx-runtime.js" +> } +> } +> ``` \ No newline at end of file From a3fa0f838d35242a3668a19a08875f6db73a888e Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Mar 2025 19:34:23 +0000 Subject: [PATCH 32/41] typo --- packages/webpack/docs/CHANGELOG.md | 1 + packages/webpack/docs/README.md | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/webpack/docs/CHANGELOG.md b/packages/webpack/docs/CHANGELOG.md index cd164cb..7a133ee 100644 --- a/packages/webpack/docs/CHANGELOG.md +++ b/packages/webpack/docs/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - fixed typo in JSDoc comment +- fixed typo in `README.md` - include the `README.md` in the NPM package ## [0.7.4] - 2025-03-03 diff --git a/packages/webpack/docs/README.md b/packages/webpack/docs/README.md index f4c7b1d..c5bbd98 100644 --- a/packages/webpack/docs/README.md +++ b/packages/webpack/docs/README.md @@ -53,7 +53,7 @@ interface TogglePointInjectionOptions { > [!IMPORTANT] > N.B. when setting up multiple pointcuts, the path matched by the [globs](https://en.wikipedia.org/wiki/Glob_(programming)) must be mutually exclusive. Otherwise, the pointcut defined earlier in the array "wins", and a warning is emitted into the compilation indicating that the subsequent cuts are neutered for those matching files. > -> Also, due to the way Webpack works, there should only be a sinlge `TogglePointInjection` plugin per webpack configuration, so utilize the point cuts array, rather than having separate plugin instances per point cut. +> Also, due to the way Webpack works, there should only be a single `TogglePointInjection` plugin per webpack configuration, so utilize the point cuts array, rather than having separate plugin instances per point cut. #### _`name`_ From 49e6d031320dad76686cae8fe708342bbcd20696 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 7 Mar 2025 19:37:23 +0000 Subject: [PATCH 33/41] clarify convention based approach --- docs/CHANGELOG.md | 1 + docs/README.md | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 2353f53..0a4881a 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -27,6 +27,7 @@ This log covers the [monorepo](https://en.wikipedia.org/wiki/Monorepo). - updated main `README.md`: - linked to `CONTRIBUTING.md` - added link to repo discussions, alongside the issues + - clarified the convention-based approach to advice - updated `pull_request_template.md` to ensure "resolves #issue" is prompted, to make sure linked issues are closed automatically with PR merges ### Added diff --git a/docs/README.md b/docs/README.md index 0371fe0..a59e5f2 100644 --- a/docs/README.md +++ b/docs/README.md @@ -31,11 +31,11 @@ A library providing a means to toggle or branch web application code. ### 🐬 Purpose -This library provides a means to toggle or branch application code. +This library provides a means to toggle or branch application code at runtime, whilst mitigating the carrying costs of doing so. It aims to enable low friction feature toggling [aspect/advice](https://en.wikipedia.org/wiki/Advice_(programming))[^1] in a codebase. -It suggests a convention-based approach to storing variant code, aiming to mitigate [boilerplate](https://en.wikipedia.org/wiki/Boilerplate_code) whilst developing new features, and reduce the friction of accepting or rejecting toggled variations, when appropriate. +It suggests a convention-based approach to storing variant code, aiming to mitigate [boilerplate](https://en.wikipedia.org/wiki/Boilerplate_code) whilst developing new features, and reduce the friction of accepting or rejecting toggled variations, if and when the time arises. Originally developed for experiment toggles / flags, it acts only as a means to implement a toggle point, separating any toggle router concern, so is agnostic of the type of toggle or flag. From 464da4d39aa1ad189b6c4597e02a1b233099f628 Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Sun, 16 Mar 2025 15:40:08 +0000 Subject: [PATCH 34/41] fixup jsdoc further --- packages/webpack/src/plugins/togglePointInjection/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/webpack/src/plugins/togglePointInjection/index.js b/packages/webpack/src/plugins/togglePointInjection/index.js index 2611dd0..4303cbc 100644 --- a/packages/webpack/src/plugins/togglePointInjection/index.js +++ b/packages/webpack/src/plugins/togglePointInjection/index.js @@ -19,7 +19,7 @@ class TogglePointInjection { * @param {object[]} options.pointCuts toggle point point cut configuration, with target toggle point code as advice. The first matching point cut will be used * @param {string} options.pointCuts[].name name to describe the nature of the point cut, for clarity in logs and dev tools etc. * @param {string} options.pointCuts[].togglePointModule path, from root of the compilation, of where the toggle point sits. Or a resolvable node_module. - * @param {object} [options.pointCuts[].variantGlob=.\/**\/__variants__/*\/*\/!(*.test).{js,jsx,ts,tsx}] {@link https://en.wikipedia.org/wiki/Glob_(programming)|Globs} to identified variant modules. The plugin uses {@link https://github.com/mrmlnc/fast-glob|fast-glob} under the hood, so supports any glob that it does. + * @param {RegExp} [options.pointCuts[].variantGlob=.\/**\/__variants__/*\/*\/!(*.test).{js,jsx,ts,tsx}] {@link https://en.wikipedia.org/wiki/Glob_(programming)|Globs} to identified variant modules. The plugin uses {@link https://github.com/mrmlnc/fast-glob|fast-glob} under the hood, so supports any glob that it does. * @param {function} [options.pointCuts[].joinPointResolver=(variantPath) => path.posix.resolve(variantPath, "../../../..", path.basename(variantPath))] A function that takes the path to a variant module and returns a join point / base module. N.B. This is executed at build-time, so cannot use run-time context. It should use posix path segments, so on Windows be sure to use path.posix.resolve. * @param {string} [options.pointCuts[].toggleHandler] Path to a toggle handler that unpicks a {@link https://webpack.js.org/api/module-methods/#requirecontext|require.context} containing potential variants, passing that plus a joint point module to a toggle point function. If not provided, the plugin will use a default handler that processes folder names into a tree held in a Map. Leaf nodes of the tree are the variant modules. * @param {function} [options.webpackNormalModule] A function that returns the Webpack NormalModule class. This is required for Next.js, as it does not expose the NormalModule class directly From 56d1508035cc7d209af0e0642b600cc5308b8a0f Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Sun, 16 Mar 2025 16:14:53 +0000 Subject: [PATCH 35/41] Revert "fixup jsdoc further" This reverts commit d610686e2e1cee52776cd33c14b05d683c4e986e. --- packages/webpack/src/plugins/togglePointInjection/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/webpack/src/plugins/togglePointInjection/index.js b/packages/webpack/src/plugins/togglePointInjection/index.js index 4303cbc..2611dd0 100644 --- a/packages/webpack/src/plugins/togglePointInjection/index.js +++ b/packages/webpack/src/plugins/togglePointInjection/index.js @@ -19,7 +19,7 @@ class TogglePointInjection { * @param {object[]} options.pointCuts toggle point point cut configuration, with target toggle point code as advice. The first matching point cut will be used * @param {string} options.pointCuts[].name name to describe the nature of the point cut, for clarity in logs and dev tools etc. * @param {string} options.pointCuts[].togglePointModule path, from root of the compilation, of where the toggle point sits. Or a resolvable node_module. - * @param {RegExp} [options.pointCuts[].variantGlob=.\/**\/__variants__/*\/*\/!(*.test).{js,jsx,ts,tsx}] {@link https://en.wikipedia.org/wiki/Glob_(programming)|Globs} to identified variant modules. The plugin uses {@link https://github.com/mrmlnc/fast-glob|fast-glob} under the hood, so supports any glob that it does. + * @param {object} [options.pointCuts[].variantGlob=.\/**\/__variants__/*\/*\/!(*.test).{js,jsx,ts,tsx}] {@link https://en.wikipedia.org/wiki/Glob_(programming)|Globs} to identified variant modules. The plugin uses {@link https://github.com/mrmlnc/fast-glob|fast-glob} under the hood, so supports any glob that it does. * @param {function} [options.pointCuts[].joinPointResolver=(variantPath) => path.posix.resolve(variantPath, "../../../..", path.basename(variantPath))] A function that takes the path to a variant module and returns a join point / base module. N.B. This is executed at build-time, so cannot use run-time context. It should use posix path segments, so on Windows be sure to use path.posix.resolve. * @param {string} [options.pointCuts[].toggleHandler] Path to a toggle handler that unpicks a {@link https://webpack.js.org/api/module-methods/#requirecontext|require.context} containing potential variants, passing that plus a joint point module to a toggle point function. If not provided, the plugin will use a default handler that processes folder names into a tree held in a Map. Leaf nodes of the tree are the variant modules. * @param {function} [options.webpackNormalModule] A function that returns the Webpack NormalModule class. This is required for Next.js, as it does not expose the NormalModule class directly From e1a1f4cebb2d80bd12a3f5828bbeca493130513e Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Sun, 16 Mar 2025 16:15:42 +0000 Subject: [PATCH 36/41] string, not regexp! --- packages/webpack/src/plugins/togglePointInjection/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/webpack/src/plugins/togglePointInjection/index.js b/packages/webpack/src/plugins/togglePointInjection/index.js index 2611dd0..9d4005d 100644 --- a/packages/webpack/src/plugins/togglePointInjection/index.js +++ b/packages/webpack/src/plugins/togglePointInjection/index.js @@ -19,7 +19,7 @@ class TogglePointInjection { * @param {object[]} options.pointCuts toggle point point cut configuration, with target toggle point code as advice. The first matching point cut will be used * @param {string} options.pointCuts[].name name to describe the nature of the point cut, for clarity in logs and dev tools etc. * @param {string} options.pointCuts[].togglePointModule path, from root of the compilation, of where the toggle point sits. Or a resolvable node_module. - * @param {object} [options.pointCuts[].variantGlob=.\/**\/__variants__/*\/*\/!(*.test).{js,jsx,ts,tsx}] {@link https://en.wikipedia.org/wiki/Glob_(programming)|Globs} to identified variant modules. The plugin uses {@link https://github.com/mrmlnc/fast-glob|fast-glob} under the hood, so supports any glob that it does. + * @param {string} [options.pointCuts[].variantGlob='.\/**\/__variants__/*\/*\/!(*.test).{js,jsx,ts,tsx}'] {@link https://en.wikipedia.org/wiki/Glob_(programming)|Globs} to identified variant modules. The plugin uses {@link https://github.com/mrmlnc/fast-glob|fast-glob} under the hood, so supports any glob that it does. * @param {function} [options.pointCuts[].joinPointResolver=(variantPath) => path.posix.resolve(variantPath, "../../../..", path.basename(variantPath))] A function that takes the path to a variant module and returns a join point / base module. N.B. This is executed at build-time, so cannot use run-time context. It should use posix path segments, so on Windows be sure to use path.posix.resolve. * @param {string} [options.pointCuts[].toggleHandler] Path to a toggle handler that unpicks a {@link https://webpack.js.org/api/module-methods/#requirecontext|require.context} containing potential variants, passing that plus a joint point module to a toggle point function. If not provided, the plugin will use a default handler that processes folder names into a tree held in a Map. Leaf nodes of the tree are the variant modules. * @param {function} [options.webpackNormalModule] A function that returns the Webpack NormalModule class. This is required for Next.js, as it does not expose the NormalModule class directly From 1735f6759a7fdbab3fd6cd688f78693bdfd99c4e Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Sun, 16 Mar 2025 16:18:59 +0000 Subject: [PATCH 37/41] clarify jsdoc, both pointCuts should use a trigger folder --- packages/webpack/src/plugins/togglePointInjection/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/webpack/src/plugins/togglePointInjection/index.js b/packages/webpack/src/plugins/togglePointInjection/index.js index 9d4005d..ae58fea 100644 --- a/packages/webpack/src/plugins/togglePointInjection/index.js +++ b/packages/webpack/src/plugins/togglePointInjection/index.js @@ -33,7 +33,7 @@ class TogglePointInjection { * }, * { * togglePointModule: "/withTogglePoint", - * variantGlob: "./**\/!(use*|*.test).{ts,tsx}" + * variantGlob: "./**\/__variants__/*\/*\/!(use*|*.test).{ts,tsx}" * } * ] * }); From a36bc3094f45fc5742b7facd12b43611584f399e Mon Sep 17 00:00:00 2001 From: Tom Pereira <10725179+TomStrepsil@users.noreply.github.com> Date: Sun, 16 Mar 2025 16:20:44 +0000 Subject: [PATCH 38/41] singular "glob" in jsdoc --- packages/webpack/src/plugins/togglePointInjection/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/webpack/src/plugins/togglePointInjection/index.js b/packages/webpack/src/plugins/togglePointInjection/index.js index ae58fea..2fa3310 100644 --- a/packages/webpack/src/plugins/togglePointInjection/index.js +++ b/packages/webpack/src/plugins/togglePointInjection/index.js @@ -19,7 +19,7 @@ class TogglePointInjection { * @param {object[]} options.pointCuts toggle point point cut configuration, with target toggle point code as advice. The first matching point cut will be used * @param {string} options.pointCuts[].name name to describe the nature of the point cut, for clarity in logs and dev tools etc. * @param {string} options.pointCuts[].togglePointModule path, from root of the compilation, of where the toggle point sits. Or a resolvable node_module. - * @param {string} [options.pointCuts[].variantGlob='.\/**\/__variants__/*\/*\/!(*.test).{js,jsx,ts,tsx}'] {@link https://en.wikipedia.org/wiki/Glob_(programming)|Globs} to identified variant modules. The plugin uses {@link https://github.com/mrmlnc/fast-glob|fast-glob} under the hood, so supports any glob that it does. + * @param {string} [options.pointCuts[].variantGlob='.\/**\/__variants__/*\/*\/!(*.test).{js,jsx,ts,tsx}'] {@link https://en.wikipedia.org/wiki/Glob_(programming)|Glob} to identified variant modules. The plugin uses {@link https://github.com/mrmlnc/fast-glob|fast-glob} under the hood, so supports any glob that it does. * @param {function} [options.pointCuts[].joinPointResolver=(variantPath) => path.posix.resolve(variantPath, "../../../..", path.basename(variantPath))] A function that takes the path to a variant module and returns a join point / base module. N.B. This is executed at build-time, so cannot use run-time context. It should use posix path segments, so on Windows be sure to use path.posix.resolve. * @param {string} [options.pointCuts[].toggleHandler] Path to a toggle handler that unpicks a {@link https://webpack.js.org/api/module-methods/#requirecontext|require.context} containing potential variants, passing that plus a joint point module to a toggle point function. If not provided, the plugin will use a default handler that processes folder names into a tree held in a Map. Leaf nodes of the tree are the variant modules. * @param {function} [options.webpackNormalModule] A function that returns the Webpack NormalModule class. This is required for Next.js, as it does not expose the NormalModule class directly From 3af5b458d992c0a7432317c876eb163bbe1308d1 Mon Sep 17 00:00:00 2001 From: TomStrepsil <10725179+TomStrepsil@users.noreply.github.com> Date: Wed, 16 Apr 2025 10:34:11 +0200 Subject: [PATCH 39/41] clarify react 17 react-dom/server alias --- packages/features/docs/CHANGELOG.md | 2 +- packages/features/docs/README.md | 3 ++- packages/react-pointcuts/docs/CHANGELOG.md | 1 + packages/react-pointcuts/docs/README.md | 3 ++- packages/ssr/docs/CHANGELOG.md | 1 + packages/ssr/docs/README.md | 3 ++- 6 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/features/docs/CHANGELOG.md b/packages/features/docs/CHANGELOG.md index c29fe2e..0f7b32b 100644 --- a/packages/features/docs/CHANGELOG.md +++ b/packages/features/docs/CHANGELOG.md @@ -10,7 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - added `package.json` [homepage](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#homepage), for clarity once on https://www.npmjs.com/ -- move the React 17 note to the end, in the `README.md`, since only relevant to the last two store factories +- move the React 17 note to the end, in the `README.md`, since only relevant to the last two store factories. Add companion note regarding `react-dom/server`. ### Fixed diff --git a/packages/features/docs/README.md b/packages/features/docs/README.md index e576cb2..4290324 100644 --- a/packages/features/docs/README.md +++ b/packages/features/docs/README.md @@ -101,7 +101,8 @@ It accepts the following parameters: > ```js > resolve: { > alias: { -> "react/jsx-runtime": "react/jsx-runtime.js" +> "react/jsx-runtime": "react/jsx-runtime.js", +> "react-dom/server": "react-dom/server.js", > } > } > ``` \ No newline at end of file diff --git a/packages/react-pointcuts/docs/CHANGELOG.md b/packages/react-pointcuts/docs/CHANGELOG.md index ff716c7..2824582 100644 --- a/packages/react-pointcuts/docs/CHANGELOG.md +++ b/packages/react-pointcuts/docs/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - added `package.json` [homepage](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#homepage), for clarity once on https://www.npmjs.com/ +- added companion note regarding `react-dom/server` when used with React 17 ### Fixed diff --git a/packages/react-pointcuts/docs/README.md b/packages/react-pointcuts/docs/README.md index 92347dc..0a85ad7 100644 --- a/packages/react-pointcuts/docs/README.md +++ b/packages/react-pointcuts/docs/README.md @@ -27,7 +27,8 @@ See: [JSDoc output](https://asos.github.io/web-toggle-point/module-web-toggle-po > ```js > resolve: { > alias: { -> "react/jsx-runtime": "react/jsx-runtime.js" +> "react/jsx-runtime": "react/jsx-runtime.js", +> "react-dom/server": "react-dom/server.js", > } > } > ``` diff --git a/packages/ssr/docs/CHANGELOG.md b/packages/ssr/docs/CHANGELOG.md index aa2ef79..058d6d5 100644 --- a/packages/ssr/docs/CHANGELOG.md +++ b/packages/ssr/docs/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - added `package.json` [homepage](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#homepage), for clarity once on https://www.npmjs.com/ +- added companion note regarding `react-dom/server` when used with React 17 ### Fixed diff --git a/packages/ssr/docs/README.md b/packages/ssr/docs/README.md index 54873d8..a9ec1f5 100644 --- a/packages/ssr/docs/README.md +++ b/packages/ssr/docs/README.md @@ -37,7 +37,8 @@ See: [JSDoc output](https://asos.github.io/web-toggle-point/module-web-toggle-po > ```js > resolve: { > alias: { -> "react/jsx-runtime": "react/jsx-runtime.js" +> "react/jsx-runtime": "react/jsx-runtime.js", +> "react-dom/server": "react-dom/server.js", > } > } > ``` From afafb972a073937ec47a92550619645fdd9013a8 Mon Sep 17 00:00:00 2001 From: TomStrepsil <10725179+TomStrepsil@users.noreply.github.com> Date: Thu, 24 Apr 2025 09:17:08 +0100 Subject: [PATCH 40/41] casing --- packages/features/docs/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/features/docs/CHANGELOG.md b/packages/features/docs/CHANGELOG.md index 0f7b32b..fdc01ee 100644 --- a/packages/features/docs/CHANGELOG.md +++ b/packages/features/docs/CHANGELOG.md @@ -10,7 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - added `package.json` [homepage](https://docs.npmjs.com/cli/v11/configuring-npm/package-json#homepage), for clarity once on https://www.npmjs.com/ -- move the React 17 note to the end, in the `README.md`, since only relevant to the last two store factories. Add companion note regarding `react-dom/server`. +- move the React 17 note to the end, in the `README.md`, since only relevant to the last two store factories & added companion note regarding `react-dom/server`. ### Fixed From fb10bb5c424b1ed252d3e82a73e742cad253cb90 Mon Sep 17 00:00:00 2001 From: TomStrepsil <10725179+TomStrepsil@users.noreply.github.com> Date: Fri, 16 May 2025 20:34:41 +0100 Subject: [PATCH 41/41] scout rule. delete orphan file. fix typo in readme. --- examples/express/docs/CHANGELOG.md | 3 ++- examples/express/src/routes/animals/index.js | 22 -------------------- examples/serve/README.md | 12 +++++------ examples/serve/docs/CHANGELOG.md | 6 ++++++ examples/serve/package.json | 2 +- 5 files changed, 15 insertions(+), 30 deletions(-) delete mode 100644 examples/express/src/routes/animals/index.js diff --git a/examples/express/docs/CHANGELOG.md b/examples/express/docs/CHANGELOG.md index 7247ccf..89d7780 100644 --- a/examples/express/docs/CHANGELOG.md +++ b/examples/express/docs/CHANGELOG.md @@ -9,7 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed -- corrected some links to packages from the examples readme. +- corrected some links to packages from the examples readme +- removed orphan `index.js` in the animals example, this has been supplanted by `router.js` ## [0.2.3] - 2024-12-24 diff --git a/examples/express/src/routes/animals/index.js b/examples/express/src/routes/animals/index.js deleted file mode 100644 index a59d851..0000000 --- a/examples/express/src/routes/animals/index.js +++ /dev/null @@ -1,22 +0,0 @@ -import { Router } from "express"; -import streamImage from "./streamImage.js"; -import featuresStore from "./featuresStore.js"; -import featuresMiddleware from "./middleware.js"; - -const router = Router(); - -router.use(featuresMiddleware); -router.get("/images", (_, response) => { - console.log("running images route"); - return streamImage(response); -}); -router.get("/", (_, response) => { - response.send(` - - - An animal - - `); -}); - -export default router; diff --git a/examples/serve/README.md b/examples/serve/README.md index cd95bcf..5b29fbd 100644 --- a/examples/serve/README.md +++ b/examples/serve/README.md @@ -61,7 +61,7 @@ All fall back to the default if no variant matches. ``` 5. (in chrome) open `chrome://settings/?search=lang` and add one of `Portuguese (Brazil)` or `German` to your preferred languages, and move that to the no 1. position. -6. re-load `localhost:3000` +6. re-load `localhost:3001` - you should see the following (in Portuguese example): ```html @@ -72,7 +72,7 @@ All fall back to the default if no variant matches. Some event-themed content ``` -7. now open `localhost:3000/es` +7. now open `localhost:3001/es` - you should see the following: ```html @@ -83,7 +83,7 @@ All fall back to the default if no variant matches. Some event-themed content ``` -8. now open `localhost:3000/it` +8. now open `localhost:3001/it` - you should see the following: ```html @@ -94,7 +94,7 @@ All fall back to the default if no variant matches. Some event-themed content ``` -9. now open `localhost:3000/us` or `localhost:3000/de` or `localhost:3000/fr` +9. now open `localhost:3001/us` or `localhost:3001/de` or `localhost:3001/fr` - you should see the following: ```html @@ -106,7 +106,7 @@ All fall back to the default if no variant matches. ``` 10. set a cookie for an audience to either of `cohort-1` or `cohort-2` using `document.cookie = "audience=cohort-1"` -11. now open `localhost:3000/` +11. now open `localhost:3001/` - you should see the following (in cohort-1 example): ```html @@ -118,7 +118,7 @@ All fall back to the default if no variant matches. ``` 12. change the system date to either 5th July 2025, 31st October or 17th March. -13. now open `localhost:3000/` +13. now open `localhost:3001/` - you should see the following: ```html diff --git a/examples/serve/docs/CHANGELOG.md b/examples/serve/docs/CHANGELOG.md index 9f2b321..9b54d30 100644 --- a/examples/serve/docs/CHANGELOG.md +++ b/examples/serve/docs/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.2.4] - 2025-05-16 + +### Fixed + +- fixed some incorrect ports in the `README.md` + ## [0.2.3] - 2025-02-27 ### Changed diff --git a/examples/serve/package.json b/examples/serve/package.json index 20a3f5d..c46e176 100644 --- a/examples/serve/package.json +++ b/examples/serve/package.json @@ -1,6 +1,6 @@ { "name": "web-toggle-point-serve-example", - "version": "0.2.3", + "version": "0.2.4", "type": "module", "private": true, "scripts": {