Commit Graph
13 Commits
Author SHA1 Message Date
Thomas c2dc8a5bc6 cryptonote_protocol: remove dead code
block_queue:
- print(): added with two debug call sites in the sync-speedup rewrite
  (5be43fcdb, 2017-07-02); 08abb670e (2017-08-12) removed one call and
  Pruning (b750fb27b, 2018-04-29) removed the last; dead since.
- get_num_filled_spans_prefix(): added in 5be43fcdb (2017-07-02)
  without any caller; dead on arrival.
- get_last_known_hash(): added in 5be43fcdb with one caller in the
  protocol handler; 08abb670e (2017-08-12) removed that caller while
  reworking reorg handling; dead since.
- has_spans(): added in 7b7476075 (2017-08-16, kick idle synchronizing
  peers) without any caller; dead on arrival.
- get_download_rate(): added by Pruning (b750fb27b, 2018-04-29)
  without any caller; dead on arrival.
- has_unpruned_height(): declaration added by Pruning (b750fb27b); a
  definition never existed, so it was never callable.

cryptonote_protocol_handler:
- get_synchronizing_connections_count(): from the original 2014 import
  (296ae46ed, 2014-03-03); its only reference was already commented
  out in the import, and 8efa1313f (2014-03-20) deleted that comment.
  Never had a live caller in the repo's history.
- PASSIVE_PEER_KICK_TIME: added in 1ff638e92 (2017-10-19) with one use
  in the idle-peer kick threshold; Pruning (b750fb27b) removed the
  use, orphaning the macro.
- LOCALHOST_INT: added in ae2a50659 (2015-02-20) for numeric localhost
  comparisons, second use added in c511abf00; 072102cfd (2017-05-27,
  abstracted network addresses) removed both uses.
2026-07-20 12:59:04 +02:00
Thomas 685579ccf0 readme: fix outdated info, normalize formatting
Remove the mining pools donation line pointing to a Bitcointalk post.
Update the Monero Research Lab link to www.getmonero.org.
Normalize paragraph wrapping to one line per paragraph throughout and
remove a stray double blank line before the Research section.

Fix outdated information:
- Debian/Ubuntu packages renamed: libunwind-dev, libreadline-dev
- Arch package is python, not python3
- Fedora libusbx-devel is a legacy alias; use libusb1-devel
- Raspberry Pi: usb_max_current_enable=1 in /boot/firmware/config.txt
  replaces the removed max_usb_current option and pre-Bookworm path
- Recommend git submodule update --init after switching branches:
  master and release branches ship different submodule sets
- Clarify per-thread core and RAM sizing for parallel builds
- Lowercase TOC anchors to match generated heading IDs
- Demote Known Issues to a section heading like other sections and
  shift its subsections accordingly
- Drop orphaned asterisk footnote under the upgrade table
- Add missing markdown line break after the donation base address label
2026-07-04 13:43:24 +02:00
Thomas fa91ae4644 common: remove dead code
Each symbol below has no references anywhere in the tree (src/, contrib/,
tests/), and none on the in-flight FCMP++ (fcmp++-stage-new) or CARROT
(carrot_impl) integration branches; the full build still links cleanly.
Per-symbol history is given so the "why is this unused" is auditable (hashes
are ancestors of HEAD).

command_line:
- parse_command_line template: boost wrapper used by the connectivity tool and
  wallet from the 2014 import; the last caller was removed in b8a08f199 (2017,
  "wallet: fix --log-file not working"). Not boost's own
  boost::program_options::parse_command_line, a different function still in use.

download:
- download_finished / download_error: dead on arrival - added 63f0e074e (2017,
  "download: async API") but never wired to any caller.

perf_timer:
- set_performance_timer_log_level: dead on arrival - added 74dfdb0b3 (2016),
  never called. It was the only writer of performance_timer_log_level, which is
  therefore never reassigned and stays at its default (el::Level::Info).

Note: the unused PERF_TIMER_L / PERF_TIMER_UNIT_L macros are deliberately left
in place - the FCMP++ wallet-scanning work (fcmp++-stage-new, wallet2.cpp) uses
PERF_TIMER_L, so removing them would break that branch on rebase.
2026-06-30 21:11:20 +02:00
Thomas 8701fc98a2 blockchain_db: remove unused MDB_val_copy specializations
The MDB_val_copy<cryptonote::blobdata> and MDB_val_copy<const char*>
specializations have no references anywhere in the tree (src/, contrib/,
tests/); the full build still links cleanly.

