Code Monkey home page Code Monkey logo

build_state_logger's Introduction

build_state_logger

Ever wondered in which state your workspace was, when you called catkin_make install? This package will help you with this.

It creates a log of changes showing you detailed information about your workspace. Which repository was in which state? Have any files been changed, added, removed or renamed?

(Disclaimer: Obviously, this package also works with the catkin_tools variants of the catkin commands. However, we will only stick to catkin_make in the following for an easier read.)

Installation

This tool depends on the gitpython module. To install gitpython, simply run pip install gitpython.

Usage

There are several ways to use this tool.

  1. Via CMake during the build and install step of catkin_make by cloning the repository.
  2. By manually calling the tool via rosrun.

Via CMake

Simply clone this repository into your catkin workspace. When compiling your workspace, it automatically creates the build_state.log within the build_state_logger directory. When you install your workspace, the build_state.log file will be installed in install/share/build_state_logger.

The tool looks at all repositories in <YOUR_WORKSPACE>/src directory.

Note that in the current state, the log file will be generated on each run of CMake, i.e. at each call to catkin_make and catkin_make install

Via rosrun

As this is a regular ROS package this tool can also be used as any other python node. Just make sure it is on your ROS_PACKAGE_PATH and call

rosrun build_state_logger build_state .

in the directory in which you want the build state to be logged.

Command line arguments

  -h, --help            show this help message and exit
  -o OUTPUTPATH, --outpath OUTPUTPATH
                        the path of where to put the build_state.log file. If
                        empty, the output is shown on the terminal.
  -n, --nopatch         do not provide patches of changed files.
  -d, --list-debs       list also all installed debian packages
  -p, --list-pypkgs     list also all installed python packages

Note that when using --list-pypkgs this takes all packages on the current python path. If your workspace is usually run using a virtual environment, you need to source this prior to running the script too.

Licensing

This package is licensed under LGPL. gitpyhon is licensed under the new BSD license.

build_state_logger's People

Contributors

mgruhler avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.