From 267a208807243a3bfe83e9f03f939ede74f7267d Mon Sep 17 00:00:00 2001 From: kevodwyer Date: Wed, 3 May 2023 11:47:29 +0100 Subject: [PATCH 01/12] improve stat() calls in API --- src/main/java/io/ipfs/api/IPFS.java | 19 +++++++++------- src/main/java/io/ipfs/api/RepoStat.java | 30 +++++++++++++++++++++++++ src/test/java/io/ipfs/api/APITest.java | 9 ++++---- 3 files changed, 46 insertions(+), 12 deletions(-) create mode 100644 src/main/java/io/ipfs/api/RepoStat.java diff --git a/src/main/java/io/ipfs/api/IPFS.java b/src/main/java/io/ipfs/api/IPFS.java index ccc3b0e..9f93d5c 100644 --- a/src/main/java/io/ipfs/api/IPFS.java +++ b/src/main/java/io/ipfs/api/IPFS.java @@ -397,8 +397,8 @@ public Multihash ls() throws IOException { /*public String migrate(boolean allowDowngrade) throws IOException { return retrieveString("repo/migrate?allow-downgrade=" + allowDowngrade); }*/ - public Map stat(boolean sizeOnly, boolean humanReadable) throws IOException { - return retrieveMap("repo/stat?size-only=" + sizeOnly + "&human=" + humanReadable); + public RepoStat stat(boolean sizeOnly) throws IOException { + return RepoStat.fromJson(retrieveAndParse("repo/stat?size-only=" + sizeOnly)); } public Map verify() throws IOException { return retrieveMap("repo/verify"); @@ -812,8 +812,8 @@ public String reprovide() throws IOException { public Map stat() throws IOException { return retrieveMap("bitswap/stat"); } - public Map stat(boolean verbose, boolean humanReadable) throws IOException { - return retrieveMap("bitswap/stat?verbose=" + verbose + "&human=" + humanReadable); + public Map stat(boolean verbose) throws IOException { + return retrieveMap("bitswap/stat?verbose=" + verbose); } public Map wantlist(Multihash peerId) throws IOException { return retrieveMap("bitswap/wantlist?peer=" + peerId); @@ -856,6 +856,9 @@ public List rmAll() throws IOException { public class Swarm { public List peers() throws IOException { Map m = retrieveMap("swarm/peers?stream-channels=true"); + if (m.get("Peers") == null) { + return Collections.emptyList(); + } return ((List)m.get("Peers")).stream() .flatMap(json -> { try { @@ -981,8 +984,8 @@ public Map id() throws IOException { } public class Stats { - public Map bitswap(boolean verbose, boolean humanReadable) throws IOException { - return retrieveMap("stats/bitswap?verbose=" + verbose + "&human=" + humanReadable); + public Map bitswap(boolean verbose) throws IOException { + return retrieveMap("stats/bitswap?verbose=" + verbose); } public Map bw() throws IOException { return retrieveMap("stats/bw"); @@ -993,8 +996,8 @@ public Map dht() throws IOException { public Map provide() throws IOException { return retrieveMap("stats/provide"); } - public Map repo(boolean sizeOnly, boolean humanReadable) throws IOException { - return retrieveMap("stats/repo?size-only=" + sizeOnly + "&human=" + humanReadable); + public RepoStat repo(boolean sizeOnly) throws IOException { + return RepoStat.fromJson(retrieveAndParse("stats/repo?size-only=" + sizeOnly)); } } diff --git a/src/main/java/io/ipfs/api/RepoStat.java b/src/main/java/io/ipfs/api/RepoStat.java new file mode 100644 index 0000000..7dcf3ae --- /dev/null +++ b/src/main/java/io/ipfs/api/RepoStat.java @@ -0,0 +1,30 @@ +package io.ipfs.api; + +import java.util.Map; + +public class RepoStat { + + public final long RepoSize; + public final long StorageMax; + public final long NumObjects; + public final String RepoPath; + public final String Version; + + public RepoStat(long repoSize, long storageMax, long numObjects, String repoPath, String version ) { + this.RepoSize = repoSize; + this.StorageMax = storageMax; + this.NumObjects = numObjects; + this.RepoPath = repoPath; + this.Version = version; + } + public static RepoStat fromJson(Object rawjson) { + Map json = (Map)rawjson; + long repoSize = Long.parseLong(json.get("RepoSize").toString()); + long storageMax = Long.parseLong(json.get("StorageMax").toString()); + long numObjects = Long.parseLong(json.get("NumObjects").toString()); + String repoPath = (String)json.get("RepoPath"); + String version = (String)json.get("Version"); + + return new RepoStat(repoSize, storageMax, numObjects, repoPath, version); + } +} diff --git a/src/test/java/io/ipfs/api/APITest.java b/src/test/java/io/ipfs/api/APITest.java index 11ef6ec..adf5393 100644 --- a/src/test/java/io/ipfs/api/APITest.java +++ b/src/test/java/io/ipfs/api/APITest.java @@ -719,7 +719,8 @@ public void repoTest() throws IOException { ipfs.repo.gc(); Multihash res = ipfs.repo.ls(); //String migration = ipfs.repo.migrate(false); - Map stat = ipfs.repo.stat(false, true); + RepoStat stat = ipfs.repo.stat(false); + RepoStat stat2 = ipfs.repo.stat(true); Map verify = ipfs.repo.verify(); Map version = ipfs.repo.version(); } @@ -765,11 +766,11 @@ public void localId() throws Exception { @Test public void statsTest() throws IOException { Map stats = ipfs.stats.bw(); - Map bitswap = ipfs.stats.bitswap(true, true); + Map bitswap = ipfs.stats.bitswap(true); Map dht = ipfs.stats.dht(); //{"Message":"can only return stats if Experimental.AcceleratedDHTClient is enabled","Code":0,"Type":"error"} //requires Map provide = ipfs.stats.provide(); - Map repo = ipfs.stats.repo(false, true); + RepoStat repo = ipfs.stats.repo(false); } public void resolveTest() throws IOException { @@ -859,7 +860,7 @@ public void bitswapTest() throws IOException { Map want = ipfs.bitswap.wantlist(peers.get(0).id); //String reprovide = ipfs.bitswap.reprovide(); Map stat = ipfs.bitswap.stat(); - Map stat2 = ipfs.bitswap.stat(true, false); + Map stat2 = ipfs.bitswap.stat(true); } @Test public void bootstrapTest() throws IOException { From a6d66476c2b57010c610d62ca21936e1c95508bd Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 14 Jun 2023 12:20:57 +0000 Subject: [PATCH 02/12] chore: Update .github/dependabot.yml [skip ci] --- .github/dependabot.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..5ace460 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,6 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" From d0b2e2675ecc65bfbdf1e39f8429618210a06be5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 14 Jun 2023 12:21:15 +0000 Subject: [PATCH 03/12] Bump actions/setup-java from 1 to 3 Bumps [actions/setup-java](https://github.com/actions/setup-java) from 1 to 3. - [Release notes](https://github.com/actions/setup-java/releases) - [Commits](https://github.com/actions/setup-java/compare/v1...v3) --- updated-dependencies: - dependency-name: actions/setup-java dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ant.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index 12ca6ed..ef70a5c 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -10,7 +10,7 @@ jobs: steps: - uses: actions/checkout@v1 - name: Set up JDK 11 - uses: actions/setup-java@v1 + uses: actions/setup-java@v3 with: java-version: 11 - name: Install and run ipfs From 0a4b2c0caf1659e35d7299f814e59fee4dd2f066 Mon Sep 17 00:00:00 2001 From: Dr Ian Preston Date: Wed, 14 Jun 2023 13:40:09 +0100 Subject: [PATCH 04/12] Update ant.yml --- .github/workflows/ant.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index ef70a5c..f1469cd 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -12,6 +12,7 @@ jobs: - name: Set up JDK 11 uses: actions/setup-java@v3 with: + distribution: temurin java-version: 11 - name: Install and run ipfs run: ./install-run-ipfs.sh From f844366566813a8c49b886f31112145c1a6d4663 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 14 Jun 2023 12:42:44 +0000 Subject: [PATCH 05/12] Bump actions/checkout from 1 to 3 Bumps [actions/checkout](https://github.com/actions/checkout) from 1 to 3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v1...v3) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ant.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index f1469cd..331023b 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -8,7 +8,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v3 - name: Set up JDK 11 uses: actions/setup-java@v3 with: From abeb8ea8fa67f4cabe3360baea66d87b8f314f13 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Sep 2023 05:39:12 +0000 Subject: [PATCH 06/12] Bump actions/checkout from 3 to 4 Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ant.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index 331023b..6ccd6d4 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -8,7 +8,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up JDK 11 uses: actions/setup-java@v3 with: From 8ae93531351e86853ce2806511c7aee969df3f1c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Dec 2023 05:38:38 +0000 Subject: [PATCH 07/12] Bump actions/setup-java from 3 to 4 Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4. - [Release notes](https://github.com/actions/setup-java/releases) - [Commits](https://github.com/actions/setup-java/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/setup-java dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ant.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index 6ccd6d4..ab333ab 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -10,7 +10,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Set up JDK 11 - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: distribution: temurin java-version: 11 From d982fc0fa10bbbb1a4e78bff5f6b7839bfa25b46 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 31 Jan 2024 16:02:10 +0000 Subject: [PATCH 08/12] chore: Update .github/dependabot.yml [skip ci] From e73878a7f9ba48c0e69c09261ed7e4929ff89595 Mon Sep 17 00:00:00 2001 From: Michael Vorburger Date: Fri, 28 Feb 2025 19:18:06 +0100 Subject: [PATCH 09/12] build: Run CI once a week --- .github/workflows/ant.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index ab333ab..68a8f9b 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -1,6 +1,10 @@ name: Java CI -on: [push, pull_request] +on: + schedule: + - cron: '42 0 * * 4' + push: + pull_request: jobs: build: From a2b7915ff88afe10eca76a4c931095b9d78734db Mon Sep 17 00:00:00 2001 From: web3-bot <81333946+web3-bot@users.noreply.github.com> Date: Thu, 1 May 2025 09:34:32 +0200 Subject: [PATCH 10/12] ci: uci/copy-templates (#244) * chore: add or force update .github/workflows/stale.yml * chore: add or force update .github/workflows/generated-pr.yml --- .github/workflows/generated-pr.yml | 14 ++++++++++++++ .github/workflows/stale.yml | 14 ++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 .github/workflows/generated-pr.yml create mode 100644 .github/workflows/stale.yml diff --git a/.github/workflows/generated-pr.yml b/.github/workflows/generated-pr.yml new file mode 100644 index 0000000..b8c5cc6 --- /dev/null +++ b/.github/workflows/generated-pr.yml @@ -0,0 +1,14 @@ +name: Close Generated PRs + +on: + schedule: + - cron: '0 0 * * *' + workflow_dispatch: + +permissions: + issues: write + pull-requests: write + +jobs: + stale: + uses: ipdxco/unified-github-workflows/.github/workflows/reusable-generated-pr.yml@v1 diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml new file mode 100644 index 0000000..7c955c4 --- /dev/null +++ b/.github/workflows/stale.yml @@ -0,0 +1,14 @@ +name: Close Stale Issues + +on: + schedule: + - cron: '0 0 * * *' + workflow_dispatch: + +permissions: + issues: write + pull-requests: write + +jobs: + stale: + uses: ipdxco/unified-github-workflows/.github/workflows/reusable-stale-issue.yml@v1 From bece78a9b08f48a84c02b026b0276d11d08a46c1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Aug 2025 07:32:37 +0000 Subject: [PATCH 11/12] Bump actions/checkout from 4 to 5 Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ant.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index 68a8f9b..c67226e 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Set up JDK 11 uses: actions/setup-java@v4 with: From 58bebf90bdec6fae0401e947a29d686983d4103c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Aug 2025 08:31:31 +0000 Subject: [PATCH 12/12] Bump actions/setup-java from 4 to 5 Bumps [actions/setup-java](https://github.com/actions/setup-java) from 4 to 5. - [Release notes](https://github.com/actions/setup-java/releases) - [Commits](https://github.com/actions/setup-java/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/setup-java dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ant.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index c67226e..6abe970 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -14,7 +14,7 @@ jobs: steps: - uses: actions/checkout@v5 - name: Set up JDK 11 - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: distribution: temurin java-version: 11