SVN for Sublime Text

Changelog

v1.9.0 9/18/22

  • Bug Fixes
    • Update bundled version of plink.exe on Windows to be based on version 0.76.
    • Rewrite interaction model on Windows to no longer use console handles
  • Deprecations
    • This will be the final release supporting Sublime Text 2, and Sublime Text 3 builds older than 3143 (3.0)

v1.8.0 Unreleased

  • New Features
    • Settings and Key Bindings now use side-by-side editing mode
    • Added commands to enable/disable debug mode
    • Added commands to add and remove license key
  • Bug Fixes
    • Update bundled version of plink.exe on Windows to be based on version 0.73.
    • Fix occasional error related to console handles on Windows 10
    • Improve handling of svn command line client not being installed on Mac
    • Prevent repeated error message on Linux about svn command line client not being installed
    • Fixed warning about mnemonic v in Main.sublime-menu

v1.7.2+2 1/29/14

  • Bug Fixes
    • Fixed two windows-specific bugs related to Python errors

v1.7.1 1/24/14

  • Bug Fixes
    • Fixed bugs with running operations on single files on Windows machines
    • Fixed encoding errors when attach a Windows console to Sublime Text for user interaction
    • Added missing help text for the "L" status when committing
    • Fixed writing the debug log to a file in ST3
    • Resolved an error when trying to use a custom diff command in ST3
    • Fixed a bug when a new working copy was discovered while the background status operation was running
    • Changed how certain DLLs were being loaded on Windows to prevent Windows from loading OpenSSL DLLs that are older than the versions shipped with Sublime SVN
    • Fixed checking out a working copy in ST3 when the current window does not have any open folders
    • Resolved an issue with Revert, Interactive where checkbox logic was backwards
    • Corrected an issue where warnings form SVN on Windows were not being treated as an error
    • Fixed the output of the Info command to always use backslases for file paths on Windows
    • The DISPLAY environmental variable on Linux is no longer wiped when running commands that may benefit from it, such as Diff
    • Fixed a bug with svn+ssh:// repositories in ST2 on Windows

v1.7.0 1/3/14

  • New Features
    • Subversion 1.8 support
    • svn+ssh:// protocol support on Windows via custom Plink executable
    • New svn_ssh_options setting for controling authentication of svn+ssh:// repositories
    • Support for repositories that have up to two folder paths before the logical root of the repository. This is the case when a Subversion repository contains multiple projects, each with their own /trunk, /branches and /tags structure. For instance, when the root of the Subversion repository is https://svn.example.com/, but a specific project is stored at https://svn.example.com/projects/myproject/trunk.
    • Added check to ensure the SVN package is not being improperly synced from Mac/Linux to Windows, and thus missing the Windows .exe files
    • Improved detection of encountering working copies created with a newer version of Subversion than is available to the user
    • Rearchitecture of Windows subprocess backend and custom Subversion and Plink binaries, resulting in less process spawning and improved interactive authentication
  • Bug Fixes
    • Fixed handling of file names with the @ symbol in them
    • Added the sublime_text_binary setting to help with checking out a repository to a new folder on ST2
    • Fixed a bug with incorrectly detecting an unexpected error as a package upgrade event
    • Fixed a bug displaying log dates on Windows
    • Fixed an encoding issue when writing to log files in ST3
    • Corrected an issue with the Ignore and Unignore command on ST3
    • Improved capturing command output when an authentication prompt was displayed in the middle of an operation such as an Update
    • Changed forking of svn processes on posix platforms to unset the DISPLAY environmental variable to prevent the flash of an GUI SSH password prompt. SVN already proxies prompts to the Sublime Text interface.
    • Fixed a selection issue with pre-selecting the branch name when branching a repository that has a path prefix
    • Corrected a bug caching the SSH password for an svn+ssh:// repository when not using SSH keys on ST3
    • Resolved an issue reading the debug settings when the package is first loaded by ST3
    • Fixed a bug with resolving a Tree Conflict on Mac resulting in an error message about running code in the main thread
    • Fixed an error with an unbound variable in threads.py during specific error conditions
    • Improved handling of unseen SSL certificates on Windows when being prompted for authentication information
    • Fixed a bug using a Subversion working copy via a network share on Windows when the hostname contained characters other than letters and numbers

v1.6.1 8/12/13

  • Bug Fixes
    • Added a check for incorrect Package Control install when using a PC 2.0 pre-release version

