Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

behaviortree.cpp: add v4.5.0, improve maintainability, unvendor some dependencies #20010

Merged
merged 27 commits into from
Mar 21, 2024

Conversation

valgur
Copy link
Contributor

@valgur valgur commented Sep 20, 2023

@ghost
Copy link

ghost commented Sep 20, 2023

I detected other pull requests that are modifying behaviortree.cpp/all recipe:

This message is automatically generated by https://github.com/ericLemanissier/conan-center-conflicting-prs so don't hesitate to report issues/improvements there.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@valgur valgur changed the title behaviortree.cpp: add v4.3.7, simplify patching, unvendor some dependencies behaviortree.cpp: add v4.3.7, improve maintainability, unvendor some dependencies Jan 1, 2024
@conan-center-bot

This comment has been minimized.

@Batodalaev
Copy link

Hello everyone, please can you tell me, when i can use this by conan-center?
I hope to be upgraded from 4.0.1 to 4.4.3.

Thank you in advance)

@valgur valgur changed the title behaviortree.cpp: add v4.3.7, improve maintainability, unvendor some dependencies behaviortree.cpp: add v4.4.3, improve maintainability, unvendor some dependencies Jan 7, 2024
@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@valgur valgur changed the title behaviortree.cpp: add v4.4.3, improve maintainability, unvendor some dependencies behaviortree.cpp: add v4.5.0, improve maintainability, unvendor some dependencies Jan 16, 2024
@valgur
Copy link
Contributor Author

valgur commented Jan 16, 2024

@facontidavide It looks like there might be a regression in v4.5.0. The build fails with a compilation error on GCC:

src/tree_node.cpp:49:55: error: implicit instantiation of undefined template 'std::array<std::function<BT::Any (BT::Ast::Environment &)>, 4>'
  std::array<ScriptFunction, size_t(PreCond::COUNT_)> pre_parsed;
                                                      ^
/usr/local/bin/../include/c++/v1/__tuple:219:64: note: template is declared here
template <class _Tp, size_t _Size> struct _LIBCPP_TEMPLATE_VIS array;
                                                               ^
src/tree_node.cpp:50:56: error: implicit instantiation of undefined template 'std::array<std::function<BT::Any (BT::Ast::Environment &)>, 4>'
  std::array<ScriptFunction, size_t(PostCond::COUNT_)> post_parsed;
                                                       ^
/usr/local/bin/../include/c++/v1/__tuple:219:64: note: template is declared here
template <class _Tp, size_t _Size> struct _LIBCPP_TEMPLATE_VIS array;
                                                               ^
2 errors generated.

and MSVC:

src\tree_node.cpp(49,55): error C2079: 'BT::TreeNode::PImpl::pre_parsed' uses undefined class 'std::array<BT::ScriptFunction,4>'
src\tree_node.cpp(50,56): error C2079: 'BT::TreeNode::PImpl::post_parsed' uses undefined class 'std::array<BT::ScriptFunction,4>'
src\tree_node.cpp(142,75): error C2109: subscript requires array or pointer type
src\tree_node.cpp(142,30): error C2530: 'parse_executor': references must be initialized
src\tree_node.cpp(143,21): error C3536: 'parse_executor': cannot be used before it is initialized
src\tree_node.cpp(146,5): error C2064: term does not evaluate to a function taking 1 arguments
src\tree_node.cpp(174,12): error C2440: 'return': cannot convert from 'int' to 'BT::TreeNode::PreScripts &'
src\tree_node.cpp(178,12): error C2440: 'return': cannot convert from 'int' to 'BT::TreeNode::PostScripts &'
src\tree_node.cpp(188,54): error C2109: subscript requires array or pointer type
src\tree_node.cpp(188,32): error C2530: 'parse_executor': references must be initialized
src\tree_node.cpp(189,24): error C3536: 'parse_executor': cannot be used before it is initialized
src\tree_node.cpp(201,11): error C2064: term does not evaluate to a function taking 1 arguments
src\tree_node.cpp(201,36): error C2062: type 'bool' unexpected
src\tree_node.cpp(202,7): error C2143: syntax error: missing ';' before '{'
src\tree_node.cpp(217,7): error C2181: illegal else without matching if
src\tree_node.cpp(225,12): error C2064: term does not evaluate to a function taking 1 arguments
src\tree_node.cpp(225,37): error C2062: type 'bool' unexpected
src\tree_node.cpp(226,7): error C2143: syntax error: missing ';' before '{'
src\tree_node.cpp(205,11): fatal  error C1903: unable to recover from previous error(s); stopping compilation

