GithubHelp home page GithubHelp logo

ipfs-inactive / js-ipfs-unixfs-engine Goto Github PK

View Code? Open in Web Editor NEW
22.0 22.0 20.0 20.81 MB

[ARCHIVED] JavaScript implementation of the layout and chunking mechanisms used by IPFS

License: MIT License

JavaScript 100.00%

js-ipfs-unixfs-engine's Introduction

[ARCHIVED]

This module has been merged into ipfs/js-ipfs-unixfs where development continues. Please open issues/PRs there.

ipfs-unixfs-engine

standard-readme compliant Build Status Codecov Dependency Status js-standard-style

JavaScript implementation of the layout and chunking mechanisms used by IPFS to handle Files

Lead Maintainer

Alex Potsides

Table of Contents

Install

> npm install ipfs-unixfs-engine

Usage

The unixfs-engine exports the unixfs-importer and unixfs-exporter modules. Please see those modules for for full documentation.

Importing a file

The importer is a pull-stream through which takes objects of the form { path, content } where path is a string path and content can be a Buffer, a ReadableStream or a pull-stream that emits Buffers.

It requires an ipld resolver to persist DAGNodes and make them available over IPFS.

See the unixfs-importer module for full documentation.

const {
  importer
} = require('ipfs-unixfs-engine')
const pull = require('pull-stream')
const fs = require('fs')

// Import path /tmp/bar.txt
pull(
  pull.values([{
    path: '/tmp/bar.txt',
    content: fs.createReadStream('/tmp/bar.txt')
  }]),

  // You need to create and pass an ipld resolver instance
  // https://npmjs.com/packages/ipld
  importer(<ipld-resolver instance>, <options>),

  // Handle the error and do something with the results
  pull.collect((err, files) => {
    console.info(files)

    // Prints:
    // [{
    //   size: 12,
    //   leafSize: 4,
    //   multihash: <Buffer>
    //   path: '/tmp/bar.txt',
    //   name: ''
    // }, {
    //   path: 'tmp',
    //   multihash: <Buffer>
    //   size: 65
    // }]
  })
)

Exporting a file

The exporter is a pull-stream source which takes a cid and an ipld resolver.

See the unixfs-exporter module for full documentation.

const {
  exporter
} = require('ipfs-unixfs-engine').exporter
const pull = require('pull-stream')
const drain = require('pull-stream/sinks/drain')

pull(
  // You need to create and pass an ipld resolver instance
  // https://npmjs.com/packages/ipld
  exporter(cid, ipld),
  drain((file) => {
    // file.content is a pull stream containing the bytes of the file
  })
)

Contribute

Feel free to join in. All welcome. Open an issue!

This repository falls under the IPFS Code of Conduct.

License

MIT

js-ipfs-unixfs-engine's People

Contributors

achingbrain avatar alanshaw avatar atvanguard avatar bmordan avatar daviddias avatar dignifiedquire avatar dordille avatar fbaiodias avatar fsdiogo avatar greenkeeper[bot] avatar greenkeeperio-bot avatar hackergrrl avatar hsanjuan avatar jbenet avatar lidel avatar nginnever avatar noffle avatar pgte avatar richardlitt avatar richardschneider avatar stensonb avatar victorb avatar vmx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

js-ipfs-unixfs-engine's Issues

An in-range update of ipfs-block-service is breaking the build 🚨

Version 0.8.2 of ipfs-block-service just got published.

Branch Build failing 🚨
Dependency ipfs-block-service
Current Version 0.8.1
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As ipfs-block-service is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 3 commits .

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

add methods for reading and writting data from an offset

It would be nice to support an option to read and write data from an offset.

const reader = require('ipfs-unixfs-engine').reader
promise = reader(CID, offset, length)
const writer = require('ipfs-unixfs-engine').writer
promise = writer(CID, offset, data)

An in-range update of aegir is breaking the build 🚨

Version 9.3.2 of aegir just got published.

Branch Build failing 🚨
Dependency aegir
Current Version 9.3.1
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As aegir is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Release Notes v9.3.2

Features

  • deps: use new browserify-zlib-next package (68810c1)
Commits

The new version differs by 5 commits .

  • e501ba3 chore: release version v9.3.2
  • 73d2f9c chore: update contributors
  • 68810c1 feat(deps): use new browserify-zlib-next package
  • a1a0753 Merge pull request #93 from dignifiedquire/greenkeeper/update-all
  • f3e6620 chore(package): update dependencies

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of async is breaking the build 🚨

