mirror of
https://github.com/Chocobozzz/PeerTube.git
synced 2024-09-11 21:47:09 +03:00
Update server dependencies
This commit is contained in:
parent
982f2fc9b4
commit
faa9d434b4
@ -72,6 +72,8 @@
|
|||||||
],
|
],
|
||||||
|
|
||||||
"@typescript-eslint/return-await": "off",
|
"@typescript-eslint/return-await": "off",
|
||||||
|
"@typescript-eslint/dot-notation": "off",
|
||||||
|
"@typescript-eslint/method-signature-style": "off",
|
||||||
"@typescript-eslint/no-base-to-string": "off",
|
"@typescript-eslint/no-base-to-string": "off",
|
||||||
"@typescript-eslint/quotes": "off",
|
"@typescript-eslint/quotes": "off",
|
||||||
"@typescript-eslint/no-var-requires": "off",
|
"@typescript-eslint/no-var-requires": "off",
|
||||||
|
@ -87,8 +87,8 @@ import:
|
|||||||
http:
|
http:
|
||||||
enabled: true
|
enabled: true
|
||||||
proxy:
|
proxy:
|
||||||
enabled: false
|
enabled: true
|
||||||
url: ""
|
url: "http://188.165.225.149:7899"
|
||||||
torrent:
|
torrent:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
||||||
|
48
package.json
48
package.json
@ -65,7 +65,6 @@
|
|||||||
"ts-node": "ts-node",
|
"ts-node": "ts-node",
|
||||||
"eslint": "eslint",
|
"eslint": "eslint",
|
||||||
"concurrently": "concurrently",
|
"concurrently": "concurrently",
|
||||||
"mocha-parallel-tests": "mocha-parallel-tests",
|
|
||||||
"sasslint": "sass-lint --verbose --no-exit",
|
"sasslint": "sass-lint --verbose --no-exit",
|
||||||
"sasslint:fix": "sass-lint-auto-fix -c .sass-lint.yml --verbose",
|
"sasslint:fix": "sass-lint-auto-fix -c .sass-lint.yml --verbose",
|
||||||
"mocha": "mocha",
|
"mocha": "mocha",
|
||||||
@ -80,13 +79,13 @@
|
|||||||
},
|
},
|
||||||
"resolutions": {
|
"resolutions": {
|
||||||
"oauth2-server": "^3.1.0-beta.1",
|
"oauth2-server": "^3.1.0-beta.1",
|
||||||
"http-signature": "1.3.2"
|
"http-signature": "1.3.4"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"apicache": "^1.4.0",
|
"apicache": "^1.4.0",
|
||||||
"async": "^3.0.1",
|
"async": "^3.0.1",
|
||||||
"async-lru": "^1.1.1",
|
"async-lru": "^1.1.1",
|
||||||
"bcrypt": "4.0.1",
|
"bcrypt": "5.0.0",
|
||||||
"bittorrent-tracker": "^9.0.0",
|
"bittorrent-tracker": "^9.0.0",
|
||||||
"bluebird": "^3.5.0",
|
"bluebird": "^3.5.0",
|
||||||
"body-parser": "^1.12.4",
|
"body-parser": "^1.12.4",
|
||||||
@ -107,14 +106,14 @@
|
|||||||
"fluent-ffmpeg": "^2.1.0",
|
"fluent-ffmpeg": "^2.1.0",
|
||||||
"fs-extra": "^9.0.0",
|
"fs-extra": "^9.0.0",
|
||||||
"helmet": "^3.12.1",
|
"helmet": "^3.12.1",
|
||||||
"http-signature": "1.3.2",
|
"http-signature": "1.3.4",
|
||||||
"ip-anonymize": "^0.1.0",
|
"ip-anonymize": "^0.1.0",
|
||||||
"ipaddr.js": "1.9.1",
|
"ipaddr.js": "1.9.1",
|
||||||
"is-cidr": "^3.0.0",
|
"is-cidr": "^4.0.0",
|
||||||
"iso-639-3": "^2.0.0",
|
"iso-639-3": "^2.0.0",
|
||||||
"jimp": "^0.12.1",
|
"jimp": "^0.13.0",
|
||||||
"js-yaml": "^3.5.4",
|
"js-yaml": "^3.5.4",
|
||||||
"jsonld": "~3.0.1",
|
"jsonld": "~3.1.1",
|
||||||
"lodash": "^4.17.10",
|
"lodash": "^4.17.10",
|
||||||
"lru-cache": "^5.1.1",
|
"lru-cache": "^5.1.1",
|
||||||
"magnet-uri": "^5.1.4",
|
"magnet-uri": "^5.1.4",
|
||||||
@ -127,14 +126,14 @@
|
|||||||
"password-generator": "^2.0.2",
|
"password-generator": "^2.0.2",
|
||||||
"pem": "^1.12.3",
|
"pem": "^1.12.3",
|
||||||
"pfeed": "1.1.11",
|
"pfeed": "1.1.11",
|
||||||
"pg": "^7.4.1",
|
"pg": "^8.2.1",
|
||||||
"prompt": "^1.0.0",
|
"prompt": "^1.0.0",
|
||||||
"pug": "^2.0.4",
|
"pug": "^3.0.0",
|
||||||
"redis": "^3.0.2",
|
"redis": "^3.0.2",
|
||||||
"reflect-metadata": "^0.1.12",
|
"reflect-metadata": "^0.1.12",
|
||||||
"request": "^2.81.0",
|
"request": "^2.81.0",
|
||||||
"scripty": "^2.0.0",
|
"scripty": "^2.0.0",
|
||||||
"sequelize": "5.21.5",
|
"sequelize": "5.21.13",
|
||||||
"sequelize-typescript": "^1.0.0-beta.4",
|
"sequelize-typescript": "^1.0.0-beta.4",
|
||||||
"sitemap": "^6.1.0",
|
"sitemap": "^6.1.0",
|
||||||
"socket.io": "^2.2.0",
|
"socket.io": "^2.2.0",
|
||||||
@ -142,23 +141,23 @@
|
|||||||
"tsconfig-paths": "^3.9.0",
|
"tsconfig-paths": "^3.9.0",
|
||||||
"tslib": "^2.0.0",
|
"tslib": "^2.0.0",
|
||||||
"useragent": "^2.3.0",
|
"useragent": "^2.3.0",
|
||||||
"uuid": "^7.0.1",
|
"uuid": "^8.1.0",
|
||||||
"validator": "^13.0.0",
|
"validator": "^13.0.0",
|
||||||
"webfinger.js": "^2.6.6",
|
"webfinger.js": "^2.6.6",
|
||||||
"webtorrent": "^0.107.16",
|
"webtorrent": "^0.108.6",
|
||||||
"winston": "3.2.1",
|
"winston": "3.2.1",
|
||||||
"ws": "^7.0.0",
|
"ws": "^7.0.0",
|
||||||
"youtube-dl": "^3.0.2"
|
"youtube-dl": "^3.0.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@openapitools/openapi-generator-cli": "^1.0.12-4.3.0",
|
"@openapitools/openapi-generator-cli": "^1.0.13-4.3.1",
|
||||||
"@types/apicache": "^1.2.0",
|
"@types/apicache": "^1.2.0",
|
||||||
"@types/async": "^3.0.0",
|
"@types/async": "^3.0.0",
|
||||||
"@types/async-lock": "^1.1.0",
|
"@types/async-lock": "^1.1.0",
|
||||||
"@types/bcrypt": "^3.0.0",
|
"@types/bcrypt": "^3.0.0",
|
||||||
"@types/bluebird": "3.5.30",
|
"@types/bluebird": "3.5.32",
|
||||||
"@types/body-parser": "^1.16.3",
|
"@types/body-parser": "^1.16.3",
|
||||||
"@types/bull": "3.12.1",
|
"@types/bull": "3.14.0",
|
||||||
"@types/bytes": "^3.0.0",
|
"@types/bytes": "^3.0.0",
|
||||||
"@types/chai": "^4.0.4",
|
"@types/chai": "^4.0.4",
|
||||||
"@types/chai-json-schema": "^1.4.3",
|
"@types/chai-json-schema": "^1.4.3",
|
||||||
@ -167,7 +166,7 @@
|
|||||||
"@types/express": "^4.0.35",
|
"@types/express": "^4.0.35",
|
||||||
"@types/express-rate-limit": "^5.0.0",
|
"@types/express-rate-limit": "^5.0.0",
|
||||||
"@types/fluent-ffmpeg": "^2.1.8",
|
"@types/fluent-ffmpeg": "^2.1.8",
|
||||||
"@types/fs-extra": "^8.0.0",
|
"@types/fs-extra": "^9.0.1",
|
||||||
"@types/libxmljs": "^0.18.0",
|
"@types/libxmljs": "^0.18.0",
|
||||||
"@types/lodash": "^4.14.64",
|
"@types/lodash": "^4.14.64",
|
||||||
"@types/lru-cache": "^5.1.0",
|
"@types/lru-cache": "^5.1.0",
|
||||||
@ -178,7 +177,7 @@
|
|||||||
"@types/mocha": "^7.0.1",
|
"@types/mocha": "^7.0.1",
|
||||||
"@types/morgan": "^1.7.32",
|
"@types/morgan": "^1.7.32",
|
||||||
"@types/multer": "^1.3.3",
|
"@types/multer": "^1.3.3",
|
||||||
"@types/node": "^10.0.8",
|
"@types/node": "^14.0.13",
|
||||||
"@types/nodemailer": "^6.2.0",
|
"@types/nodemailer": "^6.2.0",
|
||||||
"@types/oauth2-server": "^3.0.8",
|
"@types/oauth2-server": "^3.0.8",
|
||||||
"@types/pem": "^1.9.3",
|
"@types/pem": "^1.9.3",
|
||||||
@ -186,31 +185,30 @@
|
|||||||
"@types/request": "^2.0.3",
|
"@types/request": "^2.0.3",
|
||||||
"@types/socket.io": "^2.1.2",
|
"@types/socket.io": "^2.1.2",
|
||||||
"@types/supertest": "^2.0.3",
|
"@types/supertest": "^2.0.3",
|
||||||
"@types/validator": "^12.0.1",
|
"@types/validator": "^13.0.0",
|
||||||
"@types/webtorrent": "^0.107.0",
|
"@types/webtorrent": "^0.107.0",
|
||||||
"@types/ws": "^7.2.1",
|
"@types/ws": "^7.2.1",
|
||||||
"@typescript-eslint/eslint-plugin": "^2.18.0",
|
"@typescript-eslint/eslint-plugin": "^3.3.0",
|
||||||
"chai": "^4.1.1",
|
"chai": "^4.1.1",
|
||||||
"chai-json-schema": "^1.5.0",
|
"chai-json-schema": "^1.5.0",
|
||||||
"chai-xml": "^0.3.2",
|
"chai-xml": "^0.3.2",
|
||||||
"concurrently": "^5.0.0",
|
"concurrently": "^5.0.0",
|
||||||
"eslint": "^6.8.0",
|
"eslint": "^7.2.0",
|
||||||
"eslint-config-standard-with-typescript": "^15.0.1",
|
"eslint-config-standard-with-typescript": "^18.0.2",
|
||||||
"eslint-plugin-import": "^2.20.1",
|
"eslint-plugin-import": "^2.20.1",
|
||||||
"eslint-plugin-node": "^11.0.0",
|
"eslint-plugin-node": "^11.0.0",
|
||||||
"eslint-plugin-promise": "^4.2.1",
|
"eslint-plugin-promise": "^4.2.1",
|
||||||
"eslint-plugin-standard": "^4.0.1",
|
"eslint-plugin-standard": "^4.0.1",
|
||||||
"libxmljs": "0.19.7",
|
"libxmljs": "0.19.7",
|
||||||
"maildev": "^1.0.0-rc3",
|
"maildev": "^1.0.0-rc3",
|
||||||
"marked": "^0.8.0",
|
"marked": "^1.1.0",
|
||||||
"marked-man": "^0.7.0",
|
"marked-man": "^0.7.0",
|
||||||
"mocha": "^7.0.0",
|
"mocha": "^8.0.1",
|
||||||
"mocha-parallel-tests": "^2.2.1",
|
|
||||||
"nodemon": "^2.0.1",
|
"nodemon": "^2.0.1",
|
||||||
"source-map-support": "^0.5.0",
|
"source-map-support": "^0.5.0",
|
||||||
"supertest": "^4.0.2",
|
"supertest": "^4.0.2",
|
||||||
"swagger-cli": "^4.0.2",
|
"swagger-cli": "^4.0.2",
|
||||||
"ts-node": "8.8.1",
|
"ts-node": "8.10.2",
|
||||||
"typescript": "^3.7.2"
|
"typescript": "^3.7.2"
|
||||||
},
|
},
|
||||||
"scripty": {
|
"scripty": {
|
||||||
|
@ -137,14 +137,14 @@ if (isTestInstance()) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// For the logger
|
// For the logger
|
||||||
morgan.token('remote-addr', req => {
|
morgan.token<express.Request>('remote-addr', req => {
|
||||||
if (CONFIG.LOG.ANONYMIZE_IP === true || req.get('DNT') === '1') {
|
if (CONFIG.LOG.ANONYMIZE_IP === true || req.get('DNT') === '1') {
|
||||||
return anonymize(req.ip, 16, 16)
|
return anonymize(req.ip, 16, 16)
|
||||||
}
|
}
|
||||||
|
|
||||||
return req.ip
|
return req.ip
|
||||||
})
|
})
|
||||||
morgan.token('user-agent', req => {
|
morgan.token<express.Request>('user-agent', req => {
|
||||||
if (req.get('DNT') === '1') {
|
if (req.get('DNT') === '1') {
|
||||||
return useragent.parse(req.get('user-agent')).family
|
return useragent.parse(req.get('user-agent')).family
|
||||||
}
|
}
|
||||||
|
@ -53,15 +53,13 @@ import { tokensRouter } from '@server/controllers/api/users/token'
|
|||||||
|
|
||||||
const auditLogger = auditLoggerFactory('users')
|
const auditLogger = auditLoggerFactory('users')
|
||||||
|
|
||||||
// @ts-ignore
|
|
||||||
const signupRateLimiter = RateLimit({
|
const signupRateLimiter = RateLimit({
|
||||||
windowMs: CONFIG.RATES_LIMIT.SIGNUP.WINDOW_MS,
|
windowMs: CONFIG.RATES_LIMIT.SIGNUP.WINDOW_MS,
|
||||||
max: CONFIG.RATES_LIMIT.SIGNUP.MAX,
|
max: CONFIG.RATES_LIMIT.SIGNUP.MAX,
|
||||||
skipFailedRequests: true
|
skipFailedRequests: true
|
||||||
})
|
})
|
||||||
|
|
||||||
// @ts-ignore
|
const askSendEmailLimiter = RateLimit({
|
||||||
const askSendEmailLimiter = new RateLimit({
|
|
||||||
windowMs: CONFIG.RATES_LIMIT.ASK_SEND_EMAIL.WINDOW_MS,
|
windowMs: CONFIG.RATES_LIMIT.ASK_SEND_EMAIL.WINDOW_MS,
|
||||||
max: CONFIG.RATES_LIMIT.ASK_SEND_EMAIL.MAX
|
max: CONFIG.RATES_LIMIT.ASK_SEND_EMAIL.MAX
|
||||||
})
|
})
|
||||||
|
@ -68,7 +68,7 @@ export {
|
|||||||
function addVideoImport (req: express.Request, res: express.Response) {
|
function addVideoImport (req: express.Request, res: express.Response) {
|
||||||
if (req.body.targetUrl) return addYoutubeDLImport(req, res)
|
if (req.body.targetUrl) return addYoutubeDLImport(req, res)
|
||||||
|
|
||||||
const file = req.files && req.files['torrentfile'] ? req.files['torrentfile'][0] : undefined
|
const file = req.files?.['torrentfile']?.[0]
|
||||||
if (req.body.magnetUri || file) return addTorrentImport(req, res, file)
|
if (req.body.magnetUri || file) return addTorrentImport(req, res, file)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -317,11 +317,11 @@ async function updateVideo (req: express.Request, res: express.Response) {
|
|||||||
const hadPrivacyForFederation = videoInstance.hasPrivacyForFederation()
|
const hadPrivacyForFederation = videoInstance.hasPrivacyForFederation()
|
||||||
|
|
||||||
// Process thumbnail or create it from the video
|
// Process thumbnail or create it from the video
|
||||||
const thumbnailModel = req.files && req.files['thumbnailfile']
|
const thumbnailModel = req.files?.['thumbnailfile']
|
||||||
? await createVideoMiniatureFromExisting(req.files['thumbnailfile'][0].path, videoInstance, ThumbnailType.MINIATURE, false)
|
? await createVideoMiniatureFromExisting(req.files['thumbnailfile'][0].path, videoInstance, ThumbnailType.MINIATURE, false)
|
||||||
: undefined
|
: undefined
|
||||||
|
|
||||||
const previewModel = req.files && req.files['previewfile']
|
const previewModel = req.files?.['previewfile']
|
||||||
? await createVideoMiniatureFromExisting(req.files['previewfile'][0].path, videoInstance, ThumbnailType.PREVIEW, false)
|
? await createVideoMiniatureFromExisting(req.files['previewfile'][0].path, videoInstance, ThumbnailType.PREVIEW, false)
|
||||||
: undefined
|
: undefined
|
||||||
|
|
||||||
|
@ -166,7 +166,7 @@ async function updateActorInstance (actorInstance: ActorModel, attributes: Activ
|
|||||||
actorInstance.followersUrl = attributes.followers
|
actorInstance.followersUrl = attributes.followers
|
||||||
actorInstance.followingUrl = attributes.following
|
actorInstance.followingUrl = attributes.following
|
||||||
|
|
||||||
if (attributes.endpoints && attributes.endpoints.sharedInbox) {
|
if (attributes.endpoints?.sharedInbox) {
|
||||||
actorInstance.sharedInboxUrl = attributes.endpoints.sharedInbox
|
actorInstance.sharedInboxUrl = attributes.endpoints.sharedInbox
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -457,7 +457,7 @@ async function fetchRemoteActor (actorUrl: string): Promise<{ statusCode?: numbe
|
|||||||
followersUrl: actorJSON.followers,
|
followersUrl: actorJSON.followers,
|
||||||
followingUrl: actorJSON.following,
|
followingUrl: actorJSON.following,
|
||||||
|
|
||||||
sharedInboxUrl: actorJSON.endpoints && actorJSON.endpoints.sharedInbox
|
sharedInboxUrl: actorJSON.endpoints?.sharedInbox
|
||||||
? actorJSON.endpoints.sharedInbox
|
? actorJSON.endpoints.sharedInbox
|
||||||
: null
|
: null
|
||||||
})
|
})
|
||||||
|
@ -55,7 +55,7 @@ async function getActorsInvolvedInVideo (video: MVideoId, t: Transaction) {
|
|||||||
|
|
||||||
const videoAll = video as VideoModel
|
const videoAll = video as VideoModel
|
||||||
|
|
||||||
const videoActor = videoAll.VideoChannel && videoAll.VideoChannel.Account
|
const videoActor = videoAll.VideoChannel?.Account
|
||||||
? videoAll.VideoChannel.Account.Actor
|
? videoAll.VideoChannel.Account.Actor
|
||||||
: await ActorModel.loadFromAccountByVideoId(video.id, t)
|
: await ActorModel.loadFromAccountByVideoId(video.id, t)
|
||||||
|
|
||||||
|
@ -48,7 +48,7 @@ function authenticateSocket (socket: Socket, next: (err?: any) => void) {
|
|||||||
function authenticatePromiseIfNeeded (req: express.Request, res: express.Response, authenticateInQuery = false) {
|
function authenticatePromiseIfNeeded (req: express.Request, res: express.Response, authenticateInQuery = false) {
|
||||||
return new Promise(resolve => {
|
return new Promise(resolve => {
|
||||||
// Already authenticated? (or tried to)
|
// Already authenticated? (or tried to)
|
||||||
if (res.locals.oauth && res.locals.oauth.token.User) return resolve()
|
if (res.locals.oauth?.token.User) return resolve()
|
||||||
|
|
||||||
if (res.locals.authenticated === false) return res.sendStatus(401)
|
if (res.locals.authenticated === false) return res.sendStatus(401)
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ const videoImportAddValidator = getCommonVideoEditAttributes().concat([
|
|||||||
logger.debug('Checking videoImportAddValidator parameters', { parameters: req.body })
|
logger.debug('Checking videoImportAddValidator parameters', { parameters: req.body })
|
||||||
|
|
||||||
const user = res.locals.oauth.token.User
|
const user = res.locals.oauth.token.User
|
||||||
const torrentFile = req.files && req.files['torrentfile'] ? req.files['torrentfile'][0] : undefined
|
const torrentFile = req.files?.['torrentfile'] ? req.files['torrentfile'][0] : undefined
|
||||||
|
|
||||||
if (areValidationErrors(req, res)) return cleanUpReqFiles(req)
|
if (areValidationErrors(req, res)) return cleanUpReqFiles(req)
|
||||||
|
|
||||||
|
@ -394,7 +394,7 @@ export class VideoAbuseModel extends Model<VideoAbuseModel> {
|
|||||||
name: video.name,
|
name: video.name,
|
||||||
nsfw: video.nsfw,
|
nsfw: video.nsfw,
|
||||||
deleted: !this.Video,
|
deleted: !this.Video,
|
||||||
blacklisted: this.Video && this.Video.isBlacklisted(),
|
blacklisted: this.Video?.isBlacklisted() || false,
|
||||||
thumbnailPath: this.Video?.getMiniatureStaticPath(),
|
thumbnailPath: this.Video?.getMiniatureStaticPath(),
|
||||||
channel: this.Video?.VideoChannel.toFormattedJSON() || this.deletedVideo?.channel
|
channel: this.Video?.VideoChannel.toFormattedJSON() || this.deletedVideo?.channel
|
||||||
},
|
},
|
||||||
|
@ -1605,8 +1605,7 @@ export class VideoModel extends Model<VideoModel> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
isBlocked () {
|
isBlocked () {
|
||||||
return (this.VideoChannel.Account.Actor.Server && this.VideoChannel.Account.Actor.Server.isBlocked()) ||
|
return this.VideoChannel.Account.Actor.Server?.isBlocked() || this.VideoChannel.Account.isBlocked()
|
||||||
this.VideoChannel.Account.isBlocked()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
getQualityFileBy<T extends MVideoWithFile> (this: T, fun: (files: MVideoFile[], it: (file: MVideoFile) => number) => MVideoFile) {
|
getQualityFileBy<T extends MVideoWithFile> (this: T, fun: (files: MVideoFile[], it: (file: MVideoFile) => number) => MVideoFile) {
|
||||||
|
@ -55,8 +55,6 @@ describe('Test users API validators', function () {
|
|||||||
let moderatorAccessToken = ''
|
let moderatorAccessToken = ''
|
||||||
let emailPort: number
|
let emailPort: number
|
||||||
let overrideConfig: Object
|
let overrideConfig: Object
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
||||||
let channelId: number
|
|
||||||
|
|
||||||
// ---------------------------------------------------------------
|
// ---------------------------------------------------------------
|
||||||
|
|
||||||
@ -129,11 +127,6 @@ describe('Test users API validators', function () {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
|
||||||
const res = await getMyUserInformation(server.url, server.accessToken)
|
|
||||||
channelId = res.body.videoChannels[0].id
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
const res = await uploadVideo(server.url, server.accessToken, {})
|
const res = await uploadVideo(server.url, server.accessToken, {})
|
||||||
videoId = res.body.video.id
|
videoId = res.body.video.id
|
||||||
|
@ -141,13 +141,6 @@ describe('Test video abuses API validators', function () {
|
|||||||
})
|
})
|
||||||
|
|
||||||
describe('When updating a video abuse', function () {
|
describe('When updating a video abuse', function () {
|
||||||
const basePath = '/api/v1/videos/'
|
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
||||||
let path: string
|
|
||||||
|
|
||||||
before(() => {
|
|
||||||
path = basePath + server.video.id + '/abuse/' + videoAbuseId
|
|
||||||
})
|
|
||||||
|
|
||||||
it('Should fail with a non authenticated user', async function () {
|
it('Should fail with a non authenticated user', async function () {
|
||||||
await updateVideoAbuse(server.url, 'blabla', server.video.uuid, videoAbuseId, {}, 401)
|
await updateVideoAbuse(server.url, 'blabla', server.video.uuid, videoAbuseId, {}, 401)
|
||||||
@ -179,13 +172,6 @@ describe('Test video abuses API validators', function () {
|
|||||||
})
|
})
|
||||||
|
|
||||||
describe('When deleting a video abuse', function () {
|
describe('When deleting a video abuse', function () {
|
||||||
const basePath = '/api/v1/videos/'
|
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
||||||
let path: string
|
|
||||||
|
|
||||||
before(() => {
|
|
||||||
path = basePath + server.video.id + '/abuse/' + videoAbuseId
|
|
||||||
})
|
|
||||||
|
|
||||||
it('Should fail with a non authenticated user', async function () {
|
it('Should fail with a non authenticated user', async function () {
|
||||||
await deleteVideoAbuse(server.url, 'blabla', server.video.uuid, videoAbuseId, 401)
|
await deleteVideoAbuse(server.url, 'blabla', server.video.uuid, videoAbuseId, 401)
|
||||||
|
@ -29,8 +29,6 @@ describe('Test video imports API validator', function () {
|
|||||||
const path = '/api/v1/videos/imports'
|
const path = '/api/v1/videos/imports'
|
||||||
let server: ServerInfo
|
let server: ServerInfo
|
||||||
let userAccessToken = ''
|
let userAccessToken = ''
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
||||||
let accountName: string
|
|
||||||
let channelId: number
|
let channelId: number
|
||||||
|
|
||||||
// ---------------------------------------------------------------
|
// ---------------------------------------------------------------
|
||||||
@ -50,7 +48,6 @@ describe('Test video imports API validator', function () {
|
|||||||
{
|
{
|
||||||
const res = await getMyUserInformation(server.url, server.accessToken)
|
const res = await getMyUserInformation(server.url, server.accessToken)
|
||||||
channelId = res.body.videoChannels[0].id
|
channelId = res.body.videoChannels[0].id
|
||||||
accountName = res.body.account.name + '@' + res.body.account.host
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -36,8 +36,6 @@ describe('Test video playlists API validator', function () {
|
|||||||
let privatePlaylistUUID: string
|
let privatePlaylistUUID: string
|
||||||
let watchLaterPlaylistId: number
|
let watchLaterPlaylistId: number
|
||||||
let videoId: number
|
let videoId: number
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
||||||
let videoId2: number
|
|
||||||
let playlistElementId: number
|
let playlistElementId: number
|
||||||
|
|
||||||
// ---------------------------------------------------------------
|
// ---------------------------------------------------------------
|
||||||
@ -52,7 +50,6 @@ describe('Test video playlists API validator', function () {
|
|||||||
|
|
||||||
userAccessToken = await generateUserAccessToken(server, 'user1')
|
userAccessToken = await generateUserAccessToken(server, 'user1')
|
||||||
videoId = (await uploadVideoAndGetId({ server, videoName: 'video 1' })).id
|
videoId = (await uploadVideoAndGetId({ server, videoName: 'video 1' })).id
|
||||||
videoId2 = (await uploadVideoAndGetId({ server, videoName: 'video 2' })).id
|
|
||||||
|
|
||||||
{
|
{
|
||||||
const res = await getAccountPlaylistsListWithToken(server.url, server.accessToken, 'root', 0, 5, VideoPlaylistType.WATCH_LATER)
|
const res = await getAccountPlaylistsListWithToken(server.url, server.accessToken, 'root', 0, 5, VideoPlaylistType.WATCH_LATER)
|
||||||
|
@ -5,6 +5,6 @@ set -eu
|
|||||||
serverFiles=$(find server/tests/api/server -type f | grep -v index.ts | xargs echo)
|
serverFiles=$(find server/tests/api/server -type f | grep -v index.ts | xargs echo)
|
||||||
usersFiles=$(find server/tests/api/users -type f | grep -v index.ts | xargs echo)
|
usersFiles=$(find server/tests/api/users -type f | grep -v index.ts | xargs echo)
|
||||||
|
|
||||||
MOCHA_PARALLEL=true npm run mocha-parallel-tests -- --max-parallel $1 --timeout 30000 --exit \
|
MOCHA_PARALLEL=true npm run mocha -- --parallel --jobs $1 --timeout 30000 --exit \
|
||||||
--require ts-node/register --require tsconfig-paths/register --bail \
|
--require ts-node/register --require tsconfig-paths/register --bail \
|
||||||
$serverFiles $usersFiles
|
$serverFiles $usersFiles
|
||||||
|
@ -5,6 +5,6 @@ set -eu
|
|||||||
redundancyFiles=$(find server/tests/api/redundancy -type f | grep -v index.ts | xargs echo)
|
redundancyFiles=$(find server/tests/api/redundancy -type f | grep -v index.ts | xargs echo)
|
||||||
activitypubFiles=$(find server/tests/api/activitypub -type f | grep -v index.ts | xargs echo)
|
activitypubFiles=$(find server/tests/api/activitypub -type f | grep -v index.ts | xargs echo)
|
||||||
|
|
||||||
MOCHA_PARALLEL=true npm run mocha-parallel-tests -- --max-parallel $1 --timeout 30000 --exit \
|
MOCHA_PARALLEL=true npm run mocha -- --parallel --jobs $1 --timeout 30000 --exit \
|
||||||
--require ts-node/register --require tsconfig-paths/register --bail \
|
--require ts-node/register --require tsconfig-paths/register --bail \
|
||||||
$redundancyFiles $activitypubFiles
|
$redundancyFiles $activitypubFiles
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
import 'mocha'
|
import 'mocha'
|
||||||
import * as chai from 'chai'
|
import * as chai from 'chai'
|
||||||
import { cleanupTests, getVideoCommentThreads, getVideoThreadComments, updateMyUser, wait } from '../../../../shared/extra-utils'
|
import { cleanupTests, getVideoCommentThreads, getVideoThreadComments, updateMyUser } from '../../../../shared/extra-utils'
|
||||||
import { ServerInfo, uploadVideo } from '../../../../shared/extra-utils/index'
|
import { ServerInfo, uploadVideo } from '../../../../shared/extra-utils/index'
|
||||||
import { MockSmtpServer } from '../../../../shared/extra-utils/miscs/email'
|
import { MockSmtpServer } from '../../../../shared/extra-utils/miscs/email'
|
||||||
import { waitJobs } from '../../../../shared/extra-utils/server/jobs'
|
import { waitJobs } from '../../../../shared/extra-utils/server/jobs'
|
||||||
@ -56,7 +56,7 @@ describe('Test comments notifications', function () {
|
|||||||
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, 'comment')
|
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, 'comment')
|
||||||
const commentId = resComment.body.comment.id
|
const commentId = resComment.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'absence')
|
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'absence')
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -69,7 +69,7 @@ describe('Test comments notifications', function () {
|
|||||||
const resComment = await addVideoCommentThread(servers[0].url, userAccessToken, uuid, 'comment')
|
const resComment = await addVideoCommentThread(servers[0].url, userAccessToken, uuid, 'comment')
|
||||||
const commentId = resComment.body.comment.id
|
const commentId = resComment.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'absence')
|
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'absence')
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -84,7 +84,7 @@ describe('Test comments notifications', function () {
|
|||||||
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, 'comment')
|
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, 'comment')
|
||||||
const commentId = resComment.body.comment.id
|
const commentId = resComment.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'absence')
|
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'absence')
|
||||||
|
|
||||||
await removeAccountFromAccountBlocklist(servers[0].url, userAccessToken, 'root')
|
await removeAccountFromAccountBlocklist(servers[0].url, userAccessToken, 'root')
|
||||||
@ -99,7 +99,7 @@ describe('Test comments notifications', function () {
|
|||||||
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, 'comment')
|
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, 'comment')
|
||||||
const commentId = resComment.body.comment.id
|
const commentId = resComment.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'presence')
|
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, commentId, 'presence')
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -134,7 +134,7 @@ describe('Test comments notifications', function () {
|
|||||||
const resComment = await addVideoCommentReply(servers[0].url, servers[0].accessToken, uuid, threadId, 'reply')
|
const resComment = await addVideoCommentReply(servers[0].url, servers[0].accessToken, uuid, threadId, 'reply')
|
||||||
const commentId = resComment.body.comment.id
|
const commentId = resComment.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, threadId, 'presence')
|
await checkNewCommentOnMyVideo(baseParams, uuid, commentId, threadId, 'presence')
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -200,7 +200,7 @@ describe('Test comments notifications', function () {
|
|||||||
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, '@user_1 hello')
|
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, '@user_1 hello')
|
||||||
const commentId = resComment.body.comment.id
|
const commentId = resComment.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkCommentMention(baseParams, uuid, commentId, commentId, 'super root name', 'absence')
|
await checkCommentMention(baseParams, uuid, commentId, commentId, 'super root name', 'absence')
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -213,7 +213,7 @@ describe('Test comments notifications', function () {
|
|||||||
const resComment = await addVideoCommentThread(servers[0].url, userAccessToken, uuid, '@user_1 hello')
|
const resComment = await addVideoCommentThread(servers[0].url, userAccessToken, uuid, '@user_1 hello')
|
||||||
const commentId = resComment.body.comment.id
|
const commentId = resComment.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkCommentMention(baseParams, uuid, commentId, commentId, 'super root name', 'absence')
|
await checkCommentMention(baseParams, uuid, commentId, commentId, 'super root name', 'absence')
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -228,7 +228,7 @@ describe('Test comments notifications', function () {
|
|||||||
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, '@user_1 hello')
|
const resComment = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, '@user_1 hello')
|
||||||
const commentId = resComment.body.comment.id
|
const commentId = resComment.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkCommentMention(baseParams, uuid, commentId, commentId, 'super root name', 'absence')
|
await checkCommentMention(baseParams, uuid, commentId, commentId, 'super root name', 'absence')
|
||||||
|
|
||||||
await removeAccountFromAccountBlocklist(servers[0].url, userAccessToken, 'root')
|
await removeAccountFromAccountBlocklist(servers[0].url, userAccessToken, 'root')
|
||||||
@ -257,13 +257,13 @@ describe('Test comments notifications', function () {
|
|||||||
const resThread = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, '@user_1 hello 1')
|
const resThread = await addVideoCommentThread(servers[0].url, servers[0].accessToken, uuid, '@user_1 hello 1')
|
||||||
const threadId = resThread.body.comment.id
|
const threadId = resThread.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkCommentMention(baseParams, uuid, threadId, threadId, 'super root name', 'presence')
|
await checkCommentMention(baseParams, uuid, threadId, threadId, 'super root name', 'presence')
|
||||||
|
|
||||||
const resComment = await addVideoCommentReply(servers[0].url, servers[0].accessToken, uuid, threadId, 'hello 2 @user_1')
|
const resComment = await addVideoCommentReply(servers[0].url, servers[0].accessToken, uuid, threadId, 'hello 2 @user_1')
|
||||||
const commentId = resComment.body.comment.id
|
const commentId = resComment.body.comment.id
|
||||||
|
|
||||||
await wait(500)
|
await waitJobs(servers)
|
||||||
await checkCommentMention(baseParams, uuid, commentId, threadId, 'super root name', 'presence')
|
await checkCommentMention(baseParams, uuid, commentId, threadId, 'super root name', 'presence')
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -28,10 +28,6 @@ const expect = chai.expect
|
|||||||
|
|
||||||
describe('Test optimize old videos', function () {
|
describe('Test optimize old videos', function () {
|
||||||
let servers: ServerInfo[] = []
|
let servers: ServerInfo[] = []
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
||||||
let video1UUID: string
|
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
||||||
let video2UUID: string
|
|
||||||
|
|
||||||
before(async function () {
|
before(async function () {
|
||||||
this.timeout(200000)
|
this.timeout(200000)
|
||||||
@ -52,10 +48,8 @@ describe('Test optimize old videos', function () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Upload two videos for our needs
|
// Upload two videos for our needs
|
||||||
const res1 = await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video1', fixture: tempFixturePath })
|
await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video1', fixture: tempFixturePath })
|
||||||
video1UUID = res1.body.video.uuid
|
await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video2', fixture: tempFixturePath })
|
||||||
const res2 = await uploadVideo(servers[0].url, servers[0].accessToken, { name: 'video2', fixture: tempFixturePath })
|
|
||||||
video2UUID = res2.body.video.uuid
|
|
||||||
|
|
||||||
await waitJobs(servers)
|
await waitJobs(servers)
|
||||||
})
|
})
|
||||||
|
@ -28,7 +28,7 @@ async function delInstance (url: string) {
|
|||||||
async function setInstance (url: string, username: string, password: string, isDefault: boolean) {
|
async function setInstance (url: string, username: string, password: string, isDefault: boolean) {
|
||||||
const [ settings, netrc ] = await Promise.all([ getSettings(), getNetrc() ])
|
const [ settings, netrc ] = await Promise.all([ getSettings(), getNetrc() ])
|
||||||
|
|
||||||
if (settings.remotes.indexOf(url) === -1) {
|
if (settings.remotes.includes(url) === false) {
|
||||||
settings.remotes.push(url)
|
settings.remotes.push(url)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -32,6 +32,10 @@ import { UserRole } from '@shared/models'
|
|||||||
import { RegisterServerAuthExternalOptions } from '@shared/models/plugins/register-server-auth.model'
|
import { RegisterServerAuthExternalOptions } from '@shared/models/plugins/register-server-auth.model'
|
||||||
|
|
||||||
declare module 'express' {
|
declare module 'express' {
|
||||||
|
interface Request {
|
||||||
|
query: any
|
||||||
|
}
|
||||||
|
|
||||||
interface Response {
|
interface Response {
|
||||||
|
|
||||||
locals: {
|
locals: {
|
||||||
|
@ -37,11 +37,11 @@ class MockSmtpServer {
|
|||||||
return rej(new Error('maildev exited unexpectedly, confirm port not in use'))
|
return rej(new Error('maildev exited unexpectedly, confirm port not in use'))
|
||||||
})
|
})
|
||||||
this.emailChildProcess.on('message', (msg: any) => {
|
this.emailChildProcess.on('message', (msg: any) => {
|
||||||
if (msg.err) {
|
if (msg.err) return rej(new Error(msg.err))
|
||||||
return rej(new Error(msg.err))
|
|
||||||
}
|
|
||||||
this.started = true
|
this.started = true
|
||||||
this.emails = emailsCollection
|
this.emails = emailsCollection
|
||||||
|
|
||||||
return res(port)
|
return res(port)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
Loading…
Reference in New Issue
Block a user