@facontidavide
Copy link

Sorry about that, I focus more on Linux than Windows, so this happened :(

As you may see here, it was fixed right after the release.
Let me generate 4.5.1 to address this

@facontidavide
Copy link

facontidavide commented Jan 16, 2024

Decided to delete the old tag and create a new one, instead. So, the version number is still 4.5.0, but it now points to the current head of master 574a34f503eb80293cc3289b799811890fc1cc80

@conan-center-bot

This comment has been minimized.

@valgur
Copy link
Contributor Author

valgur commented Jan 16, 2024

@facontidavide Thank you! That was quick. 😄

@conan-center-bot

This comment has been minimized.

@uilianries uilianries self-assigned this Mar 20, 2024
Copy link
Member

@uilianries uilianries left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking really good. I checked the upstream and this current change follows the version 4.x

Comment on lines 222 to 223
if Version(self.version) < "4.3":
replace_in_file(self, cmakelists, " -Werror=return-type", "")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there an error which does not pass?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@uilianries Looks like it was not required after all. It built fine without it.

@conan-center-bot
Copy link
Collaborator

Conan v1 pipeline ✔️

All green in build 1 (6a0dbb4bdd2dd9740af664c56bc6488205dc61fc):

  • behaviortree.cpp/3.7.0:
    All packages built successfully! (All logs)

  • behaviortree.cpp/4.0.1:
    All packages built successfully! (All logs)

  • behaviortree.cpp/3.8.6:
    All packages built successfully! (All logs)

  • behaviortree.cpp/4.5.2:
    All packages built successfully! (All logs)


Conan v2 pipeline ✔️

Note: Conan v2 builds are now mandatory. Please read our discussion about it.

All green in build 1 (6a0dbb4bdd2dd9740af664c56bc6488205dc61fc):

  • behaviortree.cpp/3.7.0:
    All packages built successfully! (All logs)

  • behaviortree.cpp/4.5.2:
    All packages built successfully! (All logs)

  • behaviortree.cpp/4.0.1:
    All packages built successfully! (All logs)

  • behaviortree.cpp/3.8.6:
    All packages built successfully! (All logs)

Copy link
Contributor

Hooks produced the following warnings for commit 6a0dbb4
behaviortree.cpp/3.7.0@#9deb30aba61244628ad694580af54155
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libbehaviortree_cpp_v3.so' links to system library 'm' but it is not in cpp_info.system_libs.
behaviortree.cpp/3.8.6@#bbd68d2331cc27b25bec7816640ff3d4
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libbehaviortree_cpp_v3.so' links to system library 'm' but it is not in cpp_info.system_libs.

@valgur valgur requested a review from uilianries March 21, 2024 11:03
Copy link
Member

@uilianries uilianries left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice job! Thank you!

@conan-center-bot conan-center-bot merged commit 98b2fa7 into conan-io:master Mar 21, 2024
28 checks passed
Ahajha pushed a commit to Ahajha/conan-center-index that referenced this pull request Apr 6, 2024
…y, unvendor some dependencies

* behaviortree.cpp: add v4.3.7

* behaviortree.cpp: bump deps

* behaviortree.cpp: simplify patching

* behaviortree.cpp: unvendor minitrace

* behaviortree.cpp: drop v3.5.6

* behaviortree.cpp: unvendor tinyxml2

* behaviortree.cpp: unvendor lexy

* behaviortree.cpp: bump to v4.4.2

* behaviortree.cpp: bump deps

* behaviortree.cpp: fix linter error

* behaviortree.cpp: add cmake/[>=3.16.3 <4]

* behaviortree.cpp: add sqlite3 dependency

* behaviortree.cpp: bump tinyxml2

* behaviortree.cpp: bump to v4.4.3

* behaviortree.cpp: add v3.8.6

* behaviortree.cpp: fix unvendored dependencies

* behaviortree.cpp: unvendor tinyxml2 only for 4.0+

* behaviortree.cpp: ncurses is no longer used since v4.1

* behaviortree.cpp: add dl system dep

* behaviortree.cpp: cross-compiling with apple-clang is broken

* behaviortree.cpp: avoid accidental use of system ncurses

* behaviortree.cpp: fix ZeroMQ CMake file name

* behaviortree.cpp: expose all build options

* behaviortree.cpp: bump to v4.5.0

* behaviortree.cpp: update v4.5.0 hash

* behaviortree.cpp: bump to v4.5.2

* behaviortree.cpp: revert removal of -Werror=return-type
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.

6 participants