add scary experimental warning for people who use obscure transformers that are still WIP
This commit is contained in:
parent
a102692103
commit
ec46eaf224
@ -16,6 +16,10 @@ export default class Logger {
|
|||||||
return parts;
|
return parts;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
warn(msg) {
|
||||||
|
console.warn(this._buildMessage(msg));
|
||||||
|
}
|
||||||
|
|
||||||
error(msg: string, Constructor = Error) {
|
error(msg: string, Constructor = Error) {
|
||||||
throw new Constructor(this._buildMessage(msg));
|
throw new Constructor(this._buildMessage(msg));
|
||||||
}
|
}
|
||||||
|
|||||||
@ -47,7 +47,8 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
"experimental": {
|
"experimental": {
|
||||||
"deprecated": "use `--stage 0`/`{ stage: 0 }` instead"
|
"description": "allow use of experimental transformers",
|
||||||
|
"default": false
|
||||||
},
|
},
|
||||||
|
|
||||||
"highlightCode": {
|
"highlightCode": {
|
||||||
|
|||||||
@ -13,6 +13,10 @@ export default class TransformerPass {
|
|||||||
this.handlers = transformer.handlers;
|
this.handlers = transformer.handlers;
|
||||||
this.file = file;
|
this.file = file;
|
||||||
this.key = transformer.key;
|
this.key = transformer.key;
|
||||||
|
|
||||||
|
if (this.canTransform() && transformer.metadata.experimental && !file.opts.experimental) {
|
||||||
|
file.log.warn(`THE TRANSFORMER ${this.key} HAS BEEN MARKED AS EXPERIMENTAL. USE AT YOUR OWN RISK. THIS WILL HIGHLY LIKELY BREAK YOUR CODE SO USE WITH **EXTREME** CAUTION`);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
canTransform(): boolean {
|
canTransform(): boolean {
|
||||||
|
|||||||
@ -2,7 +2,8 @@ import * as t from "../../../types";
|
|||||||
|
|
||||||
export var metadata = {
|
export var metadata = {
|
||||||
optional: true,
|
optional: true,
|
||||||
group: "builtin-prepass"
|
group: "builtin-prepass",
|
||||||
|
experimental: true
|
||||||
};
|
};
|
||||||
|
|
||||||
export function AssignmentExpression() {
|
export function AssignmentExpression() {
|
||||||
|
|||||||
@ -19,7 +19,8 @@ function toStatements(node) {
|
|||||||
|
|
||||||
export var metadata = {
|
export var metadata = {
|
||||||
optional: true,
|
optional: true,
|
||||||
group: "builtin-pre"
|
group: "builtin-pre",
|
||||||
|
experimental: true
|
||||||
};
|
};
|
||||||
|
|
||||||
export function ReferencedIdentifier(node, parent, scope) {
|
export function ReferencedIdentifier(node, parent, scope) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user