POCO C++ Libraries

Simplify and accelerate the development of network-centric, portable applications in C++
Download

POCO C++ Libraries Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Price:
  • FREE
  • Publisher Name:
  • Applied Informatics Software Engineering GmbH
  • Publisher web site:
  • http://www.appinf.com/poco/info/index.html
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 3.2 MB

POCO C++ Libraries Tags


POCO C++ Libraries Description

Simplify and accelerate the development of network-centric, portable applications in C++ POCO, the C++ Portable Components, is a collection of open source C++ class libraries that simplify and accelerate the development of network-centric, portable applications in C++. The libraries integrate perfectly with the C++ Standard Library and fill many of the functional gaps left open by it. Their modular and efficient design and implementation makes the C++ Portable Components extremely well suited for embedded development, an area where the C++ programming language is becoming increasingly popular, due to its suitability for both low-level (device I/O, interrupt handlers, etc.) and high-level object-oriented development. Of course, POCO is also ready for enterprise-level challenges.The POCO libraries free developers from re-inventing the wheel, and help them spend their time on more worthwhile areas, such as getting things done quickly and working on the features that make their application unique.Objectives and MissionPOCO aims to be for network-centric, cross-platform C++ software development what Apple's Cocoa is for Mac development, or Ruby on Rails is for Web development a powerful, yet easy to use platform to build your applications upon.POCO is built strictly on standard ANSI/ISO C++, including the standard library. The developers of POCO attempt to find a good balance between using advanced C++ features and keeping the classes comprehensible and the code clean, consistent and easy to maintain. Here are some key features of "POCO C++ Libraries": · threads, thread synchronization and advanced abstractions for multithreaded programming · streams and filesystem access · shared libraries and class loading · powerful logging and error reporting · security · network programming (TCP/IP sockets, HTTP, FTP, SMTP, etc.) · XML parsing (SAX2 and DOM) and generation · configuration file and options handling · database access What's New in This Release: · added Environment::processorCount() · added POCO_VERSION macro to Poco/Foundation.h · fixed SF# 2807527: Poco::Timer bug for long startInterval/periodic interval · fixed a bug similar to SF# 2807527 in Poco::Util::Timer. · fixed SF# 2795395: Constructor doesn't treat the params "key" and "iv" · fixed SF# 2804457: DateTime::checkLimit looks wrong · fixed SF# 2804546: DateTimeParser requires explicit RFC1123 format · added ReleaseArrayPolicy to Poco::SharedPtr · upgraded to SQLite 3.6.20 · fixed SF# 2782709: Missing semicolons in "Logger.h" convenience · fixed SF# 2526407: DefaultStrategy.h ++it instead of it++ in a loop · fixed SF# 2502235: Poco STLPort patch · fixed SF# 2186643: Data::Statement::reset() not implemented in 1.3.3 · fixed SF# 2164227: Allow File opened read only by FileInputSteam to be writable · fixed SF# 2791934: use of char_traits::copy in BufferedStreamBuf::underflow · fixed SF# 2807750: Support additional SQL types in SQLite · fixed documentation bugs in Timed/PriorityNotificationQueue · fixed SF# 2828401: Deadlock in SocketReactor/NotificationCenter (also fixes patch# 1956490) NotificationCenter now uses a std::vector internally instead of a std::list, and the mutex is no longer held while notifications are sent to observers. · fixed SF# 2835206: File_WIN32 not checking aganist INVALID_HANDLE_VALUE · fixed SF# 2841812: Posix ThreadImpl::sleepImpl throws exceptions on EINTR · fixed SF# 2839579: simple DoS for SSL TCPServer, HTTPS server No SSL handshake is performed during accept() the handshake is delayed until sendBytes(), receiveBytes() or completeHandshake() is called for the first time. This also allows for better handshake and certificate validation when using nonblocking connections. · fixed SF# 2836049: Possible handle leak in FileStream If sync() fails, close() now simply set's the stream's bad bit. In any case, close() closes the file handle/descriptor. · fixed SF# 2814451: NetSSL: receiveBytes crashes if socket is closed · added a workaround for Vista service network initialization issue (an Windows service using the Net library running under Vista will crash in the call to WSAStartup() done in NetworkInitializer). Workaround is to call WSAStartup() in the application's main(). Automatic call to WSAStartup() in the Net library can now be disabled by compiling Net with -DPOCO_NET_NO_AUTOMATIC_WSASTARTUP. Also the new Poco::Net::initializeNetwork() and Poco::Net::uninitializeNetwork() functions can be used to call WSAStartup() and WSACleanup(), respectively, in a platform-independent way (on platforms other than Windows, these functions will simply do nothing). · added VCexpress build script support (contributed by Jolyon Wright) · fixed SF# 2851052: Poco::DirectoryIterator copy constructor is broken · fixed SF# 2851197: IPAddress ctor throw keyword missing · added Poco::ProtocolException · PageCompiler improvements: new tags, support for buffered output, etc. · better error reporting in Data MySQL connector (patch #2881270 by Jan "HanzZ" Kaluza) · fixed SF# 1892462: FTPClient:Choose explicitely between EPSV and PASV · fixed SF# 2806365: Option for PageCompiler to write output to different dir · fixed a documentation bug (wrong sample code) in Process::launch() documentation · added --header-output-dir option to PageCompiler · fixed SF# 2849144: Zip::Decompress notifications error · SAXParser has a new feature: "http://www.appinf.com/features/enable-partial-reads". See ParserEngine::setEnablePartialReads() for a description of what this does. · fixed SF# 2876179: MySQL Signed/Unsigned value bug · fixed SF# 2877970: possible bug in timer task · fixed SF# 2874104: wrong parsing empty http headers · fixed SF# 2860694: Incorrect return code from SecureStreamSocketImpl::sendBytes · fixed SF# 2849750: Possible bug with XMLWriter? · added MailMessage::encodeWord() to support RFC 2047 word encoded mail header fields when sending out mail containing non-ASCII characters. · fixed SF# 2890975: SMTPClientSession bug with 7BIT encoding · fixed an issue with retrieving the value of socket options on Windows 7. Before obtaining the value of a socket, we now initialize the variable receiving the socket option value to zero. · fixed SF# 2836141: Documentation errors · fixed SF# 2864232: Socket::select() does not detect closed sockets on windows · fixed SF# 2812143: Socket::select() should check socket descriptors... · fixed SF# 2801750: NetworkInterface forName returns wrong subnetMask · fixed SF# 2816315: Problem with POSIX Thread::sleepImpl · fixed SF# 2795646: IPv6 address parsing bug · fixed #0000092: ServerApplication::waitForTerminationRequest(), SIGINT and GDB. Poco::Util::ServerApplication::waitForTerminationRequest() no longer registers a signal handler for SIGINT if the environment variable POCO_ENABLE_DEBUGGER is defined. · fixed SF# 2896070: Poco::Net::Context with non-ASCII paths · added Unicode Surrogate support to Poco::UTF16Encoding. See Poco::TextEncoding::queryConvert() and Poco::TextEncoding::sequenceLength() for how this is implemented. Contributed by Philippe Cuvillier. · fixed SF# 2897650: Net.SocketAddress won't compile for CYGWIN · fixed SF# 2896161: Building on Windows fails when basedir has space in it · fixed SF# 2864380: Memory leak when using secure sockets · NetSSL_OpenSSL: the SSL/TLS session cache is now disabled by default and can be enabled per Context using Poco::Net::Context::enableSessionCache(). · fixed SF# 2899039: Wrong DST handling in LocalDateTime · added RWLock::ScopedReadLock and RWLock::ScopedWriteLock (contributed by Marc Chevrier) · added Thread::TID type, as well as Thread::tid() and Thread::currentTid() to obtain the native thread handle/ID · added Zip file comment support · On Windows, Poco::SharedLibrary::load() now uses LoadLibraryEx instead of LoadLibrary and uses the LOAD_WITH_ALTERED_SEARCH_PATH if an absolute path is specified. This will add the directory containing the library to the search path for DLLs that the loaded library depends upon. · Mac OS X build settings now match those used by default Xcode projects, making linking the POCO libs to Xcode projects easier · Replaced use of std::valarray in Poco::Net::ICMPEventArgs with std::vector due to issues with std::valarray together with STDCXX debug mode on OS X


POCO C++ Libraries Related Software