diff -Nru ros-rosdistro-0.6.3/debian/changelog ros-rosdistro-0.6.6/debian/changelog --- ros-rosdistro-0.6.3/debian/changelog 2017-12-23 14:51:19.000000000 +0000 +++ ros-rosdistro-0.6.6/debian/changelog 2018-02-02 20:39:41.000000000 +0000 @@ -1,3 +1,11 @@ +ros-rosdistro (0.6.6-1) unstable; urgency=medium + + * Update Vcs URLs to salsa.d.o + * New upstream version 0.6.6 + * Update packaging + + -- Jochen Sprickerhof Fri, 02 Feb 2018 21:39:41 +0100 + ros-rosdistro (0.6.3-1) unstable; urgency=medium * New upstream version 0.6.3 diff -Nru ros-rosdistro-0.6.3/debian/compat ros-rosdistro-0.6.6/debian/compat --- ros-rosdistro-0.6.3/debian/compat 2017-07-01 19:27:24.000000000 +0000 +++ ros-rosdistro-0.6.6/debian/compat 2018-02-02 20:33:54.000000000 +0000 @@ -1 +1 @@ -10 +11 diff -Nru ros-rosdistro-0.6.3/debian/control ros-rosdistro-0.6.6/debian/control --- ros-rosdistro-0.6.3/debian/control 2017-07-14 15:25:16.000000000 +0000 +++ ros-rosdistro-0.6.6/debian/control 2018-02-02 20:39:32.000000000 +0000 @@ -3,14 +3,15 @@ Priority: optional Maintainer: Debian Science Maintainers Uploaders: Thomas Moulard , Jochen Sprickerhof , Leopold Palomo-Avellaneda -Build-Depends: debhelper (>= 10), dh-python, python-all, python-setuptools, python3-all, python3-setuptools, python-yaml, python3-yaml, python3-catkin-pkg -Standards-Version: 4.0.0 +Build-Depends: debhelper (>= 11), dh-python, python-all, python-setuptools, python3-all, python3-setuptools, python-yaml, python3-yaml, python3-catkin-pkg, python3-rospkg +Standards-Version: 4.1.3 Homepage: http://wiki.ros.org/rosdistro X-Python-Version: >= 2.6 X-Python3-Version: >= 3.2 -Vcs-Git: https://anonscm.debian.org/cgit/debian-science/packages/ros/ros-rosdistro.git -Vcs-Browser: https://anonscm.debian.org/cgit/debian-science/packages/ros/ros-rosdistro.git +Vcs-Git: https://salsa.debian.org/science-team/ros-rosdistro.git +Vcs-Browser: https://salsa.debian.org/science-team/ros-rosdistro Testsuite: autopkgtest-pkg-python +Rules-Requires-Root: no Package: python-rosdistro Architecture: all diff -Nru ros-rosdistro-0.6.3/setup.py ros-rosdistro-0.6.6/setup.py --- ros-rosdistro-0.6.3/setup.py 2017-12-13 11:17:35.000000000 +0000 +++ ros-rosdistro-0.6.6/setup.py 2018-01-22 22:24:12.000000000 +0000 @@ -7,7 +7,7 @@ kwargs = { 'name': 'rosdistro', - 'version': '0.6.3', # same version as in src/rosdistro/__init__.py + 'version': '0.6.6', # same version as in src/rosdistro/__init__.py 'install_requires': ['PyYAML', 'setuptools'], 'packages': find_packages('src'), 'package_dir': {'': 'src'}, diff -Nru ros-rosdistro-0.6.3/src/rosdistro/distribution_cache.py ros-rosdistro-0.6.6/src/rosdistro/distribution_cache.py --- ros-rosdistro-0.6.3/src/rosdistro/distribution_cache.py 2017-12-13 11:17:35.000000000 +0000 +++ ros-rosdistro-0.6.6/src/rosdistro/distribution_cache.py 2018-01-22 22:24:12.000000000 +0000 @@ -97,7 +97,7 @@ for section in ['doc', 'source']: if section not in repo: continue - if repo_name in old_data['repositories'] and \ + if repo_name in (old_data['repositories'] or []) and \ section in old_data['repositories'][repo_name] and \ old_data['repositories'][repo_name][section] == repo[section]: continue diff -Nru ros-rosdistro-0.6.3/src/rosdistro/freeze_source.py ros-rosdistro-0.6.6/src/rosdistro/freeze_source.py --- ros-rosdistro-0.6.3/src/rosdistro/freeze_source.py 2017-12-13 11:17:35.000000000 +0000 +++ ros-rosdistro-0.6.6/src/rosdistro/freeze_source.py 2018-01-22 22:24:12.000000000 +0000 @@ -82,12 +82,26 @@ print("") +# Get the repo commit information +def _get_repo_info(url, retry=2, retry_period=1): + cmd = ['git', 'ls-remote', url] + try: + return subprocess.check_output(cmd).splitlines() + except subprocess.CalledProcessError as err: + if not retry: + raise + print(' Non-zero return code for: %s, retrying in %f seconds' % + (' '.join(cmd), retry_period), file=sys.stderr) + # brief delay incase its an intermittent issue with infrastructure + time.sleep(retry_period) + return _get_repo_info(url, retry=retry - 1, retry_period=retry_period * 2) + + def _worker(work_queue): while True: try: source_repo, freeze_version, freeze_to_tag = work_queue.get(block=False) - cmd = ['git', 'ls-remote', source_repo.url] - ls_remote_lines = subprocess.check_output(cmd).splitlines() + ls_remote_lines = _get_repo_info(source_repo.url) for line in ls_remote_lines: hash, ref = line.split('\t', 1) if freeze_to_tag and ref == 'refs/tags/%s' % freeze_version: @@ -99,8 +113,9 @@ work_queue.task_done() - except subprocess.CalledProcessError: - print("Non-zero return code for: %s" % ' '.join(cmd), file=sys.stderr) + except subprocess.CalledProcessError as e: + print("No information could be retrieved for repo %s with error: %s" % + (source_repo.url, e), file=sys.stderr) work_queue.task_done() except queue.Empty: diff -Nru ros-rosdistro-0.6.3/src/rosdistro/__init__.py ros-rosdistro-0.6.6/src/rosdistro/__init__.py --- ros-rosdistro-0.6.3/src/rosdistro/__init__.py 2017-12-13 11:17:35.000000000 +0000 +++ ros-rosdistro-0.6.6/src/rosdistro/__init__.py 2018-01-22 22:24:12.000000000 +0000 @@ -58,7 +58,7 @@ from .manifest_provider.cache import CachedManifestProvider, CachedSourceManifestProvider # noqa -__version__ = '0.6.3' # same version as in setup.py +__version__ = '0.6.6' # same version as in setup.py # index information diff -Nru ros-rosdistro-0.6.3/src/rosdistro/manifest_provider/cache.py ros-rosdistro-0.6.6/src/rosdistro/manifest_provider/cache.py --- ros-rosdistro-0.6.3/src/rosdistro/manifest_provider/cache.py 2017-12-13 11:17:35.000000000 +0000 +++ ros-rosdistro-0.6.6/src/rosdistro/manifest_provider/cache.py 2018-01-22 22:24:12.000000000 +0000 @@ -42,17 +42,21 @@ so str (Python 2) or bytes (Python 3). """ def _squash(node): - drop_nodes = [] - for x in node.childNodes: + # remove comment nodes + for x in list(node.childNodes): + if x.nodeType is minidom.Node.COMMENT_NODE: + node.removeChild(x) + # minimize whitespaces, remove empty text nodes + for x in list(node.childNodes): if x.nodeType == minidom.Node.TEXT_NODE: if x.nodeValue: x.nodeValue = ' '.join(x.nodeValue.strip().split()) - elif x.nodeType == minidom.Node.ELEMENT_NODE: + if not x.nodeValue: + node.removeChild(x) + # process all tags recusively + for x in node.childNodes: + if x.nodeType == minidom.Node.ELEMENT_NODE: _squash(x) - elif x.nodeType is minidom.Node.COMMENT_NODE: - drop_nodes.append(x) - for x in drop_nodes: - node.removeChild(x) return node try: # Python 2. The minidom module parses as ascii, so we have to pre-encode. diff -Nru ros-rosdistro-0.6.3/src/rosdistro/manifest_provider/github.py ros-rosdistro-0.6.6/src/rosdistro/manifest_provider/github.py --- ros-rosdistro-0.6.3/src/rosdistro/manifest_provider/github.py 2017-12-13 11:17:35.000000000 +0000 +++ ros-rosdistro-0.6.6/src/rosdistro/manifest_provider/github.py 2018-01-22 22:24:12.000000000 +0000 @@ -49,6 +49,8 @@ GITHUB_USER = os.getenv('GITHUB_USER', None) GITHUB_PASSWORD = os.getenv('GITHUB_PASSWORD', None) +def _get_url_contents(url): + return urlopen(url).read().decode('utf-8') def github_manifest_provider(_dist_name, repo, pkg_name): assert repo.version @@ -65,8 +67,7 @@ url = 'https://raw.githubusercontent.com/%s/%s/package.xml' % (path, release_tag) try: logger.debug('Load package.xml file from url "%s"' % url) - package_xml = urlopen(url).read().decode('utf-8') - return package_xml + return _get_url_contents(url) except URLError as e: logger.debug('- failed (%s), trying "%s"' % (e, url)) raise RuntimeError() @@ -85,7 +86,7 @@ authheader = 'Basic %s' % base64.b64encode('%s:%s' % (GITHUB_USER, GITHUB_PASSWORD)) req.add_header('Authorization', authheader) try: - tree_json = json.loads(urlopen(req).read().decode('utf-8')) + tree_json = json.loads(_get_url_contents(req)) logger.debug('- load repo tree from %s' % tree_url) except URLError as e: raise RuntimeError('Unable to fetch JSON tree from %s: %s' % (tree_url, e)) @@ -116,7 +117,7 @@ url = 'https://raw.githubusercontent.com/%s/%s/%s' % \ (path, cache['_ref'], package_xml_path + '/package.xml' if package_xml_path else 'package.xml') logger.debug('- load package.xml from %s' % url) - package_xml = urlopen(url).read().decode('utf-8') + package_xml = _get_url_contents(url) name = parse_package_string(package_xml).name cache[name] = [package_xml_path, package_xml] diff -Nru ros-rosdistro-0.6.3/stdeb.cfg ros-rosdistro-0.6.6/stdeb.cfg --- ros-rosdistro-0.6.3/stdeb.cfg 2017-12-13 11:17:35.000000000 +0000 +++ ros-rosdistro-0.6.6/stdeb.cfg 2018-01-22 22:24:12.000000000 +0000 @@ -4,7 +4,7 @@ Depends3: ca-certificates, python3-rosdistro-modules, python3-setuptools, python3-yaml Conflicts: python3-rosdistro Conflicts3: python-rosdistro -Suite: oneiric precise quantal raring saucy trusty utopic vivid wily xenial yakkety zesty artful wheezy jessie stretch +Suite: oneiric precise quantal raring saucy trusty utopic vivid wily xenial yakkety zesty artful bionic wheezy jessie stretch X-Python3-Version: >= 3.2 Setup-Env-Vars: SKIP_PYTHON_MODULES=1 @@ -15,6 +15,6 @@ Conflicts3: python3-rosdistro (<< 0.6.0) Replaces: python-rosdistro (<< 0.6.0) Replaces3: python3-rosdistro (<< 0.6.0) -Suite: oneiric precise quantal raring saucy trusty utopic vivid wily xenial yakkety zesty artful wheezy jessie stretch +Suite: oneiric precise quantal raring saucy trusty utopic vivid wily xenial yakkety zesty artful bionic wheezy jessie stretch X-Python3-Version: >= 3.2 Setup-Env-Vars: SKIP_PYTHON_SCRIPTS=1 diff -Nru ros-rosdistro-0.6.3/test/github-genmsg-package.xml ros-rosdistro-0.6.6/test/github-genmsg-package.xml --- ros-rosdistro-0.6.3/test/github-genmsg-package.xml 1970-01-01 00:00:00.000000000 +0000 +++ ros-rosdistro-0.6.6/test/github-genmsg-package.xml 2018-01-22 22:24:12.000000000 +0000 @@ -0,0 +1,25 @@ + + + genmsg + 0.5.7 + + Standalone Python library for generating ROS message and service data structures for various languages. + + Dirk Thomas + BSD + + http://www.ros.org/wiki/genmsg + https://github.com/ros/genmsg/issues + https://github.com/ros/genmsg + + Troy Straszheim + Morten Kjaergaard + Ken Conley + + catkin + catkin + + + + + diff -Nru ros-rosdistro-0.6.3/test/github-tree-data.json ros-rosdistro-0.6.6/test/github-tree-data.json --- ros-rosdistro-0.6.3/test/github-tree-data.json 1970-01-01 00:00:00.000000000 +0000 +++ ros-rosdistro-0.6.6/test/github-tree-data.json 2018-01-22 22:24:12.000000000 +0000 @@ -0,0 +1 @@ +{"sha":"81b66fe5eb00043c43894ddeee07e738d9b9712f","url":"https://api.github.com/repos/ros/genmsg/git/trees/81b66fe5eb00043c43894ddeee07e738d9b9712f","tree":[{"path":".gitignore","mode":"100644","type":"blob","sha":"e2545110eb966cdc8dfb79501e72d08b1232f1dd","size":13,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e2545110eb966cdc8dfb79501e72d08b1232f1dd"},{"path":"CHANGELOG.rst","mode":"100644","type":"blob","sha":"c8ab4e012603078859a428f85afd788df4420cba","size":4253,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/c8ab4e012603078859a428f85afd788df4420cba"},{"path":"CMakeLists.txt","mode":"100644","type":"blob","sha":"a259a059f5d20c091c40da9e03465b98799e97d4","size":569,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/a259a059f5d20c091c40da9e03465b98799e97d4"},{"path":"cmake","mode":"040000","type":"tree","sha":"777dd97894253c404cc5d997ae1e6bcd76a78be8","url":"https://api.github.com/repos/ros/genmsg/git/trees/777dd97894253c404cc5d997ae1e6bcd76a78be8"},{"path":"cmake/genmsg-extras.cmake.em","mode":"100644","type":"blob","sha":"7e2a7efc9a1181486584b4ed85613244b2e7f6f3","size":12101,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/7e2a7efc9a1181486584b4ed85613244b2e7f6f3"},{"path":"cmake/pkg-genmsg.cmake.em","mode":"100644","type":"blob","sha":"7bae5933efd284e53d9d4e77cacca0e355474dd7","size":5670,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/7bae5933efd284e53d9d4e77cacca0e355474dd7"},{"path":"cmake/pkg-genmsg.context.in","mode":"100644","type":"blob","sha":"db3741473ed95f360c971df6afcf0cb7a997dad5","size":420,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/db3741473ed95f360c971df6afcf0cb7a997dad5"},{"path":"cmake/pkg-msg-extras.cmake.in","mode":"100644","type":"blob","sha":"089ac47b36fce3b8d1f58fac13fceb49f2717ecd","size":104,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/089ac47b36fce3b8d1f58fac13fceb49f2717ecd"},{"path":"cmake/pkg-msg-paths.cmake.develspace.in","mode":"100644","type":"blob","sha":"c1024d24e79ba2b6b70df6c5c871b86c0b080d03","size":183,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/c1024d24e79ba2b6b70df6c5c871b86c0b080d03"},{"path":"cmake/pkg-msg-paths.cmake.installspace.in","mode":"100644","type":"blob","sha":"1d35efd80f91a747e89b5f5d8d6e9a933c1da361","size":229,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/1d35efd80f91a747e89b5f5d8d6e9a933c1da361"},{"path":"doc","mode":"040000","type":"tree","sha":"024b633d33bf515374bbd247f619808dbf694ba5","url":"https://api.github.com/repos/ros/genmsg/git/trees/024b633d33bf515374bbd247f619808dbf694ba5"},{"path":"doc/Makefile","mode":"100644","type":"blob","sha":"9b27f15634fd3a453d03ecd6635e3a79d36885ea","size":4784,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/9b27f15634fd3a453d03ecd6635e3a79d36885ea"},{"path":"doc/conf.py","mode":"100644","type":"blob","sha":"b2e6ac44e3f804e4f7d8ec49dde100179b3b940b","size":8704,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/b2e6ac44e3f804e4f7d8ec49dde100179b3b940b"},{"path":"doc/developer.rst","mode":"100644","type":"blob","sha":"21e244d5f8a5ab0be114bd83ddda929fc2487869","size":6870,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/21e244d5f8a5ab0be114bd83ddda929fc2487869"},{"path":"doc/index.rst","mode":"100644","type":"blob","sha":"2137032292edf5dde08c92b637d619270ac98e50","size":651,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/2137032292edf5dde08c92b637d619270ac98e50"},{"path":"doc/python_api.rst","mode":"100644","type":"blob","sha":"4e30598028de897dea9acf6f7df8478049eca233","size":220,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/4e30598028de897dea9acf6f7df8478049eca233"},{"path":"doc/ros.png","mode":"100644","type":"blob","sha":"dca80001867e5b4d1de71bfccb80937b957b2b71","size":6648,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/dca80001867e5b4d1de71bfccb80937b957b2b71"},{"path":"doc/usermacros.rst","mode":"100644","type":"blob","sha":"1e239e083f50101876d68f5a894106c5a5ddfaf4","size":1838,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/1e239e083f50101876d68f5a894106c5a5ddfaf4"},{"path":"package.xml","mode":"100644","type":"blob","sha":"7f0aa79d71f4d8d013f551668bbadc778213fa70","size":784,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/7f0aa79d71f4d8d013f551668bbadc778213fa70"},{"path":"rosdoc.yaml","mode":"100644","type":"blob","sha":"d21d73abcacb58b9b0ff7157d13335d1fc7a70bf","size":43,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/d21d73abcacb58b9b0ff7157d13335d1fc7a70bf"},{"path":"scripts","mode":"040000","type":"tree","sha":"75b1be221bb4c2015d142c3abeffc7c97dae92e7","url":"https://api.github.com/repos/ros/genmsg/git/trees/75b1be221bb4c2015d142c3abeffc7c97dae92e7"},{"path":"scripts/genmsg_check_deps.py","mode":"100755","type":"blob","sha":"2f295a88b4d02755e9cd4a4c07102be36d21ce7a","size":2999,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/2f295a88b4d02755e9cd4a4c07102be36d21ce7a"},{"path":"setup.py","mode":"100755","type":"blob","sha":"5fcae9921ebcfc11423b4d981e8139a46a1e254f","size":215,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/5fcae9921ebcfc11423b4d981e8139a46a1e254f"},{"path":"src","mode":"040000","type":"tree","sha":"76e7b6fe374a7dae3eddaad7087359b020bca873","url":"https://api.github.com/repos/ros/genmsg/git/trees/76e7b6fe374a7dae3eddaad7087359b020bca873"},{"path":"src/genmsg","mode":"040000","type":"tree","sha":"0170c9b64d79af276e5e5c05188943eb48c433f5","url":"https://api.github.com/repos/ros/genmsg/git/trees/0170c9b64d79af276e5e5c05188943eb48c433f5"},{"path":"src/genmsg/__init__.py","mode":"100644","type":"blob","sha":"1c4ba0317b6bce5396fa27da714d9185767ea4c3","size":2116,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/1c4ba0317b6bce5396fa27da714d9185767ea4c3"},{"path":"src/genmsg/base.py","mode":"100644","type":"blob","sha":"b09d89e336a9afc1d8a58362448a54a613158878","size":2414,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/b09d89e336a9afc1d8a58362448a54a613158878"},{"path":"src/genmsg/command_line.py","mode":"100644","type":"blob","sha":"c44be0d5cb8ceb8f2e9af79c13d1fd87c7993095","size":1887,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/c44be0d5cb8ceb8f2e9af79c13d1fd87c7993095"},{"path":"src/genmsg/deps.py","mode":"100644","type":"blob","sha":"372c1df45e25fd6b284d384b1b606ec23f776c95","size":3993,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/372c1df45e25fd6b284d384b1b606ec23f776c95"},{"path":"src/genmsg/gentools.py","mode":"100644","type":"blob","sha":"6f3e23dc678f001a64f856cb7cde8a252788e153","size":6644,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/6f3e23dc678f001a64f856cb7cde8a252788e153"},{"path":"src/genmsg/msg_loader.py","mode":"100644","type":"blob","sha":"12102cec836db0819b6f15e56c6796ad150b44d4","size":20479,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/12102cec836db0819b6f15e56c6796ad150b44d4"},{"path":"src/genmsg/msgs.py","mode":"100644","type":"blob","sha":"1468aa0c17942f5a349d5ed9088add04c133ec6a","size":12253,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/1468aa0c17942f5a349d5ed9088add04c133ec6a"},{"path":"src/genmsg/names.py","mode":"100644","type":"blob","sha":"c0f3ef5d801278608b7be2028332ab6d81f38f11","size":5223,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/c0f3ef5d801278608b7be2028332ab6d81f38f11"},{"path":"src/genmsg/srvs.py","mode":"100644","type":"blob","sha":"faaaddf96ca466ccde60ac18cf18f1dc8ac6d050","size":3017,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/faaaddf96ca466ccde60ac18cf18f1dc8ac6d050"},{"path":"src/genmsg/template_tools.py","mode":"100644","type":"blob","sha":"4478dbcd5c84928e598dc037b7f33f4b9033bfe9","size":9443,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/4478dbcd5c84928e598dc037b7f33f4b9033bfe9"},{"path":"test","mode":"040000","type":"tree","sha":"e23283a12fb074ad2c03334cc4e2897bf3997657","url":"https://api.github.com/repos/ros/genmsg/git/trees/e23283a12fb074ad2c03334cc4e2897bf3997657"},{"path":"test/__init__.py","mode":"100644","type":"blob","sha":"e69de29bb2d1d6434b8b29ae775ad8c2e48c5391","size":0,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e69de29bb2d1d6434b8b29ae775ad8c2e48c5391"},{"path":"test/files","mode":"040000","type":"tree","sha":"001e4a8b49d28b8091a6e41258ca18457a2cabf2","url":"https://api.github.com/repos/ros/genmsg/git/trees/001e4a8b49d28b8091a6e41258ca18457a2cabf2"},{"path":"test/files/geometry_msgs","mode":"040000","type":"tree","sha":"abc69973379f251b9cf8af4457275d90a8257a12","url":"https://api.github.com/repos/ros/genmsg/git/trees/abc69973379f251b9cf8af4457275d90a8257a12"},{"path":"test/files/geometry_msgs/msg","mode":"040000","type":"tree","sha":"15e1354c67a459e7d0982d9e29a003594c44c627","url":"https://api.github.com/repos/ros/genmsg/git/trees/15e1354c67a459e7d0982d9e29a003594c44c627"},{"path":"test/files/geometry_msgs/msg/Point.msg","mode":"100644","type":"blob","sha":"f1d3a71a853c668f066de795ba5e0f4458f3f1c0","size":84,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/f1d3a71a853c668f066de795ba5e0f4458f3f1c0"},{"path":"test/files/geometry_msgs/msg/Point32.msg","mode":"100644","type":"blob","sha":"52af0a29a13b606b40945c2fd96a6473d0b2067e","size":367,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/52af0a29a13b606b40945c2fd96a6473d0b2067e"},{"path":"test/files/geometry_msgs/msg/PointStamped.msg","mode":"100644","type":"blob","sha":"82c3437946ccaf5c65817a0485cde96992b622dc","size":98,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/82c3437946ccaf5c65817a0485cde96992b622dc"},{"path":"test/files/geometry_msgs/msg/Polygon.msg","mode":"100644","type":"blob","sha":"3399b135f44cc86afe5ba9c2857a0210b157bf4f","size":121,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/3399b135f44cc86afe5ba9c2857a0210b157bf4f"},{"path":"test/files/geometry_msgs/msg/PolygonStamped.msg","mode":"100644","type":"blob","sha":"c9ee413840b3c8bd47d9c41b13a6d68176b29f56","size":104,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/c9ee413840b3c8bd47d9c41b13a6d68176b29f56"},{"path":"test/files/geometry_msgs/msg/Pose.msg","mode":"100644","type":"blob","sha":"b81919c7b256667be00908b866f8bf63404256c6","size":118,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/b81919c7b256667be00908b866f8bf63404256c6"},{"path":"test/files/geometry_msgs/msg/Pose2D.msg","mode":"100644","type":"blob","sha":"e9555b466ac37570adcb69619fa3b3b78a9e602e","size":96,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e9555b466ac37570adcb69619fa3b3b78a9e602e"},{"path":"test/files/geometry_msgs/msg/PoseArray.msg","mode":"100644","type":"blob","sha":"8a7734b2e954a21042979b0f55866275a2cada6e","size":99,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8a7734b2e954a21042979b0f55866275a2cada6e"},{"path":"test/files/geometry_msgs/msg/PoseStamped.msg","mode":"100644","type":"blob","sha":"7e3cdc57b7ba5856bce0cb954d20b7a74354bdc2","size":79,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/7e3cdc57b7ba5856bce0cb954d20b7a74354bdc2"},{"path":"test/files/geometry_msgs/msg/PoseWithCovariance.msg","mode":"100644","type":"blob","sha":"86bc45adbb5d7d64e90556ac1f24ca8f725313cd","size":323,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/86bc45adbb5d7d64e90556ac1f24ca8f725313cd"},{"path":"test/files/geometry_msgs/msg/PoseWithCovarianceStamped.msg","mode":"100644","type":"blob","sha":"cdc306b906075b54479aa7a6a0db66f7edbc2f45","size":122,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/cdc306b906075b54479aa7a6a0db66f7edbc2f45"},{"path":"test/files/geometry_msgs/msg/Quaternion.msg","mode":"100644","type":"blob","sha":"9f4fde2bf4c13dc86a95688e4b5254aaec186e2a","size":108,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/9f4fde2bf4c13dc86a95688e4b5254aaec186e2a"},{"path":"test/files/geometry_msgs/msg/QuaternionStamped.msg","mode":"100644","type":"blob","sha":"62c2fdfe992c1a5eef9bf2c3a07aae7f7ad30b8a","size":117,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/62c2fdfe992c1a5eef9bf2c3a07aae7f7ad30b8a"},{"path":"test/files/geometry_msgs/msg/Transform.msg","mode":"100644","type":"blob","sha":"f605c85ea8ec4c4871bdb7d77db6e7011c63e86d","size":118,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/f605c85ea8ec4c4871bdb7d77db6e7011c63e86d"},{"path":"test/files/geometry_msgs/msg/TransformStamped.msg","mode":"100644","type":"blob","sha":"cdcb6e11de990d777717787e35451636debdf70d","size":342,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/cdcb6e11de990d777717787e35451636debdf70d"},{"path":"test/files/geometry_msgs/msg/Twist.msg","mode":"100644","type":"blob","sha":"dc27ca14a7d69f720faff92171456cc71d4fc967","size":117,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/dc27ca14a7d69f720faff92171456cc71d4fc967"},{"path":"test/files/geometry_msgs/msg/TwistStamped.msg","mode":"100644","type":"blob","sha":"53b8253b4251a4c6637ddd85d9937d796558949c","size":82,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/53b8253b4251a4c6637ddd85d9937d796558949c"},{"path":"test/files/geometry_msgs/msg/TwistWithCovariance.msg","mode":"100644","type":"blob","sha":"6d89780154c01faf43175b19363047dcaa9cb73b","size":326,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/6d89780154c01faf43175b19363047dcaa9cb73b"},{"path":"test/files/geometry_msgs/msg/TwistWithCovarianceStamped.msg","mode":"100644","type":"blob","sha":"28667cd3f70c16646228665ad1d3bdc6205593d1","size":123,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/28667cd3f70c16646228665ad1d3bdc6205593d1"},{"path":"test/files/geometry_msgs/msg/Vector3.msg","mode":"100644","type":"blob","sha":"00dd4cbac99e2729865cd00faff2ac482c0794cd","size":73,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/00dd4cbac99e2729865cd00faff2ac482c0794cd"},{"path":"test/files/geometry_msgs/msg/Vector3Stamped.msg","mode":"100644","type":"blob","sha":"e68eb062bebd5bba3cbaf9f33beae5a207f72a51","size":103,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e68eb062bebd5bba3cbaf9f33beae5a207f72a51"},{"path":"test/files/geometry_msgs/msg/Wrench.msg","mode":"100644","type":"blob","sha":"13a222982943514290874b560d8ac352879ebbf1","size":121,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/13a222982943514290874b560d8ac352879ebbf1"},{"path":"test/files/geometry_msgs/msg/WrenchStamped.msg","mode":"100644","type":"blob","sha":"dad910ed724de005e89e3422ef1ca7cec401e9e4","size":85,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/dad910ed724de005e89e3422ef1ca7cec401e9e4"},{"path":"test/files/invalid","mode":"040000","type":"tree","sha":"0c8b32c318ecd8dc2b6520f7b1273b075dc5f1a3","url":"https://api.github.com/repos/ros/genmsg/git/trees/0c8b32c318ecd8dc2b6520f7b1273b075dc5f1a3"},{"path":"test/files/invalid/msg","mode":"040000","type":"tree","sha":"6ee4cc0d6056661d88c0795a4b24450c61d506a1","url":"https://api.github.com/repos/ros/genmsg/git/trees/6ee4cc0d6056661d88c0795a4b24450c61d506a1"},{"path":"test/files/invalid/msg/BadDepend.msg","mode":"100644","type":"blob","sha":"4725b49036ad244aaf8176ccccdd56f244859982","size":26,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/4725b49036ad244aaf8176ccccdd56f244859982"},{"path":"test/files/invalid/msg/BadLocalDepend.msg","mode":"100644","type":"blob","sha":"cd0b057b3122e1ae92b7277bbb5ce9415602074f","size":17,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/cd0b057b3122e1ae92b7277bbb5ce9415602074f"},{"path":"test/files/rosgraph_msgs","mode":"040000","type":"tree","sha":"ba70dcaa55b90f177dfe9799398944e493e7b000","url":"https://api.github.com/repos/ros/genmsg/git/trees/ba70dcaa55b90f177dfe9799398944e493e7b000"},{"path":"test/files/rosgraph_msgs/msg","mode":"040000","type":"tree","sha":"7280279e75bd0a335db39fb541bad7251dda507b","url":"https://api.github.com/repos/ros/genmsg/git/trees/7280279e75bd0a335db39fb541bad7251dda507b"},{"path":"test/files/rosgraph_msgs/msg/Clock.msg","mode":"100644","type":"blob","sha":"423872fe40f621d516b7cbbca47a800794abf5fd","size":184,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/423872fe40f621d516b7cbbca47a800794abf5fd"},{"path":"test/files/rosgraph_msgs/msg/Log.msg","mode":"100644","type":"blob","sha":"9a9597c2625899fb4cfd1757250dfc0443130f68","size":457,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/9a9597c2625899fb4cfd1757250dfc0443130f68"},{"path":"test/files/sensor_msgs","mode":"040000","type":"tree","sha":"9f349f82eb5becae431795ff5e855c0a38f6d42b","url":"https://api.github.com/repos/ros/genmsg/git/trees/9f349f82eb5becae431795ff5e855c0a38f6d42b"},{"path":"test/files/sensor_msgs/msg","mode":"040000","type":"tree","sha":"2938a899866af5fe8275de8b88b047fb54f72e42","url":"https://api.github.com/repos/ros/genmsg/git/trees/2938a899866af5fe8275de8b88b047fb54f72e42"},{"path":"test/files/sensor_msgs/msg/CameraInfo.msg","mode":"100644","type":"blob","sha":"e498e88d88270ead001def26ae635ad48551e2f6","size":6283,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e498e88d88270ead001def26ae635ad48551e2f6"},{"path":"test/files/sensor_msgs/msg/ChannelFloat32.msg","mode":"100644","type":"blob","sha":"d2560792898958179806bfc3ec4b98712c4e73a9","size":1008,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/d2560792898958179806bfc3ec4b98712c4e73a9"},{"path":"test/files/sensor_msgs/msg/CompressedImage.msg","mode":"100644","type":"blob","sha":"d9e8a64651e447278ae34622849b7dd8846d134f","size":641,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/d9e8a64651e447278ae34622849b7dd8846d134f"},{"path":"test/files/sensor_msgs/msg/Image.msg","mode":"100644","type":"blob","sha":"37029bc0709d1d911b25d7360bfacdea92974045","size":1349,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/37029bc0709d1d911b25d7360bfacdea92974045"},{"path":"test/files/sensor_msgs/msg/Imu.msg","mode":"100644","type":"blob","sha":"7ef82c1fa8b7ac219d372033a743dc711407d231","size":1195,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/7ef82c1fa8b7ac219d372033a743dc711407d231"},{"path":"test/files/sensor_msgs/msg/JointState.msg","mode":"100644","type":"blob","sha":"f67f4bcf214cbf187cf5ba557f34fcbfb6966cf2","size":995,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/f67f4bcf214cbf187cf5ba557f34fcbfb6966cf2"},{"path":"test/files/sensor_msgs/msg/Joy.msg","mode":"100644","type":"blob","sha":"e51cb43a792dad9b1f9c47f463e5cc1614042f89","size":286,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e51cb43a792dad9b1f9c47f463e5cc1614042f89"},{"path":"test/files/sensor_msgs/msg/JoyFeedback.msg","mode":"100644","type":"blob","sha":"9ecedab75320de59e62ca6fdf210e6825417c91d","size":413,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/9ecedab75320de59e62ca6fdf210e6825417c91d"},{"path":"test/files/sensor_msgs/msg/JoyFeedbackArray.msg","mode":"100644","type":"blob","sha":"9bb72b79b5a7bed2af52ebac83a458497a42a1b0","size":83,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/9bb72b79b5a7bed2af52ebac83a458497a42a1b0"},{"path":"test/files/sensor_msgs/msg/LaserScan.msg","mode":"100644","type":"blob","sha":"910751b8b8c5d5b96f8db07964c7865a5cc20009","size":1519,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/910751b8b8c5d5b96f8db07964c7865a5cc20009"},{"path":"test/files/sensor_msgs/msg/NavSatFix.msg","mode":"100644","type":"blob","sha":"6307f80e9f531b983f871317c122b7a5aacc3d1e","size":1233,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/6307f80e9f531b983f871317c122b7a5aacc3d1e"},{"path":"test/files/sensor_msgs/msg/NavSatStatus.msg","mode":"100644","type":"blob","sha":"4fce76f23d23c6e7f2ceea2f4c34014da8021d34","size":753,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/4fce76f23d23c6e7f2ceea2f4c34014da8021d34"},{"path":"test/files/sensor_msgs/msg/PointCloud.msg","mode":"100644","type":"blob","sha":"a0eac50c6deb978502181896f4a99eef90f960a7","size":553,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/a0eac50c6deb978502181896f4a99eef90f960a7"},{"path":"test/files/sensor_msgs/msg/PointCloud2.msg","mode":"100644","type":"blob","sha":"69a9302a2a10d22b52f0bc3344d98ad27b784f13","size":1039,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/69a9302a2a10d22b52f0bc3344d98ad27b784f13"},{"path":"test/files/sensor_msgs/msg/PointField.msg","mode":"100644","type":"blob","sha":"fb9ff5453f772608066466358c77b742f8d84174","size":425,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/fb9ff5453f772608066466358c77b742f8d84174"},{"path":"test/files/sensor_msgs/msg/Range.msg","mode":"100644","type":"blob","sha":"669fee667d4928853ba468a2adb1c4b83cfa837d","size":1251,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/669fee667d4928853ba468a2adb1c4b83cfa837d"},{"path":"test/files/sensor_msgs/msg/RegionOfInterest.msg","mode":"100644","type":"blob","sha":"c423dcf88952a13df86abd36c81746ff85ee502b","size":872,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/c423dcf88952a13df86abd36c81746ff85ee502b"},{"path":"test/files/std_msgs","mode":"040000","type":"tree","sha":"aac3aee6a7f5e81cb2b78814188995b5bcbfeaf0","url":"https://api.github.com/repos/ros/genmsg/git/trees/aac3aee6a7f5e81cb2b78814188995b5bcbfeaf0"},{"path":"test/files/std_msgs/msg","mode":"040000","type":"tree","sha":"e59d26597f6cc33b8c919c25af1bfc47ef9fd727","url":"https://api.github.com/repos/ros/genmsg/git/trees/e59d26597f6cc33b8c919c25af1bfc47ef9fd727"},{"path":"test/files/std_msgs/msg/Bool.msg","mode":"100644","type":"blob","sha":"f7cabb94fc04ac5f83ca8f219357b439f29d002f","size":9,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/f7cabb94fc04ac5f83ca8f219357b439f29d002f"},{"path":"test/files/std_msgs/msg/ColorRGBA.msg","mode":"100644","type":"blob","sha":"182dbc8349abec122d95436cb840906503f569f2","size":40,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/182dbc8349abec122d95436cb840906503f569f2"},{"path":"test/files/std_msgs/msg/Duration.msg","mode":"100644","type":"blob","sha":"f13931ec8a7937ca624ff91af7f861559b5fc3fe","size":14,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/f13931ec8a7937ca624ff91af7f861559b5fc3fe"},{"path":"test/files/std_msgs/msg/Empty.msg","mode":"100644","type":"blob","sha":"e69de29bb2d1d6434b8b29ae775ad8c2e48c5391","size":0,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e69de29bb2d1d6434b8b29ae775ad8c2e48c5391"},{"path":"test/files/std_msgs/msg/Float32.msg","mode":"100644","type":"blob","sha":"e89740534bd9c0344c18709de0c29667620295bd","size":12,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e89740534bd9c0344c18709de0c29667620295bd"},{"path":"test/files/std_msgs/msg/Float32MultiArray.msg","mode":"100644","type":"blob","sha":"915830846dd023a111abd8ad2831d982b9c85a82","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/915830846dd023a111abd8ad2831d982b9c85a82"},{"path":"test/files/std_msgs/msg/Float64.msg","mode":"100644","type":"blob","sha":"cd09d39b8caedf067b9548d62ecab3c73b6ecace","size":12,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/cd09d39b8caedf067b9548d62ecab3c73b6ecace"},{"path":"test/files/std_msgs/msg/Float64MultiArray.msg","mode":"100644","type":"blob","sha":"0a13b928fd70d116defc17ec0acc09a6296b57ff","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/0a13b928fd70d116defc17ec0acc09a6296b57ff"},{"path":"test/files/std_msgs/msg/Header.msg","mode":"100644","type":"blob","sha":"b2f34f6f1d15f22149dae16e5e6bbf190a89a0d8","size":500,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/b2f34f6f1d15f22149dae16e5e6bbf190a89a0d8"},{"path":"test/files/std_msgs/msg/Int16.msg","mode":"100644","type":"blob","sha":"c4389faf706f189e64bc576af0f7788f06d16c86","size":11,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/c4389faf706f189e64bc576af0f7788f06d16c86"},{"path":"test/files/std_msgs/msg/Int16MultiArray.msg","mode":"100644","type":"blob","sha":"d2ddea1d1d6a69a15cb17e434900a1afbadaac89","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/d2ddea1d1d6a69a15cb17e434900a1afbadaac89"},{"path":"test/files/std_msgs/msg/Int32.msg","mode":"100644","type":"blob","sha":"0ecfe35f5f480f463e0b26e696c4f0e858aba06c","size":10,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/0ecfe35f5f480f463e0b26e696c4f0e858aba06c"},{"path":"test/files/std_msgs/msg/Int32MultiArray.msg","mode":"100644","type":"blob","sha":"af60abda3a697bac5e596b23b04038414258188a","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/af60abda3a697bac5e596b23b04038414258188a"},{"path":"test/files/std_msgs/msg/Int64.msg","mode":"100644","type":"blob","sha":"6961e00f52989d8e03f54e0a0e0333ae470e6508","size":10,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/6961e00f52989d8e03f54e0a0e0333ae470e6508"},{"path":"test/files/std_msgs/msg/Int64MultiArray.msg","mode":"100644","type":"blob","sha":"f4f35e171b316dacbb0eb3a80e20885977171ebd","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/f4f35e171b316dacbb0eb3a80e20885977171ebd"},{"path":"test/files/std_msgs/msg/Int8.msg","mode":"100644","type":"blob","sha":"1e42e554feea25175f15af74433d802e86ed0180","size":10,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/1e42e554feea25175f15af74433d802e86ed0180"},{"path":"test/files/std_msgs/msg/Int8MultiArray.msg","mode":"100644","type":"blob","sha":"a59a37259e5e97c8dbee0072f4e6c282d7fc8fd3","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/a59a37259e5e97c8dbee0072f4e6c282d7fc8fd3"},{"path":"test/files/std_msgs/msg/MultiArrayDimension.msg","mode":"100644","type":"blob","sha":"08240462c4315969a5a8cde9292683c51865a5d3","size":141,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/08240462c4315969a5a8cde9292683c51865a5d3"},{"path":"test/files/std_msgs/msg/MultiArrayLayout.msg","mode":"100644","type":"blob","sha":"5437f8542af613c0058e380c27ab59cb5ebb7df0","size":907,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/5437f8542af613c0058e380c27ab59cb5ebb7df0"},{"path":"test/files/std_msgs/msg/String.msg","mode":"100644","type":"blob","sha":"ae721739e8fa7035347d3fed3cca1b137e670c97","size":12,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/ae721739e8fa7035347d3fed3cca1b137e670c97"},{"path":"test/files/std_msgs/msg/Time.msg","mode":"100644","type":"blob","sha":"7f8f721711fbbc620fa7f6b58a9f89d5667281be","size":10,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/7f8f721711fbbc620fa7f6b58a9f89d5667281be"},{"path":"test/files/std_msgs/msg/UInt16.msg","mode":"100644","type":"blob","sha":"87d0c44eb59dca29f419aaa77801b4fbc278f9f6","size":12,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/87d0c44eb59dca29f419aaa77801b4fbc278f9f6"},{"path":"test/files/std_msgs/msg/UInt16MultiArray.msg","mode":"100644","type":"blob","sha":"f38970b656cf1160e292f9effc8f5d8c3281a12b","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/f38970b656cf1160e292f9effc8f5d8c3281a12b"},{"path":"test/files/std_msgs/msg/UInt32.msg","mode":"100644","type":"blob","sha":"b6c696b421e4a4c89c7f1420fbaa15af83913093","size":11,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/b6c696b421e4a4c89c7f1420fbaa15af83913093"},{"path":"test/files/std_msgs/msg/UInt32MultiArray.msg","mode":"100644","type":"blob","sha":"b2bb0771f0208bc3c45210a918d689d5a24b53a7","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/b2bb0771f0208bc3c45210a918d689d5a24b53a7"},{"path":"test/files/std_msgs/msg/UInt64.msg","mode":"100644","type":"blob","sha":"2eb1afad37e320a366f7b0296fb207569a30db47","size":11,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/2eb1afad37e320a366f7b0296fb207569a30db47"},{"path":"test/files/std_msgs/msg/UInt64MultiArray.msg","mode":"100644","type":"blob","sha":"30d0cd92854159d4cc3fa5e996763cc08e9dcdf9","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/30d0cd92854159d4cc3fa5e996763cc08e9dcdf9"},{"path":"test/files/std_msgs/msg/UInt8.msg","mode":"100644","type":"blob","sha":"5eefd870db82c99cf7d62e7ccff1824c114bd462","size":11,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/5eefd870db82c99cf7d62e7ccff1824c114bd462"},{"path":"test/files/std_msgs/msg/UInt8MultiArray.msg","mode":"100644","type":"blob","sha":"31f7d6a213995f216f4d124f1d6402852d1572b2","size":210,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/31f7d6a213995f216f4d124f1d6402852d1572b2"},{"path":"test/files/std_srvs","mode":"040000","type":"tree","sha":"6d91522aca605e31e723bfe7351af9c7865d08d9","url":"https://api.github.com/repos/ros/genmsg/git/trees/6d91522aca605e31e723bfe7351af9c7865d08d9"},{"path":"test/files/std_srvs/srv","mode":"040000","type":"tree","sha":"6e131065f744a9b73a4026216e27c94b42ba4eea","url":"https://api.github.com/repos/ros/genmsg/git/trees/6e131065f744a9b73a4026216e27c94b42ba4eea"},{"path":"test/files/std_srvs/srv/Empty.srv","mode":"100644","type":"blob","sha":"73b314ff7c704c18889cf90fdc024716c634adb6","size":3,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/73b314ff7c704c18889cf90fdc024716c634adb6"},{"path":"test/files/test_ros","mode":"040000","type":"tree","sha":"2c6651eb1894b92e24084972ec3f7621e2f5c3ad","url":"https://api.github.com/repos/ros/genmsg/git/trees/2c6651eb1894b92e24084972ec3f7621e2f5c3ad"},{"path":"test/files/test_ros/msg","mode":"040000","type":"tree","sha":"e9efd6bba02faca0a15840f42d6cde16e2aefd55","url":"https://api.github.com/repos/ros/genmsg/git/trees/e9efd6bba02faca0a15840f42d6cde16e2aefd55"},{"path":"test/files/test_ros/msg/Bad.msg","mode":"100644","type":"blob","sha":"d9bbac9c4b62f296238cfb1a78d2ef4d427d8f46","size":29,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/d9bbac9c4b62f296238cfb1a78d2ef4d427d8f46"},{"path":"test/files/test_ros/msg/TestString.msg","mode":"100644","type":"blob","sha":"4ab04385050da20743d887191f80a17361d0f4c3","size":185,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/4ab04385050da20743d887191f80a17361d0f4c3"},{"path":"test/files/test_ros/srv","mode":"040000","type":"tree","sha":"b3ca71cb6b0a088de34a1b2cac9bfcbc2bc15216","url":"https://api.github.com/repos/ros/genmsg/git/trees/b3ca71cb6b0a088de34a1b2cac9bfcbc2bc15216"},{"path":"test/files/test_ros/srv/AddTwoInts.srv","mode":"100644","type":"blob","sha":"3a68808ee591a3623cbf5e553eed28bac5233be8","size":30,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/3a68808ee591a3623cbf5e553eed28bac5233be8"},{"path":"test/files/test_ros/srv/GetPoseStamped.srv","mode":"100644","type":"blob","sha":"d462907f82e732cd4b2b851adfd9defae79149c8","size":35,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/d462907f82e732cd4b2b851adfd9defae79149c8"},{"path":"test/md5tests","mode":"040000","type":"tree","sha":"6e79e84cbc487758dbbefeeda9cbca7d722d12ab","url":"https://api.github.com/repos/ros/genmsg/git/trees/6e79e84cbc487758dbbefeeda9cbca7d722d12ab"},{"path":"test/md5tests/different","mode":"040000","type":"tree","sha":"4fa0305374c6b08b3e2346c8932c850b05a455f5","url":"https://api.github.com/repos/ros/genmsg/git/trees/4fa0305374c6b08b3e2346c8932c850b05a455f5"},{"path":"test/md5tests/different/constants1.txt","mode":"100644","type":"blob","sha":"bbdcc07babe5b2dc72843b6a16a2bac9b7ea9163","size":10,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/bbdcc07babe5b2dc72843b6a16a2bac9b7ea9163"},{"path":"test/md5tests/different/constants2.txt","mode":"100644","type":"blob","sha":"163e43089adf522185fdacaaceb86dbcc3c84283","size":10,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/163e43089adf522185fdacaaceb86dbcc3c84283"},{"path":"test/md5tests/different/constants3.txt","mode":"100644","type":"blob","sha":"33c5b1db88ff05489608736a43d34645b9fda15b","size":11,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/33c5b1db88ff05489608736a43d34645b9fda15b"},{"path":"test/md5tests/different/constantsB1.txt","mode":"100644","type":"blob","sha":"3839b46f5aa44b9b2546e9519c02c59b4373f6a1","size":46,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/3839b46f5aa44b9b2546e9519c02c59b4373f6a1"},{"path":"test/md5tests/different/constantsB2.txt","mode":"100644","type":"blob","sha":"2901a264e4768acb82c5ef2061d27ea353b689b1","size":45,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/2901a264e4768acb82c5ef2061d27ea353b689b1"},{"path":"test/md5tests/different/fields1.txt","mode":"100644","type":"blob","sha":"c763ffa5ae0294dd0f82ea11e423f7416cc87344","size":24,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/c763ffa5ae0294dd0f82ea11e423f7416cc87344"},{"path":"test/md5tests/different/fields2.txt","mode":"100644","type":"blob","sha":"035777c38592342c76c1e46cd84c6efdbca4cc95","size":16,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/035777c38592342c76c1e46cd84c6efdbca4cc95"},{"path":"test/md5tests/different/fields3.txt","mode":"100644","type":"blob","sha":"aabefcb1a0947bc5f9adcec545dd6282fe7428c0","size":32,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/aabefcb1a0947bc5f9adcec545dd6282fe7428c0"},{"path":"test/md5tests/different/fields4.txt","mode":"100644","type":"blob","sha":"518e2d210bf697ed2ff35d9445c44f3e78ce1ad7","size":25,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/518e2d210bf697ed2ff35d9445c44f3e78ce1ad7"},{"path":"test/md5tests/different/fields5.txt","mode":"100644","type":"blob","sha":"9a0abc3d4ad4d0d0ffb8ea1956ebe22c5a8ee704","size":25,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/9a0abc3d4ad4d0d0ffb8ea1956ebe22c5a8ee704"},{"path":"test/md5tests/md5text","mode":"040000","type":"tree","sha":"82f6d93ad1bc5c792084415d9eaa53e195ed371b","url":"https://api.github.com/repos/ros/genmsg/git/trees/82f6d93ad1bc5c792084415d9eaa53e195ed371b"},{"path":"test/md5tests/md5text/constant1.txt","mode":"100644","type":"blob","sha":"8e09574bc4a20f26dc1d004f670b2f547c40fa8c","size":15,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8e09574bc4a20f26dc1d004f670b2f547c40fa8c"},{"path":"test/md5tests/md5text/constant2.txt","mode":"100644","type":"blob","sha":"fefbb5721a0b25c5cb70fe2bf7c9145fef9b6f1b","size":17,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/fefbb5721a0b25c5cb70fe2bf7c9145fef9b6f1b"},{"path":"test/md5tests/md5text/constant3.txt","mode":"100644","type":"blob","sha":"ac5f6f972149f5053e93ce08418bc7eb5d92ebd5","size":51,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/ac5f6f972149f5053e93ce08418bc7eb5d92ebd5"},{"path":"test/md5tests/md5text/constantB1.txt","mode":"100644","type":"blob","sha":"2db0afd64fd9aa8bf6a1e6396dd789f0397b790d","size":17,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/2db0afd64fd9aa8bf6a1e6396dd789f0397b790d"},{"path":"test/md5tests/md5text/constantB2.txt","mode":"100644","type":"blob","sha":"a6bd453df21b6cf267d7c35e38f2edf584e0d113","size":27,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/a6bd453df21b6cf267d7c35e38f2edf584e0d113"},{"path":"test/md5tests/md5text/constantC1.txt","mode":"100644","type":"blob","sha":"f0b3d0a25cab1493ba10082bd004dcf2f74f742f","size":83,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/f0b3d0a25cab1493ba10082bd004dcf2f74f742f"},{"path":"test/md5tests/md5text/constantC2.txt","mode":"100644","type":"blob","sha":"ac0753b7ff0092f9b42e6357392351ed1ed68dde","size":100,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/ac0753b7ff0092f9b42e6357392351ed1ed68dde"},{"path":"test/md5tests/md5text/embed1.txt","mode":"100644","type":"blob","sha":"4eda895981fbc222c2e5aa9d06603c096ec969b6","size":37,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/4eda895981fbc222c2e5aa9d06603c096ec969b6"},{"path":"test/md5tests/md5text/embed2.txt","mode":"100644","type":"blob","sha":"6cfe1f5760174f4a0a22f27de7b437a5bf6073c8","size":22,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/6cfe1f5760174f4a0a22f27de7b437a5bf6073c8"},{"path":"test/md5tests/md5text/embed3.txt","mode":"100644","type":"blob","sha":"5562b1d303073e972cae93921c52f7c5f23ee585","size":50,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/5562b1d303073e972cae93921c52f7c5f23ee585"},{"path":"test/md5tests/md5text/embed4.txt","mode":"100644","type":"blob","sha":"a9d30dd70242263acdd237bfb8c1ec254efe2abc","size":60,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/a9d30dd70242263acdd237bfb8c1ec254efe2abc"},{"path":"test/md5tests/md5text/empty1.txt","mode":"100644","type":"blob","sha":"e69de29bb2d1d6434b8b29ae775ad8c2e48c5391","size":0,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e69de29bb2d1d6434b8b29ae775ad8c2e48c5391"},{"path":"test/md5tests/md5text/empty2.txt","mode":"100644","type":"blob","sha":"8d1c8b69c3fce7bea45c73efd06983e3c419a92f","size":2,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8d1c8b69c3fce7bea45c73efd06983e3c419a92f"},{"path":"test/md5tests/md5text/empty3.txt","mode":"100644","type":"blob","sha":"324811884a926f66f66ae364387d3568981e8f2f","size":19,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/324811884a926f66f66ae364387d3568981e8f2f"},{"path":"test/md5tests/md5text/empty4.txt","mode":"100644","type":"blob","sha":"1b9cb525f45ab6d9bd4346e9fad1130024aa2389","size":38,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/1b9cb525f45ab6d9bd4346e9fad1130024aa2389"},{"path":"test/md5tests/md5text/field1.txt","mode":"100644","type":"blob","sha":"b0369cb9b571ac55970ef296bd579c7aa6d7e63f","size":12,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/b0369cb9b571ac55970ef296bd579c7aa6d7e63f"},{"path":"test/md5tests/md5text/field2.txt","mode":"100644","type":"blob","sha":"6699ede22096fa4db958abedeedc071a2ab1beeb","size":28,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/6699ede22096fa4db958abedeedc071a2ab1beeb"},{"path":"test/md5tests/md5text/field3.txt","mode":"100644","type":"blob","sha":"cc58824bf8dad9af4ca1d59f2c3e7ddb738b143a","size":27,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/cc58824bf8dad9af4ca1d59f2c3e7ddb738b143a"},{"path":"test/md5tests/md5text/field4.txt","mode":"100644","type":"blob","sha":"40a5023ed2c4a2526cad6d8472e384ac6d90fe01","size":17,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/40a5023ed2c4a2526cad6d8472e384ac6d90fe01"},{"path":"test/md5tests/md5text/field5.txt","mode":"100644","type":"blob","sha":"d30c030c13dc5afb01485ff02fcaddc3b41f6b23","size":46,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/d30c030c13dc5afb01485ff02fcaddc3b41f6b23"},{"path":"test/md5tests/md5text/multi1.txt","mode":"100644","type":"blob","sha":"409be8d58a609237fc8faea7e58a8ed86613687e","size":118,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/409be8d58a609237fc8faea7e58a8ed86613687e"},{"path":"test/md5tests/md5text/multi2.txt","mode":"100644","type":"blob","sha":"8adf8ee332f4c0179fc8a35082a6e6e970df5b61","size":222,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8adf8ee332f4c0179fc8a35082a6e6e970df5b61"},{"path":"test/md5tests/md5text/multi3.txt","mode":"100644","type":"blob","sha":"19e8a78041c5f82110ef20bffc09c35869455b0f","size":63,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/19e8a78041c5f82110ef20bffc09c35869455b0f"},{"path":"test/md5tests/md5text/multi4.txt","mode":"100644","type":"blob","sha":"30e806468830e277f228834825597089cbcbb874","size":266,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/30e806468830e277f228834825597089cbcbb874"},{"path":"test/md5tests/md5text/multi5.txt","mode":"100644","type":"blob","sha":"9b289463095c0f29b42c45915773f2a609dca12c","size":100,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/9b289463095c0f29b42c45915773f2a609dca12c"},{"path":"test/md5tests/same","mode":"040000","type":"tree","sha":"2591f8a6c7d524898ad20888e50a83ef5acb4eb3","url":"https://api.github.com/repos/ros/genmsg/git/trees/2591f8a6c7d524898ad20888e50a83ef5acb4eb3"},{"path":"test/md5tests/same/constant1.txt","mode":"100644","type":"blob","sha":"8e09574bc4a20f26dc1d004f670b2f547c40fa8c","size":15,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8e09574bc4a20f26dc1d004f670b2f547c40fa8c"},{"path":"test/md5tests/same/constant2.txt","mode":"100644","type":"blob","sha":"fefbb5721a0b25c5cb70fe2bf7c9145fef9b6f1b","size":17,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/fefbb5721a0b25c5cb70fe2bf7c9145fef9b6f1b"},{"path":"test/md5tests/same/constant3.txt","mode":"100644","type":"blob","sha":"ac5f6f972149f5053e93ce08418bc7eb5d92ebd5","size":51,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/ac5f6f972149f5053e93ce08418bc7eb5d92ebd5"},{"path":"test/md5tests/same/constantB1.txt","mode":"100644","type":"blob","sha":"2db0afd64fd9aa8bf6a1e6396dd789f0397b790d","size":17,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/2db0afd64fd9aa8bf6a1e6396dd789f0397b790d"},{"path":"test/md5tests/same/constantB2.txt","mode":"100644","type":"blob","sha":"a6bd453df21b6cf267d7c35e38f2edf584e0d113","size":27,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/a6bd453df21b6cf267d7c35e38f2edf584e0d113"},{"path":"test/md5tests/same/constantC1.txt","mode":"100644","type":"blob","sha":"f0b3d0a25cab1493ba10082bd004dcf2f74f742f","size":83,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/f0b3d0a25cab1493ba10082bd004dcf2f74f742f"},{"path":"test/md5tests/same/constantC2.txt","mode":"100644","type":"blob","sha":"ac0753b7ff0092f9b42e6357392351ed1ed68dde","size":100,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/ac0753b7ff0092f9b42e6357392351ed1ed68dde"},{"path":"test/md5tests/same/embed1.txt","mode":"100644","type":"blob","sha":"6cfe1f5760174f4a0a22f27de7b437a5bf6073c8","size":22,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/6cfe1f5760174f4a0a22f27de7b437a5bf6073c8"},{"path":"test/md5tests/same/embed2.txt","mode":"100644","type":"blob","sha":"c9ddc1e1e5a318f4aaa390df4ac693a0de95823a","size":8,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/c9ddc1e1e5a318f4aaa390df4ac693a0de95823a"},{"path":"test/md5tests/same/embed3.txt","mode":"100644","type":"blob","sha":"5562b1d303073e972cae93921c52f7c5f23ee585","size":50,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/5562b1d303073e972cae93921c52f7c5f23ee585"},{"path":"test/md5tests/same/embed4.txt","mode":"100644","type":"blob","sha":"a9d30dd70242263acdd237bfb8c1ec254efe2abc","size":60,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/a9d30dd70242263acdd237bfb8c1ec254efe2abc"},{"path":"test/md5tests/same/empty1.txt","mode":"100644","type":"blob","sha":"e69de29bb2d1d6434b8b29ae775ad8c2e48c5391","size":0,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/e69de29bb2d1d6434b8b29ae775ad8c2e48c5391"},{"path":"test/md5tests/same/empty2.txt","mode":"100644","type":"blob","sha":"8d1c8b69c3fce7bea45c73efd06983e3c419a92f","size":2,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8d1c8b69c3fce7bea45c73efd06983e3c419a92f"},{"path":"test/md5tests/same/empty3.txt","mode":"100644","type":"blob","sha":"324811884a926f66f66ae364387d3568981e8f2f","size":19,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/324811884a926f66f66ae364387d3568981e8f2f"},{"path":"test/md5tests/same/empty4.txt","mode":"100644","type":"blob","sha":"1b9cb525f45ab6d9bd4346e9fad1130024aa2389","size":38,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/1b9cb525f45ab6d9bd4346e9fad1130024aa2389"},{"path":"test/md5tests/same/field1.txt","mode":"100644","type":"blob","sha":"b0369cb9b571ac55970ef296bd579c7aa6d7e63f","size":12,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/b0369cb9b571ac55970ef296bd579c7aa6d7e63f"},{"path":"test/md5tests/same/field2.txt","mode":"100644","type":"blob","sha":"6699ede22096fa4db958abedeedc071a2ab1beeb","size":28,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/6699ede22096fa4db958abedeedc071a2ab1beeb"},{"path":"test/md5tests/same/field3.txt","mode":"100644","type":"blob","sha":"cc58824bf8dad9af4ca1d59f2c3e7ddb738b143a","size":27,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/cc58824bf8dad9af4ca1d59f2c3e7ddb738b143a"},{"path":"test/md5tests/same/field4.txt","mode":"100644","type":"blob","sha":"40a5023ed2c4a2526cad6d8472e384ac6d90fe01","size":17,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/40a5023ed2c4a2526cad6d8472e384ac6d90fe01"},{"path":"test/md5tests/same/field5.txt","mode":"100644","type":"blob","sha":"d30c030c13dc5afb01485ff02fcaddc3b41f6b23","size":46,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/d30c030c13dc5afb01485ff02fcaddc3b41f6b23"},{"path":"test/md5tests/same/multi1.txt","mode":"100644","type":"blob","sha":"4fd310a2275b2e259a7a6d7dfba7614c3de1958d","size":90,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/4fd310a2275b2e259a7a6d7dfba7614c3de1958d"},{"path":"test/md5tests/same/multi2.txt","mode":"100644","type":"blob","sha":"8adf8ee332f4c0179fc8a35082a6e6e970df5b61","size":222,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8adf8ee332f4c0179fc8a35082a6e6e970df5b61"},{"path":"test/md5tests/same/multi3.txt","mode":"100644","type":"blob","sha":"19e8a78041c5f82110ef20bffc09c35869455b0f","size":63,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/19e8a78041c5f82110ef20bffc09c35869455b0f"},{"path":"test/md5tests/same/multi4.txt","mode":"100644","type":"blob","sha":"30e806468830e277f228834825597089cbcbb874","size":266,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/30e806468830e277f228834825597089cbcbb874"},{"path":"test/md5tests/same/multi5.txt","mode":"100644","type":"blob","sha":"9b289463095c0f29b42c45915773f2a609dca12c","size":100,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/9b289463095c0f29b42c45915773f2a609dca12c"},{"path":"test/test_genmsg_base.py","mode":"100644","type":"blob","sha":"aff6883e4aa03d26976bcf1626a3e654f75979c5","size":347,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/aff6883e4aa03d26976bcf1626a3e654f75979c5"},{"path":"test/test_genmsg_command_line.py","mode":"100644","type":"blob","sha":"8f9ff025a4a0ed373383e1b420163d97a7b7d719","size":1937,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8f9ff025a4a0ed373383e1b420163d97a7b7d719"},{"path":"test/test_genmsg_gentools.py","mode":"100644","type":"blob","sha":"8797d823ceeefcbdacfc26423492667d462e778d","size":9526,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8797d823ceeefcbdacfc26423492667d462e778d"},{"path":"test/test_genmsg_msg_loader.py","mode":"100644","type":"blob","sha":"74dc782f12acd249986c44838a981a2a0f67e40b","size":29225,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/74dc782f12acd249986c44838a981a2a0f67e40b"},{"path":"test/test_genmsg_msgs.py","mode":"100644","type":"blob","sha":"8573d91ff15923332a4db0cfb4926a478a28e950","size":11646,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/8573d91ff15923332a4db0cfb4926a478a28e950"},{"path":"test/test_genmsg_names.py","mode":"100644","type":"blob","sha":"0608e6e386116f174de5a917c902d1e6e5cb4f3e","size":4540,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/0608e6e386116f174de5a917c902d1e6e5cb4f3e"},{"path":"test/test_genmsg_srvs.py","mode":"100644","type":"blob","sha":"b1c6023b33f7b0b23b2ca3297bfb1d2f79319a84","size":3233,"url":"https://api.github.com/repos/ros/genmsg/git/blobs/b1c6023b33f7b0b23b2ca3297bfb1d2f79319a84"}],"truncated":false} \ No newline at end of file diff -Nru ros-rosdistro-0.6.3/test/test_manifest_providers.py ros-rosdistro-0.6.6/test/test_manifest_providers.py --- ros-rosdistro-0.6.3/test/test_manifest_providers.py 2017-12-13 11:17:35.000000000 +0000 +++ ros-rosdistro-0.6.6/test/test_manifest_providers.py 2018-01-22 22:24:12.000000000 +0000 @@ -1,10 +1,13 @@ # -*- coding: utf-8 -*- +import mock + +import rosdistro.manifest_provider.github import rosdistro.vcs + from rosdistro.manifest_provider.bitbucket import bitbucket_manifest_provider from rosdistro.manifest_provider.cache import CachedManifestProvider, sanitize_xml from rosdistro.manifest_provider.git import git_manifest_provider, git_source_manifest_provider -from rosdistro.manifest_provider.github import github_manifest_provider, github_source_manifest_provider from rosdistro.release_repository_specification import ReleaseRepositorySpecification from rosdistro.source_repository_specification import SourceRepositorySpecification @@ -18,7 +21,7 @@ def __init__(self): self.release_package_xmls = {} dc = FakeDistributionCache() - cache = CachedManifestProvider(dc, [github_manifest_provider]) + cache = CachedManifestProvider(dc, [rosdistro.manifest_provider.github.github_manifest_provider]) assert '' in cache('kinetic', _genmsg_release_repo(), 'genmsg') @@ -33,7 +36,7 @@ def test_github(): - assert '' in github_manifest_provider('kinetic', _genmsg_release_repo(), 'genmsg') + assert '' in rosdistro.manifest_provider.github.github_manifest_provider('kinetic', _genmsg_release_repo(), 'genmsg') def test_git_source(): @@ -46,9 +49,45 @@ assert '' == package_path assert '0.5.7' in package_xml +# mock_get_url_contents is used to mock out the '_get_url_contents' method in +# the rosdistro.manifest_provider.github module. Instead of going out to github +# to get data (which can get rate-limited in Travis), it instead pulls a canned +# example from some local files. +def mock_get_url_contents(req): + import re + + # For python3, look for the 'str' type; for Python 2, the 'unicode' type + try: + text_type = unicode + except NameError: + text_type = str + + # The urlopen() function from urllib or urllib2 takes either a string or a + # urllib.Request object in; determine the URL in either case. + if isinstance(req, text_type): + haystack = req + else: + haystack = req.get_full_url() + + # Now see if the URL ends with 'package.xml'. If it does, open up the file + # that has the canned package.xml data we have for genmsg. Otherwise, + # return the canned JSON tree data that github would have returned. + # In both cases, store the file-like object as a module property so that we + # can properly close it during 'unmock_urlopen'. + if re.search('.*package.xml$', haystack) is not None: + fname = 'test/github-genmsg-package.xml' + else: + fname = 'test/github-tree-data.json' + + with open(fname, 'r') as infp: + data = infp.read() + return data + + +@mock.patch('rosdistro.manifest_provider.github._get_url_contents', mock_get_url_contents) def test_github_source(): - repo_cache = github_source_manifest_provider(_genmsg_source_repo()) + repo_cache = rosdistro.manifest_provider.github.github_source_manifest_provider(_genmsg_source_repo()) # This hash corresponds to the 0.5.7 tag. assert repo_cache['_ref'] == '81b66fe5eb00043c43894ddeee07e738d9b9712f' @@ -65,20 +104,16 @@ assert package_path == 'core/roslib' -def test_github_source_multi(): - repo_cache = github_source_manifest_provider(_ros_source_repo()) - assert repo_cache['_ref'] - package_path, package_xml = repo_cache['roslib'] - assert package_path == 'core/roslib' - - def test_sanitize(): assert 'abc' in sanitize_xml('abc') - assert 'ab c' in sanitize_xml(' ab c ') + assert 'ab c' in sanitize_xml(' ab c ') # This unicode check should be valid on both Python 2 and 3. assert 'français' in sanitize_xml(' français ') + # subsequent parse calls will collapse empty tags, therefore sanitize should do the same + assert '' in sanitize_xml(' ') + def _genmsg_release_repo(): return ReleaseRepositorySpecification('genmsg', { diff -Nru ros-rosdistro-0.6.3/.travis.yml ros-rosdistro-0.6.6/.travis.yml --- ros-rosdistro-0.6.3/.travis.yml 2017-12-13 11:17:35.000000000 +0000 +++ ros-rosdistro-0.6.6/.travis.yml 2018-01-22 22:24:12.000000000 +0000 @@ -9,7 +9,7 @@ # develop seems to be required by travis since 02/2013 - python setup.py build develop - pip install PyYAML argparse rospkg setuptools - - pip install nose coverage + - pip install nose coverage mock # command to run tests script: - nosetests --with-xunit test