mirror of
https://github.com/actions/setup-python.git
synced 2026-08-20 03:26:08 +00:00
Compare commits
1 Commits
main
...
dependabot
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ff03a8567a |
14
.github/workflows/e2e-cache-freethreaded.yml
vendored
14
.github/workflows/e2e-cache-freethreaded.yml
vendored
@@ -36,7 +36,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: 3.13.14t
|
python-version: 3.13.14t
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -66,7 +66,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: 3.13.14t
|
python-version: 3.13.14t
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
id: cache-pipenv
|
id: cache-pipenv
|
||||||
uses: ./
|
uses: ./
|
||||||
@@ -106,7 +106,7 @@ jobs:
|
|||||||
]
|
]
|
||||||
python-version: [3.13.14, 3.14.6]
|
python-version: [3.13.14, 3.14.6]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Install poetry
|
- name: Install poetry
|
||||||
run: pipx install poetry
|
run: pipx install poetry
|
||||||
- name: Init pyproject.toml
|
- name: Init pyproject.toml
|
||||||
@@ -141,7 +141,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: 3.13.14t
|
python-version: 3.13.14t
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -172,7 +172,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: 3.13.14t
|
python-version: 3.13.14t
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
id: cache-pipenv
|
id: cache-pipenv
|
||||||
uses: ./
|
uses: ./
|
||||||
@@ -216,7 +216,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: 3.13.14t
|
python-version: 3.13.14t
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -247,7 +247,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: 3.13.14t
|
python-version: 3.13.14t
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
|
|||||||
14
.github/workflows/e2e-cache.yml
vendored
14
.github/workflows/e2e-cache.yml
vendored
@@ -42,7 +42,7 @@ jobs:
|
|||||||
python-version: '3.10'
|
python-version: '3.10'
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -76,7 +76,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: pypy-3.11-v7.x
|
python-version: pypy-3.11-v7.x
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
id: cache-pipenv
|
id: cache-pipenv
|
||||||
uses: ./
|
uses: ./
|
||||||
@@ -131,7 +131,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: '3.10'
|
python-version: '3.10'
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Install poetry
|
- name: Install poetry
|
||||||
run: |
|
run: |
|
||||||
pipx install poetry
|
pipx install poetry
|
||||||
@@ -175,7 +175,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: '3.10'
|
python-version: '3.10'
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -210,7 +210,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: pypy-3.11-v7.x
|
python-version: pypy-3.11-v7.x
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
id: cache-pipenv
|
id: cache-pipenv
|
||||||
uses: ./
|
uses: ./
|
||||||
@@ -259,7 +259,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: '3.10'
|
python-version: '3.10'
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -290,7 +290,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: '3.10'
|
python-version: '3.10'
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
|
|||||||
2
.github/workflows/e2e-tests.yml
vendored
2
.github/workflows/e2e-tests.yml
vendored
@@ -29,7 +29,7 @@ jobs:
|
|||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: Run with setup-python 3.10.11
|
- name: Run with setup-python 3.10.11
|
||||||
if: matrix.operating-system != 'windows-11-arm'
|
if: matrix.operating-system != 'windows-11-arm'
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checking out
|
- name: Checking out
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Publish
|
- name: Publish
|
||||||
id: publish
|
id: publish
|
||||||
uses: actions/publish-immutable-action@4bc8754ffc40f27910afb20287dbbbb675a4e978 # v0.0.4
|
uses: actions/publish-immutable-action@4bc8754ffc40f27910afb20287dbbbb675a4e978 # v0.0.4
|
||||||
|
|||||||
6
.github/workflows/test-graalpy.yml
vendored
6
.github/workflows/test-graalpy.yml
vendored
@@ -34,7 +34,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python ${{ matrix.graalpy }}
|
- name: setup-python ${{ matrix.graalpy }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -85,7 +85,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python ${{ matrix.graalpy }}
|
- name: setup-python ${{ matrix.graalpy }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -107,7 +107,7 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
os: [ubuntu-latest, windows-latest, macos-latest, macos-15-intel]
|
os: [ubuntu-latest, windows-latest, macos-latest, macos-15-intel]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup GraalPy and check latest
|
- name: Setup GraalPy and check latest
|
||||||
uses: ./
|
uses: ./
|
||||||
id: graalpy
|
id: graalpy
|
||||||
|
|||||||
10
.github/workflows/test-pypy.yml
vendored
10
.github/workflows/test-pypy.yml
vendored
@@ -39,7 +39,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python ${{ matrix.pypy }}
|
- name: setup-python ${{ matrix.pypy }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -90,7 +90,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python ${{ matrix.pypy }}
|
- name: setup-python ${{ matrix.pypy }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -141,7 +141,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python ${{ matrix.pypy }}
|
- name: setup-python ${{ matrix.pypy }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -171,7 +171,7 @@ jobs:
|
|||||||
macos-latest
|
macos-latest
|
||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup PyPy and check latest
|
- name: Setup PyPy and check latest
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -212,7 +212,7 @@ jobs:
|
|||||||
macos-latest
|
macos-latest
|
||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup PyPy and check latest
|
- name: Setup PyPy and check latest
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
|
|||||||
30
.github/workflows/test-python-freethreaded.yml
vendored
30
.github/workflows/test-python-freethreaded.yml
vendored
@@ -33,7 +33,7 @@ jobs:
|
|||||||
python: [3.13.14t, 3.14.6t]
|
python: [3.13.14t, 3.14.6t]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python ${{ matrix.python }}
|
- name: setup-python ${{ matrix.python }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -70,7 +70,7 @@ jobs:
|
|||||||
python: [3.13.14t, 3.14.6t]
|
python: [3.13.14t, 3.14.6t]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: echo ${{ matrix.python }} > .python-version
|
run: echo ${{ matrix.python }} > .python-version
|
||||||
@@ -110,7 +110,7 @@ jobs:
|
|||||||
python: [3.13.14t, 3.14.6t]
|
python: [3.13.14t, 3.14.6t]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: echo ${{ matrix.python }} > .python-version
|
run: echo ${{ matrix.python }} > .python-version
|
||||||
@@ -148,7 +148,7 @@ jobs:
|
|||||||
python: [3.13.14, 3.14.6]
|
python: [3.13.14, 3.14.6]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -189,7 +189,7 @@ jobs:
|
|||||||
python: [3.13.14, 3.14.6]
|
python: [3.13.14, 3.14.6]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -230,7 +230,7 @@ jobs:
|
|||||||
python: [3.13.14t, 3.14.6t, 3.15t-dev]
|
python: [3.13.14t, 3.14.6t, 3.15t-dev]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-tool-versions-file ${{ matrix.python }}
|
- name: build-tool-versions-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -261,7 +261,7 @@ jobs:
|
|||||||
python: [3.13t, 3.15t-dev]
|
python: [3.13t, 3.15t-dev]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -301,7 +301,7 @@ jobs:
|
|||||||
python: [3.13.14t, 3.14.6t, 3.15t-dev]
|
python: [3.13.14t, 3.14.6t, 3.15t-dev]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -340,7 +340,7 @@ jobs:
|
|||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python 3.15.0-beta.3
|
- name: setup-python 3.15.0-beta.3
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -377,7 +377,7 @@ jobs:
|
|||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python 3.15t-dev
|
- name: setup-python 3.15t-dev
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -414,7 +414,7 @@ jobs:
|
|||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python 3.15t
|
- name: setup-python 3.15t
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -453,7 +453,7 @@ jobs:
|
|||||||
python: [3.13.14t, 3.14.6t]
|
python: [3.13.14t, 3.14.6t]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python ${{ matrix.python }}
|
- name: setup-python ${{ matrix.python }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -485,7 +485,7 @@ jobs:
|
|||||||
]
|
]
|
||||||
python-version: [3.13t, 3.15t-dev]
|
python-version: [3.13t, 3.15t-dev]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python and check latest
|
- name: Setup Python and check latest
|
||||||
id: setup-python
|
id: setup-python
|
||||||
uses: ./
|
uses: ./
|
||||||
@@ -511,7 +511,7 @@ jobs:
|
|||||||
macos-latest
|
macos-latest
|
||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup multiple Python versions
|
- name: Setup multiple Python versions
|
||||||
id: setup-python
|
id: setup-python
|
||||||
uses: ./
|
uses: ./
|
||||||
@@ -542,7 +542,7 @@ jobs:
|
|||||||
python: [3.13.14, 3.14.6, 3.15-dev, 3.15.0-beta.3]
|
python: [3.13.14, 3.14.6, 3.15-dev, 3.15.0-beta.3]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: setup-python ${{ matrix.python }}
|
- name: setup-python ${{ matrix.python }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
uses: ./
|
uses: ./
|
||||||
|
|||||||
28
.github/workflows/test-python.yml
vendored
28
.github/workflows/test-python.yml
vendored
@@ -36,7 +36,7 @@ jobs:
|
|||||||
python: 3.10.11
|
python: 3.10.11
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python ${{ matrix.python }}
|
- name: setup-python ${{ matrix.python }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -83,7 +83,7 @@ jobs:
|
|||||||
python: 3.10.11
|
python: 3.10.11
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: echo ${{ matrix.python }} > .python-version
|
run: echo ${{ matrix.python }} > .python-version
|
||||||
@@ -133,7 +133,7 @@ jobs:
|
|||||||
python: 3.10.11
|
python: 3.10.11
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: echo ${{ matrix.python }} > .python-version
|
run: echo ${{ matrix.python }} > .python-version
|
||||||
@@ -181,7 +181,7 @@ jobs:
|
|||||||
python: 3.10.11
|
python: 3.10.11
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -234,7 +234,7 @@ jobs:
|
|||||||
python: 3.10.11
|
python: 3.10.11
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -291,7 +291,7 @@ jobs:
|
|||||||
python: pypy3.11-7.3.18
|
python: pypy3.11-7.3.18
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-tool-versions-file ${{ matrix.python }}
|
- name: build-tool-versions-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -325,7 +325,7 @@ jobs:
|
|||||||
python: 3.10.11
|
python: 3.10.11
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -378,7 +378,7 @@ jobs:
|
|||||||
python: 3.10.11
|
python: 3.10.11
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: build-version-file ${{ matrix.python }}
|
- name: build-version-file ${{ matrix.python }}
|
||||||
run: |
|
run: |
|
||||||
@@ -427,7 +427,7 @@ jobs:
|
|||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python 3.15.0-beta.3
|
- name: setup-python 3.15.0-beta.3
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -470,7 +470,7 @@ jobs:
|
|||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python 3.15-dev
|
- name: setup-python 3.15-dev
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -507,7 +507,7 @@ jobs:
|
|||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python 3.15
|
- name: setup-python 3.15
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -549,7 +549,7 @@ jobs:
|
|||||||
python: '3.10'
|
python: '3.10'
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
|
|
||||||
- name: setup-python ${{ matrix.python }}
|
- name: setup-python ${{ matrix.python }}
|
||||||
id: setup-python
|
id: setup-python
|
||||||
@@ -584,7 +584,7 @@ jobs:
|
|||||||
- os: windows-11-arm
|
- os: windows-11-arm
|
||||||
python-version: '3.10'
|
python-version: '3.10'
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python and check latest
|
- name: Setup Python and check latest
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -616,7 +616,7 @@ jobs:
|
|||||||
macos-latest
|
macos-latest
|
||||||
]
|
]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
||||||
- name: Setup Python and check latest
|
- name: Setup Python and check latest
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
|
|||||||
2
.licenses/npm/brace-expansion.dep.yml
generated
2
.licenses/npm/brace-expansion.dep.yml
generated
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
name: brace-expansion
|
name: brace-expansion
|
||||||
version: 5.0.9
|
version: 5.0.8
|
||||||
type: npm
|
type: npm
|
||||||
summary: Brace expansion as known from sh/bash
|
summary: Brace expansion as known from sh/bash
|
||||||
homepage:
|
homepage:
|
||||||
|
|||||||
2
.licenses/npm/undici.dep.yml
generated
2
.licenses/npm/undici.dep.yml
generated
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
name: undici
|
name: undici
|
||||||
version: 6.28.0
|
version: 6.27.0
|
||||||
type: npm
|
type: npm
|
||||||
summary: An HTTP/1.1 client, written from scratch for Node.js
|
summary: An HTTP/1.1 client, written from scratch for Node.js
|
||||||
homepage: https://undici.nodejs.org
|
homepage: https://undici.nodejs.org
|
||||||
|
|||||||
182
dist/cache-save/index.js
vendored
182
dist/cache-save/index.js
vendored
@@ -16069,13 +16069,7 @@ function processHeader (request, key, val) {
|
|||||||
} else if (typeof val[i] === 'object') {
|
} else if (typeof val[i] === 'object') {
|
||||||
throw new InvalidArgumentError(`invalid ${key} header`)
|
throw new InvalidArgumentError(`invalid ${key} header`)
|
||||||
} else {
|
} else {
|
||||||
// Coerce primitives (and reject unsafe coercions such as functions
|
arr.push(`${val[i]}`)
|
||||||
// with a crafted toString/Symbol.toPrimitive).
|
|
||||||
const str = `${val[i]}`
|
|
||||||
if (!isValidHeaderValue(str)) {
|
|
||||||
throw new InvalidArgumentError(`invalid ${key} header`)
|
|
||||||
}
|
|
||||||
arr.push(str)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
val = arr
|
val = arr
|
||||||
@@ -16086,12 +16080,7 @@ function processHeader (request, key, val) {
|
|||||||
} else if (val === null) {
|
} else if (val === null) {
|
||||||
val = ''
|
val = ''
|
||||||
} else {
|
} else {
|
||||||
// Coerce primitives (and reject unsafe coercions such as functions
|
|
||||||
// with a crafted toString/Symbol.toPrimitive).
|
|
||||||
val = `${val}`
|
val = `${val}`
|
||||||
if (!isValidHeaderValue(val)) {
|
|
||||||
throw new InvalidArgumentError(`invalid ${key} header`)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (headerName === 'host') {
|
if (headerName === 'host') {
|
||||||
@@ -17463,7 +17452,6 @@ const {
|
|||||||
RequestContentLengthMismatchError,
|
RequestContentLengthMismatchError,
|
||||||
ResponseContentLengthMismatchError,
|
ResponseContentLengthMismatchError,
|
||||||
RequestAbortedError,
|
RequestAbortedError,
|
||||||
InvalidArgumentError,
|
|
||||||
HeadersTimeoutError,
|
HeadersTimeoutError,
|
||||||
HeadersOverflowError,
|
HeadersOverflowError,
|
||||||
SocketError,
|
SocketError,
|
||||||
@@ -18447,16 +18435,8 @@ function writeH1 (client, request) {
|
|||||||
}
|
}
|
||||||
body = bodyStream.stream
|
body = bodyStream.stream
|
||||||
contentLength = bodyStream.length
|
contentLength = bodyStream.length
|
||||||
} else if (util.isBlobLike(body) && request.contentType == null) {
|
} else if (util.isBlobLike(body) && request.contentType == null && body.type) {
|
||||||
const contentType = body.type
|
headers.push('content-type', body.type)
|
||||||
if (contentType) {
|
|
||||||
const contentTypeValue = `${contentType}`
|
|
||||||
if (!util.isValidHeaderValue(contentTypeValue)) {
|
|
||||||
util.errorRequest(client, request, new InvalidArgumentError('invalid content-type header'))
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
headers.push('content-type', contentTypeValue)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (body && typeof body.read === 'function') {
|
if (body && typeof body.read === 'function') {
|
||||||
@@ -21929,28 +21909,6 @@ function calculateRetryAfterHeader (retryAfter) {
|
|||||||
return new Date(retryAfter).getTime() - current
|
return new Date(retryAfter).getTime() - current
|
||||||
}
|
}
|
||||||
|
|
||||||
function validatePartialResponseContentLength (headers, range, statusCode, retryCount) {
|
|
||||||
const contentLength = headers['content-length']
|
|
||||||
if (contentLength == null) {
|
|
||||||
return null
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!Number.isFinite(range.start) || !Number.isFinite(range.end)) {
|
|
||||||
return null
|
|
||||||
}
|
|
||||||
|
|
||||||
const length = Number(contentLength)
|
|
||||||
const expectedLength = range.end - range.start + 1
|
|
||||||
if (!Number.isFinite(length) || length !== expectedLength) {
|
|
||||||
return new RequestRetryError('Content-Length mismatch', statusCode, {
|
|
||||||
headers,
|
|
||||||
data: { count: retryCount }
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
return null
|
|
||||||
}
|
|
||||||
|
|
||||||
class RetryHandler {
|
class RetryHandler {
|
||||||
constructor (opts, handlers) {
|
constructor (opts, handlers) {
|
||||||
const { retryOptions, ...dispatchOpts } = opts
|
const { retryOptions, ...dispatchOpts } = opts
|
||||||
@@ -22165,12 +22123,6 @@ class RetryHandler {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
const contentLengthError = validatePartialResponseContentLength(headers, contentRange, statusCode, this.retryCount)
|
|
||||||
if (contentLengthError != null) {
|
|
||||||
this.abort(contentLengthError)
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
const { start, size, end = size - 1 } = contentRange
|
const { start, size, end = size - 1 } = contentRange
|
||||||
|
|
||||||
assert(this.start === start, 'content-range mismatch')
|
assert(this.start === start, 'content-range mismatch')
|
||||||
@@ -22194,12 +22146,6 @@ class RetryHandler {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const contentLengthError = validatePartialResponseContentLength(headers, range, statusCode, this.retryCount)
|
|
||||||
if (contentLengthError != null) {
|
|
||||||
this.abort(contentLengthError)
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
const { start, size, end = size - 1 } = range
|
const { start, size, end = size - 1 } = range
|
||||||
assert(
|
assert(
|
||||||
start != null && Number.isFinite(start),
|
start != null && Number.isFinite(start),
|
||||||
@@ -26444,7 +26390,7 @@ function validateCookiePath (path) {
|
|||||||
|
|
||||||
if (
|
if (
|
||||||
code < 0x20 || // exclude CTLs (0-31)
|
code < 0x20 || // exclude CTLs (0-31)
|
||||||
code > 0x7E || // exclude DEL and non-ascii
|
code === 0x7F || // DEL
|
||||||
code === 0x3B // ;
|
code === 0x3B // ;
|
||||||
) {
|
) {
|
||||||
throw new Error('Invalid cookie path')
|
throw new Error('Invalid cookie path')
|
||||||
@@ -26453,80 +26399,16 @@ function validateCookiePath (path) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <let-dig> ::= <letter> | <digit>
|
* I have no idea why these values aren't allowed to be honest,
|
||||||
*
|
* but Deno tests these. - Khafra
|
||||||
* <letter> ::= any one of the 52 alphabetic characters A through Z in
|
|
||||||
* upper case and a through z in lower case
|
|
||||||
*
|
|
||||||
* <digit> ::= any one of the ten digits 0 through 9r
|
|
||||||
*
|
|
||||||
* @see https://www.rfc-editor.org/rfc/rfc1034#section-3.5
|
|
||||||
* @param {number} code
|
|
||||||
*/
|
|
||||||
function isLetterOrDigit (code) {
|
|
||||||
return (
|
|
||||||
(code >= 0x30 && code <= 0x39) || // 0-9
|
|
||||||
(code >= 0x41 && code <= 0x5A) || // A-Z
|
|
||||||
(code >= 0x61 && code <= 0x7A) // a-z
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Validates a cookie domain against the "preferred name syntax".
|
|
||||||
*
|
|
||||||
* <domain> ::= <subdomain> | " "
|
|
||||||
* <subdomain> ::= <label> | <subdomain> "." <label>
|
|
||||||
* <label> ::= <let-dig> [ [ <ldh-str> ] <let-dig> ]
|
|
||||||
* <ldh-str> ::= <let-dig-hyp> | <let-dig-hyp> <ldh-str>
|
|
||||||
* <let-dig-hyp> ::= <let-dig> | "-"
|
|
||||||
*
|
|
||||||
* @see https://www.rfc-editor.org/rfc/rfc1034#section-3.5
|
|
||||||
* @see https://www.rfc-editor.org/rfc/rfc1123#section-2.1
|
|
||||||
* @see https://www.rfc-editor.org/rfc/rfc1035#section-2.3.4
|
|
||||||
* @param {string} domain
|
* @param {string} domain
|
||||||
*/
|
*/
|
||||||
function validateCookieDomain (domain) {
|
function validateCookieDomain (domain) {
|
||||||
// <domain> ::= <subdomain> | " "
|
if (
|
||||||
if (domain === ' ') {
|
domain.startsWith('-') ||
|
||||||
return
|
domain.endsWith('.') ||
|
||||||
}
|
domain.endsWith('-')
|
||||||
|
) {
|
||||||
if (domain.length > 255) {
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
let labelLength = 0
|
|
||||||
|
|
||||||
for (let i = 0; i < domain.length; ++i) {
|
|
||||||
const code = domain.charCodeAt(i)
|
|
||||||
|
|
||||||
if (code === 0x2E) {
|
|
||||||
if (labelLength === 0) {
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
if (domain.charCodeAt(i - 1) === 0x2D) { // "-"
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
labelLength = 0
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if (labelLength === 0 && !isLetterOrDigit(code)) {
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!isLetterOrDigit(code) && code !== 0x2D) { // "-"
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
if (++labelLength > 63) {
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (labelLength === 0 || domain.charCodeAt(domain.length - 1) === 0x2D) { // "-"
|
|
||||||
throw new Error('Invalid cookie domain')
|
throw new Error('Invalid cookie domain')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -26669,13 +26551,7 @@ function stringify (cookie) {
|
|||||||
|
|
||||||
const [key, ...value] = part.split('=')
|
const [key, ...value] = part.split('=')
|
||||||
|
|
||||||
const trimmedKey = key.trim()
|
out.push(`${key.trim()}=${value.join('=')}`)
|
||||||
const joinedValue = value.join('=')
|
|
||||||
|
|
||||||
validateCookieName(trimmedKey)
|
|
||||||
validateCookieValue(joinedValue)
|
|
||||||
|
|
||||||
out.push(`${trimmedKey}=${joinedValue}`)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return out.join('; ')
|
return out.join('; ')
|
||||||
@@ -41208,7 +41084,7 @@ function combine(acc, pre, values, max, maxLength, dropEmpties) {
|
|||||||
}
|
}
|
||||||
// The expansion values of a single numeric (`1..5`) or alphabetic (`a..e..2`)
|
// The expansion values of a single numeric (`1..5`) or alphabetic (`a..e..2`)
|
||||||
// sequence body.
|
// sequence body.
|
||||||
function expandSequence(body, isAlphaSequence, max, maxLength) {
|
function expandSequence(body, isAlphaSequence, max) {
|
||||||
const n = body.split(/\.\./);
|
const n = body.split(/\.\./);
|
||||||
const N = [];
|
const N = [];
|
||||||
// A sequence body always splits into two or three parts, but the compiler
|
// A sequence body always splits into two or three parts, but the compiler
|
||||||
@@ -41231,7 +41107,6 @@ function expandSequence(body, isAlphaSequence, max, maxLength) {
|
|||||||
test = gte;
|
test = gte;
|
||||||
}
|
}
|
||||||
const pad = n.some(isPadded);
|
const pad = n.some(isPadded);
|
||||||
let length = 0;
|
|
||||||
for (let i = x; test(i, y) && N.length < max; i += incr) {
|
for (let i = x; test(i, y) && N.length < max; i += incr) {
|
||||||
let c;
|
let c;
|
||||||
if (isAlphaSequence) {
|
if (isAlphaSequence) {
|
||||||
@@ -41255,10 +41130,7 @@ function expandSequence(body, isAlphaSequence, max, maxLength) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (length + c.length > maxLength)
|
|
||||||
break;
|
|
||||||
N.push(c);
|
N.push(c);
|
||||||
length += c.length;
|
|
||||||
}
|
}
|
||||||
return N;
|
return N;
|
||||||
}
|
}
|
||||||
@@ -41312,7 +41184,7 @@ function expand_(str, max, maxLength, isTop) {
|
|||||||
}
|
}
|
||||||
let values;
|
let values;
|
||||||
if (isSequence) {
|
if (isSequence) {
|
||||||
values = expandSequence(m.body, isAlphaSequence, max, maxLength);
|
values = expandSequence(m.body, isAlphaSequence, max);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
let n = parseCommaParts(m.body);
|
let n = parseCommaParts(m.body);
|
||||||
@@ -41330,31 +41202,9 @@ function expand_(str, max, maxLength, isTop) {
|
|||||||
}
|
}
|
||||||
/* c8 ignore stop */
|
/* c8 ignore stop */
|
||||||
}
|
}
|
||||||
// Values that `combine` is going to drop as empty produce no result, so
|
|
||||||
// they must not count against `max` - otherwise `{a,,b}` with `max: 2`
|
|
||||||
// would stop at `['a', '']` and yield one result instead of two. Skipping
|
|
||||||
// them outright keeps `values` bounded while leaving `max` a bound on
|
|
||||||
// *kept* results.
|
|
||||||
let dropsEmpties = dropEmpties && !m.post.length && !pre;
|
|
||||||
for (let d = 0; dropsEmpties && d < acc.length; d++) {
|
|
||||||
if (acc[d]) {
|
|
||||||
dropsEmpties = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
values = [];
|
values = [];
|
||||||
let valuesLength = 0;
|
for (let j = 0; j < n.length; j++) {
|
||||||
outer: for (let j = 0; j < n.length; j++) {
|
values.push.apply(values, expand_(n[j], max, maxLength, false));
|
||||||
const expanded = expand_(n[j], max, maxLength, false);
|
|
||||||
for (let k = 0; k < expanded.length; k++) {
|
|
||||||
const v = expanded[k];
|
|
||||||
if (dropsEmpties && !v)
|
|
||||||
continue;
|
|
||||||
if (values.length >= max || valuesLength + v.length > maxLength) {
|
|
||||||
break outer;
|
|
||||||
}
|
|
||||||
values.push(v);
|
|
||||||
valuesLength += v.length;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
|
acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
|
||||||
|
|||||||
216
dist/setup/index.js
vendored
216
dist/setup/index.js
vendored
@@ -16069,13 +16069,7 @@ function processHeader (request, key, val) {
|
|||||||
} else if (typeof val[i] === 'object') {
|
} else if (typeof val[i] === 'object') {
|
||||||
throw new InvalidArgumentError(`invalid ${key} header`)
|
throw new InvalidArgumentError(`invalid ${key} header`)
|
||||||
} else {
|
} else {
|
||||||
// Coerce primitives (and reject unsafe coercions such as functions
|
arr.push(`${val[i]}`)
|
||||||
// with a crafted toString/Symbol.toPrimitive).
|
|
||||||
const str = `${val[i]}`
|
|
||||||
if (!isValidHeaderValue(str)) {
|
|
||||||
throw new InvalidArgumentError(`invalid ${key} header`)
|
|
||||||
}
|
|
||||||
arr.push(str)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
val = arr
|
val = arr
|
||||||
@@ -16086,12 +16080,7 @@ function processHeader (request, key, val) {
|
|||||||
} else if (val === null) {
|
} else if (val === null) {
|
||||||
val = ''
|
val = ''
|
||||||
} else {
|
} else {
|
||||||
// Coerce primitives (and reject unsafe coercions such as functions
|
|
||||||
// with a crafted toString/Symbol.toPrimitive).
|
|
||||||
val = `${val}`
|
val = `${val}`
|
||||||
if (!isValidHeaderValue(val)) {
|
|
||||||
throw new InvalidArgumentError(`invalid ${key} header`)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (headerName === 'host') {
|
if (headerName === 'host') {
|
||||||
@@ -17463,7 +17452,6 @@ const {
|
|||||||
RequestContentLengthMismatchError,
|
RequestContentLengthMismatchError,
|
||||||
ResponseContentLengthMismatchError,
|
ResponseContentLengthMismatchError,
|
||||||
RequestAbortedError,
|
RequestAbortedError,
|
||||||
InvalidArgumentError,
|
|
||||||
HeadersTimeoutError,
|
HeadersTimeoutError,
|
||||||
HeadersOverflowError,
|
HeadersOverflowError,
|
||||||
SocketError,
|
SocketError,
|
||||||
@@ -18447,16 +18435,8 @@ function writeH1 (client, request) {
|
|||||||
}
|
}
|
||||||
body = bodyStream.stream
|
body = bodyStream.stream
|
||||||
contentLength = bodyStream.length
|
contentLength = bodyStream.length
|
||||||
} else if (util.isBlobLike(body) && request.contentType == null) {
|
} else if (util.isBlobLike(body) && request.contentType == null && body.type) {
|
||||||
const contentType = body.type
|
headers.push('content-type', body.type)
|
||||||
if (contentType) {
|
|
||||||
const contentTypeValue = `${contentType}`
|
|
||||||
if (!util.isValidHeaderValue(contentTypeValue)) {
|
|
||||||
util.errorRequest(client, request, new InvalidArgumentError('invalid content-type header'))
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
headers.push('content-type', contentTypeValue)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (body && typeof body.read === 'function') {
|
if (body && typeof body.read === 'function') {
|
||||||
@@ -21929,28 +21909,6 @@ function calculateRetryAfterHeader (retryAfter) {
|
|||||||
return new Date(retryAfter).getTime() - current
|
return new Date(retryAfter).getTime() - current
|
||||||
}
|
}
|
||||||
|
|
||||||
function validatePartialResponseContentLength (headers, range, statusCode, retryCount) {
|
|
||||||
const contentLength = headers['content-length']
|
|
||||||
if (contentLength == null) {
|
|
||||||
return null
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!Number.isFinite(range.start) || !Number.isFinite(range.end)) {
|
|
||||||
return null
|
|
||||||
}
|
|
||||||
|
|
||||||
const length = Number(contentLength)
|
|
||||||
const expectedLength = range.end - range.start + 1
|
|
||||||
if (!Number.isFinite(length) || length !== expectedLength) {
|
|
||||||
return new RequestRetryError('Content-Length mismatch', statusCode, {
|
|
||||||
headers,
|
|
||||||
data: { count: retryCount }
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
return null
|
|
||||||
}
|
|
||||||
|
|
||||||
class RetryHandler {
|
class RetryHandler {
|
||||||
constructor (opts, handlers) {
|
constructor (opts, handlers) {
|
||||||
const { retryOptions, ...dispatchOpts } = opts
|
const { retryOptions, ...dispatchOpts } = opts
|
||||||
@@ -22165,12 +22123,6 @@ class RetryHandler {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
const contentLengthError = validatePartialResponseContentLength(headers, contentRange, statusCode, this.retryCount)
|
|
||||||
if (contentLengthError != null) {
|
|
||||||
this.abort(contentLengthError)
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
const { start, size, end = size - 1 } = contentRange
|
const { start, size, end = size - 1 } = contentRange
|
||||||
|
|
||||||
assert(this.start === start, 'content-range mismatch')
|
assert(this.start === start, 'content-range mismatch')
|
||||||
@@ -22194,12 +22146,6 @@ class RetryHandler {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const contentLengthError = validatePartialResponseContentLength(headers, range, statusCode, this.retryCount)
|
|
||||||
if (contentLengthError != null) {
|
|
||||||
this.abort(contentLengthError)
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
const { start, size, end = size - 1 } = range
|
const { start, size, end = size - 1 } = range
|
||||||
assert(
|
assert(
|
||||||
start != null && Number.isFinite(start),
|
start != null && Number.isFinite(start),
|
||||||
@@ -26444,7 +26390,7 @@ function validateCookiePath (path) {
|
|||||||
|
|
||||||
if (
|
if (
|
||||||
code < 0x20 || // exclude CTLs (0-31)
|
code < 0x20 || // exclude CTLs (0-31)
|
||||||
code > 0x7E || // exclude DEL and non-ascii
|
code === 0x7F || // DEL
|
||||||
code === 0x3B // ;
|
code === 0x3B // ;
|
||||||
) {
|
) {
|
||||||
throw new Error('Invalid cookie path')
|
throw new Error('Invalid cookie path')
|
||||||
@@ -26453,80 +26399,16 @@ function validateCookiePath (path) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <let-dig> ::= <letter> | <digit>
|
* I have no idea why these values aren't allowed to be honest,
|
||||||
*
|
* but Deno tests these. - Khafra
|
||||||
* <letter> ::= any one of the 52 alphabetic characters A through Z in
|
|
||||||
* upper case and a through z in lower case
|
|
||||||
*
|
|
||||||
* <digit> ::= any one of the ten digits 0 through 9r
|
|
||||||
*
|
|
||||||
* @see https://www.rfc-editor.org/rfc/rfc1034#section-3.5
|
|
||||||
* @param {number} code
|
|
||||||
*/
|
|
||||||
function isLetterOrDigit (code) {
|
|
||||||
return (
|
|
||||||
(code >= 0x30 && code <= 0x39) || // 0-9
|
|
||||||
(code >= 0x41 && code <= 0x5A) || // A-Z
|
|
||||||
(code >= 0x61 && code <= 0x7A) // a-z
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Validates a cookie domain against the "preferred name syntax".
|
|
||||||
*
|
|
||||||
* <domain> ::= <subdomain> | " "
|
|
||||||
* <subdomain> ::= <label> | <subdomain> "." <label>
|
|
||||||
* <label> ::= <let-dig> [ [ <ldh-str> ] <let-dig> ]
|
|
||||||
* <ldh-str> ::= <let-dig-hyp> | <let-dig-hyp> <ldh-str>
|
|
||||||
* <let-dig-hyp> ::= <let-dig> | "-"
|
|
||||||
*
|
|
||||||
* @see https://www.rfc-editor.org/rfc/rfc1034#section-3.5
|
|
||||||
* @see https://www.rfc-editor.org/rfc/rfc1123#section-2.1
|
|
||||||
* @see https://www.rfc-editor.org/rfc/rfc1035#section-2.3.4
|
|
||||||
* @param {string} domain
|
* @param {string} domain
|
||||||
*/
|
*/
|
||||||
function validateCookieDomain (domain) {
|
function validateCookieDomain (domain) {
|
||||||
// <domain> ::= <subdomain> | " "
|
if (
|
||||||
if (domain === ' ') {
|
domain.startsWith('-') ||
|
||||||
return
|
domain.endsWith('.') ||
|
||||||
}
|
domain.endsWith('-')
|
||||||
|
) {
|
||||||
if (domain.length > 255) {
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
let labelLength = 0
|
|
||||||
|
|
||||||
for (let i = 0; i < domain.length; ++i) {
|
|
||||||
const code = domain.charCodeAt(i)
|
|
||||||
|
|
||||||
if (code === 0x2E) {
|
|
||||||
if (labelLength === 0) {
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
if (domain.charCodeAt(i - 1) === 0x2D) { // "-"
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
labelLength = 0
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if (labelLength === 0 && !isLetterOrDigit(code)) {
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!isLetterOrDigit(code) && code !== 0x2D) { // "-"
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
|
|
||||||
if (++labelLength > 63) {
|
|
||||||
throw new Error('Invalid cookie domain')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (labelLength === 0 || domain.charCodeAt(domain.length - 1) === 0x2D) { // "-"
|
|
||||||
throw new Error('Invalid cookie domain')
|
throw new Error('Invalid cookie domain')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -26669,13 +26551,7 @@ function stringify (cookie) {
|
|||||||
|
|
||||||
const [key, ...value] = part.split('=')
|
const [key, ...value] = part.split('=')
|
||||||
|
|
||||||
const trimmedKey = key.trim()
|
out.push(`${key.trim()}=${value.join('=')}`)
|
||||||
const joinedValue = value.join('=')
|
|
||||||
|
|
||||||
validateCookieName(trimmedKey)
|
|
||||||
validateCookieValue(joinedValue)
|
|
||||||
|
|
||||||
out.push(`${trimmedKey}=${joinedValue}`)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return out.join('; ')
|
return out.join('; ')
|
||||||
@@ -41208,7 +41084,7 @@ function combine(acc, pre, values, max, maxLength, dropEmpties) {
|
|||||||
}
|
}
|
||||||
// The expansion values of a single numeric (`1..5`) or alphabetic (`a..e..2`)
|
// The expansion values of a single numeric (`1..5`) or alphabetic (`a..e..2`)
|
||||||
// sequence body.
|
// sequence body.
|
||||||
function expandSequence(body, isAlphaSequence, max, maxLength) {
|
function expandSequence(body, isAlphaSequence, max) {
|
||||||
const n = body.split(/\.\./);
|
const n = body.split(/\.\./);
|
||||||
const N = [];
|
const N = [];
|
||||||
// A sequence body always splits into two or three parts, but the compiler
|
// A sequence body always splits into two or three parts, but the compiler
|
||||||
@@ -41231,7 +41107,6 @@ function expandSequence(body, isAlphaSequence, max, maxLength) {
|
|||||||
test = gte;
|
test = gte;
|
||||||
}
|
}
|
||||||
const pad = n.some(isPadded);
|
const pad = n.some(isPadded);
|
||||||
let length = 0;
|
|
||||||
for (let i = x; test(i, y) && N.length < max; i += incr) {
|
for (let i = x; test(i, y) && N.length < max; i += incr) {
|
||||||
let c;
|
let c;
|
||||||
if (isAlphaSequence) {
|
if (isAlphaSequence) {
|
||||||
@@ -41255,10 +41130,7 @@ function expandSequence(body, isAlphaSequence, max, maxLength) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (length + c.length > maxLength)
|
|
||||||
break;
|
|
||||||
N.push(c);
|
N.push(c);
|
||||||
length += c.length;
|
|
||||||
}
|
}
|
||||||
return N;
|
return N;
|
||||||
}
|
}
|
||||||
@@ -41312,7 +41184,7 @@ function expand_(str, max, maxLength, isTop) {
|
|||||||
}
|
}
|
||||||
let values;
|
let values;
|
||||||
if (isSequence) {
|
if (isSequence) {
|
||||||
values = expandSequence(m.body, isAlphaSequence, max, maxLength);
|
values = expandSequence(m.body, isAlphaSequence, max);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
let n = parseCommaParts(m.body);
|
let n = parseCommaParts(m.body);
|
||||||
@@ -41330,31 +41202,9 @@ function expand_(str, max, maxLength, isTop) {
|
|||||||
}
|
}
|
||||||
/* c8 ignore stop */
|
/* c8 ignore stop */
|
||||||
}
|
}
|
||||||
// Values that `combine` is going to drop as empty produce no result, so
|
|
||||||
// they must not count against `max` - otherwise `{a,,b}` with `max: 2`
|
|
||||||
// would stop at `['a', '']` and yield one result instead of two. Skipping
|
|
||||||
// them outright keeps `values` bounded while leaving `max` a bound on
|
|
||||||
// *kept* results.
|
|
||||||
let dropsEmpties = dropEmpties && !m.post.length && !pre;
|
|
||||||
for (let d = 0; dropsEmpties && d < acc.length; d++) {
|
|
||||||
if (acc[d]) {
|
|
||||||
dropsEmpties = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
values = [];
|
values = [];
|
||||||
let valuesLength = 0;
|
for (let j = 0; j < n.length; j++) {
|
||||||
outer: for (let j = 0; j < n.length; j++) {
|
values.push.apply(values, expand_(n[j], max, maxLength, false));
|
||||||
const expanded = expand_(n[j], max, maxLength, false);
|
|
||||||
for (let k = 0; k < expanded.length; k++) {
|
|
||||||
const v = expanded[k];
|
|
||||||
if (dropsEmpties && !v)
|
|
||||||
continue;
|
|
||||||
if (values.length >= max || valuesLength + v.length > maxLength) {
|
|
||||||
break outer;
|
|
||||||
}
|
|
||||||
values.push(v);
|
|
||||||
valuesLength += v.length;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
|
acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
|
||||||
@@ -100300,7 +100150,7 @@ function combine(acc, pre, values, max, maxLength, dropEmpties) {
|
|||||||
}
|
}
|
||||||
// The expansion values of a single numeric (`1..5`) or alphabetic (`a..e..2`)
|
// The expansion values of a single numeric (`1..5`) or alphabetic (`a..e..2`)
|
||||||
// sequence body.
|
// sequence body.
|
||||||
function expandSequence(body, isAlphaSequence, max, maxLength) {
|
function expandSequence(body, isAlphaSequence, max) {
|
||||||
const n = body.split(/\.\./);
|
const n = body.split(/\.\./);
|
||||||
const N = [];
|
const N = [];
|
||||||
// A sequence body always splits into two or three parts, but the compiler
|
// A sequence body always splits into two or three parts, but the compiler
|
||||||
@@ -100323,7 +100173,6 @@ function expandSequence(body, isAlphaSequence, max, maxLength) {
|
|||||||
test = gte;
|
test = gte;
|
||||||
}
|
}
|
||||||
const pad = n.some(isPadded);
|
const pad = n.some(isPadded);
|
||||||
let length = 0;
|
|
||||||
for (let i = x; test(i, y) && N.length < max; i += incr) {
|
for (let i = x; test(i, y) && N.length < max; i += incr) {
|
||||||
let c;
|
let c;
|
||||||
if (isAlphaSequence) {
|
if (isAlphaSequence) {
|
||||||
@@ -100347,10 +100196,7 @@ function expandSequence(body, isAlphaSequence, max, maxLength) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (length + c.length > maxLength)
|
|
||||||
break;
|
|
||||||
N.push(c);
|
N.push(c);
|
||||||
length += c.length;
|
|
||||||
}
|
}
|
||||||
return N;
|
return N;
|
||||||
}
|
}
|
||||||
@@ -100404,7 +100250,7 @@ function expand_(str, max, maxLength, isTop) {
|
|||||||
}
|
}
|
||||||
let values;
|
let values;
|
||||||
if (isSequence) {
|
if (isSequence) {
|
||||||
values = expandSequence(m.body, isAlphaSequence, max, maxLength);
|
values = expandSequence(m.body, isAlphaSequence, max);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
let n = parseCommaParts(m.body);
|
let n = parseCommaParts(m.body);
|
||||||
@@ -100422,31 +100268,9 @@ function expand_(str, max, maxLength, isTop) {
|
|||||||
}
|
}
|
||||||
/* c8 ignore stop */
|
/* c8 ignore stop */
|
||||||
}
|
}
|
||||||
// Values that `combine` is going to drop as empty produce no result, so
|
|
||||||
// they must not count against `max` - otherwise `{a,,b}` with `max: 2`
|
|
||||||
// would stop at `['a', '']` and yield one result instead of two. Skipping
|
|
||||||
// them outright keeps `values` bounded while leaving `max` a bound on
|
|
||||||
// *kept* results.
|
|
||||||
let dropsEmpties = dropEmpties && !m.post.length && !pre;
|
|
||||||
for (let d = 0; dropsEmpties && d < acc.length; d++) {
|
|
||||||
if (acc[d]) {
|
|
||||||
dropsEmpties = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
values = [];
|
values = [];
|
||||||
let valuesLength = 0;
|
for (let j = 0; j < n.length; j++) {
|
||||||
outer: for (let j = 0; j < n.length; j++) {
|
values.push.apply(values, expand_(n[j], max, maxLength, false));
|
||||||
const expanded = expand_(n[j], max, maxLength, false);
|
|
||||||
for (let k = 0; k < expanded.length; k++) {
|
|
||||||
const v = expanded[k];
|
|
||||||
if (dropsEmpties && !v)
|
|
||||||
continue;
|
|
||||||
if (values.length >= max || valuesLength + v.length > maxLength) {
|
|
||||||
break outer;
|
|
||||||
}
|
|
||||||
values.push(v);
|
|
||||||
valuesLength += v.length;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
|
acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length);
|
||||||
|
|||||||
26
package-lock.json
generated
26
package-lock.json
generated
@@ -33,7 +33,7 @@
|
|||||||
"eslint-plugin-n": "^18.1.0",
|
"eslint-plugin-n": "^18.1.0",
|
||||||
"globals": "^17.7.0",
|
"globals": "^17.7.0",
|
||||||
"jest": "^30.4.2",
|
"jest": "^30.4.2",
|
||||||
"prettier": "^3.8.4",
|
"prettier": "^3.9.6",
|
||||||
"ts-jest": "^29.4.11",
|
"ts-jest": "^29.4.11",
|
||||||
"typescript": "^6.0.3"
|
"typescript": "^6.0.3"
|
||||||
},
|
},
|
||||||
@@ -2663,9 +2663,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/brace-expansion": {
|
"node_modules/brace-expansion": {
|
||||||
"version": "5.0.9",
|
"version": "5.0.8",
|
||||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz",
|
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.8.tgz",
|
||||||
"integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==",
|
"integrity": "sha512-JZyDyq3D4AUifKTPOB7DELf6XsB3WdPuNxCtob1vFXPsSXhdAiHBWJ/tJ8HAc9aH84BK+5JFZLNkJKx3G9kzQg==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"balanced-match": "^4.0.2"
|
"balanced-match": "^4.0.2"
|
||||||
@@ -4741,9 +4741,9 @@
|
|||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/js-yaml": {
|
"node_modules/js-yaml": {
|
||||||
"version": "3.15.1",
|
"version": "3.15.0",
|
||||||
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.15.1.tgz",
|
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.15.0.tgz",
|
||||||
"integrity": "sha512-S99WuO3HlhO3XN41EtYUNl9zzXjoJx7QvmipxsJVxtCBT0YHEFy+iOJhjSvrmV12nYhWpZaM8lPHkJm0yUMbag==",
|
"integrity": "sha512-ttBQIIQPDeLjpPOohtUdXuXUVoA2uIB6fEH9HyJ7234s5mBJ5wTx20njxplLZQgLaOfpmPQA7X2t5AX6tIPbog==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -5334,9 +5334,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/prettier": {
|
"node_modules/prettier": {
|
||||||
"version": "3.8.4",
|
"version": "3.9.6",
|
||||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.4.tgz",
|
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.9.6.tgz",
|
||||||
"integrity": "sha512-N2MylSdi48+5N/6S5j+maeHbUSIzzZ5uOcX5Hm4QpV8Dkb1HFjfAKTKX6yNPJQD9AhcT3ifHNB66tWTTJDi11Q==",
|
"integrity": "sha512-OpN0zzVdiaiAhxpuuj5efpIS4sY9j7bY6uR5mnj5yPzGkdkjNKSJeUThPb60Jw29QuAZgA4o+/iB49kFiaBX6g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"bin": {
|
"bin": {
|
||||||
@@ -6038,9 +6038,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/undici": {
|
"node_modules/undici": {
|
||||||
"version": "6.28.0",
|
"version": "6.27.0",
|
||||||
"resolved": "https://registry.npmjs.org/undici/-/undici-6.28.0.tgz",
|
"resolved": "https://registry.npmjs.org/undici/-/undici-6.27.0.tgz",
|
||||||
"integrity": "sha512-LIY910g9TI13YS95lrMFrs8Rm/u/irgHeTWoKCoteeJ04CUJ92eEfj0rVn+7VKMPBpUPiUoBKfhNyLI23EE/KA==",
|
"integrity": "sha512-YmfV3YnEDzXRC5lZ2jWtWWHKGUm1zIt8AhesR1tens+HTNv+YZlN/dp6G727LOvMJ8xjP9Be7Y2Sdr96LDm+pg==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=18.17"
|
"node": ">=18.17"
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
"eslint-plugin-n": "^18.1.0",
|
"eslint-plugin-n": "^18.1.0",
|
||||||
"globals": "^17.7.0",
|
"globals": "^17.7.0",
|
||||||
"jest": "^30.4.2",
|
"jest": "^30.4.2",
|
||||||
"prettier": "^3.8.4",
|
"prettier": "^3.9.6",
|
||||||
"ts-jest": "^29.4.11",
|
"ts-jest": "^29.4.11",
|
||||||
"typescript": "^6.0.3"
|
"typescript": "^6.0.3"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user