구형 iPad에서 Discourse가 전체 페이지를 렌더링하지 않음

내 포럼의 두 명의 서로 다른 사용자로부터 사이트가 사용 불가능하다는 보고를 받았습니다. 해당 사용자들의 iPad에서는 토픽 제목 이후 아무것도 렌더링되지 않는다고 합니다 (하나는 iPad mini 2이고, 다른 하나의 모델 연식은 알 수 없습니다).

사용자 중 한 명에게 안전 모드에서 확인해 달라고 요청했으나 문제는 여전히 지속되었습니다.

이 문제는 최근 며칠 사이에 발생하기 시작했으며 (최근 Discourse를 업데이트했습니다). 브라우저 호환성 문제가 도입된 것일까요?

https://se23.life/t/cant-open-topics-suddenly/13677?u=chrisbeach

관련된 로그 오류 가능성:

### Message

TypeError: Object.values is not a function. (In 'Object.values(k)', 'Object.values' is undefined) Url: https://se23.life/assets/application-40c596cdf7e29282f09e31f3627440b02ba54ef8bec1f65c72732b78dddeadb2.js Line: 1 Column: 2302964 Window Location: https://se23.life/t/hat-stolen-from-forest-hill-christmas-tree-now-replaced/13615/16

### Backtrace

html@https://se23.life/assets/application-40c596cdf7e29282f09e31f3627440b02ba54ef8bec1f65c72732b78dddeadb2.js:1:2302964 value@https://se23.life/assets/application-40c596cdf7e29282f09e31f3627440b02ba54ef8bec1f65c72732b78dddeadb2.js:1:2380769 s@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:142806 exports@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:142956 t@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:136443 t@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:136753 t@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:136753 t@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:136753 t@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:136753 t@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:136753 t@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:136753 https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:138354 exports@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:138399 c@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:139468 o@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:139332 exports@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:138842 c@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:139468 o@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:139332 t@https://se23.life/assets/vendor-4681e47c140b5a5bea2bfb1fec89365858288a8ea0c21979c0167ad9b570ee3d.js:1:139608 rerenderWidget@https://se23.life/assets/application-40c596cdf7e29282f09e31f3627440b02ba54ef8bec1f65c72732b78dddeadb2.js:1:1070961 invoke@https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:483463 flush@https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:482460 flush@https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:484479 _end@https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:489914 end@https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:486449 _run@https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:490450 h@[native code] success@https://se23.life/assets/application-40c596cdf7e29282f09e31f3627440b02ba54ef8bec1f65c72732b78dddeadb2.js:1:228913 n@https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:27779 fireWith@https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:28543 l@https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:78782 https://se23.life/assets/ember_jquery-c2cca4a19fd4c70eabc95b010a6d7643955ec2a2251aeb1d70f625773eebea21.js:1:81099

### Env

hostname gbyk1-app
process_id 222
application_version e8beccdaa4eb36fd292de9cd77d59a0e0389c92f
HTTP_HOST se23.life
REQUEST_URI /logs/report_js_error
REQUEST_METHOD POST
HTTP_USER_AGENT Mozilla/5.0 (iPad; CPU OS 10_0_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Version/10.0 Mobile/14A456 Safari/602.1
HTTP_ACCEPT */*
HTTP_REFERER https://se23.life/t/hat-stolen-from-forest-hill-christmas-tree-now-replaced/13615/16
HTTP_X_FORWARDED_FOR [redacted]
HTTP_X_REAL_IP [redacted]
params message TypeError: Object.values is not a function. (In 'Object.values(k)', 'Object.values' is undefined)
--- --- --- ---
--- ---
url https://se23.life/assets/application-40c596cdf7e29282f09e31f3627440b02ba54ef8bec1f65c72732b78dddeadb2
line 1
column 2302964
window_location https://se23.life/t/hat-stolen-from-forest-hill-christmas-tree-now-replaced/13615/16
stacktrace html@https://se23.life/assets/application-40c596cdf7e29282f09e31f3627440b02ba54ef8bec1f65c72732b78ddd
2개의 좋아요

안전 모드에서 작동하나요?

1개의 좋아요

아이패드 미니 2는 2013년 출시된 제품으로, 상당히 오래되었습니다. 이 제품의 수명 종료(EOL) 시점은 2017년이었으며, 더 이상 공식적인 지원을 받지 않습니다.

4개의 좋아요

아니요, 안전 모드에서는 작동하지 않습니다.

1개의 좋아요

미니 4와 5에서 정상 작동 중: 크리스마스에 파트너들이 후하게 챙겨줄 시간인 것 같네요 :wink:

1개의 좋아요

이것은 entries polyfil이 IE 플러그인으로 이동되었기 때문이라고 생각합니다. @j.jaffeux

3개의 좋아요

네, Object.entries는 10.3입니다.

AFAIK(제 지식의 범위 내에서) 우리는 Safari 10+와 iOS 10+를 지원합니다.

4개의 좋아요

이 문제를 해결할 수 있는 플러그인을 설치할 수 있나요?

1개의 좋아요

아니요, 이 플러그인은 이제 디스커스에 기본적으로 설치됩니다. 제가 말하려는 것은 이 폴리필이 몇 달 전 IE11 지원을 위해 추가되었다는 것입니다.

몇 주 전 이 플러그인을 만들 때 IE11을 위해 코어에 추가된 모든 것을 이 플러그인으로 옮겼습니다.

IE11에서 발생한 요청만 이 플러그인의 파일을 추가하므로, iOS 9가 더 이상 작동하지 않는 것입니다.

iOS 9 사용량은 거의 추적되지 않으며, 아마도 1% 미만일 것입니다(IE11은 1%입니다).

이러한 상황에서 두 가지 쉬운 조치를 취할 수 있습니다:

  • 해당 파일을 코어에 1년 더 추가하기
  • iOS 10 이하에서도 ie11 폴리필을 로드하기. 이제 다른 모든 사용자에게 영향을 주지 않고 조건부로 로드할 수 있으므로 좋은 해결책입니다.

@codinghorror 님, 판단은 당신에게 맡기겠습니다. 제 생각에는 이 지원을 중단해야 하지만, 지금은 유지하는 것이 더 합리적이라고 생각하신다면 유지하는 것도 괜찮습니다.

9개의 좋아요

사정은 이렇습니다. 매우 오래되고 구식이 된 iOS 기기를 영원히 지원할 수는 없습니다.

5개의 좋아요