Post FlightGear 2020.2 LTS changes: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
m (→‎fgdata clean-ups: + appendix)
Line 5: Line 5:
As a general guideline, the minimum system to develop / build the code on will be Ubuntu 18.04 LTS (Bionic) : the versions below correspond to what is available in a stock Bionic install.
As a general guideline, the minimum system to develop / build the code on will be Ubuntu 18.04 LTS (Bionic) : the versions below correspond to what is available in a stock Bionic install.


# Make C++14 the minimum required version (will make it easier to continue replacing Boost items with std:: ones)
# Make C++14 the minimum required version (will make it easier to continue replacing Boost items with std:: ones) <ref>https://sourceforge.net/p/flightgear/mailman/message/36988831/</ref> <ref>https://sourceforge.net/p/flightgear/mailman/message/36984349/</ref>
# Make CMake 3.6 the minimum required version : this will allow simplifying a bunch of compatibility logic in the build files <ref>https://sourceforge.net/p/flightgear/mailman/message/37020794/</ref>
# Make CMake 3.6 the minimum required version : this will allow simplifying a bunch of compatibility logic in the build files <ref>https://sourceforge.net/p/flightgear/mailman/message/37020794/</ref>
# Make Qt 5.9 the minimum for the launcher  
# Make Qt 5.9 the minimum for the launcher  

Revision as of 08:30, 26 May 2020

Code clean-ups and changes

Collecting what's going to change : this will also be used to work out what manual or automatic migrations are required to keep aircraft working. It's expected that for the first few months of 'next', there will be higher than usual breakage, i.e regular might not be possible.

As a general guideline, the minimum system to develop / build the code on will be Ubuntu 18.04 LTS (Bionic) : the versions below correspond to what is available in a stock Bionic install.

  1. Make C++14 the minimum required version (will make it easier to continue replacing Boost items with std:: ones) [1] [2]
  2. Make CMake 3.6 the minimum required version : this will allow simplifying a bunch of compatibility logic in the build files [3]
  3. Make Qt 5.9 the minimum for the launcher
  4. Drop 32-bit windows support [4]
  5. Drop the pre-2017.x MultiPlayer message format - this will fix warnings from some aircraft about MP packet overflows
  6. Drop the KLN-89 code, since it's unused and not maintained for a long time: Canvas and the regular GPS code can easily implement a working KLN-89 or similar equipment now [5]
  7. Switch to Compositor mode as the only rendering option [6]
  8. Drop Rembrandt support from C++ (really part of the above) [7]
  9. Drop the non-ALS shaders / pipeline : this will reduce the number of options to test in the compositor effects
  10. Drop the C++ NavDisplay : the Canvas version replaces it [8]

Possible additional items

  • Remove the 2D panel code in favour of Canvas (this requires completing some work to load 2D panel elements as Canvas, from XML)
  • Remove the C++ HUD in favour of Canvas-based version : this requires some kind of migration script or framework, so we have at least the default UFO HUD available

fgdata clean-ups

/Nasal

2do: list outdated / deprecated functions for removal (I remember one comment saying: remove after FG 3.0 or something)

  • Clean up the GPS code with respect to FG_210_COMPAT :

References

References