Developer Notes for P4API, the Helix Application Programming Interface for C/C++ P4, the Helix Command line client P4P, the Helix Proxy P4Broker, the Helix Broker Version 2018.2 Introduction This document is contains developer notes for: * Helix C/C++ API and other derived APIs and * Helix Client (P4) * Helix Proxy (P4P) and * Helix Broker (P4Broker) For details about installing and using the Helix C/C++ API, refer to the API User's Guide, posted on the Perforce Web site at: http://www.perforce.com/perforce/technical.html Supported Platforms for p4api Linux kernel 2.6+ for Intel(x86,x86_64) Windows for Intel(ntx86, ntx64) Apple OS X 10.10+ for Intel(x86_64) Important Platform End-of-Life Notice This notice identifies the platforms that will be placed in End-of-Life (EOL) status on October 2020. This applies to the p4api component of the server release. The following platforms have entered the Obsolescent phase in this release: Mac OS X 10.5, 10.6, 10.7, 10.8, 10.9(x86, x86_64) OBSOLESCENT Phase: Starting with this release,these platforms will no longer be supported. Customers will receive full support and patches for the deprecated platforms during this phase for older releases. The platforms will remain in this phase until October 2020 after which they will transition into the discontinued phase. DISCONTINUED (EOL) Phase: Patches will no longer be issued for these platforms. We will no longer provide technical support to customers with servers on these platforms SSL Support Beginning with the 2017.1 release of the Helix C/C++ API, the dependency on OpenSSL is now enforced and the SSL stub library has been removed. Executables linked against the P4API libraries must also be linked against real OpenSSL libraries: the latest 1.0.2 patch is recommended. ------------------------------------------------------------------------- See marks in the notes below: * -- requires new p4 client program including all client applications and derived APIs ** -- requires new p4d server program *** -- requires new p4p proxy program **** -- requires new p4broker program ------------------------------------------------------------------------- Minor new functionality in 2018.2 #1711178 (Bug #95847) * 'P4INT64' and 'long' data types for the 'value' argument of StrDict::SetVar() are now supported. #1663100 (Bug #95231) * A new ClientSSO class has been added so that clients may implement alternative login when P4LOGINSSO would normally be called. #1707917,1684188 * The FileSys/PathSys classes now have some Create* functions that return std::unique_ptr instead of a bare pointer. Bugs fixed in 2018.2 #1697165 ** The second factor authentication functionality has been renamed to multi factor authentication. This only affects documentation and messages sent to the client; configuration and tagged output have not been changed. #1671476 (Bug #95082) * The Rpc::Close() P4API function no longer does a blocking select(). Use the 'net.maxclosewait' configurable to control the timeout (defaults to 1 second).