pnoltes opened a new pull request, #470: URL: https://github.com/apache/celix/pull/470
This PR add some type support to `celix_properties_t`. Type support for properties are added so that #432 can be solved in type-aware manner. Looking at the LDAP spec, the filter attribute type should lead to the correct order comparison. And because in Celix a "service.version" properties is used to identify the runtime version of a service, it should be possible to add a "service.version" property value as `celix_version_t` type so that `celix_version_compareTo` can be used to compare "celix.version" attributes. For now I want to keep this PR draft, for 2 reasons: - In PR celix properties are no longer a typedef of hash_map, and this is a backwards incompatible update. IMO this PR should only be merged if the next Celix release is going to be a 3.0.0 release - Concerning #432, I think it is better to first solve this differently. Akin what @tira-misu purposes in the issue. Although I think adding some type support for properties is eventually a better solution (especially considering performance), for now a solution that does not require a major version update is preferred. But comments are welcome :) Overview changes: - Add missing doxygen for celix_properties.h - Reimplement celix_properties_t using celix_string_hash_map_t instead of hashmap - Add support for long, double, bool and celix_version_t types for property values - Add a "short properties" optimization, so that most service properties only need a single malloc. - Move and update version cpputest to gtest - Move and update properties cpputest to gtest - Add C++ Version wrapper for the celix_version_t - Replace usage of hashMapIterator on properties and CELIX_PROPERTIES_FOR_EACH to CELIX_PROPERTIES_ITERATE -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@celix.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org