# Komodo Release History

This document chronicles feature additions, product enhancements and bug fixes in versions of Komodo (IDE and Edit) before 4.2.

## Komodo IDE/Edit 4.1.1 (Jun 7, 2007)

Enhancements

- Fixed XML completion bug. (Bug 70342)
- Added '--dest-dir' option to Linux install script to facilitate building a Komodo RPM. (Bug 70311)
- Fix PHP completion bug preventing completions if prefix happened to be a keyword. (Bug 69626)
- Fixes and improvements to the Rails project template. (Bug 69737)
- Fixed possible install failure related to a partly installed SELinux. (Bug 69969)
- Corrected the JavaScript tutorial's YUI library installation. (Bug 70129)
- Fixed bug with "Add to Current Project" adding file to the Toolbox instead. (Bug 68158)
- Fixed problem with '?' breaking Ruby syntax folding and coloring. (Bug 70326)
- Updated "New File" dialog to remember user's "Add to Current Project" preference. (Bug 66627)
- Updated PHP completion to support autocomplete in short tags -- i.e. "<? ...". (Bug 70212)
- Fixed Run Command system bugs:
  - Redraw problems on Linux for Command Output parsing. (Bug 66860)
  - Scrollbar doesn't show up in parsed command output. (Bug 67794)
- Fixed license problem in Tcl syntax checker that could prevent it from working. (Bug 70054)
- Fixed JavaScript class completion to work even if a parent class is not found. (Bug 65447)
- Many minor fixes for HTML completion in simple cases. (Bug 69973)
- Fixes for tabstops with non-word characters in the default value. (Bug 69949)

## Komodo IDE/Edit 4.1 (May 15, 2007)

Highlights in Komodo 4.1

### Ruby on Rails

- Ruby on Rails project template: Makes getting started and working with a Rails project much easier. Includes integration for many Rails project commands.
- Ruby completion: Added support for space-based calltips (common in RHTML template code) and other Rails completion improvements.
- Re-written Ruby debugger engine: Based on ruby_debug, the new engine is 50-60 times faster.

### Code Intelligence

- Autocomplete for the Komodo's JavaScript API (i.e. the "ko" namespace) when editing JavaScript macros in an editor tab. Also documentation for the "ko" namespace in the Reference section of the Komodo docs.
- PHP 5.2: stdlib changes for autocomplete/calltips.
- MXML/ActionScript support: Added schema-based XML autocompletion for MXML files and syntax highlighting for embedded ActionScript.
- JavaScript completion: Added support for JSDoc autocomplete and calltips and autocomplete on string literals.

### Editing

- Tab Stops
- Vim registers
- Add commands to fold/expand blocks of code recursively (View|Fold|Expand Recursively & Collapse Recursively). (Bug 27264)
- Support editing macros in a full editor tab (via "right-click|Edit" on a macro).

### Other Improvements

- Added a JavaScript tutorial to introduce some of Komodo's JavaScript features.
- Support editing macros in a full editor tab (via "right-click|Edit" on a macro).
- Find/Replace: Default (pre-populated) search pattern is now the previous search rather than the word under the cursor.
- Status bar: Added selection info ("Sel:") status bar panel.
- Add more icons from famfamfam that can be used for custom commands, macros, etc. in the Toolbox and Projects.
- Komodo installations now include a "Komodo SDK" with Komodo's core IDL and the 'xpidl' utility necessary for building PyXPCOM components for user extensions.
- Significant refactoring of the Komodo JavaScript API under the "ko" namespace (e.g. "ko.dialogs.alert(...)" instead of "dialog_alert(...)"). Old APIs remain for backward compatibility for JavaScript macros -- but they will eventually be removed. This is an ongoing process: documentation and autocomplete (when authoring macros) will be added in subsequent releases.
- Rx integration (IDE-only) and regular expression help in the Find/Replace and Find in Files dialogs.
- Several bug fixes

## Komodo IDE/Edit 4.1 Beta 3 (May 9, 2007)

Enhancements

- New Ruby on Rails project template that makes getting started and working with a Rails project much easier.
- Autocomplete for the Komodo JavaScript API (i.e. the "ko" namespace) when editing JavaScript macros in an editor tab. Also documentation for the "ko" namespace in the Reference section of the Komodo docs.
- Komodo installations now include a "Komodo SDK" with Komodo's core IDL and the 'xpidl' utility necessary for building PyXPCOM components for user extensions.
- Ruby completion: Added support for space-based calltips (common in RHTML template code).
- Add info for PHP 5.2 stdlib changes for autocomplete/calltips.

Bug Fixes

- Various Ruby debugger fixes. (Bug 69405, etc.)
- Syntax highlighting fixes for Template Toolkit. (Bug 69363, 69157)
- Fixed bug with suggested upperace HTML tag completions. (Bug 69523)
- Improved autocomplete in HTML fragments to be able to get autocomplete even in documents with multiple top-level elements. (Bug 69521)
- Fixed problem with snippets inserting incorrect EOL characters. (Bug 69535)
- Fixed a bug with display of custom toolbar entries. (Bug 69424)
- Fixed inconsistencies in Live Folder behaviour. (Bug 69045)
- Changed the Find dialog box's default search term behavior. (Bug 68431)
- Fixed syntax checking of Tcl 8.5 code.
- Several bug fixes for remote files:
  - 'Enter' not opening selected file in the remote file dialog. (Bug 67072).
  - FTP not working on Windows IIS server. (Bug 69434)
  - Prompt for password when not supplied in server prefs. (Bug 69344)
  - paramiko (used for remote file support) missing from builds (Bug 69367).
- Fixed recursion overflow with long sequences of Perl comments. (Bug 69144)

## Komodo IDE/Edit 4.1 Beta 2 (April 27, 2007)

Enhancements

- All enhancements included in Komodo 4.0.3.
- MXML/ActionScript support: Added schema-based XML autocompletion for MXML files and syntax highlighting for embedded ActionScript.
- Re-written Ruby debugger engine: Based on ruby_debug, the new engine is 50-60 times faster.
- Many Ruby on Rails completion improvements.
- A new Ruby on Rails project template that includes integration for many rails project commands.
- Significant refactoring of the Komodo JavaScript API under the "ko" namespace (e.g. "ko.dialogs.alert(...)" instead of "dialog_alert(...)"). Old APIs remain for backward compatibility for JavaScript macros -- but they will eventually be removed. This is an ongoing process: documentation and autocomplete (when authoring macros) will be added in subsequent releases.
- Rx integration (IDE-only) and regular expression help in the Find/Replace and Find in Files dialogs.
- Add commands to fold/expand blocks of code recursively (View|Fold|Expand Recursively & Collapse Recursively). (Bug 27264)
- Added a JavaScript tutorial to introduce some of Komodo's JavaScript features.
- Support editing macros in a full editor tab (via "right-click|Edit" on a macro).
- JavaScript completion: Added support for JSDoc autocomplete and calltips and autocomplete on string literals (Bug 50587).
- Autocomplete: "fill-up" characters no longer enabled by default (Bug 68726).
- Find/Replace: Default (pre-populated) search pattern is now the previous search rather than the word under the cursor.
- Statusbar: Added selection info ("Sel:") statusbar panel.
- Add more icons from famfamfam that can be used for custom commands, macros, etc. in the Toolbox and Projects.

Bug Fixes

- All bug fixes included in Komodo 4.0.3.
- Python completion: Catch potential recursion resulting in crash. (Bug 67739)
- JavaScript completion fixes. (Bug 67123, 60347, 68295, 60267, 60347)
- PHP syntax highlighting fixes. (Bug 67678, 68140)
- Perl syntax higlighting now supports "/=". (Bug 67729)
- Find/Replace: Fixed problem using ctrl-tab to change to "replace" tab breaking Find/Replace. (Bug 67079)
- Fixed some PHP/JavaScript syntax coloring issues. (Bug 67674)
- Fixed problem with Cancel being ignored when shutting down with dirty buffers. (Bug 67974)
- Help: Find locally installed ActivePerl documentation when it's the current preferred Perl installation. (Bug 67622)
- Statusbar: Fixed width handling to show all data without clipping. (Bug 66209, 67181)
- Fix line and column numbers not updating immediately. (Bug 65606)
- Template Toolkit syntax higlighting fixes. (Bug 69157)
- HTML/XML auto-indent: Check styles to avoid auto-indenting in plain text when a line ends with double-quotes. (Bug 66157)
- Auto-indent fixes. (Bug 63497, 66189)
- Fixed a crash possible with UTF16 conversion on Mac OS X. (Bug 67194)
- HTML syntax highlighting: Color style tag content as CSS. (Bug 66124)
- Support use of IE-only "comment-conditional" (Bug 46243)
- Vi emulation fixes:
  - Delete not working at end of line. (Bug 62438)
  - Support for find/replace in visual mode. (Bug 66776)
  - Fix find/replace using invalid lines. (Bug 68241, 65619)
  - Support "set" command. (Bug 66452)
  - Support 'c' and 'C' case-sensitivity flags for searching.
  - Add general toggle fold command. (Bug 66384)
