-
Notifications
You must be signed in to change notification settings - Fork 375
fix(core): Refactor copy file#996
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@ ## main #996 +/- ## ========================================== - Coverage 79.54% 79.24% -0.30% ========================================== Files 15 15 Lines 1281 1277 -4 Branches 151 154 +3 ========================================== - Hits 1019 1012 -7 - Misses 218 219 +1 - Partials 44 46 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
??
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we should update this with release-please
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh this is unsolved problem. what happens if we ignore it? i guess uv will fail to install.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it was somehow missed 🤷
🤖 I have created a release *beep* *boop* --- ## [4.15.0-rc.1](testcontainers-v4.14.2...testcontainers-v4.15.0-rc.1) (2026年04月07日) ### Features * **compose:** add structured container inspect information ([#897](#897)) ([58459a1](58459a1)) * **core:** support SSH-based DOCKER_HOST ([#993](#993)) ([d48115d](d48115d)) * **generic:** Reintroducing the generic SQL module ([#892](#892)) ([2ca2321](2ca2321)) * **keycloak:** support for relative path and management relative path ([#982](#982)) ([898faf6](898faf6)) * **mqtt:** MosquittoContainer: Add version 2.1.2 ([#978](#978)) ([af382f7](af382f7)) ### Bug Fixes * **azurite:** make visible to type checkers ([#927](#927)) ([baa5668](baa5668)) * **clickhouse:** add `HttpWaitStrategy` instead of deprecated `wait_container_is_ready` ([#962](#962)) ([8034541](8034541)) * **compose:** return type in get_service_port docstring ([#939](#939)) ([fed65fe](fed65fe)) * **core:** Refactor copy file ([#996](#996)) ([0e0bb24](0e0bb24)) * **core:** wait for ryuk more reliably, improve tests: long_running, filter logs ([#984](#984)) ([b12ae13](b12ae13)) * **generic:** Migrate ServerContainer from deprecated decorator to HttpWaitStrategy ([#971](#971)) ([460b0d8](460b0d8)) * **kafka:** Use wait strategy instead of deprecated wait_for_logs ([#903](#903)) ([87332c1](87332c1)) * **postgres:** add py.typed marker to postgres module ([#849](#849)) ([c8a5bbd](c8a5bbd)) * **qdrant:** migrate Qdrant from deprecated decorator. ([#963](#963)) ([407f798](407f798)) * **redis:** Use wait strategy instead of deprecated decorator ([#914](#914)) ([e25713a](e25713a)) * **sftp:** Avoid using wait_for_logs in module. ([#995](#995)) ([83157eb](83157eb)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: David Ankin <daveankin@gmail.com>
Uh oh!
There was an error while loading. Please reload this page.
Follow-up to #852, cleaning up the copy file feature after it landed.
(Related to #676)
A few things stood out:
_transfer_file_content_into_containerand_transfer_directory_into_containerdid basically the same thing (build a tar, upload it) but were separate methods with duplicated logicassertwas used for error handling in production code, these silently vanish underpython -O, so real failures would just pass through unnoticedcopy_from_containertreated each HTTP chunk fromget_archive()as its own tar file, works fine for small files that fit in one chunk, breaks silently for anything largerDockerContainerwhen it really has nothing to do with container lifecycle, it's just data transformation on aTransferable