bump version

This commit is contained in:
undefined committed 2025-04-03 02:32:22 +08:00
1 parent 8af621222c
commit 6aef4695f2
43 files changed
+96 -53

No files matched your search

+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "hydrooj",
"version": "5.0.0-alpha.0",
"version": "5.0.0-beta.0",
"bin": "bin/hydrooj.js",
"main": "src/plugin-api",
"module": "src/plugin-api",
+1 -1
View File
@@ -113,7 +113,7 @@ export async function load(ctx: Context) {
await ctx.plugin(ConfigService);
await require('../model/system').runConfig();
ctx = await new Promise((resolve) => {
ctx.inject(['loader', 'config'], (c) => {
ctx.inject(['loader', 'config', 'db'], (c) => {
resolve(c);
});
});
+1 -1
View File
@@ -34,7 +34,7 @@ export async function apply(ctx: Context) {
const modelSystem = require('../model/system');
await modelSystem.runConfig();
ctx = await new Promise((resolve) => {
ctx.inject(['loader', 'config'], (c) => {
ctx.inject(['loader', 'config', 'db'], (c) => {
resolve(c);
});
});
+4 -2
View File
@@ -437,8 +437,9 @@ class OauthCallbackHandler extends Handler {
noCheckPermView = true;
async get(args: any) {
if (!this.ctx.oauth.providers[args.type]) throw new UserFacingError('Oauth type');
const r = await this.ctx.oauth.providers[args.type].callback.call(this, args);
const provider = this.ctx.oauth.providers[args.type];
if (!provider) throw new UserFacingError('Oauth type');
const r = await provider.callback.call(this, args);
if (this.session.oauthBind === args.type) {
delete this.session.oauthBind;
const existing = await this.ctx.oauth.get(args.type, r._id);
@@ -456,6 +457,7 @@ class OauthCallbackHandler extends Handler {
this.response.redirect = '/';
return;
}
if (!provider.canRegister) throw new ForbiddenError('No binded account found');
this.checkPriv(PRIV.PRIV_REGISTER_USER);
let username = '';
r.uname ||= [];
+4 -4
View File
@@ -31,12 +31,12 @@ class BlackListModel {
}
}
export function apply(ctx: Context) {
coll = db.collection('blacklist');
ctx.on('ready', () => db.ensureIndexes(
export async function apply(ctx: Context) {
coll = ctx.db.collection('blacklist');
await ctx.db.ensureIndexes(
coll,
{ key: { expireAt: -1 }, name: 'expire', expireAfterSeconds: 0 },
));
);
}
export default BlackListModel;
global.Hydro.model.blacklist = BlackListModel;
+1
View File
@@ -34,6 +34,7 @@ export interface OAuthProvider {
hidden?: boolean;
get: (this: Handler) => Promise<void>;
callback: (this: Handler, args: Record<string, any>) => Promise<OAuthUserResponse>;
canRegister?: boolean;
lockUsername?: boolean;
}
+8 -6
View File
@@ -1,6 +1,6 @@
import { Filter } from 'mongodb';
import { Context } from '../context';
import { TokenDoc } from '../interface';
import bus from '../service/bus';
import db from '../service/db';
import { ArgMethod } from '../utils';
@@ -107,10 +107,12 @@ class TokenModel {
}
}
bus.on('ready', () => db.ensureIndexes(
TokenModel.coll,
{ key: { uid: 1, tokenType: 1, updateAt: -1 }, name: 'basic', sparse: true },
{ key: { expireAt: -1 }, name: 'expire', expireAfterSeconds: 0 },
));
export async function apply(ctx: Context) {
await ctx.db.ensureIndexes(
TokenModel.coll,
{ key: { uid: 1, tokenType: 1, updateAt: -1 }, name: 'basic', sparse: true },
{ key: { expireAt: -1 }, name: 'expire', expireAfterSeconds: 0 },
);
}
export default TokenModel;
global.Hydro.model.token = TokenModel;
+1 -1
View File
@@ -104,7 +104,7 @@ class ApiService extends Service {
constructor(ctx: Context) {
super(ctx, 'api');
this.rebuild = debounce(this.rebuild.bind(this), 500, { trailing: true });
ctx.on('ready', this.rebuild);
this.rebuild();
}
private rebuild() {
+2 -2
View File
@@ -178,10 +178,10 @@ export class MongoService extends Service {
}
/** @deprecated use ctx.db instead */
const db = new Proxy({} as MongoService, {
const deprecatedDb = new Proxy({} as MongoService, {
get(target, prop) {
return app.get('db')?.[prop];
},
});
export default db;
export default deprecatedDb;
@@ -63,6 +63,7 @@ export default class MigrationService extends Service {
dbVer++;
await system.set(name, dbVer);
}
logger.success('Database upgraded [%s]: current version %d', channel, dbVer);
}
}
}
+1
View File
@@ -11,6 +11,7 @@ async function terminate() {
}, 1000);
try {
await bus.parallel('app/exit');
await app.scope.dispose();
} catch (e) {
hasError = true;
}