- Autocomplete/calltips: Fixed "easy to outpace completion" problem by ensuring more timely scanning of current file. (Bug 57938)
- Code Browser: Minor improvements in the hover tip for interface and namespace elements. JavaScript "namespace" objects are shown with a different icon than a normal variable. (Bug 68633)
- Fixed problem causing broken Open Shortcuts. (Bug 68666)
- Fixed problem causing uppercasing/lowercasing with rectangular selection. (Bug 68547)
- Dragging a folder onto a project now creates a new live folder. (Bug 68867)
- Projects: Creating a project template from a project with unsaved changes now prompts user to save before continuing. (Bug 66958).
- Fixed crashes in libexpat on RedHat Linux RHEL3 U6. (Bug 68801)
- Interactive shell now properly handles pasted multi-line blocks. (Bug 51947)
- Project pane now correctly keeps collapse/expand state. (Bug 28603)

## Komodo IDE/Edit 4.0.3 (April 17, 2007)

Enhancements

- Recursive scanning of PHP and JavaScript Directories: PHP and JavaScript Directories set in global and project preferences are now recursive (up to five sub-directories deep). These directories, used by Komodo for gathering autocomplete and calltip information, previously had to be added individually.
- Reinstated "Y" yank-command in Vi mode.
- HTML templates now start with all lower-case tags.

Bug Fixes

- Fixed problem with 'Go to Definition' on imported class instance variables in PHP. (Bug 68793)
- PHP calltips now working on inherited methods. (Bug 68759)
- Better error and timeout handling of remote connections (e.g. wrong port or protocol). (Bug 47047)
- Better handling of certain 2.5 syntax in the code browser. (Bug 68786).
- Zero-byte remote files are now opened successfully. (Bug 68783)
- Fixed bug causing 'Replace All' to fail. (Bug 67547)
- Fixed problem with missing remote files persisting in the code browser. (Bug 67614)
- Fixed problems in user data upgrades. (Bug 68755)
- Fixed gtk mouse issues. (Bug 42491)
- SVN: Add locale setting/override of LANGUAGE variable. (Bug 68615)
- Fixed conditional breakpoints for languages that support them. (Bug 46327)
- An alert is now given when projects are being upgraded.
- Fixed problem using Debian's PHP for debugging. (Bug 68411)
- Run_RunEncodedCommand() macro API documentation. (Bug 33136)
- Python DBGP builds for Python 2.5. (Bug 67734)
- Fixed perl linter failure on changing output from perl. (Bug 68176)
- Fixed internal error while saving file. (Bug 65224)
- Fixed crash on PyUnicodeUCS2_AsUTF16String on inspection tooltip. (Bug 67194)
- Fixed problem with macros not ending in \n failing silently (Bug 68142)
- Fixed widths of panels in status bar. (Bug 66209, 67181)
- Fixed recursion crash in PHP autocomplete. (Bug 67774)
- Remote sites no longer lost on upgrade to 4.0.2, but username and password need to be re-entered (see Known Issues). (Bug 67246)
- Better JavaScript macro errors. (Bug 67968)
- Fixed problem with untitled buffers causing run/debug launch to fail. (Bug 67206)
- Autosave toolbox when editing macros and snippets. (Bug 66167)
- Fixed problem with debugger skipping breakpoints in multi-threaded python apps. (Bug 67863)
- Improved auto-indent behavior in PHP. (Bug 59037)
- Fixed PHP function completions after a keyword. (Bug 67696)
- Find matching brace now scrolls left or right as necessary. (Bug 43690)
- Fixed PHP regex help page 404. (Bug 67728)
- Fixed problems with executables not being found in PATH on Windows Vista (Bug 66921)
- PHP autocompletion fixes (after '@' characters and large comments). (Bug 67329, 67094)
- Run command dialog now auto-populated based on recent commands. (Bug 67451)
- SCC/Perforce integration now supports spaces in filenames (Bug 67417)
- Fixed a problem with project trees scrolling and showing empty rows. (Bug 67324)
- Fixed bug causing projects to disappear from the project window. (Bug 41718)
- Toolbar button names now appear below, not beside the icon with "Show Button Text" enabled. (Bug 32934)
- Adding a new file to a project now correctly puts it in the selected sub-folder. (Bug 66501)
- Fixed bug with snippet insertion failing with unicode chars (Bug 67319:)
- Fixed data loss problem when saving remote files
- Emacs emulation improved on OS X.
- SE Linux installation message downgraded from error to warning if SE is disabled. (Bug 67166)
- Handle backquote-delimited strings in PHP and Ruby parts of RHTML. (Bug 67085)
- Improved error message display when running JavaScript macros. (Bug 67062)
- Fixed bug with interpolations failing in dialogs. (Bug 67494)

## Komodo IDE/Edit 4.1 Beta 1 (March 6, 2007)

Enhancements

- Vi registers: Added numbered and named registers similar to those in Vim.
- Tab Stops: Special markers for use in snippets and templates.

Bug Fixes

- Fixed scrolling selection to top or middle of screen so it takes folded lines into account. (Bug 35063)
- Perl: color scalar and array variables inside interpolating strings. (Bug 34374)
- Fixed confusing exit dialog when prompted to save files on shutdown. (Bug 35770)
- Preserve selection when converting EOLs. (Bug 34776)
- Fixed Lua syntax highlighting. (Bug 66107)
- Fixed a group of Emacs emulation issues. (Bug 33211)
- Added here-documents to PHP. (Bug 54667)
- Added ability to define here-document syntax in UDL-based languages. (Bug 66712)
- Fixed Ctrl+F1 and Shift+F1 in the interactive shell. (Bug 37203)
- Added content to "Samples/Python" sample template. (Bug 32715)
- Added '.lsp' extension for Lisp files. (Bug 32681)
- Greater-than chars are allowed in SGML/XML quoted attribute strings. (Bug 67019)
- Offer to save macro when the contents are modified. (Bug 63577)
- vi emulation: add "tT;," find-character-in-line (Bug 67045)
- vi emulation: fix bug with '.' (repeat) (Bug 65945)
- vi emulation: fix bug of repeat last change/insert text not recording tab keypress (Bug 65963)
- vi emulation: fix some delete/change with direction commands. (Bug 65841, 65842)
- vi emulation: search history includes history from UI as well. (Bug 65639)
- vi emulation: support for Alt/Ctrl Tab window-switching while in visual mode. (Bug 67058)
- Removed 'url' attribute from project elements that don't have one. For snippets, macros, and commands Komodo was raising a "file_added" notifification that contained "None" as part of the string. (Bug 67574)
- Fixed SCC exceptions occurring due to SCC trying to check status of virtual files. (Bug 67583)
- Hover tips containing high-bit data while debugging now show up with Unicode characters, not raw utf-8, or high-bit characters in the wrong encoding (such as programs that manipulate Cyrillic text with a global cp1251 encoding). (Bug 40317)
- Diff windows now read-only. (Bug 27910)

## Komodo IDE/Edit 4.0.2 (February 13, 2007)

Enhancements

- JavaScript completion for function return types.
- Some support for .rxml and .rjs Ruby Files.
- Komodo IDE and Edit can now be run at the same time.
- New File dialog textboxes support some autocompletion.
- Komodo Resources toolbar.

Bug Fixes

- Added True/False keyword highlighting to Python. (Bug 66484)
- Fixed some cgi emulation problems in PHP. (Bug 41537)
- Fixed renaming of virtual folders in projects/toolbox. (Bug 66101)
- Fixed a problem causing focus to switch to another application when dialogs are closed in Komodo. (Bug 51068)
- Fixed PHP codeintel problem with heredocs. (Bug 66638)
- Changed "PHP does not support debugging" message when PHP is not configured (Bug 66529)
- Fixed error importing package (.kpz) files (Bug 66676)
- Fixed problems opening a large hash/arrays in debugging variable viewers. (Bug 66681)
- Fixed some sorting problem in the toolbox (Bug 66697)
- Fixed problem with "New File..." for remote project folders. (Bug 66595)
- Fixed connection issues in the JavaScript debugger. (Bug 66147)
- Fixed mapped URI support in JavaScript debugger. (Bug 66511)
- luddite.py can now handle filepaths containing spaces. (FCSs) (Bug 66520)
- Fixed problem with jslib File.open() creating a zero byte file. (Bug 66512)
- Fixed space-based path handling for TCLLIBPATH env setting (Bug 66474)
- Fixed a problem opening remote files via FTP. (Bug 66125)
- Fixed a bug causing projects to disappear when deleting many files or expanding a node. (Bug 41718)

## Komodo IDE 4.0.1 (January 29, 2007)

Enhancements

- "New File" dialog revisions: added access keys to the Filename, Directory, Local, and Remote buttons.

Bug Fixes

- Limited the verbosity of HTML syntax errors and warnings. (Bug 66207)
- Fixed error saving project template. (Bug 66183)
- Fixed a problem with DOM viewer emptying and throwing an exception (Bug 66166)
- Better property-value handling in CSS. (Bug 65994, 65995)
- Completion for HTML attributes with a fixed set of values. (Bug 66149)
- Komodo 3.5 projects with remote files can now be properly upgraded to 4.0 projects. (Bug 66125)
- Fixed trial licence problem on Windows XP with FAT32 filesystems. (Bug 66111)
- Fixed a bug that causes Komodo IDE 4.0.0 to throw an exception on the trial expiry day. (Bug 66121)

