The CImg Library: CImg 1.2.4 Released
300153
The CImg Library provides a set of C++ classes that can be used in your sources, to load/save, process, display images. Portable (Unix/X11,Windows, MacOS X,..), efficient, simple to use, it's a pleasant toolkit for coding image processing stuffs in C++.   The CImg 1.2.4 package have been released. This is a minor release but with interesting stuffs anyway.  *----------------------------- *----------------------------- * Changes from 1.2.3 to 1.2.4 *----------------------------- *-----------------------------  * New features : - Added macro 'cimg_for_lineXY(x,y,x0,y0,x1,y1)' that loops over an image segment (x0,y0)-(x1,y1). - Added function 'CImg::draw_polygon()' that draws a filled polygon of any shape in the instance image. - Added macros 'cimg_load_plugin', 'cimg_save_plugin', 'cimglist_load_plugin' and 'cimglist_save_plugin' allowing to easily add file support for your own data format. - Added plugin 'plugins/add_fileformat.h' to show how to use these new macros to register a new image format in CImg. - Added version of 'CImg[List]::{load,save}_cimg()' that is able to read/write only sub-images of data stored in a (big) .cimg file. - Added an online chat on the CImg website, so that users can interact freely.  * Optimizations / Modifications : - Added functions 'CImg[List]::save_empty_cimg()' that can be used to work with very large images. You can now create first an empty (big) image, then load/save sub-images into this big .cimg file, without needing much memory. - Slightly modified the header of .cimg files, so little/big endian info is stored. - Reorganized some 'CImg[List]::load_*()' functions, trying to avoid unnecessary memory usage. - Recoded versions of CImg::draw_triangle() that now use the Bresenham's algorithm for interpolation (more precise, while using only integer calculus). - Added versions of 'CImg::draw_triangle()' and 'CImg::draw_line()' that are able to map textures while correctly handling the perspective correction, so that 3D mapped triangles look correct now.  * Bug corrections : - Corrected a small bug in get_coordinates() : channels of hyperspectral images with (dim>3) where subsampled instead of cropped for image visualization. - And many small bug corrections...
386588
Latest PHPClasses.org Releases:Smarty and MIME message integrationYour SayphpPhotoGalleryInterfacesIlariaParser 7just7.comaDB PDO like database abstractionSAMP Socket
645695
Latest PECL Releases:PHK 1.4.0automap 1.1.0mqseries 0.11.0perforce 1.0.0
294797
Latest PEAR Releases:Net_Ping 2.4.3Structures_DataGrid_Renderer_XLS 0.1.3Console_CommandLine 0.2.0
253381
Latest PHPClasses.org Releases:Nweb ImageLeast Squares FitCalendar CalculationsParagraphGDColorSimple EnumerationFile Exchange ProtocolFind dateNaf_ValidatorGeneric Form classMulti Threaded Daemon
81155
From the PHP in Action blog today, there's a new post that (briefly) shows how to run your tests directly from a popular unix text editor - vim.   I created my own test runner to run tests inside Vim, I can't remember how long ago. Must be a year or two. I never shared it with the world. It was too primitive for anyone else to use. Then, recently, I decided to try re-implementing it in a more serious way.   The "more serious way" meant using Vim script to its full potential, including the ability to work with objects and already has its own testing framework. He includes a screenshot but no download just yet. It looks promising and makes running tests as simple as hitting F11 and watching it go.
690828
Asymptote (http://asymptote.sourceforge.net) is a powerful descriptive vector graphics language for technical drawing, inspired by MetaPost but with an improved C++-like syntax. Asymptote provides for figures the same high-quality level of typesetting that LaTeX does for scientific text.   Problems with loading LaTeX packages and slide presentations were fixed. Non-static variables in every loop iteration are now allocated anew. Formatting under locales with nonperiod decimal separators was fixed, along with logarithmic tick labels near the machine epsilon.  Concatenation of nullpaths was fixed. New path markers were added and the perpendicular symbol in the geometry module was improved. The skeleton routines in the solids module were split to provide finer control.  Routines to facilitate drawing 3d contours were added. Reading portable XDR binary data into arrays works again; functions for reading and writing also in native binary formats were added. The TeX preamble is no longer output in inline mode. The TeX pipe is now aware of a previously generated aux file. Memory leaks were fixed. An inline limit is now imposed on old compilers to speed up compilation. Setlocale warnings are disabled unless debugging is on. A colorspace command for extracting the colorspace of a pen was added. An Asymptote introductory slide presentation was added and a user-written Asymptote tutorial is now cited in the manual.
53814
Cal Evans has posted his notes from the (just passed) Web Builder 2.0 Conference that happened over in Las Vegas. PHP had its presence there through Cal's "PHP Powers Mashups" talk and others like Chris Shiflett.   There was plenty to see and do at the conference besides PHP and Cal highlights just a few:  AJAX Optimization talks  An overview of some Flickr Stats Google's mashup offerings An introduction to  and some talk of benchmarking Ajax  Check out the full post though - it's jam-packed with links and some great event information.
546437
Related to an issue from a previous post, Greg Beaver has posted a solution to his Relax NG schema problem in PHP.   Shortly after my last blog post, I got a very helpful email from Rob Richards, who offered to help me with my trials and tribulations. He took a quick look at the schema for package.xml, and a sample package.xml and was able to find two small tweaks to make parsing actually work (gasp). This changes everything. I am abandoning the creation of a relax NG schema in favor of the battle-tested xsd. The error messages for xsd validation are far clearer than the rng ones.   The code included shows how much simpler the error messages are with the XSD validation option versus the RNG ones.
116321
The ActiveBPEL(R) engine is a Business Process Management (BPM) runtime environment for executing process definitions created to the Business Process Execution Language for Web Services (BPEL) 1.1 and WS-BPEL 2.0 specifications. It is written in Java and   Active Endpoints today announced the availability of Milestone 1 of ActiveBPELÃÂ® Community Edition 5.0 Server. ActiveBPEL 5.0 represents the worldÃ¢â¬â¢s first release of an open-source implementation of both BPEL4People and WS-Human Task. These specifications allow human interactions to be included in services-based applications. By incorporating human tasks in composite applications, WS-Human Task and BPEL4People expand project teamsÃ¢â¬â¢ flexibility and efficiency in delivering standards-based solutions.  Features and availability Milestone 1 of ActiveBPEL Community Edition 5.0 Server is available for download at http://www.active-endpoints.com/active-bpel-engine-overview.htm In addition to containing BPEL4People and WS-Human Task, ActiveBPEL Community Edition 5.0 Server provides comprehensive support of the BPEL 1.1 specification and the WS-BPEL 2.0 standard. The server supports the full complement of BPEL activities including event handling, exception handling and scope/compensation management. The ActiveBPEL Community Edition 5.0 Server also includes advanced capabilities such as deployment packaging, process persistence, event notifications and console APIs. Developers and others interested in gaining early experience with the standards-based systems for creating services-based applications are invited to download the Milestone 1 release as an introduction to the full capabilities of a visual orchestration system.
728399
New PostScript RIP gives designers more options in output formats.
30477
Latest PHPClasses.org Releases:aFilesSmiley GeneratorlangMerge PicturesKeyword SuggestFuseBox ManagerSite Guide
466365
Cameron Olthuis wants to share the tools that he finds th emost useful with the entire web, so he's posted them here on his blog.   His list includes libraries from all different technologies, not just PHP. Several are Javascript-related, but it's always good to have a complete toolkit on hand when trying to tackle some of the more difficult things.   Included in his list are things like:  Moo.fx - a Javascript effects library Swat - an open source web application toolkit PEAR - the PHP package repository Mochikit - lightweight Javascript library    Be sure to check out the post and its comments for more great resources!
377236
In a new post to his blog, Sebastian Bergmann mentions a new effort he's undertaken - the porting of the Hamcrest library of matcher objects to PHP.   I have begun to port Hamcrest, which provides a library of matcher objects (also known as constraints or predicates) allowing "match" rules to be defined declaratively, to be used in other frameworks. Typical scenarios include testing frameworks, mocking libraries and UI validation rules, to PHP.   The hamcrest-php project compliments other current hamcrest-related projects and his ultimate goal is to make it available to the PHPUnit testing community (as well as with the PHPMock effort).
674304
Mike Wallner has thrown together some stats for the latest edition of the pecl/http package to test its response performance.   The results surprised me, because it clearly shows that the performance drop for starting the PHP engine and doing the neccessary negotiation to provide caching is not that bad.   There's a chart of the results as well as a full PDF with all of the stats the graph maps out. He includes the legend to make the graph easier to understand.
144395
David has posted an article to the Expirmentalworks.net blog about a task that he and Johannes Schluter have finished up - importing the PHP CVS tree over into Git.   A few month ago Johannes Schluter and I started discussing about GIT and other decentralized version control systems. During our exploration of GIT we thought about importing the PHP CVS tree into git. A few weeks later and a lot of wasted cpu time, we finally managed to provide an inofficial GIT mirror of the PHP CVS repository. ItÃ¢ÂÂs provided by Johannes Schluter and mirrored by me.    The post documents the path they followed - using git-cvsimport, parsecvs and a path they needed to make - to finally get the import working without any flaws. You can check out their unofficial repository here (it's updates twice a day from the live CVS).
496780
Lorenzo Alberton has posted some updates about the PEAR packages that he maintains to his blog today including MDB_QueryTool, Mail_Queue2, MDB2, and Translation2.   Even if lately I've been coding way more in C/C++ than in PHP, I still keep an eye on PEAR developement: I reckon in the last month I've closed a bug a day, on average. And after my last call for help about my PEAR packages, I'm also pleased to announce that someone did indeed offer a hand. I'm happy to welcome not one, but two new developers!   Each of the items has links to their PEAR homepage and a few quick words on where the package stands (including developers involved or wanting to get involved). He also reminds developers out there that they can help out too if they want to jump in and get into PEAR.