Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ec052a2f69 | ||
|
|
a80ffb0707 | ||
|
|
115df5bb2d | ||
|
|
f30d57bd4a | ||
|
|
fef317c84f |
No files matched your search
Generated
+248
@@ -0,0 +1,248 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="BackendCodeEditorSettings">
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CDeclarationWithImplicitIntType/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CommentTypo/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=ConstevalIfIsAlwaysConstant/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppAbstractClassWithoutSpecifier/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppAbstractFinalClass/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppAbstractVirtualFunctionCallInCtor/@EntryIndexedValue" value="ERROR" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppAccessSpecifierWithNoDeclarations/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppAwaiterTypeIsNotClass/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppBooleanIncrementExpression/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppBoostFormatBadCode/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppBoostFormatLegacyCode/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppBoostFormatMixedArgs/@EntryIndexedValue" value="ERROR" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppBoostFormatTooFewArgs/@EntryIndexedValue" value="ERROR" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppBoostFormatTooManyArgs/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppCStyleCast/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppCVQualifierCanNotBeAppliedToReference/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppClassCanBeFinal/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppClassIsIncomplete/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppClassNeedsConstructorBecauseOfUninitializedMember/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppClassNeverUsed/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppCompileTimeConstantCanBeReplacedWithBooleanConstant/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppConceptNeverUsed/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppConditionalExpressionCanBeSimplified/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppConstParameterInDeclaration/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppConstValueFunctionReturnType/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppCoroutineCallResolveError/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAArrayIndexOutOfBounds/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAConstantConditions/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAConstantFunctionResult/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAConstantParameter/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFADeletedPointer/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAEndlessLoop/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAInfiniteRecursion/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAInvalidatedMemory/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFALocalValueEscapesFunction/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFALocalValueEscapesScope/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFALoopConditionNotUpdated/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAMemoryLeak/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFANotInitializedField/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFANullDereference/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFATimeOver/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAUnreachableCode/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAUnreachableFunctionCall/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAUnreadVariable/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDFAUnusedValue/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeclarationHidesLocal/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeclarationHidesUncapturedLocal/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeclarationSpecifierWithoutDeclarators/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeclaratorDisambiguatedAsFunction/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeclaratorNeverUsed/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeclaratorUsedBeforeInitialization/@EntryIndexedValue" value="ERROR" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDefaultCaseNotHandledInSwitchStatement/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDefaultInitializationWithNoUserConstructor/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDefaultIsUsedAsIdentifier/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDefaultedSpecialMemberFunctionIsImplicitlyDeleted/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeletingVoidPointer/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDependentTemplateWithoutTemplateKeyword/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDependentTypeWithoutTypenameKeyword/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeprecatedEntity/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeprecatedOverridenMethod/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDeprecatedRegisterStorageClassSpecifier/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDereferenceOperatorLimitExceeded/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDiscardedPostfixOperatorResult/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDoxygenSyntaxError/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDoxygenUndocumentedParameter/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppDoxygenUnresolvedReference/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEmptyDeclaration/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceCVQualifiersOrder/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceCVQualifiersPlacement/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceDoStatementBraces/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceForStatementBraces/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceFunctionDeclarationStyle/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceIfStatementBraces/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceNestedNamespacesStyle/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceOverridingDestructorStyle/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceOverridingFunctionStyle/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceTypeAliasCodeStyle/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnforceWhileStatementBraces/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEntityAssignedButNoRead/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEntityUsedOnlyInUnevaluatedContext/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEnumeratorNeverUsed/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEqualOperandsInBinaryExpression/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppEvaluationFailure/@EntryIndexedValue" value="ERROR" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppExplicitSpecializationInNonNamespaceScope/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppExpressionWithoutSideEffects/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppFinalFunctionInFinalClass/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppFinalNonOverridingVirtualFunction/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppForLoopCanBeReplacedWithWhile/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppForwardEnumDeclarationWithoutUnderlyingType/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppFunctionDoesntReturnValue/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppFunctionIsNotImplemented/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppFunctionResultShouldBeUsed/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppFunctionalStyleCast/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppHeaderHasBeenAlreadyIncluded/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppHiddenFunction/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppHidingFunction/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppIdenticalOperandsInBinaryExpression/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppIfCanBeReplacedByConstexprIf/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppImplicitDefaultConstructorNotAvailable/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppIncompatiblePointerConversion/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppIncompleteSwitchStatement/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppInconsistentNaming/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppIntegralToPointerConversion/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppInvalidLineContinuation/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppJoinDeclarationAndAssignment/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppLambdaCaptureNeverUsed/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppLocalVariableMayBeConst/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppLocalVariableMightNotBeInitialized/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppLocalVariableWithNonTrivialDtorIsNeverUsed/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppLongFloat/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMemberFunctionMayBeConst/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMemberFunctionMayBeStatic/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMemberInitializersOrder/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMismatchedClassTags/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMissingIncludeGuard/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMissingKeywordThrow/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppModulePartitionWithSeveralPartitionUnits/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMsExtAddressOfClassRValue/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMsExtBindingRValueToLvalueReference/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMsExtCopyElisionInCopyInitDeclarator/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMsExtDoubleUserConversionInCopyInit/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMsExtNotInitializedStaticConstLocalVar/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMsExtReinterpretCastFromNullptr/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMultiCharacterLiteral/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMultiCharacterWideLiteral/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMustBePublicVirtualToImplementInterface/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppMutableSpecifierOnReferenceMember/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppNoDiscardExpression/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppNodiscardFunctionWithoutReturnValue/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppNonExceptionSafeResourceAcquisition/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppNonExplicitConversionOperator/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppNonExplicitConvertingConstructor/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppNonInlineFunctionDefinitionInHeaderFile/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppNonInlineVariableDefinitionInHeaderFile/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppNotAllPathsReturnValue/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppObjectMemberMightNotBeInitialized/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppOutParameterMustBeWritten/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppParameterMayBeConst/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppParameterMayBeConstPtrOrRef/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppParameterNamesMismatch/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppParameterNeverUsed/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPassValueParameterByConstReference/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPointerConversionDropsQualifiers/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPointerToIntegralConversion/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPolymorphicClassWithNonVirtualPublicDestructor/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPossiblyErroneousEmptyStatements/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPossiblyUninitializedMember/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPossiblyUnintendedObjectSlicing/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPrecompiledHeaderIsNotIncluded/@EntryIndexedValue" value="ERROR" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPrecompiledHeaderNotFound/@EntryIndexedValue" value="ERROR" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPrintfBadFormat/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPrintfExtraArg/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPrintfMissedArg/@EntryIndexedValue" value="ERROR" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPrintfRiskyFormat/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppPrivateSpecialMemberFunctionIsNotImplemented/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRangeBasedForIncompatibleReference/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedefinitionOfDefaultArgumentInOverrideFunction/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantAccessSpecifier/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantBaseClassAccessSpecifier/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantBaseClassInitializer/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantBooleanExpressionArgument/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantCastExpression/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantComplexityInComparison/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantConditionalExpression/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantConstSpecifier/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantControlFlowJump/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantDereferencingAndTakingAddress/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantElaboratedTypeSpecifier/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantElseKeyword/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantElseKeywordInsideCompoundStatement/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantEmptyDeclaration/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantEmptyStatement/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantExportKeyword/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantFwdClassOrEnumSpecifier/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantInlineSpecifier/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantLambdaParameterList/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantMemberInitializer/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantNamespaceDefinition/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantParentheses/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantQualifier/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantQualifierADL/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantStaticSpecifierOnMemberAllocationFunction/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantStaticSpecifierOnThreadLocalLocalVariable/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantTemplateArguments/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantTemplateKeyword/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantTypenameKeyword/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantVoidArgumentList/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRedundantZeroInitializerInAggregateInitialization/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppReinterpretCastFromVoidPtr/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppRemoveRedundantBraces/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppReplaceMemsetWithZeroInitialization/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppReplaceTieWithStructuredBinding/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppReturnNoValueInNonVoidFunction/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppSmartPointerVsMakeFunction/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppSomeObjectMembersMightNotBeInitialized/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppSpecialFunctionWithoutNoexceptSpecification/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppStaticAssertFailure/@EntryIndexedValue" value="ERROR" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppStaticDataMemberInUnnamedStruct/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppStaticSpecifierOnAnonymousNamespaceMember/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppStringLiteralToCharPointerConversion/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppTabsAreDisallowed/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppTemplateArgumentsCanBeDeduced/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppTemplateParameterNeverUsed/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppTemplateParameterShadowing/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppThrowExpressionCanBeReplacedWithRethrow/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppTooWideScope/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppTooWideScopeInitStatement/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppTypeAliasNeverUsed/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUninitializedDependentBaseClass/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUninitializedNonStaticDataMember/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUnionMemberOfReferenceType/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUnmatchedPragmaEndRegionDirective/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUnmatchedPragmaRegionDirective/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUnnamedNamespaceInHeaderFile/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUnnecessaryWhitespace/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUnsignedZeroComparison/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUnusedIncludeDirective/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseAlgorithmWithCount/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseAssociativeContains/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseAuto/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseAutoForNumeric/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseElementsView/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseEraseAlgorithm/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseFamiliarTemplateSyntaxForGenericLambdas/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseRangeAlgorithm/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseStdSize/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseStructuredBinding/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUseTypeTraitAlias/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUserDefinedLiteralSuffixDoesNotStartWithUnderscore/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppUsingResultOfAssignmentAsCondition/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppVariableCanBeMadeConstexpr/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppVirtualFunctionCallInsideCtor/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppVirtualFunctionInFinalClass/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppVolatileParameterInDeclaration/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppWarningDirective/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppWrongIncludesOrder/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppWrongSlashesInIncludeDirective/@EntryIndexedValue" value="HINT" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppZeroConstantCanBeReplacedWithNullptr/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=CppZeroValuedExpressionUsedAsNullPointer/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=IdentifierTypo/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=IfStdIsConstantEvaluatedCanBeReplaced/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=StdIsConstantEvaluatedWillAlwaysEvaluateToConstant/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=StringLiteralTypo/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
</component>
|
||||
</project>
|
||||
Generated
+17
@@ -0,0 +1,17 @@
|
||||
<component name="ProjectRunConfigurationManager">
|
||||
<configuration default="false" name="Sim" type="ShConfigurationType">
|
||||
<option name="SCRIPT_TEXT" value="" />
|
||||
<option name="INDEPENDENT_SCRIPT_PATH" value="true" />
|
||||
<option name="SCRIPT_PATH" value="$PROJECT_DIR$/code/RocketLauncher/scripts/build.sh" />
|
||||
<option name="SCRIPT_OPTIONS" value="sim" />
|
||||
<option name="INDEPENDENT_SCRIPT_WORKING_DIRECTORY" value="true" />
|
||||
<option name="SCRIPT_WORKING_DIRECTORY" value="$PROJECT_DIR$/code/RocketLauncher/" />
|
||||
<option name="INDEPENDENT_INTERPRETER_PATH" value="true" />
|
||||
<option name="INTERPRETER_PATH" value="/bin/bash" />
|
||||
<option name="INTERPRETER_OPTIONS" value="" />
|
||||
<option name="EXECUTE_IN_TERMINAL" value="true" />
|
||||
<option name="EXECUTE_SCRIPT_FILE" value="true" />
|
||||
<envs />
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
</component>
|
||||
@@ -1,7 +1,8 @@
|
||||
# 🚀 Luke's Rocket Launch Controller
|
||||
|
||||
[](https://github.com/KofTwentyTwo/Lukes-Rocket-Launcher/actions)
|
||||
[](https://github.com/KofTwentyTwo/Lukes-Rocket-Launcher/actions)
|
||||
[](https://github.com/KofTwentyTwo/Lukes-Rocket-Launcher/actions?query=workflow%3A%22Build+and+Test+Arduino+Firmware%22)
|
||||
[](https://github.com/KofTwentyTwo/Lukes-Rocket-Launcher/releases)
|
||||
[](https://github.com/KofTwentyTwo/Lukes-Rocket-Launcher/actions?query=workflow%3A%22Build+and+Test+Arduino+Firmware%22)
|
||||
[](https://platformio.org/)
|
||||
[](https://opensource.org/licenses/MIT)
|
||||
|
||||
@@ -9,12 +10,9 @@
|
||||
|
||||
**To be clear** - this is for an awesome 11-year-old that loves rockets and micro-electronics and a nerdy dad that wants to empower and support him in every way possible. Because nothing says "I love you" like helping your kid build something that can launch rockets into the sky! 🚀💕
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
<video src="docs/clip-1.mp4" width="100%" controls>
|
||||
Your browser doesn't support video playback, or this just still breaks at times in Github...
|
||||
</video>
|
||||

|
||||
|
||||
*Watch the controller in action! The simulation shows the complete launch sequence from startup to ignition.*
|
||||
|
||||
@@ -155,57 +153,57 @@ The project now includes comprehensive unit testing:
|
||||
```
|
||||
|
||||
### **Building & Testing** 🧪
|
||||
The project now includes a comprehensive build system with automated testing!
|
||||
The project now includes a comprehensive build system with automated testing and simulation!
|
||||
|
||||
```bash
|
||||
# 🚀 Default: Run tests and build everything
|
||||
make
|
||||
# 🚀 Build and launch simulator (recommended for development)
|
||||
./scripts/build.sh sim
|
||||
|
||||
# 🧪 Just run tests
|
||||
make test
|
||||
# 🧪 Run unit tests
|
||||
./scripts/build.sh test
|
||||
|
||||
# 🔧 Build everything (skip tests)
|
||||
make build-only
|
||||
# 🔧 Build everything (tests + CMake + PlatformIO)
|
||||
./scripts/build.sh
|
||||
|
||||
# 🎮 Build for simulation
|
||||
make build-sim
|
||||
# 🎮 Build simulation firmware only
|
||||
./scripts/build.sh firmware-sim
|
||||
|
||||
# ⚡ Build for hardware
|
||||
make build-hw
|
||||
# ⚡ Build hardware firmware only
|
||||
./scripts/build.sh firmware-hw
|
||||
|
||||
# 📤 Upload to Arduino
|
||||
make upload
|
||||
|
||||
# 🎮 Prepare for SimulIDE
|
||||
make upload-sim
|
||||
./scripts/build.sh upload
|
||||
|
||||
# 📡 Monitor serial output
|
||||
make monitor
|
||||
./scripts/build.sh monitor
|
||||
|
||||
# 🎨 Format code
|
||||
make format
|
||||
./scripts/build.sh format
|
||||
|
||||
# 🧹 Clean build files
|
||||
make clean
|
||||
./scripts/build.sh clean
|
||||
|
||||
# ❓ Show all available targets
|
||||
make help
|
||||
# ❓ Show all available commands
|
||||
./scripts/build.sh help
|
||||
```
|
||||
|
||||
**Why the new build system?** We've added comprehensive unit testing and automated builds to ensure reliability and make development easier!
|
||||
|
||||
### **Build System Benefits** 🎯
|
||||
- **🚀 One Command**: `make` runs tests and builds everything
|
||||
- **🚀 One Command**: `./scripts/build.sh sim` builds and launches simulator
|
||||
- **🧪 Quality Assurance**: Tests run automatically before builds
|
||||
- **🔧 Multiple Targets**: Build for simulation, hardware, or both
|
||||
- **🎮 Simulator Integration**: Automatic SimulIDE launch with firmware loading
|
||||
- **📱 Cross-Platform**: Works on macOS, Linux, and Windows
|
||||
- **🎨 Code Quality**: Automatic formatting and style checking
|
||||
- **📊 Status Monitoring**: Easy to see what's working and what needs attention
|
||||
|
||||
### **Simulation** (Test Before You Test!)
|
||||
The project includes SimulIDE simulation files:
|
||||
- Open `wiring/rocker_launcher_controls.sim1` in SimulIDE
|
||||
- The firmware will automatically load from the build output
|
||||
The project includes SimulIDE simulation files with **automatic launch**:
|
||||
- **One command**: `./scripts/build.sh sim` builds and launches SimulIDE
|
||||
- **Auto-loading**: Firmware automatically loads from the build output
|
||||
- **Wiring files**: Use `wiring/rocker_launcher_controls.sim1` for testing
|
||||
- **Fast iteration**: Make changes, re-run script, test immediately
|
||||
- Test all functionality before building hardware (because debugging with real rockets is expensive!)
|
||||
|
||||
## 🎨 **3D Printing & Assembly**
|
||||
@@ -257,7 +255,7 @@ The project includes a comprehensive test suite:
|
||||
- **🔍 1 test under investigation**: Startup transition logic
|
||||
- **🧪 Test framework**: Unity-based unit testing with mock hardware
|
||||
|
||||
**Run tests**: `make test` from the `code/RocketLauncher/` directory
|
||||
**Run tests**: `./scripts/build.sh test` from the `code/RocketLauncher/` directory
|
||||
|
||||
### **Project Structure**
|
||||
```
|
||||
@@ -322,11 +320,12 @@ We welcome contributions to improve the rocket launch controller! Areas for enha
|
||||
1. Fork the repository
|
||||
2. Create a feature branch
|
||||
3. Make your changes
|
||||
4. **Run tests**: `make test` (must pass)
|
||||
5. **Build everything**: `make` (tests + builds)
|
||||
6. **Format code**: `make format` (maintains style)
|
||||
7. Test thoroughly (simulation + hardware)
|
||||
8. Submit a pull request
|
||||
4. **Run tests**: `./scripts/build.sh test` (must pass)
|
||||
5. **Test in simulator**: `./scripts/build.sh sim` (verify functionality)
|
||||
6. **Build everything**: `./scripts/build.sh` (tests + builds)
|
||||
7. **Format code**: `./scripts/build.sh format` (maintains style)
|
||||
8. Test thoroughly (simulation + hardware)
|
||||
9. Submit a pull request
|
||||
|
||||
**Testing Requirements**: All new features must include unit tests. The test suite must pass before merging.
|
||||
|
||||
|
||||
+312
@@ -0,0 +1,312 @@
|
||||
# 🚀 Luke's Rocket Launcher - Release Management Guide
|
||||
|
||||
## 📋 Quick Reference
|
||||
|
||||
### **Branch Types & Naming**
|
||||
- `main` - Production-ready code, always deployable
|
||||
- `develop` - Integration branch for features
|
||||
- `feature/*` - New features (from `develop`)
|
||||
- `bugfix/*` - Bug fixes (from `main`)
|
||||
- `release/*` - Release preparation (from `develop`)
|
||||
- `hotfix/*` - Urgent fixes (from `main`)
|
||||
|
||||
### **Release Commands**
|
||||
```bash
|
||||
# Start a new release
|
||||
./scripts/release.sh 0.1.0 start
|
||||
|
||||
# Finish a release (creates tag, merges to main/develop)
|
||||
./scripts/release.sh 0.1.0 finish
|
||||
|
||||
# Create a new branch
|
||||
./scripts/create-branch.sh feature new-feature-name
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🌿 Git Branching Model
|
||||
|
||||
### **Main Branches**
|
||||
- **`main`** - Always contains production-ready code
|
||||
- **`develop`** - Integration branch for upcoming releases
|
||||
|
||||
### **Supporting Branches**
|
||||
- **`feature/*`** - New features (branch from `develop`, merge back to `develop`)
|
||||
- **`bugfix/*`** - Bug fixes (branch from `main`, merge back to `main`)
|
||||
- **`release/*`** - Release preparation (branch from `develop`, merge to both `main` and `develop`)
|
||||
- **`hotfix/*`** - Critical fixes (branch from `main`, merge to both `main` and `develop`)
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Release Process
|
||||
|
||||
### **1. Start a Release**
|
||||
```bash
|
||||
# Create release branch from develop
|
||||
./scripts/release.sh 0.1.0 start
|
||||
|
||||
# This will:
|
||||
# - Switch to develop branch
|
||||
# - Create release/0.1.0 branch
|
||||
# - Push to remote
|
||||
```
|
||||
|
||||
### **2. Prepare the Release**
|
||||
- Update version numbers in code
|
||||
- Update CHANGELOG.md
|
||||
- Update documentation
|
||||
- Test thoroughly
|
||||
|
||||
### **3. Finish the Release**
|
||||
```bash
|
||||
# Complete the release process
|
||||
./scripts/release.sh 0.1.0 finish
|
||||
|
||||
# This will:
|
||||
# - Merge release branch to main
|
||||
# - Create and push tag v0.1.0
|
||||
# - Merge release branch to develop
|
||||
# - Clean up release branch
|
||||
# - Trigger automated workflow
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ⚡ Automated Pipeline
|
||||
|
||||
### **What Happens Automatically**
|
||||
1. **Tag Push** triggers GitHub Actions workflow
|
||||
2. **Workflow Builds** firmware (hardware + simulation)
|
||||
3. **Workflow Creates** GitHub release
|
||||
4. **Workflow Uploads** assets to release
|
||||
5. **Workflow Publishes** to GitHub Packages
|
||||
|
||||
### **No Manual Steps Needed**
|
||||
- ❌ Don't manually create GitHub releases
|
||||
- ❌ Don't manually upload assets
|
||||
- ✅ Just run the release script
|
||||
- ✅ Let the workflow handle everything else
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Branch Management
|
||||
|
||||
### **Create New Branches**
|
||||
```bash
|
||||
# Feature branch (from develop)
|
||||
./scripts/create-branch.sh feature new-feature-name
|
||||
|
||||
# Bugfix branch (from main)
|
||||
./scripts/create-branch.sh bugfix bug-description
|
||||
|
||||
# Hotfix branch (from main)
|
||||
./scripts/create-branch.sh hotfix urgent-fix-description
|
||||
```
|
||||
|
||||
### **Branch Protection Rules**
|
||||
- **`main`** - Requires PR, no direct pushes
|
||||
- **`develop`** - Requires PR, no direct pushes
|
||||
- **Feature branches** - Can be pushed directly
|
||||
|
||||
---
|
||||
|
||||
## 📝 Pull Request Workflow
|
||||
|
||||
### **1. Create PR**
|
||||
```bash
|
||||
# From feature branch to develop
|
||||
gh pr create --base develop --head feature/new-feature
|
||||
|
||||
# From develop to main (for releases)
|
||||
gh pr create --base main --head develop
|
||||
```
|
||||
|
||||
### **2. Review & Merge**
|
||||
- Self-review is allowed (you're the only person)
|
||||
- Merge when ready
|
||||
- Delete feature branch after merge
|
||||
|
||||
---
|
||||
|
||||
## 🏷️ Version Management
|
||||
|
||||
### **Semantic Versioning**
|
||||
- **Major.Minor.Patch** (e.g., 1.2.3)
|
||||
- **Major** - Breaking changes
|
||||
- **Minor** - New features, backward compatible
|
||||
- **Patch** - Bug fixes, backward compatible
|
||||
|
||||
### **Pre-releases**
|
||||
- Use for development/testing versions
|
||||
- Example: 0.1.0 (pre-release)
|
||||
- Mark as pre-release in GitHub
|
||||
|
||||
---
|
||||
|
||||
## 🚨 Troubleshooting
|
||||
|
||||
### **Common Issues**
|
||||
|
||||
#### **"already_exists" Error**
|
||||
- **Cause**: Manual GitHub release conflicts with workflow
|
||||
- **Solution**: Don't manually create releases, let workflow handle it
|
||||
|
||||
#### **Workflow Not Running**
|
||||
- **Cause**: Branch protection rules
|
||||
- **Solution**: Create PR and merge to main/develop
|
||||
|
||||
#### **Asset Upload Failures**
|
||||
- **Cause**: Missing upload_url
|
||||
- **Solution**: Ensure workflow creates release (don't skip creation)
|
||||
|
||||
### **Reset Release**
|
||||
```bash
|
||||
# Delete local tag
|
||||
git tag -d v0.1.0
|
||||
|
||||
# Delete remote tag
|
||||
git push origin --delete v0.1.0
|
||||
|
||||
# Delete GitHub release manually on GitHub
|
||||
# Start over with release script
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📚 File Structure
|
||||
|
||||
```
|
||||
Lukes-Rocket-Launcher/
|
||||
├── .github/
|
||||
│ ├── workflows/c-cpp.yml # Main CI/CD workflow
|
||||
│ ├── CODEOWNERS # Code ownership rules
|
||||
│ └── pull_request_template.md # PR template
|
||||
├── scripts/
|
||||
│ ├── release.sh # Release management
|
||||
│ ├── create-branch.sh # Branch creation
|
||||
│ ├── setup-branch-protection.sh # Branch protection setup
|
||||
│ ├── dev-sim.sh # Development simulator launcher
|
||||
│ └── sim # Quick simulator alias
|
||||
├── code/RocketLauncher/ # Main firmware code
|
||||
├── wiring/ # SimulIDE wiring files
|
||||
└── RELEASE.md # This file
|
||||
```
|
||||
|
||||
## 🖥️ Development Environment
|
||||
|
||||
### **Local Development Tools**
|
||||
- **PlatformIO** - Arduino framework and build system
|
||||
- **SimulIDE** - Arduino simulator for testing
|
||||
- **CMake** - IDE integration and native testing
|
||||
- **Unity** - Unit testing framework
|
||||
|
||||
### **Quick Development Commands**
|
||||
```bash
|
||||
# Launch simulator (builds + opens SimulIDE)
|
||||
./scripts/sim
|
||||
|
||||
# Clean rebuild
|
||||
./scripts/sim --clean
|
||||
|
||||
# Run tests
|
||||
cd code/RocketLauncher && pio test -e native
|
||||
|
||||
# Build hardware firmware
|
||||
cd code/RocketLauncher && pio run -e uno_hw
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Best Practices
|
||||
|
||||
### **Do's**
|
||||
- ✅ Use semantic versioning
|
||||
- ✅ Test before releasing
|
||||
- ✅ Update documentation
|
||||
- ✅ Let automation handle releases
|
||||
- ✅ Use descriptive branch names
|
||||
|
||||
### **Don'ts**
|
||||
- ❌ Don't manually create GitHub releases
|
||||
- ❌ Don't push directly to main/develop
|
||||
- ❌ Don't skip testing
|
||||
- ❌ Don't forget to update version numbers
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Daily Workflow
|
||||
|
||||
### **Normal Development**
|
||||
1. Create feature branch: `./scripts/create-branch.sh feature new-feature`
|
||||
2. Make changes and commit
|
||||
3. **Test locally**: `./scripts/sim` (builds and launches simulator)
|
||||
4. Push and create PR to develop
|
||||
5. Merge when ready
|
||||
|
||||
### **Local Development Cycle**
|
||||
```bash
|
||||
# Quick simulator launch (builds + launches SimulIDE)
|
||||
./scripts/sim
|
||||
|
||||
# Force clean rebuild
|
||||
./scripts/sim --clean
|
||||
|
||||
# Run unit tests
|
||||
cd code/RocketLauncher && pio test -e native
|
||||
|
||||
# Build hardware firmware
|
||||
cd code/RocketLauncher && pio run -e uno_hw
|
||||
```
|
||||
|
||||
### **Release Day**
|
||||
1. Start release: `./scripts/release.sh 1.0.0 start`
|
||||
2. Prepare release (version, docs, testing)
|
||||
3. Finish release: `./scripts/release.sh 1.0.0 finish`
|
||||
4. Wait for automation to complete
|
||||
5. Deploy and announce
|
||||
|
||||
---
|
||||
|
||||
## 📞 Quick Commands Reference
|
||||
|
||||
```bash
|
||||
# Branch Management
|
||||
./scripts/create-branch.sh feature new-feature
|
||||
./scripts/create-branch.sh bugfix bug-description
|
||||
./scripts/create-branch.sh hotfix urgent-fix
|
||||
|
||||
# Release Management
|
||||
./scripts/release.sh 1.0.0 start
|
||||
./scripts/release.sh 1.0.0 finish
|
||||
|
||||
# Git Operations
|
||||
git checkout develop
|
||||
git pull origin develop
|
||||
git checkout main
|
||||
git pull origin main
|
||||
|
||||
# Workflow Monitoring
|
||||
gh run list --limit 5
|
||||
gh run view <run-id>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎉 Success Indicators
|
||||
|
||||
### **Release Completed Successfully When:**
|
||||
- ✅ All workflow jobs show green checkmarks
|
||||
- ✅ GitHub release exists with assets
|
||||
- ✅ Firmware files are uploaded
|
||||
- ✅ No "already_exists" errors
|
||||
- ✅ Asset uploads complete
|
||||
|
||||
### **If Something Goes Wrong:**
|
||||
1. Check workflow logs: `gh run view <run-id>`
|
||||
2. Look for error messages
|
||||
3. Check if release already exists on GitHub
|
||||
4. Reset and try again if needed
|
||||
|
||||
---
|
||||
|
||||
*This guide covers the complete release pipeline. When in doubt, run the scripts and let automation handle the complexity! 🚀*
|
||||
@@ -51,6 +51,7 @@ show_help() {
|
||||
echo " build.sh firmware-sim # Build simulation firmware"
|
||||
echo " build.sh firmware-hw # Build hardware firmware"
|
||||
echo " build.sh all-firmware # Build both firmwares"
|
||||
echo " build.sh sim # Build and launch simulator"
|
||||
echo " build.sh upload # Upload to Arduino"
|
||||
echo " build.sh monitor # Start serial monitor"
|
||||
echo " build.sh pio-clean # Clean PlatformIO files"
|
||||
@@ -64,6 +65,7 @@ show_help() {
|
||||
echo -e "${BLUE}Examples:${NC}"
|
||||
echo " ./scripts/build.sh # Full build"
|
||||
echo " ./scripts/build.sh firmware-sim # Build simulation firmware"
|
||||
echo " ./scripts/build.sh sim # Build and launch simulator"
|
||||
echo " ./scripts/build.sh --preset release # Release build"
|
||||
}
|
||||
|
||||
@@ -220,6 +222,115 @@ format_code() {
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to build and launch simulator
|
||||
launch_simulator() {
|
||||
print_status "Building and launching simulator..."
|
||||
|
||||
# Check if PlatformIO is available
|
||||
if ! command -v pio &> /dev/null; then
|
||||
print_error "PlatformIO not found. Cannot build simulator firmware."
|
||||
print_info "Install with: pip install platformio"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Build simulation firmware
|
||||
print_info "Building simulation firmware..."
|
||||
pio run -e simulide
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
print_error "Failed to build simulation firmware"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
print_status "Simulation firmware built successfully"
|
||||
|
||||
# Check if firmware was created and copy to expected location
|
||||
BUILD_FIRMWARE_PATH=".pio/build/simulide/firmware.hex"
|
||||
EXPECTED_FIRMWARE_PATH="out/simulide/firmware.hex"
|
||||
|
||||
if [[ ! -f "$BUILD_FIRMWARE_PATH" ]]; then
|
||||
print_error "Firmware file not found at build path: $BUILD_FIRMWARE_PATH"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Create output directory and copy firmware (same as PlatformIO upload_command)
|
||||
print_info "Copying firmware to expected location..."
|
||||
mkdir -p "out/simulide"
|
||||
cp "$BUILD_FIRMWARE_PATH" "$EXPECTED_FIRMWARE_PATH"
|
||||
|
||||
if [[ ! -f "$EXPECTED_FIRMWARE_PATH" ]]; then
|
||||
print_error "Failed to copy firmware to expected location"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
print_status "Firmware ready at: $EXPECTED_FIRMWARE_PATH"
|
||||
|
||||
# Check if SimulIDE is installed and launch it
|
||||
SIMULIDE_PATH=""
|
||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
# macOS
|
||||
if [[ -d "/Applications/simulide.app" ]]; then
|
||||
SIMULIDE_PATH="/Applications/simulide.app/Contents/MacOS/simulide"
|
||||
elif [[ -d "$HOME/Applications/simulide.app" ]]; then
|
||||
SIMULIDE_PATH="$HOME/Applications/simulide.app/Contents/MacOS/simulide"
|
||||
fi
|
||||
elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
|
||||
# Linux
|
||||
if command -v simulide &> /dev/null; then
|
||||
SIMULIDE_PATH="simulide"
|
||||
fi
|
||||
elif [[ "$OSTYPE" == "msys" ]] || [[ "$OSTYPE" == "cygwin" ]]; then
|
||||
# Windows
|
||||
if command -v simulide.exe &> /dev/null; then
|
||||
SIMULIDE_PATH="simulide.exe"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -n "$SIMULIDE_PATH" ]]; then
|
||||
print_status "Launching SimulIDE..."
|
||||
|
||||
# Choose the wiring file to use
|
||||
WIRING_FILE="../../wiring/rocker_launcher_controls.sim1"
|
||||
if [[ ! -f "$WIRING_FILE" ]]; then
|
||||
print_warning "Default wiring file not found, looking for alternatives..."
|
||||
|
||||
# Find any .sim1 file
|
||||
ALTERNATIVE_WIRING=$(find "../../wiring" -name "*.sim1" | head -1)
|
||||
if [[ -n "$ALTERNATIVE_WIRING" ]]; then
|
||||
WIRING_FILE="$ALTERNATIVE_WIRING"
|
||||
print_info "Using alternative wiring file: $WIRING_FILE"
|
||||
else
|
||||
print_warning "No wiring files found, launching SimulIDE without wiring file"
|
||||
WIRING_FILE=""
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -n "$WIRING_FILE" ]]; then
|
||||
print_info "Loading wiring file: $WIRING_FILE"
|
||||
"$SIMULIDE_PATH" "$WIRING_FILE" &
|
||||
else
|
||||
print_info "Launching SimulIDE without wiring file..."
|
||||
"$SIMULIDE_PATH" &
|
||||
fi
|
||||
|
||||
print_status "SimulIDE launched successfully!"
|
||||
print_info "💡 Development Tips:"
|
||||
print_info " • The firmware will auto-load in SimulIDE"
|
||||
print_info " • Make changes to your code and re-run: ./scripts/build.sh sim"
|
||||
print_info " • Check SimulIDE console for any runtime errors"
|
||||
else
|
||||
print_warning "SimulIDE not found - firmware built but not launched"
|
||||
print_info "📋 Manual Launch Instructions:"
|
||||
print_info "1. Open SimulIDE manually"
|
||||
print_info "2. Load the wiring file: ../../wiring/rocker_launcher_controls.sim1"
|
||||
print_info "3. The firmware will auto-load from: $EXPECTED_FIRMWARE_PATH"
|
||||
print_info ""
|
||||
print_info "Install SimulIDE from: https://www.simulide.com/"
|
||||
fi
|
||||
|
||||
print_status "Simulator setup complete!"
|
||||
}
|
||||
|
||||
# Function to show status
|
||||
show_status() {
|
||||
print_status "Project Status"
|
||||
@@ -296,6 +407,9 @@ main() {
|
||||
check_dependencies
|
||||
build_target "all_firmware" "Building both firmwares"
|
||||
;;
|
||||
"sim")
|
||||
launch_simulator
|
||||
;;
|
||||
"upload")
|
||||
check_dependencies
|
||||
build_target "upload" "Building and uploading firmware"
|
||||
|
||||
Reference in new issue
Block a user