## Komodo IDE 4.0, Edit 4.0 Beta 5 (January 22, 2007)

Highlights in Komodo 4.0

### Code Intelligence

- Redesigned Code Intelligence system: CSS, JavaScript, Perl, PHP, Python, Ruby, Tcl and XML support have been re-implemented with a new code intelligence system, providing improvements in autocompletion, calltips, the code browser, and overall performance.
- Go to Definition: A new option for quickly jumping to the definition of a code object (e.g. a variable, a subroutine, a module, etc.) under your cursor.
- Schema-based XML Autocomplete and CallTips: Komodo now supports autocomplete and calltips support for XML and HTML based on DTD or RelaxNG Schema. SGML and XML Catalogs are supported.
- API Catalogs: Autocompletion for several popular JavaScript libraries can be enabled in Preferences.
- DOM Viewer: A new tab in the left pane shows the DOM structure of XML and HTML documents in a tree view. Double-clicking on a node in the DOM Viewer moves the cursor to the corresponding node in the document. Komodo IDE only
- User-Defined Languages: Komodo 4 introduces a system for adding custom language support called UDL (User-Defined Languages) which allows Komodo to properly syntax-color multi-language files and template files common in many web programming frameworks. Also included is a tool called Luddite which you can use to define custom language syntax-coloring and package those into Komodo extensions.
- New languages: Support for Template-Toolkit, HTML-Mason, Smarty, Django, and Luddite has been added using UDL

### Editing

- Vi emulation: Modal key bindings which emulate the navigation, text insertion, visual selection and command-line modes of Vi and Vim. Custom commands can be implemented by adding Komodo macros to a Vi Commands Toolbox folder.
- Configurable Background Syntax Checking: The frequency of background syntax checking is now configurable, improving editor responsiveness in large files.

### HTTP Inspector Komodo IDE only

- HTTP Inspector: An interface for examining HTTP requests and responses as they happen. It runs a local proxy which intercepts HTTP traffic and records each transaction for analysis. The Inspector can break on a request or response, which can then be edited and submitted in its modified form.

### JavaScript Debugging Komodo IDE only

- JavaScript Debugging: Komodo now offers JavaScript debugging using the Firefox web browser and the JavaScript DBGP extension. With the extension enabled, loading JavaScript or triggering JavaScript controls in the browser window opens a debugging session in Komodo, which loads the relevant JavaScript code.
- JavaScript Interactive Shell: An interactive shell for manipulating JavaScript code is available within JavaScript debugging sessions. This shell is similar in functionality to the other interactive shells in Komodo.

### Projects

- Live Folders: Komodo projects now offer Live Folders which display current filesystem contents. The previous folder behavior is still available; these folders are now referred to as "Virtual Folders" in the documentation. By default, new projects are created with Live Import, making the project behave as a Live Folder. Project-specific Directory Import preferences define which files and directories to include.
- Project Settings: All project settings are now in the Project Properties dialog. This dialog box is now used for files, folders and projects, displaying the appropriate properties for each type.
- Project Templates: Projects templates can be created and used when creating a new project.
- Additional Project functionality, including:
- - Project based debugger preferences
  - Basic file management (Delete, Rename, Show in File Manager)
  - Project import from remote file systems
  - New File option

### Other Improvements

- SCC History: A new option has been added to the Source Control menu which displays the revision history of a file. You can compare (diff) two selected revisions from the list, or select one and compare it to the local copy. Komodo IDE only
- SFTP and SCP: Komodo now supports access to remote files via SFTP and SCP. Saved password information for all remote servers is stored securely in Mozilla's native password manager.
- Help Browser: Komodo now uses Mozilla's help browser for displaying Komodo help.
- PHP "Zero Configuration": Automatic configuration for PHP debugging. Komodo IDE only

Enhancements

- Improved code completion for Perl.
- "Go to Definition" in Perl

Bug Fixes

- Tabs: Tab order is now properly reset at startup.
- Projects: Restore open/close state of projects at startup.
- Projects: Restore the sorting order of projects at startup.
- Projects: Stop projects from sometimes disappearing after update/deletion.
- Autoindent: Better handling of and bug fixes for HTML/XML auto-indenting.
- Codeintel: Now works when some extensions are disabled.
- Codeintel: The Code Intelligence system now honours "Additional Directories" settings in Project preferences.
- Editor: Improved handling for opening encoded filenames.
- Debugging: Sort list of local/global variables.
- Mac OS X: Fixed crash caused by running mouse across menus.
- Vi emulation: Fix visual line mode to copy/paste correctly.

## Komodo 4.0 Beta 4 (January 11, 2007)

Enhancements

- A new "Go to Definition" option for quickly jumping to the definition of a code object (e.g. a variable, a subroutine, a module, etc.) under your cursor.
- A Vim-like visual mode for text selection.
- Perl autocompletion.
- Ruby on Rails "peer" module autocompletion.
- JavaScript autocompletion shows completion for files in same directory or for directories defined in global or project preferences.
- PHP autocompletion shows completion for directories defined in global or project preferences, as well as those defined in php.ini.
- Improved JavaScript debugging workflow.

Bug Fixes

- Remote files: Connections now timeout properly.
- Remote files: Support for working with remote files with a different encoding.
- The PHP XDebug extension has been updated (includes crash bug fixes).
- Perl debugging over iterators now works correctly.
- The style of PHP commenting to use can now be set in Preferences.
- Tab ordering, and window sizing now restored on startup.
- PDK extension fixes and support for the recent PDK Beta.
- PHP completion has partial support for use of DEFINES in include/require statements.
- Improved support for encodings in remote filenames.
- Various Vi emulation fixes.
- Over 100 additional bug fixes since Beta 3.

## Komodo 4.0 Beta 3 (December 14, 2006)

Enhancements

- JavaScript catalog selection in preferences. Autocompletion available for several popular JavaScript libraries.
- Basic Rails autocompletion for the default Rails APIs. Autocompletion for custom application code not yet implemented.
- XPI support for Code intelligence catalogs.

Bug Fixes

- Codeintel (autocomplete/calltips) fixes and improvements in JavaScript, XML/HTML, PHP, and Ruby.
- Samba support for Live Folders.
- Project level debugging preferences/dialogs fixed.
- Changing the include/exclude preferences for folders fixed.
- Some template loading errors have been fixed.
- HTTP Inspector UI cleanup.
- Remote files under 4K in size are now read properly.
- Fixes for opening remote files.
- Vi emulation mode pasting fixes.
- Better support for HTML fragements in DOM Viewer.
- Search improvements in DOM Viewer.

## Komodo 4.0 Beta 2 (November 27, 2006)

Enhancements

- Ruby completion improvements
- PHP completion improvements (notably recursive include/require support)
- Python completion improvements (notably TKinter support improved)
- JavaScript completion improvements, including completion support for JavaScript libraries. Beta 2 includes support for the Yahoo YUI library.
- HTML completion and DOM Viewer improvements
- Default DTD/Namespace support. The DTD default can be set globally, default namespace can be set in current file settings dialog.
- Preloading of codeintel data to provide faster response in completion.
- xdebug binaries for PHP 5.2.
- Updated Mozilla code base (now the same as Firefox 2).
- Middle-click closing for editor tabs.

Bug Fixes

- Syntax highlighting configuration fixes.
- Fixed repeat support in VI Emulation.
- Fixed a problem causing crashes when using unicode characters in buffers.
- PHP syntax highlighting fixes.
- JavaScript debugger extension now installs properly into Firefox 2.
- Fixed issues with opening files via SFTP.
- Fixed problem with changing preferences in current file settings.
- Various Preferences fixes.
- Various fixes in the DOMViewer.
- Fixed file reload problem in "dirty" files.
- Drag and drop support in toolbox fixes.
- Various cosmetic fixes.
- Python interactive shell fixes.
- Various code browser/completion fixes for multi-language buffers.
- DocBook DTD files are now parsed properly.
- Fixed leaks in plugin and PyXPCOM layers.
- Project template fixes.

## Komodo 4.0 Beta 1 (October 31, 2006)

Enhancements

- Feature complete for 4.0.0
- PHP Zero Configuration
- Code Intel backend redesigned for performance and scalability
- Multilanguage Autocomplete/Calltips
- JavaScript Autocomplete/Calltips

## Komodo 4.0 Alpha 7 (October 24, 2006)

- Redesign of Code Intelligence backend
  - Ruby, Python, JavaScript and PHP reimplemented
  - Perl and Tcl code intel not working -- back in Beta 1
