Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add deprecation logic in options.json CMake generation code #1568

Closed
2 tasks done
Tracked by #2005 ...
mwestphal opened this issue Aug 20, 2024 · 0 comments · Fixed by #2011
Closed
2 tasks done
Tracked by #2005 ...

Add deprecation logic in options.json CMake generation code #1568

mwestphal opened this issue Aug 20, 2024 · 0 comments · Fixed by #2011
Assignees
Labels
help wanted Please help with this issue! source:libf3d
Milestone

Comments

@mwestphal
Copy link
Contributor

mwestphal commented Aug 20, 2024

Is your feature request related to a problem? Please describe.
Options generation from .json file was added in #1471, but there is currently no way to deprecate an option.

  • Investigate how this could be implemented
  • Implement the deprecation system
@mwestphal mwestphal added source:libf3d help wanted Please help with this issue! labels Aug 20, 2024
@mwestphal mwestphal added this to the 3.1.0 milestone Aug 20, 2024
@mwestphal mwestphal added this to F3D Aug 20, 2024
@mwestphal mwestphal moved this to Investigate in F3D Aug 20, 2024
mwestphal added a commit that referenced this issue Aug 20, 2024
Complete refactor of options API based on generated struct and methods from a `options.json` file.

 - Add struct and methods generation code in f3dOptions.cmake
 - Add generation in library/CMakeLists.txt
 - Add options.json containing all options
 - Add new API in options.h and implement it in options.cxx, remove old API
 - Adapt code in library and in app for the new API
 - Add options testing
 - Added a quick doc about the three APIs and in header docs
 - Add a C++11 compatibility
 - Added examples
 - Improve clang-format CI and update files accordingly
 
Will be done in other PRs:

 - Add deprecation logic in generation code: #1568
 - Rework application and simplify option logic: #1569
 - Add more options types : #1570
 - Add actual parsing for all options types: #1571
 - Add complete documentation for options and option parsing: #1572
 - Proper java and javascript bindings: #1573 #1574
 - use exception translator in python bindings: #1575
  - Improve compile-time opti in options_tools.h.in:  #1576
Nokse22 pushed a commit to Nokse22/f3d that referenced this issue Sep 21, 2024
Complete refactor of options API based on generated struct and methods from a `options.json` file.

 - Add struct and methods generation code in f3dOptions.cmake
 - Add generation in library/CMakeLists.txt
 - Add options.json containing all options
 - Add new API in options.h and implement it in options.cxx, remove old API
 - Adapt code in library and in app for the new API
 - Add options testing
 - Added a quick doc about the three APIs and in header docs
 - Add a C++11 compatibility
 - Added examples
 - Improve clang-format CI and update files accordingly
 
Will be done in other PRs:

 - Add deprecation logic in generation code: f3d-app#1568
 - Rework application and simplify option logic: f3d-app#1569
 - Add more options types : f3d-app#1570
 - Add actual parsing for all options types: f3d-app#1571
 - Add complete documentation for options and option parsing: f3d-app#1572
 - Proper java and javascript bindings: f3d-app#1573 f3d-app#1574
 - use exception translator in python bindings: f3d-app#1575
  - Improve compile-time opti in options_tools.h.in:  f3d-app#1576
@mwestphal mwestphal self-assigned this Feb 23, 2025
@github-project-automation github-project-automation bot moved this from Investigate to Done in F3D Feb 24, 2025
@mwestphal mwestphal mentioned this issue Feb 27, 2025
35 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Please help with this issue! source:libf3d
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant