FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
mcpp/src/version.cppm at main · mcpp-community/mcpp · GitHub
Uh oh!
There was an error while loading.
Please reload this page
.
mcpp-community
/
mcpp
Public
Notifications
You must be signed in to change notification settings
Fork
12
Star
109
Code
Issues
36
Pull requests
7
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
mcpp
/
src
/
version.cppm
Copy path
More file actions
More file actions
Latest commit
History
History
History
36 lines (31 loc) · 1.57 KB
Breadcrumbs
mcpp
/
src
/
version.cppm
Copy path
File metadata and controls
36 lines (31 loc) · 1.57 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
//
mcpp.version — this binary's own version, and nothing else.
//
//
WHY IT IS ITS OWN MODULE
//
//
The constant used to live in mcpp.toolchain.fingerprint, next to the struct
//
that folds it into the BMI cache key. That is a reasonable place for a
//
*consumer* of the version and a bad place for the version itself: fingerprint
//
imports mcpp.toolchain.detect, which imports mcpp.platform.xlings, so "what version is
//
this binary" transitively dragged in the entire toolchain-detection and
//
package-manager subsystem.
//
//
That is not a stylistic complaint. mcpp.pm.index_contract needs the version
//
for one comparison (is this binary new enough for this index?), and pulling
//
it from fingerprint made index_contract depend on xlings — which made it
//
impossible for xlings to depend on index_contract, which is exactly where the
//
index-refresh guard has to live (mcpp.pm.index_snapshot, and see
//
mcpp::xlings::update_index). The cycle was the layering telling us the
//
constant was in the wrong place.
//
//
A leaf module with no imports beyond `std` can be used by anyone. Keep it
//
that way: nothing else belongs in this file.
//
//
SINGLE SOURCE OF TRUTH. `.github/tools/check_version_pins.sh` reads the
//
literal below and cross-checks it against `mcpp.toml`'s `[package].version`;
//
tests/e2e/01_help_and_version.sh checks it against `mcpp --version` at
//
runtime. Both must be updated together — see docs/09-release.md.
export
module
mcpp.version;
import
std;
export
namespace
mcpp
{
inline
constexpr
std::string_view
MCPP_VERSION
=
"
2026.8.26.1
"
;
}
//
namespace mcpp
Back
|
FazBrowse Home
|
New Git URL