Version 2.1.5 of async just got published.

Branch Build failing 🚨
Dependency async
Current Version 2.1.4
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As async is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of rimraf is breaking the build 🚨

Version 2.6.0 of rimraf just got published.

Branch Build failing 🚨
Dependency rimraf
Current Version 2.5.4
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As rimraf is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 5 commits .

  • 5b661e4 v2.6.0
  • c09915f update tap
  • d53235d Make rimraf.sync 10000% more reliable on Windows
  • e8b10a7 Retry on EBUSY et al on non-windows platforms as well
  • 0fac5f7 Add --no-glob option to cli

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of pull-block is breaking the build 🚨

Version 1.1.0 of pull-block just got published.

Branch Build failing 🚨
Dependency pull-block
Current Version 1.0.2
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As pull-block is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ coverage/coveralls Coverage pending from Coveralls.io Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 2 commits .

  • 1f6a620 chore: release v1.1.0
  • 9cb1bdf feat: support option for always emitting at least one (empty) buffer

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Update documentation

  • get importer up to the new path + stream format
  • integrate exporter onto js-ipfs
  • create docs of how importer and exporter works

Some notes:

var importer = new unixFSE.import()
    importer.add({path: , stream:)
        chunk the file, store the hash
    importer.finish()

    - default β€œno flush”, in the future, support flush
    - each time a file is hashed and added, emit an event with that filepath and hash
    - when the dir gets added, also emit an event for that
    - use a env variable to use main IPFS repo, just for the tests
    - I can sort (at ipfs-core) before printing :)

var exporter = new unixFSE.export()
    each time it hits a file emit an event with a file and write to the stream

Proposal:

I want to rename this module to unixfs-engine, because it is what it really is, the agnostic file importer will be done later, this is not prepared in any sense to support different layouts (nor do we know yet how to achieve that).

An in-range update of multihashes is breaking the build 🚨

Version 0.3.2 of multihashes just got published.

Branch Build failing 🚨
Dependency multihashes
Current Version 0.3.1
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As multihashes is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 11 commits .

  • b9d8c87 chore: release version v0.3.2
  • db34947 chore: update contributors
  • 7da2dad chore: update deps
  • 59a6aa4 Merge pull request #30 from multiformats/feat/murmur3
  • adbd951 added murmur3 hashing code
  • 8396784 Merge pull request #29 from multiformats/greenkeeper/update-all
  • cd7e5ca chore(package): update dependencies
  • 4714d08 Merge pull request #28 from multiformats/dignifiedquire-patch-1
  • a310200 docs(readme): update api section
  • 13f67ec Merge pull request #25 from multiformats/feat/readme
  • 79387d8 Edited README

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

New test added fails

@alanshaw I completely missed to see the status on CI :( (shame on me). Seems that the test you added detected a problem. Does it run for you?

https://circleci.com/gh/ipfs/js-ipfs-unixfs-engine/567

 1) IPFS UnixFS Engine builder allows multihash hash algorithm to be specified:
     Uncaught TypeError: Argument must be a Buffer or Uint8Array
      at Buffer.equals (buffer.js:635:11)
      at ipldResolver.get (test/test-builder.js:48:28)
      at _get (node_modules/ipld-resolver/src/index.js:123:9)
      at node_modules/async/internal/once.js:12:16
      at next (node_modules/async/waterfall.js:21:29)
      at node_modules/async/internal/onlyOnce.js:12:16
      at r.util.deserialize (node_modules/ipld-resolver/src/index.js:361:13)
      at multihashing (node_modules/ipld-dag-pb/src/dag-node/create.js:61:7)
      at Multihashing.Multihashing.digest (node_modules/multihashing-async/src/index.js:33:5)
      at setImmediate (node_modules/multihashing-async/src/utils.js:8:7)
      at Immediate._onImmediate (node_modules/async/internal/setImmediate.js:27:16)

Browser performance issue

In a very similar fashion to libp2p/js-libp2p-secio#92 I find that adding large files spends a huge amount of time garbage collecting buffers.

I.e. adding a 55MB file cost me about 20 seconds doing >10k GC runs on Firefox.