v1.6.0 8/8/13

  • New Features
    • Sublime Text 3 Support
    • Added the diff_command_args setting
    • Added some additional output when the debug setting is turned on
  • Bug Fixes

    In addition to the bug fixes below, I am aware of a number of other bugs that will be addressed in the near future. I apologize if you have emailed me and not received a response - I will try my best to follow up with everyone.

    • Fixed a bug with chcp.com on Windows XP 64bit
    • Fixed some filename unicode normalization issues on Mac
    • Added fixes for non-ASCII working directory when trying to determing the svn binary version
    • Added realpath calls to resolve symlinks
    • Fixed a bug with Add Interactive being run via the command palette
    • Fixed a bug with folders adding during a commit not having their files committed also
    • Added /opt/ubersvn/bin to the PATH when checking for svn
    • Fixed some Windows localization issues when calling chcp.com
    • Fixed a threading bug in Mac when branching
    • Fixed a bug with the temp working dir getting deleted when a commit takes a long time to complete

v1.5.2 8/13/12

  • Bug Fixes
    • Fixed an encoding issue for users who have non-ASCII file paths

v1.5.1 7/30/12

  • Bug Fixes
    • Restructured where the Windows binaries are stored to prevent crashes on some Windows machines
    • Removed Windows binaries from packages for Linux and Mac

v1.5.0 7/27/12

  • Backwards Compatibility Breaks
    • The menu structure and command palette changed, so various aspects of the interface will look a little different
    • The following commands were renamed:
      svn_commit      -> svn_folder_commit
      svn_file_commit -> svn_commit
      svn_diff        -> svn_folder_diff
      svn_file_diff   -> svn_diff
      svn_status      -> svn_folder_status
      svn_file_status -> svn_status
      Custom key bindings may need to be updated.
  • New Features
    • Added log_entries setting to control the default number of log entries to display when running the "Log" command
    • Subversion 1.6 and 1.7 are now both supported and bundled for Windows. This means 1.6 working copies will no longer be automatically upgraded to 1.7!
    • Restructured the command palette so all commands are available without using SVN: Other.... However, all commands are always shown when the current file is inside of a Subversion working copy.

      The new SVN: Show Applicable commands will er the list to show only the commands that are applicable in the current state. This was necessary due to performance issues.

    • Added enhanced error handling for Subversion being missing (such as on OS X 10.8 Mountain Lion)
    • Added enhanced error handling for situations where SVN detects the Subversion 1.6 on your machine and you are editing a Subversion 1.7 working copy
    • By default the package now remembers your last checkout URL and destination if you have not set the default_checkout_url and default_checkout_folder settings.
    • If the checkout destination parent folder does not exist, the user will be prompted to create it instead of displaying an error.
  • Bug Fixes
    • Compiled and bundled custom versions of Subversion 1.6 and 1.7 to finally fix the locale issues for non-English users on Windows
    • Fixed locale issues that would cause problems for some Linux users
    • Removed folder monitoring (due to performance issues), which resolves the inotify issues some Linux users were having, and other performance issues especially for users with large working copies
    • Fixed handling of property conflict on folders
    • Fixed handling of merge conflicts and related files
    • Enhanced the plugin to prompt for a login and password if the user is trying to perform operations that require write access to the repository, but the current credentials only provide read access

v1.4.0 7/2/12

  • New Features
    • Added support for UNC/samba paths on Windows
    • Added code to unfocus and refocus on the current buffer after a Revert command is executed so that the built-in Sublime Text file refresh dialog is presented to the user
    • Added the Unlock Interactive command
    • If the Commit command is executed, but no files have been modified and one or more files is locked, the new Unlock Interative command is executed instead
  • Bug Fixes
    • Added code to handle broken output of Subversion on windows when showing logs or file listings for non-ASCII file paths on machines with non-English locales
    • Added error checking for the svn_binary_path setting
    • Fixed encoding errors when a password prompted is dismissed without any input
    • Fixed multiple authentication hangs on Windows that could cause svn.exe processes to be spawned, but never terminated
    • Fixed svn:// protocol repository URLs on Windows when the username and password are embedded in the URL
    • Fixed a bug where failed lock attempts would be reported as successful
    • Fixed a bug where the user would not be notified if another user already had a lock on a file
    • Fixed the Commit dialog to not show a checkbox next to paths that have no modifications, but are locked

v1.3.0 5/22/12

  • Note
  • New Features
  • Bug Fixes
    • Fixed handling of non-ASCII file paths and UTF-8 content in diff output on Windows machines
    • Added the MacPorts and WANdisco default install paths to the standard search path for Mac users to help prevent errors complaining about using the v1.6 binary against a v1.7 working copy
    • Added a check to ensure Linux users have the en_US.UTF-8 locale installed

