Move to @pezkuwi/dev 0.86 (eslint 10 toolchain)

- @pezkuwi/dev, dev-test, dev-ts ^0.86.3; disable directives renamed
  for the new rule names, or removed where the rule no longer reports
- rethrown errors carry the original as `cause` (13 sites)
- optional chains where a guard expression tested the same value
- Init: the registry cache settles with the creator's own promise,
  dropping the entry in finally(), instead of re-wrapping it
- Combinator: a typed call instead of `Function`
- checkTypes.manual: synchronous checks run outside Promise.all
- sortValues, createTypeUnsafe: initial values that were never read
- typegen util: load docs.js for its side effect (it registers the
  `docs` Handlebars partial) now that its types are re-exported
  type-only
- MockProvider keeps its Header assertion: the package's own build
  does not load api-augment, so createType returns a plain Codec there
- Decorate keeps `delete queue[i]`: the hole marks a fired queue and
  later indexes must not shift
This commit is contained in:
Satoshi Qazi Muhammed committed 2026-10-09 16:24:46 +04:00
1 parent 8c9af013b5
commit 60e0f73ffa
166 files changed
+2757 -3731

No files matched your search

+2 -2
View File
@@ -4,7 +4,7 @@
import type { Observable } from 'rxjs';
import type { AnyFunction, Callback, Codec } from '@pezkuwi/types/types';
export type Push<T extends readonly unknown[], V> = [...T, V]
export type Push<T extends readonly unknown[], V> = [...T, V];
export type DropLast<T extends readonly unknown[]> = T extends readonly [...infer U, any?] ? U : [...T];
@@ -71,7 +71,7 @@ type AsCodec<R> = R extends Codec
export type ReturnCodec<F extends AnyFunction> = AsCodec<ObsInnerType<ReturnType<F>>>;
// eslint-disable-next-line @typescript-eslint/no-empty-interface
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
export interface EmptyBase<_> {
// this is use to allow use to have unused vars in augmented interfaces,
// so intentionally left empty
+1 -1
View File
@@ -17,7 +17,7 @@ export type AugmentedCall<ApiType extends ApiTypes, F extends AnyFunction = (...
// augmented interfaces
// eslint-disable-next-line @typescript-eslint/no-empty-interface
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
export interface AugmentedCalls<ApiType extends ApiTypes> extends EmptyBase<ApiType> {
// augmented
}
+1 -1
View File
@@ -11,7 +11,7 @@ export interface AugmentedConst<_ extends ApiTypes> {
// augmented interfaces
// eslint-disable-next-line @typescript-eslint/no-empty-interface
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
export interface AugmentedConsts<ApiType extends ApiTypes> extends EmptyBase<ApiType> {
// augmented
}
+1 -1
View File
@@ -8,7 +8,7 @@ export type AugmentedError<_ extends ApiTypes> = IsError;
// augmented interfaces
// eslint-disable-next-line @typescript-eslint/no-empty-interface
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
export interface AugmentedErrors<ApiType extends ApiTypes> extends EmptyBase<ApiType> {
// augmented
}
+1 -1
View File
@@ -9,7 +9,7 @@ export type AugmentedEvent<_ extends ApiTypes, T extends AnyTuple = AnyTuple, N
// augmented interfaces
// eslint-disable-next-line @typescript-eslint/no-empty-interface
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
export interface AugmentedEvents<ApiType extends ApiTypes> extends EmptyBase<ApiType> {
// augmented
}
+10 -10
View File
@@ -2,15 +2,15 @@
// SPDX-License-Identifier: Apache-2.0
// These are augmented, do an augmentation export
export * from '@pezkuwi/api-base/types/calls';
export * from '@pezkuwi/api-base/types/consts';
export * from '@pezkuwi/api-base/types/errors';
export * from '@pezkuwi/api-base/types/events';
export * from '@pezkuwi/api-base/types/storage';
export * from '@pezkuwi/api-base/types/submittable';
export type * from '@pezkuwi/api-base/types/calls';
export type * from '@pezkuwi/api-base/types/consts';
export type * from '@pezkuwi/api-base/types/errors';
export type * from '@pezkuwi/api-base/types/events';
export type * from '@pezkuwi/api-base/types/storage';
export type * from '@pezkuwi/api-base/types/submittable';
// normal exports
export * from './api.js';
export * from './base.js';
export * from './derive.js';
export * from './rpc.js';
export type * from './api.js';
export type * from './base.js';
export type * from './derive.js';
export type * from './rpc.js';
+2 -2
View File
@@ -26,10 +26,10 @@ export type DecoratedRpcSection<ApiType extends ApiTypes, Section> = {
[M in keyof Section]: Section[M] extends AnyFunction
? RpcMethodResult<ApiType, Section[M]>
: never
}
};
export type RawRpcType<ApiType extends ApiTypes> = (method: string, ...params: unknown[]) => ApiType extends 'rxjs' ? Observable<AnyJson> : Promise<AnyJson>;
export type DecoratedRpc<ApiType extends ApiTypes, AllSections> = {
[S in keyof AllSections]: DecoratedRpcSection<ApiType, AllSections[S]>
} & RawRpcType<ApiType>
} & RawRpcType<ApiType>;
+2 -2
View File
@@ -30,7 +30,7 @@ export interface StorageEntryPromiseOverloadsAt {
}
// This is the most generic typings we can have for a storage entry function
export type GenericStorageEntryFunction = (...args: unknown[]) => Observable<Codec>
export type GenericStorageEntryFunction = (...args: unknown[]) => Observable<Codec>;
export type QueryableStorageEntry<ApiType extends ApiTypes, A extends AnyTuple = AnyTuple> =
ApiType extends 'rxjs'
@@ -106,7 +106,7 @@ export type AugmentedQueryDoubleMap<ApiType extends ApiTypes, F extends AnyFunct
// augmented interfaces
// eslint-disable-next-line @typescript-eslint/no-empty-interface
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
export interface AugmentedQueries<ApiType extends ApiTypes> extends EmptyBase<ApiType> {
// augmented
}
+1 -1
View File
@@ -100,7 +100,7 @@ export interface SubmittableExtrinsicFunction<ApiType extends ApiTypes, A extend
// augmented interfaces
// eslint-disable-next-line @typescript-eslint/no-empty-interface
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
export interface AugmentedSubmittables<ApiType extends ApiTypes> extends EmptyBase<ApiType> {
// augmented
}