Rolling out r219372.
[WebKit.git] / Source / WebCore / PAL / ChangeLog
1 2017-07-11  Dean Jackson  <dino@apple.com>
2
3         Rolling out r219372.
4
5         * Configurations/FeatureDefines.xcconfig:
6
7 2017-07-11  Dean Jackson  <dino@apple.com>
8
9         Remove NAVIGATOR_HWCONCURRENCY
10         https://bugs.webkit.org/show_bug.cgi?id=174400
11
12         Reviewed by Sam Weinig.
13
14         * Configurations/FeatureDefines.xcconfig:
15
16 2017-07-11  Per Arne Vollan  <pvollan@apple.com>
17
18         [Win] Build error when building WebCore from WebCore.proj project file.
19         https://bugs.webkit.org/show_bug.cgi?id=174330
20
21         Reviewed by Brent Fulgham.
22
23         CMAKE_BINARY_DIR is needed in the include list in order to find 'cmakeconfig.h'. 
24
25         * pal/CMakeLists.txt:
26
27 2017-07-03  Brian Burg  <bburg@apple.com>
28
29         Web Replay: remove some unused code
30         https://bugs.webkit.org/show_bug.cgi?id=173903
31
32         Rubber-stamped by Joseph Pecoraro.
33
34         * Configurations/FeatureDefines.xcconfig:
35
36 2017-07-08  Yusuke Suzuki  <utatane.tea@gmail.com>
37
38         Drop NOSNIFF compile flag
39         https://bugs.webkit.org/show_bug.cgi?id=174289
40
41         Reviewed by Michael Catanzaro.
42
43         * Configurations/FeatureDefines.xcconfig:
44
45 2017-07-06  Don Olmstead  <don.olmstead@sony.com>
46
47         [PAL] Move KillRing into PAL
48         https://bugs.webkit.org/show_bug.cgi?id=173900
49
50         Reviewed by Myles C. Maxfield.
51
52         No new tests. No change in functionality.
53
54         * Configurations/PAL.xcconfig:
55         * PAL.xcodeproj/project.pbxproj:
56         * pal/CMakeLists.txt:
57         * pal/PlatformGTK.cmake:
58         * pal/PlatformMac.cmake:
59         * pal/PlatformWPE.cmake:
60         * pal/PlatformWin.cmake:
61         * pal/text/KillRing.h: Renamed from Source/WebCore/platform/KillRing.h.
62         * pal/text/KillRingNone.cpp: Renamed from Source/WebCore/platform/KillRingNone.cpp.
63         * pal/text/mac/KillRingMac.mm: Renamed from Source/WebCore/platform/mac/KillRingMac.mm.
64
65 2017-07-05  Jonathan Bedard  <jbedard@apple.com>
66
67         Add WebKitPrivateFrameworkStubs for iOS 11
68         https://bugs.webkit.org/show_bug.cgi?id=173988
69
70         Reviewed by David Kilzer.
71
72         * Configurations/PAL.xcconfig: iphoneos and iphonesimulator should use the
73         same directory for private framework stubs.
74
75 2017-07-03  Sam Weinig  <sam@webkit.org>
76
77         [WebIDL] Remove more unnecessary uses of the preprocessor in idl files
78         https://bugs.webkit.org/show_bug.cgi?id=174083
79
80         Reviewed by Alex Christensen.
81
82         * Configurations/FeatureDefines.xcconfig:
83         Add ENABLE_NAVIGATOR_STANDALONE.
84
85 2017-07-03  Andy Estes  <aestes@apple.com>
86
87         [Xcode] Add an experimental setting to build with ccache
88         https://bugs.webkit.org/show_bug.cgi?id=173875
89
90         Reviewed by Tim Horton.
91
92         * Configurations/DebugRelease.xcconfig: Included ccache.xcconfig.
93
94 2017-07-03  Zan Dobersek  <zdobersek@igalia.com>
95
96         [GCrypt] Implement CryptoKeyEC SPKI exports
97         https://bugs.webkit.org/show_bug.cgi?id=173646
98
99         Reviewed by Jiewen Tan.
100
101         No new tests -- covered by existing Web Crypto tests.
102
103         Add three new libtasn1 utility functions.
104
105         createStructure() is a simple wrapper around asn1_create_element(), creating a new
106         ASN.1 structure for the specified definition that's listed in WebCrypto.asn. The
107         existing decodeStructure() is modified to use this new addition.
108
109         encodedData() retrieves the ASN.1-encoded data of the specified element that's
110         located in the passed-in asn1_node. This is used when retrieving SPKI or PKCS#8
111         data from filled-out ASN.1 structures.
112
113         writeElement() writes the provided data to the given asn1_node object under the
114         specified element, using the given size. True is returned if this operation was
115         successful.
116
117         * pal/crypto/tasn1/Utilities.cpp:
118         (PAL::TASN1::createStructure):
119         (PAL::TASN1::decodeStructure):
120         (PAL::TASN1::encodedData):
121         (PAL::TASN1::writeElement):
122         * pal/crypto/tasn1/Utilities.h:
123
124 2017-07-01  Dan Bernstein  <mitz@apple.com>
125
126         [iOS] Remove code only needed when building for iOS 9.x
127         https://bugs.webkit.org/show_bug.cgi?id=174068
128
129         Reviewed by Tim Horton.
130
131         * Configurations/FeatureDefines.xcconfig:
132
133 2017-07-01  Dan Bernstein  <mitz@apple.com>
134
135         [macOS] Remove code only needed when building for OS X Yosemite
136         https://bugs.webkit.org/show_bug.cgi?id=174067
137
138         Reviewed by Tim Horton.
139
140         * Configurations/Base.xcconfig:
141         * Configurations/DebugRelease.xcconfig:
142         * Configurations/FeatureDefines.xcconfig:
143         * Configurations/Version.xcconfig:
144
145 2017-06-29  Jer Noble  <jer.noble@apple.com>
146
147         Make Legacy EME API controlled by RuntimeEnabled setting.
148         https://bugs.webkit.org/show_bug.cgi?id=173994
149
150         Reviewed by Sam Weinig.
151
152         * Configurations/FeatureDefines.xcconfig:
153
154 2017-06-30  Ross Kirsling  <ross.kirsling@sony.com>
155
156         [PAL] Move Sound into PAL
157         https://bugs.webkit.org/show_bug.cgi?id=173999
158
159         Reviewed by Alex Christensen.
160
161         * Configurations/PAL.xcconfig:
162         * PAL.xcodeproj/project.pbxproj:
163         * pal/CMakeLists.txt:
164         * pal/PlatformGTK.cmake:
165         * pal/PlatformMac.cmake:
166         * pal/PlatformWPE.cmake:
167         * pal/PlatformWin.cmake:
168         * pal/system/Sound.h: Renamed from Source/WebCore/platform/ios/SoundIOS.mm.
169         * pal/system/SoundNone.cpp: Renamed from Source/WebCore/platform/wpe/SoundWPE.cpp.
170         (PAL::systemBeep):
171         * pal/system/gtk/SoundGtk.cpp: Renamed from Source/WebCore/platform/gtk/SoundGtk.cpp.
172         * pal/system/mac/SoundMac.mm: Renamed from Source/WebCore/platform/mac/SoundMac.mm.
173         * pal/system/win/SoundWin.cpp: Renamed from Source/WebCore/platform/win/SoundWin.cpp.
174
175 2017-06-28  Jonathan Bedard  <jbedard@apple.com>
176
177         Build fix for PAL
178         https://bugs.webkit.org/show_bug.cgi?id=173896
179
180         Reviewed by Dan Bernstein.
181
182         Remove the workaround build fix in r218863.
183
184         * PAL.xcodeproj/project.pbxproj: We should be using PROJECT_DIR instead of SRCROOT
185         when in a nested Xcode project.
186
187 2017-06-27  Jonathan Bedard  <jbedard@apple.com>
188
189         Build fix for PAL
190         https://bugs.webkit.org/show_bug.cgi?id=173896
191
192         Reviewed by Myles C. Maxfield.
193
194         * PAL.xcodeproj/project.pbxproj: Ensure that the SRCROOT is WebCore/PAL and not
195         just WebCore.
196
197 2017-06-27  Don Olmstead  <don.olmstead@sony.com>
198
199         [PAL] Add symbol export macros for PAL
200         https://bugs.webkit.org/show_bug.cgi?id=171519
201
202         Reviewed by Konstantin Tokarev.
203
204         No new tests. No change in behavior.
205
206         * Configurations/CopyPALHeaders.xcconfig: Added.
207         * PAL.xcodeproj/project.pbxproj:
208         * config.h:
209         * pal/ExportMacros.h: Copied from Source/WebCore/platform/PlatformExportMacros.h.
210         * pal/PlatformWin.cmake:
211         * pal/crypto/CryptoDigest.h:
212
213 2017-06-20  Zan Dobersek  <zdobersek@igalia.com>
214
215         [GCrypt] Implement CryptoKeyEC SPKI imports
216         https://bugs.webkit.org/show_bug.cgi?id=172927
217
218         Reviewed by Jiewen Tan, Michael Catanzaro and Carlos Garcia Campos.
219
220         Add a file that provides utility functions for operating with libtasn1 APIs.
221
222         The precomputed ASN.1 declarations, generated from the WebCrypto.asn file with
223         the asn1Parser tool, are used to enable construction of ASN.1 structures that
224         are then used to decode the SPKI or PKCS#8 data through the decodeStructure()
225         function. Raw data of each element in that structure can be retrieved throug the
226         elementData() function.
227
228         The Structure class is added as a wrapper for asn1_node objects that are used
229         as decoding targets, simplifying lifetime management of these objects.
230
231         * pal/PlatformGTK.cmake:
232         * pal/PlatformWPE.cmake:
233         * pal/crypto/tasn1/Utilities.cpp: Added.
234         (PAL::TASN1::asn1Definitions):
235         (PAL::TASN1::decodeStructure):
236         (PAL::TASN1::elementData):
237         * pal/crypto/tasn1/Utilities.h: Added.
238         (PAL::TASN1::Structure::~Structure):
239         (PAL::TASN1::Structure::operator&):
240         (PAL::TASN1::Structure::operator asn1_node):
241         * pal/crypto/tasn1/WebCrypto.asn: Added.
242
243 2017-06-20  Myles C. Maxfield  <mmaxfield@apple.com>
244
245         Disable font variations on macOS Sierra and iOS 10
246         https://bugs.webkit.org/show_bug.cgi?id=173618
247         <rdar://problem/32879164>
248
249         Reviewed by Jon Lee.
250
251         * Configurations/FeatureDefines.xcconfig:
252
253 2017-06-19  Zan Dobersek  <zdobersek@igalia.com>
254
255         Unreviewed build fix after r218484.
256
257         * pal/crypto/gcrypt/Utilities.h: Drop the GCrypt prefix from the
258         GCryptCipherOperation type definition, since it's already nested
259         in the PAL::GCrypt namespace.
260
261 2017-06-19  Zan Dobersek  <zdobersek@igalia.com>
262
263         [GCrypt] AES_CTR support
264         https://bugs.webkit.org/show_bug.cgi?id=171420
265
266         Reviewed by Michael Catanzaro.
267
268         * pal/crypto/gcrypt/Utilities.h: Add a GCryptCipherOperation type alias that can be used
269         for the gcry_cipher_decrypt or gcry_cipher_encrypt function pointers.
270
271 2017-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
272
273         [iOS DnD] Upstream iOS drag and drop implementation into OpenSource WebKit
274         https://bugs.webkit.org/show_bug.cgi?id=173366
275         <rdar://problem/32767014>
276
277         Reviewed by Tim Horton.
278
279         Introduce ENABLE_DATA_INTERACTION and ENABLE_DRAG_SUPPORT to FeatureDefines.xcconfig.
280
281         * Configurations/FeatureDefines.xcconfig:
282
283 2017-06-10  Dan Bernstein  <mitz@apple.com>
284
285         Reverted r218056 because it made the IDE reindex constantly.
286
287         * Configurations/DebugRelease.xcconfig:
288
289 2017-06-10  Dan Bernstein  <mitz@apple.com>
290
291         [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
292         https://bugs.webkit.org/show_bug.cgi?id=173223
293
294         Reviewed by Sam Weinig.
295
296         The rebuilds were happening due to a difference in the compiler options that the IDE and
297         xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
298         xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
299         specify an appropriate path in CLANG_INDEX_STORE_PATH.
300
301         * Configurations/DebugRelease.xcconfig:
302
303 2017-06-01  Andy Estes  <aestes@apple.com>
304
305         REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
306         https://bugs.webkit.org/show_bug.cgi?id=172828
307
308         Reviewed by Beth Dakin.
309
310         * Configurations/FeatureDefines.xcconfig:
311
312 2017-05-31  Andy Estes  <aestes@apple.com>
313
314         Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
315         https://bugs.webkit.org/show_bug.cgi?id=172366
316
317         Reviewed by Daniel Bates.
318
319         * Configurations/FeatureDefines.xcconfig:
320
321 2017-05-30  Alex Christensen  <achristensen@webkit.org>
322
323         Update libwebrtc configuration
324         https://bugs.webkit.org/show_bug.cgi?id=172727
325
326         Reviewed by Geoffrey Garen.
327
328         * Configurations/FeatureDefines.xcconfig:
329
330 2017-05-28  Dan Bernstein  <mitz@apple.com>
331
332         [Xcode] ALWAYS_SEARCH_USER_PATHS is set to YES
333         https://bugs.webkit.org/show_bug.cgi?id=172691
334
335         Reviewed by Tim Horton.
336
337         * Configurations/Base.xcconfig: Set ALWAYS_SEARCH_USER_PATHS to NO.
338
339 2017-05-23  Myles C. Maxfield  <mmaxfield@apple.com>
340
341         Remove dead ENABLE(FONT_LOAD_EVENTS) code
342         https://bugs.webkit.org/show_bug.cgi?id=172517
343
344         Rubber-stamped by Simon Fraser.
345
346         No new tests because there is no behavior change.
347
348         * Configurations/FeatureDefines.xcconfig:
349
350 2017-05-18  Andy Estes  <aestes@apple.com>
351
352         ENABLE(APPLE_PAY_DELEGATE) should be NO on macOS Sierra and earlier
353         https://bugs.webkit.org/show_bug.cgi?id=172305
354
355         Reviewed by Anders Carlsson.
356
357         * Configurations/FeatureDefines.xcconfig:
358
359 2017-05-09  Sam Weinig  <sam@webkit.org>
360
361         Remove support for legacy Notifications
362         https://bugs.webkit.org/show_bug.cgi?id=171487
363
364         Reviewed by Jon Lee.
365
366         * Configurations/FeatureDefines.xcconfig:
367         Remove definition of ENABLE_LEGACY_NOTIFICATIONS.
368
369 2017-05-09  Zan Dobersek  <zdobersek@igalia.com>
370
371         Upstream the WPE port
372         https://bugs.webkit.org/show_bug.cgi?id=171110
373
374         Reviewed by Alex Christensen.
375
376         * pal/PlatformWPE.cmake: Added.
377
378 2017-05-04  Commit Queue  <commit-queue@webkit.org>
379
380         Unreviewed, rolling out r216206.
381         https://bugs.webkit.org/show_bug.cgi?id=171714
382
383         Multiple LayoutTests crashing in Document::page() (Requested
384         by ap on #webkit).
385
386         Reverted changeset:
387
388         "Remove support for legacy Notifications"
389         https://bugs.webkit.org/show_bug.cgi?id=171487
390         http://trac.webkit.org/changeset/216206
391
392 2017-05-04  Don Olmstead  <don.olmstead@am.sony.com>
393
394         [Win] Remove redundant macros that are set in the CMake config
395         https://bugs.webkit.org/show_bug.cgi?id=171571
396
397         Reviewed by Brent Fulgham.
398
399         No new tests. No change in behavior.
400
401         * config.h:
402
403 2017-05-04  Sam Weinig  <sam@webkit.org>
404
405         Remove support for legacy Notifications
406         https://bugs.webkit.org/show_bug.cgi?id=171487
407
408         Reviewed by Jon Lee.
409
410         * Configurations/FeatureDefines.xcconfig:
411         Remove definition of ENABLE_LEGACY_NOTIFICATIONS.
412
413 2017-05-02  Yoshiaki Jitsukawa  <Yoshiaki.Jitsukawa@sony.com>
414
415         Make "PAL/pal" and "PAL/pal/crypto" directories private
416         https://bugs.webkit.org/show_bug.cgi?id=171524
417
418         Reviewed by Myles C. Maxfield.
419
420         Make the "PAL/pal" and "PAL/pal/crypto" directories private to force WebCore sources 
421         to include PAL headers in "#include <pal/***.h>" style.
422
423         * pal/CMakeLists.txt:
424
425 2017-05-01  Zan Dobersek  <zdobersek@igalia.com>
426
427         [GCrypt] ECDH bit derivation support
428         https://bugs.webkit.org/show_bug.cgi?id=171070
429
430         Reviewed by Michael Catanzaro.
431
432         Add PAL::GCrypt::HandleDeleter specialization for the
433         gcry_mpi_point_t type.
434
435         * pal/crypto/gcrypt/Handle.h:
436         (PAL::GCrypt::HandleDeleter<gcry_mpi_point_t>::operator()):
437
438 2017-04-25  Daniel Bates  <dabates@apple.com>
439
440         [Cocoa][Win] Enable of X-Content-Type-Options: nosniff header
441         https://bugs.webkit.org/show_bug.cgi?id=136452
442         <rdar://problem/23412620>
443
444         Reviewed by Brent Fulgham.
445
446         Enable X-Content-Type-Options: nosniff on Mac, iOS and Windows platforms.
447
448         * Configurations/FeatureDefines.xcconfig:
449
450 2017-04-19  Youenn Fablet  <youenn@apple.com>
451
452         [Mac] Allow customizing H264 encoder
453         https://bugs.webkit.org/show_bug.cgi?id=170829
454
455         Reviewed by Alex Christensen.
456
457         * Configurations/FeatureDefines.xcconfig:
458
459 2017-04-17  Youenn Fablet  <youenn@apple.com>
460
461         Disable outdated WritableStream API
462         https://bugs.webkit.org/show_bug.cgi?id=170749
463         <rdar://problem/31446233>
464
465         Reviewed by Alex Christensen.
466
467         * Configurations/FeatureDefines.xcconfig:
468
469 2017-04-14  Mark Lam  <mark.lam@apple.com>
470
471         Update architectures in xcconfig files.
472         https://bugs.webkit.org/show_bug.cgi?id=170867
473         <rdar://problem/31628104>
474
475         Reviewed by Joseph Pecoraro.
476
477         No new tests needed.  Only updating xcconfig files.
478
479         * Configurations/Base.xcconfig:
480         * Configurations/FeatureDefines.xcconfig:
481
482 2017-04-12  Dan Bernstein  <mitz@apple.com>
483
484         [Mac] Future-proof .xcconfig files
485         https://bugs.webkit.org/show_bug.cgi?id=170802
486
487         Reviewed by Tim Horton.
488
489         * Configurations/Base.xcconfig:
490         * Configurations/DebugRelease.xcconfig:
491         * Configurations/FeatureDefines.xcconfig:
492         * Configurations/Version.xcconfig:
493
494 2017-04-11  Dean Jackson  <dino@apple.com>
495
496         Disable outdated WritableStream API
497         https://bugs.webkit.org/show_bug.cgi?id=170749
498         <rdar://problem/31446233>
499
500         Reviewed by Tim Horton.
501
502         The API we implement is no longer accurate. Disable it until we
503         are compatible with the new specification
504
505         * Configurations/FeatureDefines.xcconfig:
506
507 2017-04-10  Alex Christensen  <achristensen@webkit.org>
508
509         Revert r215217
510         https://bugs.webkit.org/show_bug.cgi?id=170703
511
512         * Configurations/FeatureDefines.xcconfig:
513
514 2017-04-10  Alex Christensen  <achristensen@webkit.org>
515
516         Continue enabling WebRTC
517         https://bugs.webkit.org/show_bug.cgi?id=170703
518
519         Reviewed by Youenn Fablet.
520
521         * Configurations/FeatureDefines.xcconfig:
522
523 2017-04-08  Youenn Fablet  <youenn@apple.com>
524
525         WebRTC tests gardening
526         https://bugs.webkit.org/show_bug.cgi?id=170508
527
528         Reviewed by Eric Carlson.
529
530         * Configurations/FeatureDefines.xcconfig:
531
532 2017-04-07  Zan Dobersek  <zdobersek@igalia.com>
533
534         [GCrypt] Implement raw and JWK imports and exports for EC keys
535         https://bugs.webkit.org/show_bug.cgi?id=170546
536
537         Reviewed by Michael Catanzaro.
538
539         Add HandleDeleter specizalizations for gcry_ctx_t and gcry_mpi_t types.
540
541         * pal/crypto/gcrypt/Handle.h:
542         (PAL::GCrypt::HandleDeleter<gcry_ctx_t>::operator()):
543         (PAL::GCrypt::HandleDeleter<gcry_mpi_t>::operator()):
544
545 2017-04-06  Ryan Haddad  <ryanhaddad@apple.com>
546
547         Unreviewed, rolling out r215046.
548
549         This change broke internal builds.
550
551         Reverted changeset:
552
553         "WebRTC tests gardening"
554         https://bugs.webkit.org/show_bug.cgi?id=170508
555         http://trac.webkit.org/changeset/215046
556
557 2017-04-06  Youenn Fablet  <youenn@apple.com>
558
559         WebRTC tests gardening
560         https://bugs.webkit.org/show_bug.cgi?id=170508
561
562         Reviewed by Eric Carlson.
563
564         * Configurations/FeatureDefines.xcconfig:
565
566 2017-04-03  Michael Catanzaro  <mcatanzaro@igalia.com>
567
568         Unreviewed, attempt to fix build with libgcrypt < 1.7.0
569
570         * pal/crypto/gcrypt/Utilities.h:
571
572 2017-04-03  Zan Dobersek  <zdobersek@igalia.com>
573
574         [GCrypt] Implement CryptoKeyEC::keySizeInBits(), ::platformGeneratePair()
575         https://bugs.webkit.org/show_bug.cgi?id=170345
576
577         Reviewed by Michael Catanzaro.
578
579         * pal/crypto/gcrypt/Handle.h:
580         (PAL::GCrypt::HandleDeleter<gcry_sexp_t>::operator()): Add a HandleDeleter
581         specialization for the gcry_sexp_t type.
582
583 2017-04-03  Zan Dobersek  <zdobersek@igalia.com>
584
585         [GCrypt] Implement AES_GCM support
586         https://bugs.webkit.org/show_bug.cgi?id=170271
587
588         Reviewed by Michael Catanzaro.
589
590         * pal/crypto/gcrypt/Handle.h:
591         (PAL::GCrypt::HandleDeleter<gcry_cipher_hd_t>::operator()): Specialize
592         the HandleDeleter<> template for the gcry_cipher_hd_t type.
593
594 2017-03-30  Zan Dobersek  <zdobersek@igalia.com>
595
596         [GCrypt] Add the Utilities.h header
597         https://bugs.webkit.org/show_bug.cgi?id=170269
598
599         Reviewed by Michael Catanzaro.
600
601         Add a libgcrypt-specific Utilities.h header under PAL. It will contain
602         common functions that are shared throughout the code that leverages
603         libgcrypt.
604
605         * pal/crypto/gcrypt/Utilities.h: Added.
606         (PAL::GCrypt::logError): Use WTFLogAlways() to report the passed-in libgcrypt error.
607         (PAL::GCrypt::aesAlgorithmForKeySize): Return a GCRY_CIPHER_AES{128,192,256} value
608         that matches up with the passed-in key size.
609
610 2017-03-29  Zan Dobersek  <zdobersek@igalia.com>
611
612         [GCrypt] Add a Handle<> class to help with GCrypt object lifetime control
613         https://bugs.webkit.org/show_bug.cgi?id=170238
614
615         Reviewed by Michael Catanzaro.
616
617         Add a GCrypt-specific Handle<> template class, inside the GCrypt namespace.
618         Objects of this class should be used as 'smart handles', cleaning up upon
619         destruction the GCrypt object that's represented by the handle they manage.
620
621         This mimics the std::unique_ptr<> idea, but is narrowly focused towards
622         how such handles are used in the libgcrypt API. A GCrypt::Handle<> object
623         can be consturcted from an existing handle or with the default null value.
624         It can be cleared upon request via clear(), and the managed handle can be
625         released via release().
626
627         The address of the managed handle can be retrieved through the address-of
628         operator. An implicit conversion operator is also added. This allows
629         frictionless use of GCrypt::Handle<> objects with existing libgcrypt APIs.
630
631         The negation operator is implemented to support testing the nullness of
632         the managed handle. The raw handle value is also retrieveable through
633         the handle() method.
634
635         The copy and move constructors and assignment operators are deleted.
636         They are not at the moment required anywhere in the work-in-progress
637         implementation of subtle crypto functionality.
638
639         As with other resource management classes, upon destruction, the
640         GCrypt::Handle<> object destroys the resource it manages. This is done
641         through objects of the HandleDeleter<> template class. Specializations
642         of this class have to implement the call operator that properly
643         releases the resource. Because the operator is deleted by default,
644         a compilation error will be thrown when deleting a resource of some
645         type for which the proper HandleDeleter specialization isn't provided.
646
647         std::unique_ptr<> could be used, but it could also be mis-used. I find
648         a mini-class with an interface that's specific to libgcrypt API
649         interactions to be preferrable to a std::unique_ptr<> with a custom
650         deleter.
651
652         * pal/crypto/gcrypt/Handle.h: Added.
653         (PAL::GCrypt::Handle::Handle):
654         (PAL::GCrypt::Handle::~Handle):
655         (PAL::GCrypt::Handle::clear):
656         (PAL::GCrypt::Handle::release):
657         (PAL::GCrypt::Handle::operator&):
658         (PAL::GCrypt::Handle::handle):
659         (PAL::GCrypt::Handle::operator T):
660         (PAL::GCrypt::Handle::operator!):
661         (PAL::GCrypt::HandleDeleter<gcry_mac_hd_t>::operator()):
662
663 2017-03-29  Zan Dobersek  <zdobersek@igalia.com>
664
665         [GnuTLS] Remove unused CryptoDigestGnuTLS, CryptoAlgorithmHMACGnuTLS implementation files
666         https://bugs.webkit.org/show_bug.cgi?id=170231
667
668         Reviewed by Michael Catanzaro.
669
670         * pal/crypto/gnutls/CryptoDigestGnuTLS.cpp: Removed. The GCrypt counterpart
671         is already in use, and this file wasn't even being built.
672
673 2017-03-17  Michael Saboff  <msaboff@apple.com>
674
675         Use USE_INTERNAL_SDK to compute ENABLE_FAST_JIT_PERMISSIONS instead of HAVE_INTERNAL_SDK
676         https://bugs.webkit.org/show_bug.cgi?id=169817
677
678         Reviewed by Filip Pizlo.
679
680         * Configurations/FeatureDefines.xcconfig:
681
682 2017-03-15  Dean Jackson  <dino@apple.com>
683
684         Sort Xcode project files
685         https://bugs.webkit.org/show_bug.cgi?id=169669
686
687         Reviewed by Antoine Quint.
688
689         * PAL.xcodeproj/project.pbxproj:
690
691 2017-03-10  Alex Christensen  <achristensen@webkit.org>
692
693         Fix watch and tv builds after r213294
694         https://bugs.webkit.org/show_bug.cgi?id=169508
695
696         Reviewed by Dan Bernstein.
697
698         * Configurations/FeatureDefines.xcconfig:
699
700 2017-03-09  Anders Carlsson  <andersca@apple.com>
701
702         Add delegate support to WebCore
703         https://bugs.webkit.org/show_bug.cgi?id=169427
704         Part of rdar://problem/28880714.
705
706         Reviewed by Geoffrey Garen.
707
708         * Configurations/FeatureDefines.xcconfig:
709         Add feature define.
710
711 2017-03-07  Dean Jackson  <dino@apple.com>
712
713         Some platforms won't be able to create a GPUDevice
714         https://bugs.webkit.org/show_bug.cgi?id=169314
715         <rdar://problems/30907521>
716
717         Reviewed by Jon Lee.
718
719         Disable WEB_GPU on the iOS Simulator.
720
721         * Configurations/FeatureDefines.xcconfig:
722
723 2017-03-06  Michael Saboff  <msaboff@apple.com>
724
725         Take advantage of fast permissions switching of JIT memory for devices that support it
726         https://bugs.webkit.org/show_bug.cgi?id=169155
727
728         Reviewed by Saam Barati.
729
730         Updated the Xcode config files to match what is in the JavaScriptCore ones.
731
732         * Configurations/FeatureDefines.xcconfig:
733
734 2017-03-03  Dean Jackson  <dino@apple.com>
735
736         Add WebGPU compile flag and experimental feature flag
737         https://bugs.webkit.org/show_bug.cgi?id=169161
738         <rdar://problem/30846689>
739
740         Reviewed by Tim Horton.
741
742         Add ENABLE_WEBGPU, an experimental feature flag, a RuntimeEnabledFeature,
743         and an InternalSetting.
744
745         * Configurations/FeatureDefines.xcconfig:
746
747 2017-03-02  Alex Christensen  <achristensen@webkit.org>
748
749         Continue enabling WebRTC
750         https://bugs.webkit.org/show_bug.cgi?id=169056
751
752         Reviewed by Jon Lee.
753
754         * Configurations/FeatureDefines.xcconfig:
755
756 2017-03-01  Alex Christensen  <achristensen@webkit.org>
757
758         Unreviewed, rolling out r213259.
759
760         Broke an internal build
761
762         Reverted changeset:
763
764         "Continue enabling WebRTC"
765         https://bugs.webkit.org/show_bug.cgi?id=169056
766         http://trac.webkit.org/changeset/213259
767
768 2017-03-01  Alex Christensen  <achristensen@webkit.org>
769
770         Continue enabling WebRTC
771         https://bugs.webkit.org/show_bug.cgi?id=169056
772
773         Reviewed by Jon Lee.
774
775         * Configurations/FeatureDefines.xcconfig:
776
777 2017-02-27  Alex Christensen  <achristensen@webkit.org>
778
779         Begin enabling WebRTC on 64-bit
780         https://bugs.webkit.org/show_bug.cgi?id=168915
781
782         Reviewed by Eric Carlson.
783
784         * Configurations/FeatureDefines.xcconfig:
785
786 2017-02-27  Alex Christensen  <achristensen@webkit.org>
787
788         [libwebrtc] Enable WebRTC in some Production Builds
789         https://bugs.webkit.org/show_bug.cgi?id=168858
790
791         * Configurations/FeatureDefines.xcconfig:
792
793 2017-02-21  Youenn Fablet  <youenn@apple.com>
794
795         [WebRTC][Mac] Activate libwebrtc
796         https://bugs.webkit.org/show_bug.cgi?id=167293
797
798         Reviewed by Alex Christensen.
799
800         * Configurations/FeatureDefines.xcconfig:
801
802 2017-02-20  Manuel Rego Casasnovas  <rego@igalia.com>
803
804         [css-grid] Remove compilation flag ENABLE_CSS_GRID_LAYOUT
805         https://bugs.webkit.org/show_bug.cgi?id=167693
806
807         Reviewed by Sergio Villar Senin.
808
809         * Configurations/FeatureDefines.xcconfig:
810
811 2017-02-16  Anders Carlsson  <andersca@apple.com>
812
813         Begin removing EFL code from WebCore.
814
815         Rubber-stamped by Alex Christensen.
816
817         * pal/PlatformEfl.cmake: Removed.
818
819 2017-01-28  Dan Bernstein  <mitz@apple.com>
820
821         [Xcode] Clean up PAL and WebCore’s build settings a little
822         https://bugs.webkit.org/show_bug.cgi?id=167292
823
824         Reviewed by Sam Weinig.
825
826         * ChangeLog: Created this file.
827
828         * Configurations/Base.xcconfig: Simplified the definition of
829           GCC_WARN_64_TO_32_BIT_CONVERSION, removed the unused build setting PREBINDING, removed
830           a duplicate definition of GCC_GENERATE_DEBUGGING_SYMBOLS, and removed definitions specific
831           to OS X versions that are no longer supported.
832
833         * Configurations/DebugRelease.xcconfig: Removed definitions specific to OS X versions
834           that are no longer supported.
835
836         * Configurations/PAL.xcconfig: Removed header search paths that do not exist or do not
837           make sense. Simplified the definitions of INSTALL_PATH and SKIP_INSTALL. Removed the
838           unusued build settings PRODUCT_BUNDLE_IDENTIFIER and
839           WK_PREFIXED_IPHONEOS_DEPLOYMENT_TARGET. Removed the redundant definition of
840           EXECUTABLE_PREFIX.
841
842         * PAL.xcodeproj/project.pbxproj: Sorted the Configurations group.