- 19 Feb, 2019 5 commits
-
-
Mingtao Yang authored
Summary: OpenSSL 1.1.1 adds TLSv1.3 support, but changes several semantics (e.g. assumptions on SSL_get_session() returning resumable sessions) that require some work to address. A lot of our AsyncSocket tests fail (e.g. tests for resumption will automatically fail, since TLSv1.3 has no resumption support), and would need to be updated to explicitly disable TLSv1.3. The plan is to eventually remove this after these items are addressed. Reviewed By: yfeldblum Differential Revision: D14073093 fbshipit-source-id: 181b05395ed35aaa7deb00b8968ff4d371b683f4
-
Joe Loser authored
Summary: - Backporting `std:exchange` is no longer needed as Folly requires C++14 support and C++14-compliant vendors have `std::exchange` in their standard library, notably including GCC 4.9. - Cut backport of `std::exchange` and fix call sites to explicitly use `std::exchange` where they were previously relying on `exchange` being found in the `folly` namespace. Pull Request resolved: https://github.com/facebook/folly/pull/1021 Reviewed By: Orvid Differential Revision: D14119875 Pulled By: yfeldblum fbshipit-source-id: 686a8e812f6728281b432eae1586de28d21da9dd
-
Paul Jewell authored
Summary: A specialization for reading into enums from serialized form was added a while back. Unfortunately, no corresponding change to serialize from enums into a dynamic was added. This change adds the corresponding DynamicConstructor specialization for enums to allow serializing enums and objects containing enums. Reviewed By: ot, shixiao Differential Revision: D14091417 fbshipit-source-id: 15ef8bc46843cd668b4b2c991e84167dabaf69fa
-
Yedidya Feldblum authored
Summary: [Folly] `kHasRtti` to parallel `FOLLY_HAS_RTTI`. Reviewed By: Orvid Differential Revision: D14129217 fbshipit-source-id: ce60fd0b47c64c19b515d21db55aa88ba37ca637
-
Greg McGary authored
Summary: The current predicate yields false positive for NDK r17. NDK r18 has launder without defining `__cpp_lib_launder`. NDK r19 finally gets it right by defining `__cpp_lib_launder`. r17: launder? no, `__cpp_lib_launder` undefined, `_LIBCPP_VERSION == 6000` r18: launder? yes, `__cpp_lib_launder` undefined, `_LIBCPP_VERSION == 7000` r19: launder? yes, `__cpp_lib_launder == 201606L`, `_LIBCPP_VERSION == 8000` Reviewed By: yfeldblum Differential Revision: D14098189 fbshipit-source-id: 315dba44c6474407a8f4c1d25c81fff057d5f7db
-
- 18 Feb, 2019 1 commit
-
-
Yedidya Feldblum authored
Summary: [Folly] Use `StaticSingletonManager` for `LoggerDB::get()` inline fast path. This also simplifies the singleton setup overall. Note that the inline slow path here is not quite as small as doing the strategy directly would be since three pointers need to be passed to the outline slow path. Reviewed By: simpkins Differential Revision: D14016983 fbshipit-source-id: ea2646f8efd5c2dbcdece4ebd3b88949bc3d4294
-
- 16 Feb, 2019 1 commit
-
-
Andrii Grynenko authored
Reviewed By: yfeldblum Differential Revision: D14109224 fbshipit-source-id: 4bcd40b8692478540f5b5b4ee2751f1d311b3ac5
-
- 15 Feb, 2019 2 commits
-
-
Joe Loser authored
Summary: - AtomicHashMap.h has an unneeded include for `<boost/type_traits/is_convertible.h`. - Remove the include and add `<type_traits>` in `AtomicHashMap-inl.h` since it uses `std::is_convertible`. Pull Request resolved: https://github.com/facebook/folly/pull/1018 Reviewed By: Orvid Differential Revision: D14078944 Pulled By: yfeldblum fbshipit-source-id: f1450166a5bedb279db71e9b4f915811c71e5f1a
-
Orvid King authored
Reviewed By: yfeldblum Differential Revision: D13603520 fbshipit-source-id: 08365b3723c024697a546223683e774f18b61a94
-
- 14 Feb, 2019 7 commits
-
-
Michael Liu authored
Summary: Use C++11’s override and remove virtual where applicable. Change are automatically generated. Reviewed By: shixiao Differential Revision: D14089910 fbshipit-source-id: 12c776ea06094ee77c7e07263397dab3419c5309
-
Robert Copeland authored
Summary: On ARM gcc, the unwind header defines exception_class as a char[8] rather than a uint64_t. Consequently compilation of exception_tracer fails on ARM with the following error: .../folly/experimental/exception_tracer/ExceptionTracer.cpp: In function 'bool folly::exception_tracer::{anonymous}::isAbiCppException(const __cxxabiv1::__cxa_exception*)': .../folly/experimental/exception_tracer/ExceptionTracer.cpp:107:45: error: invalid operands of types 'const char [8]' and 'unsigned int' to binary 'operator&' return (exc->unwindHeader.exception_class & 0xffffffff) == cppClass; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ Construct a uint64_t for this platform. Reviewed By: yfeldblum Differential Revision: D13763587 fbshipit-source-id: 011cf13cdfcd1fffdeab8c384f7274f20faecbe5
-
Andrii Grynenko authored
Summary: Wrap Executor in ExecutorWithPriority if custom priority is passed. Reviewed By: yfeldblum Differential Revision: D14079222 fbshipit-source-id: 56917827f54115b90ca237c71321f7db327355e1
-
Arushi Aggarwal authored
Reviewed By: yfeldblum Differential Revision: D14062156 fbshipit-source-id: 2cdc32fc9834bd165fa8011ca1d336edaf05f653
-
Lee Howes authored
Summary: delayedUnsafe was deprecated. All callers have been removed. This removes the core code so that it will not sneak back in. Reviewed By: yfeldblum Differential Revision: D14029673 fbshipit-source-id: 0384364a8e0ab8953e9746b91e3b6e7b2e5d7c67
-
Yedidya Feldblum authored
Summary: [Folly] A test verifying `Function` behaves as expected with max-align callables. Reviewed By: aary Differential Revision: D14077496 fbshipit-source-id: 8a9efaee3cc4c5d69c6a94eb5ad1928d241eb4e0
-
Lee Howes authored
Summary: Clone sleep as sleepUnsafe as a codemod target to migrate callsites to a SemiFuture-returning sleep. Reviewed By: yfeldblum Differential Revision: D14072020 fbshipit-source-id: 3dc88378732ca203c168ea2e4371508ee376cc43
-
- 13 Feb, 2019 5 commits
-
-
Andrii Grynenko authored
Summary: SemiFuture implementation assumes that it's always safe to read Executor (if Executor is DeferredExecutor - then SemiFuture can never be completed until via is called, otherwise Executor is nullptr and we should never overwrite it). doCallback() however was unconditionally overwritting Executor, which resulted in TSAN reports. Reviewed By: yfeldblum Differential Revision: D14063047 fbshipit-source-id: 7553c8a2d0cbda05ad07b87297a334a69ee77f9c
-
Caleb Marchent authored
Summary: range.pxd needs to be exported; so that fbtrhift-py3 can compile against it Pull Request resolved: https://github.com/facebook/folly/pull/1013 Reviewed By: yfeldblum Differential Revision: D13987018 Pulled By: calebmarchent fbshipit-source-id: 7b7e6f62e5bc23e70a3c263fb3b33cf1d439e439
-
Yedidya Feldblum authored
Summary: [Folly] Remove disabled code from `FOR_EACH_RANGE`. Reviewed By: aary Differential Revision: D14062987 fbshipit-source-id: 6d01e76debc46398ceae3be435691c20595d393e
-
Yedidya Feldblum authored
Summary: [Folly] `pretty_name`, for getting static type pretty-names without RTTI. Available as constant expressions - no runtime overhead. Depends on per-platform non-specified magic symbols. May not work everywhere. Reviewed By: aary Differential Revision: D14019723 fbshipit-source-id: e50557261024298cd37957b94dad3a10c927ee97
-
Yedidya Feldblum authored
Summary: [Folly] Cut macro `FOR_EACH_RANGE_R`. Reviewed By: aary, danobi Differential Revision: D14058731 fbshipit-source-id: d31c0673785d467665598e2138b6b6082d9629ab
-
- 12 Feb, 2019 4 commits
-
-
Joe Loser authored
Summary: - Use `std::is_trivially_destructible` instead of `boost::has_trivial_destructor` in a few places. Pull Request resolved: https://github.com/facebook/folly/pull/1003 Reviewed By: lbrandy Differential Revision: D13754694 Pulled By: yfeldblum fbshipit-source-id: b32dbc901fd7c9cae681ac3436cc71ff075f30ec
-
Orvid King authored
Summary: The file descriptor overload will be going away. Reviewed By: yfeldblum Differential Revision: D13628834 fbshipit-source-id: bc81ffdf011113479c95c1e8ae7deb4d0ff91e41
-
Yedidya Feldblum authored
Summary: [Folly] `StaticSingletonManager` without RTTI as a variant, but without support for dynamic loading either. Reviewed By: andriigrynenko Differential Revision: D14018865 fbshipit-source-id: d4eadc8924e6fec2cbb1dae957e311d80e9ce289
-
Yedidya Feldblum authored
Summary: [Folly] Fix StaticSingletonManager inline fast path under gcc - code size for default-initialized `static std::atomic<...>` local is large, but when value-initialized is trivial. Reviewed By: andriigrynenko Differential Revision: D14018861 fbshipit-source-id: e767ea3e46c3e3317f7b60008bc77f64edb2dea0
-
- 11 Feb, 2019 3 commits
-
-
Joe Loser authored
Summary: Pull Request resolved: https://github.com/facebook/folly/pull/1014 Reviewed By: lbrandy Differential Revision: D14019229 Pulled By: yfeldblum fbshipit-source-id: dd07d567a7f176a3bb0e18f7a19c3babfe2d431d
-
Adam Norton authored
Summary: Allows erase without a re-hash into index_ when we already have an iterator Reviewed By: aary Differential Revision: D13928691 fbshipit-source-id: d662dc72cd8a07cdbd874cb6a3517f68ef320d80
-
Barys Skarabahaty authored
Summary: Right now we invoke ValueType ctor (e.g. `ValueType(bucket.count)`) to calculate range adjust for long values, but ValueType can be any type and it should not have a ctro which accepts long Reviewed By: yfeldblum Differential Revision: D13986728 fbshipit-source-id: e5b8d826d14fb4c889047b97d88df35654119849
-
- 10 Feb, 2019 1 commit
-
-
Yedidya Feldblum authored
Summary: [Folly] Always define `FOLLY_HAS_RTTI` to either `0` or `1`. Reviewed By: LeeHowes Differential Revision: D14018830 fbshipit-source-id: 5212f3f6269067fc6326e293cedb243e650f71db
-
- 09 Feb, 2019 2 commits
-
-
Dongyi Ye authored
Summary: Currently udp socket send packet to listener in a round robin fashion. This will cause issue if there are more than one packet in one "session". Because packets from one session could be routed to two different listeners. This diff added a packet dispatch option which use clientAddress (address family + ip + port) hashing. In this way, the packets from same client will always routed to same listener when the total number of listener is consistent. Reviewed By: yfeldblum Differential Revision: D13994665 fbshipit-source-id: e450c2fcbc95c55cb37cb5cda13c5df6d8119812
-
Yedidya Feldblum authored
Summary: [Folly] Make Init non-moveable to break code that could trigger early invocation of the moved-from instance's destructor when copy elision is not applied. Reviewed By: markisaa Differential Revision: D14002508 fbshipit-source-id: faf8de587c0573d14d9b1082b7f531e147c48ed7
-
- 08 Feb, 2019 9 commits
-
-
Yedidya Feldblum authored
Summary: [Folly] Detect libc++ std version in `folly::chrono` backports, since libc++ does not define the recommended feature macros. Reviewed By: wez Differential Revision: D14002296 fbshipit-source-id: 022085658aee3a453c5aea714f75f27013825c6f
-
Orvid King authored
Summary: It's dead now. Reviewed By: yfeldblum Differential Revision: D13629451 fbshipit-source-id: f4a79919ba20a13b6afd59b5e4605bf8faa3c6ad
-
Orvid King authored
Summary: The file-descriptor backed API will be going away. Reviewed By: yfeldblum, ryantimwilson Differential Revision: D13603038 fbshipit-source-id: d89d3a3836ab551ec92c2fb1f74248cc2119ba03
-
Adam Norton authored
Summary: Add insert method to mimic std::unordered_map::insert. Allows for insertion without overwriting an existing element. Reviewed By: yfeldblum Differential Revision: D13928583 fbshipit-source-id: 54f0eb5069b753bcaca55b04c09968d12dceb5e3
-
Andrii Grynenko authored
Reviewed By: lewissbaker Differential Revision: D14002394 fbshipit-source-id: 8f0422d66c6b6859ec42a6ee5ea58c97e9a15de9
-
Wez Furlong authored
Summary: This manifested once D13765262 landed, but is likely more closely related to the changes in D4375603: ``` In file included from /Users/facebook/wez-fbsource/fbcode/watchman/external/folly/folly/io/async/TimeoutManager.cpp:21: /Users/facebook/wez-fbsource/fbcode/watchman/external/folly/folly/Chrono.h:153:32: error: call to 'floor' is ambiguous return detail::round_impl(d, floor<To>(d)); ^~~~~~~~~ /Users/facebook/wez-fbsource/fbcode/watchman/external/folly/folly/io/async/TimeoutManager.cpp:77:44: note: in instantiation of function template specialization 'folly::chrono::round<std::__1::chrono::duration<long long, std::__1::ratio<1, 1000> >, long long, std::__1::ratio<1, 1000000>, void>' requested here timeout_type timeout_ms = folly::chrono::round<timeout_type>(timeout); ^ /usr/local/fbprojects/packages/xcode/104/xcode_10.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/chrono:444:1: note: candidate function [with _ToDuration = std::__1::chrono::duration<long long, std::__1::ratio<1, 1000> >, _Rep = long long, _Period = std::__1::ratio<1, 1000000>] floor(const duration<_Rep, _Period>& __d) ^ /Users/facebook/wez-fbsource/fbcode/watchman/external/folly/folly/Chrono.h:127:14: note: candidate function [with To = std::__1::chrono::duration<long long, std::__1::ratio<1, 1000> >, Rep = long long, Period = std::__1::ratio<1, 1000000>, $3 = void] constexpr To floor(std::chrono::duration<Rep, Period> const& d) { ^ ``` this diff resolves the ambiguity in favor of `folly::chrono::floor`. Reviewed By: bolinfest Differential Revision: D14000897 fbshipit-source-id: 669dbf3573c3799cb21e14f247acc8d053afe746
-
Adam Simpkins authored
Summary: Move `FatalHelper.cpp` to the new folly/logging/test/helpers directory created in D13984692. Reviewed By: yfeldblum, dmaone Differential Revision: D13994517 fbshipit-source-id: e2b7e4b4f649fed5b882df47424d24e4fc4f717a
-
Adam Simpkins authored
Summary: Fix a problem where `LoggerDB::get()` could crash when called after `main()` has returned. The `LoggerDBSingleton` object may have been destroyed already, so calling `LoggerDBSingleton::getDB()` was not allowed. This updates the code to just store the singleton in a simple raw pointer, and only use the singleton helper object for flushing log handlers. Reviewed By: dmaone Differential Revision: D13984692 fbshipit-source-id: a0c8550af367458ca39fefa9090e3165ad6a82bb
-
Eric Niebler authored
Summary: Judging from the number of things that needed fixing, pushmi has been busted on gcc-5 for some time. Reviewed By: yfeldblum, kirkshoop Differential Revision: D13979146 fbshipit-source-id: 95def0ef6289b41e116a55359476ffec91787706
-