Files
dpm-core-ng/include/internal/version.hpp
Christopher M. Punches 38bd9314cc Release version 1.0.0; keep generated documentation source-derived
The project version moves to 1.0.0, which the library soname, the
reported version, the test expectations, and the generated document
filename all derive from. SOVERSION now matches the major version.

The generated reference is built from the source and its documentation
comments alone. Prose from docs/ was briefly part of the input and is
removed: development notes are written and read on their own, and a
generator that reproduces them adds nothing. The reference opens on a
front page declared in the public header, followed by the module
contract.

One target builds it. Both PDF and HTML are produced by default, the
finished documents land in the build tree under docs/pdf and docs/html,
and the generators work in docs/tmp.

The internal namespace is dpm_core, matching the artifact name as
closely as a C++ identifier permits.
2026-08-15 20:45:47 -04:00

37 lines
1.2 KiB
C++

/**
* @file version.hpp
* @brief X.Y.Z version parsing
*
* @copyright Copyright (c) 2026 SILO GROUP LLC
* @author Chris Punches <chris.punches@silogroup.org>
*
* Part of the Dark Horse Linux Package Manager (DPM)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
#pragma once
namespace dpm_core {
/**
* @brief Parses a strict X.Y.Z version string
*
* @param s The version string
* @param out Receives the three parsed components
* @return true on success; false on any malformation
*/
bool parse_version(const char* s, long out[3]);
} // namespace dpm_core