I'm in the process of narrowing down the culprit, but it seems to be the pull-block implementation used in the fixed size chunker.

Setting offset in catReadableStream results in incorrect stream length

@achingbrain

The following example doesn't give the expected result:

const Ipfs = require('ipfs')
const videoCid = 'QmcPZGXSyaQSnDVEtJrgtp2EyxhENiBdpGa8pfs5rMBCWr' // sintel.mp4
const fs = require('fs')

const offset = 48

const ipfs = new Ipfs()
ipfs.on('ready', () => {
	let numDone = 0
	const s1Data = []
	const s2Data = []
	const s1 = ipfs.files.catReadableStream(videoCid, {
		offset: 0
	})

	s1.on('data', (buf) => {
		s1Data.push(buf)
	})

	s1.on('end', () => {
		if (++numDone === 2) {
			checkResult()
		}
	})

	const s2 = ipfs.files.catReadableStream(videoCid, {
		offset: offset
	})

	s2.on('data', (buf) => {
		s2Data.push(buf)
	})

	s2.on('end', () => {
		if (++numDone === 2) {
			checkResult()
		}
	})

	function checkResult () {
		const b1 = Buffer.concat(s1Data).slice(offset)
		const b2 = Buffer.concat(s2Data)
		const eq = b1.equals(b2)

		console.log('length 1', b1.length)
		console.log('length 2', b2.length)
		console.log('equal?', eq)
		process.exit(eq ? 0 : 1)
	}
})

An in-range update of multihashes is breaking the build 🚨

Version 0.3.3 of multihashes just got published.

Branch Build failing 🚨
Dependency multihashes
Current Version 0.3.2
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As multihashes is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 3 commits .

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of ipld-resolver is breaking the build 🚨

Version 0.4.2 of ipld-resolver just got published.

Branch Build failing 🚨
Dependency ipld-resolver
Current Version 0.4.1
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As ipld-resolver is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Release Notes v0.4.2

Bug Fixes

  • switch to dag-cbor 0.8.2, the switch to borc in 0.8.3 introduced a bug (948ca6a)
Commits

The new version differs by 4 commits .

  • 6100a7c chore: release version v0.4.2
  • c2cdeae chore: update contributors
  • 948ca6a fix: switch to dag-cbor 0.8.2, the switch to borc in 0.8.3 introduced a bug
  • cceb933 chore: update deps

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of cids is breaking the build 🚨

Version 0.4.2 of cids just got published.

Branch Build failing 🚨
Dependency cids
Current Version 0.4.1
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As cids is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • βœ… ci/circleci Your tests passed on CircleCI! Details

  • βœ… coverage/coveralls First build on greenkeeper/cids-0.4.2 at 91.748% Details

  • ❌ continuous-integration/travis-ci/push The Travis CI build failed Details

Commits

The new version differs by 8 commits .

  • e0da6ee chore: release version v0.4.2
  • 120f0e1 chore: update contributors
  • d941360 chore: update aegir and fix linting
  • a38e7bd chore: update deps
  • 2790438 Merge pull request #21 from ipld/greenkeeper/multihashes-0.4.0
  • fe344b6 solves ipld/js-cid#23
  • 1d0c3c8 fix(package): update multihashes to version 0.4.0
  • 1339251 docs(readme): fix typo for the browser reference

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Deprecate this module?

This is just a shell module that depends on importer/exporter and js-ipfs has not depended on it for a while now.

Also, right now the published version of this module depends on out of date versions of importer/exporter.

An in-range update of ipld-resolver is breaking the build 🚨

Version 0.4.3 of ipld-resolver just got published.

Branch Build failing 🚨
Dependency ipld-resolver
Current Version 0.4.2
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As ipld-resolver is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 3 commits .

  • 9f0401f chore: release version v0.4.3
  • 077611e chore: update contributors
  • 03e6b9d chore: update dag-cbor

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Some tests are failing on Windows

The with-dag-api tests are still failing, because it uses IPFS for testing and IPFS is not yet windows ready.

When IPFS is windows ready, we can update the package.json and then re-test.

Also re-enable the tests.

An in-range update of aegir is breaking the build 🚨

Version 9.4.0 of aegir just got published.

Branch Build failing 🚨
Dependency aegir
Current Version 9.3.3
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As aegir is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Release Notes v9.4.0

