From 2a32ae72013dd4bde247305cd00929eb4c432666 Mon Sep 17 00:00:00 2001 From: web3-bot <81333946+web3-bot@users.noreply.github.com> Date: Wed, 19 Oct 2022 14:46:46 +0200 Subject: [PATCH 1/7] sync: update CI config files (#426) --- .github/workflows/automerge.yml | 3 +++ .github/workflows/js-test-and-release.yml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/.github/workflows/automerge.yml b/.github/workflows/automerge.yml index d57c2a0..3833fc2 100644 --- a/.github/workflows/automerge.yml +++ b/.github/workflows/automerge.yml @@ -1,3 +1,6 @@ +# File managed by web3-bot. DO NOT EDIT. +# See https://github.com/protocol/.github/ for details. + name: Automerge on: [ pull_request ] diff --git a/.github/workflows/js-test-and-release.yml b/.github/workflows/js-test-and-release.yml index d155996..65d30bd 100644 --- a/.github/workflows/js-test-and-release.yml +++ b/.github/workflows/js-test-and-release.yml @@ -1,3 +1,6 @@ +# File managed by web3-bot. DO NOT EDIT. +# See https://github.com/protocol/.github/ for details. + name: test & maybe release on: push: From 12b8ac89a6b643933d3440b2b42f9f5f142d0d35 Mon Sep 17 00:00:00 2001 From: Alex Potsides Date: Wed, 19 Oct 2022 15:06:30 +0100 Subject: [PATCH 2/7] fix: move migrations to published folder (#427) In order to simplify the config, move the migrations into a folder that's already published to npm. --- packages/ipfs-repo-migrations/README.md | 10 ++++---- packages/ipfs-repo-migrations/package.json | 7 +++++- packages/ipfs-repo-migrations/src/index.js | 2 +- .../{ => src}/migrations/index.js | 2 +- .../migrations/migration-10/index.js | 8 +++--- .../migrations/migration-11/index.js | 10 ++++---- .../migrations/migration-12/index.js | 25 +++++++++---------- .../migration-12/pb/address-book.d.ts | 0 .../migration-12/pb/address-book.js | 0 .../migration-12/pb/address-book.proto | 0 .../migrations/migration-12/pb/envelope.d.ts | 0 .../migrations/migration-12/pb/envelope.js | 0 .../migrations/migration-12/pb/envelope.proto | 0 .../migration-12/pb/peer-record.d.ts | 0 .../migrations/migration-12/pb/peer-record.js | 0 .../migration-12/pb/peer-record.proto | 0 .../migrations/migration-12/pb/peer.d.ts | 0 .../migrations/migration-12/pb/peer.js | 0 .../migrations/migration-12/pb/peer.proto | 0 .../migration-12/pb/proto-book.d.ts | 0 .../migrations/migration-12/pb/proto-book.js | 0 .../migration-12/pb/proto-book.proto | 0 .../{ => src}/migrations/migration-8/index.js | 4 +-- .../{ => src}/migrations/migration-9/index.js | 6 ++--- .../migrations/migration-9/pin-set.js | 0 .../{ => src}/migrations/migration-9/pin.d.ts | 0 .../{ => src}/migrations/migration-9/pin.js | 0 .../migrations/migration-9/pin.proto | 0 .../{ => src}/migrations/migration-9/utils.js | 2 +- .../test/migrations/migration-10-test.js | 2 +- .../test/migrations/migration-11-test.js | 2 +- .../test/migrations/migration-12-test.js | 2 +- .../test/migrations/migration-8-test.js | 2 +- .../test/migrations/migration-9-test.js | 4 +-- packages/ipfs-repo-migrations/tsconfig.json | 9 +++---- 35 files changed, 50 insertions(+), 47 deletions(-) rename packages/ipfs-repo-migrations/{ => src}/migrations/index.js (95%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-10/index.js (95%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-11/index.js (81%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/index.js (90%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/address-book.d.ts (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/address-book.js (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/address-book.proto (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/envelope.d.ts (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/envelope.js (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/envelope.proto (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/peer-record.d.ts (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/peer-record.js (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/peer-record.proto (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/peer.d.ts (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/peer.js (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/peer.proto (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/proto-book.d.ts (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/proto-book.js (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-12/pb/proto-book.proto (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-8/index.js (96%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-9/index.js (95%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-9/pin-set.js (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-9/pin.d.ts (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-9/pin.js (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-9/pin.proto (100%) rename packages/ipfs-repo-migrations/{ => src}/migrations/migration-9/utils.js (94%) diff --git a/packages/ipfs-repo-migrations/README.md b/packages/ipfs-repo-migrations/README.md index 4d1a94a..ed9222c 100644 --- a/packages/ipfs-repo-migrations/README.md +++ b/packages/ipfs-repo-migrations/README.md @@ -69,13 +69,13 @@ This framework: ### Use in Node.js ```js -const migrations from 'ipfs-repo-migrations') +import migrations from 'ipfs-repo-migrations' ``` ### Use in a browser with browserify, webpack or any other bundler ```js -const migrations from 'ipfs-repo-migrations') +import migrations from 'ipfs-repo-migrations' ``` ## Usage @@ -83,7 +83,7 @@ const migrations from 'ipfs-repo-migrations') Example: ```js -const migrations from 'ipfs-repo-migrations') +import migrations from 'ipfs-repo-migrations' const repoPath = 'some/repo/path' const currentRepoVersion = 7 @@ -161,10 +161,10 @@ be run again. ### Architecture of a migration -All migrations are placed in the `/migrations` folder. Each folder there represents one migration that follows the migration +All migrations are placed in the `/src/migrations` folder. Each folder there represents one migration that follows the migration API. -All migrations are collected in `/migrations/index.js`, which should not be edited manually. +All migrations are collected in `/src/migrations/index.js`, which should not be edited manually. **The order of migrations is important and migrations must be sorted in ascending order**. diff --git a/packages/ipfs-repo-migrations/package.json b/packages/ipfs-repo-migrations/package.json index 24dae4f..259657c 100644 --- a/packages/ipfs-repo-migrations/package.json +++ b/packages/ipfs-repo-migrations/package.json @@ -54,7 +54,12 @@ "extends": "ipfs", "parserOptions": { "sourceType": "module" - } + }, + "ignorePatterns": [ + "src/migrations/migration-9/pin.js", + "src/migrations/migration-9/pin.d.ts", + "src/migrations/migration-12/pb/*" + ] }, "release": { "branches": [ diff --git a/packages/ipfs-repo-migrations/src/index.js b/packages/ipfs-repo-migrations/src/index.js index 899232f..c2620ec 100644 --- a/packages/ipfs-repo-migrations/src/index.js +++ b/packages/ipfs-repo-migrations/src/index.js @@ -1,6 +1,6 @@ /* eslint complexity: ["error", 28] */ -import defaultMigrations from '../migrations/index.js' +import defaultMigrations from './migrations/index.js' import * as repoVersion from './repo/version.js' import * as Errors from './errors.js' import { wrapBackends } from './utils.js' diff --git a/packages/ipfs-repo-migrations/migrations/index.js b/packages/ipfs-repo-migrations/src/migrations/index.js similarity index 95% rename from packages/ipfs-repo-migrations/migrations/index.js rename to packages/ipfs-repo-migrations/src/migrations/index.js index fb92371..5213208 100644 --- a/packages/ipfs-repo-migrations/migrations/index.js +++ b/packages/ipfs-repo-migrations/src/migrations/index.js @@ -5,7 +5,7 @@ import { migration as migration11 } from './migration-11/index.js' import { migration as migration12 } from './migration-12/index.js' /** - * @type {import('../src/types').Migration} + * @type {import('../types').Migration} */ const emptyMigration = { description: 'Empty migration.', diff --git a/packages/ipfs-repo-migrations/migrations/migration-10/index.js b/packages/ipfs-repo-migrations/src/migrations/migration-10/index.js similarity index 95% rename from packages/ipfs-repo-migrations/migrations/migration-10/index.js rename to packages/ipfs-repo-migrations/src/migrations/migration-10/index.js index 97a24a7..ceef20d 100644 --- a/packages/ipfs-repo-migrations/migrations/migration-10/index.js +++ b/packages/ipfs-repo-migrations/src/migrations/migration-10/index.js @@ -1,13 +1,13 @@ -import { findLevelJs } from '../../src/utils.js' +import { findLevelJs } from '../../utils.js' import { fromString } from 'uint8arrays/from-string' import { toString } from 'uint8arrays/to-string' /** - * @typedef {import('../../src/types').Migration} Migration + * @typedef {import('../../types').Migration} Migration * @typedef {import('interface-datastore').Datastore} Datastore * @typedef {import('interface-blockstore').Blockstore} Blockstore - * @typedef {import('../../src/types').MigrationProgressCallback} MigrationProgressCallback + * @typedef {import('../../types').MigrationProgressCallback} MigrationProgressCallback * * @typedef {{ type: 'del', key: string | Uint8Array } | { type: 'put', key: string | Uint8Array, value: Uint8Array }} Operation * @typedef {function (string, Uint8Array): Operation[]} UpgradeFunction @@ -87,7 +87,7 @@ function unwrap (store) { } /** - * @param {import('../../src/types').Backends} backends + * @param {import('../../types').Backends} backends * @param {MigrationProgressCallback} onProgress * @param {*} fn */ diff --git a/packages/ipfs-repo-migrations/migrations/migration-11/index.js b/packages/ipfs-repo-migrations/src/migrations/migration-11/index.js similarity index 81% rename from packages/ipfs-repo-migrations/migrations/migration-11/index.js rename to packages/ipfs-repo-migrations/src/migrations/migration-11/index.js index 6021625..76b749e 100644 --- a/packages/ipfs-repo-migrations/migrations/migration-11/index.js +++ b/packages/ipfs-repo-migrations/src/migrations/migration-11/index.js @@ -4,8 +4,8 @@ import { Key } from 'interface-datastore/key' const MFS_ROOT_KEY = new Key('/local/filesroot') /** - * @param {import('../../src/types').Backends} backends - * @param {import('../../src/types').MigrationProgressCallback} onProgress + * @param {import('../../types').Backends} backends + * @param {import('../../types').MigrationProgressCallback} onProgress */ async function storeMfsRootInDatastore (backends, onProgress = () => {}) { onProgress(100, 'Migrating MFS root to repo datastore') @@ -26,8 +26,8 @@ async function storeMfsRootInDatastore (backends, onProgress = () => {}) { } /** - * @param {import('../../src/types').Backends} backends - * @param {import('../../src/types').MigrationProgressCallback} onProgress + * @param {import('../../types').Backends} backends + * @param {import('../../types').MigrationProgressCallback} onProgress */ async function storeMfsRootInRoot (backends, onProgress = () => {}) { onProgress(100, 'Migrating MFS root to repo root datastore') @@ -47,7 +47,7 @@ async function storeMfsRootInRoot (backends, onProgress = () => {}) { onProgress(100, 'Stored MFS root in repo root datastore') } -/** @type {import('../../src/types').Migration} */ +/** @type {import('../../types').Migration} */ export const migration = { version: 11, description: 'Store mfs root in the datastore', diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/index.js b/packages/ipfs-repo-migrations/src/migrations/migration-12/index.js similarity index 90% rename from packages/ipfs-repo-migrations/migrations/migration-12/index.js rename to packages/ipfs-repo-migrations/src/migrations/migration-12/index.js index 58fb848..8e4fb8f 100644 --- a/packages/ipfs-repo-migrations/migrations/migration-12/index.js +++ b/packages/ipfs-repo-migrations/src/migrations/migration-12/index.js @@ -1,9 +1,4 @@ -import $protobuf from "protobufjs/minimal.js" - -// @ts-expect-error Explicitly disable long.js support -$protobuf.util.Long = undefined -$protobuf.configure() - +import $protobuf from 'protobufjs/minimal.js' import { Key } from 'interface-datastore/key' import { Protocols } from './pb/proto-book.js' import { Addresses } from './pb/address-book.js' @@ -12,9 +7,13 @@ import { Envelope } from './pb/envelope.js' import { PeerRecord } from './pb/peer-record.js' import { multiaddr } from '@multiformats/multiaddr' +// @ts-expect-error Explicitly disable long.js support +$protobuf.util.Long = undefined +$protobuf.configure() + /** - * @param {import('../../src/types').Backends} backends - * @param {import('../../src/types').MigrationProgressCallback} onProgress + * @param {import('../../types').Backends} backends + * @param {import('../../types').MigrationProgressCallback} onProgress */ async function storePeerUnderSingleDatastoreKey (backends, onProgress = () => {}) { onProgress(0, 'Storing each peerstore key under a single datastore key') @@ -31,7 +30,7 @@ async function storePeerUnderSingleDatastoreKey (backends, onProgress = () => {} })) { keys.push(key) const keyStr = key.toString() - const [_, prefix, type, peerId, metadataKey] = keyStr.split('/') + const [, prefix, type, peerId, metadataKey] = keyStr.split('/') if (prefix !== 'peers') { continue @@ -95,8 +94,8 @@ async function storePeerUnderSingleDatastoreKey (backends, onProgress = () => {} } /** - * @param {import('../../src/types').Backends} backends - * @param {import('../../src/types').MigrationProgressCallback} onProgress + * @param {import('../../types').Backends} backends + * @param {import('../../types').MigrationProgressCallback} onProgress */ async function storePeerUnderMultipleDatastoreKeys (backends, onProgress = () => {}) { onProgress(0, 'Storing each peerstore key under a multiple datastore keys') @@ -114,7 +113,7 @@ async function storePeerUnderMultipleDatastoreKeys (backends, onProgress = () => keys.push(key) const keyStr = key.toString() - const [_, _prefix, peerId] = keyStr.split('/') + const [, , peerId] = keyStr.split('/') peers[peerId] = Peer.decode(value) } @@ -170,7 +169,7 @@ async function storePeerUnderMultipleDatastoreKeys (backends, onProgress = () => onProgress(100, 'Stored each peerstore key under multiple datastore keys') } -/** @type {import('../../src/types').Migration} */ +/** @type {import('../../types').Migration} */ export const migration = { version: 12, description: 'Store each peerstore peer under a single datastore key', diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/address-book.d.ts b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/address-book.d.ts similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/address-book.d.ts rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/address-book.d.ts diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/address-book.js b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/address-book.js similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/address-book.js rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/address-book.js diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/address-book.proto b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/address-book.proto similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/address-book.proto rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/address-book.proto diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/envelope.d.ts b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/envelope.d.ts similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/envelope.d.ts rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/envelope.d.ts diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/envelope.js b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/envelope.js similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/envelope.js rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/envelope.js diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/envelope.proto b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/envelope.proto similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/envelope.proto rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/envelope.proto diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/peer-record.d.ts b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer-record.d.ts similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/peer-record.d.ts rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer-record.d.ts diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/peer-record.js b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer-record.js similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/peer-record.js rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer-record.js diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/peer-record.proto b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer-record.proto similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/peer-record.proto rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer-record.proto diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/peer.d.ts b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer.d.ts similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/peer.d.ts rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer.d.ts diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/peer.js b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer.js similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/peer.js rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer.js diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/peer.proto b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer.proto similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/peer.proto rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/peer.proto diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/proto-book.d.ts b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/proto-book.d.ts similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/proto-book.d.ts rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/proto-book.d.ts diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/proto-book.js b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/proto-book.js similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/proto-book.js rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/proto-book.js diff --git a/packages/ipfs-repo-migrations/migrations/migration-12/pb/proto-book.proto b/packages/ipfs-repo-migrations/src/migrations/migration-12/pb/proto-book.proto similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-12/pb/proto-book.proto rename to packages/ipfs-repo-migrations/src/migrations/migration-12/pb/proto-book.proto diff --git a/packages/ipfs-repo-migrations/migrations/migration-8/index.js b/packages/ipfs-repo-migrations/src/migrations/migration-8/index.js similarity index 96% rename from packages/ipfs-repo-migrations/migrations/migration-8/index.js rename to packages/ipfs-repo-migrations/src/migrations/migration-8/index.js index ed9c009..1cecadd 100644 --- a/packages/ipfs-repo-migrations/migrations/migration-8/index.js +++ b/packages/ipfs-repo-migrations/src/migrations/migration-8/index.js @@ -10,7 +10,7 @@ import * as mhd from 'multiformats/hashes/digest' const log = debug('ipfs:repo:migrator:migration-8') /** - * @typedef {import('../../src/types').Migration} Migration + * @typedef {import('../../types').Migration} Migration * @typedef {import('interface-datastore').Datastore} Datastore */ @@ -64,7 +64,7 @@ function keyToCid (key) { } /** - * @param {import('../../src/types').Backends} backends + * @param {import('../../types').Backends} backends * @param {(percent: number, message: string) => void} onProgress * @param {(key: Key) => Key} keyFunction */ diff --git a/packages/ipfs-repo-migrations/migrations/migration-9/index.js b/packages/ipfs-repo-migrations/src/migrations/migration-9/index.js similarity index 95% rename from packages/ipfs-repo-migrations/migrations/migration-9/index.js rename to packages/ipfs-repo-migrations/src/migrations/migration-9/index.js index 4cee2d7..82b459b 100644 --- a/packages/ipfs-repo-migrations/migrations/migration-9/index.js +++ b/packages/ipfs-repo-migrations/src/migrations/migration-9/index.js @@ -10,8 +10,8 @@ import * as mhd from 'multiformats/hashes/digest' import { base32 } from 'multiformats/bases/base32' /** - * @typedef {import('../../src/types').Migration} Migration - * @typedef {import('../../src/types').MigrationProgressCallback} MigrationProgressCallback + * @typedef {import('../../types').Migration} Migration + * @typedef {import('../../types').MigrationProgressCallback} MigrationProgressCallback * @typedef {import('interface-datastore').Datastore} Datastore * @typedef {import('interface-blockstore').Blockstore} Blockstore * @typedef {import('multiformats/cid').Version} CIDVersion @@ -129,7 +129,7 @@ async function pinsToDAG (blockstore, datastore, pinstore, onProgress) { } /** - * @param {import('../../src/types').Backends} backends + * @param {import('../../types').Backends} backends * @param {MigrationProgressCallback} onProgress * @param {*} fn */ diff --git a/packages/ipfs-repo-migrations/migrations/migration-9/pin-set.js b/packages/ipfs-repo-migrations/src/migrations/migration-9/pin-set.js similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-9/pin-set.js rename to packages/ipfs-repo-migrations/src/migrations/migration-9/pin-set.js diff --git a/packages/ipfs-repo-migrations/migrations/migration-9/pin.d.ts b/packages/ipfs-repo-migrations/src/migrations/migration-9/pin.d.ts similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-9/pin.d.ts rename to packages/ipfs-repo-migrations/src/migrations/migration-9/pin.d.ts diff --git a/packages/ipfs-repo-migrations/migrations/migration-9/pin.js b/packages/ipfs-repo-migrations/src/migrations/migration-9/pin.js similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-9/pin.js rename to packages/ipfs-repo-migrations/src/migrations/migration-9/pin.js diff --git a/packages/ipfs-repo-migrations/migrations/migration-9/pin.proto b/packages/ipfs-repo-migrations/src/migrations/migration-9/pin.proto similarity index 100% rename from packages/ipfs-repo-migrations/migrations/migration-9/pin.proto rename to packages/ipfs-repo-migrations/src/migrations/migration-9/pin.proto diff --git a/packages/ipfs-repo-migrations/migrations/migration-9/utils.js b/packages/ipfs-repo-migrations/src/migrations/migration-9/utils.js similarity index 94% rename from packages/ipfs-repo-migrations/migrations/migration-9/utils.js rename to packages/ipfs-repo-migrations/src/migrations/migration-9/utils.js index 92bb6e9..27934fb 100644 --- a/packages/ipfs-repo-migrations/migrations/migration-9/utils.js +++ b/packages/ipfs-repo-migrations/src/migrations/migration-9/utils.js @@ -16,6 +16,6 @@ export const PinTypes = { /** * @param {import('multiformats').CID} cid */ - export function cidToKey (cid) { +export function cidToKey (cid) { return new Key(`/${base32.encode(cid.multihash.bytes).toUpperCase().substring(1)}`) } diff --git a/packages/ipfs-repo-migrations/test/migrations/migration-10-test.js b/packages/ipfs-repo-migrations/test/migrations/migration-10-test.js index a7a5c84..d66b2d1 100644 --- a/packages/ipfs-repo-migrations/test/migrations/migration-10-test.js +++ b/packages/ipfs-repo-migrations/test/migrations/migration-10-test.js @@ -4,7 +4,7 @@ import { expect } from 'aegir/chai' import { CID } from 'multiformats/cid' import { BaseBlockstore } from 'blockstore-core/base' -import { migration } from '../../migrations/migration-10/index.js' +import { migration } from '../../src/migrations/migration-10/index.js' import { Key } from 'interface-datastore/key' import { fromString } from 'uint8arrays/from-string' import { equals } from 'uint8arrays/equals' diff --git a/packages/ipfs-repo-migrations/test/migrations/migration-11-test.js b/packages/ipfs-repo-migrations/test/migrations/migration-11-test.js index a8195f1..d2e9810 100644 --- a/packages/ipfs-repo-migrations/test/migrations/migration-11-test.js +++ b/packages/ipfs-repo-migrations/test/migrations/migration-11-test.js @@ -3,7 +3,7 @@ import { expect } from 'aegir/chai' import { CID } from 'multiformats/cid' -import { migration } from '../../migrations/migration-11/index.js' +import { migration } from '../../src/migrations/migration-11/index.js' import { Key } from 'interface-datastore/key' const MFS_ROOT_KEY = new Key('/local/filesroot') diff --git a/packages/ipfs-repo-migrations/test/migrations/migration-12-test.js b/packages/ipfs-repo-migrations/test/migrations/migration-12-test.js index 6ce6604..0911217 100644 --- a/packages/ipfs-repo-migrations/test/migrations/migration-12-test.js +++ b/packages/ipfs-repo-migrations/test/migrations/migration-12-test.js @@ -2,7 +2,7 @@ /* eslint-disable max-nested-callbacks */ import { expect } from 'aegir/chai' -import { migration } from '../../migrations/migration-12/index.js' +import { migration } from '../../src/migrations/migration-12/index.js' import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string' import { toString as uint8ArrayToString } from 'uint8arrays/to-string' import { Key } from 'interface-datastore/key' diff --git a/packages/ipfs-repo-migrations/test/migrations/migration-8-test.js b/packages/ipfs-repo-migrations/test/migrations/migration-8-test.js index a3d5e86..f03edc0 100644 --- a/packages/ipfs-repo-migrations/test/migrations/migration-8-test.js +++ b/packages/ipfs-repo-migrations/test/migrations/migration-8-test.js @@ -3,7 +3,7 @@ import { expect } from 'aegir/chai' import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string' -import { migration } from '../../migrations/migration-8/index.js' +import { migration } from '../../src/migrations/migration-8/index.js' import { Key } from 'interface-datastore/key' /** diff --git a/packages/ipfs-repo-migrations/test/migrations/migration-9-test.js b/packages/ipfs-repo-migrations/test/migrations/migration-9-test.js index bed152c..147b141 100644 --- a/packages/ipfs-repo-migrations/test/migrations/migration-9-test.js +++ b/packages/ipfs-repo-migrations/test/migrations/migration-9-test.js @@ -3,8 +3,8 @@ import { expect } from 'aegir/chai' import * as cbor from 'cborg' -import { migration } from '../../migrations/migration-9/index.js' -import { PIN_DS_KEY } from '../../migrations/migration-9/utils.js' +import { migration } from '../../src/migrations/migration-9/index.js' +import { PIN_DS_KEY } from '../../src/migrations/migration-9/utils.js' import { CID } from 'multiformats/cid' import { CarReader } from '@ipld/car' import loadFixture from 'aegir/fixtures' diff --git a/packages/ipfs-repo-migrations/tsconfig.json b/packages/ipfs-repo-migrations/tsconfig.json index 86f7019..9d7e01f 100644 --- a/packages/ipfs-repo-migrations/tsconfig.json +++ b/packages/ipfs-repo-migrations/tsconfig.json @@ -6,12 +6,11 @@ }, "include": [ "src", - "test", - "migrations" + "test" ], "exclude": [ - "migrations/migration-9/pin.js", - "migrations/migration-9/pin.d.ts", - "migrations/migration-12/pb" + "src/migrations/migration-9/pin.js", + "src/migrations/migration-9/pin.d.ts", + "src/migrations/migration-12/pb" ] } From 6ec3b4c63b3e2e21343039a0d2b97fc699ab9e2f Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 19 Oct 2022 14:16:42 +0000 Subject: [PATCH 3/7] chore(release): 14.0.1 [skip ci] ## [ipfs-repo-migrations-v14.0.1](https://github.com/ipfs/js-ipfs-repo/compare/ipfs-repo-migrations-v14.0.0...ipfs-repo-migrations-v14.0.1) (2022-10-19) ### Bug Fixes * move migrations to published folder ([#427](https://github.com/ipfs/js-ipfs-repo/issues/427)) ([12b8ac8](https://github.com/ipfs/js-ipfs-repo/commit/12b8ac89a6b643933d3440b2b42f9f5f142d0d35)) --- packages/ipfs-repo-migrations/CHANGELOG.md | 7 +++++++ packages/ipfs-repo-migrations/package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/ipfs-repo-migrations/CHANGELOG.md b/packages/ipfs-repo-migrations/CHANGELOG.md index 50536d4..e1cea2b 100644 --- a/packages/ipfs-repo-migrations/CHANGELOG.md +++ b/packages/ipfs-repo-migrations/CHANGELOG.md @@ -1,3 +1,10 @@ +## [ipfs-repo-migrations-v14.0.1](https://github.com/ipfs/js-ipfs-repo/compare/ipfs-repo-migrations-v14.0.0...ipfs-repo-migrations-v14.0.1) (2022-10-19) + + +### Bug Fixes + +* move migrations to published folder ([#427](https://github.com/ipfs/js-ipfs-repo/issues/427)) ([12b8ac8](https://github.com/ipfs/js-ipfs-repo/commit/12b8ac89a6b643933d3440b2b42f9f5f142d0d35)) + ## [ipfs-repo-migrations-v14.0.0](https://github.com/ipfs/js-ipfs-repo/compare/ipfs-repo-migrations-v13.0.3...ipfs-repo-migrations-v14.0.0) (2022-10-19) diff --git a/packages/ipfs-repo-migrations/package.json b/packages/ipfs-repo-migrations/package.json index 259657c..eec7ef3 100644 --- a/packages/ipfs-repo-migrations/package.json +++ b/packages/ipfs-repo-migrations/package.json @@ -1,6 +1,6 @@ { "name": "ipfs-repo-migrations", - "version": "14.0.0", + "version": "14.0.1", "description": "Migration framework for versioning of JS IPFS Repo", "license": "Apache-2.0 OR MIT", "homepage": "https://github.com/ipfs/js-ipfs-repo/tree/master/packages/ipfs-repo-migrations#readme", From a487def236afef3a8372b204d0f7709a4a0b5424 Mon Sep 17 00:00:00 2001 From: Alex Potsides Date: Fri, 6 Jan 2023 15:49:03 +0000 Subject: [PATCH 4/7] fix!: update multiformats to v11.x.x (#435) The CID class in multiformats 11 has a breaking change so update all deps and project config to use the new version. Also remove lerna as now aegir has run and exec commands. --- .gitignore | 44 +++---------------- lerna.json | 13 ------ package.json | 31 +++++++------ packages/ipfs-repo-migrations/package.json | 14 +++--- .../src/migrations/migration-9/pin-set.js | 2 +- packages/ipfs-repo/package.json | 16 +++---- 6 files changed, 37 insertions(+), 83 deletions(-) delete mode 100644 lerna.json diff --git a/.gitignore b/.gitignore index 4208fdb..910f633 100644 --- a/.gitignore +++ b/.gitignore @@ -1,40 +1,8 @@ -docs -yarn.lock -package-lock.json - -test-repo-for* -.vscode -.eslintrc -# Logs -logs -*.log - -coverage -.coverage - -# Runtime data -pids -*.pid -*.seed - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage -.nyc_output - -# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# node-waf configuration -.lock-wscript - -build - -# Dependency directory -# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git node_modules - +build dist -types +.docs +.coverage +node_modules +package-lock.json +yarn.lock diff --git a/lerna.json b/lerna.json deleted file mode 100644 index fe9f1a3..0000000 --- a/lerna.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "lerna": "5.4.0", - "useWorkspaces": true, - "version": "independent", - "command": { - "run": { - "stream": true - } - }, - "packages": [ - "packages/*" - ] -} diff --git a/package.json b/package.json index 8fef157..895bcbe 100644 --- a/package.json +++ b/package.json @@ -17,24 +17,23 @@ }, "private": true, "scripts": { - "reset": "lerna run clean && rimraf ./node_modules ./package-lock.json packages/*/node_modules packages/*/package-lock.json packages/*/dist", - "test": "lerna run --concurrency 1 test -- --", - "test:node": "lerna run --concurrency 1 test:node -- --", - "test:chrome": "lerna run --concurrency 1 test:chrome -- --", - "test:chrome-webworker": "lerna --concurrency 1 run test:chrome-webworker -- --", - "test:firefox": "lerna run --concurrency 1 test:firefox -- --", - "test:firefox-webworker": "lerna run --concurrency 1 test:firefox-webworker -- --", - "test:electron-main": "lerna run --concurrency 1 test:electron-main -- --", - "test:electron-renderer": "lerna run --concurrency 1 test:electron-renderer -- --", - "clean": "lerna run clean", - "build": "lerna run build", - "lint": "lerna run lint", - "dep-check": "lerna run dep-check", - "release": "lerna run --concurrency 1 release -- --" + "reset": "aegir run clean && aegir clean ./node_modules ./package-lock.json packages/*/node_modules packages/*/package-lock.json packages/*/dist", + "test": "aegir run test", + "test:node": "aegir run test:node", + "test:chrome": "aegir run test:chrome", + "test:chrome-webworker": "aegir run test:chrome-webworker", + "test:firefox": "aegir run test:firefox", + "test:firefox-webworker": "aegir run test:firefox-webworker", + "test:electron-main": "aegir run test:electron-main", + "test:electron-renderer": "aegir run test:electron-renderer", + "clean": "aegir run clean", + "build": "aegir run build", + "lint": "aegir run lint", + "dep-check": "aegir run dep-check", + "release": "aegir run release" }, "dependencies": { - "lerna": "^6.0.0", - "rimraf": "^3.0.2" + "aegir": "^37.9.1" }, "workspaces": [ "packages/*" diff --git a/packages/ipfs-repo-migrations/package.json b/packages/ipfs-repo-migrations/package.json index eec7ef3..025a847 100644 --- a/packages/ipfs-repo-migrations/package.json +++ b/packages/ipfs-repo-migrations/package.json @@ -169,16 +169,16 @@ "dep-check": "aegir dep-check -i interface-blockstore -i npm-run-all" }, "dependencies": { - "@ipld/dag-pb": "^3.0.0", + "@ipld/dag-pb": "^4.0.0", "@multiformats/multiaddr": "^11.0.0", "cborg": "^1.3.4", "datastore-core": "^8.0.1", "debug": "^4.1.0", "fnv1a": "^1.0.1", - "interface-blockstore": "^3.0.0", + "interface-blockstore": "^4.0.0", "interface-datastore": "^7.0.0", "it-length": "^2.0.0", - "multiformats": "^10.0.1", + "multiformats": "^11.0.0", "protobufjs": "^7.0.0", "uint8arrays": "^4.0.2", "varint": "^6.0.0" @@ -187,10 +187,10 @@ "@ipld/car": "^5.0.0", "@types/debug": "^4.1.5", "@types/varint": "^6.0.0", - "aegir": "^37.5.0", + "aegir": "^37.9.1", "aws-sdk": "^2.884.0", - "blockstore-core": "^2.0.0", - "blockstore-datastore-adapter": "^4.0.0", + "blockstore-core": "^3.0.0", + "blockstore-datastore-adapter": "^5.0.0", "datastore-fs": "^8.0.0", "datastore-level": "^9.0.0", "datastore-s3": "^10.0.0", @@ -199,7 +199,7 @@ "level-6": "npm:level@^6.0.0", "npm-run-all": "^4.1.5", "protobufjs-cli": "^1.0.0", - "sinon": "^14.0.0" + "sinon": "^15.0.1" }, "browser": { "datastore-fs": "datastore-level" diff --git a/packages/ipfs-repo-migrations/src/migrations/migration-9/pin-set.js b/packages/ipfs-repo-migrations/src/migrations/migration-9/pin-set.js index 78c2947..0950b4a 100644 --- a/packages/ipfs-repo-migrations/src/migrations/migration-9/pin-set.js +++ b/packages/ipfs-repo-migrations/src/migrations/migration-9/pin-set.js @@ -37,7 +37,7 @@ function readHeader (rootNode) { } const hdrLength = varint.decode(rootData) - const vBytes = varint.decode.bytes + const vBytes = varint.decode.bytes ?? 0 if (vBytes <= 0) { throw new Error('Invalid Set header length') diff --git a/packages/ipfs-repo/package.json b/packages/ipfs-repo/package.json index e578fa6..0116b02 100644 --- a/packages/ipfs-repo/package.json +++ b/packages/ipfs-repo/package.json @@ -180,13 +180,13 @@ "dep-check": "aegir dep-check -i interface-blockstore" }, "dependencies": { - "@ipld/dag-pb": "^3.0.0", + "@ipld/dag-pb": "^4.0.0", "bytes": "^3.1.0", "cborg": "^1.3.4", "datastore-core": "^8.0.1", "debug": "^4.1.0", "err-code": "^3.0.1", - "interface-blockstore": "^3.0.0", + "interface-blockstore": "^4.0.0", "interface-datastore": "^7.0.0", "ipfs-repo-migrations": "^14.0.0", "it-drain": "^2.0.0", @@ -201,7 +201,7 @@ "just-safe-set": "^4.1.1", "merge-options": "^3.0.4", "mortice": "^3.0.0", - "multiformats": "^10.0.1", + "multiformats": "^11.0.0", "p-queue": "^7.3.0", "proper-lockfile": "^4.0.0", "quick-lru": "^6.1.1", @@ -209,19 +209,19 @@ "uint8arrays": "^4.0.2" }, "devDependencies": { - "@ipld/dag-cbor": "^8.0.0", + "@ipld/dag-cbor": "^9.0.0", "@types/bytes": "^3.1.0", "@types/debug": "^4.1.5", "@types/proper-lockfile": "^4.1.1", "@types/rimraf": "^3.0.2", - "aegir": "^37.5.0", - "blockstore-core": "^2.0.0", - "blockstore-datastore-adapter": "^4.0.0", + "aegir": "^37.9.1", + "blockstore-core": "^3.0.0", + "blockstore-datastore-adapter": "^5.0.0", "ipfs-utils": "^9.0.7", "it-all": "^2.0.0", "just-range": "^4.1.1", "rimraf": "^3.0.2", - "sinon": "^14.0.0" + "sinon": "^15.0.1" }, "browser": { "rimraf": false From c38b02c1550386847388fd86aecaf9bf9630c034 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Fri, 6 Jan 2023 15:59:15 +0000 Subject: [PATCH 5/7] chore(release): 15.0.0 [skip ci] MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## [ipfs-repo-migrations-v15.0.0](https://github.com/ipfs/js-ipfs-repo/compare/ipfs-repo-migrations-v14.0.1...ipfs-repo-migrations-v15.0.0) (2023-01-06) ### ⚠ BREAKING CHANGES * update multiformats to v11.x.x (#435) ### Bug Fixes * update multiformats to v11.x.x ([#435](https://github.com/ipfs/js-ipfs-repo/issues/435)) ([a487def](https://github.com/ipfs/js-ipfs-repo/commit/a487def236afef3a8372b204d0f7709a4a0b5424)) --- packages/ipfs-repo-migrations/CHANGELOG.md | 11 +++++++++++ packages/ipfs-repo-migrations/package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/ipfs-repo-migrations/CHANGELOG.md b/packages/ipfs-repo-migrations/CHANGELOG.md index e1cea2b..edb2b89 100644 --- a/packages/ipfs-repo-migrations/CHANGELOG.md +++ b/packages/ipfs-repo-migrations/CHANGELOG.md @@ -1,3 +1,14 @@ +## [ipfs-repo-migrations-v15.0.0](https://github.com/ipfs/js-ipfs-repo/compare/ipfs-repo-migrations-v14.0.1...ipfs-repo-migrations-v15.0.0) (2023-01-06) + + +### ⚠ BREAKING CHANGES + +* update multiformats to v11.x.x (#435) + +### Bug Fixes + +* update multiformats to v11.x.x ([#435](https://github.com/ipfs/js-ipfs-repo/issues/435)) ([a487def](https://github.com/ipfs/js-ipfs-repo/commit/a487def236afef3a8372b204d0f7709a4a0b5424)) + ## [ipfs-repo-migrations-v14.0.1](https://github.com/ipfs/js-ipfs-repo/compare/ipfs-repo-migrations-v14.0.0...ipfs-repo-migrations-v14.0.1) (2022-10-19) diff --git a/packages/ipfs-repo-migrations/package.json b/packages/ipfs-repo-migrations/package.json index 025a847..13ac72a 100644 --- a/packages/ipfs-repo-migrations/package.json +++ b/packages/ipfs-repo-migrations/package.json @@ -1,6 +1,6 @@ { "name": "ipfs-repo-migrations", - "version": "14.0.1", + "version": "15.0.0", "description": "Migration framework for versioning of JS IPFS Repo", "license": "Apache-2.0 OR MIT", "homepage": "https://github.com/ipfs/js-ipfs-repo/tree/master/packages/ipfs-repo-migrations#readme", From 23a7860c7997e073267bcd7e6d6d0dadb2b6ddba Mon Sep 17 00:00:00 2001 From: "aegir[bot]" Date: Fri, 6 Jan 2023 15:59:27 +0000 Subject: [PATCH 6/7] deps: update sibling dependencies --- packages/ipfs-repo/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/ipfs-repo/package.json b/packages/ipfs-repo/package.json index 0116b02..93398ca 100644 --- a/packages/ipfs-repo/package.json +++ b/packages/ipfs-repo/package.json @@ -188,7 +188,7 @@ "err-code": "^3.0.1", "interface-blockstore": "^4.0.0", "interface-datastore": "^7.0.0", - "ipfs-repo-migrations": "^14.0.0", + "ipfs-repo-migrations": "^15.0.0", "it-drain": "^2.0.0", "it-filter": "^2.0.0", "it-first": "^2.0.0", From df82589e08bb494a7d3f79229e7113522a3e1d03 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Fri, 6 Jan 2023 15:59:37 +0000 Subject: [PATCH 7/7] chore(release): 17.0.0 [skip ci] MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## [ipfs-repo-v17.0.0](https://github.com/ipfs/js-ipfs-repo/compare/ipfs-repo-v16.0.0...ipfs-repo-v17.0.0) (2023-01-06) ### ⚠ BREAKING CHANGES * update multiformats to v11.x.x (#435) ### Bug Fixes * update multiformats to v11.x.x ([#435](https://github.com/ipfs/js-ipfs-repo/issues/435)) ([a487def](https://github.com/ipfs/js-ipfs-repo/commit/a487def236afef3a8372b204d0f7709a4a0b5424)) ### Dependencies * update sibling dependencies ([23a7860](https://github.com/ipfs/js-ipfs-repo/commit/23a7860c7997e073267bcd7e6d6d0dadb2b6ddba)) --- packages/ipfs-repo/CHANGELOG.md | 16 ++++++++++++++++ packages/ipfs-repo/package.json | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/packages/ipfs-repo/CHANGELOG.md b/packages/ipfs-repo/CHANGELOG.md index e6debbf..17749ff 100644 --- a/packages/ipfs-repo/CHANGELOG.md +++ b/packages/ipfs-repo/CHANGELOG.md @@ -1,3 +1,19 @@ +## [ipfs-repo-v17.0.0](https://github.com/ipfs/js-ipfs-repo/compare/ipfs-repo-v16.0.0...ipfs-repo-v17.0.0) (2023-01-06) + + +### ⚠ BREAKING CHANGES + +* update multiformats to v11.x.x (#435) + +### Bug Fixes + +* update multiformats to v11.x.x ([#435](https://github.com/ipfs/js-ipfs-repo/issues/435)) ([a487def](https://github.com/ipfs/js-ipfs-repo/commit/a487def236afef3a8372b204d0f7709a4a0b5424)) + + +### Dependencies + +* update sibling dependencies ([23a7860](https://github.com/ipfs/js-ipfs-repo/commit/23a7860c7997e073267bcd7e6d6d0dadb2b6ddba)) + ## [ipfs-repo-v16.0.0](https://github.com/ipfs/js-ipfs-repo/compare/ipfs-repo-v15.0.3...ipfs-repo-v16.0.0) (2022-10-19) diff --git a/packages/ipfs-repo/package.json b/packages/ipfs-repo/package.json index 93398ca..3de8e09 100644 --- a/packages/ipfs-repo/package.json +++ b/packages/ipfs-repo/package.json @@ -1,6 +1,6 @@ { "name": "ipfs-repo", - "version": "16.0.0", + "version": "17.0.0", "description": "IPFS Repo implementation", "license": "Apache-2.0 OR MIT", "homepage": "https://github.com/ipfs/js-ipfs-repo/tree/master/packages/ipfs-repo#readme",