Tk-804.036 release (2021-02-14)

This is basically the same like Tk-804.035_501.

Tk-804.035_501 release (2021-02-07)

 Compiles again with Strawberry Perl 5.32.x (RT #133260) (H.Merijn Brand)

 Fix double free in validatecommand (RT #102648) (fvogel)

 myConfig: add ability to define HAVE_INTTYPES_H (Christopher Chavez)

 Smaller build improvements and typo corrections (Ed J., Christopher Chavez)

 Prevent some compiler warnings (Christopher Chavez)

 Several smaller Pod fixes (Christopher Chavez, asb-capfan)

 Introduce CI testing with github actions

Tk-804.035 release (2020-03-28)

This is basically the same like Tk-804.034_501.

Tk-804.034_501 release (2020-03-19)

 Add dummy rules for newer EUMM (RT #124910)

 Try harder to find libpng on FreeBSD

Tk-804.034_500 release (2020-02-23)

 Compiles again with perl 5.31.x (see also
 github pull request #61 and
 by Karl Williamson). Now ppport.h is included in the

 Switch to X's locale handling if needed (Karl Williamson)

 Don't use buttons 4 and 5 on non-X11 platforms
 (Christopher Chavez)

 Fix corner case in XPM handling (/* in colors section)

 Spelling/grammar fixes in comments and code (Christopher Chavez)

 Improved demo script (Christopher Chavez)

 Smaller Pod fixes (Slaven Rezic, Christopher Chavez)

 travis-ci fixes

Tk-804.034 release (2017-08-26)

This is basically the same like Tk-804.033_500.

Tk-804.033_500 release (2017-08-20)

 Fix aborts on OS X Sierra, introduced by latest clang/llvm
 strcpy/strncpy (RT #121631, github pull request #28 by Mark Aufflick)

 No special xOKp handling in Perl_Value (RT #121528)

 Add freetype2 path on MacOSX / XQuartz to inc search paths
 (github pull request #21 by Christoph Lamprecht)

 Fix Tk::NoteBook's FindMenu (Martin Jacobs)

 Add Tk::getSaveFile Pod file (see also
 github pull request #19)

 Fix documentation about scrollbars
 (github pull request #18 by asb-cpan)

 Add openSUSE instructions to README.linux
 (github pull request #25 by Tux)

 Add documentation notes about "make -j"

 New test for Tk::NoteBook.

 t/Trace.t is using now Test::More

 travis-ci improvements

 Introduce CI testing on appveyor

Tk-804.033 release (2015-02-21)

 New t/pod.t test (github pull request #16)

Tk-804.032_501 release (2015-01-31)

 Teach perl/Tk where OS X Yosemite Xquartz puts the X11 files
 (github pull request #12)

 Pushstack experiment to workaround crashes with perl 5.20.x and XFT=0
 (RT #96543)

 Tk::Text: don't insert ctrl and meta key presses
 (github issue #9)

 Fix memory leak in canvas text item handling with XFT=1
 (RT #100211)

 Use public version of Perl_utf8_hop (RT #100878)

 FixBuggyUTF8String is not called anymore for new perls

 Use Cwd::getcwd() instead of Cwd::cwd() (performance improvement)

 t/font.t does not fail with only one font family installed
 (RT #99411)

 unicode.t - update textwidget before examining new state
 (RT #100153)

 Compatibility with old Test::More versions without note() and isa_ok
 class check

 Workaround for core dumps in some fork-using tests (RT #100399)

 Workaround for more timing problems in wm-tcl.h 

Tk-804.032_500 release (2014-11-06)

 Freetype header files may now be in /usr/include/freetype2/freetype.h
 in newer freetype installations (e.g. Debian/jessie).

 Tk::MainWindow::Create without args used to segfault.

 Fix X11 discovery on non-x86_64 platforms (RT #95590).

 Fix new sprintf warning with perl 5.21.x.

 Workaround behaviour change in ExtUtils::MakeMaker 6.99_10 (PERL
 value is now quoted), which caused build failures (RT #100044).

 Fix race condition in t/errordialog.t

 t/create.t uses Test::More

 Remove useless hostname and getlogin retrieval in t/fileevent.t
 (RT #98889).

 Use pipe instead of stdin in t/fileevent2.t (RT #98891).

 Fix font-related issues with t/entry.t (RT #98831).

 New Pod ErrorDialog.pod (github pull request #6).

Tk-804.032 release (2014-01-26)

This is basically the same like Tk-804.031_503.

Tk-804.031_503 release (2013-12-07)

 Regain compatibility for perl < 5.8.9
 (SvIV_nomg is not available with earlier perls).

 wm-time.t more robust against GNOME Shell slowness.

Tk-804.031_502 release (2013-12-01)

 Enable libpng configure for all Solaris architectures.

 Update INSTALL, README-ActiveState.txt, and README-Strawberry.txt

Tk-804.031_501 release (2013-11-18)

 Fix gamma setting for PNG images (was only broken in 804.031_500).

 Fix clang compilation error (was only broken in 804.031_500).

 Some tests are now more robust.

Tk-804.031_500 release (2013-11-17)

 RT# 88210: fix compilation for perl 5.19.0+ ("undef bool").

 RT# 90077: floating number issue with -textvariable variables.

 RT# 89621: avoid segfaults during global destruction (by Gisle Aas).

 RT# 87016: compatibility for libpng 1.6.x.

 RT# 86988: use cflags/libs information from pkg-config zlib.

 RT# 89261: split Tk/ into three .pm files.

 RT# 71718: fix compilation issue with 64bit Strawberry Perl (Tk_Cursor).

 Fail gracefully if no font could be allocated.

 ptksh: storing the history works now also under Windows.

 Better handling if libpng's configure fails.

 Changes to README.linux (dependency requirements, fontconfig) and

 Document special Tk::Table behavior regarding -takefocus => 0.

 New test files (eventGenerate.t, sv.t) and new test cases
 (eventGenerate in optmenu.t).

 More test tweaks (e.g. skip some tests if the required fixed font is
 unavailable, see with_fixed_font in, workaround some fvwm2
 problems in wm-tcl.t, protect from haning wm-time.t).

 checked_test_harness() skips testing if no font could be allocated.

 No test request user positioning windows anymore (for old window
 managers like twm).

 Configuration file for travis-ci.

Tk-804.031 release (2013-05-25)

This is basically the same like Tk-804.030_502.

Tk-804.030_502 release (2013-05-21)

 The CopSTASH_set fix did not work in 804.030_501 because of a
 missing file in the tarball. Now fixed.

 Tk::MakeDepend parses gcc's inc search list now and does not rely
 anymore on $Config{usrinc}. This helps when include files are
 partially in "multiarch" subdirectories (e.g. in Debian/sid) or when
 $Config{usrinc} is incorrect (e.g. in ActivePerl+gcc builds).
 RT #85407 and

 Helping Debian's build process by skipping the quilt state directory

 Improving build process for ActivePerl+gcc (RT #74036); see also

 Use pkg-config for determining libpng cflags and libs.

Tk-804.030_501 release (2013-05-18)

 Should compile again with older perls: SvNV_nomg is not available with
 perls older than 5.13.2, and CopSTASH_set(..., NULL) is not possible
 with threaded 5.16.x and older.

Tk-804.030_500 release (2013-05-18)

Incompatible changes
 The Tk::Text::Contents() method does not return an extra newline
 anymore (RT #83124). The version number of Tk::Text was incremented
 to 4.029 and may be used to detect the change.

 RT #78824: fixed compilation under threaded bleadperl (5.17.x)

 Fix for internal magic handling, needed for perl 5.17.2 and newer.

 Fixed myConfig issue with perl 5.17.x.

 SvUPGRADE() is no longer an expression since perl 5.17.7.

 Off-by-one error in Tk::Table::clear method (problem spotted by David

 RT #75347: skip unicode.t under some circumstances (e.g. problematic
 locales on Windows systems)

 RT #82664: fixed mismatched test count in entry.t

 Fixed Subwidget call in dirtree.t test.

 A couple of new test cases, conversions to Test::More...

 RT #79381: mention Tkx and Tcl::Tk

 Fixed return value for wrapper() in Tk::Wm Pod.

 Moved Tk::DragDrop Pods.

 "Tk::" prefix was missing in a number of Pods (original problem
 report by Fabien Dupont).

Code cleanup
 Removed some unused static functions from tkGlue.c

 Simplified utf8 repair code in Tcl_GetStringFromObj.

Tk-804.030 release (2011-10-20)

This is basically the same like Tk-804.029_502.

Tk-804.029_502 release (2011-10-17)

 RT #71718: windres call needs the --use-temp-file on some Windows systems

 RT #70429: show correct file name if image loading failed. Also
 systematically searched and fixed other bad uses of Tcl_AppendResult.

 RT #70243: provide inuse method for Tk::Image

 Fixed a possible segfault when using canvas' select clear method.

Tk-804.029_501 release (2011-10-14)

 Use standard libpng configure for all amd64 and x86_64 variants.

 Support gridRemove method.

Tk-804.029_500 release (2011-06-13)

 Fixed compilation with newer X11 version (conflicting types for

 Use standard libpng configure for some 64 bit variants of OpenBSD,
 amd64-freebsd, x86_64-linux, MacOSX 10.6.4 and newer.

 Fixed Strawberry 64bit builds.

 Changed handling of "underscore" character.

 Tk::ProgressBar::configure calls now go through ConfigChanged

 Fixed Tk::FBox::ResolveFile with defaultextension when directory
 contains dots

New features
 BalloonInfo for HList
 Implementation by Christoph Lamprecht, documentation by
 Slaven Rezic

 Perl/Tk is now available at github.

 Improved "all widgets at a glance" demo.

 Another attempt on skipping tests if no DISPLAY is available.
 Converted fork.t and progbar.t to Test::More

 Fixed SYNOPSIS section in Tk::Text Pod

Tk-804.029 release (2010-05-27)

This is basically the same like Tk-804.028_503.

 after.t is a TODO test on Windows.

Tk-804.028_503 release (2010-05-13)

 Tk::Text documentation mentioned -reverse where it should be -backwards.
 Also allow -forwards/-backwards to be abbreviated in FindNext call.

 Added WRITE method for tied Text widgets.

 Fixed display of Unicode characters in Windows toplevel menus.

 No special LDDLFLAGS handling on MacOSX systems, which probably
 caused an unusable Tk module (i.e. bus errors)

 Fixes Strawberry Perl builds (probably was broken on all 64bit systems)
 Informal patch by Eduard Wulff

 A missing rgb.txt is no more an error in the Tk::ColorEditor tests,
 as rgb.txt may be missing completely in some X11 installations.

 Fixed minor typo in ProgressBar documentation

 Documented that -width and -height do not work with NoteBook widgets

Tk-804.028_502 release (2010-01-30)

 Support for perl 5.11.2 and later (UTF8_MAXLEN_UCLC is not available

 Use 'configure' for building libpng under IRIX64

 PNG did not build under AIX and IRIC64, unchecked fix

 Workaround for a perl bug (?) when using "eq" under a Japanese locale
 under Windows (sample fail report:

 Tk did not support more than 32 fds on 64bit machines

 Tk::Trace fix to make Tk::Gauge work

 Fixed some regular expression-related and other errors, patch by
 Alexander Krasnorutsky, see

 Workaround for SvREADONLY issue with 5.8.x

 Another possible rgb.txt location, by h.m.brand

 Fix for attaching balloons to items of scrolled widgets

 Fixed XIM event filtering.

 Fixed compilation with newer gcc

 RecolorTree was broken since Tk-804.027_501 if called separately.
 Reported and patched by Michael Parker

 Control-X/Y/C now also works if Caps Lock is active

 Copy/paste operations between KDE and Perl/Tk applications
 on 64bit system did not work, patch by Petr Pajas

 Canvas grids: -color was documented, but only -fill was implemented.
 In future both is supported.

 Patch for mingw-w64 gcc compiler, supplied by kmx

 Documentation on "Perl/Tk and Unicode"

 Fixed cget/delete confusion in Entry.pod

Tk-804.028_501 release (2008-11-04)

 File permissions of the tarball seemed to be problematic under
 Windows Vista and Strawberry Perl, causing aborted builds.
 This is hopefully fixed now.

 Changed cygwin default to x11 (native MSWin32 port still does not

 There's now an "examples" directory containing some useful scripts
 previously been elsewhere in the distribution.

 Documented ROText key bindings.

 New README for Strawberry Perl.

 Prevent Event mini tests to be run when the rest of Tk is not tested,
 to avoid insignificant PASSes at cpantesters.

 More tests marked as TODO or SKIP.

Tk-804.028_500 release (2008-10-01)

 Security fix for GIF reader (CVE-2006-4484, report and patch by
 Anicka Bernathova)

 Make sure Tk::MsgBox is not displayed before calling Show()

 Solved problems with fileevent on 64bit architectures (this also
 fixes a problem with POE)

 Makefile.PL updates (auto-creation of META.yml, added LICENSE, exit
 cleanly if prereqs are missing --- this is for cpan testers)

 Fixed typo in Tk::FBox

 Added different location of rgb.txt on Mac OS X 10.5.1 systems

 Fixed a makedepend issue, reported by marek.rouchal

 A BusyRecurse issue [ #32858]

 Fixed Tk::ColorEditor problem with OpenBSD (another rgb.txt location)

 clipboardGet was documented, but did not work (note that clipboard("get")
 always worked)

 Tk::After::Cancelled needs also a dummy cancel() method

 Fixed event handling for newer X servers

 Permission issue [ #39038]

 Support for changed regexp-related functions and structures in perl

 Fix for: Tk::FileSelect fails to select file with "'" in file name
 (with new fileselect.t tests)

 Fixed movement of cursor on insertations in Tk::TextUndo

 Tk::Test fix for: skips lines when arrowing down in a window not
 exactly sized to a text

 ErrorDialog fix for Windows (dialog was never displayed)

 Use 'configure' for building libpng under Solaris.

 Tests for signal handling (testing LangAsyncCheck introduced earlier)

 Various skips and $TODOs for broken (?) window managers and slow
 connections (for example -xscrollcommand-related, floating-point
 precision-related, signal availability and many more ...)

Tk-804.028 release (2007-12-18)

  Fixed some test problems.

Tk-804.027_502 release (2007-12-04)

New features
  Merged with CPAN version of Tk::Tree

  Tk::Animation now reads delay and disposal information from GIF file
  (experimental, may change, needs an installed Image::Info)

  Make sure canvas methods are really accessible in OnDestroy. This
  fixes problems in the CPAN module Tk::LCD.

  Some path-related problems fixed with Tk::DirTree.

  Solved some Tk::ColorEditor issues (missing rgb.txt, multiple
  chooseColor invocations)

  Fixed some build problems under Windows.

  Fixed possible memory corruption

  Dash patches by Wolfgang Laun

  hpux ia64 should now compile.

  Tk::FBox: workaround for segfaults under threaded perl.

  Fixed possible performance problem when using Tk::Balloon and
  AutoLoader 5.63 is installed.

  Documented missing page_widget method in Tk::NoteBook.

  Disabled more failing wm tests (notably on kwin).

Tk-804.027_501 release (2007-09-22)

Compiles and passes tests on
  FreeBSD 6.2 (amd64) + perl5.8.8
  FreeBSD 6.2 (amd64) + perl5.10.0 patch 31894
  FreeBSD 6.1 (i386) + perl5.8.8
  Linux (Debian) + perl5.8.8

At some earlier point, there were success reports for the following

* Solaris 8 (Sparc), gcc-4.0.3, perl-5.8.8 with
  freetype-2.2.1, expat-2.0.0, libXft-2.1.11, fontconfig-2.4.1,
  libXrender-0.9.2, renderproto-0.9.2, zlib-1.2.3, libjpeg-6b,

* RedHat Enterprise Linux 3.0 update 8 (i686), gcc-4.0.3, perl-5.8.8 with
  freetype-2.2.1, expat-2.0.0, libXft-2.1.11, fontconfig-2.4.1,
  libXrender-0.9.2, renderproto-0.9.2, zlib-1.2.3, libjpeg-6b,

* Windows, VC++ 6.0, perl-5.9.5

New features
  Implemented -overrelief,-repeatinterval,-repeatdelay for Tk::Button.

  Additional item in the "widget" demonstration showing all Tk widgets.

  Added BalloonInfo to NoteBook.

  ptked: Encoding menu now with radiobuttons, also added some popular
  encodings to menu.

  Fix for not working 'hide entry' in HList.

  HList: fixed errors with disabled entries and a entry named 0.

  Various warning fixes.

  Enable compiling of PNG-related files with Sun compiler.

  Fixed setPalette and RecolorTree.

  Make sure waitVariable exits if a waiting dialog is destroyed.

  Again compiles under bleadperl.

  Various fixes for 64bit platforms (e.g. property method, libpng

  Fixed situation when resizing a mainwindow containing a PNG image
  crashed Tk Tcl/Tk bug 979239 fixed by George Peter Staplin, brought
  to Perl/Tk by Franck Aniere.

  Adapt path for getOpen/SaveFile's -initialfile and -initialdir to
  the OS (patch provided by Roland Minner).

  Fixed not working -dynamicgeometry in Tk::NoteBook.

  Fixed zlib compilation problem under Windows (unistd.h does not
  exist there). Reported by esskar.

  Fixed configure problems on mixed 32/64 bit architectures, patch by
  Steve Lidie.

  Documented the Widget() method

  Widget.pod: resorted methods alphabetically

  Documented Tk::DialogBox::Exit

  New test script for Button widget, yet uncomplete (t/button-tcl.t)

  New HList tests for show/hide

  font.t is more robust if unexpected fonts are used.

The complete log of changes can be get using

    svn log

Tk-804.027_500 release (2007-02-11)

Compiles and passes tests on

  FreeBSD 6.1 + perl5.8.8 + fontconfig 2.3.2
  FreeBSD 6.1 + bleadperl + fontconfig 2.3.2
  Linux (Debian) + perl5.8.8
  Windows 2000 + Strawberry Perl 5.8.8 alpha 2
  Mac OS X 10.4
  Solaris 10 + perl5.8.4

At some earlier point, there were successful builds with

  cygwin 1.5.x + perl5.8.7 + fontconfig (X11 build only)
  Solaris 8
  Linux (RedHat 8.0) + perl5.8.0

New features
  The undocumented method font('subfonts') returns now more

  Library upgrades:
    libpng from 1.2.5 to 1.2.12
    zlib from 1.1.4 to 1.2.3

  It's possible to use binary (and not anymore base64 encoded) -data
  for GIF files.

  New -cancel_button option for Tk::DialogBox

  gedi accepts now X11 command line options. is specified as a PREREQ_PM.

  Fixed slow listbox itemconfigure.

  Fixed array return of Tk::Text::get method.

  Fixed Tk::BrowseEntry problem with -label* options, see

  Introduced LangAsyncCheck, which fixes

  Fixed (missing
  default button indicator on win32 for Tk::DialogBox widgets)

  Fixed (wm close
  window button does not call the default button)

  Fixed non-working Balloon attachments to individual menu items,
  As a side effect, there is now a new method Tk::Menu::MasterMenu for
  getting the master menu of a cloned menu.

  Adjuster now works in DialogBoxes, see

  Fixed memory leak in after* callbacks, see

  Fixed Tk:: FBox to treat special files like sockets, pipes as files,
  not as directories.

  Fixed -at/-before/-after problem with Tk::HList.

  Workaround for 'selection conversion left too many bytes
  unconverted' aborts.

  New Pod for Tk::MsgBox.

  Created a CAVEATS section in Tk::Image for the FAQ about memory
  leaks and images.

  Added missing L<...> links.

  Some minor Pod fixes.

  Make sure that tests won't be run if no X11 is running to prevent
  unnecessary cpantesters reports.

  New test for Text widget (t/text.t)

  New test for scripts (t/exefiles.t)

  New test for Tk::Adjuster (t/adjuster.t)

  More Tk::FBox tests (e.g. chooseDirectory ...)

  Tests are now more robust if another application has the global grab
  (see catch_grabs in

Tk-804.027-p4.patch.gz (2006-11-26)

Compiles and passes tests on

  FreeBSD 6.1 + perl5.8.8 + fontconfig 2.3.2
  FreeBSD 6.1 + bleadperl + fontconfig 2.3.2
  Linux Debian + perl5.8.8 + fontconfig 2.4.1
  Solaris 8 + gcc-4.0.3 + perl-5.8.8 + fontconfig-2.4.1 (with two test
    errors in font.t)

I also had success with compiling under recent cygwin using the x11
libraries a few days earlier.

  XFT works now with recent fontconfig, no core dumps anymore.

  Fix for segfault in t/regexp.t with perl 5.9.x. See also
  for a similar issue.

  Workaround for core dumps when using -font=>undef.

  Fixed wrong usage of $#{@...} which does not work anymore in

  Fixed Tk::Text movements wordstart and wordend in unicode content.

  Better handling of undef in BrowseEntry widgets. Bug reported by
  Puetz Kevin A.

  A couple of compilation warning fixes.

  Continued text.t conversion.

  More tests in font.t.

  Fixed failing tests if no windows manager (under X11) is running.

  Fixed some false test failures in listbox.t (font detection was

  Disabled fork.t and fileevent.t on cygwin (same like MSWin32).

Tk-804.027-p3.patch.gz (2006-11-20)

Compiles and passes tests on

  FreeBSD 6.1 + perl5.8.8 + xorg 6.9.x + various window managers (fvwm2, twm, metacity ...)
  Linux RedHat 8.0 + perl5.8.0 (one test failure in leak.t)
  Linux RedHat 8.0 + perl5.8.7
  MSWin32 + Strawberry Perl (5.8.8)

There are some test failures with bleedperl, most of them
Tie::Watch-related, which will be fixed in a next version of the

Incompatible changes
  Return values of some Tk::Wm methods (e.g. aspect, wmGrid,
  iconposition, resizable ...) were changed from returning tclish
  lists (e.g. "1 2 3 4") to perlish lists (1,2,3,4). I believe the
  return values of these methods are rarely used.

  Tk::Wm::wmTracing needs argument for setting on/off, without
  argument just return the current value.

New features
  The newest tkUnixWm.c from Tcl/Tk is now in the Perl/Tk code. This
  adds (experimental?) support for wm attributes -topmost, -zoomed,
  -fullscreen and other _NET_WM features (iconphoto) under Unix/X11.

  Tk::Wm::stackorder was missing in Perl/Tk.

  widget demonstration has a Ctrl-Q key binding.

  ptksh: x is an alias for d (like in the perl debugger).
  ptksh: use bold font for prompt.

  Tk::Text: pasting selection with middle mouse sets cursor position now.
  This is consistent with behaviour in other toolkits.

  Tk::Widget: translated UnderlineAmpersand etc. functions.

  Tk::MsgBox: again in Tk, completely new translation from the Tcl/Tk
  original. Looks nicer and behaves better than messageBox through

  Fixed crashes of Perl/Tk applications when Gtk/Gnome applications
  were started. See

  ptksh is not slow anymore when popping up history.
  ptksh: use fixed font for text area.

  Tk::FBox may handle paths with high-bit set.

  Image and bitmap filenames with high-bit set work now. See

  Minor Tk::TextList fixes, but still most tests fail.

  Fixed some menu problems, see,

  Title of tearoff menus now set correctly.

  ptked may be started without initial filename.

  gedi works again.
  Fixed some core dumps.

  Tk::Listbox insert/delete does not leak memory anymore (well, not
  that much). See

  Building on RedHat systems works now, see

  Tk::NoteBook fix for pages method, see

  Tk::Canvas fix for -state => hidden issue, see

  Tk::Widget::Walk is now documented.

  Corrected installation path for Tk::Menu::Item.

  Fixed invalid Pod syntax.

  Converted some tests from Test to Test::More

  Enable unicode tests where possible.

  Make all tests working with XFT=1.

  New tests, converted from the Tcl counterparts: canvas.t, wm-tcl.t,
  text.t (latter not completed yet)

  00wmcheck.t: show user's window manager before starting tests.

  (Almost) no test should request user positioning windows (for old
  window managers like twm).

  Some wm-dependent tests were marked as TODO tests.


Within each 'release' time advances down the file, but most recent
release is at the top.

Change.log is generated from perforce database, it is therefore
complete, but short on detail.

Changes in Tk804.023
	First public release of version based on Unicode aware core tk.

Historical changes in Tk800 branch to be reinstated here later.