v1.2.4 5/16/12

  • Bug Fixes
    • Changed the plugin to always use en_US for the locale to resolve locale issues, and since the rest of the package is only available in English
    • Fixed an encoding error popup when diffing files with mixed encodings
    • Added a help popup to prompt Linux users to learn more about increasing the number of inotify watches when hitting limits
    • Added code to automatically clean up a locked repository when trying to get info about the current working directory folder

v1.2.3 5/8/12

  • Enhancements
    • Added the full path to the svn binary in the debug output
    • Changed context menu entries to be explicit about what paths the operations are being performed on
  • Bug Fixes
    • Fixed bugs with determining the locale and version of Subversion on some Mac installs
    • Fixed a bug causing errors when opening a file not in the working copy root of a pre-1.7 working copy
    • Corrected the handling of working copy folders that are moved on the filesystem while Sublime Text is open
  • v1.2.2 5/3/12

    • Enhancements
      • Added debug output for command to determine installed version of svn binary
      • Upgraded bundled version of Subversion for Windows to 1.7.4
    • v1.2.1 4/23/12

      • Bug Fixes
        • Fixed a bug that would cause Sublime to hang with a blank commit message
        • Fixed handling of non-ASCII file paths on Windows and Mac

      v1.2.0 4/20/12

      • Enhancements
        • The Checkout command is now always available from the command palette
        • A new command Commit (File) is now available
        • The debug log now includes error output from svn
      • Bug Fixes
        • Corrected an issue where the updates available message would persist even after an update had been performed
        • Added a parameter so that non-ASCII commit messages are no longer rejected on Mac
        • Fixed various bugs with parsing dates in non-English locales
        • Corrected an issue with the licensing reminder popup
        • Fixed handling of checkouts when no files or folders are open
        • Resolved an issue with checking out a repository to a folder that already exists
        • Corrected a bug with custom merges
        • Fixed bugs with trying to get a window id when closing a file
        • Added code to call the explicit path to chcp on Windows instead of relying on it being in the path
        • Fixed some string index errors when parsing status info
        • Changed file modification detection to be paused when performing other commands to prevent race conditions
        • Fixed a bug that would cause an unversioned folder to be added when checked, and all children to be added, but the children not included in the commit
        • Added error handling for when no branches exist and a Switch is requested
        • Added checks for 403 errors when trying to list available branches
        • Fixed errors related to the --depth empty options that were being passed to svn. The plugin now instead enforces child/parent selection in a way that is consistent with the command line program, allowing removal of this option.

      v1.1.1 4/6/12

      • Enhancements
        • The licensing reminder has been re-worded and now uses the Buy/Cancel dialog for users running Sublime b2190 or newer
        • The debug setting can now be set to 2 for more verbose debug output
      • Bug Fixes
        • Fixed issue on some machines where the syntax highlighting would not be applied to the Commit buffer, making it impossible to commit changes
        • Fixed a bug with Subversion 1.6 where repository URLs containing the @ sign could cause error messages about parsing revisions
        • Fixed the unexpected exception handling functionality
        • Fixed a bug with setting up folder monitoring
        • Fixed the Switch command to work with Subversion 1.6

      v1.1.0 3/27/12

      • Note
        • On Windows, all Subversion working copies will be automatically upgraded to the new format for Subversion 1.7. This may require you to upgrade other Subversion clients, such as TortoiseSVN.
      • New Features
        • Added Branch/Merge support for repositories using a structure where multiple projects are contained within a repository and each has a trunk and branches:

          /project1/trunk
          /project1/branches
          /project2/trunk
          /project2/branches
      • Bug Fixes
        • Fixed a bug with Commit buffers not getting syntax highlighting, and consequently making it impossible to commit
        • Fixed a warning about the plugin running too slow
        • Added support for nested Subversion repositories that do not use svn:externals
        • Fixed handling of situation where the user's credentials can not list the files and folders in the repository root
        • Status and Commit commands alway work on the current folder or the whole working copy, and never on an individual file
        • Fixed Status and Commit commands to properly work on sub-folders
        • It is now possible to switch a repository that contains an external
        • Fixed bugs with filesystem monitoring so that there should no longer be notices about no files to commit when there really are
        • Added a work-around for an issue that could cause the plugin to not load when it is first installed

      v1.0.0.16 3/10/12

      • Initial public release