1. 03 Jul, 2015 1 commit
  2. 27 Jun, 2015 5 commits
  3. 26 Jun, 2015 1 commit
  4. 25 Jun, 2015 1 commit
  5. 23 Jun, 2015 1 commit
  6. 20 Jun, 2015 6 commits
  7. 19 Jun, 2015 1 commit
    • W. Trevor King's avatar
      core/commands/publish: Allow explicit local node ID · e700c02c
      W. Trevor King authored
      Instead of raising "keychains not yet implemented" whenever we have an
      explicit node ID, only raise the error when the given node ID isn't
      the local node.  This allows folks to use the more-general
      explicit-node-ID form in scripts and such now, as long as they use the
      local node name when calling those scripts.
      
      Also add a test for this case, and update the comment for the
      one-argument case to match the current syntax for extracting a
      multihash name string.
      
      License: MIT
      Signed-off-by: default avatarW. Trevor King <wking@tremily.us>
      e700c02c
  8. 18 Jun, 2015 1 commit
  9. 13 Jun, 2015 6 commits
    • Christian Couder's avatar
      install-sharness.sh: update sharness · 0befe2bf
      Christian Couder authored
      License: MIT
      Signed-off-by: default avatarChristian Couder <chriscool@tuxfamily.org>
      0befe2bf
    • Christian Couder's avatar
      sharness/Makefile: force sharness version check · ac9f441f
      Christian Couder authored
      License: MIT
      Signed-off-by: default avatarChristian Couder <chriscool@tuxfamily.org>
      ac9f441f
    • Christian Couder's avatar
      install-sharness.sh: implement updates · 3101df56
      Christian Couder authored
      We want to be able to update Sharness to benefit from
      new features.
      
      License: MIT
      Signed-off-by: default avatarChristian Couder <chriscool@tuxfamily.org>
      3101df56
    • W. Trevor King's avatar
      core/commands/unixfs: Rename 'ipfs unixfs' to 'ipfs file' · 3e6905e8
      W. Trevor King authored
      To be less confusing to newcomers (the IPFS filesystem isn't
      Unix-specific anyway, and it isn't even very POSIX-specific [1,2,3]).
      I'm a bit uncertain about having one name for users and another for
      devs, but the consensus seems to be that mainaining two names is worth
      the trouble [4].  We also kicked around:
      
      * 'files' (plural),
      * 'filesystem' (too long), and
      * 'fs' (redundant after 'ipfs', even though IPFS isn't just about
        filesystems)
      
      on IRC [5 through 6].  I wish there was a more evocative term.  I'm
      never sure where "file" lands on the scale between "filesysytem",
      "everything is a file", "a single chunk of data with an associated
      inode".  But we can't think of anything better.
      
      [1]: https://github.com/ipfs/go-ipfs/pull/1348#issuecomment-110529070
      [2]: https://github.com/ipfs/go-ipfs/pull/1348#issuecomment-110529921
      [3]: https://github.com/ipfs/go-ipfs/pull/1136/files#r29377283
        In my response to this (no longer visibile on GitHub):
      
        On Wed, Apr 29, 2015 at 01:30:04PM -0700, Juan Batiz-Benet wrote:
        > > +package fsnode
        >
        > i think this package should be called `unixfs` as that's the
        > abstraction that this is calling to.
      
        Will do, although I don't see what's especially Unix-y about these
        file nodes.
      
      [4]: https://github.com/ipfs/go-ipfs/pull/1348#issuecomment-110529811
      [5]: https://botbot.me/freenode/ipfs/2015-06-09/?msg=41428456&page=5
      [6]: https://botbot.me/freenode/ipfs/2015-06-09/?msg=41430703&page=5
      
      License: MIT
      Signed-off-by: default avatarW. Trevor King <wking@tremily.us>
      3e6905e8
    • W. Trevor King's avatar
      core/commands/unixfs/ls: Don't recurse into chunked files · 663f37cb
      W. Trevor King authored
      Folks operating at the Unix-filesystem level shouldn't care about that
      level of Merkle-DAG detail.  Before this commit we had:
      
        $ ipfs unixfs ls /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4/busybox
        /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4/busybox:
        ... several lines of empty-string names ...
      
      And with this commit we have:
      
        $ ipfs unixfs ls /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4/busybox
        /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4/busybox
      
      I also reworked the argument-prefixing (object.Argument) in the output
      marshaller to avoid redundancies like:
      
        $ ipfs unixfs ls /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4/busybox
        /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4/busybox:
        /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4/busybox
      
      As a side-effect of this rework, we no longer have the trailing blank
      line that we used to have after the final directory listing.
      
      The new ErrImplementation is like Python's NotImplementedError, and is
      mostly a way to guard against external changes that would need
      associated updates in this code.  For example, once we see something
      that's neither a file nor a directory, we'll have to update the switch
      statement to handle those objects.
      
      License: MIT
      Signed-off-by: default avatarW. Trevor King <wking@tremily.us>
      663f37cb
    • W. Trevor King's avatar
      core/commands/unixfs: Add 'ipfs unixfs ls ...' · 434871ba
      W. Trevor King authored
      This is similar to 'ipfs ls ...', but it:
      
      * Lists file sizes that match the content size:
      
          $ ipfs --encoding=json unixfs ls /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4
          {
            "Objects": [
              {
                "Argument": "/ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4",
                "Links": [
                  {
                    "Name": "busybox",
                    "Hash": "QmPbjmmci73roXf9VijpyQGgRJZthiQfnEetaMRGoGYV5a",
                    "Size": 1947624,
                    "Type": 2
                  }
                ]
              }
            ]
          }
          $ ipfs cat /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4/busybox | wc -c
          1947624
      
        'ipfs ls ...', on the other hand, is using the Merkle-descendant
        size, which also includes fanout links and the typing information
        unixfs objects store in their Data:
      
          $ ipfs --encoding=json ls /ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4
          {
            "Objects": [
              {
                "Hash": "/ipfs/QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4",
                "Links": [
                  {
                    "Name": "busybox",
                    "Hash": "QmPbjmmci73roXf9VijpyQGgRJZthiQfnEetaMRGoGYV5a",
                    "Size": 1948128,
                    "Type": 2
                  }
                ]
              }
            ]
          }
      
      * Has a simpler text output corresponding to POSIX ls [1]:
      
          $ ipfs unixfs ls /ipfs/QmV2FrBtvue5ve7vxbAzKz3mTdWq8wfMNPwYd8d9KHksCF/gentoo/stage3/amd64/2015-04-02
          bin
          dev
          etc
          proc
          run
          sys
          $ ipfs ls /ipfs/QmV2FrBtvue5ve7vxbAzKz3mTdWq8wfMNPwYd8d9KHksCF/gentoo/stage3/amd64/2015-04-02
          QmSRCHG21Sbqm3EJG9aEBo4vS7Fqu86pAjqf99MyCdNxZ4 1948183 bin/
          QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn 4       dev/
          QmUz1Z5jnQEjwr78fiMk5babwjJBDmhN5sx5HvPiTGGGjM 1207    etc/
          QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn 4       proc/
          QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn 4       run/
          QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn 4       sys/
      
        The minimal output allows us to start off with POSIX compliance and
        then add options (which may or may not be POSIX compatible) to
        adjust the output format as we get a better feel for what we need
        ([2] through [3]).
      
      [1]: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ls.html
      [2]: https://botbot.me/freenode/ipfs/2015-06-12/?msg=41724727&page=5
      [3]: https://botbot.me/freenode/ipfs/2015-06-12/?msg=41725146&page=5
      
      License: MIT
      Signed-off-by: default avatarW. Trevor King <wking@tremily.us>
      434871ba
  10. 09 Jun, 2015 1 commit
  11. 08 Jun, 2015 1 commit
  12. 07 Jun, 2015 2 commits
  13. 03 Jun, 2015 3 commits
  14. 31 May, 2015 2 commits
  15. 30 May, 2015 2 commits
  16. 29 May, 2015 1 commit
  17. 28 May, 2015 1 commit
  18. 23 May, 2015 1 commit
  19. 22 May, 2015 1 commit
  20. 21 May, 2015 1 commit
  21. 20 May, 2015 1 commit