Releases: github/codeql-coding-standards
Releases · github/codeql-coding-standards
v2.5.0
Release summary
- New queries added for the following rule packages: Concurrency1, Pointers1, Preprocessor3, Strings3, Concurrency
Supported versions
- The LGTM pack is not supported on any released version of LGTM without support from GitHub Professional Services.
- The Code Scanning pack is supported when:
- Using the CodeQL CLI version
2.7.6in conjunction with a copy of the CodeQL standard library for C++ (github/codeql) set to the tagcodeql-cli/v2.7.6. - Using the CodeQL Action or CodeQL runner with the codeql-bundle-20220120.
- Using the CodeQL CLI version
Appendix: CERT-C++ new queries
New queries added to cover the following rules:
- CON52-CPP -
PreventBitFieldAccessFromMultipleThreads.ql
Appendix: MISRA-C-2012 new queries
New queries added to cover the following rules:
- RULE-4-8 -
ObjectWithNoPointerDereferenceShouldBeOpaque.ql - RULE-8-13 -
PointerShouldPointToConstTypeWhenPossible.ql - RULE-11-1 -
ConversionBetweenFunctionPointerAndOtherType.ql - RULE-11-2 -
ConversionBetweenIncompleteTypePointerAndOtherType.ql - RULE-11-3 -
CastBetweenObjectPointerAndDifferentObjectType.ql - RULE-11-4 -
ConversionBetweenPointerToObjectAndIntegerType.ql - RULE-11-5 -
ConversionFromPointerToVoidIntoPointerToObject.ql - RULE-11-6 -
CastBetweenPointerToVoidAndArithmeticType.ql - RULE-11-7 -
CastBetweenPointerToObjectAndNonIntArithmeticType.ql - RULE-11-8 -
CastRemovesConstOrVolatileQualification.ql - RULE-11-9 -
MacroNullNotUsedAsIntegerNullPointerConstant.ql - RULE-18-1 -
PointerAndDerivedPointerMustAddressSameArray.ql - RULE-18-2 -
SubtractionBetweenPointersMustAddressSameArray.ql - RULE-18-3 -
RelationalOperatorComparesPointerToDifferentArray.ql - RULE-18-4 -
DoNotUseAdditionOrSubtractionOperatorsOnPointers.ql - RULE-18-5 -
NoMoreThanTwoLevelsOfPointerNestingInDeclarations.ql - RULE-18-6 -
AutomaticStorageObjectAddressCopiedToOtherObject.ql - RULE-20-8 -
ControllingExpressionIfDirective.ql
Appendix: CERT-C new queries
New queries added to cover the following rules:
- CON32-C -
PreventDataRacesWithMultipleThreads.ql - CON33-C -
RaceConditionsWhenUsingLibraryFunctions.ql - CON37-C -
DoNotCallSignalInMultithreadedProgram.ql - STR34-C -
CastCharBeforeConvertingToLargerSizes.ql - STR38-C -
DoNotConfuseNarrowAndWideFunctions.ql
v2.4.0
Release summary
- New queries added for the following rule packages: IO3, Preprocessor2, Strings2
- The following changes have been made for this release:
M16-3-1-MoreThanOneOccurrenceHashOperatorInMacroDefinition.ql:- Removes detection of more than one occurrence in non function like Macros.
Supported versions
- The LGTM pack is not supported on any released version of LGTM without support from GitHub Professional Services.
- The Code Scanning pack is supported when:
- Using the CodeQL CLI version
2.7.6in conjunction with a copy of the CodeQL standard library for C++ (github/codeql) set to the tagcodeql-cli/v2.7.6. - Using the CodeQL Action or CodeQL runner with the codeql-bundle-20220120.
- Using the CodeQL CLI version
Appendix: MISRA-C-2012 new queries
New queries added to cover the following rules:
- RULE-4-10 -
PrecautionIncludeGuardsNotProvided.ql - RULE-20-5 -
UndefShouldNotBeUsed.ql - RULE-20-11 -
MoreThanOneHashOperatorInMacroDefinition.ql - RULE-20-12 -
MacroParameterUsedAsHashOperand.ql - RULE-22-3 -
FileOpenForReadAndWriteOnDifferentStreams.ql - RULE-22-4 -
AttemptToWriteToAReadOnlyStream.ql - RULE-22-5 -
PointerToAFileObjectDereferenced.ql - RULE-22-7 -
EofShallBeComparedWithUnmodifiedReturnValues.ql
Appendix: CERT-C new queries
New queries added to cover the following rules:
- FIO32-C -
DoNotPerformFileOperationsOnDevices.ql - FIO37-C -
SuccessfulFgetsOrFgetwsMayReturnAnEmptyString.ql - STR37-C -
ToCharacterHandlingFunctionsRepresentableAsUChar.ql
v2.3.0
Release summary
- New queries added for the following rule packages: Misc, SideEffects2, Strings1
- The following changes have been made for this release:
- Refactored
A26-5-1andMSC50-CPPto share the same query withMSC30-C.
Supported versions
- The LGTM pack is not supported on any released version of LGTM without support from GitHub Professional Services.
- The Code Scanning pack is supported when:
- Using the CodeQL CLI version
2.7.6in conjunction with a copy of the CodeQL standard library for C++ (github/codeql) set to the tagcodeql-cli/v2.7.6. - Using the CodeQL Action or CodeQL runner with the codeql-bundle-20220120.
- Using the CodeQL CLI version
Appendix: MISRA-C-2012 new queries
New queries added to cover the following rules:
- RULE-13-3 -
SideEffectAndCrementInFullExpression.ql - RULE-17-8 -
ModificationOfFunctionParameter.ql
Appendix: CERT-C new queries
New queries added to cover the following rules:
- MSC30-C -
RandUsedForGeneratingPseudorandomNumbers.ql - MSC32-C -
ProperlySeedPseudorandomNumberGenerators.ql - MSC37-C -
ControlFlowReachesTheEndOfANonVoidFunction.ql - STR30-C -
DoNotAttemptToModifyStringLiterals.ql - STR31-C -
StringsHasSufficientSpaceForTheNullTerminator.ql - STR32-C -
NonNullTerminatedToFunctionThatExpectsAString.ql
v2.2.0
Release summary
- New queries added for the following rule packages: Misc, SideEffects2
- The following changes have been made for this release:
- Refactored
A26-5-1andMSC50-CPPto share the same query withMSC30-C.
Supported versions
- The LGTM pack is not supported on any released version of LGTM without support from GitHub Professional Services.
- The Code Scanning pack is supported when:
- Using the CodeQL CLI version
2.7.6in conjunction with a copy of the CodeQL standard library for C++ (github/codeql) set to the tagcodeql-cli/v2.7.6. - Using the CodeQL Action or CodeQL runner with the codeql-bundle-20220120.
- Using the CodeQL CLI version
Appendix: MISRA-C-2012 new queries
New queries added to cover the following rules:
- RULE-13-3 -
SideEffectAndCrementInFullExpression.ql - RULE-17-8 -
ModificationOfFunctionParameter.ql
Appendix: CERT-C new queries
New queries added to cover the following rules:
- MSC30-C -
RandUsedForGeneratingPseudorandomNumbers.ql - MSC32-C -
ProperlySeedPseudorandomNumberGenerators.ql - MSC37-C -
ControlFlowReachesTheEndOfANonVoidFunction.ql
v2.1.0
Release summary
- New queries added for the following rule packages: IO2, SideEffects1, Syntax
Supported versions
- The LGTM pack is not supported on any released version of LGTM without support from GitHub Professional Services.
- The Code Scanning pack is supported when:
- Using the CodeQL CLI version
2.7.6in conjunction with a copy of the CodeQL standard library for C++ (github/codeql) set to the tagcodeql-cli/v2.7.6. - Using the CodeQL Action or CodeQL runner with the codeql-bundle-20220120.
- Using the CodeQL CLI version
Appendix: MISRA-C-2012 new queries
New queries added to cover the following rules:
- DIR-4-5 -
IdentifiersInTheSameNameSpaceUnambiguous.ql - RULE-3-1 -
CharacterSequencesAndUsedWithinAComment.ql - RULE-3-2 -
LineSplicingUsedInComments.ql - RULE-4-1 -
OctalAndHexadecimalEscapeSequencesNotTerminated.ql - RULE-4-4 -
SectionsOfCodeShallNotBeCommentedOut.ql - RULE-7-2 -
UOrUSuffixRepresentedInUnsignedType.ql - RULE-7-3 -
LowercaseCharacterLUsedInLiteralSuffix.ql - RULE-12-1 -
UnenclosedSizeofOperand.ql,ImplicitPrecedenceOfOperatorsInExpression.ql - RULE-13-1 -
InitializerListsContainPersistentSideEffects.ql - RULE-13-4 -
ResultOfAnAssignmentOperatorShouldNotBeUsed.ql - RULE-13-5 -
PossibleSuppressedSideEffectInLogicOperatorOperand.ql - RULE-13-6 -
SizeofOperandWithSideEffect.ql
Appendix: CERT-C new queries
New queries added to cover the following rules:
- EXP30-C -
DependenceOnOrderOfScalarEvaluationForSideEffects.ql,DependenceOnOrderOfFunctionArgumentsForSideEffects.ql - EXP44-C -
UnevaluatedOperandWithSideEffect.ql - EXP45-C -
AssignmentsInSelectionStatements.ql - FIO38-C -
DoNotCopyAFileObject.ql - FIO40-C -
ResetStringsOnFgetsOrFgetwsFailure.ql - FIO41-C -
DoNotCallGetcAndPutcWithSideEffects.ql - FIO44-C -
OnlyUseValuesForFsetposThatAreReturnedFromFgetpos.ql
Supported versions
- The LGTM pack is not supported on any released version of LGTM without support from GitHub Professional Services.
- The Code Scanning pack is supported when:
- Using the CodeQL CLI version
2.7.6in conjunction with a copy of the CodeQL standard library for C++ (github/codeql) set to the tagcodeql-cli/v2.7.6. - Using the CodeQL Action or CodeQL runner with the codeql-bundle-20220120.
- Using the CodeQL CLI version
v2.0.0
Release summary
- New queries added for the following rule packages: IO1, Preprocessor1
Supported versions
- The LGTM pack is not supported on any released version of LGTM without support from GitHub Professional Services.
- The Code Scanning pack is supported when:
- Using the CodeQL CLI version
2.6.3in conjunction with a copy of the CodeQL standard library for C++ (github/codeql) set to the tagcodeql-cli/v2.6.3. - Using the CodeQL Action or CodeQL runner with the codeql-bundle-20211005.
- Using the CodeQL CLI version
Appendix: MISRA-C-2012 new queries
New queries added to cover the following rules:
- RULE-20-1 -
IncludeDirectivesPrecededByDirectivesOrComments.ql - RULE-20-2 -
ForbiddenCharactersInHeaderFileName.ql - RULE-20-9 -
IdentifiersUsedInPreprocessorExpression.ql - RULE-20-10 -
PreprocessorHashOperatorsShouldNotBeUsed.ql - RULE-22-6 -
FileUsedAfterClosed.ql
Appendix: CERT-C new queries
New queries added to cover the following rules:
- FIO30-C -
ExcludeUserInputFromFormatStrings.ql - FIO34-C -
DistinguishBetweenCharReadFromAFileAndEofOrWeof.ql,EndOfFileCheckPortability.ql - FIO39-C -
DoNotAlternatelyIOFromAStreamWithoutPositioning.ql - FIO42-C -
CloseFilesWhenTheyAreNoLongerNeeded.ql - FIO46-C -
UndefinedBehaviorAccessingAClosedFile.ql