chore: add no-debugger eslint rule (#5906)

This commit is contained in:
Cédric Exbrayat 2022-05-13 01:10:00 +02:00 committed by GitHub
parent 8a123ac34f
commit 9ecee16f89
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 23 additions and 29 deletions

View File

@ -7,6 +7,7 @@ module.exports = {
sourceType: 'module'
},
rules: {
'no-debugger': 'error',
'no-unused-vars': [
'error',
// we are only using this rule to check for unused arguments since TS

View File

@ -257,7 +257,6 @@ describe('component: proxy', () => {
expect(instanceProxy.isDisplayed).toBe(true)
})
test('allow jest spying on proxy methods with Object.defineProperty', () => {
// #5417
let instanceProxy: any
@ -426,7 +425,6 @@ describe('component: proxy', () => {
expect(instanceProxy.fromProp).toBe(false)
})
// #864
test('should not warn declared but absent props', () => {
const Comp = {

View File

@ -443,10 +443,8 @@ describe('api: template refs', () => {
expect(mapRefs()).toMatchObject(['2', '3', '4'])
})
test('named ref in v-for', async () => {
const show = ref(true);
const show = ref(true)
const list = reactive([1, 2, 3])
const listRefs = ref([])
const mapRefs = () => listRefs.value.map(n => serializeInner(n))
@ -495,6 +493,4 @@ describe('api: template refs', () => {
await nextTick()
expect(mapRefs()).toMatchObject(['2', '3', '4'])
})
})

View File

@ -135,8 +135,8 @@ const enum BooleanFlags {
// extract props which defined with default from prop options
export type ExtractDefaultPropTypes<O> = O extends object
// use `keyof Pick<O, DefaultKeys<O>>` instead of `DefaultKeys<O>` to support IDE features
? { [K in keyof Pick<O, DefaultKeys<O>>]: InferPropType<O[K]> }
? // use `keyof Pick<O, DefaultKeys<O>>` instead of `DefaultKeys<O>` to support IDE features
{ [K in keyof Pick<O, DefaultKeys<O>>]: InferPropType<O[K]> }
: {}
type NormalizedProp =

View File

@ -113,7 +113,7 @@ export function createHydrationFunctions(
nextNode = onMismatch()
} else {
if ((node as Text).data !== vnode.children) {
hasMismatch = true; debugger
hasMismatch = true
__DEV__ &&
warn(
`Hydration text mismatch:` +
@ -351,7 +351,7 @@ export function createHydrationFunctions(
)
let hasWarned = false
while (next) {
hasMismatch = true; debugger
hasMismatch = true
if (__DEV__ && !hasWarned) {
warn(
`Hydration children mismatch in <${vnode.type as string}>: ` +
@ -366,7 +366,7 @@ export function createHydrationFunctions(
}
} else if (shapeFlag & ShapeFlags.TEXT_CHILDREN) {
if (el.textContent !== vnode.children) {
hasMismatch = true; debugger
hasMismatch = true
__DEV__ &&
warn(
`Hydration text content mismatch in <${
@ -411,7 +411,7 @@ export function createHydrationFunctions(
} else if (vnode.type === Text && !vnode.children) {
continue
} else {
hasMismatch = true; debugger
hasMismatch = true
if (__DEV__ && !hasWarned) {
warn(
`Hydration children mismatch in <${container.tagName.toLowerCase()}>: ` +
@ -465,7 +465,7 @@ export function createHydrationFunctions(
} else {
// fragment didn't hydrate successfully, since we didn't get a end anchor
// back. This should have led to node/children mismatch warnings.
hasMismatch = true; debugger
hasMismatch = true
// since the anchor is missing, we need to create one and insert it
insert((vnode.anchor = createComment(`]`)), container, next)
return next
@ -480,7 +480,7 @@ export function createHydrationFunctions(
slotScopeIds: string[] | null,
isFragment: boolean
): Node | null => {
hasMismatch = true; debugger
hasMismatch = true
__DEV__ &&
warn(
`Hydration node mismatch:\n- Client vnode:`,

View File

@ -15,7 +15,6 @@ describe('createApp for dom', () => {
// #4398
test('should not mutate original root component options object', () => {
const originalObj = {
data() {
return {
@ -39,6 +38,5 @@ describe('createApp for dom', () => {
// ensure no mutation happened to Root object
expect(originalObj).toMatchObject(Root)
})
})

View File

@ -12,7 +12,9 @@ import {
} from '@vue/shared'
// leading comma for empty string ""
const shouldIgnoreProp = makeMap(`,key,ref,innerHTML,textContent,ref_key,ref_for`)
const shouldIgnoreProp = makeMap(
`,key,ref,innerHTML,textContent,ref_key,ref_for`
)
export function ssrRenderAttrs(
props: Record<string, unknown>,

View File

@ -7,7 +7,6 @@ export type UnionToIntersection<U> = (
// make keys required but keep undefined values
export type LooseRequired<T> = { [P in string & keyof T]: T[P] }
// If the the type T accepts type "any", output type Y, otherwise output type N.
// https://stackoverflow.com/questions/49927523/disallow-call-with-any/49928360#49928360
export type IfAny<T, Y, N> = 0 extends (1 & T) ? Y : N
export type IfAny<T, Y, N> = 0 extends 1 & T ? Y : N