HomePhabricator
Standards Updates
10 April 2020

The MousePaw Media Standards have been updated. The quizzes have also been updated to reflect this (finally!)

Here are the highlights:

Coding Standards

  • C and C++: Indent with tabs (4 space width) instead of spaces. Use additional spaces only when necessary for additional alignment.
  • Use lower_snake_case for variables and functions.
  • Switch to "One True Bracket Style" proposed. (Allman is still the standard for the moment.)

Technical Standards

  • GCC updated to GCC 7 or later, which should be present on most modern Linux systems.
  • Use eventpp for signals and callbacks, instead of CPGF.
  • Python pulled back to Python 3.7 for best portability.

Software Standards

  • clang-format is now mandatory software. You can get the .clang-format file we use here: P56. (If you want to use Allman still, just change line 26 to "BreakBeforeBraces: Allman # Linux (OTBS) OR Allman"
Written by jcmcdonald on Apr 10 2020, 5:44 PM.
CEO, Lead Developer

Event Timeline

@bdlovy @mahussain I want to make sure y'all see this. Also, we're using OTBS instead of Allman until July (I may extend one more month) experimentally, before we make a final decision on the bracketing style.

@jcmcdonald I'm unable to build eventpp locally as found in libdeps when -Werror is used - found that odd, it's not even our code. By removing that flag flag from PawLIB and SIMPLExpress I could get a working build. Did the clang upgrade change how we need to be including that code?

@bdlovy Yeah, you have to git pull on libdeps, as there were some fixes to eventpp precipitating from a bug report by @imirzali to that project.

ah thanks - I was building the stable branch, just needed to checkout master.