open-source-parsers / open-source-parsers/jsoncpp

runtime function giving the version (as a string)

Open
#1,464 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
C++
Stars
8.9k
Forks
2.7k
Avg merge
31m
Merged PRs (30d)
1

Description

Runtime description of the version of the library
I am using JsonCPP in a program (like RefPerSys) following GNU conventions on Linux. When running as ./refpersys --version that program gives the version of all relevant runtime libraries.

Describe the solution you'd like
Some extern "C" const char* jsoncpp_give_runtime_version(void); function returning the runtime semantic version of the library.

Describe alternatives you've considered
Using macros like JSONCPP_VERSION_STRING is less accurate. It gives the version at compile time of my refpersys executable, and with dynamic linking the runtime library version could have evolved.

Thanks for JSONCPP
Please ask any more details to me (Basile Starynkevitch, in France) by email to basile.starynkevitch@cea.fr (office, at CEA LIST) or basile@starynkevitch.net (home, near Paris, France)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the JSONCPP_VERSION_STRING definition and the library's public version declarations. Determine where the requested extern "C" entry point belongs and how its returned semantic version should reflect the dynamically linked library. Done means the public function is available at runtime and returns the library version independently of the caller's compile-time macro.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.