Safari 10 기능 태그 오류

3954 단어 compat-table
이 테이블을 사용하는

묘사

babel-preset-env는 Safari 10에 대한 지원을 할 때 플러그인 transform-es2015-block-scoping을 잘못 제거했습니다.
귀속된 특성constlet이 완성된 것으로 표시되었지만 사파리 10shown here에 버그가 하나 있었어요.
{
  let a = 3
}

let a = 3
던지기SyntaxError: Can't create duplicate variable that shadows a global property: 'a'babel/babel preset env#411

토론 #1

@chicoxyzy를 참고하여 설명을 읽었습니다. 이것은 두 개의 새로운 하위 테스트 (for letconst 를 작성하는 것에 관한 것이라고 생각했지만, 지금은 '테스트 코드 오류' 로 표시되어 있습니다.기존의 테스트가 Safari buggy 구현에 실패하는 것으로 변경되어야 한다는 말입니까?

토론 #2

단독 테스트는 좋지만 그렇습니다. 결함이 있는 실현에서 테스트는 절대 실패해야 합니다.

토론 #셋

나는 기존의 하위 테스트에 이 문제를 채울 수 없어서 새로운 하위 테스트를 추가했다.

토론 #4

오늘 막 Safari 버전 11.0(12604.1.38.1.7)으로 업그레이드되었는데, Safari는 여전히 코드 세션에서 이 오류를 던질 것이다:rage:

토론 #5

네, 제 패치 #1183은 아직 통합되지 않았습니다.

토론 #6

합병하지 않는 이유 중 하나는 내가 아직 사파리에서 새로운 테스트를 실행하지 않았기 때문이라고 생각한다.만약 홍보가 정말로 당신의 문제를 해결했다면, 당신은 이렇게 하고 평론을 할 수 있습니까?

토론 #7

그래서 나는 이 구축을 실행하고 사파리를 열어 그것을 보았다.사파리 11열에는 Noscope-shadow-resolutionscope-shadow-resolution (strict mode)가 열거되어 있다.그러나 Current Browser 열에서는 통과로 표시됩니다.현재 브라우저를 실행하는 것은 Safari Version 11.0 (12604.1.38.1.7) 입니다. 11의 버전에서 실행할 수 있습니다.나는 왜 13일 전에 내가 처음으로 사파리를 업그레이드했을 때 사파리가 없었는지 모르겠다. 그것은 당시 버전

토론 #8

과 완전히 같다. 그래, 결과열은 하드코딩이고, '현재 브라우저' 열만 활동했다.나는 그것no을 사파리라고 표시했다. 왜냐하면 네가 일을 해서는 안 된다고 말했기 때문이다.이것을 yes로 변경할 수 있지만 몇 가지 문제가 있습니다.
- 사파리 10.1 이전 버전 어때요?
- 그것들도 작용한다면 테스트가 정확하지 않습니까?

토론 #9

내가 MacOS를 업그레이드한 이상 Safari의 낮은 버전을 테스트하는 유일한 간단한 방법은 crossbrowsertesting.com를 통과하는 것이다. 이를 통해 Safari 10은 실제적으로 전달 중Version 10.1.2 (12603.3.8)으로 나타난다. 이것은 정확하다. 왜냐하면 이 컨트롤러에서 코드 세션을 실행하면 이상을 일으키지 않기 때문이다.불행하게도 오류를 일으킨 버전 10의 내부 버전 번호를 기록하지 않았기 때문에 동일한지, 이상한 일이 일어났는지, 복구를 실시한 또 다른 내부 버전인지 판단할 수 없었다.

토론 #10

나는 시험이 완전하지 않다고 믿기 시작했다.너는 내가 실현한 코드를 검사했니, 그것이 네가 제기한 문제를 촉발할 수 있는지 없는지를 보았니?

토론 #11

테스트 코드가 괜찮아 보여요.불안한 것은 Safari 10 버전의crossbrowsertesting에서 이런 코드를 실행하거나 이 라인이 시작되는 코드 세션을 실행하는 것이다.com 제공, 작업 오류 없음.따라서, 나는 내가 오류가 발생했을 때 사용한 버전 10이 반드시 다른 버전이나 패치 버전이라고 생각하지만, 나는 더 이상 이 버전이 무엇인지 이해할 권리가 없다.
그러니까 요컨대 음영 범위는 지금 실수를 하지 않고 사파리 10+

토론 #12

에서 예상대로 일하고 있는 걸로 알고 있습니다. 네, 제 홍보에서 이 문제를 해결하겠습니다. 하지만 10.1+라는 뜻을 믿습니다. 맞습니까?

토론 #13

정확하고 정확히 10.1.2

토론 #14

입니다. 좋습니다. 10.1의 결과를 반영하기 위해 패치를 업데이트했습니다.현재 유일하게 다른 버전은 10.0이다.너는 이 테스트가 여전히 필요한지 시험해 볼 수 있니?

토론 #15

현재 이 버전에 접근할 권한이 없습니다.이것은 일종의 교차 테스트인 것 같다.com은 특정 MacOS와 함께 제공되는 최신 버전만 제공합니다.

토론 #16

#1183이 합병된 이후로 나는 이 문제가 지금 해결될 수 있다고 믿는다.

토론 #17

@afmenez, 이 문제를 다시 토론할 것을 건의합니다 #1183이 병합되었으나 이 중 10.1이 아닌 Safari 10만 이 오류로 표시되었습니다.보이다https://github.com/kangax/compat-table/blob/gh-pages/data-es6.js#L561.
그러나 사파리 10.1도 결함이 있다.나는 간단한 수정을 했다.http://safari_10_1_repro.surge.sh/여기에는 다음 코드가 포함됩니다.
function func(a = 1) {
    for (let a = 2; ;) {
        break;
    }
}
func();
Safari 10.1에서 테스트했는데 작동하지 않는지 확인할 수 있습니다.우리는 얻었다SyntaxError: Cannot declare a let variable twice ‘a’.
사파리 10.1.0인가요?

토론 #18

저는 사파리 10.1.2(12603.8)에서 테스트를 했습니다.
그래서 적어도 사파리 10.0에서 10.1.2의 범위 내에 이 버그가 있다.

좋은 웹페이지 즐겨찾기