Skip to main content

Static analysis framework for ROS

Project description

DOI

HAROS

HAROS is a framework for quality assurance of ROS-based code, mostly based on static analysis.

Static analysis consists on extracting information from the source code without executing it (and, sometimes, even without compiling it). The kind of properties that can be verified include simple conformity checks, such as checking whether a variable is initialised, to more complex properties, such as functional behaviour of the program. This allows early detection of problems in the software development life cycle, which would otherwise go unnoticed into later stages or even into production.

Needless to say, sometimes in robotics it is very hard (or very expensive) to properly test software, not to talk about possible risks. Hence the appeal of static analysis.

There is a demo page of the HAROS visualizer available on GitHub, a short video presentation of the current state of HAROS on YouTube and a (slightly outdated) demo video on YouTube as well.

Current Status

HAROS is still being developed, as of August 2021. Help improve HAROS by participating in a short user survey.

Installing

See INSTALL for installation methods and instructions.

How to Use

See USAGE for basic commands and usage instructions.

Bugs, Questions and Support

Check whether your question has an answer in the FAQ.

Please use the issue tracker for issues or feature requests directly related to HAROS.

For issues related to plugins, please use the respective plugin repository.

If you run into errors, or feel that something is not working, run HAROS in debug mode, so the log files do not miss any information, e.g.,

haros --debug analyse ...

Then, you can share the log file, found by default within ~/.haros/log.txt.

Citing

See CITING.

Contributing

See CONTRIBUTING.

Acknowledgment

Until March 2021, this work was financed by the ERDF – European Regional Development Fund through the Operational Programme for Competitiveness and Internationalisation - COMPETE 2020 Programme and by National Funds through the Portuguese funding agency, FCT - Fundação para a Ciência e a Tecnologia within project PTDC/CCI-INF/29583/2017 (POCI-01-0145-FEDER-029583).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

haros-3.10.15.tar.gz (326.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

haros-3.10.15-py3-none-any.whl (362.8 kB view details)

Uploaded Python 3

File details

Details for the file haros-3.10.15.tar.gz.

File metadata

  • Download URL: haros-3.10.15.tar.gz
  • Upload date:
  • Size: 326.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.10

File hashes

Hashes for haros-3.10.15.tar.gz
Algorithm Hash digest
SHA256 0126061086406c4606598104f0b013eea86962119ff1d2c7717b4e8e73969afd
MD5 137c336e28fec208c68d8ea76fa72d9d
BLAKE2b-256 bddbe1d440a395b619e0f3e451e29b70f2e0625c62ad6ae2c3e574b4ed077e49

See more details on using hashes here.

File details

Details for the file haros-3.10.15-py3-none-any.whl.

File metadata

  • Download URL: haros-3.10.15-py3-none-any.whl
  • Upload date:
  • Size: 362.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.10

File hashes

Hashes for haros-3.10.15-py3-none-any.whl
Algorithm Hash digest
SHA256 630c0c2dd74d4bb18a06f5bbdc5a07b2a22e2949f7ab33c691d970fd2514f858
MD5 de4d2721bd993ba74f29bd23e41cebda
BLAKE2b-256 785bef0adae2bae6e715ae9e920490f56a0ee68dc99dda6d7cebc71dc114414d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page