Wycofania i usunięcia w Chrome 59

Joe Medley
Joe Medley

W prawie każdej wersji Chrome wprowadzamy znaczną liczbę aktualizacji i ulepszeń dotyczących produktu, jego wydajności oraz możliwości platformy internetowej. Z tego artykułu dowiesz się, które funkcje zostały wycofane lub usunięte w Chrome 59, które 27 kwietnia jest dostępne w wersji beta. Ta lista może ulec zmianie w każdej chwili.

Tymczasowe wyłączenie metody navigator.sendBeacon() w przypadku niektórych blobów

Funkcja navigator.sendBeacon() jest dostępna od wersji Chrome 39. W pierwotnej implementacji argument data funkcji mógł zawierać dowolny dowolny blob, którego typ nie jest bezpieczny w ramach CORS. Uważamy, że jest to potencjalne zagrożenie dla bezpieczeństwa, choć nikt jeszcze nie próbował go wykorzystać. Ponieważ nie mamy rozsądnego, natychmiastowego rozwiązania tego problemu, tymczasowo funkcja sendBeacon() nie może być wywoływana w przypadku blobów, których typ NIE jest bezpieczny w ramach CORS.

Chociaż ta zmiana została wprowadzona w Chrome 60, została później scalona z Chrome 59.

Błąd w Chromium

Usuń z WebVR funkcje, które nie są uwzględnione w zmienionej specyfikacji

Obecna implementacja WebVR, pierwotnie wprowadzona w Chrome 52, zawierała kilka metod i właściwości, które nie znajdą się w ostatecznej specyfikacji. W ramach testów Origin Trial, które rozpoczęły się w Chrome 56, dodano komunikaty o wycofaniach tych funkcji. Te funkcje są teraz usuwane. To m.in.:

  • VRDisplay.getPose()
  • VRDisplay.resetPose()
  • VRDisplay.isConnected
  • VRDisplayCapabilities.hasOrientation
  • VREyeParameters.fieldOfView

Intencja eksperymentowania | Chromestatus Tracker | Błąd w Chromium | Wyniki testów Origin do tej pory

Usuwanie FileReaderSync ze skryptów service worker

Specyfikacja skryptów service worker od zawsze zawierała (nienormatywną) notatkę, że „żaden typ żądań synchronicznych nie może być inicjowany w ramach skryptu service worker”, aby uniknąć zablokowania skryptu service worker (blokowanie skryptu service worker zablokowałoby wszystkie żądania sieciowe ze stron kontrolowanych). Jednak interfejsy API synchroniczne, takie jak FileReaderSync, były nadal dostępne w usługach workerów. FileReaderSync została wycofana w Chrome 57. Został usunięty w Chrome 59.

Zamierzamy wycofać | Chromestatus Tracker | Błąd w Chromium

Usuń niestandardowe funkcje inicjalizowania zdarzenia DeviceOrientation

Od jakiegoś czasu w interfejsach API przeglądarek obserwujemy ogólny trend odchodzenia od funkcji inicjalizacji i przechodzenia do konstruktorów obiektów. Najnowsza wersja specyfikacji zdarzenia DeviceOrientation nakazuje wymagać konstruktorów zarówno w przypadku DeviceOrientationEvent, jak i DeviceMotionEvent.

Chrome domyślnie włącza te konstruktory, więc w Chrome 59 zostały usunięte starsze funkcje inicjalizacji initDeviceMotionEvent()initDeviceOrientationEvent(). Edge wycofał funkcje inicjalizacji, a Firefox już je wdrożył.

Intend to Remove | Błąd w Chromium

Usuń wartość „on-demand” (na żądanie) w zapytaniach dotyczących mediów z obsługą hovera/dowolnego hovera

Wartość „on-demand” (na żądanie) w zapytaniach dotyczących multimediów z wyświetlaniem po najechaniu kursorem lub po najechaniu kursorem w dowolnym miejscu została usunięta z specyfikacji około roku temu. W związku z tym te zapytania dotyczące multimediów zostały usunięte w Chrome 59.

Intend to Remove | Chromestatus Tracker | Chromium Bug

Usuń MediaStreamTrack.remote

W Chrome 48 dodano właściwość MediaStreamTrack.remote, aby umożliwić obsługę interfejsu Media Capture and Streams API, aby umożliwić JavaScriptowi określenie, czy strumień WebRTC MediaStreamTrack pochodzi ze źródła zdalnego czy lokalnego.

Od tego czasu ta usługa została usunięta ze specyfikacji. Od wersji 59 przeglądarki Chrome nie jest już obsługiwana.

Błąd w Chromium

Usunięcie obsługi tworzenia zdarzenia ProgressEvent za pomocą metody document.createEvent()

Wcześniejsze wersje specyfikacji DOM wymagały implementacji document.createEvent("ProgressEvent"). Jednak ich użycie było zawsze niskie, a obsługa została już usunięta z GeckoWebkit. W marcu tego roku wydarzenie zostało przeniesione do specyfikacji.

Aby zachować zgodność z platformą i najnowszą specyfikacją, element ProgressEvent został usunięty z Chrome.

Błąd w Chromium

Usuń funkcje SVGTests.required

W pierwszej wersji specyfikacji SVG aplikacja mogła wywołać funkcję DOMImplementation.hasFeature, aby sprawdzić, czy dany interfejs SVG jest obsługiwany. Wiele elementów SVG zawierało atrybut requiredFeatures, który zwracał te same informacje.

W SVG2 właściwość DOMImplementation.hasFeature zawsze zwraca wartość true. W konsekwencji funkcja requiredFeatures nie wykonuje już żadnej przydatnej operacji. Został usunięty ze specyfikacji, wycofany w Chrome 54 i ostatecznie usunięty.

Intend to Remove | Chromestatus Tracker | Chromium Bug