Features

  • coverage: add codecov to coverage providers (8f06c99)
  • test: add support to run tests in web workers (0b7a851)
  • test: finish webworker test implementation (ea0a8b1)
Commits

The new version differs by 6 commits .

  • 15e15a8 chore: release version v9.4.0
  • 9c6cd71 chore: update contributors
  • ea0a8b1 feat(test): finish webworker test implementation
  • 8fd9841 chore: update deps
  • 0b7a851 feat(test): add support to run tests in web workers
  • 8f06c99 feat(coverage): add codecov to coverage providers

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Update importer examples in README.md

At some point the importer changed from being a ReadableStream to a pull-stream. The examples in the README.md were never changed so they need updating.

Copying some code from the importer tests into the README should be enough.

An in-range update of ipfs-repo is breaking the build 🚨

Version 0.11.3 of ipfs-repo just got published.

Branch Build failing 🚨
Dependency ipfs-repo
Current Version 0.11.2
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As ipfs-repo is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 4 commits .

  • ea308a8 chore: release version v0.11.3
  • 96c94a1 chore: update contributors
  • c5162af chore: ^ to ~
  • 0f0d686 feat: change window to self for webworker support

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

update readme

more things are working and the repo has a nee syntax

An in-range update of ipld-resolver is breaking the build 🚨

Version 0.8.1 of ipld-resolver just got published.

Branch Build failing 🚨
Dependency ipld-resolver
Current Version 0.8.0
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As ipld-resolver is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 3 commits .

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of cids is breaking the build 🚨

Version 0.4.1 of cids just got published.

Branch Build failing 🚨
Dependency cids
Current Version 0.4.0
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As cids is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 5 commits .

  • 1a8e4e5 chore: release version v0.4.1
  • aa43141 chore: update contributors
  • dceaaee chore: ^ to ~
  • 401ee20 Merge pull request #18 from ipld/greenkeeper/multihashing-async-0.4.0
  • 97c461f chore(package): update multihashing-async to version 0.4.0

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of ipld-dag-pb is breaking the build 🚨

Version 0.9.5 of ipld-dag-pb just got published.

Branch Build failing 🚨
Dependency ipld-dag-pb
Current Version 0.9.4
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As ipld-dag-pb is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 5 commits .

  • 6beaf4b chore: release version v0.9.5
  • ea78121 chore: update contributors
  • 368a6b4 chore: ^ to ~
  • 260ed54 Merge pull request #16 from ipld/greenkeeper/is-ipfs-0.3.0
  • 2620f9d fix(package): update is-ipfs to version 0.3.0

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of ipfs-block-service is breaking the build 🚨

Version 0.8.1 of ipfs-block-service just got published.

Branch Build failing 🚨
Dependency ipfs-block-service
Current Version 0.8.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As ipfs-block-service is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 3 commits .

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

README question

Thanks for the simple example, certainly helps understand what you are trying to do. BUT ... two improvements would help.

1: Could you give an example of code that would result in "dag or ipld-resolver instance", that is far from obvious.
2: You refer to file and file2 in the example, but I think that's a typo since file and file2 aren't defined, and you want "/tmp/foo/bar" instead ?

hash field missing in files but present for directories

Question
Sample code - https://github.com/ipfs/js-ipfs/blob/master/src/core/components/files.js#L87

const exporter = unixfsEngine.exporter
exporter(ipfsPath, self._ipldResolver)

Following list of objects is returned.

[ { path: 'QmTyckmyosocyFaeyL8fJWQLLndx845Lx5GG3MctWfLx45',
    hash: <Buffer 12 20 53 c2 b7 17 b5 86 90 a9 76 bc 7c ef a5 cd 90 4e 05 a9 ba 0d 50 35 8c 64 20 e2 db 85 2d bd f2 26> },
  { content: [Function],
    path: 'QmTyckmyosocyFaeyL8fJWQLLndx845Lx5GG3MctWfLx45/Video.mp4',
    size: 1114073 },
  { content: [Function],
    path: 'QmTyckmyosocyFaeyL8fJWQLLndx845Lx5GG3MctWfLx45/WRAPPER_UNSUPERVISED_DIFFBOT-queries',
    size: 2522 },
  { content: [Function],
    path: 'QmTyckmyosocyFaeyL8fJWQLLndx845Lx5GG3MctWfLx45/cobain.png',
    size: 181581 },
  { content: [Function],
    path: 'QmTyckmyosocyFaeyL8fJWQLLndx845Lx5GG3MctWfLx45/cobain2.png',
    size: 181581 } ]

