ChangeLog 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. Legend:
  2. - Bug fix
  3. + New feature
  4. * Changes
  5. ! Important
  6. 2018-01-22 __vic
  7. * libc_error doesn't use sprintf() for message formatting
  8. 2017-12-26 __vic
  9. + meta.h: index_sequence, make_index_sequence
  10. 2017-12-13 __vic
  11. * doc/html.xsl: more tolerant to retarded XSLT processors (oracle) TOC
  12. generation code
  13. 2017-12-08 __vic
  14. * meta.h:
  15. + remove_reference, remove_cvref
  16. + Template aliases for type transformers
  17. + waitable_event.h:
  18. + waitable_event for C++11 mode only
  19. 2017-12-07 __vic
  20. + GNU Make makefiles
  21. 2017-12-05 __vic
  22. * string_buffer can be compiled even when old compatible ABI is used by
  23. GNU libstdc++
  24. + Intel C++ 17.0+ compiler support
  25. 2017-11-28 __vic
  26. + string_utils.h: starts_with(), ends_with()
  27. 2017-11-14 __vic
  28. * to_text_append():
  29. - Small buffer for 8-byte long types
  30. - printf() "ll" length modifier is not always available
  31. * Using snprint() in C++11 mode
  32. 2017-09-21 __vic
  33. * ascii.h:
  34. * Moved from bits.h:
  35. * to_hex_digit_upper() -> ascii::toxdigit_upper()
  36. * to_hex_digit_lower() -> ascii::toxdigit_lower()
  37. * hex_to_number() -> ascii::xdigit_to_number()
  38. + ascii::todigit()
  39. + ascii::digit_to_number()
  40. 2017-09-18 __vic
  41. * Renamed io.h -> stdio_file.h
  42. 2017-09-14 __vic
  43. * readers.h removed. All content moved to:
  44. + readers/range.h (range_reader, range_reader_n)
  45. + readers/container.h (container_reader)
  46. + readers/cstring.h (basic_cstring_reader, cstring_reader)
  47. * writers.h removed. All content moved to:
  48. + writers/push_back.h (push_back_writer)
  49. * string_utils.h:
  50. * string_reader moved to:
  51. + readers/string.h
  52. * string_writer moved to:
  53. + writers/string.h
  54. * io.h:
  55. * cstream_reader moved to:
  56. + readers/cstream.h
  57. * cstream_writer moved to:
  58. + writers/cstream.h
  59. + read(std::FILE *, unsigned char &)
  60. + readers/cstream.h: cstream_reader: read(unsigned char &)
  61. * readers/cstring.h:
  62. + basic_cstring_reader<char>: read(unsigned char &)
  63. * readers/string.h:
  64. + basic_string_reader
  65. + basic_string_reader<char>: read(unsigned char &)
  66. * writers/string.h:
  67. + basic_string_writer
  68. 2017-06-30 __vic
  69. * Renamed string_ops.h -> string_utils.h
  70. * Renamed static_string -> readonly_cstring
  71. 2017-01-31 __vic
  72. * str2num.h: std::strchr(s,0) returns non-const pointer on MinGW so
  73. tchar::end(s) is used instead
  74. 2017-01-30 __vic
  75. + readers.h:
  76. + range_reader
  77. + range_reader_n
  78. + container_reader
  79. + basic_cstring_reader, cstring_reader
  80. + writers.h:
  81. + push_back_writer
  82. * string_ops.h:
  83. + string_reader
  84. + string_writer
  85. * base16.h: base16: uses readers and writers
  86. * base64.h: base64: uses readers and writers
  87. * io.h:
  88. + read(std::FILE *, char &)
  89. + write(std::FILE *, char)
  90. + cstream_reader
  91. + cstream_writer
  92. 2017-01-23 __vic
  93. - str2num.h: C++98 mode
  94. + iterator.h:
  95. + begin(T[]), end(T[]), cbegin(T[]), cend(T[])
  96. + advance(), next(), prev()
  97. 2017-01-20 __vic
  98. + bin_file.h
  99. + bin_file
  100. + str2num.h: decimal_parser
  101. + base16.h:
  102. + base16::encode_lower(), base16::encode_upper(), base16::decode()
  103. + base64.h:
  104. + base64::encode(), base64::decode()
  105. + base64::encoded_length(), base64::max_decoded_length()
  106. 2017-01-16 __vic
  107. * throw_errno() moved: error.h -> throw_errno.h
  108. 2017-01-13 __vic
  109. + str2num.h
  110. + decimal_to_number()
  111. + decimal_to_number_range()
  112. 2017-01-12 __vic
  113. + meta.h:
  114. + integral_constant, true_type, false_type
  115. + is_same, is_const
  116. + remove_const, remove_volatile, remove_cv
  117. + remove_pointer
  118. + is_signed_integer, is_unsigned_integer
  119. + enable_if, disable_if
  120. + set_of_chars.h:
  121. + set_of_chars
  122. 2017-01-09 __vic
  123. * Renamed trim.h -> string_ops.h
  124. * string_ops.h:
  125. + pad_left(), pad_right()
  126. * sift() treats nullptr as an empty string
  127. + ascii_string.h:
  128. + toupper(), tolower() for strings
  129. + equal_icase() for strings
  130. 2016-12-30 __vic
  131. + ascii.h:
  132. + isdigit(), isxdigit(), isalpha(), isalnum(), isspace(), isascii()
  133. + islower(), isupper()
  134. + tolower(), toupper(), upper_to_lower(), lower_to_upper()
  135. + equal_icase(char,char)
  136. + date_time.h:
  137. + is_leap_year()
  138. + days_in_month()
  139. + days_between_years()
  140. + validate_date(), validate_time(), validate_date_time()
  141. 2016-12-29 __vic
  142. + stdint.h:
  143. + [u]int<N>_t, [u]int_least<N>_t, [u]int_fast<N>_t, [u]intmax_t,
  144. [u]intptr_t
  145. + int_exactly_bytes<>, uint_exactly_bytes<>
  146. + bits.h:
  147. + lo_nibble(), hi_nibble()
  148. + msb_ones(), lsb_ones()
  149. + get_lsbs()
  150. + ord()
  151. + to_hex_digit_upper(), to_hex_digit_lower()
  152. + hex_to_number()
  153. + swapped_nibbles()
  154. + rotl(), rotr()
  155. 2016-12-28 __vic
  156. + string_buffer: move constructor for std::string
  157. + logger.h:
  158. + logger
  159. 2016-12-26 __vic
  160. + string_ref.h:
  161. + basic_string_ref (string_ref)
  162. + string_buffer: string_ref support
  163. + trim.h:
  164. + trim(), trimmed(), trim_left(), ...
  165. + sift(), sift_if()
  166. 2016-12-23 __vic
  167. + io.h:
  168. + stdio_file
  169. + getline()
  170. + object_pool.h:
  171. + object_pool
  172. + tchar.h
  173. 2016-12-22 __vic
  174. + to_text.h:
  175. + to_text_append()
  176. + string_buffer.h:
  177. + string_buffer
  178. 2016-12-21 __vic
  179. + defs.h:
  180. + nullptr
  181. + non_copyable
  182. + non_heap_allocatable
  183. + array_size()
  184. + static_string.h:
  185. + static_string
  186. + error.h:
  187. + exception
  188. + libc_error
  189. + throw_errno()
  190. 2016-06-23 __vic
  191. * Total revision and rework started in order to publish the code