levlam
|
28362c1879
|
Avoid duplicate is_error() check in TRY_STATUS/TRY_RESULT.
|
2023-03-21 13:30:42 +03:00 |
|
levlam
|
489e5dbc62
|
Add debug logging.
|
2023-03-14 22:43:28 +03:00 |
|
levlam
|
7e4f349da8
|
Move EFAULT to the list of expected errors for ::read.
|
2023-03-09 00:05:44 +03:00 |
|
levlam
|
a8d0459827
|
Remove duplicated fields from log message.
|
2023-03-08 17:23:27 +03:00 |
|
levlam
|
e7242b1188
|
Fix includes.
|
2023-03-06 20:36:56 +03:00 |
|
levlam
|
d4646d4cd9
|
Minor improvements.
|
2023-03-06 16:59:18 +03:00 |
|
levlam
|
2c86bc719b
|
Improve test assertion messages.
|
2023-03-02 17:35:57 +03:00 |
|
levlam
|
1c43f3844b
|
Disallow to_string for bool.
|
2023-02-22 14:53:48 +03:00 |
|
levlam
|
22fdc0258b
|
Use "receive"/"have"/"loaded" instead of "got" and other log message improvements.
|
2023-02-26 14:22:31 +03:00 |
|
levlam
|
ffcc1719ef
|
Improve log message spelling.
|
2023-02-26 13:41:49 +03:00 |
|
levlam
|
ee4ecbc0be
|
Avoid the use of low-numbered file descriptors.
|
2023-02-13 14:40:36 +03:00 |
|
levlam
|
852a1640b0
|
Fix FileFd::sync_barrier.
|
2023-02-10 15:17:07 +03:00 |
|
Arseny Smirnov
|
a0dd1e1a07
|
FileFd::sync_barrier uses F_BARRIERFSYNC on darwin
|
2023-02-10 12:17:56 +01:00 |
|
levlam
|
7eee3f469a
|
Update clang-format to 16.0.0.
|
2023-02-08 15:28:36 +03:00 |
|
levlam
|
a08b1f9107
|
Use __is_trivially_copyable if possible.
|
2023-02-07 13:13:56 +03:00 |
|
levlam
|
5ed796cd57
|
Improve CRC spelling.
|
2023-02-03 08:27:26 +03:00 |
|
levlam
|
0adcac246a
|
Use explicit as_mutable_slice to get MutableSlice.
|
2023-02-02 17:40:47 +03:00 |
|
levlam
|
4d70d1e920
|
Minor improvements.
|
2023-01-31 13:33:30 +03:00 |
|
levlam
|
9555bfc16c
|
Add test for parse_url.
|
2023-01-30 15:29:01 +03:00 |
|
levlam
|
e2d079860d
|
Add userinfo characters check.
|
2023-01-30 13:40:09 +03:00 |
|
levlam
|
587a882270
|
Don't remove emoji selectors in search_stickers.
|
2023-01-23 22:10:23 +03:00 |
|
levlam
|
345709f1ff
|
Store StickerPhotoSize in unique_ptr to optimize Photo size.
|
2023-01-23 00:57:40 +03:00 |
|
levlam
|
201af22ef2
|
Add unique_value_ptr.
|
2023-01-22 23:36:30 +03:00 |
|
levlam
|
5b451f7e11
|
Allow redundant 0xFE0F after emoji.
|
2023-01-18 18:22:41 +03:00 |
|
levlam
|
1588f0d687
|
Return after call to on_error.
|
2023-01-18 17:10:08 +03:00 |
|
levlam
|
ad8f0c4146
|
Improve some spelling.
|
2023-01-16 12:59:43 +03:00 |
|
levlam
|
8d8f72a17a
|
Fix some lower-case spelling.
|
2023-01-15 12:00:26 +03:00 |
|
levlam
|
052d5e120b
|
Improve some mixed-case spelling.
|
2023-01-15 11:25:54 +03:00 |
|
levlam
|
e87e18c8be
|
Use busy-waiting instead of short Sleep on Windows.
|
2023-01-11 13:52:46 +03:00 |
|
levlam
|
853030e999
|
Don't use FILE_FLAG_OPEN_REPARSE_POINT with UWP.
|
2023-01-10 22:56:11 +03:00 |
|
levlam
|
137fd3beb9
|
Replace text in-place in parse_html.
|
2023-01-09 15:12:14 +03:00 |
|
levlam
|
0fb64f97a4
|
Use StringBuilder to create new string in parse_html.
|
2023-01-09 12:43:15 +03:00 |
|
levlam
|
d12ca158c4
|
Add constant methods to td::Container.
|
2023-01-06 14:54:54 +03:00 |
|
levlam
|
651f49fc90
|
Delete symbolic links in rmrf.
|
2023-01-05 16:46:39 +03:00 |
|
levlam
|
3573990d52
|
Support symbolic links in walk_path.
|
2023-01-04 17:25:30 +03:00 |
|
levlam
|
8df67f0c3a
|
Add Stat.is_symbolic_link_.
|
2023-01-04 16:39:33 +03:00 |
|
levlam
|
903d994799
|
Improve punctuation.
|
2023-01-02 15:38:04 +03:00 |
|
levlam
|
8b763bedaf
|
Move random_shuffle to tests.h.
|
2023-01-02 14:29:03 +03:00 |
|
levlam
|
cf1984844b
|
Update copyright year.
|
2023-01-01 00:28:08 +03:00 |
|
levlam
|
d2060a2eb3
|
Improve log messages with time.
|
2022-12-11 01:32:46 +03:00 |
|
levlam
|
b11a5b8ad4
|
Fix log size after rotation.
|
2022-11-29 17:39:46 +03:00 |
|
levlam
|
ed1457b69b
|
Use std:🧵:native_handle() only for MSVC, because it is unsafe to assume native_handle_type otherwise.
|
2022-11-26 02:48:43 +03:00 |
|
Eric Kotato
|
b281a719fa
|
Fix MinGW threading compilation error (#2210)
|
2022-11-26 00:36:48 +03:00 |
|
levlam
|
3ec53c8d78
|
Fix compilation error.
|
2022-11-24 15:25:15 +03:00 |
|
levlam
|
276b654f27
|
Return back randomize_hash to WaitFreeHashMap.
|
2022-11-24 02:09:04 +03:00 |
|
levlam
|
af05db3f15
|
Add td::Hash and use it everywhere instead of unusable std::hash.
|
2022-11-23 19:37:32 +03:00 |
|
levlam
|
b1ddf9d3a7
|
Minor fixes.
|
2022-11-23 16:32:09 +03:00 |
|
levlam
|
8a73d14c0f
|
Minor FloodControlFast improvements.
|
2022-11-23 00:45:17 +03:00 |
|
Arseny Smirnov
|
b9210f7f6d
|
Rewrite FoodControlFast: now it uses a bucket logic
|
2022-11-22 15:59:01 +01:00 |
|
levlam
|
0eefb331f8
|
Improve size formatting.
|
2022-11-22 14:50:10 +03:00 |
|
levlam
|
f53cf540b7
|
Use WaitFreeHashMap to store poll messages.
|
2022-11-22 12:58:07 +03:00 |
|
levlam
|
468edb4d61
|
Use double timestamps in FloodControlStrict.
|
2022-11-21 21:07:56 +03:00 |
|
levlam
|
f4c1247327
|
Minor FloodControlStrict improvements.
|
2022-11-21 20:52:12 +03:00 |
|
levlam
|
44df11cfcf
|
Decrease maximum size of wait-free hash tables.
|
2022-11-21 18:12:26 +03:00 |
|
levlam
|
f1ee808465
|
Fix warning.
|
2022-11-18 15:19:01 +03:00 |
|
levlam
|
47aa5b51c7
|
Improve log guard.
|
2022-11-18 14:33:23 +03:00 |
|
levlam
|
f8e2af3f59
|
Rename size() to calc_size() for WaitFree hash tables.
|
2022-11-18 13:16:24 +03:00 |
|
levlam
|
35a9a4b785
|
Make WaitFreeHashSet recursive.
|
2022-11-18 13:08:04 +03:00 |
|
levlam
|
e7b7217256
|
Make WaitFreeHashMap recursive.
|
2022-11-18 12:53:26 +03:00 |
|
levlam
|
a1f19371b0
|
Improve to_integer_safe error message.
|
2022-11-18 00:25:36 +03:00 |
|
levlam
|
59d4248efb
|
Add voluntary spin lock for logging to reduce conflicts with stderr.
|
2022-11-14 14:34:31 +03:00 |
|
levlam
|
97f14fb6a9
|
Fix remove_emoji_modifiers.
|
2022-11-11 22:20:38 +03:00 |
|
levlam
|
8b4bc80860
|
Fix AsyncFileLog building without threads.
|
2022-11-09 14:48:14 +03:00 |
|
levlam
|
ab14065168
|
Improve fatal error handling in AsyncFileLog.
|
2022-11-07 14:59:18 +03:00 |
|
levlam
|
d1afd1c3b7
|
Minor improvements.
|
2022-11-02 19:51:41 +03:00 |
|
levlam
|
e11804b5b0
|
Don't truncate logs after rotation.
|
2022-11-01 14:13:14 +03:00 |
|
levlam
|
8c694cd3d3
|
Improve TimedStat value after long pause.
|
2022-11-01 14:03:20 +03:00 |
|
levlam
|
a3baecab16
|
Improve field names.
|
2022-10-27 13:06:12 +03:00 |
|
levlam
|
6319862890
|
Improve some emplace_back/push_back usage.
|
2022-10-27 12:53:53 +03:00 |
|
levlam
|
dcc928419f
|
Fix parse_url_query test.
|
2022-10-26 09:13:42 +03:00 |
|
levlam
|
60f094bdf2
|
Move ConcurrentHashMap test out of namespace td.
|
2022-10-21 13:18:58 +03:00 |
|
levlam
|
5217a86e0d
|
Support redirect_stderr in AsyncFileLog.
|
2022-10-15 10:17:42 +03:00 |
|
levlam
|
ee28a37906
|
Minor improvements.
|
2022-10-12 15:59:58 +03:00 |
|
levlam
|
683627a350
|
Make all operator bool const and nonexcept.
|
2022-10-09 19:30:18 +03:00 |
|
levlam
|
7f5f6e41ad
|
Minor improvements.
|
2022-10-09 19:00:14 +03:00 |
|
levlam
|
5a29dcd337
|
Avoid redundant usages of Status::error().
|
2022-10-09 14:15:54 +03:00 |
|
levlam
|
78ba8fa983
|
Add AsyncFileLog.
|
2022-10-09 13:04:57 +03:00 |
|
levlam
|
f12b2f5efe
|
Fix warning.
|
2022-10-08 20:54:58 +03:00 |
|
levlam
|
4af5c4f5dd
|
Add logging for slow logging to file.
|
2022-10-05 23:55:50 +03:00 |
|
levlam
|
67aa7082d6
|
Add thread.get_id() test.
|
2022-10-04 23:00:02 +03:00 |
|
levlam
|
e984706622
|
Add td:🧵:get_id().
|
2022-10-04 22:48:55 +03:00 |
|
levlam
|
628b8901bc
|
Optimize logging to NULL on Windows. Fixes #2112.
It is possible to do only about 100 writes to NULL per second, which is about 8-80 times less than even performance of writes to a console app.
|
2022-10-03 15:11:23 +03:00 |
|
levlam
|
10680fe353
|
Minor improvements.
|
2022-10-03 14:39:20 +03:00 |
|
levlam
|
8f0ffd0a65
|
Reduce MAX_STORAGE_SIZE for wait free hash tables to reduce split_storage time.
|
2022-09-30 16:38:11 +03:00 |
|
levlam
|
ee04923ce1
|
Add lazy initialization for keyword_stickers_map_.
|
2022-09-27 16:16:36 +03:00 |
|
levlam
|
66dca9a510
|
Update emoji to 15.0.
|
2022-09-27 14:28:08 +03:00 |
|
levlam
|
99a2ffdcec
|
Update Unicode tables to 15.0.
|
2022-09-27 14:22:30 +03:00 |
|
levlam
|
4a6e0aea43
|
Add utf8_prepare_search_string.
|
2022-09-27 14:16:09 +03:00 |
|
levlam
|
b3e16c5dd7
|
Use the same template recursively for instant view links.
|
2022-09-26 19:24:39 +03:00 |
|
levlam
|
faa738d6a9
|
Keep only Slice overload of utf8_utf16_substr.
|
2022-09-22 12:08:34 +03:00 |
|
levlam
|
5c5d19e76f
|
Increase 8 times number of WaitFreeMap storages.
|
2022-09-22 07:13:17 +03:00 |
|
levlam
|
b6db8a66ec
|
Remove dangerous Timestamp::store.
|
2022-09-21 14:25:31 +03:00 |
|
levlam
|
275ee280d2
|
Use thread-local EVP_MD_CTX in OpenSSL 3.0.
|
2022-09-19 18:17:51 +03:00 |
|
levlam
|
cb70993b90
|
Fix buggy behavior of pthread_setaffinity_np/pthread_getaffinity_np on NetBSD.
|
2022-09-17 23:25:42 +03:00 |
|
levlam
|
e37f3c17af
|
Fix warnings.
|
2022-09-17 22:54:21 +03:00 |
|
levlam
|
9bf5d57851
|
Add TD_HAVE_THREAD_AFFINITY macros.
|
2022-09-17 21:58:00 +03:00 |
|
levlam
|
b8abc6c19e
|
Support CPU affinity on NetBSD.
|
2022-09-17 21:48:16 +03:00 |
|
levlam
|
b47fce0d95
|
Support CPU affinity on FreeBSD.
|
2022-09-17 14:45:42 +03:00 |
|
levlam
|
9d5c151a3f
|
Use DWORD as thread::id on Windows.
|
2022-09-17 13:21:04 +03:00 |
|
levlam
|
0cc3fb0e9d
|
Include pthread.h on OpenBSD for pthread_t definition.
|
2022-09-17 01:37:05 +03:00 |
|
levlam
|
0025c4164b
|
Add internalLinkTypeInstantView.
|
2022-09-16 01:30:54 +03:00 |
|
levlam
|
b49b669ac1
|
Support affinity mask on Linux.
|
2022-09-14 15:33:16 +03:00 |
|
levlam
|
0eddd8d405
|
Add thread::set_affinity_mask/get_affinity_mask.
|
2022-09-14 14:38:14 +03:00 |
|
levlam
|
5f98548e02
|
Use STL thread only on Windows.
|
2022-09-14 14:19:09 +03:00 |
|
levlam
|
273ae92a14
|
Use HANDLE as thread id on Windows.
|
2022-09-14 14:18:42 +03:00 |
|
levlam
|
03db53281c
|
Remove this_thread::yield for TD_THREAD_UNSUPPORTED.
|
2022-09-14 14:10:33 +03:00 |
|
levlam
|
ce9175a00b
|
Always use "must be non-empty".
|
2022-09-10 22:48:34 +03:00 |
|
levlam
|
9fc136976c
|
Remove ChainBufferWriter::init.
|
2022-09-06 12:42:00 +03:00 |
|
levlam
|
17bb58d8bb
|
Improve NetBSD build instructions.
|
2022-09-04 17:50:03 +03:00 |
|
levlam
|
ba2c071324
|
Use explicit EVP_CIPHER_fetch with OpenSSL 3.0, because EVP_aes_* fetch algorithm each time and are extremely slow in OpenSSL 3.0.
|
2022-08-29 21:16:12 +03:00 |
|
levlam
|
5e87cae73d
|
Remove unused Evp::init parameter.
|
2022-08-29 20:41:35 +03:00 |
|
levlam
|
398a996ef8
|
Use explicit EVP_MD_fetch with OpenSSL 3.0, because EVP_sha* fetch algorithm each time and are extremely slow in OpenSSL 3.0.
|
2022-08-29 16:19:47 +03:00 |
|
levlam
|
28594d38e4
|
Add thread::send_real_time_signal.
|
2022-08-22 00:46:22 +03:00 |
|
levlam
|
959c7261c1
|
Fix function name.
|
2022-08-22 00:17:53 +03:00 |
|
levlam
|
91bdc57ecc
|
Add WaitFreeHashSet.h to CMakeLists.txt.
|
2022-08-21 13:36:17 +03:00 |
|
levlam
|
59a5f15a41
|
Add WaitFreeHashSet.
|
2022-08-20 16:19:58 +03:00 |
|
levlam
|
1afbbe5fca
|
Add table for small codes in get_unicode_simple_category.
|
2022-08-19 19:50:34 +03:00 |
|
levlam
|
88b52f1535
|
Use variable step in unicode_simple_category_jump_pos.
|
2022-08-19 18:56:36 +03:00 |
|
levlam
|
231c47e237
|
Use linear search in get_unicode_simple_category.
|
2022-08-19 18:06:29 +03:00 |
|
levlam
|
5c9d306208
|
Optimize get_unicode_simple_category with jump table.
|
2022-08-19 17:56:47 +03:00 |
|
levlam
|
96cca84a60
|
Remove source from next_utf8_unsafe.
|
2022-08-19 16:37:44 +03:00 |
|
levlam
|
a8b3573a00
|
Always pass non-null pointer to next_utf8_unsafe.
|
2022-08-19 16:19:58 +03:00 |
|
levlam
|
8f433070df
|
Minor fixes.
|
2022-08-14 15:04:08 +03:00 |
|
levlam
|
9e4ae8997b
|
Fix WaitFreeHashMap::get_pointer.
|
2022-08-04 22:40:22 +03:00 |
|
levlam
|
616455088f
|
Improve WaitFreeHashMap.
|
2022-08-04 15:25:46 +03:00 |
|
levlam
|
6f46b50b4b
|
Add WaitFreeHashMap::foreach.
|
2022-08-04 15:08:18 +03:00 |
|
levlam
|
08dbc7d9f2
|
Add operator[] to WaitFreeHashMap.
|
2022-08-04 00:38:13 +03:00 |
|
levlam
|
98afc516dc
|
Use WaitFreeVector in Enumerator.
|
2022-08-03 22:51:07 +03:00 |
|
levlam
|
2be8c86855
|
Optimize size() and empty() for WaitFreeVector.
|
2022-08-03 22:48:18 +03:00 |
|
levlam
|
36693a3872
|
Support unique_ptr values in WaitFreeHashMap.
|
2022-08-03 21:17:10 +03:00 |
|
levlam
|
2d705004a3
|
Add WaitFreeVector.
|
2022-08-02 14:27:18 +03:00 |
|
levlam
|
64c718c0a1
|
Fix suppression of an expected error.
|
2022-08-01 19:34:37 +03:00 |
|
levlam
|
d55869eedb
|
Minor improvements.
|
2022-07-23 14:53:32 +03:00 |
|
levlam
|
36a57c3584
|
Remove unneeded FlatHashTable copy constructors.
|
2022-07-23 11:13:17 +03:00 |
|
levlam
|
0f87447ffc
|
Asynchronously destroy some big data storages.
|
2022-07-20 13:40:14 +03:00 |
|
levlam
|
ac8af37872
|
Add size() and empty() to WaitFreeHashMap.
|
2022-07-20 13:35:32 +03:00 |
|
levlam
|
6eef50f769
|
Remove unused DelayedClosure private constructors.
|
2022-07-17 12:11:04 +03:00 |
|
levlam
|
2cc8f34a7d
|
Remove unused to_delayed_closure functions.
|
2022-07-17 11:41:31 +03:00 |
|
levlam
|
04a7583bd0
|
Remove unused Event::clone method.
|
2022-07-17 10:41:17 +03:00 |
|
levlam
|
0bdd15fe9f
|
Fix warning.
|
2022-07-15 00:06:41 +03:00 |
|
levlam
|
abc9ed2cd9
|
Minor fixes.
|
2022-07-14 18:38:48 +03:00 |
|
Arseny Smirnov
|
bf80c43c05
|
fix CE
|
2022-07-14 18:36:46 +04:00 |
|
Arseny Smirnov
|
f4c97b25ec
|
add Mutex wrapper around std::mutex and use it instead of SpinLock
|
2022-07-14 16:27:06 +04:00 |
|
Arseny Smirnov
|
7ddc3099f6
|
remove td::this_thread::yield function. usleep_for(1) used instead
|
2022-07-14 16:15:17 +04:00 |
|
levlam
|
6eb03bdc8b
|
Generate GitCommitHash.cpp during building.
|
2022-07-11 12:20:31 +03:00 |
|
levlam
|
bb5ebc09ef
|
Disable git commit hash calculation, because the current approach must be completely replaced.
|
2022-07-09 22:27:41 +03:00 |
|
levlam
|
d37ad61f86
|
Generate GIT_COMMIT and GIT_DIRTY from CMake.
|
2022-07-08 20:56:43 +03:00 |
|
levlam
|
ff3235e6d5
|
Update comment.
|
2022-07-07 22:23:58 +03:00 |
|
levlam
|
f8b49fe421
|
Ensure that gen_git_commit_h works even without git.
|
2022-07-07 20:38:44 +03:00 |
|
levlam
|
cb559c396d
|
Use FlatHashTable instead of std::unordered_map/std::unordered_set.
|
2022-06-30 00:59:27 +03:00 |
|