mirror of
https://github.com/gristlabs/grist-core.git
synced 2026-03-02 04:09:24 +00:00
(core) Speed up and upgrade build.
Summary:
- Upgrades to build-related packages:
- Upgrade typescript, related libraries and typings.
- Upgrade webpack, eslint; add tsc-watch, node-dev, eslint_d.
- Build organization changes:
- Build webpack from original typescript, transpiling only; with errors still
reported by a background tsc watching process.
- Typescript-related changes:
- Reduce imports of AWS dependencies (very noticeable speedup)
- Avoid auto-loading global @types
- Client code is now built with isolatedModules flag (for safe transpilation)
- Use allowJs to avoid copying JS files manually.
- Linting changes
- Enhance Arcanist ESLintLinter to run before/after commands, and set up to use eslint_d
- Update eslint config, and include .eslintignore to avoid linting generated files.
- Include a bunch of eslint-prompted and eslint-generated fixes
- Add no-unused-expression rule to eslint, and fix a few warnings about it
- Other items:
- Refactor cssInput to avoid circular dependency
- Remove a bit of unused code, libraries, dependencies
Test Plan: No behavior changes, all existing tests pass. There are 30 tests fewer reported because `test_gpath.py` was removed (it's been unused for years)
Reviewers: paulfitz
Reviewed By: paulfitz
Subscribers: paulfitz
Differential Revision: https://phab.getgrist.com/D3498
This commit is contained in:
@@ -14,6 +14,7 @@ import {
|
||||
dom,
|
||||
DomContents,
|
||||
fromKo,
|
||||
IDisposableOwnerT,
|
||||
Observable,
|
||||
} from 'grainjs';
|
||||
|
||||
@@ -30,8 +31,13 @@ export abstract class NewAbstractWidget extends Disposable {
|
||||
/**
|
||||
* Override the create() method to match the parameters of create() expected by FieldBuilder.
|
||||
*/
|
||||
public static create(field: ViewFieldRec) {
|
||||
return Disposable.create.call(this as any, null, field);
|
||||
// We copy Disposable.create() signature (the second one) to pacify typescript, but code must
|
||||
// use the first signature, which is compatible with old-style constructors.
|
||||
public static create<T extends new (...args: any[]) => any>(field: ViewFieldRec): InstanceType<T>;
|
||||
public static create<T extends new (...args: any[]) => any>(
|
||||
this: T, owner: IDisposableOwnerT<InstanceType<T>>|null, ...args: ConstructorParameters<T>): InstanceType<T>;
|
||||
public static create(...args: any[]) {
|
||||
return Disposable.create.call(this as any, null, ...args);
|
||||
}
|
||||
|
||||
protected options: SaveableObjObservable<any>;
|
||||
|
||||
Reference in New Issue
Block a user