The hash field is present only for directories (https://github.com/ipfs/js-ipfs-unixfs-engine/blob/master/src/exporter/dir-flat.js#L17) but not for files. Is this intended behaviour?

Happened to look in this code while trying to understand how js-ipfs files cat works as part of investigation to implement js-ipfs files ls command (ipfs/js-ipfs#927).

Adding a hash: node.multihash here https://github.com/ipfs/js-ipfs-unixfs-engine/blob/master/src/exporter/file.js#L43 would do the trick.

An in-range update of ipfs-unixfs is breaking the build 🚨

Version 0.1.10 of ipfs-unixfs just got published.

Branch Build failing 🚨
Dependency ipfs-unixfs
Current Version 0.1.9
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As ipfs-unixfs is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 3 commits .

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

give me priv

@whyrusleeping @jbenet could you add this repo to the Node.js team or give me direct admin access please? I don't know what happened, but even though I created it, I don't have admin.

Make rabin dependency optional

Following on from ipfs/js-ipfs#1498, the newly added rabin dependency should be marked optional as there are currently no pre-built binaries available for Windows so installation fails if you don't have the correct build tools installed to compile the module.

An in-range update of ipld-dag-pb is breaking the build 🚨

Version 0.9.4 of ipld-dag-pb just got published.

Branch Build failing 🚨
Dependency ipld-dag-pb
Current Version 0.9.3
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As ipld-dag-pb is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 7 commits .

  • ba6e7fb chore: release version v0.9.4
  • bda54e7 chore: update contributors
  • 5bf5283 chore: update deps
  • 8123446 Merge pull request #12 from ipld/greenkeeper/update-all
  • 3c71ab8 chore(package): update dependencies
  • 4d5a32b Merge pull request #10 from ipld/feat/standardize-readme
  • be86fac Standardized Readme

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Support for cat'ing and get'ing subtrees.

unixfs-engine needs to support:

  • export('/ipfs/QmHash', ipldResolver)
  • export('/ipfs/QmHash/a', ipldResolver)
  • export('/ipfs/QmHash/b.txt', ipldResolver)
  • export('/ipfs/QmHash/a/b/c.txt', ipldResolver)
  • export('QmHash/a/b/c.txt', ipldResolver)
  • export('QmHash/a/b/c.txt', ipldResolver)
  • It also needs to support a subtree that starts on a non protobuf node, but the path leads to the start of a file that is a protobuf.

This is blocking ipfs/js-ipfs#875

An in-range update of aegir is breaking the build 🚨

Version 9.3.1 of aegir just got published.

Branch Build failing 🚨
Dependency aegir
Current Version 9.3.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As aegir is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Release Notes v9.3.1

Bug Fixes

  • deps: add correct browserify-zlib dependency (78b8cbd)
Commits

The new version differs by 7 commits .

  • a26305b chore: release version v9.3.1
  • ecddaa7 chore: update contributors
  • 5f92b68 Merge pull request #89 from dignifiedquire/greenkeeper-gulp-filter-5.0.0
  • a556f28 Merge pull request #92 from dignifiedquire/greenkeeper-webpack-merge-2.4.0
  • 78b8cbd fix(deps): add correct browserify-zlib dependency
  • cbc1abd chore(package): update webpack-merge to version 2.4.0
  • f178dca chore(package): update gulp-filter to version 5.0.0

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

karma tests fail

Current master fails karma tests consistently for me.

> [email protected] test:browser /home/stephen/Projects/Forks/js-ipfs-data-importing
> karma start karma.conf.js

21 03 2016 14:50:46.822:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
21 03 2016 14:50:46.837:INFO [launcher]: Starting browser Chrome
21 03 2016 14:50:48.082:INFO [Chrome 47.0.2526 (Linux 0.0.0)]: Connected on socket /#yxy1MXqYlTtHP8MdAAAA with id 20921352
21 03 2016 14:50:53.437:WARN [Chrome 47.0.2526 (Linux 0.0.0)]: Disconnected (1 times)

Chrome 47.0.2526 (Linux 0.0.0): Executed 0 of 5 DISCONNECTED (4.58 secs / 0 secs)

cc @nginnever

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.