2.5.1 (2014-07-10)
------------------
- Fixed install issue if Multiprocessing.Pool is not available
[wiredfool]
- 32bit mult overflow fix#782
[wiredfool]
3.3.61 27jun14 Parameterized number of named markers, so that
--enable-manymarkers at configure time allows up to 702
named markers instead of 26 (disabled by default).
Updated LZ4 for version r118.
Fixed broken VCD/TIM export in Windows (broken by new file
requester).
TortoiseHg 3.1 is a major feature release.
Since 3.1, Mercurial commands are run in separate command server
process. It generally contributes to reliability, but if you have
a faulty extension or an in-process Python hook, it can corrupt
the communication channel between TortoiseHg and the command server.
If you see an error message like "cmdserver: timeout while reading...",
please report it with the list of enabled third-party extensions
and their versions. Currently, reviewboard extension is known to
have this issue. #3841
Note the Windows installers include Mercurial version 3.1 plus two
stable commits which addressed Windows platform-specific bugs.
Bug Fixes
cmdui: add hidden button to close prompt dialog with no response
(fixes#1317 - merge has no cancel option)
filectxactions: redesign to show diff between baseRev and rev
(fixes#2313 - diff selected file revisions not working after
move/rename)
grep, status: use built-in drag-and-drop infrastructure
patchctx: use patch name give by repo if it is an MQ patch
(fixes#3831 - patch name is ambiguous when using directories)
postreview: correctly set parent of first selected revision
(fixes#3538)
repofilter: do no run revset query by focus out during history
completion
repofilter: do not steal focus when window is restored from
minimized state
repomodel: render description column without using HTMLDelegate
(fixes#1590 - description column contents aligned 1px upper)
repotreemodel: work around unicode error on XML parse failure
(fixes#3820)
run: continue without fork if new process can't be spawned
(fixes#1949, #3800)
run: promote rev to common annotate/log option (fixes#3799)
workbench: do not change window icon (closes#3737)
command runner:
cmdcore: enable command-server client by default in 3.1, fixes:
#3343 - blackbox extension not working
#1661 - "abort: Interrupted system" call during push with
subrepos
#2071 - crash when pushing with mercurial_keyring
#2614 - util.hgexecutable() returns wrong path
074fd0fde0b6 - worker.py of Mercurial 2.6 only works in
main thread
#3370 - Workbench UI getting dispresponsive on certain
operations
#484, #788 - can't use git/subversion subrepo
#3637 - redirect hook stdout, stderr to Output log
#3670 - WindowsError 6 in pipe decode/encode filter
repowidget: run "Export Diff" and "Copy Patch" in command
process for stability
revset: run query in command process for stability
commit/status widget:
commit: do not bulk-add unknown files when all selected files
are largefiles
commit, filectxactions: escape paths prior to command execution
(fixes#2108 - files with some special names can't be added or
commited)
commit: take "autoinc" list as glob pattern again
filectxactions: make "copy patch" generate diff between base
and target revs
repowatcher: invalidate cache if dirstate file is modified
(fixes#3647 - file renaming inconsistencies)
wctxactions: delegate "file history" action to filectxactions
(fixes#2591 - No shortcut for "File history" command on files
in Working Directory)
wctxcleaner: invalidate changelog on each check of dirstate
(fixes#3826 - commit do not work properly in the merge dialog)
wctxactions: make visual diff compare to base revision, add
"diff local" in place
(fixes#2001 - diff does not work on MQ patches)
wctxactions: reimplement by using command APIs, fixes:
#1347 - add support for pre-<command> and post-<command>
hooks
#2217 - adding files to source control in the separate
thread
#1953 - largefiles treated wrong when added by "add large..."
menu
high dpi issues:
graphdelegate: update row height to actual value prior to
painting
(refs #3690)
widgets: use small icon size defined by platform style (fixes
#3690)
obsolete changeset:
repoagent: append --hidden option while hidden changesets are
visible
repowidget: replace pseudo "incoming()" filter by "bundle()"
(refs #3535)
repowidget: switch visibility of hidden changesets globally
(fixes#3735 - obosoleted changeset appears as "Child:" field
unexpectedly)
thgrepo: start with filtered repo because it is the default of
Mercurial
Improvements
blockmatcher: improve visibility of narrow markers
filelog: export thg filelog [-r REV] [--compare] FILE command
fileview: remember chunk selection on view mode switch
mergetools: port gvimdiff from Mercurial's mergetools.hgrc
searchtoolbar: make next/prev shortcuts available in owner
widget (fixes#3819)
status: open merge tool on double-click for unresolved file
(closes#1230)
toolbars: use toolbar icon size defined by QApplication.style()
except on Mac (see 8d6212194e21 for details)
graph:
graph: draw ancestor-descendant relations in filtered graph
(see 891146f5a9bb for details)
Installer
wix: remove i18n source files (.po) from installer package
(closes#2566)
keyring 4.0
hgsubversion 1.6.2
Fix segfault when loading "layout" with non-zero parameters.
This affected multi-region. stack() must be called after the region bars
are created.
Fix layout entry in man page.
Improve stacking for windows with multiple transients.
Fix hang in fullscreen layout when a window has multiple transients.
Fix focus_(prev|next) for windows with multiple transients.
Add a missing queue.h macro to Linux util.h.
Set stacking order when setting up a new status bar.
Fixes stacking issues that can arise on a randr screenchange event.
Fix segfault in fullscreen layout when a window with transient(s) unmap.
Add default maximize_toggle binding to man page.
Add clarification for the 'name' option to man page.
Remove stray new paragraph macro in man page.
FET is open source free software for automatically scheduling the
timetable of a school, high-school or university. It uses a fast
and efficient timetabling algorithm. It is licensed under GNU GPL.
Usually, FET is able to solve a complicated timetable in maximum
5-20 minutes. For simpler timetables, it may take a shorter time,
under 5 minutes (in some cases, a matter of seconds). For extremely
difficult timetables, it may take a longer time, a matter of hours.
The octavo class is a modification of the standard LaTeX book class.
Its purpose is to typeset books following classical design and
layout principles, with the express intention of encouraging the
making of beautiful books by anyone with access to a good printer
and with an inclination towards venerable crafts, e.g., bookbinding.
The octavo class differs from the book class by implementing many
of the proposals and insights of respected experts, especially Jan
Tschichold and Hugh Williamson.
The documentation discusses methods to organise and print out any
text into signatures, which can then be gathered, folded and sewn
into a book.
Spectro-Edit reads in regular PCM audio files (currently, only
16-bit mono WAV is supported), then shows you the audio visually
in a time vs. frequency plot.
The fun part is, you can "paint out" any part of the visualization
and play back the audio subject to your modifications. When you
are happy with the result, you can save your work back to a WAV
file.
This could be useful for podcasting (edit out microphone noise,
chair squeaks, phones ringing, and other background noise), music
(make strange and unusual modifications to the sound for artistic
reasons), research (visualize animal calls or noise pollution from
nearby industrial activity), and general purpose geekery (which is
why I made it).
GStreamer is a library that allows the construction of graphs of
media-handling components, ranging from simple Ogg/Vorbis playback to
complex audio (mixing) and video (non-linear editing) processing.
Applications can take advantage of advances in codec and filter technology
transparently. Developers can add new codecs and filters by writing a
simple plugin with a clean, generic interface.
GStreamer is released under the LGPL.
This package is part of the 'bad' plugins for GStreamer. It provides the
soundtouch plugin, which allows detecting BPM and changing pitch
of audio files.
SoundTouch is an open-source audio processing library for changing
the Tempo, Pitch and Playback Rates of audio streams or audio files
Tempo (time stretch): Changes the sound to play at faster or
slower tempo than originally without affecting the sound pitch.
Pitch (key): Changes the sound pitch or key while keeping the
original tempo (speed).
Playback Rate: Changes both tempo and pitch together as if a
vinyl disc was played at different RPM rate.
The SoundTouch library is intended for application developers
writing sound processing tools that require tempo/pitch control
functionality, or just for playing around with the sound effects.
Cppcheck-1.66 has been released.
New checks:
- Compare pointer with '\0'
- Assigning boolean expression to floating point variables
Improvements:
- Much improved AST
- Much improved ValueFlow analysis
- ValueFlow and AST now used by much more checks, improving checking
accuracy and performance
- Checking for self assignment now supports more complex expressions
- Returning references to literals or references to calculation
results is detected
- Enhanced support for commutative operators in duplicate expression
checking
- Improved template/enum parsing
- Much improved htmlreport
- Definition of POD types in .cfg files
- Definition of minsize for buffer arguments in .cfg files for
buffer overflow checking
- Fixed handling of #error: Do not report them if -f and -D are
used together
- New .cfg file for AVR platform
- Generate xml dump of AST/ValueFlow/SymbolDatabase/TokenList if
--dump is given
- Improved performance in several cases
- Windows Builds: Now compiled with VS2013, linked against Qt 5.3.1
GUI:
- Platform settings are being saved now
- Improved handling of (invalid) .cfg files
- Use Win32W as default platform on Windows
Additionally, a large number of false positives and crashs has been
fixed.
Cppcheck-1.65 has been released.
General changes:
Cppcheck requires a C++11 compiler supporting the common subset
of features supported by GCC 4.4, Visual Studio 2010 and Clang
2.9
Problems with packaging and windows installer introduced in
last release were fixed
Improvements:
Much improved support of complex combinations of function
pointers, arrays and references
Better handling of syntax errors
Better detection of stack variables passed to free()
Much improved value flow analysis
More robust error detection in several checks due to usage of
AST
Better handling of unknown Macros in function declarations
Allocation/Deallocation functions can be extend across different
.cfg files
Better handling of some C++11 language features like enum class,
in-class member initializers
Detect calling (std::)abs() with bool argument
New checks:
Check for noexcept and __attribute__((nothrow)) correctness
Check for unhandled exceptions when exception specifiers are
used
Access to empty STL containers
Repositioning operation on a file opened in append mode
Find nested redundant if-statements (was experimental before)
Additionally, a large number of false positives and crashs has been
fixed.
cppcheck-1.64 has been released.
Value Flow
A new value flow analysis has been added. It is generic so the same
analysis can be reused by various checkers - previously many checkers
have had their own value flow and control flow analysis. The new
value flow analysis performs context sensitive cross-function
analysis. All checkers that uses this will automatically have
cross-function context sensitive value flow analysis. The new
analysis is gradually introduced in the checkers - the old analysis
in a checker is kept until it is redundant.
The new value flow analysis is so far used to detect:
division by zero
null pointer dereference
array index out of bounds
invalid function argument
Other Improvements
Improved configurations for gtk, posix, sdl, std, windows
Warn when using negative allocation size
Check 2nd parameter for memset
Cppcheck-1.63 has been released.
Maintainers:
The .cfg files are needed by cppcheck. Either put them in a subfolder
cfg
where the binary is. Otherwise compile cppcheck with CFGDIR to
specify an
arbitrary path where you put the .cfg files.
New check:
* Using pointer addition result in condition 'if (p+1)' - either
a dereference
is forgotten or it depends on UB (the result is only 0 if there is
overflow,
which is UB).
Improved checks:
* Leaks - ignoring return value of allocation function
* Uninitialized vars - check how uninitialized malloc data is used
* Rewritten 'calculation in sizeof' using syntax tree
* Rewritten 'clarify calculation' using syntax tree
* Rewritten 'logical disjunction' using syntax tree
* Rewritten 'duplicate expressions' using syntax tree
* Rewritten 'invalidFunctionUsage' that uses the *.cfg files
GUI:
* Library files can be enabled in the project dialog
* Suppressions can be specified in the project dialog
Other:
* Cppcheck is now continuosly scanning all the source code in the
debian archive.
Results: http://cppcheck.sourceforge.net/devinfo/daca2-report/daca2.html
* Fixes of templates handling, hangs, crashes and false positives
cppcheck-1.62
New checks
* Divide with variable and then compare to see if variable is 0
* Duplicated inherited member
Improved checking:
* handling of >> in templates
* format string checking
* comparing bool result with integer
* standard isgreater()/islower() functions
* standard math functions
* reassigning struct members
Htmlreport
xml-version 2 is now handled
New checks:
* arithmetical usage of inf/nan result
* suspicious usage of comma in return statement
* sizeof(void)
Improved checking:
* better simplification of strlen
* improved handling of array member variables 'x[y].z..'
* Specific improvements in checks for buffer overruns, format
strings, uninitialized variables
Command line:
* Using both --max-configs and -D. Normally when -D is used, Cppcheck
will only check the given configuration. By using --max-configs
also, you can tell Cppcheck to check more configurations.
* Added --library and --check-library.
Graphical user interface:
* Somewhat improved response when stopping checking
Cppcheck core:
* Extending checking with configuration files. Cppcheck has internal
knowledge for standard C/C++ functions. Knowledge for libraries
and environments can be specified using configuration files.
* Rules: added <tokenlist> that allow you to check 'raw' code and
'normal' code. In the 'raw' code, the comments and #include are
already taken care of, but the #define statements can be analysed.
Cmockery tests are compiled into a stand-alone executable and linked
with the cmockery library, the standard C library and module being
tested. Any symbols external to the module being tested should be
mocked - replaced with functions that return values determined by
the test - within the test application. Even though significant
differences may exist between the target execution environment of
a code module and the environment used to test the code the unit
testing is still valid since its goal is to test the logic of a
code modules at a functional level and not necessarily all of its
interactions with the target execution environment.
Other features:
- Lightweight C Unit test with mocking support
- JUnit XML report output which can be used with Jenkins
- Provides design-by-contract support
This project is a successor of http://code.google.com/p/cmockery-staging/
which is a successor of Google's http://code.google.com/p/cmockery/.
Changelog [20140701]
Bugfixes
fixed a memory leak with subscription system
fixed shortcut for ssl-socket
fixed apache2 mod_proxy_uwsgi (it is now considered stable with all mpm engines)
fixed SCRIPT_NAME and PATH_TRANSLATED generation in php plugin
remove the old FIFO socket from the event queue when recreating it
New features
The new Rados plugins
The rados plugin has been improved and stabilized, and now it is considered usable in production.
Async modes and multithreading correctly works, and support for uploading objects (via PUT) and creating new pools (MKCOL) has been added.
Expect webdav support in uWSGI 2.1
Docs have been updated: http://uwsgi-docs.readthedocs.org/en/latest/Rados.html
-if-hostname
This is a configuration logic for including options only when the specified hostname matches:
[uwsgi]
if-hostname = node1.local
socket = /tmp/socket1.socket
endif =
if-hostname = node2.local
socket = /var/run/foo.socket
endif =
Apache2 mod_proxy_uwsgi stabilization
After literally years of bug reports, and corrupted data, the mod_proxy_uwsgi is now stable, and on modern apache2 releases it supports unix sockets too.
Updated docs: http://uwsgi-docs.readthedocs.org/en/latest/Apache.html#mod-proxy-uwsgi
uwsgi[rsize] routing var
this routing var (meaningful only in the 'final' chain) exposes the response size of the request
the callint scheme
This scheme allows you to generate blob from functions exposed by your uWSGI instance:
[uwsgi]
uid = @(callint://get_my_uid)
gid = @(callint://get_my_gid)
-fastrouter-fallback-on-no-key
The corerouters fallback procedure requires a valid key (domain name) has been requested. This option forces the various routers to trigger the fallback procedure even if a key has not been found.
php 5.5 opcode caching via -php-sapi-name
For mysterious reasons the opcode caching of php5.5 is not enabled in the embed sapi. This option (set it to 'apache' if you want) allows you to fake the opcode caching engine forcing it to enable itself.
Improved chain-reloading
Thanks to Marko Tiikkaja the chain reloading procedure correctly works in cheaper modes and it is more verbose.
added 'chdir' keyval to -attach-daemon2
You can now set where attached daemons need to chdir()