Skip to content

Conversation

ErikTempelaarVO
Copy link
Contributor

@ErikTempelaarVO ErikTempelaarVO commented Jun 26, 2025

Summary

Changes to recipe: open6541pp/0.19.0

Motivation

Request by me, here
Release from April this year, 0.17.0 is from January.

Details

Version bump. Adds two newer versions.

@ErikTempelaarVO
Copy link
Contributor Author

Fixes: #27365

@jcar87
Copy link
Contributor

jcar87 commented Jun 26, 2025

Thanks for your PR! Please limit PRs that add new versions to only add the most recent version, unless a user that is updating from an earlier published version may have very strong reasons to not use the latest - thanks!

@ErikTempelaarVO
Copy link
Contributor Author

@jcar87
I've removed 0.18.0 from the PR.
Can I keep 0.17.0? Or should I remove that as well?

@ErikTempelaarVO ErikTempelaarVO changed the title Bump open62541pp 0.18.0 and 0.19.0 Bump open62541pp 0.19.0 Jun 26, 2025
@jcar87
Copy link
Contributor

jcar87 commented Jun 26, 2025

@jcar87 I've removed 0.18.0 from the PR. Can I keep 0.17.0? Or should I remove that as well?

Feel free to keep it (we rather have PR don't have unrelated changes). Removing a version from the git repository does not "unpublish" it from the remote - so it has little effect. We tend to keep older versions to keep running CI when the recipe is updated (up to a point) - when removing we would also check that specific version is not referenced by other recipes (with some exceptions) - for a speedier PR, small and to the point does the job :D

@ErikTempelaarVO
Copy link
Contributor Author

Looks like the test package uses ::toString, which relies on UA_print.

/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/include/open62541pp/types.hpp: In instantiation of 'opcua::String opcua::toString(const T&, const UA_DataType&) [with T = opcua::Guid; UA_DataType = UA_DataType]':
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/include/open62541pp/types.hpp:2113:20:   required from 'opcua::String opcua::toString(const T&) [with T = opcua::Guid; <template-parameter-1-2> = void]'
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/src/types.cpp:22:27:   required from here
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/include/open62541pp/types.hpp:2101:28: error: 'UA_print' was not declared in this scope
 2101 |         throwIfBad(UA_print(&object, &type, output.handle()));
      |                    ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/include/open62541pp/types.hpp: In instantiation of 'opcua::String opcua::toString(const T&, const UA_DataType&) [with T = opcua::NodeId; UA_DataType = UA_DataType]':
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/include/open62541pp/types.hpp:2113:20:   required from 'opcua::String opcua::toString(const T&) [with T = opcua::NodeId; <template-parameter-1-2> = void]'
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/src/types.cpp:60:27:   required from here
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/include/open62541pp/types.hpp:2101:28: error: 'UA_print' was not declared in this scope
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/include/open62541pp/types.hpp: In instantiation of 'opcua::String opcua::toString(const T&, const UA_DataType&) [with T = opcua::ExpandedNodeId; UA_DataType = UA_DataType]':
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/include/open62541pp/types.hpp:2113:20:   required from 'opcua::String opcua::toString(const T&) [with T = opcua::ExpandedNodeId; <template-parameter-1-2> = void]'
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/src/types.cpp:66:27:   required from here
/home/conan/workspace/cci_prod_PR-27791/conan-home/p/b/open6efc3321513e68/b/src/include/open62541pp/types.hpp:2101:28: error: 'UA_print' was not declared in this scope
template <typename T>
String toString(const T& object, const UA_DataType& type) {
    String output;
    if constexpr (UAPP_HAS_TOSTRING) {
        throwIfBad(UA_print(&object, &type, output.handle()));
    }
    return output;
}
#if UAPP_OPEN62541_VER_GE(1, 4)
#ifdef UA_ENABLE_JSON_ENCODING
#define UAPP_HAS_TOSTRING 1
#else
#define UAPP_HAS_TOSTRING 0
#endif
#else
#ifdef UA_ENABLE_TYPEDESCRIPTION
#define UAPP_HAS_TOSTRING UAPP_OPEN62541_VER_GE(1, 2)
#else
#define UAPP_HAS_TOSTRING 0
#endif
#endif

I think I may have built the package against a 1.3 version of open62541, that has UA_ENABLE_TYPEDESCRIPTION set to ON by default.
1.4 needs UA_ENABLE_JSON_ENCODING, which isn't on by default, but is already available in the recipe.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants