Skip to content

chore: the last fc/_fc_/FC_ names take the Pace spelling - #1715

Merged
christianparpart merged 3 commits into
masterfrom
chore/compile-cache-pace-rename
Oct 19, 2026
Merged

christianparpart merged 3 commits into
masterfrom
chore/compile-cache-pace-rename

Conversation

@christianparpart

@christianparpart christianparpart commented Oct 18, 2026 •

Copy link
Copy Markdown
Member

Follow-up to #1714. The rename moved the user-facing names to Pace but left the old fc abbreviation in private symbols, compile definitions, test fixtures and thread labels. After this PR no first-party file spells _fc_, fc_, FC_ or fc-.

Commits

  1. cmake/portable/CompileCache.cmake's private symbols (_fc_* → _pace_*, the prefix cmake/ErrorPopups.cmake already uses), plus every script check and rulebook line that calls or cites one. _fc_pace_env → _pace_launcher_env. A comment naming the nonexistent _fc_auto_start_fastached now names _pace_auto_start_pace_kv.
  2. Every other _fc_ name: _pace_cc_core, _pace_cc_sources, _pace_node_shared, _pace_cli_sources, the zstd/lz4 target variables, test-registration locals, _pace_decode, and the shell locals in the macOS account helper and the launcher-replay wrapper.
  3. FC_ / fc_ / fc-:
    • FC_* → PACE_* (TLS, compression and ranges-fallback compile definitions, test environment variables, stubs). FC_SYSCONF_DIR → PACE_SYSCONF_PATH and FC_MACOS_PREFIX → PACE_MACOS_PREFIX_PATH, because the plain PACE_ names are already the CMake settings they derive from, holding a different value (no leading /).
    • The profiling docs cited FC_ZONE_SCOPED and friends in Pace/Core/Profiling.hpp, which no longer exists. They now cite core-cpp's CORE_* macros in <core/Profiling.hpp>.
    • fc_ script helpers → pace_. fc- → pace- for Tracy thread labels, test scratch names, the marker probe and CI/bench temp paths.

Kept: /mnt/d/fastcached/... in CompileCache.cmake, an exempted quotation. Bare fc where it means the byte 0xFC, -fc++-static-destructors, a container name or a bench local.

Verified locally (Windows, MSVC 19.5x, Ninja)

  • Fresh configure, full build 914/914. build.ninja carries the new definitions and no FC_.
  • clang-format 22.1.8 (the pinned build) clean over the 48 changed C++ files.
  • ctest: 6827/6833 pass. Of the 6 failures, one was this change (-DFC_ROLE in version-git-unanswered, fixed and re-run green). The other five are this host:
    • control-bytes: a CRLF working tree. The diff carries no CR.
    • mkdocs-validation, pacectl-e2e: python3 is the Microsoft Store stub.
    • launcher-e2e-ports-selftest: its walk reaches a stale local .claude/worktrees/probe-werror copy. This branch's file scores 0.
    • One FileTrust case: an 8.3 temp path. The file is untouched.
  • POSIX-only doc checks run under Git Bash: agent-md-budget, rulebook-tripwires, table-totals pass. e2e-helpers-selftest fails the same 2 cases on master here.

The rename to Pace (#1714) moved this module's cache variables and
environment variables to PACE_*, but left its private functions and
variables on the old `_fc_` prefix. They are now `_pace_`, the prefix
cmake/ErrorPopups.cmake already uses for the same purpose, and every
script check that calls or reads one (debug-prefix-map-rules,
pace-addr-opt-out, version-fallback-warning, compile-cache-dispatch,
the daemon staging/diagnostic/start checks) and every rulebook or code
comment that cites one follows.

`_fc_pace_env` becomes `_pace_launcher_env` rather than the stuttering
`_pace_pace_env`, and a comment naming `_fc_auto_start_fastached` -- a
function that never existed under that spelling -- now names
`_pace_auto_start_pace_kv`. The `/mnt/d/fastcached/...` measurement on
line 92 stays: brand-leftovers exempts it as a quotation.

The other `_fc_` names in the tree (the pace-cc and pace-node target
lists, test-local variables, the macOS account helper) are not this
module's and are left for their own change.

Signed-off-by: Christian Parpart <c.parpart@lastrada.net>
@christianparpart christianparpart added the type/chore Dependencies, CI plumbing, release mechanics, repo hygiene label Oct 18, 2026
@github-actions github-actions Bot added area/launcher apps/fastcache-cc/ - the compiler launcher and its cache key area/distributed Distributed/, apps/fastcache-compile-node/ - dispatch, workers, scheduler area/build CMake, presets, toolchains, CI workflows labels Oct 18, 2026
The previous commit renamed cmake/portable/CompileCache.cmake's private
symbols; this one finishes the job for every other `_fc_` name in the tree,
so none is left:

- the launcher's source lists `_fc_cc_core` and `_fc_cc_sources` (and its
  zstd/lz4 link variables), `_fc_node_shared`, `_fc_cli_sources` and
  `_fc_cli_tui_tests`, and Pace's own `_fc_zstd_target`/`_fc_lz4_target`;
