Timeline


and

06/01/14:

06:30 Ticket #263 (Colon in folder name cause NO SUCH FILE) created by anonymous
When accessing a remote folder with a name such as "Aa:Be", only "Be" is …

02/01/14:

10:22 WikiStart edited by alamaison
Update download button for 0.8.0 (diff)
07:02 WikiStart edited by alamaison
(diff)
06:22 Changeset in swish [2b6c4ab] by alamaison
mastercmakedevelopfeature/vs2015wip_vs_2015

Added missing feature to NEWS.

05:50 Changeset in swish [00475c1] by alamaison
mastercmakedevelopfeature/vs2015wip_vs_2015

Merge branch 'release/0.8.0' into develop

05:49 Changeset in swish [ef5916f] by alamaison
master

Merge branch 'release/0.8.0'

05:46 Changeset in swish [a6754d1] by alamaison
mastercmakedevelopfeature/vs2015wip_vs_2015

Set release date to today.

05:41 Changeset in swish [2c4b34b] by alamaison
mastercmakedevelopfeature/vs2015wip_vs_2015

Limit width of emulated task dialog.

The width of the real task dialog is limited so that it doesn't expand too far if really long lines of text are set, but the emulated version didn't. Our exception debug information generates really long lines (templated exception description) so error messages became almost unusable under pre-Vista versions of Windows.

This commit fixes the problem by bounding the maximum dialog width.

01/01/14:

21:49 Ticket #262 (Connected sessions not hilighted on Windows XP) created by alamaison
The tick icon shown over connected sessions isn't showing in Windows XP.
21:46 Ticket #261 (Disconnection dialog doesn't disappear on Windows XP) created by alamaison
The disconnection progress dialog is supposed to disappear when the …
21:35 Changeset in swish [6b8ddc1] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Make disconnection progress dialog work in Windows XP.

We forgot the use the emulated task dialog for Windows XP. Also disabled assertions in the emulated version that triggered if trying to use the marquee. The marquee works fine in XP.

21:17 Changeset in swish [5fb5acd] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Fix unhandled exceptions in session-closing progress thread.

Exceptions propagating to top of thread call stack causes std::terminate. We weren't catching exceptions in the progress dialog thread. This change fixes that by running the progress dialog in a packaged task, which takes care of catching the exception and transferring it via the future.

11:10 Changeset in swish [9d0c632] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Fix session re-animation.

When sessions die we were trying to insert a freshly-connected one into the pool. However, we were doing this by calling insert(), which doesn't replace existing items. The result was that a new session would be created and authenticated and then destroyed, and then the old session was served up again.

This change fixes the code to use replace() instead of insert() when the session already exists.

30/12/13:

17:58 Changeset in swish [91e1a56] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Start and stop OpenSSH test server using RAII class.

This will help us with future changes where we want OpenSshFixture? to start/stop the server at will.

09:47 Changeset in swish [4a318b1] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Updated NEWS for release 0.8.0.

09:31 Changeset in swish [d9158f1] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Fix missing #include in winapi library.

09:26 Changeset in swish [26668cc] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Bump version number to 0.8.0 for release.

09:18 Changeset in swish [6331bf3] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Merge branch 'feature/update_from_transifex' into develop

06:06 Changeset in swish [6d65156] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Included new Latvian and Catalan translations.

24/12/13:

11:48 Changeset in swish [b0bb6ec] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Updated Hungarian, Japanese and Portuguese translations.

Includes other trivial updates from Transifex.

11:26 Changeset in swish [b3cfdcb] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Merge branch 'master' into develop

11:20 Changeset in swish [0945e4a] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Merge branch 'master' of github.com:alamaison/swish

11:18 Ticket #85 (disconnect connection feature) closed by alamaison
fixed: In [270067f372f7e11766f5abd0fdd0b41c8d8b254a/swish]: […]
11:13 Changeset in swish [4c44ec8] by Alexander Lamaison <github@lammy.co.uk>
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Merge pull request #3 from alamaison/feature/fix_really_kill_session

Feature/fix really kill session

11:09 Changeset in swish [270067f] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Make all uses of a session reserve a ticket first.

In 45982a892ddc5aea23cc7b26a00b4937c3a8a3b8 the session_pool started handing out non-copyable authenticated_sessions references, instead of shared_ptr<authenticated_session>s, so that it can guarantee a session would be disconnected when remove_session is called. As a result, when the user clicks 'Close session', any remaining uses of that session would crash Explorer.

This commit reworks the session management so that all session uses register their interest in the session by reserving it and receiving a ticket for that reservation. As long as they hold the ticket, they may use the session without fear that it will be disconnected. The allow this, the 'Close session' command is changed to wait for all outstanding tickets to be released before disconnecting the session.

