"The latest feature release GIT 1.6.0 is available at the usual places," began Git maintainer, Junio Hamano, announcing the latest stable release of the distributed version control system originally written by Linus Torvalds. Among the current changes, Junio noted, "with the default Makefile settings, most of the programs are now installed outside your $PATH, except for 'git', 'gitk' and some server side programs that need to be accessible for technical reasons." He continued, "by default, packfiles created with this version uses delta-base-offset
encoding introduced in v1.4.4. Pack idx files are using version 2 that allows larger packs and added robustness thanks to its CRC checking, introduced in v1.5.2 and v1.4.4.5." Julio highlighted several other changes, including the addition of a '.sample' extension to the default trigger scripts to be sure they don't execute in a default install, and the removal of the 'stupid' merge strategy. Other changes include:
"Git-gui learned to stage changes per-line; Reduced excessive inlining to shrink size of the 'git' binary; When an object is corrupt in a pack, the object became unusable even when the same object is available in a loose form, we now try harder to fall back to these redundant objects when able; performance of 'git-blame -C -C' operation is vastly improved; even more documentation pages are now accessible via 'man' and 'git help'; longstanding latency issue with bash completion script has been addressed; pager. configuration variable can be used to enable/disable the default paging behaviour per command; git-cvsserver learned to respond to 'cvs co -c'; 'git-diff -p' learned to grab a better hunk header lines in BibTex, Pascal/Delphi, and Ruby files and also pays attention to chapter and part boundary in TeX documents; error codes from gitweb are made more descriptive where possible, rather than '403 forbidden' as we used to issue everywhere; git-merge has been reimplemented in C."
"As promised, this cycle was short and the release is with only relatively small impact changes," said Git maintainer Junio Hamano, announcing the release of Git v1.5.6. He noted that both gitk and git-gui have been updated. To improve portability, when running "git init", git now autodetects whether or not a filesystem is case insensitive, and updates a new configuration variable accordingly. Dependencies on the 'cpio' and 'curl' binaries have also been removed. Among the changes improving performance, the "git clone" command has been rewritten in C. Other changes include:
"'
git bisect help' gives longer and more helpful usage information; 'git branch' (and 'git checkout -b') can be told to set up branch..rebase automatically, so that later you can say 'git pull' and magically cause 'git pull --rebase' to happen; 'git cherry-pick' and 'git revert' can add a sign-off; 'git commit' mentions the author identity when you are committing somebody else's changes; 'git log' and friends learned the '--graph' option to show the ancestry graph at the left margin of the output; 'git send-email' now can send out messages outside a git repository; 'git svn' learned --add-author-from option to propagate the authorship by munging the commit log message; new object creation and looking up in 'git svn; has been optimized."
Jakub Jelinek announced the availability of GCC 4.3.1 saying, "GCC 4.3.1 is a bug-fix release, containing fixes for regressions in GCC 4.3.0 relative to previous GCC releases." He adds the standard tag, "as always, a vast number of people contributed to this GCC release -- far too many to thank individually!"
GCC is the GNU Compiler Collection which includes C, C++, Objective-C, Fortran, Java, and Ada compilers. Download GCC 4.3.1 from your nearest gcc.gnu.org mirror.
Joseph Myers announced the availability of GCC 4.2.4 saying, "GCC 4.2.4 is a bug-fix release, containing fixes for regressions in GCC 4.2.3 relative to previous GCC releases." He adds, "as always, a vast number of people contributed to this GCC release -- far too many to thank individually!"
GCC is the GNU Compiler Collection which includes C, C++, Objective-C, Fortran, Java, and Ada compilers. Download GCC 4.2.4 from your nearest gcc.gnu.org mirror.
Markus Friedl announced the release of OpenSSH 3.9, "a 100% complete SSH protocol version 1.3, 1.5 and 2.0 implementation and includes sftp client and server support."
Mark Mitchell commented today on the gcc-announce mailing list that the recent GCC 3.3.1 release [story] includes a new file titled 'README.SCO', expressing outrage at SCO's recent legal actions against the Linux kernel. From the document:
"As all users of GCC will know, SCO has recently made claims concerning alleged copyright infringement by recent versions of the operating system kernel called Linux. SCO has made irresponsible public statements about this supposed copyright infringement without releasing any evidence of the infringement, and has demanded that users of Linux, the kernel most often used with the GNU system, pay for a license. This license is incompatible with the GPL, and in the opinion of the Free Software Foundation such a demand unquestionably violates the GNU General Public License under which the kernel is distributed."
The statement goes on to discuss the possibility of dropping GCC support for the SCO Unix platform in protests, noting however that at this time it would be more of an inconvenience to users than SCO itself, "but we cannot indefinitely continue to ignore the aggression against our community taken by a party that has long profited from the commercial distribution of our programs. We urge users of SCO Unix to make clear to SCO their disapproval of the company's aggression against the free software community." Read on for the full statement, written by Richard Stallman and Eben Moglen.
GCC 3.3 was released today. Mark Mitchell announced the release saying:
"This release contains a very large number of bug-fixes relative to GCC 3.2.3, and a number of new features. See this page for a more complete list of changes."
GCC is the GNU Compiler Collection. This first release in the 3.3 line follows the earlier GCC 3.2.3 [story] by nearly a month. The next release will be 3.3.1, targeting bugs found in 3.3. Mention is made again of targets that have been marked obsolete, and will be removed in 3.4 [story]. Read on for the complete announcement.
GCC 3.2.3 - the last in the 3.2 series - was released on April 25. It is a bugfix release, no new features in there. This one is a follow up to GCC 3.2.2 [story].
Markus Friedl announced the release of OpenSSH 3.6 today, five months after the release of version 3.5 [story]. Today's release includes a number of enhancements, including RSA blinding to avoid potential timing attacks against RSA keys, bandwidth limiting for 'scp', and a progress bar and improved error handling for 'sftp'.
OpenSSH 3.6 is available for download now, and will also be part of the upcoming OpenBSD 3.3 release available on May 1'st. Read on for the release announcement, including full details as to what's new in this verison.
Mark Mitchell recently announced that with the future GCC 3.4 release, which is "still some time in the future", the GCC developers are intending to remove a number of "obsolete target systems". This decision is designed to help the GCC development team to better focus on machines that are more widely in use.
Read on for Mark's full email, which includes a list of all the target systems in target triplet form for which support is currently planned to be dropped. He notes that now is the time to speak up if you feel strongly that any of these targets should not be dropped, adding,"Traditionally, GCC has been more receptive to requests that a particular target not be removed if a volunteer is available to maintain that target, so if you're interested in volunteering you should state that explicitly."
An anonymous reader reported that a CVS version of the yet to be released GCC 3.4 is reaching parity with ICC on floating point performance according to SPECFP2000. SPECINT still isn't as good however, GCC is making big improvements there as well. I hope that this is an indication of things to come. Congratulations to the GCC team are in order.
What makes the Intel Compiler generate such fast code?
This Linux Journal article written by members of Intel's Compiler Lab, explains some of the optimization methods used by Intel's compiler. It covers icc-specific optimizations (like using OpenMP for automatic parallelization, intra-register vectorization using MMX, SSE, and SSE2), as well as traditional optimization techniques (dead code elimination, inlining, etc.)
GCC 3.2.2 was released today. Gabriel Dos_Reis announced the release saying:
"This release is a bug-fix release in the GCC 3.2 series. There are no new major features; however there are many bugs fixed.
GCC 3.2.1 (the last in the 3.2.x series, it seems) has been released. Lots of bugfixes in here. Notably, some MMX, SSE, and x86-64 bugs have been fixed.
Additionally, the method of constructing the list of directories to be searched for header files has been revised. If you specify a standard include dir with -I (for example: -I/usr/include), the compiler will ignore it; this is so you don't change the search order for standard include dirs.
For more information, visit the GCC 3.2 changes page, or look at the Release Notes. This bugfix release follows GCC 3.2.0 which was released in mid-August [story].
Markus Friedl announced the release of OpenSSH 3.5 today, the first release since version 3.4 which was made available in late June after the discovery of an input validation error [story]. This error resulted in the "One remote hole in the default install, in nearly 6 years!" referred to on the OpenBSD home page [story]. OpenSSH 3.4 has had no known security holes.
OpenSSH 3.5 is available for download now, and will also be part of the upcoming OpenBSD 3.2 release available on November 1'st. Read on for the release announcement, detailing what's new in this verison.