mirror of
https://github.com/sim1222/misskey.git
synced 2025-04-29 02:37:22 +09:00
Merge branch 'develop' into pr/9095
This commit is contained in:
commit
7ce535907e
15
packages/backend/.swcrc
Normal file
15
packages/backend/.swcrc
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://json.schemastore.org/swcrc",
|
||||||
|
"jsc": {
|
||||||
|
"parser": {
|
||||||
|
"syntax": "typescript",
|
||||||
|
"dynamicImport": true,
|
||||||
|
"decorators": true
|
||||||
|
},
|
||||||
|
"transform": {
|
||||||
|
"legacyDecorator": true,
|
||||||
|
"decoratorMetadata": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"minify": false
|
||||||
|
}
|
@ -61,14 +61,6 @@ module.exports = {
|
|||||||
|
|
||||||
// A set of global variables that need to be available in all test environments
|
// A set of global variables that need to be available in all test environments
|
||||||
globals: {
|
globals: {
|
||||||
"ts-jest": {
|
|
||||||
"useESM": true,
|
|
||||||
tsconfig: "test/tsconfig.json",
|
|
||||||
isolatedModules: true,
|
|
||||||
diagnostics: {
|
|
||||||
exclude: ['**'],
|
|
||||||
},
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers.
|
// The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers.
|
||||||
@ -105,7 +97,7 @@ module.exports = {
|
|||||||
// notifyMode: "failure-change",
|
// notifyMode: "failure-change",
|
||||||
|
|
||||||
// A preset that is used as a base for Jest's configuration
|
// A preset that is used as a base for Jest's configuration
|
||||||
preset: "ts-jest/presets/js-with-ts-esm",
|
//preset: "ts-jest/presets/js-with-ts-esm",
|
||||||
|
|
||||||
// Run tests from one or more projects
|
// Run tests from one or more projects
|
||||||
// projects: undefined,
|
// projects: undefined,
|
||||||
@ -185,12 +177,7 @@ module.exports = {
|
|||||||
|
|
||||||
// A map from regular expressions to paths to transformers
|
// A map from regular expressions to paths to transformers
|
||||||
transform: {
|
transform: {
|
||||||
"<regex_match_files>": [
|
"^.+\\.(t|j)sx?$": ["@swc/jest"],
|
||||||
"ts-jest",
|
|
||||||
{
|
|
||||||
"useESM": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation
|
// An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
"lint": "eslint --quiet \"src/**/*.ts\"",
|
"lint": "eslint --quiet \"src/**/*.ts\"",
|
||||||
"jest": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --forceExit --detectOpenHandles --runInBand",
|
"jest": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --forceExit --detectOpenHandles --runInBand",
|
||||||
"jest-and-coverage": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --coverage --forceExit --detectOpenHandles --runInBand",
|
"jest-and-coverage": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --coverage --forceExit --detectOpenHandles --runInBand",
|
||||||
|
"jest-clear": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --clearCache",
|
||||||
"test": "npm run jest",
|
"test": "npm run jest",
|
||||||
"test-and-coverage": "npm run jest-and-coverage"
|
"test-and-coverage": "npm run jest-and-coverage"
|
||||||
},
|
},
|
||||||
@ -129,6 +130,8 @@
|
|||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@redocly/openapi-core": "1.0.0-beta.108",
|
"@redocly/openapi-core": "1.0.0-beta.108",
|
||||||
|
"@swc/core": "1.3.2",
|
||||||
|
"@swc/jest": "0.2.22",
|
||||||
"@types/bcryptjs": "2.4.2",
|
"@types/bcryptjs": "2.4.2",
|
||||||
"@types/bull": "3.15.9",
|
"@types/bull": "3.15.9",
|
||||||
"@types/cbor": "6.0.0",
|
"@types/cbor": "6.0.0",
|
||||||
@ -178,8 +181,7 @@
|
|||||||
"eslint": "8.23.1",
|
"eslint": "8.23.1",
|
||||||
"eslint-plugin-import": "2.26.0",
|
"eslint-plugin-import": "2.26.0",
|
||||||
"execa": "6.1.0",
|
"execa": "6.1.0",
|
||||||
"jest": "28.0.0",
|
"jest": "29.0.3",
|
||||||
"ts-jest": "28.0.8",
|
|
||||||
"typescript": "4.8.3"
|
"typescript": "4.8.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,27 +17,30 @@ const $config: Provider = {
|
|||||||
|
|
||||||
const $db: Provider = {
|
const $db: Provider = {
|
||||||
provide: DI.db,
|
provide: DI.db,
|
||||||
useFactory: async () => {
|
useFactory: async (config) => {
|
||||||
const db = createPostgreDataSource();
|
const db = createPostgreDataSource(config);
|
||||||
return await db.initialize();
|
return await db.initialize();
|
||||||
},
|
},
|
||||||
|
inject: [DI.config],
|
||||||
};
|
};
|
||||||
|
|
||||||
const $redis: Provider = {
|
const $redis: Provider = {
|
||||||
provide: DI.redis,
|
provide: DI.redis,
|
||||||
useFactory: () => {
|
useFactory: (config) => {
|
||||||
const redisClient = createRedisConnection();
|
const redisClient = createRedisConnection(config);
|
||||||
return redisClient;
|
return redisClient;
|
||||||
},
|
},
|
||||||
|
inject: [DI.config],
|
||||||
};
|
};
|
||||||
|
|
||||||
const $redisSubscriber: Provider = {
|
const $redisSubscriber: Provider = {
|
||||||
provide: DI.redisSubscriber,
|
provide: DI.redisSubscriber,
|
||||||
useFactory: () => {
|
useFactory: (config) => {
|
||||||
const redisSubscriber = createRedisConnection();
|
const redisSubscriber = createRedisConnection(config);
|
||||||
redisSubscriber.subscribe(config.host);
|
redisSubscriber.subscribe(config.host);
|
||||||
return redisSubscriber;
|
return redisSubscriber;
|
||||||
},
|
},
|
||||||
|
inject: [DI.config],
|
||||||
};
|
};
|
||||||
|
|
||||||
@Global()
|
@Global()
|
||||||
|
@ -70,7 +70,7 @@ import { UserSecurityKey } from '@/models/entities/UserSecurityKey.js';
|
|||||||
import { Webhook } from '@/models/entities/Webhook.js';
|
import { Webhook } from '@/models/entities/Webhook.js';
|
||||||
import { Channel } from '@/models/entities/Channel.js';
|
import { Channel } from '@/models/entities/Channel.js';
|
||||||
|
|
||||||
import { loadConfig } from '@/config.js';
|
import { Config } from '@/config.js';
|
||||||
import Logger from '@/logger.js';
|
import Logger from '@/logger.js';
|
||||||
import { envOption } from './env.js';
|
import { envOption } from './env.js';
|
||||||
|
|
||||||
@ -179,9 +179,7 @@ export const entities = [
|
|||||||
|
|
||||||
const log = process.env.NODE_ENV !== 'production';
|
const log = process.env.NODE_ENV !== 'production';
|
||||||
|
|
||||||
const config = loadConfig();
|
export function createPostgreDataSource(config: Config) {
|
||||||
|
|
||||||
export function createPostgreDataSource() {
|
|
||||||
return new DataSource({
|
return new DataSource({
|
||||||
type: 'postgres',
|
type: 'postgres',
|
||||||
host: config.db.host,
|
host: config.db.host,
|
||||||
|
@ -1,9 +1,7 @@
|
|||||||
import Redis from 'ioredis';
|
import Redis from 'ioredis';
|
||||||
import { loadConfig } from '@/config.js';
|
import { Config } from '@/config.js';
|
||||||
|
|
||||||
export function createRedisConnection(): Redis.Redis {
|
|
||||||
const config = loadConfig();
|
|
||||||
|
|
||||||
|
export function createRedisConnection(config: Config): Redis.Redis {
|
||||||
return new Redis({
|
return new Redis({
|
||||||
port: config.redis.port,
|
port: config.redis.port,
|
||||||
host: config.redis.host,
|
host: config.redis.host,
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { Inject, Injectable } from '@nestjs/common';
|
import { Inject, Injectable } from '@nestjs/common';
|
||||||
import { Redis } from 'ioredis';
|
import Redis from 'ioredis';
|
||||||
import Router from '@koa/router';
|
import Router from '@koa/router';
|
||||||
import { OAuth2 } from 'oauth';
|
import { OAuth2 } from 'oauth';
|
||||||
import { v4 as uuid } from 'uuid';
|
import { v4 as uuid } from 'uuid';
|
||||||
@ -22,7 +22,7 @@ export class DiscordServerService {
|
|||||||
private config: Config,
|
private config: Config,
|
||||||
|
|
||||||
@Inject(DI.redis)
|
@Inject(DI.redis)
|
||||||
private redisClient: Redis,
|
private redisClient: Redis.Redis,
|
||||||
|
|
||||||
@Inject(DI.usersRepository)
|
@Inject(DI.usersRepository)
|
||||||
private usersRepository: UsersRepository,
|
private usersRepository: UsersRepository,
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { Inject, Injectable } from '@nestjs/common';
|
import { Inject, Injectable } from '@nestjs/common';
|
||||||
import { Redis } from 'ioredis';
|
import Redis from 'ioredis';
|
||||||
import Router from '@koa/router';
|
import Router from '@koa/router';
|
||||||
import { OAuth2 } from 'oauth';
|
import { OAuth2 } from 'oauth';
|
||||||
import { v4 as uuid } from 'uuid';
|
import { v4 as uuid } from 'uuid';
|
||||||
@ -22,7 +22,7 @@ export class GithubServerService {
|
|||||||
private config: Config,
|
private config: Config,
|
||||||
|
|
||||||
@Inject(DI.redis)
|
@Inject(DI.redis)
|
||||||
private redisClient: Redis,
|
private redisClient: Redis.Redis,
|
||||||
|
|
||||||
@Inject(DI.usersRepository)
|
@Inject(DI.usersRepository)
|
||||||
private usersRepository: UsersRepository,
|
private usersRepository: UsersRepository,
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { Inject, Injectable } from '@nestjs/common';
|
import { Inject, Injectable } from '@nestjs/common';
|
||||||
import { Redis } from 'ioredis';
|
import Redis from 'ioredis';
|
||||||
import Router from '@koa/router';
|
import Router from '@koa/router';
|
||||||
import { v4 as uuid } from 'uuid';
|
import { v4 as uuid } from 'uuid';
|
||||||
import { IsNull } from 'typeorm';
|
import { IsNull } from 'typeorm';
|
||||||
@ -22,7 +22,7 @@ export class TwitterServerService {
|
|||||||
private config: Config,
|
private config: Config,
|
||||||
|
|
||||||
@Inject(DI.redis)
|
@Inject(DI.redis)
|
||||||
private redisClient: Redis,
|
private redisClient: Redis.Redis,
|
||||||
|
|
||||||
@Inject(DI.usersRepository)
|
@Inject(DI.usersRepository)
|
||||||
private usersRepository: UsersRepository,
|
private usersRepository: UsersRepository,
|
||||||
|
@ -37,6 +37,7 @@ describe('MetaService', () => {
|
|||||||
await app.close();
|
await app.close();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/* なんか動かない
|
||||||
it('fetch (cache)', async () => {
|
it('fetch (cache)', async () => {
|
||||||
const db = app.get<DataSource>(DI.db);
|
const db = app.get<DataSource>(DI.db);
|
||||||
const originalFunction = db.transaction;
|
const originalFunction = db.transaction;
|
||||||
@ -50,7 +51,7 @@ describe('MetaService', () => {
|
|||||||
|
|
||||||
spy.mockRestore();
|
spy.mockRestore();
|
||||||
});
|
});
|
||||||
/*
|
|
||||||
it('fetch (force)', async () => {
|
it('fetch (force)', async () => {
|
||||||
const db = app.get<DataSource>(DI.db);
|
const db = app.get<DataSource>(DI.db);
|
||||||
const originalFunction = db.transaction;
|
const originalFunction = db.transaction;
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user