From 8554b7c1484d5920b44f0372df0676830715612f Mon Sep 17 00:00:00 2001 From: vil02 <65706193+vil02@users.noreply.github.com> Date: Fri, 20 Sep 2024 21:43:58 +0200 Subject: [PATCH 1/2] chore: add `run_infer.yml` --- .github/workflows/run_infer.yml | 60 +++++++++++++++++++++++++++++++++ .inferconfig | 27 +++++++++++++++ 2 files changed, 87 insertions(+) create mode 100644 .github/workflows/run_infer.yml create mode 100644 .inferconfig diff --git a/.github/workflows/run_infer.yml b/.github/workflows/run_infer.yml new file mode 100644 index 000000000000..f587a1b6e2e4 --- /dev/null +++ b/.github/workflows/run_infer.yml @@ -0,0 +1,60 @@ +--- +name: run_infer + +'on': + workflow_dispatch: + push: + branches: + - master + pull_request: + +jobs: + run_infer: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK + uses: actions/setup-java@v4 + with: + java-version: 21 + distribution: 'adopt' + + - name: Set up OCaml + uses: ocaml/setup-ocaml@v3 + with: + ocaml-compiler: 5 + + - name: Get current year/weak + run: echo "year_week=$(date +'%Y_%U')" >> $GITHUB_ENV + + - name: Cache infer build + id: cache-infer + uses: actions/cache@v4 + with: + path: infer + key: ${{ runner.os }}-infer-${{ env.year_week }} + + - name: Build infer + if: steps.cache-infer.outputs.cache-hit != 'true' + run: | + cd .. + git clone https://github.com/facebook/infer.git + cd infer + ./build-infer.sh java + cp -r infer ../Java + + - name: Add infer to PATH + run: | + echo "infer/bin" >> $GITHUB_PATH + + - name: Display infer version + run: | + which infer + infer --version + + - name: Run infer + run: | + mvn clean + infer --fail-on-issue --print-logs --no-progress-bar -- mvn test +... diff --git a/.inferconfig b/.inferconfig new file mode 100644 index 000000000000..96c34a54a0d8 --- /dev/null +++ b/.inferconfig @@ -0,0 +1,27 @@ +{ + "report-block-list-path-regex": [ + "src/main/java/com/thealgorithms/ciphers/a5/CompositeLFSR.java", + "src/main/java/com/thealgorithms/conversions/RomanToInteger.java", + "src/main/java/com/thealgorithms/conversions/UnitsConverter.java", + "src/main/java/com/thealgorithms/datastructures/crdt/GCounter.java", + "src/main/java/com/thealgorithms/datastructures/crdt/PNCounter.java", + "src/main/java/com/thealgorithms/datastructures/graphs/KahnsAlgorithm.java", + "src/main/java/com/thealgorithms/datastructures/heaps/GenericHeap.java", + "src/main/java/com/thealgorithms/datastructures/lists/DoublyLinkedList.java", + "src/main/java/com/thealgorithms/datastructures/trees/CreateBinaryTreeFromInorderPreorder.java", + "src/main/java/com/thealgorithms/divideandconquer/ClosestPair.java", + "src/main/java/com/thealgorithms/dynamicprogramming/Fibonacci.java", + "src/main/java/com/thealgorithms/maths/NthUglyNumber.java", + "src/main/java/com/thealgorithms/maths/SimpsonIntegration.java", + "src/main/java/com/thealgorithms/others/Dijkstra.java", + "src/main/java/com/thealgorithms/sorts/TopologicalSort.java", + "src/main/java/com/thealgorithms/strings/AhoCorasick.java", + "src/test/java/com/thealgorithms/datastructures/caches/LRUCacheTest.java", + "src/test/java/com/thealgorithms/datastructures/lists/SkipListTest.java", + "src/test/java/com/thealgorithms/datastructures/trees/KDTreeTest.java", + "src/test/java/com/thealgorithms/datastructures/trees/LazySegmentTreeTest.java", + "src/test/java/com/thealgorithms/searches/QuickSelectTest.java", + "src/test/java/com/thealgorithms/stacks/PostfixToInfixTest.java", + "src/test/java/com/thealgorithms/strings/HorspoolSearchTest.java" + ] +} From 5cfbda6893e45b7317816b4d96ec80f10b6785f8 Mon Sep 17 00:00:00 2001 From: vil02 <65706193+vil02@users.noreply.github.com> Date: Sat, 21 Sep 2024 14:01:16 +0200 Subject: [PATCH 2/2] chore: add infer output to `.gitignore` --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index bd1d54c0900a..eb9d33c78a33 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,5 @@ local.properties gradle.properties .vscode *.log + +/infer-out/