Revision history for Perl extension UV
2.000 2021-07-28
- Also add repository bugtracker URL to META files
- Document the `$callback` argument to `$loop->getnameinfo()`
- Add a TODO section to the documentation, outlining remaining libuv
functionallity that could still be handled, but isn't currently
1.912 2021-07-25
- Documentation adjustment preparing for 2.000 release
- Misc small internal fixes to Build.PL and git metadata
- Bugfix the github CI workflows
- Add repository metadata to META files
- Regenerated README.md
- Back-compat to perl 5.14; declare minimum required perl version
1.911 2021-07-16
- Fix an `#if` that should have been an `#ifdef`
- Fix skip message in t/12-udp-open.t
1.910 2021-07-16
- Don't attempt to support UV::TCP->open or UV::UDP->open on Windows,
because we'd need WSA_FLAG_OVERLAPPED but Perl doesn't set it on sockets
it creates (related to #38).
1.909 2021-05-26
- Avoid use-after-free bug when ->close'ing newly listened client
connections
- Account for different errno value on MSWin32 in unit test
1.908 2021-05-18
- Don't attempt to unlink $path at END time if the entire test was skipped
- A better implementation of pipepair for testing that might work on
MSWin32
1.907 2021-04-09
- Various small fixes from @Corion to improve unit testing on MSWin32
1.906 2021-03-25
- Don't worry about `AI_V4MAPPED` on systems which don't provide it
- Removed now-dead `cpanfile`
1.905 TRIAL 2021-03-23
- Various blind stabbings-in-the-dark that might be MSWin32 bugfixes
+ Export SIG* constants because libuv emulates a few
+ Handle CRLF linefeeds in Process tests
+ Maybe we need to _MAKE_SOCK() when calling uv_tcp_open() and
uv_udp_open()
+ Skip some AF_UNIX tests that won't work there
- Return hrtime() as an NV on platforms without 64bit int (thanks ilmari)
1.904 TRIAL 2021-03-19
- Use cmp_ok() on unreliably-failing timer test so when it fails we at
least get a log of the numbers
- No need for _cleanup_loop() in unit tests
- Remove UV::Loop->walk and related code because it isn't implemented
and can't easily be made to work
1.903 TRIAL 2021-01-19
- Switch build system to Module::Build::Using::PkgConfig to see if the
late-alien handling there works better for users to install
1.902 2021-01-19
- Adjust Makefile.PL for better pkg-config or Alien handling
1.900, 1.901
- Totally rewritten XS logic by Paul "LeoNerd" Evans
1.000009 2019-02-07
- Improve the way we create constants. (xenu: pr/27)
- Update the build to use @Starter v3
- Automate version numbers using DZil rather than incrementing by hand
- Generate GitHub Flavored Markdown for the README now
- Expand testing to more versions of Perl
1.000008 2018-04-21
- Fix bug in call to Newx(). (Jim Keenan: issues/24)
- Update UV::Loop documentation to better cover the close method.
- No longer need Devel::GlobalDestruction.
- First real release.
1.000007 2018-04-20 (TRIAL)
- Fixed typo in test suite
- Added in Test::CleanNamespaces
- Consolidate down to one BOOT block
- Fix a bug when removing structs from objects
- Add some debug statements when built with PERL_UV_DEBUG environment var
set
- Loop destructor should just call ->close()
- Simplify the loop singleton
1.000006 2018-04-16 (TRIAL)
- Removed is_closing()
- Removed is_active()
- Removed loop_configure()
- Removed loop_alive()
- Removed reference to UV::Poll->new_socket() as that's all done in the
standard ->new() constructor now.
- Updated documentation for the Handle classes to better indicate their
use.
- Removed extra library detection for windows as this is now done in
Alien::libuv
- Bumped the requirement of Alien::libuv to 1.000
- Removed some bad Poll tests
- Add try/catch block for all Handle start methods
- Removed Moo requirements
1.000005 2018-01-28 (TRIAL)
- Update 02-loop-alive.t to more closely resemble libuv's
- Remove lib/p5uv_handles.h (no longer needed)
- Remove lib/p5uv_loops.h (no longer needed)
- Ensure all Handle objects call ->_destruct() on destruction rather than
just calling close.
- Provide the current "closed" state of the handle to its destructor to
assist with knowing when to free safely.
- Rename Loop->_destroy() to Loop->_destruct() to be consistent
- Make Loop->_destroy() use p5uv_destroy_loop() to free properly
- A few changes at the suggestion of Devel::PPPort
- Added a few more tests to ensure we can export things correctly
- Added a UV::check() function. A convenience wrapper to UV::Check->new
- Added a UV::idle() function. A convenience wrapper to UV::Idle->new
- Added a UV::poll() function. A convenience wrapper to UV::Poll->new
- Added a UV::prepare() function. A convenience wrapper to UV::Prepare->new
- Reworked the tests to exercise the above convenience wrappers
- Removed a few superfluous 'use' statements
1.000004 2018-01-25 (TRIAL)
- Require at least ExtUtils::MakeMaker v7.12 for XSMULTI
- Move all *.[ch] into lib with the module using XSMULTI (mohawk)
- Redesign everything
- Now using XS::Object::Magic to hide the C structs within our Perl objects
- Now using Moo
- Doing more of the work in Perl-land
- Pretty much a complete-rewrite from v1.000003
1.000003 2017-10-26 (TRIAL)
- Don't store Loop stashes globally (thread safety)
- Moved constant declarations / some de-dupe efforts (Thanks Paul Evans)
- Added Perl context to all functions that call the Perl API
- Separated loop and handle functions from the XS interface
1.000002 2017-09-24 (TRIAL)
- Don't store Handle stashes globally for Handle types (thread safety)
- Simplified the typemap
- Removed UV::default_loop from UV.xs and added to UV.pm instead
- Renamed some macros to make more sense.
- Removed unused macros
- Default value for SIGPROF as it doesn't exist in Windows (useful in *nix)
1.000001 2017-08-17 (TRIAL)
- Update some prereqs
- Remove use of SO_REUSEPORT in the tests. We store the port already.
- Made 05-poll-closesocket.t a windows-only test
1.000000_01 2017-08-12 (TRIAL)
- ****** MAJOR, BREAKING CHANGES AHEAD ******
- Migrated to Dist::Zilla
- Moved the version of libuv from 0.x to 1.x
- Dropped the included src of libuv
- Dropped the libuv license since we no longer include their source
- Use Alien::libuv for ensuring we have a libuv to build against
- Completely rewrote the software due to massive changes between 0.x - 1.x
- Added Math::Int64 for proper uint64_t support
- Reworked the UV::loop into a new UV::Loop area
- Added the ability to get non-default loops
0.24 2013-03-29
- fixed a packaging issue
0.23 2013-03-29T
- libuv updated to 0.10.2 (first officially versioned release of libuv)
- supported following new functions:
uv_version_string, uv_stop, uv_tcp_open, uv_udp_open, uv_interface_addresses
0.22 2012-10-12
- added a dirty (hopefully temporary) hack to make libuv with -fPIC.
0.21 2012-10-10
- added a Makefile.PL treak avoiding segmentation fault. (ref RT #115206)
0.2 2012-10-05
- added UV::loop namespace and UV::default_loop() to get default_loop,
it contains active_handles information.
- added uv_walk
- added deps/ to ignoring list for CPAN indexer
0.12 2012-10-01
- added CAUTION section in doc ;)
0.1 2012-09-30
- initial version