- the test-registration locals in src/tests/CMakeLists.txt;
- `_fc_decode` in check-wix-service-table.cmake, the wrapper's shell
  variables in launcher-replay-e2e.sh and the macOS account helper's;
- every comment, rulebook line, AGENT.md and source-map entry and plan
  that cites one of them.

Each takes `_pace_`, and none collides with an existing name.

Signed-off-by: Christian Parpart <c.parpart@lastrada.net>
@github-actions github-actions Bot added area/compile-cache CompileCache/, the 0xFC wire, the executor, PathCanon area/protocol Protocol/, Auth/ - memcached, RESP, autodetect, the auth gate area/platform Platform/, Config/, Cli/ - service registration, config lookup, the CLI table area/observability Metrics/, logging, stats and scrape surfaces area/packaging packaging/, CPack, deb/rpm/pkg/msi, installers area/core Core/ - the shared foundation; high blast radius os/macos Specific to macOS (libc++, kqueue, launchd, pkg) labels Oct 18, 2026
The last of the old abbreviation, so none of the three spellings is left
in a first-party file:

- FC_ becomes PACE_: the TLS, compression and ranges-fallback compile
  definitions, the test stubs' and fixtures' environment variables, and
  script placeholders. Two compile definitions take a _PATH suffix,
  PACE_SYSCONF_PATH and PACE_MACOS_PREFIX_PATH, because PACE_SYSCONF_DIR
  and PACE_MACOS_PREFIX are already the CMake settings they are derived
  from, holding the same path WITHOUT its leading slash -- one name for
  two values is the confusion a rename should not introduce.
- The profiling docs named FC_ZONE_SCOPED and friends in
  Pace/Core/Profiling.hpp, a header that no longer exists. They now name
  what the code uses: core-cpp's CORE_* macros in <core/Profiling.hpp>.
  AGENT.md keeps its line count.
- fc_ helper functions in the check scripts become pace_; each is local
  to its own cmake -P script, so the existing pace_case and pace_stage
  elsewhere do not collide.
- fc- becomes pace-: the Tracy thread labels (pace-admin,
  pace-reactor-N, pace-acceptor-N -- a profiler label, never
  pthread_setname_np, so Linux's 15-byte limit does not apply), test
  scratch names, the marker probe (and its upper-case spelling in the
  case-insensitivity test), and CI and bench temp paths.

Bare `fc` is left alone: there it is the byte 0xFC, the compiler flag
-fc++-static-destructors, a container name or a bench local.

Signed-off-by: Christian Parpart <c.parpart@lastrada.net>
@christianparpart christianparpart changed the title chore: CompileCache.cmake's private symbols take the Pace prefix chore: the last fc/_fc_/FC_ names take the Pace spelling Oct 18, 2026
@github-actions github-actions Bot added area/cluster Consensus/, Cluster/ - Raft, discovery, membership area/net Net/, Async/, Server/ - sockets, reactors, connections os/windows Specific to Windows (MSVC, clang-cl, Winsock, IOCP) labels Oct 18, 2026
@christianparpart
christianparpart merged commit 0a3a049 into master Oct 19, 2026
84 of 89 checks passed
@christianparpart
christianparpart deleted the chore/compile-cache-pace-rename branch October 19, 2026 04:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/build CMake, presets, toolchains, CI workflows area/cluster Consensus/, Cluster/ - Raft, discovery, membership area/compile-cache CompileCache/, the 0xFC wire, the executor, PathCanon area/core Core/ - the shared foundation; high blast radius area/distributed Distributed/, apps/fastcache-compile-node/ - dispatch, workers, scheduler area/launcher apps/fastcache-cc/ - the compiler launcher and its cache key area/net Net/, Async/, Server/ - sockets, reactors, connections area/observability Metrics/, logging, stats and scrape surfaces area/packaging packaging/, CPack, deb/rpm/pkg/msi, installers area/platform Platform/, Config/, Cli/ - service registration, config lookup, the CLI table area/protocol Protocol/, Auth/ - memcached, RESP, autodetect, the auth gate os/macos Specific to macOS (libc++, kqueue, launchd, pkg) os/windows Specific to Windows (MSVC, clang-cl, Winsock, IOCP) type/chore Dependencies, CI plumbing, release mechanics, repo hygiene

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant