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

Preserve symbolic links from sync clients #41321

Open
wants to merge 51 commits into
base: master
Choose a base branch
from

Commits on Jan 21, 2024

  1. feature(storage): Allow unlink operation on symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    7b1ee27 View commit details
    Browse the repository at this point in the history
  2. feature(storage): Add symlink operation to local storage

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    1c75b70 View commit details
    Browse the repository at this point in the history
  3. feature(dav/connector): Add createSymlink to Directory node

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    cf75521 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b9ab528 View commit details
    Browse the repository at this point in the history
  5. feature(dav/bulk): Add symlink upload to BulkUploadPlugin

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    af70873 View commit details
    Browse the repository at this point in the history
  6. feature(files): Add file type TYPE_SYMLINK to FileInfo

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    4ee5062 View commit details
    Browse the repository at this point in the history
  7. feature(storage): Add symlink, is_link and readlink to IStorage, Wrap…

    …per and Common storage and View
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    97d3dc5 View commit details
    Browse the repository at this point in the history
  8. feature(dav/file): Add readlink method

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    5cc9108 View commit details
    Browse the repository at this point in the history
  9. feature(storage): Allow deletion of symlinks with remove method in Co…

    …mmon storage
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    23ee19a View commit details
    Browse the repository at this point in the history
  10. feature(storage): Add default implementation for readlink and symlink…

    … to Common storage
    
    This default implementation does always throw, but it will ensure that
    storages which cannot support symlinks or plugins won't break with the
    addition of the symlink operations.
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    da98a9f View commit details
    Browse the repository at this point in the history
  11. feature(fileinfo): Add symlink mimetype

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    1b31d59 View commit details
    Browse the repository at this point in the history
  12. Add couple of TODOs, mostly related to symlink mimetype

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    0ef014a View commit details
    Browse the repository at this point in the history
  13. feature(dav/connector): Draft for handling GET request for symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    3274c8e View commit details
    Browse the repository at this point in the history
  14. Revert commits for storing actual symlinks on server

    This commits reverts the following commits:
    * 0a86ef7
    * af24f85
    * 3cbe098
    * 05073be
    * d36295e
    * eb76168
    * d0f1a3e
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    3b02d61 View commit details
    Browse the repository at this point in the history
  15. First draft for metadata-only symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    88f510e View commit details
    Browse the repository at this point in the history
  16. Initial draft for PROPFIND for symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    b537727 View commit details
    Browse the repository at this point in the history
  17. Revert "Initial draft for PROPFIND for symlinks"

    This reverts commit 9d681dd.
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    7f18076 View commit details
    Browse the repository at this point in the history
  18. Draft for symlink mimetype on regular file for symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    4f7ae29 View commit details
    Browse the repository at this point in the history
  19. SymlinkManager: Initial implementation for symlink database management

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    7348605 View commit details
    Browse the repository at this point in the history
  20. SymlinkManager: Introduce symlink table via database migration

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    15f6ac6 View commit details
    Browse the repository at this point in the history
  21. SymlinkManager: Accept FileInfo type and escape path for purgeSymlink

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    d182a3a View commit details
    Browse the repository at this point in the history
  22. BulkUpload: Use SymlinkManager to create symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    4e8748f View commit details
    Browse the repository at this point in the history
  23. FilesPlugin: Use SymlinkManager to check for symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    edf4f95 View commit details
    Browse the repository at this point in the history
  24. FileInfo: Remove unused TYPE_SYMLINK

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    8127b70 View commit details
    Browse the repository at this point in the history
  25. SymlinkPlugin: Initialize SymlinkPlugin with basic implementation

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    8b21c07 View commit details
    Browse the repository at this point in the history
  26. Server: Register SymlinkPlugin

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    c6e2e8c View commit details
    Browse the repository at this point in the history
  27. ChunkingV2Plugin: Remove symlink handling

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    47ee7ba View commit details
    Browse the repository at this point in the history
  28. SymlinkPlugin: Pass correct object to symlinkManager for httpDelete

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    641eac7 View commit details
    Browse the repository at this point in the history
  29. migrations: Rename symlink migration to correct format

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    61faf44 View commit details
    Browse the repository at this point in the history
  30. SymlinkManager: Various small but important fixes

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    8d7dcf6 View commit details
    Browse the repository at this point in the history
  31. Revert now unnecessary changes

    This reverts the following commits:
    * fb0045d
    * 9a557bf
    * 50216ef
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    6dc1aa6 View commit details
    Browse the repository at this point in the history
  32. SymlinkPlugin/FilesPlugin: Fix httpGet and httpDelete for symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    e0d5164 View commit details
    Browse the repository at this point in the history
  33. migrations: Remove last_updated column from symlinks table

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    eac2b0a View commit details
    Browse the repository at this point in the history
  34. SymlinkManager: Remove last_updated from operations

    This information is not required in the symlinks table since it is
    already stored in the oc_filecache table for the regular file which
    represents the symlink in the filesystem.
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    2eb1252 View commit details
    Browse the repository at this point in the history
  35. FilesPlugin: Send Last-Modified and ETag header for GET response

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    ed77937 View commit details
    Browse the repository at this point in the history
  36. SymlinkPlugin: Handle move operation for symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    7bf32f3 View commit details
    Browse the repository at this point in the history
  37. SymlinkPlugin: Fix PUT for regular file at previous symlink location

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    b480d40 View commit details
    Browse the repository at this point in the history
  38. Configuration menu
    Copy the full SHA
    a09a196 View commit details
    Browse the repository at this point in the history
  39. migrations: Remove default for storage column

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    90a75b5 View commit details
    Browse the repository at this point in the history
  40. SymlinkManager: Use numeric_id for storage in database

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    b8051ce View commit details
    Browse the repository at this point in the history
  41. SymlinkManager: Reduce code duplication for numeric_id and use intern…

    …alPath
    
    The user can already be identified using the storage id.
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    24cea5d View commit details
    Browse the repository at this point in the history
  42. SymlinkPlugin: Fix update of symlinks for move operation

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    8a9a48c View commit details
    Browse the repository at this point in the history
  43. BulkUploadPlugin: Cleanup for "feature(dav/bulk): Add symlink upload …

    …to BulkUploadPlugin"
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    c44b5af View commit details
    Browse the repository at this point in the history
  44. SymlinkManager: Move to correct namespace OC\Files and update all Plu…

    …gins
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    0e1fbed View commit details
    Browse the repository at this point in the history
  45. composer: Update namespace of SymlinkPlugin in autoload files

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    22324eb View commit details
    Browse the repository at this point in the history
  46. Connector\Sabre\File: Add string as possible parameter type to put

    The base interface IFile allows this type and it is explicitly handled
    in the function definition.
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    b5c1828 View commit details
    Browse the repository at this point in the history
  47. FilesPlugin: Fix resourcetype of symlinks for PROPFIND

    This fixes the commit
    "Draft for symlink mimetype on regular file for symlinks"
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    6f60e7e View commit details
    Browse the repository at this point in the history
  48. FilesPlugin/SymlinkPlugin/SymlinkManager: Fix some style guide violat…

    …ions and warnings
    
    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    47d3eae View commit details
    Browse the repository at this point in the history
  49. PreviewController: Indicate symlinks via preview icon in web ui

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    65b5796 View commit details
    Browse the repository at this point in the history
  50. SymlinkPlugin: Fix copying of symlinks

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    4fac7d8 View commit details
    Browse the repository at this point in the history
  51. FilesPlugin: Fix linter issue

    Signed-off-by: Tamino Bauknecht <[email protected]>
    taminob committed Jan 21, 2024
    Configuration menu
    Copy the full SHA
    6666955 View commit details
    Browse the repository at this point in the history