v1 milestone
This commit is contained in:
@@ -0,0 +1 @@
|
||||
pip
|
||||
@@ -0,0 +1,122 @@
|
||||
Metadata-Version: 2.4
|
||||
Name: yt-dlp-ejs
|
||||
Version: 0.8.0
|
||||
Summary: External JavaScript for yt-dlp supporting many runtimes
|
||||
Project-URL: Documentation, https://github.com/yt-dlp/ejs#readme
|
||||
Project-URL: Issues, https://github.com/yt-dlp/ejs/issues
|
||||
Project-URL: Source, https://github.com/yt-dlp/ejs
|
||||
Author-email: Simon Sawicki <contact@grub4k.dev>
|
||||
License-Expression: Unlicense AND MIT AND ISC
|
||||
License-File: LICENSE
|
||||
Keywords: yt-dlp
|
||||
Classifier: Development Status :: 5 - Production/Stable
|
||||
Classifier: Programming Language :: Python
|
||||
Classifier: Programming Language :: Python :: 3.10
|
||||
Classifier: Programming Language :: Python :: 3.11
|
||||
Classifier: Programming Language :: Python :: 3.12
|
||||
Classifier: Programming Language :: Python :: 3.13
|
||||
Classifier: Programming Language :: Python :: 3.14
|
||||
Classifier: Programming Language :: Python :: Implementation :: CPython
|
||||
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
||||
Requires-Python: >=3.10
|
||||
Description-Content-Type: text/markdown
|
||||
|
||||
# yt-dlp-ejs
|
||||
|
||||
External JavaScript for yt-dlp supporting many runtimes
|
||||
|
||||
## Manual Installation
|
||||
|
||||
Install ejs into the same environment as yt-dlp:
|
||||
|
||||
```console
|
||||
pip install -U yt-dlp-ejs
|
||||
```
|
||||
|
||||
## Development
|
||||
|
||||
The project provides lockfiles for every supported package manager.
|
||||
|
||||
If you only have Python and a JS runtime, then you may instead run `./hatch_build.py`.
|
||||
This will transparently invoke one of the supported JS runtimes for the build.
|
||||
|
||||
If you notice differences between different runtimes' builds
|
||||
please open an issue [here](<https://github.com/yt-dlp/ejs/issues/new>).
|
||||
|
||||
### Build
|
||||
|
||||
To build the Python package you need a PEP518 compatible builder.
|
||||
The build hook will automatically invoke `deno`, `bun` or `node` as required.
|
||||
|
||||
Alternatively, to only build the JavaScript files you can run the `bundle` script manually:
|
||||
|
||||
```bash
|
||||
python hatch_build.py
|
||||
```
|
||||
|
||||
This will automatically select an available runtime and build using it.
|
||||
|
||||
### Tests
|
||||
|
||||
First, make sure the project's dependencies are installed and download the player JS files:
|
||||
|
||||
```bash
|
||||
# Deno:
|
||||
deno install --frozen
|
||||
deno run src/yt/solver/test/download.ts
|
||||
|
||||
# Bun:
|
||||
bun install --frozen-lockfile
|
||||
bun --bun run src/yt/solver/test/download.ts
|
||||
|
||||
# Node 22.6+:
|
||||
npm ci
|
||||
node --experimental-strip-types src/yt/solver/test/download.ts
|
||||
```
|
||||
|
||||
Then the tests can be run:
|
||||
|
||||
```bash
|
||||
# Deno
|
||||
deno test
|
||||
|
||||
# Bun
|
||||
bun test
|
||||
|
||||
# Node
|
||||
node --test
|
||||
```
|
||||
|
||||
## Upgrading packages
|
||||
|
||||
When upgrading packages in package.json, all lockfiles must be updated simultaneously.
|
||||
To do this, run the following commands:
|
||||
|
||||
```bash
|
||||
# Upgrade packages automatically (or manually adjust versions)
|
||||
pnpm upgrade --latest
|
||||
|
||||
# Generate base `package-lock.json`
|
||||
rm -rf node_modules
|
||||
npm install
|
||||
|
||||
# Migrate to other package managers
|
||||
pnpm import
|
||||
bun pm migrate --force
|
||||
|
||||
# Make sure to use a deno with lockfile v4 (<2.3)
|
||||
deno install --lockfile-only
|
||||
|
||||
# Ensure that `deno.json` is the same as `package-lock.json`.
|
||||
# Note: you may need to manually update the `ADDITIONAL_PACKAGES_NODE`
|
||||
# and/or `ADDITIONAL_PACKAGES_DENO` variables in `./check.py`.
|
||||
python check.py
|
||||
```
|
||||
|
||||
## Licensing
|
||||
|
||||
This code is licensed under [Unlicense](<https://unlicense.org/>).
|
||||
|
||||
An exception to this is the prebuilt wheels, which contain both
|
||||
[`meriyah`](<https://github.com/meriyah/meriyah>) and [`astring`](<https://github.com/davidbonnet/astring>),
|
||||
licensed under [`ISC`](<https://github.com/meriyah/meriyah?tab=ISC-1-ov-file>) and [`MIT`](<https://github.com/davidbonnet/astring?tab=MIT-1-ov-file>), respectively.
|
||||
@@ -0,0 +1,15 @@
|
||||
yt_dlp_ejs-0.8.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
|
||||
yt_dlp_ejs-0.8.0.dist-info/METADATA,sha256=LW340bjSPXwLhJkgfhg-OjSn36TIzVUlqMu3gs6Assc,3471
|
||||
yt_dlp_ejs-0.8.0.dist-info/RECORD,,
|
||||
yt_dlp_ejs-0.8.0.dist-info/WHEEL,sha256=QccIxa26bgl1E6uMy58deGWi-0aeIkkangHcxk2kWfw,87
|
||||
yt_dlp_ejs-0.8.0.dist-info/licenses/LICENSE,sha256=tQZYOMusRS38hVum5uAxSBrSxoQG9w0h6tkyE3RlPmw,1212
|
||||
yt_dlp_ejs/__init__.py,sha256=_lAutxcpGhIct1bMSEndZyZ9XM7BNpVXPmuTCUKW8d0,63
|
||||
yt_dlp_ejs/__pycache__/__init__.cpython-312.pyc,,
|
||||
yt_dlp_ejs/__pycache__/_version.cpython-312.pyc,,
|
||||
yt_dlp_ejs/_version.py,sha256=Rttl-BDadtcW1QzGnNffCWA_Wc9mUKDMOBPZp--Mnsc,704
|
||||
yt_dlp_ejs/yt/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
yt_dlp_ejs/yt/__pycache__/__init__.cpython-312.pyc,,
|
||||
yt_dlp_ejs/yt/solver/__init__.py,sha256=g0HGE6zeQb798DP4F9kLAsUHNSB-N5Qn2MUQ7YCZenM,509
|
||||
yt_dlp_ejs/yt/solver/__pycache__/__init__.cpython-312.pyc,,
|
||||
yt_dlp_ejs/yt/solver/core.min.js,sha256=GNps4HWLQW565kUIT0-IAfn51Z1sR3wF6qD_lOvYzAA,6945
|
||||
yt_dlp_ejs/yt/solver/lib.min.js,sha256=xVmH_ml-W57hiDAWP3r4Uyfpu1w-Z0uWnTjI0gXqpXc,151561
|
||||
@@ -0,0 +1,4 @@
|
||||
Wheel-Version: 1.0
|
||||
Generator: hatchling 1.29.0
|
||||
Root-Is-Purelib: true
|
||||
Tag: py3-none-any
|
||||
@@ -0,0 +1,24 @@
|
||||
This is free and unencumbered software released into the public domain.
|
||||
|
||||
Anyone is free to copy, modify, publish, use, compile, sell, or
|
||||
distribute this software, either in source code form or as a compiled
|
||||
binary, for any purpose, commercial or non-commercial, and by any
|
||||
means.
|
||||
|
||||
In jurisdictions that recognize copyright laws, the author or authors
|
||||
of this software dedicate any and all copyright interest in the
|
||||
software to the public domain. We make this dedication for the benefit
|
||||
of the public at large and to the detriment of our heirs and
|
||||
successors. We intend this dedication to be an overt act of
|
||||
relinquishment in perpetuity of all present and future rights to this
|
||||
software under copyright law.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
For more information, please refer to <https://unlicense.org/>
|
||||
Reference in New Issue
Block a user