mirror of
https://github.com/transloadit/uppy.git
synced 2026-01-23 02:25:07 +00:00
Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/cache/releases">actions/cache's releases</a>.</em></p> <blockquote> <h2>v5.0.0</h2> <blockquote> <p>[!IMPORTANT] <strong><code>actions/cache@v5</code> runs on the Node.js 24 runtime and requires a minimum Actions Runner version of <code>2.327.1</code>.</strong></p> <p>If you are using self-hosted runners, ensure they are updated before upgrading.</p> </blockquote> <hr /> <h2>What's Changed</h2> <ul> <li>Upgrade to use node24 by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/cache/pull/1630">actions/cache#1630</a></li> <li>Prepare v5.0.0 release by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/cache/pull/1684">actions/cache#1684</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/cache/compare/v4.3.0...v5.0.0">https://github.com/actions/cache/compare/v4.3.0...v5.0.0</a></p> <h2>v4.3.0</h2> <h2>What's Changed</h2> <ul> <li>Add note on runner versions by <a href="https://github.com/GhadimiR"><code>@GhadimiR</code></a> in <a href="https://redirect.github.com/actions/cache/pull/1642">actions/cache#1642</a></li> <li>Prepare <code>v4.3.0</code> release by <a href="https://github.com/Link"><code>@Link</code></a>- in <a href="https://redirect.github.com/actions/cache/pull/1655">actions/cache#1655</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/GhadimiR"><code>@GhadimiR</code></a> made their first contribution in <a href="https://redirect.github.com/actions/cache/pull/1642">actions/cache#1642</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/cache/compare/v4...v4.3.0">https://github.com/actions/cache/compare/v4...v4.3.0</a></p> <h2>v4.2.4</h2> <h2>What's Changed</h2> <ul> <li>Update README.md by <a href="https://github.com/nebuk89"><code>@nebuk89</code></a> in <a href="https://redirect.github.com/actions/cache/pull/1620">actions/cache#1620</a></li> <li>Upgrade <code>@actions/cache</code> to <code>4.0.5</code> and move <code>@protobuf-ts/plugin</code> to dev depdencies by <a href="https://github.com/Link"><code>@Link</code></a>- in <a href="https://redirect.github.com/actions/cache/pull/1634">actions/cache#1634</a></li> <li>Prepare release <code>4.2.4</code> by <a href="https://github.com/Link"><code>@Link</code></a>- in <a href="https://redirect.github.com/actions/cache/pull/1636">actions/cache#1636</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/nebuk89"><code>@nebuk89</code></a> made their first contribution in <a href="https://redirect.github.com/actions/cache/pull/1620">actions/cache#1620</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/cache/compare/v4...v4.2.4">https://github.com/actions/cache/compare/v4...v4.2.4</a></p> <h2>v4.2.3</h2> <h2>What's Changed</h2> <ul> <li>Update to use <code>@actions/cache</code> 4.0.3 package & prepare for new release by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/cache/pull/1577">actions/cache#1577</a> (SAS tokens for cache entries are now masked in debug logs)</li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> made their first contribution in <a href="https://redirect.github.com/actions/cache/pull/1577">actions/cache#1577</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/cache/compare/v4.2.2...v4.2.3">https://github.com/actions/cache/compare/v4.2.2...v4.2.3</a></p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions/cache/blob/main/RELEASES.md">actions/cache's changelog</a>.</em></p> <blockquote> <h1>Releases</h1> <h2>Changelog</h2> <h3>5.0.1</h3> <ul> <li>Update <code>@azure/storage-blob</code> to <code>^12.29.1</code> via <code>@actions/cache@5.0.1</code> <a href="https://redirect.github.com/actions/cache/pull/1685">#1685</a></li> </ul> <h3>5.0.0</h3> <blockquote> <p>[!IMPORTANT] <code>actions/cache@v5</code> runs on the Node.js 24 runtime and requires a minimum Actions Runner version of <code>2.327.1</code>. If you are using self-hosted runners, ensure they are updated before upgrading.</p> </blockquote> <h3>4.3.0</h3> <ul> <li>Bump <code>@actions/cache</code> to <a href="https://redirect.github.com/actions/toolkit/pull/2132">v4.1.0</a></li> </ul> <h3>4.2.4</h3> <ul> <li>Bump <code>@actions/cache</code> to v4.0.5</li> </ul> <h3>4.2.3</h3> <ul> <li>Bump <code>@actions/cache</code> to v4.0.3 (obfuscates SAS token in debug logs for cache entries)</li> </ul> <h3>4.2.2</h3> <ul> <li>Bump <code>@actions/cache</code> to v4.0.2</li> </ul> <h3>4.2.1</h3> <ul> <li>Bump <code>@actions/cache</code> to v4.0.1</li> </ul> <h3>4.2.0</h3> <p>TLDR; The cache backend service has been rewritten from the ground up for improved performance and reliability. <a href="https://github.com/actions/cache">actions/cache</a> now integrates with the new cache service (v2) APIs.</p> <p>The new service will gradually roll out as of <strong>February 1st, 2025</strong>. The legacy service will also be sunset on the same date. Changes in these release are <strong>fully backward compatible</strong>.</p> <p><strong>We are deprecating some versions of this action</strong>. We recommend upgrading to version <code>v4</code> or <code>v3</code> as soon as possible before <strong>February 1st, 2025.</strong> (Upgrade instructions below).</p> <p>If you are using pinned SHAs, please use the SHAs of versions <code>v4.2.0</code> or <code>v3.4.0</code></p> <p>If you do not upgrade, all workflow runs using any of the deprecated <a href="https://github.com/actions/cache">actions/cache</a> will fail.</p> <p>Upgrading to the recommended versions will not break your workflows.</p> <h3>4.1.2</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="9255dc7a25"><code>9255dc7</code></a> Merge pull request <a href="https://redirect.github.com/actions/cache/issues/1686">#1686</a> from actions/cache-v5.0.1-release</li> <li><a href="8ff5423e8b"><code>8ff5423</code></a> chore: release v5.0.1</li> <li><a href="9233019a15"><code>9233019</code></a> Merge pull request <a href="https://redirect.github.com/actions/cache/issues/1685">#1685</a> from salmanmkc/node24-storage-blob-fix</li> <li><a href="b975f2bb84"><code>b975f2b</code></a> fix: add peer property to package-lock.json for dependencies</li> <li><a href="d0a0e18134"><code>d0a0e18</code></a> fix: update license files for <code>@actions/cache</code>, fast-xml-parser, and strnum</li> <li><a href="74de208dcf"><code>74de208</code></a> fix: update <code>@actions/cache</code> to ^5.0.1 for Node.js 24 punycode fix</li> <li><a href="ac7f1152ea"><code>ac7f115</code></a> peer</li> <li><a href="b0f846b50b"><code>b0f846b</code></a> fix: update <code>@actions/cache</code> with storage-blob fix for Node.js 24 punycode depr...</li> <li><a href="a783357455"><code>a783357</code></a> Merge pull request <a href="https://redirect.github.com/actions/cache/issues/1684">#1684</a> from actions/prepare-cache-v5-release</li> <li><a href="3bb0d78750"><code>3bb0d78</code></a> docs: highlight v5 runner requirement in releases</li> <li>Additional commits viewable in <a href="https://github.com/actions/cache/compare/v4...v5">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
238 lines
7.3 KiB
YAML
238 lines
7.3 KiB
YAML
name: Bundlers
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
# We want all branches so we configure types to be the GH default again
|
|
types: [opened, synchronize, reopened]
|
|
paths-ignore:
|
|
- '**.md'
|
|
- '**.d.ts'
|
|
- 'examples/**'
|
|
- 'private/**'
|
|
- 'website/**'
|
|
- '.github/**'
|
|
- '!.github/workflows/bundlers.yml'
|
|
|
|
env:
|
|
YARN_ENABLE_GLOBAL_CACHE: false
|
|
|
|
jobs:
|
|
isolate_uppy:
|
|
name: Isolate Uppy packages
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout sources
|
|
uses: actions/checkout@v6
|
|
- name: Get yarn cache directory path
|
|
id: yarn-cache-dir-path
|
|
run:
|
|
echo "dir=$(corepack yarn config get cacheFolder)" >> $GITHUB_OUTPUT
|
|
- uses: actions/cache@v5
|
|
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
|
|
with:
|
|
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
|
|
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-yarn-
|
|
- name: Install Node.js
|
|
uses: actions/setup-node@v6
|
|
with:
|
|
node-version: lts/*
|
|
- name: Install dependencies
|
|
run:
|
|
corepack yarn install
|
|
env:
|
|
# https://docs.cypress.io/guides/references/advanced-installation#Skipping-installation
|
|
CYPRESS_INSTALL_BINARY: 0
|
|
- name: Build
|
|
run: corepack yarn run build
|
|
- name: Make Uppy bundle use local version
|
|
run: |
|
|
node <<'EOF'
|
|
const pkg = require('./packages/uppy/package.json');
|
|
pkg.overrides = {};
|
|
(async () => {
|
|
for await (const { name } of await require('node:fs/promises').opendir('./packages/@uppy/')) {
|
|
pkg.overrides["@uppy/" + name] = `/tmp/packages/@uppy-${name}-${{ github.sha }}.tgz`;
|
|
}
|
|
for(const key of Object.keys(pkg.dependencies)) {
|
|
if (key in pkg.overrides) {
|
|
pkg.dependencies[key] = pkg.overrides[key];
|
|
}
|
|
}
|
|
require('node:fs').writeFileSync('./packages/uppy/package.json', JSON.stringify(pkg));
|
|
})();
|
|
EOF
|
|
- name: Eject public packages from repo
|
|
run:
|
|
mkdir /tmp/artifacts && corepack yarn workspaces foreach --all
|
|
--no-private pack --install-if-needed -o /tmp/artifacts/%s-${{
|
|
github.sha }}.tgz
|
|
- name: Upload artifact
|
|
if: success()
|
|
uses: actions/upload-artifact@v6
|
|
with:
|
|
name: packages
|
|
path: /tmp/artifacts/
|
|
|
|
rollup:
|
|
needs: isolate_uppy
|
|
name: Rollup
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
bundler-version: [latest]
|
|
steps:
|
|
- name: Download uppy tarball
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
path: /tmp/
|
|
- name: Extract tarball
|
|
run:
|
|
tar -xzf /tmp/packages/uppy-${{ github.sha }}.tgz --strip-components 1
|
|
- name: Add Rollup as a dev dependency
|
|
run: >-
|
|
npm i --save-dev @rollup/plugin-commonjs @rollup/plugin-node-resolve
|
|
@rollup/plugin-json rollup@${{matrix.bundler-version}}
|
|
- run: npx rollup --version
|
|
- name: Create Rollup config file
|
|
run: >-
|
|
echo ' import cjs from "@rollup/plugin-commonjs"; import { nodeResolve
|
|
} from "@rollup/plugin-node-resolve"; import json from
|
|
"@rollup/plugin-json";
|
|
|
|
export default {
|
|
input: "./lib/index.js",
|
|
output: {
|
|
file: "/dev/null",
|
|
},
|
|
plugins: [
|
|
json(),
|
|
cjs(),
|
|
nodeResolve({ browser: true, exportConditions: ["browser"] }),
|
|
],
|
|
};' > rollup.config.mjs
|
|
- name: Bundle
|
|
run: npx rollup -c
|
|
|
|
webpack:
|
|
needs: isolate_uppy
|
|
name: Webpack
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
bundler-version: [latest]
|
|
steps:
|
|
- name: Download uppy tarball
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
path: /tmp/
|
|
- name: Extract tarball
|
|
run:
|
|
tar -xzf /tmp/packages/uppy-${{ github.sha }}.tgz --strip-components 1
|
|
- name: Add Webpack as a dev dependency
|
|
run: npm i --save-dev webpack-cli webpack@${{matrix.bundler-version}}
|
|
- run: npx webpack --version
|
|
- name: Create Webpack config file
|
|
run: |
|
|
echo 'export default {
|
|
mode: "production",
|
|
target: "web",
|
|
entry: "./lib/index.js",
|
|
resolve: {
|
|
fallback: {
|
|
fs: false,
|
|
path: false,
|
|
stream: false,
|
|
util: false,
|
|
assert: false,
|
|
constants: false,
|
|
crypto: false,
|
|
http: false,
|
|
https: false,
|
|
url: false
|
|
}
|
|
}
|
|
}' > webpack.config.js
|
|
- name: Bundle
|
|
run: npx webpack
|
|
|
|
parcel:
|
|
needs: isolate_uppy
|
|
name: Parcel
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
bundler-version: [latest]
|
|
steps:
|
|
- name: Download uppy tarball
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
path: /tmp/
|
|
- name: Extract tarball
|
|
run:
|
|
tar -xzf /tmp/packages/uppy-${{ github.sha }}.tgz --strip-components 1
|
|
- name: Fix package.json to work with Parcel
|
|
run: |
|
|
node <<'EOF'
|
|
const pkg = require('./package.json');
|
|
delete pkg.main
|
|
delete pkg.types
|
|
pkg.module = 'output.mjs'
|
|
require('node:fs').writeFileSync('./package.json', JSON.stringify(pkg));
|
|
EOF
|
|
- name: Add Parcel as a dev dependency
|
|
run: npm i --save-dev parcel@${{matrix.bundler-version}}
|
|
- run: npx parcel --version
|
|
- name: Bundle
|
|
run: npx parcel build lib/index.js
|
|
|
|
vite:
|
|
needs: isolate_uppy
|
|
name: Vite
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
bundler-version: [latest]
|
|
steps:
|
|
- name: Download uppy tarball
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
path: /tmp/
|
|
- name: Extract tarball
|
|
run:
|
|
tar -xzf /tmp/packages/uppy-${{ github.sha }}.tgz --strip-components 1
|
|
- name: Add Vite as a dev dependency
|
|
run: npm i --save-dev vite@${{matrix.bundler-version}}
|
|
- run: npx vite --version
|
|
- name: Create index.html
|
|
run:
|
|
echo '<!doctype html><html><head><script type="module"
|
|
src="./lib/index.js"></script></head></html>' > index.html
|
|
- name: Bundle
|
|
run: npx vite build
|
|
|
|
esbuild:
|
|
needs: isolate_uppy
|
|
name: ESBuild
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
bundler-version: [latest]
|
|
steps:
|
|
- name: Download uppy tarball
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
path: /tmp/
|
|
- name: Extract tarball
|
|
run:
|
|
tar -xzf /tmp/packages/uppy-${{ github.sha }}.tgz --strip-components 1
|
|
- name: Add ESBuild as a dev dependency
|
|
run: npm i --save-dev esbuild@${{matrix.bundler-version}}
|
|
- run: npx esbuild --version
|
|
- name: Bundle
|
|
run: npx esbuild lib/index.js --bundle --outfile=/dev/null
|
|
|
|
# Browserify: doesn't support ESM.
|