Ryan Ofsky 3b987d03a4
Merge bitcoin/bitcoin#29419: log: deduplicate category names and improve logging.cpp
b0344c219a641b759fb0cc4f53afebe675b8ca27 logging: remove unused BCLog::UTIL (Vasil Dimov)
d3b3af90343b7671231afd7dff87e87ff86d31d7 log: deduplicate category names and improve logging.cpp (Vasil Dimov)

Pull request description:

  The code in `logging.cpp` needs to:
  * Get the category name given the flag (e.g. `BCLog::PRUNE` -> `"prune"`)
  * Get the flag given the category name (e.g. `"prune"` -> `BCLog::PRUNE`)
  * Get the list of category names sorted in alphabetical order

  Achieve this by using the proper std containers. The result is
  * less code (the diff of the first commit is +62 / -129)
  * faster code (to linear search and no copy+sort)
  * more maintainable code (the categories are no longer duplicated in `LogCategories[]` and `LogCategoryToStr()`)

  This behavior is preserved:
  `BCLog::NONE` -> `""` (lookup by `LogCategoryToStr()`)
  `""` -> `BCLog::ALL` (lookup by `GetLogCategory("")`)

  ---

  Also remove unused `BCLog::UTIL`.

  ---

  These changes (modulo the `BCLog::UTIL` removal) are part of https://github.com/bitcoin/bitcoin/pull/29415 but they make sense on their own and would be good to have them, regardless of the fate of https://github.com/bitcoin/bitcoin/pull/29415. Also, if this is merged, that would reduce the size of https://github.com/bitcoin/bitcoin/pull/29415, thus the current standalone PR.

ACKs for top commit:
  davidgumberg:
    crACK b0344c219a
  pinheadmz:
    ACK b0344c219a641b759fb0cc4f53afebe675b8ca27
  ryanofsky:
    Code review ACK b0344c219a641b759fb0cc4f53afebe675b8ca27. Nice cleanup! Having to maintain multiple copies of the same mapping seemed messy and a like a possible footgun. I checked old and new mappings in both directions and confirmed no behavior should be changing.

Tree-SHA512: 57f87a090932f9b33dc8e075d1855dba9b71a3243a0758511745483dec2d9c46d3b532eadab297e78164c9b7caba370986ee380696a45f0778a841082f8e21a7
2024-04-02 10:47:05 -04:00
..
2023-10-12 11:27:19 +02:00
2024-03-15 13:34:05 +00:00
2024-03-04 19:53:30 -05:00
2023-11-21 13:15:44 +00:00
2023-12-11 18:22:13 +01:00
2024-03-26 16:51:46 +00:00
2023-11-16 11:36:22 +10:00
2024-03-23 15:33:50 +01:00
2024-02-11 15:25:07 +01:00
2023-06-16 10:38:19 +01:00
2023-09-13 11:37:45 +01:00
2023-11-30 11:28:19 +01:00
2023-11-28 12:42:07 +01:00
2023-07-19 18:12:42 +02:00
2023-11-30 11:27:54 +01:00
2024-01-05 17:16:38 +00:00
2024-02-01 13:52:05 +01:00
2024-03-18 10:32:00 -04:00
2023-11-16 11:36:22 +10:00
2024-03-26 16:51:37 +00:00