summaryrefslogtreecommitdiff
path: root/Changes
blob: 0d0f2afd697d474ffc213db58b114c8d0ed0c62c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
Revision history for Perl extension Net::OpenSSH.

0.83  Jan 22, 2023
        - Skip quoting test for broken AIX csh shell (bug report by
          jrtaisto@gmail.com, #rt133092).
        - New FAQ entry about running interactive sessions.
        - Add new method "default_ssh_configuration" (feature request
          by Diab Jerius, #rt140762).

0.82  Mar 5, 2022
        - Rerelease as stable version

0.81_04  Feb 25, 2022
	- Let rsync use the ssh connection in non-blocking mode (bug
          report and pull-request by monkburger@github).

0.81_03  Apr 18, 2021
        - Improve forward_agent always semantics.

0.81_02  Apr 18, 2021
        - Fix regression, module was broken for perl 5.8.x.

0.81_01  Apr 16, 2021
        - Add forward_agent always feature.

0.80  Sep 28, 2020
	- Add restart method

0.79  Apr 29, 2020
        - Don't clobber $? in disconnect (bug report by Slaven Rezic,
          #rt129350).
        - Silence spurious warnings being generated in _set_error (bug
          report by Jaroslav Reindl, #rt132449).
	- Error handling in _master_check method was broken.
	- Fix documentation error (patch by Martin Barth)

0.78  May 5, 2018
	- Free master pty when the user calls disconnect (bug report
          by Jaroslav Reindl, #rt125240).

0.77  Feb 15, 2018
	- Fix regression broking password authentication (bug report
          by Russell Shingleton).

0.76  Feb 8, 2018
        - Allow passing "file_from" and "from0" options into "rsync"
          (bug report and patch by Slaven Rezic, fixes #rt124357)
        - Document how to manipulate port forwardings.
        - Rename sample directory to examples (fixes #rt122042
          reported by Karen Etheridge).

0.75_02  Jul 18, 2017
        - Add support for "master_pty_force" and "get_master_pty_log"
          features.
        - Add support for "subsystem" feature.

0.75_01  Mar 3, 2017
        - Use an opaque digest as the last part of the multiplexing
          socket path in order to reduce its size (bug report by
          Sombrerero_Loco at PerlMonks).
        - Improve ctl_path/ctl_dir handling catching more errors
          earlier.
        - Add support for stdin_keep_open feature (bug report by
          fwalters at PerlMonks).

0.74  Feb 10, 2017
        - Update list of options accepted by method "sftp" (bug report
          by Mirror).

0.73  Jun 10, 2016
        - Some old perl versions doesn't like Errno constant subs
          being called without parents. Add them.

0.72  Jun 9, 2016
        - Rerelease as stable.

0.71_03  Mar 16, 2016
        - Improve shell detection code.
        - Use a timeout to kill external commands not returning
          control.
        - improve ksh version checking in tests (bug report by jtzako
          via PerlMonks)

0.71_02  Mar 11, 2016
        - Lighten master socket checks in async mode in order to avoid
          blocking and setting custom signal handlers which can
          interfere with event-programming frameworks (bug report by
          Doug Hoyte).

0.71_01  Jan 20, 2016
        - Add entry on the documentation about how to integrate the
          module with event-oriented programming frameworks (bug
          report by Doug Hoyte, #gh17)
        - Use an adaptative delaying algorithm while waiting for the
          multiplexing socket to pop up (bug report by Doug Hoyte,
          #gh17).
        - Improve SIGCHLD handling and interoperability with other
          modules setting custom handlers (bug report by Doug Hoyte,
          #gh16).

0.70  Jan 20, 2016
        - Re-release as stable.

0.69_01  Jan 14, 2016
        - Add fish.pm to MANIFEST (bug reported by Erik Ferguson).

0.68  Dec 20, 2015
        - Rerelease as stable.

0.67_02  Dec 4, 2015
        - Do not croak when a method gets an unknown argument as far
          as its value is undef.

0.67_01  Nov 7, 2015
        - fix internal waitpid usage (bug report by Konrad
          Bucheli, #rt108516)
        - use strict and warnings in Net::OpenSSH::ConnectionCache
          (bug report and fix by Mohammad S Anwar)

0.66  Oct 11, 2015
        - documentation fix (reported by Alex Kok)
	- allow redirecting debug output to a custom file handle

0.65_06  Aug 26, 2015
        - accept IPv6 addresess with zone indexes (bug report by
          Cserbák Márton)
        - some documentation corrections (bug report and patch by
          Florian Schlichting)

0.65_05  Jul 13, 2015
        - improve documentation

0.65_04  Jul 13, 2015
        - add support for Object::Remote framework integration
        - be more explicit on errors about non matching host public
          keys if possible (still unfinished, bug report by Ferenc
          Erki)
        - add support for connecting to remote unix sockets (requires
          patch to OpenSSH)

0.65_03  Jun 18, 2015
        - remove defined-or operator usage in order to remain perl
          5.8.x compatible

0.65_02  Jun 17, 2015
        - accept as targets URIs where the username contains the at
          sign (bug report by Mark Rushing)

0.65_01  Mar 12, 2015
        - add disown_master method
        - add sshfs_mount.pl sample

0.64  Mar 12, 2015
        WARNING: mayor internal changes have been introduced since
                 last stable release!!!
        - Rerelease as stable

0.63_07  Jan 25, 2015
        - umask is not thread safe, avoid it (bug report and fix by
          Shaun Pankau)

0.63_06  Jan 15, 2015
        - DESTROY was overwritting $@

0.63_05  Jan 8, 2015
        WARNING, this is a mayor internal change!!!
        it may introduce regression bugs!!!
        ===============================================================
        - completely revamp internal logic for master monitoring
        ===============================================================
        - add constructor option 'connect'
        - add method 'any'
        - add "contributing code" documentation section
        - update TODO list

0.63_04  Jan 4, 2015
        - remove usage of defined-or operator in order to restore
          support for perl 5.8

0.63_03  Jan 3, 2015
	- remove usage of defined-or operator in order to restore
          support for perl 5.8

0.63_02  Jan 2, 2015
	- make module instalable on Windows and Cygwin
        - fix error on regular expression inside quoting.t (bug report
          by Slaven Rezic)
        - documentation section about security added
        - doc corrections (reported by Gregor Herrmann from Debian)
        - AT&T ksh is broken, don't use it when testing quoting
          functions (bug report by Greg Oldendick)

0.63_01  Jun 14, 2014
        - add clean_cache method to Net::OpenSSH::ConnectionCache (bug
          report by Mithun Ayachit)

0.62  Jun 14, 2014
        - rerelease as stable

0.61_18  May 6, 2014
        - add passwd_prompt feature
        - check for the password not being requested a second time
          (bug report by leschm)
	- more spelling errors corrected

0.61_17  Apr 24, 2014
        - lots of spelling errors corrected
        - support code for master_setpgrp feature was not reseting the
          terminal process group owner on failure (bug report by
          Matthias Hofer)
        - MSWin, MSCmd and Chain quoters where missing from the
          MANIFEST and so not being distributed
        - document MSWin and MSCmd quoters
        - add dummy package Net::OpenSSH::SSH

0.61_16  Apr 6, 2014
        - add work around in quoting.t for Solaris csh 'fixing'
          invalid UTF8 sequences

0.61_15  Apr 2, 2014
        - from OpenSSH version 6.5 UNKNOWN is not a valid
          you-are-not-going-to-use-it-anyway hostname as it tries to
          resolve; now we use 0.0.0.0 instead
        - add support for master_setpgrp and setpgrp features
        - scp does not accept setting bandwidth limit to 0

0.61_14  Oct 30, 2013
        - the way used in tests to detect when they are running in the
          background was broken (bug report by Victor Efimov)

0.61_13  Oct 28, 2013
        - set bath_mode when test are being run on the background
          (bug report by Victor Efimov)
        - disable testing against custom ssh server as it is currently
          broken

0.61_12  Oct 10, 2013
        - rsync_* was not replicating time attributes when copy_attrs
          was set (bug report and fix by SUN Guonian)
        - add chain quoter
        - add quoters for MS Windows (MSWin, MSCmd)
        - extended argument quoting was never triggered
        - stream_encoding option was not accepted by capture2 method
        - glob_quoting option was not accepted by most methods
        - rename quote_style option as remote_shell

0.61_11  Aug 29, 2013
        - rsync_get method relied on a feature not available in old
          but still widely used versions of rsync (bug report by
          laiweiwei)

0.61_10  Jul 29, 2013
        - disable ControlPersist only when OpenSSH version >= 5.6 (bug
          report by Philippe Bruhat)
        - autodetect OpenSSH version during object creation

0.61_09  Jul 19, 2013
        - forcibly disable ControlPersist that may have been set from
          ssh configuration files (bug report by Philippe Bruhat)

0.61_08  Jul 19, 2013
        - fix test errors on perl 5.8

0.61_07  Jul 15, 2013
        - capture methods were not hanling retriable errors correctly
          (bug report by Victor Efimov)

0.61_06  Jul 12, 2013
        - another take into the shell_is_clean sanity check. Now we
          mimic sshd close enough to fool bash and make it behave as
          when really called by sshd

0.61_05  Jul 11, 2013
        - add shell_is_clean sanity check to test scripts to avoid
          false negatives while testing (bug report by Karen
          Etheridge)

0.61_04  Jun 28, 2013
        - print more informative error messages when loading an
          optional module fail
        - remove useless old fix for a nonexistent bug on
          _fileno_dup_over (un-bug report by Tammy Rockvam)

0.61_03  May 10, 2013
        - when testing on AIX don't check mux socket permissions and
          use correct ps arguments (bug report by mwatson)
        - apply doc patch by Florian of Debian project
        - add open3socket method
        - open2socket and open2pty now return the socket and pty
          respectively when called on scalar context
        - methods returning several file objects now croak when called
          on scalar context

0.61_02  Apr 16, 2013
        - add support for multiple shell quoting backends
        - add support for X11 forwarding

0.61_01  Mar 18, 2013
        - remote shell detection code was broken in tests (bug report
          by Neil Bowers)
        - skip tests requiring a bourne shell when the remote shell is
          csh or some derivative as tcsh

0.60  Feb 15, 2013
        - scp_put and rsync_put where not handling correctly the case
          where glob was set but the given file patterns didn't match
          any local file (bug report by Pavel Leity).
        - $SIG{__DIE__} was not always localized before calling eval

0.59  Jan 31, 2013
        - release as stable
        - fix some misspellings

0.58_04  May 2, 2012
        - solve some git merge mistakes

0.58_03  May 1, 2012
        - several misspellings corrected on the docs (bug report by
          Florian Schlichting from Debian - I love these guys!)
        - don't put square brackets around IPv6 addreses when passing
          the hostname to ssh (bug report by Alexey ?)

0.58_02  Apr 16, 2012
        - strict_mode lets pass world-writable directories if they
          have the restricted deletion flag set
        - implement sshfs import and export methods
        - add forward_agent feature
        - do not disable ssh-agent when using password authentication
        - some documentation improvements

0.58_01  Jan 30, 2012
        - add new documentation section about debugging
        - new helper module Net::OpenSSH::OSTracer added
        - ConnectionCache module was missing from MANIFEST
        - correction on default_ssh_opts feature documentation
          (reported by Yann Kerhervé)

0.57  Dec 21, 2011
        - quote equal sign
        - do not quote commas

0.56_01  Dec 8, 2011
        - rsync methods were failing when user was defined (bug report
          by black_fire)
        - detect when the destructor is being called from a different
          thread (bug report by troy99 at PerlMonks)
        - support for Net::OpenSSH::Gateway added

0.55  Dec 6, 2011
        - solve regression from 0.53_03: rsync methods were broken
          because the hostname was not being correctly removed from
          the ssh command passed to rsync (bug report by Mithun
          Ayachit)

0.54  Dec 4, 2011
        - release as stable

0.53_05  Nov 23, 2011
        - scp methods were broken when a user was given (bug report by
          Andrew J. Slezak)
        - add support for verbose option in scp methods
        - implement parse_connections_opts
        - solve bug related to expansion of HOST var when an IPv6
          address was given
        - move FACTORY docs to the right place
        - add FAQ about running remote commands via sudo
        - add sample for Net::Telnet integration
        - add sample for sudo usage reading password from DATA

0.53_04  Sep 2, 2011
        - add default_ssh_opts feature
        - getpwuid may fail, check $home is defined before using it
        - add FAQ entry about MaxSessions limit reached
        - move FACTORY docs to the right place

0.53_03  Aug 18, 2011
        - handling of default_std*_file was broken (bug report and
          patch by Nic Sandfield)
        - keep errors from opening default slave streams
        - add Net::OpenSSH::ConnectionCache package
        - add FACTORY hook
        - place '--' in ssh command after host name
        - add support for die_on_error
        - add support for batch_mode feature
        - typo in sample code corrected (reported by Fernando Sierra)
        - using { stdin_data => [] } was generating warnings

0.53_02  Jul 12, 2011
        - add support for custom login handlers
        - remove SIG{__WARN__} localizations

0.53_01  May 15, 2011
        - quoter and glob_quoter fully rewritten from scratch
        - quoter was not handling "\n" correctly (bug report and work
          around by Skeeve)
        - minor doc improvements

0.52  May 9, 2011
        - release as stable
        - skip bad passwd test when IO::Pty is not available

0.51_12  May 2, 2011
        - require version 2 of the SSH protocol (bug report by Jo
          Rhett)
        - remove harmless "my $foo = ... if ..." bug

0.51_11  Apr 24, 2011
        - encoding handling in sftp method was broken (bug report and
          solution by Todd Rinaldo)
        - sftp method was broken (regression)
        - better support for sharing SSH connections with children
        - more tests
        - add sample for usage with Net::Telnet
        - bad sample in documentation corrected

0.51_10  Mar 29, 2011
        - error status was not reset between calls (regression)
        - remove internal line numbers from error messages
        - encoding errors were not propageted in pipe_in and pipe_out
          methods
        - minor debuging cleanup
        - better messages on bad encoding errors

0.51_09  Mar 29, 2011
        - add support for passphrase protected keys
        - add support for passing the private key path as an explicit
          constructor option
        - bug solved on password handling
        - bug solved in _fileno_dup_over
        - remove redundant _check_master_and_clear_error
        - more tests
        - some doc improvements

0.51_08  Mar 28, 2011
        - pipe_in and pipe_out were not correctly setting error status
          on failure
	- support argument_encoding in pipe_in and pipe_out
        - document how to set StrictHostKeyChecking=no
        - replace @error_prefix arguments by a localized stack
	- use _load_module for Encode loading
	- remove no-encoding hack on _master_ctl 

0.51_07  Mar 22, 2011
        - add encoding support
        - undef $SIG{CHLD} inside blocking methods

0.51_06  Mar 16, 2011
        - make hostname argument to constructor optional when
          external_master is set
        - better error handling in constructor
        - s/reuse_master/external_master/. I never were happy with the
          old option name.
        - some minor doc corrections

0.51_05  Mar 15, 2011
        - implement reuse_master feature
        - do not propagate extra arguments from wait_for_master to
          _wait_for_master
        - accept ssh_opts in make_remote_command

0.51_04  Mar 10, 2011
        - solve "Not enough arguments for grep" bug (reported by Tom
          Wittbrodt)
        - some documentation improvements

0.51_03  Mar 9, 2011
        - error message corrected
        - troubleshooting guide improved
        - add pointer to OpenSSH Wikibook
        - add autosudo.pl sample
        - implement stdintout_dpipe_is_parent feature

0.51_02  Feb 10, 2011
        - add support for test method
        - add support for dpipe feature
        - simplify _wait_for_master code
        - remove spurious warnings generated when control command
          failed to run (bug report by jaiieq from Perlmonks)
	- timeout at object level where being ignored by _waitpid
        - document how to run detached remote processes

0.51_01  Feb 1, 2011
        - add support for kill_ssh_on_timeout feature and better
          timeout handling
        - set ssh option ServerAliveInterval
        - system could return -1 on error instead of false
        - add change_password.pl sample
	- some tests were failing when using csh as the remote shell
          (bug report by Scott Davis)

0.50  Nov 21, 2010
        - shell_quote in t/1_run.t was escaping '_' (bug report by
          Andreas J. König)
	- some typos corrected
        - initial implementation of scp_cat

0.49  Aug 7, 2010
	- do not kill master from forked processes (bug report by
          scotchie at PerlMonks)

0.48  Aug 2, 2010
        - bug quoting escaped scalars as globs solved
	- new faq for "can't change directory"
	- support calling shell_quote and shell_quote_args as class
          methods
	- more tests
	- minor doc corrections

0.47  Apr 13, 2010
	- document how to make it work under Solaris
	- some docs reorganization and improvements

0.46_02  Mar 29, 2010
	- add suport for default_stdin_file, default_stdin_discard and
          similar options
        - add stdinout_socket feature and open2socket shortcut method
        - rename some internal methods to more meaningfull names
        - add open_tunnel and capture_tunnel methods
	- add support for tunnel feature and docs
	- document mod_perl/mod_perl2 integration
	- document not-a-real-file-handle errors
	- some minor doc updates
	- run tests with StrictHostKeyChecking=no
        - disable tty allocation for control commands
        - better debugging for _io3

0.46_01  Mar 25, 2010
        - do not depend on STDIN, STDOUT and STDERR being file
          descriptors 0, 1, and 2 respectively as it happens, for
          instance, under mod_perl (bug report by eserte via
          PerlMonks)
        - use POSIX::dup2 to duplicate file descriptors, instead of
          perl open builtin
        - set stdin_discard when running control commands as it may be
          closed or tied
        - better debugging for waitpid and _io3
        - error in example in documentation corrected (reported by
          Slaven Rezic)

0.45  Feb 17, 2010
	- support for taint mode
	- use better IPv6 regexp
	- bug in glob_quoter incorrectly handling empty strings solved
        - document how $SIG{CHLD} can break some methods and add FAQ
        - some typos corrected
	- update copyright notices

0.44  Jan 26, 2010
	- solve bug on rsync methods not correctly handling
          pass-through options carrying an argument (bug report by
          Daiju Kito)
	- support several verbose levels in rsync methods
	- document spurious warnings that appear when tty => 1 is
          given and stdin is not attached to a tty

0.43  Dec 14, 2009
        - call ssh with -tt instead of -t to force remote tty
          allocation even when stdin is not attached to one locally
          (bug report by Todd E. Rinaldo)

0.42  Dec 5, 2009
        - add FAQ section
	- add commercial support offering
	- add pointer to my wishlist :-)

0.41_03 Nov 16, 2009
	- add testing known_hosts to MANIFEST
	- some bits where missing from 0.40
	- allow also keyboard-interactive authentication when password
          is given (bug report by Todd E. Rinaldo)

0.40  Nov 14, 2009
        - DESTROY was clobbering $@ (bug report by Todd E. Rinaldo)
	- when password authentication is requested add flags to ssh
          master command to disable other auth. options
	- document how to integrate Net::OpenSSH with Expect

0.39  Oct 10, 2009
	- use SIGTERM instead of SIGHUP to kill lazy SSH master
	- on 1_run.t remote commands could be aliased bug (report and
          patch by Danijel Tasov)
	- add methods for external master PID handling
	- add 'all' tag to Net::OpenSSH::Constants
	- check SSH client version from Makefile.PL
	- work around L<Foo::Bar> links in POD being rendered as "the
          Foo::Bar manpage" by some POD backends.

0.38  Sep 25, 2009
        - remove alpha-status warning from docs!
	- add debug support to master killing
        - DESTROY was generating warnings when called before the
          master connection had been established successfully
        - add variable expansion feature
	- minor doc corrections

0.37  Sep 15, 2009
        - add support for stdout_file, stderr_file and stdin_file
          options

0.36  Jul 8, 2009
        - open2pty, open3 and open3pty where not handling transparent
          options for open_ex, and other minor bugs
	- pty handling in open_ex was broken
	- expect sample added

0.35  Jun 30, 2009
	- strict_mode was not working (bug report by wardmw@perlmonks)
	- documentation correction (error reported by Kevin
          Mulholland)
	- Document that the SSH client bundled with your operative
          system may not be good enough (report by Arun Rajamari).
	- Add pointer to SSH::Batch in the docs

0.34  Mar 26, 2009
        - pipe_out was broken (bug report by Matthew Merhar)

0.33  Mar 24, 2009
        - password obfuscation was failing on '%' (bug report by
          Sawyer X)

0.32  Mar 18, 2009
        - async mode was not working in constructor (bug report by
          Niels Larsen)

0.31  Mar 3, 2009
        - password authentication was not working on OS/X (bug report
          by Niels Larsen)
        - module loader was generating warnings on development
          versions (bug report by Todd E. Rinaldo)

0.30  Feb 13, 2009
	- make sftp open_ex based and add support for stderr_fh and
          stderr_discard
	- croak on unaceptable sftp options
	- delete SSH_ASKPASS and SSH_AUTH_SOCK from env. when password
          authentication is requested

0.29  Feb 12, 2009
        - sftp method was broken, regression introduced on 0.11 (bug
          report by Todd E. Rinaldo)

0.28  Feb 11, 2009
	- scp methods were broken, regression introduced on 0.24 (bug
          report by Ryan Schumacher)
	- doc chapter about 3rd party module integration

0.27  Feb 5, 2009
	- better tty feature handling in open_ex, now it defaults to
          ssh default behaviour
	- support for \ and \\ quoting escapes added
	- minor doc corrections
	- document ssh_opts (bug report by Graham Knop)

0.26  Feb 3, 2009
        - docs reorganized and simplified
        - new std(in|out|err)_discard options added
  	- new master_std(out|err)_(fh|discard) options added (feature
          request by Michael Courtney)
        - async support in system

0.25  Feb 2, 2009
        - remove obsolete FAQ

0.24  Feb 2, 2009
        WARNING!!! backward incompatible changes in this release:
        ===============================================================
	- system method now returns true on success and undef otherwise
	- errors OSSH_SLAVE_SCP_FAILED and OSSH_SLAVE_RSYNC_FAILED
          replaced by generic OSSH_SLAVE_CMD_FAILED
	- multiplexing_socket_path method renamed to get_ctl_path
        ===============================================================
	- new make_remote_command method
	- troubleshooting guide added
	- ask for help in Perlmonks!
	- check multiplexing socket before any command
	- more robust waitpid used
	- detect old OpenSSH versions of ssh (bug report and patch by
          David Markham)

0.23  Jan 25, 2009
        - don't quote ~ when globing (bug report by Niels Larsen)
        - IPv6 addresses are not required inside brackets (feature
          request by Ryan Kruse)
	- better IPv6 regexp from Regexp::IPv6
        - some doc corrections

0.22  Jan 22, 2009
        - use better regexp for IPv6 addresses

0.21  Jan 22, 2009
        - recognize IPv6 addresses (bug report by Ryan Kruse)

0.20  Jan 22, 2009
	- default_stderr_fh was wrongly handled (bug report by Sawyer
          X).
	- add getters for user, host and port properties (feature
          request by Niels Larsen)
	- doc errors corrected

0.19  Jan 20, 2009
	- shell_quote_glob method added
	- rsync has its own quoting rules (bug report by Niels Larsen)
	- implement copy_attrs feature for rsync methods (bug report
          by Niels Larsen)

0.18  Jan 20, 2009
	- several documentation corrections and improvements
          contributed by Niels Larsen.
	- add support for open_ex stdout_fh, stderr_fh and
          stderr_to_stdout options to rsync methods (bug report by
          Niels Larsen)
	- example of asynchronous usage of scp added

0.17  Jan 19, 2009
        - localize $SIG{__DIE__}, $SIG{__WARN__} and $@ for evals (bug
          report by Niels Larsen)
        - quote empty arguments correctly
	- add support for new constructor options
          default_std(in|out|err)_fh
	- some doc improvements

0.16  Jan 11, 2009
        - add support for bwlimit, copy_attrs, stderr_fh, stdout_fh
          and stderr_to_stdout to scp methods
	- correct bug in option checking for spawn and open2

0.15  Jan 9, 2009
        - do not escape dots when quoting args
	- some shell quoting tests added
	- better glob quoting
	- informative rsync error messages
	- doc improvements and typos

0.14  Jan 9, 2009
        - add experimental support for rsync file transfers
	- rework scp implementation in order to share as much as
          possible with rsync methods

0.13  Jan 8, 2009
        - when globing in scp_get, quote spaces only
        - add quote_spaces_only feature to _quote_args method
        - some scp_put and scp_get problems solved (bug report and
          patch by Maxim Yemelyanov).
	- _quote_args was returning wrong result in scalar context
          (bug report and solution also by Maxim Yemelyanov).
	- set umask when creating ctl_dir (bug report by Maxim
          Yemelyanov).

0.12  Jan 7, 2009
        - support timeout option on capture methods (bug report by Pete
          Emerson).
        - remove broken perl 5.6.x workarounds

0.11  Dec 24, 2008
        - new shell_quote method
	- add scp_get and scp_put methods
        - add spawn method
        - add support for ssh_opts in several methods
        - _make_call_ex renamed to _make_call
        - _make_call removed
        - fix doc errors

0.10  Dec 17, 2008
	- require OpenSSH > 4.7 for alternative testing aproach
	- use correct ps args when testing on Solaris
	- new mux_socket_path method
	- more tests

0.09  Dec 10, 2008
	- fallback testing method when ssh'ing to localhost is not enabled
	- add support for master_opts constructor argument

0.08  Dec 10, 2008
	- require 5.8.x and remove compatibility hacks for older versions
	- solve bug in open_ex when pty is requested
	- perform sanity checks on child file handles on open_ex

0.07  Dec 9, 2008
        - remove >>& incompatibility for perl 5.6.x
	- in tests, sort "ls" output, as it seems that it can change
          between two consecutive runs in some OSs

0.06  Dec 3, 2008
        - open_ex API redesigned
        - better bad options handling
        - support for async connections
        - shell metacharacter quoting
        - improved debugging
        - improved documentation

0.01  Fri Nov 14 01:02:40 2008
	- original version; created by h2xs 1.23 with options
		-AXn Net::OpenSSH