- Multi language file support (autocomplete, help, commenting, etc.)
- XML/DTD Catalog support for adding new DTD/RelaxNG Schemas
- PHP Zero Configuration
- Project Debugger support
- Project File Management (Delete/Rename/Show in File Manager)
- Project import from remote file system
- Project New File support
- New Icons for most UI buttons
- SCC History now shows branch information as well.
- Project and DOM Viewer performance work
- Project preferences updates
- Live folder/project fixes
- Project Templates changed to packages
- Preferences now upgrade correctly
- Subversion no longer contacts server unless user requests via "refresh"
- more Vi keybindings and fixes
- new "Bright" and "Medium" syntax coloring schemes
- syntax check delay is configurable in prefs
- Pref added to ignore the reload prompt when a file is changed/removed.

## Komodo 4.0 Alpha 6 (September 19, 2006)

- XML/HTML Autocomplete/Calltip support:
  - based on DTD or RelaxNG Schema
  - SGML Catalog and XML Catalog support

## Komodo 4.0 Alpha 5 (September 1, 2006)

- More luddite languages
- Projects: Deployment
- Multilanguage code intel
- JavaScript DBGP event-based breakpoints (eg. onclick)

## Komodo 4.0 Alpha 4 (August 24, 2006)

- CSS autocomplete/calltips
- HTTP Inspector rules and filters
- Projects: live folder/projects improvements, performance improvements
- Vi Bindings: new features and improvements
- JavaScript: Interactive Shell and debugging improvements
- Misc. other bug fixes

## Komodo 4.0 Alpha 3 (July 25, 2006)

- HTTP Inspector
- More project work (project prefs, more prevalent live folders)
- JavaScript Interactive Shell

## Komodo 4.0 Alpha 2 (July 11, 2006)

- SFTP/SCP support in remote files system
- JavaScript debugging improvements (crashes, breakpoints, etc.)
- SCC History
- Vi Bindings

## Komodo 4.0 Alpha 1 (June 26, 2006)

- JS debugging in Firefox via the JS DBGP XPI.
- Live Folders in the project viewer (backed by new file notification system)
- UDL/Luddite lexing framework to support RHTML syntax coloring.

## Komodo 3.5.3 (May 4, 2006)

- Fixed some xpcom registration issues on startup
- Some minor unicode issues on non-English systems fixed

## Komodo 3.5.3 Beta 1 (March, 2006)

- [Mac OS X] Now have a build of Komodo for Mac OS X on Intel.
- [Solaris] Once again have a Komodo for Solaris build.
- Numerous locale and encoding bugs have been fixed.
- Numerous keybinding bugs have been fixed.
- Minor FTP-support improvements to speed up browsing in the "Open Remote File" dialog.
- Improvements in the Diff Windows to properly support context, unified and plain diff styles.
- A full list of bug fixes can be obtained on http://bugs.activestate.com/.

## Komodo 3.5.2 (December 6, 2005)

- [Windows] Fix `AltGr+<number>` keybindings for international keyboard layouts on Windows. See bug 43021 for details. One side effect of this fix is that the keyboard shortcut for "View Line Numbers" had to be changed from `Ctrl+Shift+6` to `Ctrl+Shift+4`.
- [Windows] Fix XSLT autocomplete (bug 41898).
- Perl syntax checking default setting change to not use taint mode.
- [Windows] Fix setting of Windows File associations (bug 42107). Due to the nature of the bug it may be necessary to first remove all your file associations in the Windows Integration panel, press "Re-apply settings to system", then reset all your file associations before they will be setup properly.
- [Linux] Fix SELinux issues that would prevent Komodo from starting on Linux machines with SELinux kernel extensions installed and enforcing -- the default on Fedora Core 4. (Bug 43260)
- Various bug fixes.

## Komodo 3.5.1 (November, 2005)

- Added a Ruby Interactive Shell.
- Various bug fixes, especially for Ruby support, IME, and Mac OS X keybinding issues.

## Komodo 3.5 (November 2, 2005)

- Komodo has been ported to Mac OS X
- Ruby support has been added, including debugging, code intelligence (including Code Browser support, Object Browser support, AutoComplete and CallTips), syntax checking, syntax highlighting, and code folding.
- Komodo's Mozilla source base has been upgraded to the 1.8 tree (same as Firefox 1.5).
- The embedded Python has been updated to version 2.4.
- Multilingual Input Method Editor (IME) support.

## Komodo 3.1 (February, 2005)

Key Features

- Subversion support has been added to the Source Code Control system. Support for Subversion is limited to the same features and capabilities available for CVS and Perforce. For more information, see Source Code Control
- Perl AutoComplete and CallTips support is available in this release. See AutoComplete and CallTips for more information.
- The Python debugger has been rewritten into a regular Python package, and now includes an extension written in C to provide performance boosts for large applications, or applications using various GUI toolsets (eg. wxPython).
- PDK 6 support is now built into the distribution and does not require a separate step to enable.

Enhancements

- Syntax coloring for many new languages, including APDL, Asn1, AutoIt, Asm, Avenue, Bash, CLW, EScript, Erlang, Forth, Gui4Cli, Kix, Lout, Metapost, MMIXAL, Lot, MSSQL, Nsis, PowerBasic, PostScript, POV-Ray, Scriptol, Specman, TeX, Verilog, and YAML.
- Unicode and locale support has been enhanced.
- Performance of the UI components has been improved.
- Markers that show line wrapping when the editor is in wrap mode
- Better column select support. Use 'Shift'+'Alt'+ arrow keys for selection.
- TrueType fonts are available on Linux.
- Anti-aliased fonts are available on Linux.
- Support for copying, pasting as well as dragging and dropping has been improved on Linux.

## Komodo 3.1 Beta 2 (January, 2005)

Bug Fixes

- Win9x startup and runtime problems in Beta 1 (bugs 34939, 36202, 36207, 36208)
- WinNT startup problems in Beta 1 (bug 36211)
- AutoComplete: Inherited methods of HTTP::Request not suggested (bug 35769)
- AutoComplete: perlcile gets stuck scanning WWW::Mechanize (bug 35788)
- AutoComplete: PHP AutoComplete for parent:: includes class members for the current class (bug 36104)
- AutoComplete: Code intelligence doesn't supply methods for an instance of an object. (bug 36128)
- Code Browser: "Go to Definition" error with code folding (bug 33495)
- Code Browser: Perl file is shown twice in the Code Browser (bug 33665)
- Debugger: Remote Python debugging hangs on non-existent file (bug 36247)
- Debugger: Last line not recognized in remote dbg (bug 36265)
- Documentation: Wording change to Perl remote debugging setup docs (bug 33067)
- Documentation: K3.1 Solaris may require OS patches (for Mozilla) (bug 35873)
- Documentation: Fixes to Tutorial docs (bugs 36073, 36077, 36080)
- Editor: "updateBreakpointsFromMarkers" traceback during save (bug 33150)
- Editor: Komodo does not notice that mailexport.xml has changed (bug 36078)
- Macros: Some macro triggers don't work (bug 36084)
- Object Browser: HTTP::Date.time2str looks odd (bug 35786)
- Source Code Control: Offer to save file on SCC diff when the file is dirty (bug 36067)

To view the complete list of bugs fixed in this release, see http://bugs.activestate.com.

## Komodo 3.1 Beta 1 (January, 2005)

Bug Fixes

- Solaris builds available
- Subversion documentation added
- Further performance improvements in Python debugger
- Perl Code Intelligence improvements
- Perl .xs file extension mapped to C++ lexer
- * Perl .PL file extension mapped to Perl lexer
- Fixes to Watch variables tab (bug 35808)
- Duplicate variable names in PHP completion fixed (bug 34795)
- Advanced debugger preferences added for customizing amount of data returned from debug sessions for variable viewers
- Previously, projects could not import/open files with colon in the filename (bug 35783)
- Permission denied on one item in import prevented importing any files/dirs (bug 30188)
- Support extends and implements for AutoComplete in PHP ( bug 35881)
- Fixed PHP completion for remote files (bug 34745)
- Support self keyword for PHP completion (bug 35042)
- Python -E caused debugging/shell to fail (bug 35114)
- Source Code Control add/delete status in projects was broken (bug 35919)
- Source Code Control edit command was available when it shouldn't have been (bug 35927)
- Source Code Control folder/container commands were not available (bug 35925)
- Fixed using locally installed PyDBGP

To view the complete list of bugs fixed in this release, see http://bugs.activestate.com.

## Komodo 3.1 Alpha 4 (December, 2004)

Bug Fixes and Enhancements

