SFTtech / SFTtech/openage

Increase verbosity for 'openage --version'

Open
#1,185 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area: buildsystem good first issue improvement just do it lang: cython
Dominant language
Python
Stars
14.4k
Forks
1.3k
PR merge metrics
No merged PRs in 30d

Description

We give the following information.
Output (updated 04/05/2020):

openage v0.4.0-131-ga3d99602b [devmode]
inotify, opengl, ci-cfg NOT SET
GNU 7.5.0 [ -fdiagnostics-color=auto]

== Python ==
Python        3.6.9 (default, Nov  7 2019, 10:44:02)
[GCC 8.3.0]
Python C API  1013
Cython        0.26.1
Jinja2        2.10
NumPy         1.13.3
Pillow        5.1.0
Pygments      2.2.0

== C++ ==
Eigen         3.3.4
Harfbuzz      1.7.2
Qt            5.9.5
SDL-runtime   2.0.8
libc-compile  2.27
libc-runtime  2.27
nyan

Windows

openage v0.4.0-141-g20640dba [devmode]
opengl, ci-cfg NOT SET
MSVC 19.25.28614.0 [/DWIN32 /D_WINDOWS /W3 /GR /EHsc /MP]

== Python ==
Python        3.7.7 (tags/v3.7.7:d7c567b08f, Mar 10 2020, 10:41:24) [MSC v.1900 64 bit (AMD64)]
Python C API  1013
Cython        0.29.17
Jinja2        2.11.2
NumPy         1.18.3
Pillow        7.1.2
Pygments      2.6.1

== C++ ==
Eigen 3.3.7
Harfbuzz 2.5.3
OpenGL 4.4.0 - Build 21.20.16.4574
Opus unknown
Qt 5.12.8
SDL-runtime 2.0.12
libc-runtime Windows
nyan

For future debugging on the user side we could give more information:

  • libc
  • sdl-version
  • Qt-version
  • eigen
  • harfbuzz
  • version numbers of python determined during compile time
  • python packages version
  • numpy
  • python imaging library (PIL)
  • OpenGL version number (create new context -> epoxy_gl_version() ?)
  • nyan version number
  • opus(file) version (doesn't seem to give version output on win builds for now) - FIX needed
  • embedded python version (packaging)

Open for discussion:

  • cmake version
  • libpng
  • Freetype
  • ZLIB
  • PNG
  • SDL2Image
  • Opus (doesn't seem to give version output on win builds for now) - FIX needed
  • Ogg

Optional:

  • GCCBacktrace
  • gperftools-profiler
  • gperftools-tcmalloc
  • ncurses
  • vulkan

In addition:
jj quote:

for all I care, the versions of every single thing that we have and that has a version.

For sure these all are information we can reuse when it comes to error reporting, #1172.

Categories
We could sort them into sections for:

internal modules (converter, nyan-lib, etc.), (soon)
python section (interpreter, packages/modules)
c++ libraries and alike
_data format versions (like nyan file, asset/modpack version, etc.) (soon)

Contributor guide

No contributing guide indexed for this repository

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 from the openage --version entry point and compare its current output with the requested information and category lists in the issue. Determine which additional version details can be reported across Python, C++, and platform dependencies, then verify the command produces the agreed sections and values on supported platforms.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp, python
Domain
cli, developer-experience
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.