All notable changes to this project will be documented in this file.
Possibly breaking changes are marked with BC break.
- Throw
FunctionCallException
when connection closed inRemoteFunction::setParameterActive()
,RemoteFunction::isParameterActive()
2.1.0 - 2024-05-21
- Connection attributes: add
partnerIP
andpartnerIPv6
(added in SDK 7.50.6,null
for earlier SDK versions) - Add trace level
TRACE_LEVEL_DETAILED
(3), changeTRACE_LEVEL_FULL
to 4 (requires SDK 7.50.9) - Add
Connection::setGlobalLogonTimeout()
to set logon timeout
- Remove
ZEND_ACC_FINAL
fromRemoteFunction
to make it mockable (#133, BC break)
- Fix: segfault when freeing a manually created
RemoteFunction
object (#133) - Fix an issue where looking up a function module fails if a previous
RemoteFunction
object has been unset - Fix an invalid read in
rfc_set_table_row
- Remove the incorrect stub file and update it
- Always return true for
Connection::setTraceDir()
andConnection::setTraceLevel()
2.0.0 - 2024-05-14
- Stub file for IDE parsers/static analyzers
- Improve exception messages in
Connection::getSSOTicket()
- Update type for
Exception::$errorInfo
- Rewrite and improve the Windows build instructions (#157)
- Fix a build error with PHP < 8.0 (#149, @kea)
- Fix: make
RemoteFunction::$name
public again on PHP >= 8.0 - Fix: failing test
tests/function_description/003_returns_function_interface.phpt
- Fix: failing test
tests/083_remote_function_invoke_takes_optional_options_array.phpt
- changed TypeError message - Fix: borked test
tests/078_set_trace_level_changes_the_trace_level.phpt
- invalid CLEAN script - Fix: header and library lookup paths for Windows builds
- Fix: borked test
tests/075_set_trace_dir_sets_trace_directory.phpt
on Windows - incomplete CLEAN script
2.0.0-beta3 - 2023-05-03
- Update build instructions for Windows (#90)
- "Fix creation of dynamic property deprecation for PHP 8.2" for RemoteFunction:$name (#144, @kea)
2.0.0-beta2 - 2021-12-05
- Add
Connection::getSSOTicket()
to retrieve SSO ticket from connection (#34).
2.0.0-beta1 - 2021-09-09
This is a major release with breaking changes. For details, see changes below marked with BC break.
- Re-organize tests (skip conditions, environment variables)
- Throw
\Exception
or\TypeError
for parameter parsing errors (instead of\SAPNWRFC\Exception
) BC break - Throw
\TypeError
if wrong type is passed for an RFC field BC break - Add support for PHP 8.0
- Map RFC type BCD to string BC break
- Add support for
RFCTYPE_INT8
- Remove support for PHP < 7.2
1.4.0 - 2021-01-13
This is a major release with breaking changes. For details, see changes below marked with BC break.
- Support for building with SAP NW RFC SDK 7.50 (#69)
- Support for building with clang
- Windows builds: support passing search path via
--with-sapnwrfc=
- Windows builds: search for includes in
C:\nwrfcsdk
andC:\nwrfcsdk_750
by default - Add
RemoteFunction::getFunctionDescription()
to retrieve a function's metadata (#79) - Add
RemoteFunction::getName()
retrieve a function's name - Add support for
RFCTYPE_DECF16
andRFCTYPE_DECF34
(#99)
- use
zend_restore_error_handling()
to restore previous error handling
- Drop support for building with SAP NW RFC SDK < 7.50 BC break
- Remove the
RemoteFunction
properties (parameter description) BC break
- Fix a memory leak in
PHP_MINFO_FUNCTION(sapnwrfc)
: freeversion
- Fix memory corruption when converting SAPUC strings to/from zval/zend_string (#101)
1.3.0 - 2019-02-23
- Add optional
$options
parameter toConnection::__construct()
- Connnection constructor accepts
use_function_desc_cache
option (defaults totrue
) Connection::getFunction()
clears the function desc cache ifuse_function_desc_cache
set tofalse
before looking up the function- Add
\SAPNWRFC\clearFunctionDescCache($functionName, $repositoryId)
function
- Update documentation: fix link to sapnwrfc.ini settings, give saprouter example
1.2.1 - 2018-03-08
- Disable
rtrim
option by default (BC)
1.2.0 - 2018-03-04
- Allow
rtrim
option forRemoteFunction::invoke()
to unify string handling (enabled by default) - Add scripts/publish_docs.sh
- Add scripts/bump_version.php
- Support for PHP 7.2
- Custom make targets
extclean
andextdistclean
to remove intermediary build artefacts - Add new documentation
1.1.3 - 2017-10-21
- Fix compilation with NW RFC SDK versions < 7.20
1.1.2 - 2017-03-30
- Fix segfault when returning empty strings
1.1.1 - 2016-09-20
- Windows build: fix syntax error
1.1.0 - 2016-09-16
- Include parameter name in exception messages for TABLE parameters
- Allow
int
to be passed forFLOAT
parameters - Allow passing parameters by reference
- Add script to generate test coverage data
- Add new screenshots to the NW RFC SDK installation guide
- Add a release date for version 1.0.0 in the Changelog
- CS fixes
1.0.0 - 2016-04-01
Exception::$errorInfo
is now protectedattributes()
is nowgetAttributes()
- Test handling simplified for testing against a live system
0.7.0 - 2016-02-29
- Version information in phpinfo() (#12)
- Windows build instructions (#8, #10)
- A lot more tests
getErrorInfo()
for exception classes (#14)- Argument info and types to enable reflection and type safety
- Improve parameter handling (#15)
setTraceDir()
andsetTraceLevel()
for setting the trace directory and level (#17)
TRACE_LEVEL_*
constants are now integers
- Fixed a segfault when passing non-string values in connection parameters
0.6.2 - 2016-02-20
- Instructions for installing the SAP NW RFC SDK library
- Some additional tests (offline and online)
- Tests covering exceptions and
Connection
object
TRACE_LEVEL_*
contants are now strings; the long variants caused segfaults inzval_to_sapuc()
- Fix a segfault related to the
RemoteFunction::$name
property.
0.6.1 - 2016-02-16
- Readded some removed TSRM bits as pointed out by @krakjoe - thanks a lot!
- Properly initialize the "errorInfo" property in exceptions to prevent error on shutdown (Windows)
0.6.0 - 2016-02-15
- Vagrant configuration for testing/debugging
- Stub file for code completion in IDEs
- Class constants for trace levels
- Better exceptions: new base class and consistent exception messages
- Throw base exception class instead of generic Exception
- Rename class
FunctionEntry
toRemoteFunction
- Use MIT license instead of PHP license
- Update some of the documentation to reflect current development state
- Memory leaks related to zend_string handling throughout the extension
- Memory leaks related to SAP_UC* handling throughout the extension
- References to TSRM; they are not needed anymore in PHP7
- Initial working release of the extension