Nathan Hourt
72088c548b
Tweak FC enum reflection
...
Previously when enum values not defined in the original enum type were
used in serialized objects, FC threw exceptions when it encountered
these values. Now it just serializes unknown values to and from numbers
instead of names.
As an added benefit, the compiler now warns you if a value is defined in
the enum, but not reflected!
2014-10-31 16:30:18 -04:00
Nathan Hourt
95c2c461ac
Add missing + operator to time_point_sec
...
time_point_sec had an operator defined for time_point_sec -
microseconds, but not one for time_point_sec + microseconds. Now it
does.
2014-10-30 18:26:07 -04:00
Vikram Rajkumar
c38479c6ae
Temporarily revert timestamp serialization change to upgrade in phases
2014-10-29 15:01:24 -04:00
Vikram Rajkumar
f948bd759d
Use ISO standard delimited timestamp string serialization
2014-10-28 18:54:49 -04:00
Daniel Larimer
42ff2b10de
adding digest helper utility
2014-10-28 16:23:45 -04:00
Eric Frias
d1f51dd643
Fix the currently-unused postfix signed_int::operator++ to do what you'd expect
2014-10-27 16:37:20 -04:00
Eric Frias
307252e23a
Call fc: 🧵 :quit() on thread destruction, and remove code that explicitly terminates threads from the destructors of the objects that own those threads.
...
Fix fc::thread to set the thread name in the Debugger when the name is set after thread construction.
When terminating a thread, cancel any tasks that have been schedule()d or async()ed but have not yet started executing.
When canceling a task blocked on a fc::mutex, notify the thread to reschedule the task to allow it to clean up the mutex's block list.
Fix a bug in managing the recursive lock count when tasks block on a fc::mutex
Reorder the code that manages the hard links for log files to avoid an exception generated by unlinking a locked file on Windows.
2014-10-21 10:25:28 -04:00
Nathan Hourt
c1eca45ef1
More fixes in json_connection
2014-10-20 12:52:47 -04:00
Eric Frias
891e880ad1
When the HTTP server asyncs a handler for a request, keep a future for that async and cancel any running asyncs when the HTTP server destructs
2014-10-17 16:18:55 -04:00
Nathan Hourt
fadc0512a1
Merge branch 'master' of github.com:InvictusInnovations/fc
2014-10-17 13:43:46 -04:00
Nathan Hourt
502a3c653c
Fix yield in catch block
2014-10-17 13:43:40 -04:00
Vikram Rajkumar
7ddf882459
Fix linux build
2014-10-17 13:23:51 -04:00
Eric Frias
b026e82451
Remove task priority hack that is no longer needed
2014-10-17 12:04:21 -04:00
Eric Frias
227767a425
Fix type of PRECISION
2014-10-16 19:00:30 -04:00
Eric Frias
b34a222dc5
Remove #ifdefed-out code
2014-10-16 17:50:58 -04:00
Eric Frias
e5666cca54
Convert ready_head (list of fibers able to run immediately) into a priority heap
2014-10-16 16:26:19 -04:00
Eric Frias
95eb84e62d
Add missing include
2014-10-16 16:25:12 -04:00
Eric Frias
1af4ac6a5c
Schedule fibers in the order they are asynced or unblocked. Earlier behavior was always to start newly-asycned tasks before resuming existing tasks, so existing tasks could be starved if there was a steady stream of new tasks created. Now all tasks are started or resumed in the order they are created or unblocked.
2014-10-16 15:25:31 -04:00
Eric Frias
a426bf9710
whitespace and spelling fixes, no functional changes
2014-10-16 15:25:31 -04:00
Nathan Hourt
5e7cd9776e
A few more real128 tests
2014-10-16 09:31:15 -04:00
Daniel Larimer
dfe67a4494
adding blob type to variant
2014-10-15 23:32:37 -04:00
Daniel Larimer
ec9e85d268
fix fixed point math
2014-10-15 20:46:24 -04:00
Nathan Hourt
2b76b6d5fe
Add another uint128 test
2014-10-15 18:00:31 -04:00
Nathan Hourt
c3a6b40188
Test and bugfix real128
2014-10-15 17:53:50 -04:00
Daniel Larimer
b55ae3431a
adding real 128 for fixed point 64.64 math
2014-10-15 17:00:49 -04:00
Nathan Hourt
1a78fd2931
Add directory_size call
...
Recursively iterate the specified directory, summing up the files
inside, and return the total size.
2014-10-13 15:17:14 -04:00
Eric Frias
b63e6a8b81
Allow recursive fc::mutexes
2014-10-12 17:28:41 -04:00
Eric Frias
4e83427df0
Improvements for handling unicode filenames on Windows. When converting fc::path to/from fc::variant, use utf8 encoding. Replace several places where we use a std::ifstream and open it with a char* filename with a boost::filesystem::ifstream and open it with a boost::filesystem::path, which does unicode correctly.
2014-10-09 16:21:52 -04:00
Eric Frias
06ca6d8981
Fix bug that was causing NTP to fail to update after the first check
2014-10-07 11:49:35 -04:00
Eric Frias
82dd74add0
Retry NTP requests more frequently if we don't receive a (valid) reply
2014-10-07 11:10:27 -04:00
Eric Frias
0d61966a1c
Improve NTP math
2014-10-07 10:31:19 -04:00
Eric Frias
5a615e6b21
Execute async tasks in the order they were asynced (this only changes the behavior of tasks that hadn't started executing yet, it doesn't change anything about the order blocked tasks unblock)
2014-10-03 16:53:14 -04:00
Eric Frias
256df78fc6
Allow binaries compiled on a system that doesn't support SO_REUSEPORT to use the option
...
on systems that do support it
2014-10-02 14:49:38 -04:00
Vikram Rajkumar
5fa3cb8632
Add < operation to private_key to allow usage as an ordered key
2014-10-02 12:55:20 -04:00
dnotestein
c4e814d7de
Added more logging to ntp and fixed code indentation.
2014-09-30 10:53:23 -04:00
dnotestein
53196706f0
Add some more logging to ntp time synchronization code.
2014-09-29 18:55:35 -04:00
Eric Frias
8def04f341
Add a path::preferred_string() function that generates a string in the platform's preferred format, using backslashes on win32 (uses boost::filesystem::path::make_preferred()).
...
Modify the log file configuration and rotating code to call to_native_ansi_path() and do more paths manipulation in fc::path objects and less in std::strings, in an attempt to improve BitShares/bitshares_toolkit#791
2014-09-25 08:57:31 -04:00
Eric Frias
6cddd42cfe
On windows, change the method we use for getting the home directory and app data directory to get it in unicode form. Partial fix for BitShares/bitshares_toolkit#791
2014-09-20 19:15:28 -04:00
Eric Frias
2f066e4adf
Fix a crash in fc::process when not capturing all three stdin/out/err
...
Quiet a few 64-bit warnings.
2014-09-18 11:17:41 -04:00
Nikolai Mushegian
439232f750
Merge pull request #40 from dbrock/master
...
Compare HTTP headers case-insensitively
2014-09-17 16:53:04 -04:00
Daniel Brockman
bd846576f6
Compare HTTP headers case-insensitively
...
See <https://groups.google.com/d/msg/nodejs/XIU55IYtfJo/feUp9Fz7p14J >
2014-09-17 22:50:47 +02:00
Nathan Hourt
07e3947ed4
Fix bug in json pretty printer which broke formatting and possibly
...
corrupted json
2014-09-17 13:27:37 -04:00
Eric Frias
7966587021
Wrap a few boost asio exceptions in fc exceptions
2014-09-16 09:33:51 -04:00
Vikram Rajkumar
d44d72b0d9
Merge pull request #39 from dbrock/master
...
Use set_reuse_addr in http_server
2014-09-15 15:00:34 -04:00
Daniel Brockman
7b8394a781
Use set_reuse_addr in http_server
2014-09-15 20:30:31 +02:00
Nikolai Mushegian
b0c68813cb
Merge pull request #38 from InvictusInnovations/revert-37-master
...
Revert "Set SO_REUSEADDR to avoid having to wait for network ports to be...
2014-09-15 14:06:43 -04:00
Nikolai Mushegian
60781c532b
Revert "Set SO_REUSEADDR to avoid having to wait for network ports to be released when restarting the client"
2014-09-15 14:06:37 -04:00
Nikolai Mushegian
59c6882b03
Merge pull request #37 from dbrock/master
...
Set SO_REUSEADDR to avoid having to wait for network ports to be released when restarting the client
2014-09-15 14:04:49 -04:00
Daniel Brockman
9ba96f9dcf
Set SO_REUSEADDR
2014-09-15 20:02:27 +02:00
Eric Frias
b5414af3ce
Restore an accidentally-commented-out line that was preventing NTP from restarting after encountering an error.
2014-09-14 19:53:08 -04:00