Skip to content

#1409 - SFTP - #2610

Open
MrHDOLEK wants to merge 4 commits into
flow-php:1.xfrom
MrHDOLEK:#1409
Open

#1409 - SFTP#2610
MrHDOLEK wants to merge 4 commits into
flow-php:1.xfrom
MrHDOLEK:#1409

Conversation

@MrHDOLEK

Copy link
Copy Markdown
Contributor

SFTP filesystem bridge built on phpseclib, so sftp:// paths work anywhere Flow accepts a path — reading, writing in blocks, listing with globs, moving and removing. It also fixes ** in path patterns, which never matched files sitting directly under the pattern's static part, making Path::matches() disagree with NativeLocalFilesystem.

Should be close #1409

Change Log


Added

  • SFTP filesystem bridge (flow-php/filesystem-sftp-bridge) — sftp:// paths usable anywhere Flow accepts a path
  • sftp_client(), sftp_filesystem() and sftp_filesystem_options() DSL

Fixed

  • ** in a path pattern now matches zero directories, in both Path::matches() and partition placeholder extraction

Changed

Removed

Deprecated

Security

@codecov

codecov Bot commented Aug 29, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 94.41624% with 22 lines in your changes missing coverage. Please review.
✅ Project coverage is 86.55%. Comparing base (5b8cfd6) to head (036c090).

Additional details and impacted files
@@             Coverage Diff              @@
##                1.x    #2610      +/-   ##
============================================
+ Coverage     86.51%   86.55%   +0.04%     
- Complexity    23323    24148     +825     
============================================
  Files          1837     1850      +13     
  Lines         72461    72855     +394     
============================================
+ Hits          62688    63062     +374     
- Misses         9773     9793      +20     
Components Coverage Δ
etl 91.48% <ø> (+<0.01%) ⬆️
cli 89.40% <ø> (ø)
lib-array-dot 81.44% <ø> (ø)
lib-azure-sdk 64.44% <ø> (ø)
lib-doctrine-dbal-bulk 93.61% <ø> (ø)
lib-filesystem 86.75% <100.00%> (+0.08%) ⬆️
lib-types 92.26% <ø> (ø)
lib-parquet 70.33% <ø> (ø)
lib-parquet-viewer 82.26% <ø> (ø)
lib-snappy 89.38% <ø> (ø)
lib-dremel 0.00% <ø> (ø)
lib-postgresql 87.74% <ø> (ø)
lib-telemetry 86.66% <ø> (ø)
bridge-filesystem-async-aws 92.74% <ø> (ø)
bridge-filesystem-azure 90.45% <ø> (ø)
bridge-filesystem-sftp 94.35% <94.35%> (∅)
bridge-monolog-http 96.82% <ø> (ø)
bridge-monolog-telemetry 94.79% <ø> (ø)
bridge-openapi-specification 92.07% <ø> (ø)
symfony-http-foundation 78.57% <ø> (ø)
bridge-psr18-telemetry 100.00% <ø> (ø)
bridge-psr3-telemetry 98.95% <ø> (ø)
bridge-psr7-telemetry 100.00% <ø> (ø)
bridge-telemetry-otlp 90.11% <ø> (ø)
bridge-symfony-http-foundation-telemetry 92.85% <ø> (ø)
bridge-symfony-filesystem-bundle 91.85% <ø> (ø)
bridge-symfony-filesystem-cache 98.18% <ø> (ø)
bridge-symfony-postgresql-bundle 93.57% <ø> (ø)
bridge-symfony-postgresql-cache 94.41% <ø> (ø)
bridge-symfony-postgresql-messenger 98.80% <ø> (ø)
bridge-symfony-postgresql-session 93.65% <ø> (ø)
bridge-symfony-telemetry-bundle 90.72% <ø> (ø)
adapter-chartjs 84.05% <ø> (ø)
adapter-csv 89.46% <ø> (ø)
adapter-doctrine 91.10% <ø> (ø)
adapter-google-sheet 91.56% <ø> (ø)
adapter-http 75.79% <ø> (ø)
adapter-json 87.65% <ø> (ø)
adapter-logger 50.00% <ø> (ø)
adapter-parquet 90.40% <ø> (ø)
adapter-text 92.59% <ø> (ø)
adapter-xml 84.45% <ø> (ø)
adapter-avro 0.00% <ø> (ø)
adapter-excel 87.20% <ø> (ø)
adapter-postgresql 90.98% <ø> (ø)
adapter-seal 83.61% <ø> (ø)
bridge-phpunit-postgresql 75.30% <ø> (ø)
bridge-phpunit-telemetry 87.36% <ø> (ø)
bridge-phpstan-types 0.00% <ø> (ø)
bridge-postgresql-valinor 100.00% <ø> (ø)
🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add SSH/SFTP support into filesystem

1 participant