A part of the implementation would benefit from future work, but will do for now: While the disconnection is occurring, the progress dialog it displays blocks the window, which prevents the user cancelling the tasks holding tickets by making their UI unresponsive. See #260.

Closes #85

10:29 Ticket #260 (Disconnection progress dialog prevents cancelling other progress) created by alamaison
Once clicking 'Close session', the window blocks until that operation is …
10:23 Changeset in swish [0d1f8a1] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Remove unused include.

09:03 Changeset in swish [a05f659] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Updated to latest version of winapi library.

19/12/13:

13:22 Changeset in swish [09ba475] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Update to official version of Boost.Locale.

Until now we have been using the CPPCMS version of Boost.Locale (v2.92) from before is was officially accepted into Boost. This commit updates the code to use the official version and removes the project needed to compile the other version of Boost.Locale.

11/12/13:

20:26 Changeset in swish [1c56cb0] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Pass provider to non-owning code as a reference.

19:56 Changeset in swish [45982a8] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Give session_pool complete control over the session lifetimes.

Instead of being stored and retrieved using shared_ptr<session_pool>, they are now stored non-copyably. This means when they are removed from the pool the are immediately disconnected.

Part of out effort to allow the user to force-disconnect a connection. See #85.

13:54 Changeset in swish [318061c] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Reduced some of the unnecessary passing around of consumers.

They key was removing it from the CSftpDirectory constructor. They are only used for renaming and authenticating sessions now.

12:18 Changeset in swish [d4dc6c9] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Removed responsibility for connecting from CProvider.

Now this is done outside and an already-connected session is passed to it. Also means most of the methods don't need a consumer any more because they only used it for connecting.

10:51 Changeset in swish [81ad001] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Simplify ProviderFixture?.

The architecture has changed so it's no longer important whether providers are mortal or immortal. Splitting into two files helps prevent VS2005 compiler crashing as we can hide some complexity in the CPP file, which limits its spread.

08:59 Changeset in swish [c09a265] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Revive dead sessions properly.

We lost this once we started fetching sessions from the pool inside the provider. That meant we should have been clearing them from the pool if they died. This wasn't necessary when we were storing providers in the pool because they handled it internally.

07:22 Changeset in swish [f4e54f4] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Stop lazy session creation inside consumer.

The proper way to do it is to lazily-create the provider, not lazily create the session inside the provider. That just overcomplicates the provider's implementation.

10/12/13:

19:18 Changeset in swish [7b7c034] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Removed unused session_from_pidl function.

19:11 Changeset in swish [865677d] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Decoupled session pooling from CProvider.

This is part of getting better control over the session's lifetime, which we need to do to be sure a session is disconnected (see #85).

11:44 Changeset in swish [6706d31] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Testing swapping sessions after connecting filesystem.

11:30 Changeset in swish [4c1917c] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Remove unused (and unwanted) raw_attributes method.

11:23 Changeset in swish [4957fd4] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Make internal state classes non-movable to enforce public class references remaining valid across moves.

Each internal state object is owned by a movable public class. The public class can create other object by passing them non-owning references to the internal state object so, if those object are to remain valid after their creator is moved, the state must remain in the same place. Holding the state in an auto_ptr and making the state non-copyable, non-movable enforces that.

09/12/13:

21:27 Changeset in swish [4ad9ee0] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Make SSH classes non-copyable to better reflect their underlying concepts.

SSH sessions, for instance, are not inherently copyable so making the class that represents the copyable is somewhat misleading. The most important flaw was that a session is not shut down until all _copies_ of the object are destroyed, making it very hard to guarantee a session has been disconnected.

This change fixes that by making the objects non-copyable to their underlying session/channel/handle is destroyed at the same time as the representing object.

21:21 Ticket #252 (connection timeout) closed by alamaison
worksforme
18:55 Changeset in swish [fe88456] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Ensure SSH library classes move correctly.

Includes new unit-tests to exercise this properly.

10:19 Changeset in swish [c2c14ac] by alamaison
mastercmakedevelopfeature/vs2015release/0.8.0wip_vs_2015

Make non-owning functions take state by reference.

Some functions were session, sftp and file handle state as a shared_ptr. This implied that the functions would need shared ownership of the objects, but they only use the objects and return. This commit makes them take references instead, making clear the role of those parameters.

07/12/13:

17:06 Ticket #259 (HRESULT: E_fail Dynamic exception type: class) created by gf
HRESULT: E_fail Dynamic exception type: class commet::com_error …
Note: See TracTimeline for information about the timeline view.