They were real helpers that copied block/tx blobs and the "version" key into
LMDB from 2015 (3fcb8daf6 / f7e99047e). All instantiations were removed in
99fbe1008 (2018, "db_lmdb: save some string copies for readonly db keys/
values"), which writes blobs directly and points readonly MDB_vals at string
literals (zero-copy). Every remaining MDB_val_copy<> call site uses the
uint64_t/uint32_t/uint8_t primary template; these two specializations have sat
unused since.
2026-06-30 15:59:47 +02:00
Thomas 00d21ee75e epee: remove dead code
Each symbol below has no references anywhere in the tree (src/, contrib/,
tests/); the full build still links cleanly. Per-symbol history is given so the
"why is this unused" is auditable (hashes are ancestors of HEAD).

net/connection_basic (all four lost their last caller in the 2022 connection
rewrite, 3be1dbd09 "connection: fix implementation"):
- to_string(t_connection_type): unused free function. Added 9bfa593ee (2015)
  to print a connection's type in a debug log; 3be1dbd09 (2022) switched that
  log line to std::to_string on the enum, orphaning this overload.
- do_send_handler_write / do_send_handler_write_from_queue: trace-only stubs
  added eabb51960 (2015) on the TCP send path; their calls in do_send_chunk /
  the write-completion handler were deleted by 3be1dbd09 (2022). The real send
  path is connection<T>::start_write().
- sleep_before_packet: outbound rate-limit sleep added eabb51960 (2015);
  callers were thinned over time (cf5f62361, 2017) and the last removed by
  3be1dbd09 (2022). Rate-limiting now lives in connection<T>::start_write()
  via the global out-throttle.

net/levin_base:
- struct bucket_head: legacy levin packet header from the 2014 epee import,
  superseded by bucket_head2 (the wire header, `using header = bucket_head2`).
  Its last use went away with the old levin_protocol_handler in 0c545f614
  (2024, "epee/test: remove levin_protocol_handler and core_proxy tests").
- LEVIN_PROTOCOL_VER_0: dead on arrival - present since the 2014 import, never
  referenced (the code uses LEVIN_PROTOCOL_VER_1).

net/net_utils_base (connection-context logging macros):
- LOG_PRINT_CC_L4: levin trace macro (2014 import); all call sites removed in
  5833d66f6 (2017, "Change logging to easylogging++").
- LOG_PRINT_CCONTEXT_L3: had a single "REMOTE PEERLIST" call site, removed in
  the same 5833d66f6 (2017).
- LOG_PRINT_CC_L3: only ever referenced inside LOG_PRINT_CCONTEXT_L3's body,
  never invoked directly - transitively dead once the above was removed.
- LOG_CC: dead on arrival - added in 5833d66f6 (2017) but never invoked.
  (The plain LOG_PRINT_L3 macro that LOG_PRINT_CC_L3/CCONTEXT_L3 wrap is still
  used elsewhere and is left untouched; only these unused CC wrappers go.)

net/network_throttle:
- typedef network_MB: added eabb51960 (2015); its only consumers
  (set_target_kill / m_target_MB) were stripped the same day in 5ce4256e3
  (2015), leaving an unused typedef.

profile_tools:
- START_WAY_POINTS / WAY_POINT / WAY_POINT2: dead on arrival - upstream-epee
  profiling macros present since the 2014 import, never once invoked (they only
  ever appear as definitions in profile_tools.h across all history).
- TIME_MEASURE_PAUSE / TIME_MEASURE_RESTART and their _NS_ variants: dead on
  arrival - added bda8c5983 (2017, "epee: add nanosecond timer and pause/restart
  profiling macros") but never wired to any call site. Of this family only
  TIME_MEASURE_START / TIME_MEASURE_FINISH are actually used.

storages:
- typedef binarybuffer (portable_storage_base): used by the binary store/load
  API since the 2014 import; its last consumer (store_to_binary) was removed in
  7414e2bac (2020, "Change epee binary output from std::stringstream to
  byte_stream").
- the templated min_bytes() member declaration (portable_storage_from_bin):
  declared but never defined or called. Added 7f407c027 (2020-12-26,
  "portable_storage: add some sanity checks on data size") alongside the
  ps_min_bytes<> trait struct, but the size checks were implemented via that
  trait (ps_min_bytes<>::strict), so this member was never defined or wired up
  - dead on arrival. The ps_min_bytes<> trait remains in use and is left intact.
2026-06-30 15:59:47 +02:00
Thomas 425c342045 readme: refresh stale info and remove dead sections
Few nits changes and notably:

- Bump depends macOS toolchain clang-18/lld-18 -> clang-19/lld-19
  and the llvm-18 PATH -> llvm-19 to match
  .github/workflows/depends.yml; FreeBSD depends clang-8 -> clang
- Remove dead content: Gentoo install steps, the whole Coverage
  section, and the Translations section
- Update blockchain size figures (full ~130 -> ~280 GB, pruned
  ~45 -> ~95 GB)
- Add Cake Wallet and Cypher Stack to the sponsors list to match
  the getmonero.org sponsorships page, reorder to match it, and
  size every logo by a fixed height so they render at a consistent
  size
2026-06-29 19:53:45 +02:00
Thomas fecef767c9 Fix spelling typos in comments and string literals 2026-06-27 09:53:48 +02:00
Thomas 8a744a6388 tests: remove dead transactions_generation_from_blockchain
Functional test commented out since 2014 (296ae46ed); never #included or
called (main.cpp only runs transactions_flow_test).
2026-06-23 22:32:17 +02:00
Thomas b5136b1a5d common: remove unused data_cache.h
Dead since 40eb82873 (2025-10) moved verRct caching into the mempool;
only a stale #include remained in blockchain.cpp.
2026-06-23 22:31:28 +02:00
Thomas 36bb2d0e7d wallet2: avoid std::out_of_range on a truncated tx set blob
parse_unsigned_tx_from_str() and parse_tx_from_str() strip the magic,
then read the version byte and call s.substr(1) without checking a
version byte follows. A blob equal to just the magic leaves an empty
remainder, so s.substr(1) throws std::out_of_range instead of the
function returning false. Require magic + a version byte first.
2026-06-20 21:13:30 +02:00
Thomas 02db831d01 Fix spelling typos 2026-06-18 09:30:42 +02:00
Thomas 2c327aa325 fix spelling in comments and docs 2026-05-13 21:20:05 +02:00
Thomas df2b8b4bf6 rpc: fix incomplete range check in get_coinbase_tx_sum + update test 2026-04-28 21:32:12 +02:00