Revision history for Perl extension threads.

2.21 Mon Jan 22 20:09:07 EST 2018
	- Fix to CLANG macros
	- Can return subs from threads.  See docs.
	- Sync from blead

2.16 Sun May  7 22:32:59 2017
	- Fix Clang macro backward compatibility per patch by Andy Grundman
	- Sync from blead

2.15 Sun Feb 26 22:45:33 2017
	- Sync from blead

2.14 Sun Feb 26 21:14:26 2017
	- Sync from blead

2.13 Sun Feb 26 17:59:01 2017
	- Added t/kill3.t to test that dir handles are thread-safe

2.12 Sat Dec 31 17:50:58 2016
	- Fix Clang macro

2.09 Fri May 20 18:58:20 2016
	- Document that detached threads suppress the global destruction phase

2.08 Mon May 16 17:40:57 2016
	- Make t/test.pl compatible with Perls < 5.10 (again)

2.07 Sat Apr 30 21:31:39 2016
	- Sync from blead

2.02 Thu Jun 11 03:02:21 2015
	- Make t/test.pl compatible with Perls < 5.10

2.01 Sun Mar  8 02:32:03 2015
	- Make t/test.pl compatible with Perls < 5.14

1.99 Fri Mar  6 14:21:52 2015
	- Fix for missing PERL_UNUSED_RESULT (for real)

1.98 Thu Mar  5 05:27:34 2015
	- Fix for missing PERL_UNUSED_RESULT

1.97 Tue Mar  3 23:30:07 2015
	- Sync from blead

1.96 Wed Aug 27 22:05:34 2014
	- Sync from blead

1.92 Tue Feb  4 23:35:31 2014
	- Version bump for blead

1.91 Tue Feb  4 21:37:39 2014
	- Sync from blead

1.89 Mon Sep 30 14:49:47 2013
	- POD updates for alarm() sample code and the specifics of _handle()

