openssh_sftp_client/changelog.rs
1#[allow(unused_imports)]
2use crate::*;
3
4#[doc(hidden)]
5pub mod unreleased {}
6
7/// # Added
8/// - `Permissions::from` allows converting a u16 octet to a Permissions struct
9/// - Allows chain call for Permissions::set_* methods
10pub mod v_0_14_3 {}
11
12/// # Added
13/// - [`Sftp::from_session_with_check_connection`] for checking connection
14pub mod v_0_14_2 {}
15
16/// # Changed
17/// - Bump dependency [`openssh-sftp-error`] to v0.4.0.
18pub mod v_0_14_1 {}
19
20/// # Changed
21/// - Bump optional dependency [`openssh`] to v0.10.0.
22pub mod v_0_14_0 {}
23
24/// # Changed
25/// - Set [`SftpOptions::tokio_compat_file_write_limit`] to 640KB by default.
26pub mod v_0_13_10 {}
27
28/// # Fixed
29/// Invalid response id after closing file caused by the change in v0.13.8
30pub mod v_0_13_9 {}
31
32/// # Fixed
33/// `Drop` implementation for `OwnedHandle` to make sure they never panic
34/// if tokio runtime is not avilable.
35pub mod v_0_13_8 {}
36
37/// # Fixed
38///
39/// `Drop` implementation to make sure they never panic
40/// if tokio runtime is not avilable.
41///
42/// - [`file::TokioCompatFile`]
43/// - [`fs::ReadDir`]
44pub mod v_0_13_7 {}
45
46/// ## Added
47/// - Add new option [`SftpOptions::tokio_compat_file_write_limit()`] to set write buffer limit
48/// for [`file::TokioCompatFile`].
49pub mod v_0_13_6 {}
50
51/// ## Fixed
52/// - Fixed #80 [`file::TokioCompatFile`]: Incorrect behavior about `AsyncSeek`
53/// - Fixed [`file::TokioCompatFile`]: leave error of exceeding buffer len in `consume` to handle by `BytesMut`
54/// - Fixed [`file::TokioCompatFile`]: Implement `PinnedDrop` to poll read and write futures to end,
55/// otherwise it would drop the internal request ids too early, causing read task to fail
56/// when they should not fail.
57/// - Fixed [`fs::ReadDir`]: Implement `PinnedDrop` to poll future stored internally,
58/// otherwise it would drop the internal request ids too early, causing read task to fail
59/// when they should not fail.
60/// ## Added
61/// - Add new fn [`Sftp::support_expand_path`] to check if the server supports expand-path extension
62/// - Add new fn [`Sftp::support_fsync`] to check if the server supports fsync extension
63/// - Add new fn [`Sftp::support_hardlink`] to check if the server supports hardlink extension
64/// - Add new fn [`Sftp::support_posix_rename`] to check if the server supports posix-rename extension
65/// - Add new fn [`Sftp::support_copy`] to check if the server supports copy extension
66pub mod v_0_13_5 {}
67
68/// ## Improved
69/// - Fix: change the drop of `OwnedHandle` to wait for the close request in order to
70/// avoid invalid response id after closing file
71/// - Add log for droping OwnedHandle
72///
73/// ## Other changes
74/// - Add msrv 1.64 in `Cargo.toml`
75/// - Bump `edition` to 2021 in `Cargo.toml`
76pub mod v_0_13_4 {}
77
78/// ## Improved
79/// - If `Sftp` is created using `Sftp::from_session`, then dropping it would
80/// also drop the `openssh::RemoteChild` and `openssh::Session` immediately
81/// after sftp graceful shutdown is done to prevent any leak.
82pub mod v_0_13_3 {}
83
84/// ## Added
85/// - `OpensshSession`, which is enabled by feature `openssh`
86/// - `SftpAuxiliaryData::ArcedOpensshSession`, which is enabled by feature `openssh`
87/// - `Sftp::from_session`, which is enabled by feature `openssh`
88/// - Logging support, enabled by feature `tracing`
89///
90/// ## Improved
91/// - Keep waiting on other tasks on failure in [`Sftp::close`]
92/// to collect as much information about the failure as possible.
93/// - Add [`error::RecursiveError3`] for reting 3 errs in [`Sftp::close`]
94pub mod v_0_13_2 {}
95
96/// ## Added
97/// - [`SftpAuxiliaryData::PinnedFuture`]
98pub mod v_0_13_1 {}
99
100/// ## Fixed
101/// - Fixed #62 [`fs::ReadDir`]: Return all entries instead of just a subset.
102///
103/// ## Added
104/// - [`file::File::as_mut_file`]
105/// - [`SftpAuxiliaryData`]
106/// - [`Sftp::new_with_auxiliary`]
107///
108/// ## Changed
109/// - Remove lifetime from [`file::OpenOptions`].
110/// - Remove lifetime from [`file::File`].
111/// - Remove lifetime from [`file::TokioCompatFile`].
112/// - Remove lifetime from [`fs::Fs`].
113/// - Remove lifetime from [`fs::Dir`].
114/// - Remove lifetime from [`fs::ReadDir`].
115/// - Remove lifetime `'s` from [`fs::DirBuilder`].
116/// - [`fs::ReadDir`] now implements `futures_core::{Stream, FusedStream}`
117/// instead of the {iterator, slice}-based interface.
118/// - Remove `file::File::sftp`.
119/// - Remove `file::TokioCompatFile::close`.
120/// - [`file::TokioCompatFile::fill_buf`] now takes `self: Pin<&mut Self>`
121/// instead of `&mut self`.
122/// - [`file::TokioCompatFile::read_into_buffer`] now takes
123/// `self: Pin<&mut Self>` instead of `&mut self`.
124///
125/// ## Other changes
126/// - Clarify [`file::File::read`].
127/// - Clarify [`file::File::write`].
128/// - Clarify [`file::File::write_vectorized`].
129/// - Clarify [`file::File::write_zero_copy`].
130pub mod v_0_13_0 {}
131
132/// ## Fixed
133/// - Fix `read_task`: Order shutdown of flush_task on err/panic
134pub mod v_0_12_2 {}
135
136/// ## Fixed
137/// - `Sftp::new` now returns future that implemens `Send`
138pub mod v_0_12_1 {}
139
140/// ## Changed
141/// - Ensure stable api: Create newtype wrapper of UnixTimeStamp (#53)
142///
143/// ## Other
144/// - Bump [`openssh-sftp-error`] to v0.3.0
145pub mod v_0_12_0 {}
146
147/// ## Other change
148///
149/// Bump dep
150/// - `ssh_format` to v0.13.0
151/// - `openssh_sftp_protocol` to v0.22.0
152/// - `openssh_sftp_error` to v0.2.0
153/// - `openssh_sftp_client_lowlevel` to v0.3.0
154pub mod v_0_11_3 {}
155
156/// ## Other change
157/// - Bump `openssh_sftp_client_lowlevel` version and optimize
158/// write buffer implementation.
159/// - Optimize: Reduce monomorphization
160/// - Optimize latency: `create_flush_task` first in `Sftp::new`
161/// and write the hello msg ASAP.
162pub mod v_0_11_2 {}
163
164/// Nothing has changed from [`v_0_11_0_rc_3`].
165///
166/// ## Other changes
167/// - Dependency [`bytes`] bump to v1.2.0 for its optimizations.
168pub mod v_0_11_1 {}
169
170/// Nothing has changed from [`v_0_11_0_rc_3`].
171pub mod v_0_11_0 {}
172
173/// ## Changed
174/// - Rename `SftpOptions::write_end_buffer_size` to
175/// [`SftpOptions::requests_buffer_size`] and improve its
176/// documentation.
177/// - Rename `SftpOptions::read_end_buffer_size` to
178/// [`SftpOptions::responses_buffer_size`] and improve its
179/// documentation.
180///
181/// ## Removed
182/// - `SftpOptions::max_read_len`
183/// - `SftpOptions::max_write_len`
184pub mod v_0_11_0_rc_3 {}
185
186/// ## Fixed
187/// - Changelog of v0.11.0-rc.1
188///
189/// ## Added
190/// - [`file::File::copy_all_to`] to copy until EOF.
191/// This function is extracted from the old `copy_to`
192/// function.
193/// - [`file::TokioCompatFile::capacity`]
194/// - [`file::TokioCompatFile::reserve`]
195/// - [`file::TokioCompatFile::shrink_to`]
196///
197/// ## Changed
198/// - [`file::File::copy_to`] now takes [`std::num::NonZeroU64`]
199/// instead of `u64`.
200/// - [`file::TokioCompatFile::with_capacity`] does not take
201/// `max_buffer_len` anymore.
202///
203/// ## Removed
204/// - `file::DEFAULT_MAX_BUFLEN`
205pub mod v_0_11_0_rc_2 {}
206
207/// ## Added
208/// - `SftpOptions::write_end_buffer_size`
209/// - `SftpOptions::read_end_buffer_size`
210///
211/// ## Changed
212/// - All types now does not have generic parameter `W`
213/// except for `Sftp::new`
214///
215/// ## Removed
216/// - Unused re-export `CancellationToken`.
217/// - Backward compatibility alias `file::TokioCompactFile`.
218/// - `Sftp::try_flush`
219/// - `Sftp::flush`
220/// - `file::File::max_write_len`
221/// - `file::File::max_read_len`
222/// - `file::File::max_buffered_write`
223///
224/// ## Moved
225/// - `lowlevel` is now moved to be another crate [openssh_sftp_client_lowlevel].
226/// - All items in `highlevel` is now moved into root.
227pub mod v_0_11_0_rc_1 {}
228
229/// ## Fixed
230/// - Changelog of v0.10.2
231pub mod v_0_10_3 {}
232
233/// ## Added
234/// - Async fn `lowlevel::WriteEnd::send_copy_data_request`
235/// - Async fn `highlevel::file::File::copy_to`
236pub mod v_0_10_2 {}
237
238/// ## Fixed
239/// - Changelog of v0.10.0
240/// - Changelog of v0.9.0
241pub mod v0_10_1 {}
242
243/// ## Added
244/// - Export mod `highlevel::file`
245/// - Export mod `highlevel::fs`
246/// - Export mod `highlevel::metadata`
247///
248/// ## Changed
249/// - `lowlevel::WriteEnd` now requires `W: AsyncWrite + Unpin`
250/// - `lowlevel::SharedData` now requires `W: AsyncWrite + Unpin`
251/// - `lowlevel::ReadEnd` now requires `W: AsyncWrite + Unpin`
252/// - `lowlevel::connect` now requires `W: AsyncWrite + Unpin`
253/// - `lowlevel::connect_with_auxiliary` now requires `W: AsyncWrite + Unpin`
254/// - All types in `highlevel` now requires `W: AsyncWrite + Unpin`
255/// except for
256/// - the re-exported type `highlevel::CancellationToken`
257/// - `highlevel::SftpOptions`
258/// - `highlevel::fs::DirEntry`
259/// - `highlevel::fs::ReadDir`
260///
261/// ## Removed
262/// - Trait `Writer`.
263/// - `lowlevel::WriteEnd::send_write_request_direct_atomic`
264/// - `lowlevel::WriteEnd::send_write_request_direct_atomic_vectored`
265/// - `lowlevel::WriteEnd::send_write_request_direct_atomic_vectored2`
266/// - Export of `highlevel::file::TokioCompactFile`
267/// - Export of `highlevel::file::TokioCompatFile`
268/// - Export of `highlevel::file::DEFAULT_BUFLEN`
269/// - Export of `highlevel::file::DEFAULT_MAX_BUFLEN`
270/// - Export of `highlevel::file::File`
271/// - Export of `highlevel::file::OpenOptions`
272/// - Export of `highlevel::fs::DirEntry`
273/// - Export of `highlevel::fs::ReadDir`
274/// - Export of `highlevel::fs::Dir`
275/// - Export of `highlevel::fs::DirBuilder`
276/// - Export of `highlevel::fs::Fs`
277/// - Export of `highlevel::metadata::FileType`
278/// - Export of `highlevel::metadata::MetaData`
279/// - Export of `highlevel::metadata::MetaDataBuilder`
280/// - Export of `highlevel::metadata::Permissions`
281pub mod v0_10_0 {}
282
283/// ## Removed
284/// - `highlevel::Sftp::get_cancellation_token`
285/// - `highlevel::Sftp::max_write_len`
286/// - `highlevel::Sftp::max_read_len`
287/// - `highlevel::Sftp::max_buffered_write`
288pub mod v_0_9_0 {}
289
290/// ## Added
291/// - Type `highlevel::TokioCompatFile` to Replace
292/// `highlevel::TokioCompactFile`.
293pub mod v0_8_3 {}
294
295/// ## Fixed
296/// - Fix possible panic in `highlevel::max_atomic_write_len`
297pub mod v0_8_2 {}
298
299/// ## Added
300/// - Reexport `highlevel::CancellationToken`.
301pub mod v0_8_1 {}
302
303/// ## Added
304/// - Associated function `highlevel::FileType::is_fifo`.
305/// - Associated function `highlevel::FileType::is_socket`.
306/// - Associated function `highlevel::FileType::is_block_device`.
307/// - Associated function `highlevel::FileType::is_char_device`.
308/// - Trait `Writer`.
309///
310/// ## Changed
311/// - Replace all use of `tokio_pipe::PipeRead` with generic bound
312/// `tokio::io::AsyncRead` + `Unpin`.
313/// - Replace all use of `tokio_pipe::PipeWrite` with generic bound
314/// `Writer`.
315/// - Replace constant `highlevel::MAX_ATOMIC_WRITE_LEN` with
316/// non-`const` function `highlevel::max_atomic_write_len`.
317/// - Associated function `highlevel::Sftp::fs` now only takes `&self`
318/// as parameter.
319///
320/// ## Removed
321/// - Trait `std::os::unix::fs::FileTypeExt` implementation for
322/// `highlevel::FileType`.
323/// - Trait `std::os::unix::fs::PermissionsExt` implementation for
324/// `highlevel::Permissions`.
325/// - Associated function `lowlevel::WriteEnd::send_write_request_direct`.
326/// - Associated function
327/// `lowlevel::WriteEnd::send_write_request_direct_vectored`.
328pub mod v0_8_0 {}