Releases: b-com-software-basis/xpcf
Releases · b-com-software-basis/xpcf
xpcf/2.5.2/win
xpcf/2.5.2/linux
Fix win compilation
2.5.1
xpcf/2.5.1/win
Merge branch 'develop'
xpcf/2.5.1/mac
Merge branch 'develop'
xpcf/2.5.1/linux
Merge branch 'develop'
xpcf 2.5.1 for android
xpcf/2.5.1/android feat[scripts]: update remaken version
2.5.0
update xpcf version to 2.5.0
update builddefs-qmake to v4.8.1
feat[build_script]: add build and packaging scripts for xpcf. add grpc build and packaging scripts.
feat[build] Add remaken packaging installation folder support. To install remaken build in the packaging structure, uncomment CONFIG += package_remaken.
feat[project] Add packagedependencies-android.txt
feat[doc]: update README, add remoting feature information. Add a chapter about XPCF Factories
feat[factory]:
- add bindLocal and bind methods for explicit bindings
- add factory context management tests (Empty, shared and cloned factory tests)
- add multiple factory contexts. The factory also provides access to IAliasManager and IRegistryManager (through bindTo<>)
- provide load methods on IFactory to populate an empty context
- add IFactory interface bind template helpers
- simplify IComponentManager interface. provide access to IFactory from IComponentManager
- provide the ability to get a new factory context
feat[gitignore]: add .gitignore file
feat[SWIG]: - improve syntax, add macro for attribute with one argument
- add attributes definitions for swig compatibility
feat[cppast]: - improve cppast build for linux
- update cppast commit version
doc[xpcf_grpc.drawio]: add overview tab
feat[TU grpc]: improve client and server configuration
fix: minor xpcf wizard bugfixes
feat: add GrpcHelper class to manage grpc credentials
feat[remoting TU]: remoting unit tests implementation in progress
feat[grpc]: - add grpc package 1.37.1 from artifactory public repository
- add packagedependencies-win.txt for grpc.
feat[remoting]: - provide DSL and serializable interfaces
- add documentation chapter about xpcf remoting features
- provide probes in serialize/deserialize methods
- provide max send and receive message size properties
- provide log about registered services
- message size handling: add DSL keywords to handle client message size upon interfaces
feat[xpcf_grpc_server]: - use working directory as default directory to search for xpcf configuration file
- initialize m_serverCredentials default value
- properties: expose grpc_server parameters through environment variables
- add grpc service multibind in xpcf_grpc_server
feat[xpcf_grpc_gen]: - split configuration file and project file generation. Add XmlHelpers to ease xml generation. Improve AST parser to parse xpcf traits and retrieve uuid...
- gather source and header files in a .pri file
- add MockGenerator component for mock generation
- add xml configuration file generation.
- handle const char * strings to std::string transcription for remote access.
- properly handle enum and std::string parameters and return types.
- handle interface inheritance during code generation.
- code generation handle cross-reference search for inner incomplete types (for instance, enumerations declared in class ...).
- add protoc and protobuf detection from remaken package (when not available, tries to use grpc from brew for mac and linux)
- add ASTParser type parser component to manage c++ ast parsing. It maintains the AST structure and will serve to identify types cross references.
- enhance attribute grammar to allow to set client and server components uuids upon interface. Fix enum translation toward protobuf type. Add ignore attribute to specify that a class or a method must be ignored - hence no code is generated for the class or method with this attribute set.
- project, module, server and proxy code generation from type parsing
- provide grpc/protoc call to generate grpc and protobuf files from .proto
- add protobuf reserved keywords transcription. Prevent ClassDescriptor copy construction (loses information while copied, moreover the AST constructed in xpcf_grpc_gen is based upon const refs and several cppast types don't handle copy construction).
- add RemoteServiceGenerator meta component to handle generators chaining
- add cppast build script - check cppast build directory exists in xpcf_grpc_gen.pro file
- use BindingRange concept to implement chain of responsibility pattern for remoting code generation
feat[ISerializable]: add std::chrono platform independent serialization support
feat[cli]: put cli project and source file in cli folder
feat[xpcf]: - provide BindingRange mask implementation
- add logs in AliasManager, Factory ..
- add RemotingException class
- add ConfigurationException class to distinguish errors occuring during the configuration phase of a component
- update BindingRange values to allow values gathering using binary operations
- add BindingRange concept to xpcf Factory : allows to define the component resolution range while binding an interface to a component.
- binding ranges:
- move BindindRange and BindingScope enumerations from IComponentManager inner enum to xpcf namespace
- set bindingRangeMask type as uint8_t to allow binding range flag masks. Mask support is still a work in progress
- add xpcf/remoting interfaces for grpc handling
- add xpcf_grpc_server application project
- add xpcf_grpc_gen tool project
2.5.0-alpha
fix: add deque include declaration
update xpcf to 2.4.0, builddefs-qmake to 4.6.1, CHANGELOG.md
feat[properties]: add the ability to provide specific properties set in injection configuration. feat[multibind]: first multibind implementation