- Editor: Column select key bindings now 'Alt'+'Shift' rather than 'Ctrl'+'Alt'+'Shift'
- Debugger: No tooltips/hints for variables when debugging Perl script (32875)
- Debugger: Only 100 children of an array shown in debugger variable panes (33702)
- Python: Extreme slowness debugging large python applications (33140, see new features above)
- Python: wxPython crashes resolved (33112, see new features above)
- Python: Stepping into execfile within a method fails (34767)
- Python: Eval fails to debug (32657)
- Python: Can't set breakpoints in Python threads (34803)
- Python: Debugger fails to display Python sets ( 34796)
- Python: Interactive shell hangs
- Perl: Log file path does not expand tilde (34711)
- Perl: Debugger stops execution in extraneous .pm files (34699)
- Perl: Various remote debugger issues fixed
- Perl: NEW break support added
- Perl: $1 not preserved in Perl interactive shell session (34528)
- Perl: Single-quoted multi-line string failure (34967)
- PHP: Incorrect line numbers used in code browsing (32499)
- PHP: Completion of functions from include files is faulty (34865)
- PHP: Preferences report debugging is not configured (34703)
- PHP: Updated xdebug extension
- TCL: Support for debugging incrtcl code
- default extensions for new languages (34708)
- Incorrect tooltip in search toolbar (33347)
- Using tab key to indent deletes characters (34695)
- Komodo version does not show in name in Add/Remove Programs (34797)
- 'View as language', display does not update syntax coloring (34689)
- Perl: Syntax color issues (34087)
- Completion drop-down is clipped by scintilla window (34392)
- dragging/dropping multiple files fails to work (34891)
- Rectangle (column) selection failed on windows (34042)
- Print selection with tabs prints incorrect selection (34739)
- Better cvs version parsing (35428)

## Komodo 3.1 Alpha 3 (November, 2004)

Bug Fixes

- fixed startup bug on Linux when using NFS mounts for home directories (34041)
- MOZ_PLUGIN_PATH would cause Komodo startup failure (34779)
- wxPython crash when debugging (33112)
- Perl debugger uri fix (34714)

## Komodo 3.1 Alpha 2 (October, 2004)

Bug Fixes

