PeerTube/package.json

228 lines
7.3 KiB
JSON
Raw Normal View History

2015-06-09 17:41:40 +02:00
{
"name": "peertube",
2021-01-14 09:43:06 +01:00
"description": "PeerTube, an ActivityPub-federated video streaming platform using P2P directly in your web browser.",
2021-05-27 13:56:49 +02:00
"version": "3.2.0",
2015-06-09 17:41:40 +02:00
"private": true,
2019-12-17 15:19:42 +01:00
"licence": "AGPL-3.0",
2015-06-09 17:41:40 +02:00
"engines": {
2021-05-10 09:41:21 +02:00
"node": ">=12.x",
"yarn": ">=1.x"
},
"bin": {
"peertube": "dist/server/tools/peertube.js"
},
"author": {
2018-10-03 16:43:57 +02:00
"name": "Chocobozzz",
2020-11-12 11:12:41 +01:00
"email": "chocobozzz@framasoft.org",
"url": "http://github.com/Chocobozzz"
},
"repository": {
"type": "git",
2018-08-16 10:57:57 +02:00
"url": "git+https://github.com/Chocobozzz/PeerTube.git"
2015-06-09 17:41:40 +02:00
},
"typings": "*.d.ts",
2015-06-09 17:41:40 +02:00
"scripts": {
2021-05-05 10:56:40 +02:00
"e2e": "bash ./scripts/e2e/index.sh",
"e2e:local": "bash ./scripts/e2e/local.sh",
"setup:cli": "bash ./scripts/setup/cli.sh",
"build": "bash ./scripts/build/index.sh",
"build:embed": "bash ./scripts/build/embed.sh",
"build:server": "bash ./scripts/build/server.sh",
"build:client": "bash ./scripts/build/client.sh",
"clean:client": "bash ./scripts/clean/client/index.sh",
"clean:server:test": "bash ./scripts/clean/server/test.sh",
"i18n:update": "bash ./scripts/i18n/update.sh",
2019-07-12 11:39:58 +02:00
"plugin:install": "node ./dist/scripts/plugin/install.js",
"plugin:uninstall": "node ./dist/scripts/plugin/uninstall.js",
2018-06-06 14:23:40 +02:00
"i18n:create-custom-files": "node ./dist/scripts/i18n/create-custom-files.js",
2018-01-26 09:50:43 +01:00
"reset-password": "node ./dist/scripts/reset-password.js",
2021-05-05 10:56:40 +02:00
"dev": "bash ./scripts/dev/index.sh",
"dev:server": "bash ./scripts/dev/server.sh",
"dev:embed": "bash ./scripts/dev/embed.sh",
"dev:client": "bash ./scripts/dev/client.sh",
"dev:cli": "bash ./scripts/dev/cli.sh",
2017-06-10 22:57:31 +02:00
"start": "node dist/server",
2018-11-14 15:27:47 +01:00
"start:server": "node dist/server --no-client",
2018-01-26 09:50:43 +01:00
"update-host": "node ./dist/scripts/update-host.js",
"create-transcoding-job": "node ./dist/scripts/create-transcoding-job.js",
2021-03-12 17:04:49 +01:00
"regenerate-thumbnails": "node ./dist/scripts/regenerate-thumbnails.js",
"create-import-video-file-job": "node ./dist/scripts/create-import-video-file-job.js",
"print-transcode-command": "node ./dist/scripts/print-transcode-command.js",
2021-05-05 10:56:40 +02:00
"test": "bash ./scripts/test.sh",
"help": "bash ./scripts/help.sh",
"generate-cli-doc": "bash ./scripts/generate-cli-doc.sh",
2018-01-26 09:50:43 +01:00
"parse-log": "node ./dist/scripts/parse-log.js",
2018-05-29 11:11:52 +02:00
"prune-storage": "node ./dist/scripts/prune-storage.js",
"optimize-old-videos": "node ./dist/scripts/optimize-old-videos.js",
"postinstall": "test -n \"$NOCLIENT\" || (cd client && yarn install --pure-lockfile)",
2017-06-10 22:57:31 +02:00
"tsc": "tsc",
"commander": "commander",
2019-07-29 11:59:29 +02:00
"lint": "npm run ci -- lint",
"ng": "ng",
2017-06-11 15:19:43 +02:00
"nodemon": "nodemon",
"ts-node": "ts-node",
2020-01-31 16:56:52 +01:00
"eslint": "eslint",
2018-06-07 16:50:33 +02:00
"concurrently": "concurrently",
2018-04-19 16:23:09 +02:00
"mocha": "mocha",
2021-05-05 10:56:40 +02:00
"ci": "bash ./scripts/ci.sh",
"release": "bash ./scripts/release.sh",
"release-embed-api": "bash ./scripts/release-embed-api.sh",
"nightly": "bash ./scripts/nightly.sh",
"openapi-clients": "bash ./scripts/openapi-clients.sh",
"client-report": "bash ./scripts/client-report.sh",
2021-04-28 16:41:07 +02:00
"swagger-cli": "swagger-cli"
},
2015-06-09 17:41:40 +02:00
"dependencies": {
Resumable video uploads (#3933) * WIP: resumable video uploads relates to #324 * fix review comments * video upload: error handling * fix audio upload * fixes after self review * Update server/controllers/api/videos/index.ts Co-authored-by: Rigel Kent <par@rigelk.eu> * Update server/middlewares/validators/videos/videos.ts Co-authored-by: Rigel Kent <par@rigelk.eu> * Update server/controllers/api/videos/index.ts Co-authored-by: Rigel Kent <par@rigelk.eu> * update after code review * refactor upload route - restore multipart upload route - move resumable to dedicated upload-resumable route - move checks to middleware - do not leak internal fs structure in response * fix yarn.lock upon rebase * factorize addVideo for reuse in both endpoints * add resumable upload API to openapi spec * add initial test and test helper for resumable upload * typings for videoAddResumable middleware * avoid including aws and google packages via node-uploadx, by only including uploadx/core * rename ex-isAudioBg to more explicit name mentioning it is a preview file for audio * add video-upload-tmp-folder-cleaner job * stronger typing of video upload middleware * reduce dependency to @uploadx/core * add audio upload test * refactor resumable uploads cleanup from job to scheduler * refactor resumable uploads scheduler to compare to last execution time * make resumable upload validator to always cleanup on failure * move legacy upload request building outside of uploadVideo test helper * filter upload-resumable middlewares down to POST, PUT, DELETE also begin to type metadata * merge add duration functions * stronger typings and documentation for uploadx behaviour, move init validator up * refactor(client/video-edit): options > uploadxOptions * refactor(client/video-edit): remove obsolete else * scheduler/remove-dangling-resum: rename tag * refactor(server/video): add UploadVideoFiles type * refactor(mw/validators): restructure eslint disable * refactor(mw/validators/videos): rename import * refactor(client/vid-upload): rename html elem id * refactor(sched/remove-dangl): move fn to method * refactor(mw/async): add method typing * refactor(mw/vali/video): double quote > single * refactor(server/upload-resum): express use > all * proper http methud enum server/middlewares/async.ts * properly type http methods * factorize common video upload validation steps * add check for maximum partially uploaded file size * fix audioBg use * fix extname(filename) in addVideo * document parameters for uploadx's resumable protocol * clear META files in scheduler * last audio refactor before cramming preview in the initial POST form data * refactor as mulitpart/form-data initial post request this allows preview/thumbnail uploads alongside the initial request, and cleans up the upload form * Add more tests for resumable uploads * Refactor remove dangling resumable uploads * Prepare changelog * Add more resumable upload tests * Remove user quota check for resumable uploads * Fix upload error handler * Update nginx template for upload-resumable * Cleanup comment * Remove unused express methods * Prefer to use got instead of raw http * Don't retry on error 500 Co-authored-by: Rigel Kent <par@rigelk.eu> Co-authored-by: Rigel Kent <sendmemail@rigelk.eu> Co-authored-by: Chocobozzz <me@florianbigard.com>
2021-05-10 11:13:41 +02:00
"@uploadx/core": "^4.4.0",
2021-03-03 15:22:38 +01:00
"apicache": "1.6.2",
2019-06-06 15:39:11 +02:00
"async": "^3.0.1",
2017-07-12 11:56:02 +02:00
"async-lru": "^1.1.1",
2021-03-03 15:22:38 +01:00
"bcrypt": "5.0.1",
"bittorrent-tracker": "^9.0.0",
"bluebird": "^3.5.0",
2015-06-09 17:41:40 +02:00
"body-parser": "^1.12.4",
2018-06-30 09:55:42 +02:00
"bull": "^3.4.2",
2018-09-11 16:27:07 +02:00
"bytes": "^3.0.0",
"chokidar": "^3.4.2",
2021-02-03 09:33:05 +01:00
"commander": "^7.0.0",
2018-12-04 09:34:29 +01:00
"config": "^3.0.0",
2018-06-28 13:59:48 +02:00
"cookie-parser": "^1.4.3",
"cors": "^2.8.1",
2019-07-24 15:48:47 +02:00
"create-torrent": "^4.0.0",
"decache": "^4.6.0",
2018-07-31 14:02:47 +02:00
"deep-object-diff": "^1.1.0",
2021-02-03 09:33:05 +01:00
"email-templates": "^8.0.3",
2015-06-09 17:41:40 +02:00
"express": "^4.12.4",
2020-02-04 10:52:05 +01:00
"express-rate-limit": "^5.0.0",
2020-01-31 16:56:52 +01:00
"express-validator": "^6.4.0",
2019-12-03 14:12:47 +01:00
"flat": "^5.0.0",
2016-05-03 22:41:46 +02:00
"fluent-ffmpeg": "^2.1.0",
2021-05-05 11:08:02 +02:00
"fs-extra": "^10.0.0",
2021-03-08 14:24:11 +01:00
"got": "^11.8.2",
2020-08-25 13:54:59 +02:00
"helmet": "^4.1.0",
2020-11-19 08:58:34 +01:00
"http-signature": "1.3.5",
2019-06-06 15:39:11 +02:00
"ip-anonymize": "^0.1.0",
2020-08-25 13:54:59 +02:00
"ipaddr.js": "2.0.0",
2020-06-17 10:55:40 +02:00
"is-cidr": "^4.0.0",
2021-04-12 16:35:04 +02:00
"iso-639-3": "2.2.0",
2020-08-25 13:54:59 +02:00
"jimp": "^0.16.0",
2021-02-03 09:33:05 +01:00
"js-yaml": "^4.0.0",
2021-04-12 16:35:04 +02:00
"jsonld": "~5.2.0",
2018-05-22 16:02:29 +02:00
"lodash": "^4.17.10",
2020-08-25 13:54:59 +02:00
"lru-cache": "^6.0.0",
2020-11-19 08:58:34 +01:00
"magnet-uri": "^6.1.0",
2021-05-05 11:08:02 +02:00
"markdown-it": "^12.0.4",
2020-11-10 10:09:11 +01:00
"markdown-it-emoji": "^2.0.0",
2018-09-14 11:52:23 +02:00
"memoizee": "^0.4.14",
2015-06-09 17:41:40 +02:00
"morgan": "^1.5.3",
2015-12-04 21:43:26 +01:00
"multer": "^1.1.0",
"node-media-server": "^2.1.4",
2019-04-02 16:42:13 +02:00
"nodemailer": "^6.0.0",
2021-03-12 16:21:56 +01:00
"oauth2-server": "3.1.1",
2020-11-19 08:58:34 +01:00
"parse-torrent": "^9.1.0",
"password-generator": "^2.0.2",
2017-11-09 17:51:58 +01:00
"pem": "^1.12.3",
"pfeed": "1.1.11",
2020-06-17 10:55:40 +02:00
"pg": "^8.2.1",
"prompt": "^1.0.0",
2020-06-17 10:55:40 +02:00
"pug": "^3.0.0",
2020-02-28 16:03:39 +01:00
"redis": "^3.0.2",
2018-12-06 11:50:40 +01:00
"reflect-metadata": "^0.1.12",
"sanitize-html": "2.x",
2021-04-12 16:35:04 +02:00
"sequelize": "6.6.2",
2020-12-08 14:30:29 +01:00
"sequelize-typescript": "^2.0.0-beta.1",
2021-05-05 11:08:02 +02:00
"sitemap": "^7.0.0",
2021-04-12 16:35:04 +02:00
"socket.io": "^4.0.1",
"sql-formatter": "^4.0.0-beta.0",
2018-07-16 14:22:16 +02:00
"srt-to-vtt": "^1.1.2",
2019-10-21 16:02:15 +02:00
"tsconfig-paths": "^3.9.0",
2020-06-05 10:03:53 +02:00
"tslib": "^2.0.0",
"useragent": "^2.3.0",
2020-06-17 10:55:40 +02:00
"uuid": "^8.1.0",
2020-04-01 14:16:19 +02:00
"validator": "^13.0.0",
2017-11-09 17:51:58 +01:00
"webfinger.js": "^2.6.6",
2021-05-05 11:08:02 +02:00
"webtorrent": "^0.118.0",
2020-08-25 13:54:59 +02:00
"winston": "3.3.3",
2019-06-06 15:39:11 +02:00
"ws": "^7.0.0",
2020-01-31 16:56:52 +01:00
"youtube-dl": "^3.0.2"
2015-06-09 17:41:40 +02:00
},
"devDependencies": {
2020-11-19 08:58:34 +01:00
"@openapitools/openapi-generator-cli": "^2.1.4",
"@types/apicache": "^1.2.0",
2019-06-06 15:39:11 +02:00
"@types/async": "^3.0.0",
"@types/async-lock": "^1.1.0",
2018-11-15 10:54:37 +01:00
"@types/bcrypt": "^3.0.0",
2021-05-05 11:08:02 +02:00
"@types/bluebird": "^3.5.33",
2017-05-15 22:22:03 +02:00
"@types/body-parser": "^1.16.3",
2021-05-05 11:08:02 +02:00
"@types/bull": "^3.15.0",
2018-09-11 16:27:07 +02:00
"@types/bytes": "^3.0.0",
2017-09-04 21:21:47 +02:00
"@types/chai": "^4.0.4",
"@types/chai-json-schema": "^1.4.3",
"@types/chai-xml": "^0.3.1",
2021-02-03 09:33:05 +01:00
"@types/config": "^0.0.38",
"@types/express": "4.17.9",
2020-02-28 16:03:39 +01:00
"@types/express-rate-limit": "^5.0.0",
"@types/fluent-ffmpeg": "^2.1.16",
2020-06-17 10:55:40 +02:00
"@types/fs-extra": "^9.0.1",
2017-05-15 22:22:03 +02:00
"@types/lodash": "^4.14.64",
2019-08-09 11:32:40 +02:00
"@types/lru-cache": "^5.1.0",
2017-06-10 22:15:25 +02:00
"@types/magnet-uri": "^5.1.1",
2021-04-12 16:35:04 +02:00
"@types/maildev": "^0.0.2",
2018-09-14 11:52:23 +02:00
"@types/memoizee": "^0.4.2",
2020-02-28 16:03:39 +01:00
"@types/mkdirp": "^1.0.0",
2020-08-25 13:54:59 +02:00
"@types/mocha": "^8.0.3",
2017-05-15 22:22:03 +02:00
"@types/morgan": "^1.7.32",
2017-08-25 18:36:49 +02:00
"@types/multer": "^1.3.3",
2021-03-03 15:22:38 +01:00
"@types/node": "^14.14.31",
2019-06-06 15:39:11 +02:00
"@types/nodemailer": "^6.2.0",
2018-08-27 16:34:41 +02:00
"@types/oauth2-server": "^3.0.8",
2017-11-09 17:51:58 +01:00
"@types/pem": "^1.9.3",
2018-01-30 13:27:07 +01:00
"@types/redis": "^2.8.5",
2017-08-25 18:36:49 +02:00
"@types/request": "^2.0.3",
2017-09-04 21:21:47 +02:00
"@types/supertest": "^2.0.3",
2020-06-17 10:55:40 +02:00
"@types/validator": "^13.0.0",
2020-11-19 08:58:34 +01:00
"@types/webtorrent": "^0.109.0",
2020-01-31 15:05:26 +01:00
"@types/ws": "^7.2.1",
2020-11-19 08:58:34 +01:00
"@typescript-eslint/eslint-plugin": "^4.8.1",
2021-02-22 15:34:32 +01:00
"autocannon": "^7.0.4",
2017-08-25 18:36:49 +02:00
"chai": "^4.1.1",
"chai-json-schema": "^1.5.0",
2020-11-19 08:58:34 +01:00
"chai-xml": "^0.4.0",
2021-03-03 15:22:38 +01:00
"concurrently": "^6.0.0",
2020-06-17 10:55:40 +02:00
"eslint": "^7.2.0",
2021-02-03 09:33:05 +01:00
"eslint-config-standard-with-typescript": "^20.0.0",
2020-01-31 16:56:52 +01:00
"eslint-plugin-import": "^2.20.1",
"eslint-plugin-node": "^11.0.0",
2021-04-12 16:35:04 +02:00
"eslint-plugin-promise": "^5.1.0",
2021-02-03 09:33:05 +01:00
"eslint-plugin-standard": "^5.0.0",
"fast-xml-parser": "^3.19.0",
2018-01-30 15:16:24 +01:00
"maildev": "^1.0.0-rc3",
2021-03-03 15:22:38 +01:00
"marked": "^2.0.1",
2019-10-21 14:50:55 +02:00
"marked-man": "^0.7.0",
2020-06-17 10:55:40 +02:00
"mocha": "^8.0.1",
2019-12-03 14:12:47 +01:00
"nodemon": "^2.0.1",
2021-04-12 16:35:04 +02:00
"socket.io-client": "^4.0.1",
2017-10-09 14:55:13 +02:00
"source-map-support": "^0.5.0",
2020-11-19 08:58:34 +01:00
"supertest": "^6.0.1",
2020-04-01 14:16:19 +02:00
"swagger-cli": "^4.0.2",
2021-02-03 09:33:05 +01:00
"ts-node": "9.1.1",
2020-11-19 08:58:34 +01:00
"typescript": "^4.0.5"
2015-06-09 17:41:40 +02:00
},
2020-08-08 12:01:28 +02:00
"bundlewatch": {
2020-08-05 16:44:48 +02:00
"files": [
{
"path": "client/dist/en-US/*.js",
2020-08-05 16:44:48 +02:00
"maxSize": "1mb"
2020-08-06 10:26:39 +02:00
},
{
"path": "client/dist/standalone/videos/video-embed.bundle.js",
"maxSize": "1mb"
},
{
"path": "client/dist/standalone/videos/video-embed.css",
"maxSize": "1mb"
2020-08-05 16:44:48 +02:00
}
]
}
2015-06-09 17:41:40 +02:00
}