HashTable::removeIf always shrinks the hash table by half even if there is nothing...
[WebKit-https.git] / Source / WTF / ChangeLog
index 02d0b75..5c29b20 100644 (file)
@@ -1,3 +1,251 @@
+2019-04-19  Ryosuke Niwa  <rniwa@webkit.org>
+
+        HashTable::removeIf always shrinks the hash table by half even if there is nothing left
+        https://bugs.webkit.org/show_bug.cgi?id=196681
+        <rdar://problem/49917764>
+
+        Reviewed by Darin Adler.
+
+        Address Darin's comments by removing the explicit type from std::max.
+
+        * wtf/HashTable.h:
+        (WTF::KeyTraits>::computeBestTableSize):
+        (WTF::KeyTraits>::shrinkToBestSize):
+
+2019-04-18  Chris Dumez  <cdumez@apple.com>
+
+        [iOS] Improve detection of when web views go to background / foreground
+        https://bugs.webkit.org/show_bug.cgi?id=197035
+        <rdar://problem/45281182>
+
+        Reviewed by Tim Horton.
+
+        Add build time flag.
+
+        * wtf/FeatureDefines.h:
+
+2019-04-18  Jer Noble  <jer.noble@apple.com>
+
+        Add support for parsing FairPlayStreaming PSSH boxes.
+        https://bugs.webkit.org/show_bug.cgi?id=197064
+
+        Reviewed by Eric Carlson.
+
+        * wtf/Platform.h:
+
+2019-04-18  Yusuke Suzuki  <ysuzuki@apple.com>
+
+        [WTF] StringBuilder should set correct m_is8Bit flag when merging
+        https://bugs.webkit.org/show_bug.cgi?id=197053
+
+        Reviewed by Saam Barati.
+
+        When appending StringBuilder to the other StringBuilder, we have a path that does not set m_is8Bit flag correctly.
+        This patch correctly sets this flag. And we also change 0 to nullptr when we are using 0 as a pointer.
+
+        * wtf/text/StringBuilder.cpp:
+        (WTF::StringBuilder::reserveCapacity):
+        (WTF::StringBuilder::appendUninitializedSlow):
+        (WTF::StringBuilder::append):
+        * wtf/text/StringBuilder.h:
+        (WTF::StringBuilder::append):
+        (WTF::StringBuilder::characters8 const):
+        (WTF::StringBuilder::characters16 const):
+        (WTF::StringBuilder::clear):
+
+2019-04-17  Tim Horton  <timothy_horton@apple.com>
+
+        Adopt different scroll view flashing SPI
+        https://bugs.webkit.org/show_bug.cgi?id=197043
+        <rdar://problem/49996476>
+
+        Reviewed by Wenson Hsieh.
+
+        * wtf/Platform.h:
+
+2019-04-17  Jer Noble  <jer.noble@apple.com>
+
+        Enable HAVE_AVFOUNDATION_VIDEO_OUTPUT on PLATFORM(IOSMAC)
+        https://bugs.webkit.org/show_bug.cgi?id=196994
+        <rdar://problem/44158331>
+
+        Reviewed by Alex Christensen.
+
+        * wtf/Platform.h:
+
+2019-04-16  Stephan Szabo  <stephan.szabo@sony.com>
+
+        [PlayStation] Update port for system library changes
+        https://bugs.webkit.org/show_bug.cgi?id=196978
+
+        Reviewed by Ross Kirsling.
+
+        * wtf/PlatformPlayStation.cmake:
+        Remove reference to deleted system library
+
+2019-04-16  Jer Noble  <jer.noble@apple.com>
+
+        Enable HAVE_AVKIT on PLATFORM(IOSMAC)
+        https://bugs.webkit.org/show_bug.cgi?id=196987
+
+        Reviewed by Tim Horton.
+
+        * wtf/Platform.h:
+
+2019-04-16  Robin Morisset  <rmorisset@apple.com>
+
+        [WTF] holdLock should be marked WARN_UNUSED_RETURN
+        https://bugs.webkit.org/show_bug.cgi?id=196922
+
+        Reviewed by Keith Miller.
+
+        * wtf/Locker.h:
+
+2019-04-16  Don Olmstead  <don.olmstead@sony.com>
+
+        [CMake] Set WTF_SCRIPTS_DIR
+        https://bugs.webkit.org/show_bug.cgi?id=196917
+
+        Reviewed by Konstantin Tokarev.
+
+        Use WTF_SCRIPTS_DIR for copying the unified sources script.
+
+        * wtf/CMakeLists.txt:
+
+2019-04-15  Myles C. Maxfield  <mmaxfield@apple.com>
+
+        [Cocoa] FontPlatformData objects aren't cached at all when using font-family:system-ui
+        https://bugs.webkit.org/show_bug.cgi?id=196846
+        <rdar://problem/49499971>
+
+        Reviewed by Simon Fraser and Darin Adler.
+
+        * wtf/RetainPtr.h:
+        (WTF::safeCFEqual):
+        (WTF::safeCFHash):
+
+2019-04-12  Ryosuke Niwa  <rniwa@webkit.org>
+
+        HashTable::removeIf always shrinks the hash table by half even if there is nothing left
+        https://bugs.webkit.org/show_bug.cgi?id=196681
+
+        Reviewed by Darin Adler.
+
+        Made HashTable::removeIf shrink to the "best size", which is the least power of two bigger
+        than twice the key count as already used in the copy constructor.
+
+        * wtf/HashTable.h:
+        (WTF::HashTable::computeBestTableSize): Extracted from the copy constructor.
+        (WTF::HashTable::shrinkToBestSize): Added.
+        (WTF::HashTable::removeIf): Use shrinkToBestSize instead of shrink.
+        (WTF::HashTable::HashTable):
+
+2019-04-12  Eric Carlson  <eric.carlson@apple.com>
+
+        Update AudioSession route sharing policy
+        https://bugs.webkit.org/show_bug.cgi?id=196776
+        <rdar://problem/46501611>
+
+        Reviewed by Jer Noble.
+
+        * wtf/Platform.h: Define HAVE_ROUTE_SHARING_POLICY_LONG_FORM_VIDEO.
+
+2019-04-10  Said Abou-Hallawa  <sabouhallawa@apple.com>
+
+        requestAnimationFrame should execute before the next frame
+        https://bugs.webkit.org/show_bug.cgi?id=177484
+
+        Reviewed by Simon Fraser.
+
+        Add trace points for the page RenderingUpdate.
+
+        * wtf/SystemTracing.h:
+
+2019-04-10  Claudio Saavedra  <csaavedra@igalia.com>
+
+        Do not generate empty unified sources when unified builds are disabled
+        https://bugs.webkit.org/show_bug.cgi?id=196767
+
+        Reviewed by Konstantin Tokarev.
+
+        If unified builds are disabled, the ruby script to generate them
+        is still used to list the sources that need to be
+        compiled. Currently, the script always generates bundled unified
+        sources, even if it's being used just to list all the sources. So
+        when the unified builds are disabled and no files are going to be
+        bundled, the script generates one empty file per bundle manager
+        (that is, one C++ and one ObjectiveC), that gets added to the
+        sources to be compiled.
+
+        * Scripts/generate-unified-source-bundles.rb: Only go through the
+        bundle managers file generation when not running in
+        PrintAllSources mode, to avoid generating empty bundle files.
+
+2019-04-10  Enrique Ocaña González  <eocanha@igalia.com>
+
+        [WPE] Avoid async IO starving timers
+        https://bugs.webkit.org/show_bug.cgi?id=196733
+
+        Reviewed by Carlos Garcia Campos.
+
+        If AsyncIONetwork and DiskCacheRead priorities are higher than
+        MainThreadSharedTimer the timers get starved. This causes the NetworkProcess
+        to accumulate MB of data instead of handing it down to the WebProcess (done
+        using a Timer). This eventually causes an Out Of Memory kill on the
+        NetworkProcess on some embedded platforms with low memory limits.
+
+        This patch levels the three priorities to the same value, while still leaving
+        DiskCacheWrite with less priority than DiskCacheRead.
+
+        * wtf/glib/RunLoopSourcePriority.h: Changed RunLoopSourcePriority values for WPE.
+
+2019-04-09  Don Olmstead  <don.olmstead@sony.com>
+
+        [CMake] WTF derived sources should only be referenced inside WTF
+        https://bugs.webkit.org/show_bug.cgi?id=196706
+
+        Reviewed by Konstantin Tokarev.
+
+        Use ${WTF_DERIVED_SOURCES_DIR} instead of ${DERIVED_SOURCES_DIR} within WTF.
+
+        * wtf/CMakeLists.txt:
+        * wtf/PlatformJSCOnly.cmake:
+        * wtf/PlatformMac.cmake:
+
+2019-04-09  Don Olmstead  <don.olmstead@sony.com>
+
+        [CMake] Apple builds should use ICU_INCLUDE_DIRS
+        https://bugs.webkit.org/show_bug.cgi?id=196720
+
+        Reviewed by Konstantin Tokarev.
+
+        Copy ICU headers for Apple builds into ICU_INCLUDE_DIRS.
+
+        * CMakeLists.txt:
+        * wtf/PlatformMac.cmake:
+
+2019-04-08  Don Olmstead  <don.olmstead@sony.com>
+
+        [CMake][WinCairo] Separate copied headers into different directories
+        https://bugs.webkit.org/show_bug.cgi?id=196655
+
+        Reviewed by Michael Catanzaro.
+
+        * wtf/CMakeLists.txt:
+
+2019-04-08  Guillaume Emont  <guijemont@igalia.com>
+
+        Enable DFG on MIPS
+        https://bugs.webkit.org/show_bug.cgi?id=196689
+
+        Reviewed by Žan Doberšek.
+
+        Since the bytecode change, we enabled the baseline JIT on mips in
+        r240432, but DFG is still missing. With this change, all tests are
+        passing on a ci20 board.
+
+        * wtf/Platform.h: Enable DFG on MIPS by default.
+
 2019-04-06  Ryosuke Niwa  <rniwa@webkit.org>
 
         Added tests for WeakHashSet::computesEmpty and WeakHashSet::computeSize