1.87 Tue May 28 15:11:30 2013
	- Ignore signals to finished threads (threads bug #85140)

1.86 Wed Dec 14 21:12:51 2011
	- Fix for mingw-w64 build due to setjmp difference

1.85 Sat Sep  3 15:02:29 2011
	- Version bump for blead

1.84 Sat Sep  3 02:54:19 2011
	- Sync from blead
	- Document signal catching by thread 0

1.83 Sun Apr 17 23:37:01 2011
	- Sync from blead

1.82 Fri Dec 24 16:21:56 2010
	- Document issue with open dir handles
	- Sync from blead
	- POD update

1.81 Mon Sep 27 17:36:31 2010
	- Make compatible with Perl 5.13.2 and higher

1.79 Fri Sep 24 18:40:59 2010
	- Fix failing tests in t/kill2.t

1.78 Wed Sep 22 17:21:22 2010
	- Handle missing signal handler in thread (threads bug #60460)

1.77 Fri Mar 26 13:36:33 2010
	- Fix race condition in t/threads.t (threads bug #55633)

1.76 Tue Mar  9 14:02:43 EST 2010
	- Handle magic on arg to ->object() (bug #73330)
	- Make ->object(threads->tid()) work like ->self() (bug #73330)
	- Noted memory consumption issue in POD
	- Added reusable thread pool example

1.75 Mon Nov 23 15:32:28 2009
	- Conditionally compile tmps stack cleanup code (bug #70411)
	- Support mingw64
	- Install in 'site' for Perl >= 5.011

1.74 Mon Aug 10 18:53:59 2009
	- Updated DESCRIPTION in POD
	- Added 'no_threads' test
	- Upgraded ppport.h to Devel::PPPort 3.19

1.73 Mon Jun  8 13:17:04 2009
	- Signal handling during thread creation/destruction (John Wright)
	- Upgraded ppport.h to Devel::PPPort 3.17

1.72 Wed Feb 25 20:23:25 2009
	- Correct flags to perl_get_sv() in threads.xs
	- Use watchdog() in 'free' tests
	- Simplified loading modules in tests
	- Upgraded ppport.h to Devel::PPPort 3.16

1.71 Tue Jun 10 17:07:25 2008
	- Upgraded ppport.h to Devel::PPPort 3.14
	- Discourage the use of END blocks in threads
	- LICENSE section in POD
	- 'die' properly if no compiler
	- End all tests with exit(0)

1.69 Fri Feb 22 21:22:22 2008
	- Allow installation on non-threaded Perls

1.68 Wed Feb 20 17:05:21 2008
	- Blead change 33024
	- Upgraded ppport.h to Devel::PPPort 3.13_01

1.67 Tue Sep 18 20:44:40 2007
	- Test fix for Perl < 5.8.7

1.66 Fri Sep 14 18:54:20 2007
	- [perl #45053] Memory corruption with heavy module loading in threads
	- Upgraded ppport.h to Devel::PPPort 3.11_06

1.65 Wed Sep  5 13:19:09 2007
	- Skip spelling test (maintainer only)

1.64 Sun Aug 19 13:59:16 EDT 2007
	- Documented cwd and %ENV issues wrt threads
	- Sundry test suite fixes
	- POD spelling test

1.63 Tue Jun 26 21:15:27 EDT 2007
	- Avoid double-free of the thread function
	- Added reference in POD to perlmod section on thread safety
	- Mention leaked and unreferenced scalar warnings in POD
	- Removed BEGIN in threads.pm
	- Only need to require Config

1.62 Thu May 17 16:10:49 2007
	- Fixed :all import option
	- Fixed problems in test suite

1.61 Wed Mar 21 16:09:15 EDT 2007
	- Fix 'list/array' context - both keywords are supported
	- Upgraded ppport.h to Devel::PPPort 3.11
	- Removed embed.t - unreliable

1.59 Mon Feb  5 16:05:44 EST 2007
	- POD tweaks per Wolfgang Laun

1.58 Wed Jan 24 13:15:34 EST 2007
	- Fix race conditions on thread destruction (Dave Mitchell)
	- Ignore thread return value(s) in void context
	- Check for missing args for 'use threads' options
	- Check that stack size argument is numeric

1.57 Wed Dec 20 13:10:26 EST 2006
	- Fixes courtesy of Michael J. Pomraning
	    Eliminates self joins
	    Eliminates multiple, simultaneous joins on a thread
	    Protects thread->state variable with mutexes
	    Checks that OS join call is successful

1.56 Fri Dec 15 12:18:47 EST 2006
	- More fixes to test suite

1.55 Fri Dec 15 11:24:46 EST 2006
	- Fixes to test suite

1.54 Thu Dec 14 14:12:30 EST 2006
	- Added ->error() method

1.53 Mon Nov 27 12:08:27 EST 2006
	- Fix for a thread cloning bug
	- Fixes to test suite

1.52 Tue Nov 21 11:04:03 EST 2006
	- Fix compiler warnings

1.51 Wed Nov 15 14:25:30 EST 2006
	- Thread destruction fix

1.49 Fri Nov  3 08:33:28 EST 2006
	- Fix a warning message

1.48 Thu Nov  2 12:33:22 EST 2006
	- Fix for segfault during thread destruction

1.47 Mon Oct 30 16:02:53 EST 2006
	- Fix t/thread.t crash under Win32
	- Test multiple embedded Perl support

1.46 Fri Oct 27 19:51:48 EST 2006
	- Support multiple embedded Perls
	- Document workaround for non-threadsafe modules

1.45 Wed Oct 25 14:22:23 EDT 2006
	- Makefile.PL changes for CORE
	- Updated POD tests

1.44 Wed Oct 11 08:55:50 EDT 2006
	- Complain about bad import options
	- Added example threads script

1.43 Fri Oct  6 15:12:07 EDT 2006
	- Stringify threads objects
	- Removed 'typemap' file

1.42 Mon Sep 18 11:17:13 EDT 2006
	- Fixes to tests
	- Move $threads::threads outside of BEGIN block

1.41 Fri Sep  8 19:28:41 EST 2006
	- Race condition fixes

1.39 Tue Aug 30 12:00:00 EDT 2006
	- Signals are safe in 5.8.0
	- Upgraded ppport.h to Devel::PPPort 3.10

1.38 Tue Aug  1 11:48:56 EDT 2006
	- Fixes to tests

1.37 Fri Jul 21 10:51:36 EDT 2006
	- Revert 'exit' behavior with override

1.36 Mon Jul 10 15:58:13 EDT 2006
	- Ignore signals sent to terminated threads

1.35 Mon Jul 10 09:44:47 EDT 2006
	- Upgraded ppport.h to Devel::PPPort 3.09
	- Fix for Borland compiler

1.34 Thu Jul  6 10:29:37 EDT 2006
	- Added ->is_running, ->is_detached, ->is_joinable, ->wantarray
	- Enhanced ->list to return running or joinable threads

1.33 Mon Jul  3 10:11:20 EDT 2006
	- 'exit' inside a thread silently terminates thread only
	- Added 'threads->exit()' (just calls CORE::exit(0))
	- Handle 'die/exit' in thread warn handlers if thread terminates
	    with a warning
	- Give exact accounting of unjoined threads on program termination
	- Fix spurious 'failures' from t/blocks.t
	- Set correct path to threads module in tests that use test.pl

1.32 Mon Jun  5 09:27:53 EDT 2006
	- Fix for HP-UX 10.20 pthread_attr_getstacksize usage
	- Check for threads::shared in tests

1.31 Fri May 19 16:06:42 EDT 2006
	- Explicit thread context

1.29 Thu May 18 16:09:28 EDT 2006
	- Fix warning/core dump from ->create('foo') in BEGIN block

1.28 Wed May 17 14:33:13 EDT 2006
	- Fix for build failure under older Perl versions
	- Skip signalling tests if using unsafe signals

1.27 Thu May 11 11:52:21 EDT 2006
	- Added $thr->kill() method for thread signalling
	- Check for 'C' compiler when building module

1.26 Mon May  8 13:18:29 EDT 2006
	- Fix for Win32 build WRT page size

1.25 Thu May  4 12:34:02 EDT 2006
	- Final sync with blead
	- Lock counters in tests

1.24 Mon Apr 24 10:29:11 EDT 2006
	- assert() that thread 0 is never destructed
	- Determinancy in free.t

1.23 Thu Apr 13 16:57:00 EDT 2006
	- BUG (RE)FIX: Properly free thread's Perl interpreter
	- It's an error to detach a thread twice
	- More XS code cleanups

1.22 Fri Apr  7 21:35:06 EDT 2006
	- Documented maximum stack size error

1.21 Tue Apr  4 13:57:23 EDT 2006
	- Corrected ->_handle() to return a pointer
	- Overload !=

1.19 Sat Mar 25 18:46:02 EST 2006
	- Use 'DEFINE' instead of 'CCFLAGS' in Makefile.PL

1.18 Fri Mar 24 14:21:36 EST 2006
	- ->equal returns 0 on false for backwards compatibility
	- Changed UVs to IVs in XS code (except for TID)
	- Use ->create in tests

1.17 Thu Mar 23 10:31:20 EST 2006
	- Restoration of 'core' build parameters

1.15 Wed Mar 22 13:46:51 EST 2006
	- BUG FIX: Replaced SvPV_nolen_const macro
	- Disabled closure return test again and added note in POD

1.14 Tue Mar 21 08:40:16 EST 2006
	- BUG FIX: Corrected UV formatting string

1.13 Mon Mar 20 15:09:42 EST 2006
	- BUG FIX: Round stack sizes to multiple of page size
	- Use PTHREAD_STACK_MIN if available

1.12 Sun Mar 19 17:34:49 EST 2006
	- Implemented $thr1->equal($thr2) in XS
	- Use $ENV{PERL_CORE} in tests

1.11 Fri Mar 17 13:24:35 EST 2006
	- BUG FIX: Properly free thread's Perl interpreter
	- Removed BUGS POD item regarding returning objects from threads
	- Enabled closure return test in t/problems.t
	- Handle deprecation of :unique in tests
	- XS code cleanup
	- Better POD coverage

1.09 Mon Mar 13 14:14:37 EST 2006
	- Initial (re-)release to CPAN
	- 64-bit TIDs
	- API for thread stack size (courtesy of Dean Arnold)
	- Made threads->list() context sensitive
	- Implemented threads->object($tid) in XS
	- Added $thr->_handle() method


Ancient history:

0.03  Mon Jul  2 12:00:50 CEST 2001
	Fixed bug with threads->self() in main thread, thanks Hackworth!

0.02  Sat Jun 30 09:41:00 GMT 2001
	Fixed bug in threads->self() reported by Hackworth
 
0.01  Tue Apr 24 19:04:12 2001
	Cleaned up documentation