- fixed startup bug on Windows
- Perl Interactive Shell: a few refinements relating to handling of special variables ($1 .. $9, $`, $', @_)
- Perl debugger: perl debugger fails if logfile setting has spaces in the path (bug 34192)
- Unix install script: fix expansion of "~" directories
- VPM: fix startup failure

## Komodo 3.1 Alpha 1 (October, 2004)

Bug Fixes

- Overload support for the Perl debugger (33367)
- Fixed CVS support for less used protocols or protocols available with CVSNT
- Minor fixes in Perforce support (33683)
- "Find" functionality improvements (33698)
- Debugger's HTML view now handles images properly (33619)
- Cyrillic (and other) keyboard support fixed (34028)
- Perl syntax coloring improvements (34087
- General debugger improvements (32645)
- Debugging of Tcl `incrtcl` classes now possible (34090)
- Breakpoint failures addressed for Tcl debugging (34079)
- File|Revert command was previously never available (33335)
- "Repeat next" key binding ('Ctrl'+'K', 'Ctrl'+'U') now stops repeating when it should (33960)
- On Linux, dragging and dropping a file onto an open file in the Editor Pane caused the name of the added file to be pasted into the already-open file (32341)
- Deleting a single custom menu from the Toolbox removed all custom menus from the main menu (33202)
- Comparing files with different line endings caused Komodo to hang (32932)
- Breakpoints in remote files were ignored (33636)
- The Python remote debugger failed when debugging local files (33079)
- Perl Debugger - fixed "Bizarre copy of ARRAY"
- Opening files with 'Enter' key had unintended side effects (33433)
- Non-ASCII Characters were not displayed properly in the RX Toolkit (33054)
- Remote debugger always searched for local files (33116)
- Breakpoints didn't work for filenames with parentheses when debugging Perl (33968)
- Temporary files were created and not removed when debugging Perl (34308)
- Module dependencies are now handled better during Perl debugging (33771, 33255)
- Breakpoints are now reset after saving a file for Perl debugging (34267)

To view the complete list of bugs fixed in this release, see http://bugs.activestate.com.

## Komodo 3.0.1 (August, 2004)

- On Windows, CPU usage spiked to 100% from the debugger proxy at end of a debug session.
- Custom menus disappeared when dragging macros into them.
- The "Your Toolbox has changed outside Komodo" alert was being displayed unnecessarily.
- Komodo was unable to "Save As" files in 8bit encodings on Linux platforms.
- Files could not be opened while using ShiftJIS or cp936 system default encodings.
- The debugger was hanging with a Prototype Error when debugging Perl on Linux.
- Usage of the "System defined default browser" was incorrect in some cases.
- CVS integration did not work with some versions of CVS.
- The code intelligence scanning engine hung on certain file access errors.
- Some failures with non-ascii characters in filenames on Linux (such as the inability to use CVS or failures in the auto-save feature) were fixed.
- Some failures when converting document encodings were fixed.

To view the complete list of bugs fixed in this release, see http://bugs.activestate.com.

## Komodo 3.0 (July, 2004)

#### Code Intelligence

Komodo's Code Intelligence system is a set of tools that supports multiple languages. The Code Intelligence tools include the Code Browser, Object Browser and Python AutoComplete and CallTips. All Code Intelligence tools require a Code Intelligence database to operate fully.

The Object Browser is a graphical browser that searches the Code Intelligence database for specified code symbols and modules. Use the Object Browser's preview pane to view code snippets containing the search criteria.

The Code Browser displays on the Code tab next to the Projects tab in the Left Pane. The Code Browser displays a hierarchical tree view of all code constructs (for example, variables, methods, imports) in all open files. For Python, instance attributes are all displayed. The code tree, which can be navigated using either the keyboard or mouse, includes the following features:

- Double-click a node to jump to that point in the code.
- When the cursor is positioned in the Editor Pane, clicking the Locate current scope button on the Code Toolbar or pressing 'Ctrl'+'K', 'Ctrl'+'L' causes Komodo to jump to the node in the code tree that most closely matches the current point in the program. Additionally, a Scope Indicator, located in the status bar, displays the current scope of a selected code construct. Double-click the Scope Indicator to open the tree hierarchy to the code construct.
- When the focus is in the Code Browser tree, pressing the 'Tab' key causes Komodo to shift to the Filter text box. Typing any string in this text box causes the Code Browser to display all of the nodes matching that string. Pressing 'Tab' again shifts the focus back to the tree. Clearing the Filter text box returns the tree to its original state. Note that all matching nodes are shown, even those that are invisible because their parents were not "expanded".
- The Sort menu on the Code Toolbar lets you toggle whether the nodes at each level of the tree are sorted in alphabetical order or according to the order they occur in the file.
- The Code Description pane, located in the lower part of the Code Browser, displays additional documentation (when available) on various program components.

Python AutoComplete and CallTips are enhanced with the Code Intelligence database.

#### Interactive Shell

The interactive shell is an implementation of Perl, Python and Tcl's interactive shell within Komodo. The interactive shell supports, AutoComplete, CallTips, debugging functions, customization and history recall.

#### Debugging

- A debugger proxy is available that enables multiple users to debug with Komodo on the same machine.
- The Breakpoints tab in the Bottom Pane of the Komodo workspace is designed for convenient management of breakpoints and Tcl spawnpoints. This tab displays enabled and disabled breakpoints and spawnpoints. Double-clicking an enabled or disabled breakpoint on the Breakpoints tab opens the related file in the Editor Pane and shifts focus to the line in the program associated with that breakpoint.
- Komodo now handles multi-session debugging. Komodo can debug multiple programs, regardless of the supported languages used in the applications being concurrently debugged.
- The Bottom Pane of the Komodo workspace (previously the Output Pane) has been reorganized and enhanced. The new Debug tab is displayed whenever a Komodo debugging session is launched.
- A Debug Toolbar is available on the Debug tab in the Bottom Pane of the Komodo workspace. It includes additional controls for detaching from a new debugging session and forcing a break.
- New remote debugging features include the ability to listen for remote debugger sessions continuously, set remote debugger preferences, and check the listener status of the current configuration.
- The new debugger properties dialog box supports multiple 'configurations' to be saved per file.
- The new Debugger dialog box (displayed when a debug session is invoked) supports configurable interpreter arguments.
- The Disable Output Buffering and Enable Implicit Flush options for PHP debugging have no effect when Simulate CGI Environment is selected. To disable output buffering in CGI emulation mode, manually comment out the output_buffering setting in php.ini with a ";" character, or set it to "off".

#### Rx Toolkit

The Rx Toolkit has been completely overhauled. New features include:

- Match Type buttons that set the match mode for the regular expression. The buttons represent functions that let you Match, Match All, Split, Replace and Replace All.
- For Python regular expressions, there are two new modifiers: Unicode and Locale.

#### Multi-User Features

- A Shared Toolbox with functionality similar to the standard Toolbox makes it possible for multiple users to share items such as run commands and code snippets. The Shared Toolbox is enabled via a check box on the Shared Support page of Komodo Preferences.
- Users can accept a default Common Data Directory or specify a custom location via the new Shared Support page in Komodo Preferences.
- Multiple users can share .tip, .pcx and .pdx files and preferences.

#### Enhanced Search Functionality

- The new Open/Find Toolbar makes it easier to open files and search for strings in currently open files.
- A Find in Files dialog box is used to search for files that are not currently open.

#### Macro Enhancements

- A Macro Toolbar provides a quick and easy way to record, pause, play, stop and save macros.
- Macros are no longer stored as separate files (as they were in 2.x). Because macro content is now included in a macro item, it is easier to share macros between multiple users.
- The Properties dialog box for macros contains a window in which macros can be coded in either JavaScript or Python.
- Triggers can be set so that macros execute as a result of specific Komodo events.
- The documentation includes a macro API.

#### Custom Toolbars, Menus and Icons

Create Custom Toolbars and Menus for frequently used components. Custom Toolbars are displayed beneath the existing toolbars; custom menus are added to Komodo's top-level menu, between the Tools and Windows menus. Custom icons can be assigned to components like run commands, snippets, etc.

#### Editing Enhancements

- Reflow Paragraph
- Join Lines
- Enter Next Character as Raw Literal
- Repeat Next Keystroke N Times
- Emacs-style "marks"
- Clean Line Endings on save

#### Miscellaneous

- PHP 5 is supported.
- Support for Web services has been deprecated. Note that this will not prevent the use of Web services in applications developed in Komodo.
- Users familiar with the Emacs editor can configure Komodo to use Emacs key bindings and set a File Associations preference so that Komodo checks for an embedded Emacs mode specification.
- Support for Tcl has been improved to include more detailed logging and additional syntax checking options.
- Two new interpolation shortcuts (%L and %P) can now be used in the Run Command dialog box.
- Users now have the option to assign custom icons to Komodo components (snippets, run commands, etc).
- Printing features for specifying line wrapping and font scaling have been added to the Printing page in Komodo Preferences. This page is now also accessible by clicking Print Settings on the File menu.
- Components from Projects or the Toolbox can be exported to a self-contained archive for distribution to other users. The import and export wizards are invoked via the right-click context menu in the Project or Toolbox tab, or from the Toolbox menu.
- Perl, Python and Tcl preferences include the ability to specify import directories.
- On the Editor|Key Bindings preference page, the key bindings list can be filtered.

#### Documentation

- The new Feature Showcases are quick demos of Komodo features.
- Komodo Help now displays in a selected web browser.
- Improved search capabilities, including phrase search and result ranking, make it easier to locate specific information.
- The documentation includes an index.
- Context-sensitive Help buttons have been added throughout the Komodo workspace.
- The documentation includes a macro API.

### Komodo 3.0 Beta 4 (June, 2004)

### Komodo 3.0 Beta 3 (May, 2004)

### Komodo 3.0 Beta 2 (May, 2004)

### Komodo 3.0 Beta 1 (May, 2004)

## Komodo 2.5.2 (January, 2004)

This release contains bug fixes for Komodo 2.5 and 2.5.1, including:

- Intermittent crashes were occurring on Linux, caused by the autosave feature.
- On Linux, the Internationalization dialog in Komodo's Preferences was generating an error.
- Perl's Visual Package Manager was not always reporting a startup failure to the user.
- AutoComplete for Perl and Python did not work.
- Intermittently, the variable type indicator (i.e., $, @, %) was not being selected when double-clicking on a variable in the editor pane.
- Umlaut characters were causing file contents to be lost on save.
- CVS source code control integration functions were not available on directories or projects.
- The Tcl statement `source file` was not finding the specified file.
- There were errors in Tcl syntax checking.
- CVS source code control integration was generating errors on Solaris.
- There were debugging errors when working with Tcl scripts on Solaris.
- When adding template items to a project or the Komodo Toolbox, it was not possible to cancel the file selection operation.
- The CVS source code control integration now supports use of a local repository.
- The update function in Komodo's source code control integration was not functioning under certain circumstances.
- On Solaris, it was not possible to create a file on an NFS-mounted disk.
- Regardless of the setting for line endings, new files were created with DOS/Windows line terminators.
- Perl brace matching could cause Komodo to lock up under certain circumstances.
- XML AutoComplete could cause Komodo to lock up.
- During a workspace restoration, if multiple files contained breakpoints, the breakpoints were not being written to Komodo's breakpoint manager and would have to be manually re-set.
- After debugging, debugger arrows were still active on files that had been stepped into.
- Files names that included spaces could not be added to projects.
- Under certain circumstances, Komodo would not start on Red Hat version 8.
- Autosave functionality is now more robust.
- Under certain circumstances, opening files resulted in a blank page in the editor pane.
- On Linux, the debug session would occasionally hang due to problems with the remote debug listener.

## Komodo 2.5.1 (October, 2003)

This release contained bug fixes for Komodo 2.5. The only user-visible changes were:

- When clickable links are displayed in the Output Pane, you must double-click (rather than single click) to follow the link. This allows for portions of the link to be selected via single-clicks. The link is no longer underlined.
- The default Perl remote debugging port has changed from 9010 to 9011 (due to a conflict with the XIM server on UNIX). To use the new port, alter the PERLDB_OPTS setting on the remote machine. If you are invoking the Komodo debugger via the Perl Dev Kit's -debug switch, ensure that the specified port number matches the Komodo's port number.
- The menu link for the Start Page has been moved from the Help menu to the Windows menu.
- The Close All menu option no longer closes the Start Page.
- The Internationalization preference page for language encodings has changed. Programming-language specific encodings are now used for existing files, as well as new files.

The following major bugs were fixed:

- The highlighting of selected text was not released if the mouse pointer moved outside of the editor pane.
- Komodo Personal failed to start up properly if the Show Button Text option was enabled.
- Background syntax checking would cease to function.
- Saving of remote files failed for long editing sessions.
- Remote debugging didn't honor Perl breakpoints.
- The Rx window could hang.
- Hotspots in the Output pane were generated for spurious lines and the dialog was hard to dismiss.
- Installing web services for Perl 5.8 is fixed.
- The Build Standalone Perl Application dialog didn't deal well with scripts with UNC filenames (\\machine\drive\...).
- Printing collapsed whitespace in the middle of lines.
- The ability to show diffs in an editor tab wasn't working.

## Komodo 2.5 for Windows, Linux (September, 2003)

General

- Komodo's speed has been boosted through re-engineering, resulting in quicker times for startup, tab-switching, loading of dialogs, as well as overall performance gains.
- Menus have been re-organized, and new items have been added. Every Komodo feature can now be accessed through the top-level menus.
- The Preferences pages and a number of existing dialogs have been improved and reorganized for ease-of-use. Changed dialogs include those associated with current file settings, templates, source code control, remote files, and the Perl Dev Kit.
- Templates can now use the same interpolation shortcuts as commands and snippets. Prior to Komodo Version 2.5, a set of variables could be used to embed the current date and time in files created from custom templates. The old codes have been deprecated and will be removed in the next Komodo release.
- The Show Unsaved Changes command, previously exclusive to the Editor context menu, has been added to the File menu.
- A new Compare Files feature on the Tools menu provides a quick and easy way to locate and "diff" two files.
- A Word Wrap command has been added to the View menu.
- A Tcl tutorial has been added to Komodo's set of language tutorials. Another new tutorial, the Komodo Tour, provides an introduction to the program's key features.
- ASPN Cookbook integration is no longer supported.

Workspace

- Changes have been made to make more efficient use of the Komodo workspace:
  - A Full Screen command has been added to the View menu.
  - The Toolbox and Project Manager, which previously appeared in separate panes, are now contained in single pane. You can select Projects/Toolbox Pane from the View menu to show or hide this pane.
  - Toolbar button text is not displayed by default. Hiding the button text makes it possible for the toolbars to share a single row.
- The functionality of Komodo's ancillary windows has been enhanced. The Debug Output, Command Output, and SCC Output tabs in the Output Pane offer context menus with access to a subset of the top-level View menu. There are key bindings for each of the context menu items. The same context menu is available in the "diff" window, which is invoked by either the Show Unsaved Changes command or the Compare Files command. The ancillary windows also support "hot-spotting". If Komodo detects a file reference, it will create a hot spot that links to the file itself.
- Interpreter errors displayed in the Output Pane are now hyperlinks to the relevant line.
- 'Ctrl'+'Tab' functionality is now supported in all of the panes in the Komodo workspace. Earlier versions of Komodo supported tab-switching in the Editor Pane only.
- The Output tab and the Variables tab are now known as the Debug Output tab and Debug Variables tab, respectively.
- The "grippies" used to show and hide the panes in the Komodo workspace have been abandoned in favor of "x" close buttons.

Project Manager and Toolbox

- The new Toolbox menu provides functionality for importing and exporting items, along with other commands that were previously exclusive to the Toolbox context menu. The Projects/Toolbox Pane contains the Projects tab and the Toolbox tab. You can show or hide the Projects and Toolbox tabs by pressing 'Ctrl'+'Shift'+'P' and 'Ctrl'+'Shift'+'T', respectively.

Editor

- Additions to the Window menu offer new display options for the Editor Pane. Selecting Split View divides the Editor Pane in two, so that you can preview files (e.g., HTML or XML) or compare two files. Select Rotate Tab Groups to toggle vertical and horizontal variations of the split view.
- The View As Language item on the View menu now has a submenu item called Reset to best guess. Select this item to ignore the user preference, and analyze the file in an attempt to determine its language.
- Change the language of an open file by right-clicking the name of the language on the status bar and selecting a language from the pop-up menu.
- A new Smart Editing preference gives you the choice of configuring the 'Tab' key instead of 'Ctrl'+'Space' to trigger Komodo's word-completion feature.
- The Go To Line dialog box now supports entries that are relative to the current line. For example, instead of entering a specific line number, you can enter "+10" or "-10" to move ten lines forward or back.
- There are some changes to the default key bindings. For a complete listing of default key bindings, select Help|List Key Bindings.
- The Ignore Hidden Text option has been removed from the Find dialog box.
- Komodo now supports editing with non-English characters, based on the locale specified in the regional settings for Windows. See Customizing International Encodings for more information.

Web and Browser

- A Preview in Browser command is now available through the View menu and the main toolbar. Depending on how the Web and Browser preferences are configured, this command will display a preview in one of three ways:
- - in the Editor Pane
  - side-by-side with the source code in a split view of the Editor Pane
  - in a separate window

GUI Builder

- GUI Builder functionality has been extended to include language-specific widget palettes that are displayed according to the initial language selection. In addition, a greater variety of widgets is available.
- The new Dialog tab displays an interactive organizational map that makes it easier to plan and manage the structure of dialogs.
- The new Menu tab is used to create drop-down menus. The Menu tab features an additional widget set used to create standard menu commands, as well as commands with check box or radiobutton behavior.

Printing

- The new Page Setup options used to set orientation, margins, and headers and footers can now be accessed from the File menu.
- A new Print Preview command has also been added to the File menu. In addition to navigation buttons for viewing multi-page print jobs, the preview window offers access to Page Setup options. As a result, printing preferences available in Komodo 2.3, including Print Line Wrap Markers, Characters per line and Font Size Adjustment, have been removed.
- Selecting the Print to HTML command now opens the generated file.

Fonts and Colors

- The Fonts and Colors preferences have been streamlined to make managing these settings easier. You can create new font and color schemes based on the default scheme. In addition to Language-Specific Coloring, you can now set Common Syntax Coloring to specify the settings for elements used in multiple languages.

Debugging

- A Run Without Debugging item has been added to the Debug menu, providing a faster way to run scripts in Komodo.
- A new debugging preference, Try to find files on the local system when remote debugging, has been added. When this preference is turned on, Komodo will search for the debugger file on the local system instead of automatically opening a read-only version of the file retrieved from the debug engine.
- Komodo now offers full support for Tcl debugging. In addition, runtime Tcl syntax checking no longer requires the Tcl Dev Kit.

Source Code Control

- The Automatically check out before save option has been moved from "General Source Code Control Preferences" to "Perforce" Preferences, where it appears as Automatically open files for edit before save.

### Komodo 2.5 Technology Preview 1 for Solaris (August, 2003)

### Komodo 2.5 Beta 1 for Windows, Linux (August, 2003)

### Komodo 2.5 Alpha 2 (July, 2003)

## Komodo 2.3 (February, 2003)

General

- Compatibility issues with ActivePerl 5.8 (VPM), PHP 4.3 (syntax checking) and Python 2.2.2+ (debugging) have been resolved.
- The XSLT engine has been upgraded to Xerces 2.1 and Xalan 1.4, and includes built-in extensions for that version. (Refer to http://xml.apache.org/xalan-c/extensionslib.html for information about extension support.)
- The new Windows Integration page in the Komodo Preferences is used to configure system-wide file associations.
- The Projects and Workspace page in Komodo can be used to have Komodo prompt you to open recent files and projects when you start the program.
- The configuration of the Komodo workspace is restored after closing and re-opening Komodo.

PHP Configuration Wizard

- The PHP Configuration Wizard simplifies the previously cumbersome process of configuring PHP debugging extensions in Komodo.

Run Command

- The Run Command function has been enhanced, and a new Run Command Tutorial has been added.

Toolbox

- Snippets now support shortcut codes. To view the supported shortcuts, right-click a snippet, select Properties, and click the arrow button in the Properties dialog.
- The new Add "Open..." Shortcut... item on the Toolbox menu is used to create shortcut links in the Toolbox to directories. Key bindings can be assigned to these links.
- Items can be exported from the Toolbox. Select the desired items, then right-click and select Export as Project File....
- Exported Toolbox items can be imported using the Import into Toolbox... menu item, accessible from the Toolbox menu.
- The new Compare File With... item on the file context menus in the Toolbox and Project Manager is used to compare the selected file with another file selected via a file picker dialog.

Project Manager

- Projects load much faster than in previous versions.
- Snippets now support shortcut codes. To view the supported shortcuts, right-click a snippet, select Properties, and click the arrow button in the Properties dialog.
- The new Add "Open..." Shortcut... item on the Project Manager menu is used to create shortcut links in the Project Manager to directories and URLs. Key bindings can be assigned to these links.
- The new Compare File With... item on the Project Manager menu is used to compare the selected file with another file selected via a file picker dialog.
- When a project has been changed, it can be reverted to its last saved state using the Revert Project menu item.
- Many settings now persist in Komodo's projects, including debugging options and Import from File System settings.
- The Import from Filesystem function prompts if you want to install all the files in a filesystem, and allows you to deselect desired files.
- After using the Import from Filesystem function, if you attempt to import the same filesystem location into the same project, only files that are new since the last import will be imported.

SCC Integration

- If you are using Komodo's Perforce integration, you can now specify an external "diff" tool.
- The "diff" window displays the original content and the new content in different colors.
- The "diff" window supports function keys to navigate to changes in the file.

Editor

- Select Show Unsaved Changes from the Editor context menu to view the differences between the version of the file currently displayed in the Editor Pane and the last saved version of the file.
- Breakpoints and code folding information is stored with the file, and therefore does not need to be reconfigured when the file is closed and re-opened.
- There is a new automatic indentation style ("Indent to first non-empty column") that can be configured using Komodo's Indentation preferences.
- The symbols used to indicate folded sections of code (and sections of code that can be folded) can be configured on the Editor|Indentation page of the Komodo Preferences.
- You can change Read Only status of a file in the file's preferences. Access the file preferences by right-clicking the file in the Editor Pane and selecting Properties and Settings.
- If you change and save a file with a Read Only status, you will be given the option to "force" the write. This will remove the Read Only flag, save the changes, then reset the Read Only flag.
- You can specify the language association for an open file in the file's preferences. Access the preferences for the current file by right-clicking the file in the Editor Pane and selecting Properties and Settings. Use the Reset button to reassert the language associated with the file type.
- Various editor bugs have been fixed, including intermittent failure of the paste function, periodic hanging when large projects were being opened, Perl syntax checking problems and lost code folding after tab switching.

GUI Builder

- In Komodo's Preferences, you can specify the preferred port that the GUI Builder will use.
- There are now no constraints for user code added to Python files generated by the GUI Builder.

PDK Support

- Komodo 2.3 supports version 5 of the Perl Dev Kit, including the new PerlNET and PerlTray components.
- Support for all the Perl Dev Kit tools has been enhanced.
- When the Build Standalone Perl Application function is used, settings in the dialog are stored with the file.

### Komodo 2.3 beta 2 (February, 2003)

### Komodo 2.3 beta 1 (January, 2003)

## Komodo 2.0.1 for Linux (November, 2002)

- See Komodo 2.0 for Windows for a list of 2.0 features included in version 2.0.1 for Linux.
- International Encoding support now works with European and Cyrillic character sets. Configure encoding support on the Internationalization page of Komodo Preferences.
- a new Web Preferences page, used to specify the default browser
- additional Run Command Shortcuts

### Komodo 2.0.1 for Windows (October, 2002)

### Komodo 2.0 beta 3 for Linux (October, 2002)

### Komodo 2.0 beta 2 for Linux (September, 2002)

## Komodo 2.0 for Windows (September, 2002)

- Project Manager
- - add Run commands to projects
  - add GUI dialogs to projects (Komodo Pro)
  - add Web services to projects
  - add macros to projects
  - add code snippets to projects
  - organize objects into folders
  - import groups of files from the filesystem
  - organize the order of objects in projects
  - drag items to and from the Project Manager to the Toolbox and Editor
- Toolbox
- - add Run commands to the Toolbox
  - add GUI dialogs to the Toolbox (Komodo Pro)
  - add Web services to the Toolbox
  - add macros to the Toolbox
  - add code snippets to the Toolbox
  - add code snippets to the Toolbox
  - organize objects into folders
  - drag items to and from the Toolbox to the Project Manager and Editor
- Customizable Key Bindings for standard Komodo functions, and for macros and Run commands
- Source Code Control integration for CVS and Perforce (Komodo Pro)
- Visual Package Manager integration (Komodo Pro)
- GUI Builder for building graphical applications (Komodo Pro)
- Macros for recording and repeating common keystroke sequences
- Create code snippets by selecting code in the Editor Pane and dropping it into the Project Manager or Toolbox
- Enhanced "Run" Command
  - save run command to the Toolbox
  - new shortcuts, including escaped % symbol, URL-escaped selection, etc
  - specify starting directory for command
  - specify run location (output window, new console, no console)
  - specify environment variables
  - save advanced options (such as environment variables) as Run command defaults
- Function Search to quickly find Perl packages and subs, Python or PHP classes and functions, and Tcl procs
- Incremental Search
- HTML Preview Tab
- Customizable Language Help
- Customizable Cursor, Current Line, Selection and Background Colors
- "Mark All" option in Find dialog
- "Remove All Bookmarks" command
- Printing enhancements
- Background Syntax Checking
- - hover mouse over icon for total number of errors and warnings
  - double-click icon to move the editing cursor to the next error or warning
- Tip of the Day
- 'Ctrl'+'Tab' switches between the two most recently opened or edited files
- Ability to re-order open files by dragging-and-dropping file tabs in the Editor Pane
- File tab context menu with common file tasks, such as saving and accessing source code control commands
- 'Ctrl'+'X' and 'Ctrl'+'C' take entire lines if no text is selected, and will continue to accumulate lines
- 'Ctrl'+'Shift'+'V' pastes and selects the pasted text
- Improved word wrapping
- Partial word movement
- Overtype / insert toggle support
- Search through the document for the word under the cursor
- Web service proxies in Perl programs
- Brace matching
- Transposing characters
- Literal characters

### Komodo 2.0 beta 2 for Windows (September, 2002)

### Komodo 2.0 beta 1 for Linux (September, 2002)

### Komodo 2.0 beta 1 for Windows (August, 2002)

## Komodo 1.2.9 (July, 2002)

The following issues were addressed in Komodo 1.2.x releases:

Editor

- (Windows only) Syntax checking now works properly for files located on a network.
- (Tcl, Perl and PHP) Double-clicking variables now selects the variable prefix.
- When dragging and dropping text into the Editor Pane, Komodo no longer attempts to open a new file.
- When dragging and dropping text from the Editor Pane to other parts of Komodo, Komodo was crashing. This has been fixed.
- When CallTips are displayed, tip highlighting now progresses as statement components are entered in the editor.
- When opening large HTML files in the editor, Komodo no longer displays a syntax error warning.
- Search and replace strings containing backslashes are now handled properly.
- The error regarding invalid regular expressions during search and replace has been fixed.
- Templates in language directories are now correctly included in the language categories.

General Debugging

- Watched variables can be manipulated regardless of whether the debugger is running.
- When the debugger is running, use 'Ctrl'+'F10' to run the debugger to the current cursor position.
- When the debugger is running, the current line is now highlighted. The highlighting is dimmed when a stack other than the current stack is selected.
- The debugger now positions the current line in the middle of the Editor Pane.

Perl Editing and Debugging

- Socket errors in Perl debugger connections have been fixed by the addition of a new configuration item. Select Edit|Preferences|Debugger, and enter the socket port in the Perl Listener Port field. The "CallKomodo" configuration of the PERLDB_OPTS is no longer used, and can be removed. See Debugging Perl Remotely for more information.
- Support for the overload.pm module has been added.
- Evals in included files no longer fail when stepping into the included file.
- "Here" doc styling is now supported.
- When debugging Perl, the Komodo debugger does not step over "require" statements.

PHP Editing and Debugging

- Komodo now fails gracefully if the php.ini file does not exist in the specified location.
- AutoComplete is now available inside strings.
- The icon on the Komodo start page now correctly shows when PHP has been enabled.
- AutoComplete no longer fails inside certain string elements.
- Syntax checking now functions on large PHP files.
- PHP configuration is correctly reloaded if it is changed.
- AutoComplete now picks up changes in the php.ini file.
- The PHP 4.1 / 4.2 debugger extension is included with the Komodo distribution. Note that the 4.1 debugger extension functions with PHP version 4.2.

Tcl Editing and Debugging

- Breakpoints can now be set in included files.
- For Tcl Dev Kit users, Prowrap was being incorrectly called, rather than Procheck.

Other

- PDK version 4.0 is now supported.
- The Rx Toolkit has better font styling.
- To speed initial startup, sample Web services are no longer added to the Komodo Preferences.

Web Services

- When parsing WSDLs, there is now schema support for complex types (however, not all schema is supported).
- The WSDL parser now parses all XMethods.com WSDL files.

### Komodo 1.2.7 RC1 for Windows and Linux (March, 2002)

## Komodo 1.2 for Windows and Linux (December, 2001)

Web Service Consumption
Komodo provides Web service support, bookmarks; quickly add Web services to Perl, Python or PHP files (including automatic language support like CallTips and AutoCompletion for Web service objects); browse your Web service bookmark library in the Komodo User Guide.

Share Recipes with the ASPN Cookbook
Komodo provides a fast, easy way to share recipes. Submit your favorite Perl regular expression or Python, Tcl or XSLT code snippet to the ASPN Cookbook.

Enhanced Editing
The Komodo editor detects files that have changed on disk, and gives you the option to reload. Komodo also remembers the "state" of each file in the Most Recently Used list, including cursor position, bookmarks, fold points, language association, and whitespace preference. Undo changes to a file using the Revert File function. Quickly select blocks of code when performing editing functions; configure text to auto-wrap in the editor and to auto-save at the interval you prefer.

Keyboard Shortcuts
New keyboard shortcuts include 'Ctrl'+Insert' (copy), 'Shift'+'Delete' (cut), 'Shift'+'Insert' (paste) and 'Ctrl'+<debug command> (suppress Debug Options dialog). Note that you can also use the 'Ctrl' key in conjunction with the Debugging Toolbar buttons to suppress display of the Debugging Options dialog box.

Find and Replace
Search and / or Replace a word or phrase in all documents open in the Komodo editor. Use the new tab on the Output Pane to view all results from Find or Replace operations.

Templates and Macros
Code faster with language-specific templates. Create custom templates, and embed variables for date and time stamps.

Perl Dev Kit Support
Use Komodo in conjunction with the Perl Dev Kit to build Windows executables, services and controls written in Perl.

Tcl Support
With a membership to ASPN Tcl, use Komodo's syntax checking and debugging with Tcl.

FTP Support
Edit remote files on FTP servers; add remote files to projects; save files to remote FTP servers. Use Komodo's Preferences to configure connection information for servers you use frequently.

Komodo User Guide
Search the User Guide or find a word or phrase in the current page; navigate using the Table of Contents; change the font size. Take a visual tour of the Komodo Workspace, the Komodo Debugger, the Komodo Editor or the Rx Toolkit.

Komodo Tutorials
Learn about new languages and language-specific Komodo features in the Tutorials.

PHP
Now supports AutoCompletion.

Fonts and Colors
Customize the display of fonts and colors for elements of every language supported by Komodo.

CGI Debugging Emulation
Emulate a CGI environment while debugging on your local machine by configuring server environment variables and form input.

Enhanced Debugging
Expanded Debugging Options remember your debug settings from one session to another; view HTML output on the Output tab; configure the Remote Debugging Listener Port; enter program input on the Output tab.

Run Commands
Interact with the command line using the Run Commands function.

Internationalization
Set the default encoding for files in Komodo's Preferences. While Komodo does not yet support editing outside of the English character set, non-English characters in existing files will be preserved.

### Komodo 1.2 beta 1 for Linux (November, 2001)

### Komodo 1.2 beta 2 for Windows (November, 2001)

### Komodo 1.2 beta 1 for Windows (October, 2001)

## Komodo 1.1 (June, 2001)

PHP Debugging Enjoy PHP syntax checking and debugging with Komodo. You can configure Komodo to debug PHP files locally or within a Web server environment. For more information, see Debugging Programs in the Online Help.

XSLT Debugging - This release supports XSLT debugging. You can view your XSLT file, your XML input file, and your output simultaneously. You can even open an XML file on your Web server and transform the file while you debug your XSLT program. We've also improved the sample XSLT file in our Sample Project. For more information on XSLT debugging, see Debugging Programs in the Online Help.

Tcl support - You can now use Komodo to edit your Tcl files, including syntax coloring, code folding, AutoComplete and CallTips. We added a Tcl file to our Sample Project. If you have Tcl Dev Kit, you can enjoy Tcl syntax checking within Komodo. We plan to include stand-alone syntax checking that does not require Tcl Dev Kit in an upcoming release. Komodo does not yet support Tcl debugging.

Improved Performance - This release is based on the latest Mozilla tree, which includes an optimized code base. Performance improvements include faster installation and startup and faster response while you type or change files. Komodo responds much faster during debugging, when opening files and switching between files, and when loading the File Associations pane in the Preferences dialog.

Support for more languages - You can now use Komodo to edit Ruby and other languages, such as VB and SQL.

Improvements for Komodo on Linux - You can now resize the Komodo workspace, you can use fixed-width fonts, and you can debug Perl scripts if you have Perl 5.6 installed and configured.

XML AutoComplete - Komodo now features AutoComplete for your XML files. When you type an open angle-bracket "<", Komodo lists the elements in your file. Komodo XML AutoComplete also lists tag attributes and suggests attribute values for certain values. XML AutoComplete also helps you close your tags.

Expanded Find and Replace dialog - You can now use regular expressions in your find and replace strings, you can search through folded text, and more.

Partial Unicode support - Komodo supports ASCII, Latin-1 and Unicode (UTF-8, UCS-2 or UCS-4) encoding. If you use Komodo to edit a file that has a different character encoding than those mentioned above, non-English characters may be removed when you save the file.

### Komodo 1.0 (April, 2001)

### Komodo 0.1 (November, 2000)