-
Notifications
You must be signed in to change notification settings - Fork 97
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
Fixing message name that should not take a capital first letter automatically #47
Fixing message name that should not take a capital first letter automatically #47
Conversation
Interesting. This logic was unchanged from ROS#: https://github.com/siemens/ros-sharp/blob/327c60be19bc6953104fb8c6df88d003f30f1dbb/Libraries/MessageGeneration/MessageParser.cs#L70 but I guess the difference is they don't use it for importing messages in Python...? |
Could you provide more context about why you needed this change? ROS official guidance is that all message names should start with a capital letter: http://wiki.ros.org/ROS/Patterns/Conventions#line-38 so it feels like that's probably the "correct" fix for you. |
Indeed, they do say to use a capital first letter.
|
this.rosMsgName = MsgAutoGenUtilities.CapitalizeFirstLetter(inFileName); | ||
this.rosMsgName = inFileName; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you add a Debug.LogWarning here to warn the user that the message name was not found and is being inferred from the filename? That could help prevent some confusion in the future around what's happening here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added a warning message, is that what you meant ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep looks good!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be merged into dev.
The base branch was changed.
* Add ROS# link (#55) * Fixing message name that should not take a capital first letter automatically (#47) * Adding warning when a message file name starts with a lowercase character * AIRO-331 Code Cleanup and Testing Framework (#57) * Moving package files into package subdirectory * Adding tests and fixing Yamato config. * RosMessageGeneration namespace change (#61) * Read message in chunks * Adding prebuilt ObjectRecognition and Octomap messages (#64) Co-authored-by: mpinol <[email protected]> Co-authored-by: flonou <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]>
* Add ROS# link (#55) * Add ROS# link * Fixing message name that should not take a capital first letter automatically (#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character * AIRO-331 Code Cleanup and Testing Framework (#57) * Moving package files into package subdirectory * Adding tests and fixing Yamato config. * Adding missing using statement to MessageParser * RosMessageGeneration namespace change (#61) * Amanda/read chunks (#62) * Read message in chunks min * Removing unpredictable DataAvailable check * Configurable byte chun k size * Prevent infinite hang on reading message contents * Wait for frame on data read retry * PR Feedback * Adding prebuilt ObjectRecognition and Octomap messages (#64) * M prefix for all messages (#66) * Topic list service (#72) * Adding install instructions to README Partially addressing issue #71 wherein a user couldn't find up-to-date instructions for installing the connector into a new project. * Updating Contribution Content (#77) * Contributing content commit * Link fix * PR feedback * Adding PR template (#81) * One persistent connection for all messages sent to Unity * Read multiple messages from each connection * Compiles * First thing sent on each new connection is the timeout * Comments! * Stop the connection on leaving play mode * Add a "timeout on idle" config setting so Endpoint doesn't have to send it * IP address check for Unity IP address and ROS IP address (#80) * Add Ip address check * Adding condition for alphaumeric IP address https://man7.org/linux/man-pages/man5/hosts.5.html * Resolve conflicts Resolve the conflicts to merge dev to main * Update package.json (#87) * Update version number in readme, and clean up some weird instructions (#89) Co-authored-by: mpinol <[email protected]> Co-authored-by: flonou <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]>
* Merge 0.3.0 to main (#90) * Add ROS# link (#55) * Add ROS# link * Fixing message name that should not take a capital first letter automatically (#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character * AIRO-331 Code Cleanup and Testing Framework (#57) * Moving package files into package subdirectory * Adding tests and fixing Yamato config. * Adding missing using statement to MessageParser * RosMessageGeneration namespace change (#61) * Amanda/read chunks (#62) * Read message in chunks min * Removing unpredictable DataAvailable check * Configurable byte chun k size * Prevent infinite hang on reading message contents * Wait for frame on data read retry * PR Feedback * Adding prebuilt ObjectRecognition and Octomap messages (#64) * M prefix for all messages (#66) * Topic list service (#72) * Adding install instructions to README Partially addressing issue #71 wherein a user couldn't find up-to-date instructions for installing the connector into a new project. * Updating Contribution Content (#77) * Contributing content commit * Link fix * PR feedback * Adding PR template (#81) * One persistent connection for all messages sent to Unity * Read multiple messages from each connection * Compiles * First thing sent on each new connection is the timeout * Comments! * Stop the connection on leaving play mode * Add a "timeout on idle" config setting so Endpoint doesn't have to send it * IP address check for Unity IP address and ROS IP address (#80) * Add Ip address check * Adding condition for alphaumeric IP address https://man7.org/linux/man-pages/man5/hosts.5.html * Resolve conflicts Resolve the conflicts to merge dev to main * Update package.json (#87) * Update version number in readme, and clean up some weird instructions (#89) Co-authored-by: mpinol <[email protected]> Co-authored-by: flonou <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> * Remove deprecated files Co-authored-by: LaurieCheers-unity <[email protected]> Co-authored-by: mpinol <[email protected]> Co-authored-by: flonou <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]>
* Add ROS# link (#55) * Add ROS# link * Fixing message name that should not take a capital first letter automatically (#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character * AIRO-331 Code Cleanup and Testing Framework (#57) * Moving package files into package subdirectory * Adding tests and fixing Yamato config. * Adding missing using statement to MessageParser * RosMessageGeneration namespace change (#61) * Amanda/read chunks (#62) * Read message in chunks min * Removing unpredictable DataAvailable check * Configurable byte chun k size * Prevent infinite hang on reading message contents * Wait for frame on data read retry * PR Feedback * Adding prebuilt ObjectRecognition and Octomap messages (#64) * M prefix for all messages (#66) * Topic list service (#72) * Adding install instructions to README Partially addressing issue #71 wherein a user couldn't find up-to-date instructions for installing the connector into a new project. * Updating Contribution Content (#77) * Contributing content commit * Link fix * PR feedback * Adding PR template (#81) * One persistent connection for all messages sent to Unity * Read multiple messages from each connection * Compiles * First thing sent on each new connection is the timeout * Comments! * Stop the connection on leaving play mode * Add a "timeout on idle" config setting so Endpoint doesn't have to send it * IP address check for Unity IP address and ROS IP address (#80) * Add Ip address check * Adding condition for alphaumeric IP address https://man7.org/linux/man-pages/man5/hosts.5.html * Resolve conflicts Resolve the conflicts to merge dev to main * Update package.json (#87) * Update version number in readme, and clean up some weird instructions (#89) * MDuration namespace change (#91) * Minor link fix (#98) * RosConnection 2.0 (#94) * add changelog (#100) add changelog * Forum links to README, config.yml (#101) * Laurie/connection status hud (#99) * add test coverage (#102) * Reducing character count for path to generated messages The path from the package root to the root of the PregeneratedMessages folder was 47 characters. From within the PickAndPlace project, the fully qualified path including drive letter, path to workspace, and path to its location in the package cache can easily exceed 200 characters, especially for users with long names or deep workspace organization. The maximum allowed path length for a fully qualified path in Windows is 260 characters, after which an IDE can not compile the assemblies for source with too-long paths. Moved Runtime/MessageGeneration/PregeneratedMessages to Runtime/Messages, which saves 30 characters off the full path name. This is a mitigation that can not fully solve the problem, but wil at least reduce the number of cases for which the ROS-TCP-Endpoint assemblies fail to compile due to path length. Tested on my machine by manually renaming the directory in my PackageCache. * Add Linter (#103) * Add editorconfig for formatting * Use linter to format the package code * Add pre-commit hook * Fix line endings for markdown Fix trailing-whitespace * Remove ruby setup; Change to run pre-commit only on pull-requests * Resolve conflicts (#106) * Shuo/resolve conflict (#107) * Merge 0.3.0 to main (#90) * Add ROS# link (#55) * Add ROS# link * Fixing message name that should not take a capital first letter automatically (#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character * AIRO-331 Code Cleanup and Testing Framework (#57) * Moving package files into package subdirectory * Adding tests and fixing Yamato config. * Adding missing using statement to MessageParser * RosMessageGeneration namespace change (#61) * Amanda/read chunks (#62) * Read message in chunks min * Removing unpredictable DataAvailable check * Configurable byte chun k size * Prevent infinite hang on reading message contents * Wait for frame on data read retry * PR Feedback * Adding prebuilt ObjectRecognition and Octomap messages (#64) * M prefix for all messages (#66) * Topic list service (#72) * Adding install instructions to README Partially addressing issue #71 wherein a user couldn't find up-to-date instructions for installing the connector into a new project. * Updating Contribution Content (#77) * Contributing content commit * Link fix * PR feedback * Adding PR template (#81) * One persistent connection for all messages sent to Unity * Read multiple messages from each connection * Compiles * First thing sent on each new connection is the timeout * Comments! * Stop the connection on leaving play mode * Add a "timeout on idle" config setting so Endpoint doesn't have to send it * IP address check for Unity IP address and ROS IP address (#80) * Add Ip address check * Adding condition for alphaumeric IP address https://man7.org/linux/man-pages/man5/hosts.5.html * Resolve conflicts Resolve the conflicts to merge dev to main * Update package.json (#87) * Update version number in readme, and clean up some weird instructions (#89) Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> * Remove deprecated files Co-authored-by: LaurieCheers-unity <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> * add changelog meta file (#109) * update version to 0.4.0 (#110) * rremove stale merge Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: LaurieCheers-unity <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: peifeng-unity <[email protected]>
* Add ROS# link (#55) * Add ROS# link * Fixing message name that should not take a capital first letter automatically (#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character * AIRO-331 Code Cleanup and Testing Framework (#57) * Moving package files into package subdirectory * Adding tests and fixing Yamato config. * Adding missing using statement to MessageParser * RosMessageGeneration namespace change (#61) * Amanda/read chunks (#62) * Read message in chunks min * Removing unpredictable DataAvailable check * Configurable byte chun k size * Prevent infinite hang on reading message contents * Wait for frame on data read retry * PR Feedback * Adding prebuilt ObjectRecognition and Octomap messages (#64) * M prefix for all messages (#66) * Topic list service (#72) * Adding install instructions to README Partially addressing issue #71 wherein a user couldn't find up-to-date instructions for installing the connector into a new project. * Updating Contribution Content (#77) * Contributing content commit * Link fix * PR feedback * Adding PR template (#81) * One persistent connection for all messages sent to Unity * Read multiple messages from each connection * Compiles * First thing sent on each new connection is the timeout * Comments! * Stop the connection on leaving play mode * Add a "timeout on idle" config setting so Endpoint doesn't have to send it * IP address check for Unity IP address and ROS IP address (#80) * Add Ip address check * Adding condition for alphaumeric IP address https://man7.org/linux/man-pages/man5/hosts.5.html * Resolve conflicts Resolve the conflicts to merge dev to main * Update package.json (#87) * Update version number in readme, and clean up some weird instructions (#89) * MDuration namespace change (#91) * Minor link fix (#98) * RosConnection 2.0 (#94) * add changelog (#100) add changelog * Forum links to README, config.yml (#101) * Laurie/connection status hud (#99) * add test coverage (#102) * Reducing character count for path to generated messages The path from the package root to the root of the PregeneratedMessages folder was 47 characters. From within the PickAndPlace project, the fully qualified path including drive letter, path to workspace, and path to its location in the package cache can easily exceed 200 characters, especially for users with long names or deep workspace organization. The maximum allowed path length for a fully qualified path in Windows is 260 characters, after which an IDE can not compile the assemblies for source with too-long paths. Moved Runtime/MessageGeneration/PregeneratedMessages to Runtime/Messages, which saves 30 characters off the full path name. This is a mitigation that can not fully solve the problem, but wil at least reduce the number of cases for which the ROS-TCP-Endpoint assemblies fail to compile due to path length. Tested on my machine by manually renaming the directory in my PackageCache. * Add Linter (#103) * Add editorconfig for formatting * Use linter to format the package code * Add pre-commit hook * Fix line endings for markdown Fix trailing-whitespace * Remove ruby setup; Change to run pre-commit only on pull-requests * Resolve conflicts (#106) * Shuo/resolve conflict (#107) * Merge 0.3.0 to main (#90) * Add ROS# link (#55) * Add ROS# link * Fixing message name that should not take a capital first letter automatically (#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character * AIRO-331 Code Cleanup and Testing Framework (#57) * Moving package files into package subdirectory * Adding tests and fixing Yamato config. * Adding missing using statement to MessageParser * RosMessageGeneration namespace change (#61) * Amanda/read chunks (#62) * Read message in chunks min * Removing unpredictable DataAvailable check * Configurable byte chun k size * Prevent infinite hang on reading message contents * Wait for frame on data read retry * PR Feedback * Adding prebuilt ObjectRecognition and Octomap messages (#64) * M prefix for all messages (#66) * Topic list service (#72) * Adding install instructions to README Partially addressing issue #71 wherein a user couldn't find up-to-date instructions for installing the connector into a new project. * Updating Contribution Content (#77) * Contributing content commit * Link fix * PR feedback * Adding PR template (#81) * One persistent connection for all messages sent to Unity * Read multiple messages from each connection * Compiles * First thing sent on each new connection is the timeout * Comments! * Stop the connection on leaving play mode * Add a "timeout on idle" config setting so Endpoint doesn't have to send it * IP address check for Unity IP address and ROS IP address (#80) * Add Ip address check * Adding condition for alphaumeric IP address https://man7.org/linux/man-pages/man5/hosts.5.html * Resolve conflicts Resolve the conflicts to merge dev to main * Update package.json (#87) * Update version number in readme, and clean up some weird instructions (#89) Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> * Remove deprecated files Co-authored-by: LaurieCheers-unity <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> * add changelog meta file (#109) * update version to 0.4.0 (#110) * rremove stale merge Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: LaurieCheers-unity <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: peifeng-unity <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: LaurieCheers-unity <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: peifeng-unity <[email protected]>
* Add ROS# link (Unity-Technologies#55) * Add ROS# link * Fixing message name that should not take a capital first letter automatically (Unity-Technologies#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character * AIRO-331 Code Cleanup and Testing Framework (Unity-Technologies#57) * Moving package files into package subdirectory * Adding tests and fixing Yamato config. * Adding missing using statement to MessageParser * RosMessageGeneration namespace change (Unity-Technologies#61) * Amanda/read chunks (Unity-Technologies#62) * Read message in chunks min * Removing unpredictable DataAvailable check * Configurable byte chun k size * Prevent infinite hang on reading message contents * Wait for frame on data read retry * PR Feedback * Adding prebuilt ObjectRecognition and Octomap messages (Unity-Technologies#64) * M prefix for all messages (Unity-Technologies#66) * Topic list service (Unity-Technologies#72) * Adding install instructions to README Partially addressing issue Unity-Technologies#71 wherein a user couldn't find up-to-date instructions for installing the connector into a new project. * Updating Contribution Content (Unity-Technologies#77) * Contributing content commit * Link fix * PR feedback * Adding PR template (Unity-Technologies#81) * One persistent connection for all messages sent to Unity * Read multiple messages from each connection * Compiles * First thing sent on each new connection is the timeout * Comments! * Stop the connection on leaving play mode * Add a "timeout on idle" config setting so Endpoint doesn't have to send it * IP address check for Unity IP address and ROS IP address (Unity-Technologies#80) * Add Ip address check * Adding condition for alphaumeric IP address https://man7.org/linux/man-pages/man5/hosts.5.html * Resolve conflicts Resolve the conflicts to merge dev to main * Update package.json (Unity-Technologies#87) * Update version number in readme, and clean up some weird instructions (Unity-Technologies#89) * MDuration namespace change (Unity-Technologies#91) * Minor link fix (Unity-Technologies#98) * RosConnection 2.0 (Unity-Technologies#94) * add changelog (Unity-Technologies#100) add changelog * Forum links to README, config.yml (Unity-Technologies#101) * Laurie/connection status hud (Unity-Technologies#99) * add test coverage (Unity-Technologies#102) * Reducing character count for path to generated messages The path from the package root to the root of the PregeneratedMessages folder was 47 characters. From within the PickAndPlace project, the fully qualified path including drive letter, path to workspace, and path to its location in the package cache can easily exceed 200 characters, especially for users with long names or deep workspace organization. The maximum allowed path length for a fully qualified path in Windows is 260 characters, after which an IDE can not compile the assemblies for source with too-long paths. Moved Runtime/MessageGeneration/PregeneratedMessages to Runtime/Messages, which saves 30 characters off the full path name. This is a mitigation that can not fully solve the problem, but wil at least reduce the number of cases for which the ROS-TCP-Endpoint assemblies fail to compile due to path length. Tested on my machine by manually renaming the directory in my PackageCache. * Add Linter (Unity-Technologies#103) * Add editorconfig for formatting * Use linter to format the package code * Add pre-commit hook * Fix line endings for markdown Fix trailing-whitespace * Remove ruby setup; Change to run pre-commit only on pull-requests * Resolve conflicts (Unity-Technologies#106) * Shuo/resolve conflict (Unity-Technologies#107) * Merge 0.3.0 to main (Unity-Technologies#90) * Add ROS# link (Unity-Technologies#55) * Add ROS# link * Fixing message name that should not take a capital first letter automatically (Unity-Technologies#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character * AIRO-331 Code Cleanup and Testing Framework (Unity-Technologies#57) * Moving package files into package subdirectory * Adding tests and fixing Yamato config. * Adding missing using statement to MessageParser * RosMessageGeneration namespace change (Unity-Technologies#61) * Amanda/read chunks (Unity-Technologies#62) * Read message in chunks min * Removing unpredictable DataAvailable check * Configurable byte chun k size * Prevent infinite hang on reading message contents * Wait for frame on data read retry * PR Feedback * Adding prebuilt ObjectRecognition and Octomap messages (Unity-Technologies#64) * M prefix for all messages (Unity-Technologies#66) * Topic list service (Unity-Technologies#72) * Adding install instructions to README Partially addressing issue Unity-Technologies#71 wherein a user couldn't find up-to-date instructions for installing the connector into a new project. * Updating Contribution Content (Unity-Technologies#77) * Contributing content commit * Link fix * PR feedback * Adding PR template (Unity-Technologies#81) * One persistent connection for all messages sent to Unity * Read multiple messages from each connection * Compiles * First thing sent on each new connection is the timeout * Comments! * Stop the connection on leaving play mode * Add a "timeout on idle" config setting so Endpoint doesn't have to send it * IP address check for Unity IP address and ROS IP address (Unity-Technologies#80) * Add Ip address check * Adding condition for alphaumeric IP address https://man7.org/linux/man-pages/man5/hosts.5.html * Resolve conflicts Resolve the conflicts to merge dev to main * Update package.json (Unity-Technologies#87) * Update version number in readme, and clean up some weird instructions (Unity-Technologies#89) Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> * Remove deprecated files Co-authored-by: LaurieCheers-unity <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> * add changelog meta file (Unity-Technologies#109) * update version to 0.4.0 (Unity-Technologies#110) * rremove stale merge Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: LaurieCheers-unity <[email protected]> Co-authored-by: Amanda <[email protected]> Co-authored-by: vidurvij-Unity <[email protected]> Co-authored-by: peifeng-unity <[email protected]> Co-authored-by: Devin Miller (Unity) <[email protected]> Co-authored-by: peifeng-unity <[email protected]>
…atically (#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character
…atically (#47) * Fixing message name that should not take a capital first letter automatically * Adding warning when a message file name starts with a lowercase character
This fixes a small issue where message name variable was capitalized when it shouldn't (making ros unable to recognize the message type)