Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Support storing UnixFS 1.5 Mode and ModTime #10478

Merged
merged 30 commits into from
Aug 21, 2024
Merged

Commits on Aug 13, 2024

  1. preliminary support for unixfs Mode and ModTime

    This commit introduces initial Mode and ModTime support
    for single filesystem files and webfiles.
    
    The ipfs add options --preserve-mode and --preserve-mtime are
    used to store the original mode and last modified time of the
    file being added, the options --mode, --mtime and --mtime-nsecs
    are used to store custom values.
    
    A custom value of 0 is a no-op.
    
    The preserve flags and custom options are mutually exclusive,
    if both are provided the custom options take precedence.
    
    Majority of of the code was from #7754 written by kstuart
    
    Replaces #7753
    
    Closes #6920
    gammazero committed Aug 13, 2024
    Configuration menu
    Copy the full SHA
    095c18e View commit details
    Browse the repository at this point in the history
  2. mod tidy examples

    gammazero committed Aug 13, 2024
    Configuration menu
    Copy the full SHA
    60f3470 View commit details
    Browse the repository at this point in the history
  3. lint fix

    gammazero committed Aug 13, 2024
    Configuration menu
    Copy the full SHA
    beae0b3 View commit details
    Browse the repository at this point in the history
  4. Update changelog

    gammazero committed Aug 13, 2024
    Configuration menu
    Copy the full SHA
    633f28f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    31b8024 View commit details
    Browse the repository at this point in the history
  6. chore: latest commit

    lidel committed Aug 13, 2024
    Configuration menu
    Copy the full SHA
    b170c90 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    8e0308b View commit details
    Browse the repository at this point in the history
  8. fix(rpc): cli error instead of daemon println

    probably safer to error here, than printing line - if command was
    executed over http it might be printed on the server, or break cli tools
    that expect specific stdout rather than this line
    lidel committed Aug 13, 2024
    Configuration menu
    Copy the full SHA
    4817ac7 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    f0fea76 View commit details
    Browse the repository at this point in the history
  10. test(ci): enable running t0047-add-mode-mtime.sh

    was missing executable flag, so was skipped on ci
    this should re-enable it
    lidel committed Aug 13, 2024
    Configuration menu
    Copy the full SHA
    0c55944 View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2024

  1. Fix RPC decoding

    gammazero committed Aug 14, 2024
    Configuration menu
    Copy the full SHA
    988597a View commit details
    Browse the repository at this point in the history
  2. Use latest boxo PR version

    gammazero committed Aug 14, 2024
    Configuration menu
    Copy the full SHA
    8d75eb2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    97e10db View commit details
    Browse the repository at this point in the history
  4. chore(ci): verbose log of mod tests

    this will show us what values are read by 'stat' and compared by 'test'
    when run on CI (tests fail there, but pass locally, so we need more
    verbose log to debug this)
    lidel committed Aug 14, 2024
    Configuration menu
    Copy the full SHA
    b47e56a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    60fd454 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    2e8afc0 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    0312a99 View commit details
    Browse the repository at this point in the history
  8. refactor(test): isolate outputs from fixtures

    mountdir was used for both in and out, this isolates things
    to ensure we dont mix inputs with outputs
    lidel committed Aug 14, 2024
    Configuration menu
    Copy the full SHA
    0987496 View commit details
    Browse the repository at this point in the history
  9. fix(ci): force umask 022

    turns out some github workers run with umask 002
    which changes the default mode of files created with 'touch'
    
    https://github.com/orgs/community/discussions/40876
    #10478
    lidel committed Aug 14, 2024
    Configuration menu
    Copy the full SHA
    5d23bcb View commit details
    Browse the repository at this point in the history

Commits on Aug 16, 2024

  1. Made mode and mod time work for items within a directory

    Previously it only worked for a single object or top-level directory. This was only for rpc, as used by ipget, as it was already working for normal ipfs get.
    gammazero committed Aug 16, 2024
    Configuration menu
    Copy the full SHA
    d6c6999 View commit details
    Browse the repository at this point in the history

Commits on Aug 19, 2024

  1. Configuration menu
    Copy the full SHA
    7ac1c81 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b549434 View commit details
    Browse the repository at this point in the history
  3. docs: note raw-leaves impact, mark experimental

    just setting expectations
    lidel committed Aug 19, 2024
    Configuration menu
    Copy the full SHA
    577677c View commit details
    Browse the repository at this point in the history
  4. refactor: error in user provided raw-leaves=true

    this follows 'no surprises' rule.
    
    if user provided --raw-leaves=true explicitly, means they care, and we error
    to let them correct parameter manually
    
    if user added file without raw-leaves flag, but we have cidv1 which
    implies raw-leaves,  we assume user does not mind changing implicit
    raw-leaves behavior
    lidel committed Aug 19, 2024
    Configuration menu
    Copy the full SHA
    01e6823 View commit details
    Browse the repository at this point in the history

Commits on Aug 20, 2024

  1. Configuration menu
    Copy the full SHA
    1c3cc4c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    32c6a1c View commit details
    Browse the repository at this point in the history
  3. test: files chmod|touch with cidv1

    switching to version with fix from
    ipfs/boxo#653 (comment)
    and adding tests
    lidel committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    55dad60 View commit details
    Browse the repository at this point in the history
  4. update boxo

    gammazero committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    826aae1 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2235051 View commit details
    Browse the repository at this point in the history
  6. chore: latest boxo main

    commit after merging
    ipfs/boxo#653
    lidel committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    9043c55 View commit details
    Browse the repository at this point in the history