doc: Add 1.4.2.3 release notes
[git-cola.git] / share / doc / git-cola / relnotes.rst
blobd7e5531232e333f2565265146627f04048eba1c3
1 .. |beta(TM)| unicode:: beta U+2122
3 git-cola v1.4.2.3
4 =================
5 Usability, bells and whistles
6 -----------------------------
7 * Allow un/staging by right-clicking top-level items
9   http://github.com/davvid/git-cola/issues/closed#issue/57
11 * Running 'commit' with no staged changes prompts to allow
12   staging all files.
14   http://github.com/davvid/git-cola/issues/closed#issue/55
16 * Fetch, Push, and Pull are now available via the menus
18   http://github.com/davvid/git-cola/issues/closed#issue/58
20 Fixes
21 -----
22 * Simplified the actions widget to work around a regression
23   in PyQt4 4.7.4.
25   http://github.com/davvid/git-cola/issues/closed#issue/62
27 git-cola v1.4.2.2
28 =================
29 Usability, bells and whistles
30 -----------------------------
31 * `git-dag` |beta(TM)| interaction was made faster.
33 Fixes
34 -----
35 * Added '...' indicators to the buttons for
36   'Fetch...', 'Push...', 'Pull...', and 'Stash...'.
38   http://github.com/davvid/git-cola/issues/closed#issue/51
40 * Fixed a hang-on-exit bug in the cola-provided
41   'ssh-askpass' implementation.
43 git-cola v1.4.2.1
44 =================
45 Usability, bells and whistles
46 -----------------------------
47 * Staging and unstaging is faster.
49   http://github.com/davvid/git-cola/issues/closed#issue/48
51 * `git-dag` |beta(TM)| reads history in a background thread.
53 Portability
54 -----------
55 * Added :data:`cola.compat.hashlib` for `Python 2.4` compatibility
56 * Improved `PyQt 4.1.x` compatibility.
58 Fixes
59 -----
60 * Configured menu actions use ``sh -c`` for Windows portability.
63 git-cola v1.4.2
64 ===============
66 Usability, bells and whistles
67 -----------------------------
68 * Added support for the configurable ``guitool.<tool>.*``
69   actions as described in ``git-config(1)``.
71   http://github.com/davvid/git-cola/issues/closed#issue/44
73   http://www.kernel.org/pub/software/scm/git/docs/git-config.html
75   This makes it possible to add new actions to `git-cola`
76   by simply editing ``~/.gitconfig``.  This implements the
77   same guitool support as `git-gui`.
78 * Introduced a stat cache to speed up `git-config` and
79   repository status checks.
80 * Added Alt-key shortcuts to the main `git-cola` interface.
81 * The `Actions` dock widget switches between a horizontal
82   and vertical layout when resized.
83 * We now use ``git diff --submodule`` for submodules
84   (used when git >= 1.6.6).
85 * The context menu for modified submodules includes an option
86   to launch `git-cola`.
88   http://github.com/davvid/git-cola/issues/closed#issue/17
90 * Prefer ``$VISUAL`` over ``$EDITOR`` when both are defined.
91   These are used to set a default editor in lieu of `core.editor`
92   configuration.
93 * Force the editor to be ``gvim`` when we see ``vim``.
94   This prevents us from launching an editor in the (typically
95   unattached) parent terminal and creating zombie editors
96   that cannot be easily killed.
97 * Selections are remembered and restored across updates.
98   This makes the `partial-staging` workflow easier since the
99   diff view will show the updated diff after staging.
100 * Show the path to the current repository in a tooltip
101   over the commit message editor.
103   http://github.com/davvid/git-cola/issues/closed#issue/45
105 * Log internal ``git`` commands when ``GIT_COLA_TRACE`` is defined.
107   http://github.com/davvid/git-cola/issues/closed#issue/39
109 Fixes
110 -----
111 * Improved backwards compatibility for Python 2.4.
112 * `Review mode` can now review the current branch; it no longer
113   requires you to checkout the branch into which the reviewed
114   branch will be merged.
115 * Guard against `color.ui = always` configuration when using
116   `git-log` by passing ``--no-color``.
117 * ``yes`` and ``no`` are now supported as valid booleans
118   by the `git-config` parser.
119 * Better defaults are used for `fetch`, `push`, and `pull`..
121   http://github.com/davvid/git-cola/issues/closed#issue/43
123 Packaging
124 ---------
125 * Removed colon (`:`) from the applilcation name on Windows
127   http://github.com/davvid/git-cola/issues/closed#issue/41
129 * Fixed bugs with the Windows installer
131   http://github.com/davvid/git-cola/issues/closed#issue/40
133 * Added a more standard i18n infrastructure.  The install
134   tree now has the common ``share/locale/$lang/LC_MESSAGES/git-cola.mo``
135   layout in use by several projects.
137 * Started trying to accomodate Mac OSX 10.6 (Snow Leopard)
138   in the ``darwin/`` build scripts but our tester is yet to
139   report success building a `.app` bundle.
141 * Replaced use of ``perl`` in Sphinx/documentation Makefile
142   with more-portable ``sed`` constructs.  Thanks to
143   Stefan Naewe for discovering the portability issues and
144   providing msysgit-friendly patches.
146 git-cola v1.4.1.2
147 =================
149 Usability, bells and whistles
150 -----------------------------
151 * It is now possible to checkout from the index as well
152   as from `HEAD`.  This corresponds to the
153   `Removed Unstaged Changes` action in the `Repository Status` tool.
154 * The `remote` dialogs (fetch, push, pull) are now slightly
155   larger by default.
156 * Bookmarks can be selected when `git-cola` is run outside of a git repository.
157 * Added more user documentation.  We now include many links to
158   external git resources.
159 * Added `git-dag Beta` to the available tools.
160   `git-dag` is a node-based DAG history browser.
161   It doesn't do much yet, but it's been merged so that we can start
162   building and improving upon it.
164 Fixes
165 -----
166 * Fixed a missing ``import`` when showing `right-click` actions
167   for unmerged files in the `Repository Status` tool.
168 * ``git update-index --refresh`` is no longer run everytime
169   ``git cola version`` is run.
170 * Don't try to watch non-existant directories when using `inotify`.
171 * Use ``git rev-parse --symbolic-full-name`` plumbing to find
172   the name of the current branch.
174 Packaging
175 ---------
176 * The ``Makefile`` will now conditionally include a ``config.mak``
177   file located at the root of the project.  This allows for user
178   customizations such as changes to the `prefix` variable
179   to be stored in a file so that custom settings do not need to
180   be specified every time on the command-line.
181 * The build scripts no longer require a ``.git`` directory to
182   generate the ``builtin_version.py`` module.  The release tarballs
183   now include a ``version`` file at the root of the project which
184   is used in lieu of having the git repository available.
185   This allows for ``make clean && make`` to function outside of
186   a git repository.
187 * Added maintainer's ``make dist`` target to the ``Makefile``.
188 * The built-in `simplejson` and `jsonpickle` libraries can be
189   excluded from ``make install`` by specifying the ``standalone=true``
190   `make` variable.  For example, ``make standalone=true install``.
191   This corresponds to the ``--standalone`` option to ``setup.py``.
194 git-cola v1.4.1.1
195 =================
197 Usability, bells and whistles
198 -----------------------------
199 * We now use patience diff by default when it is available via
200   `git diff --patience`.
201 * Allow closing the `cola classic` tool with `Ctrl+W`.
203 Fixes
204 -----
205 * Fixed an unbound variable error in the `push` dialog.
207 Packaging
208 ---------
209 * Don't include `simplejson` in MANIFEST.in.
210 * Update desktop entry to read `Cola Git GUI`.
213 git-cola v1.4.1
214 ===============
216 This feature release adds two new features directly from
217 `git-cola`'s github issues backlog.  On the developer
218 front, further work was done towards modularizing the code base.
220 Usability, bells and whistles
221 -----------------------------
222 * Dragging and dropping patches invokes `git-am`
224   http://github.com/davvid/git-cola/issues/closed#issue/3
226 * A dialog to allow opening or cloning a repository
227   is presented when `git-cola` is launched outside of a git repository.
229   http://github.com/davvid/git-cola/issues/closed/#issue/22
231 * Warn when `push` is used to create a new branch
233   http://github.com/davvid/git-cola/issues/closed#issue/35
235 * Optimized startup time by removing several calls to `git`.
238 Portability
239 -----------
240 * `git-cola` is once again compatible with PyQt 4.3.x.
242 Developer
243 ---------
244 * `cola.gitcmds` was added to factor out git command-line utilities
245 * `cola.gitcfg` was added for interacting with `git-config`
246 * `cola.models.browser` was added to factor out repobrowser data
247 * Added more tests
250 git-cola v1.4.0.5
251 =================
253 Fixes
254 -----
255 * Fix launching external applications on Windows
256 * Ensure that the `amend` checkbox is unchecked when switching modes
257 * Update the status tree when amending commits
260 git-cola v1.4.0.4
261 =================
263 Packaging
264 ---------
265 * Fix Lintian warnings
268 git-cola v1.4.0.3
269 =================
271 Fixes
272 -----
273 * Fix X11 warnings on application startup
276 git-cola v1.4.0.2
277 =================
279 Fixes
280 -----
281 * Added missing 'Exit Diff Mode' button for 'Diff Expression' mode
283   http://github.com/davvid/git-cola/issues/closed/#issue/31
285 * Fix a bug when initializing fonts on Windows
287   http://github.com/davvid/git-cola/issues/closed/#issue/32
290 git-cola v1.4.0.1
291 =================
293 Fixes
294 -----
295 * Keep entries in sorted order in the `cola classic` tool
296 * Fix staging untracked files
298   http://github.com/davvid/git-cola/issues/closed/#issue/27
300 * Fix the `show` command in the Stash dialog
302   http://github.com/davvid/git-cola/issues/closed/#issue/29
304 * Fix a typo when loading merge commit messages
306   http://github.com/davvid/git-cola/issues/closed/#issue/30
309 git-cola v1.4.0
310 ===============
312 This release focuses on a redesign of the git-cola user interface,
313 a tags interface, and better integration of the `cola classic` tool.
314 A flexible interface based on configurable docks is used to manage the
315 various cola widgets.
317 Usability, bells and whistles
318 -----------------------------
319 * New GUI is flexible and user-configurable
320 * Individual widgets can be detached and rearranged arbitrarily
321 * Add an interface for creating tags
322 * Provide a fallback `SSH_ASKPASS` implementation to prompt for
323   SSH passwords on fetch/push/pull
324 * The commit message editor displays the current row/column and
325   warns when lines get too long
326 * The `cola classic` tool displays upstream changes
327 * `git cola --classic` launches `cola classic` in standalone mode
328 * Provide more information in log messages
330 Fixes
331 -----
332 * Inherit the window manager's font settings
333 * Miscellaneous PyQt4 bug fixes and workarounds
335 Developer
336 ---------
337 * Removed all usage of Qt Designer `.ui` files
338 * Simpler model/view architecture
339 * Selection is now shared across tools
340 * Centralized notifications are used to keep views in sync
341 * The `cola.git` command class was made thread-safe
342 * Less coupling between model and view actions
343 * The status view was rewritten to use the MVC architecture
344 * Added more documentation and tests
347 git-cola v1.3.9
348 ===============
350 Usability, bells and whistles
351 -----------------------------
352 * Added a `cola classic` tool for browsing the entire repository
353 * Handle diff expressions with spaces
354 * Handle renamed files
356 Portability
357 -----------
358 * Handle carat `^` characters in diff expressions on Windows
359 * Worked around a PyQt 4.5/4.6 QThreadPool bug
361 Documentation
362 -------------
363 * Added a keyboard shortcuts reference page
364 * Added developer API documentation
366 Fixes
367 -----
368 * Fix the diff expression used when reviewing branches
369 * Fix a bug when pushing branches
370 * Fix X11 warnings at startup
371 * Fix more interrupted system calls on Mac OS X
374 git-cola v1.3.8
375 ===============
377 Usability, bells and whistles
378 -----------------------------
379 * Fresh and tasty SVG logos
380 * Added `Branch Review` mode for reviewing topic branches
381 * Added diff modes for diffing between tags, branches,
382   or arbitrary `git diff` expressions
383 * The push dialog selects the current branch by default.
384   This is in preparation for `git-1.7.0` where unconfigured `git push`
385   will refuse to push when run without specifying the remote name
386   and branch.  See the `git` release notes for more information
387 * Support `open` and `clone` commands on Windows
388 * Allow saving cola UI layouts
389 * Re-enabled `double-click-to-stage` for unmerged entries.
390   Disabling it for unmerged items was inconsistent, though safer.
391 * Show diffs when navigating the status tree with the keyboard
393 Packaging
394 ---------
395 * Worked around `pyuic4` bugs in the `setup.py` build script
396 * Added Mac OSX application bundles to the download page
399 git-cola v1.3.7
400 ===============
402 Subsystems
403 ----------
404 * `git-difftool` became an official git command in `git-1.6.3`.
405 * `git-difftool` learned `--no-prompt` / `-y` and a corresponding
406   `difftool.prompt` configuration variable
408 Usability, bells and whistles
409 -----------------------------
410 * Warn when `non-fast-forward` is used with fetch, push or pull
411 * Allow `Ctrl+C` to exit cola when run from the command line
413 Fixes
414 -----
415 * Support Unicode font names
416 * Handle interrupted system calls
418 Developer
419 ---------
420 * `PEP-8`-ified more of the cola code base
421 * Added more tests
423 Packaging
424 ---------
425 * All resources are now installed into `$prefix/share/git-cola`.
426   Closed Debian bug #519972
428   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=519972
431 git-cola v1.3.6
432 ===============
434 Subsystems
435 ----------
436 * Added support for Kompare in `git-difftool`
437 * Added a separate configuration namespace for `git-difftool`
438 * Added the `diff.tool` configuration variable to define the default diff tool
440 Usability, bells and whistles
441 -----------------------------
442 * The stash dialog allows passing the `--keep-index` option to `git stash`
443 * Amending a published commit warns at commit time
444 * Simplified the file-across-revisions comparison dialog
445 * `origin` is selected by default in fetch/push/pull
446 * Removed the search field from the log widget
447 * The log window moved into a drawer widget at the bottom of the UI
448 * Log window display can be configured with
449   `cola.showoutput` = `{never, always, errors}`.  `errors` is the default.
450 * `NOTE` -- `cola.showoutput` was removed with the GUI rewrite in 1.4.0.
452 Developer
453 ---------
454 * Improved nose unittest usage
456 Packaging
457 ---------
458 * Added a Windows/msysGit installer
459 * Included private versions of `simplejson` and `jsonpickle`
460   for ease of installation and development