SGo-Go / gAutoy

Python API that unifies legacy tools for development and analysis of the automotive software

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gAutoy: GPL licensed framework for developers employed in AUTOmotive industrY (Python TOY for navigation system developers and QAs)

Introduction

Tiny description

This module customizes access to Harman CNLogger/TraceClient, targets (processing units in cars), GoogleMaps, and has a potential to be expanded on other tools for automotive software development. In addition to conventional Python environments, it supports notebook apps like IPython notebook and its up-to-date fork Jupyter.

Combined with the Jupyter/IPython and immence set of Python libraries, it creates convenient uniform environment for analysing traces and manipulating automotive software/hardware.

Though more work is still needed to make gAutoy a unification tool-of-choice in the automotive software community, we are on our way towards this goal.

Motivation

Automotive software development is related to extensive use of different legacy tools, which are not customized under a single convenient environment. We designed gAutoy with an attempt to fill this gap, enabling you to manage different tasks in a single environment.

Purpose

gAutoy was developed with the following goals in mind:

  • automated issue reproduction, testing, and analysis
  • "live" documentation (provide a unified, customizable, and convenient environment for creating documents that combine explanatory text with live codes driven by automotive software development utils)
  • integration of automotive software development utils with IDEs

Target audience

This tool is aimed to serve primarily to the following categories of people involved in automotive software industry:

  • smart and "lazy" QA specialists who are interested in testing process automation
  • allure and flabby developers who knows Python

Installation

Read details on installation process in INSTALL or on the documentation site.

Examples

For quick start We welcome users to start study gAutoy with the Cookbook -- a tiny introductory tutorial for those, who wish to get an at-a-glance impression of the gAutoy.

In addition, we collected some notable IPython notebook/Jupyter cells in this notebook. These can serve as introductory examples too.

Find more simple examples here. For sophisticated examples, we refer to the utils folder.

API Reference

Complete documentation is available here. For gAutoy API details see API Reference.

Use question mark in notebooks (or .__doc__ in interactive Python console) to get dynamic info about class, method, function, and/or magic of interest.

TODO list

Urgent

The following features are not extremely time-consumung, but very "handy":

  • Python 3 support
  • Jupyter (so far works fine with Jupyter 4 and IPython 3.2.1+)
  • set_option function to specify package options (similar to this) (mostly done)
  • Enhanced RegExp support for log messages: make it consistent with Python re; enhanced C format parsing: use parse
  • Unicode support
  • Simple plugins for Sublime and Emacs
  • multi-line patterns with multi-occurances (so far use only single occurance in multi-line) (mostly done by power taking syntax)
  • improve KML viewer using OpenLayers 3 as map API and blogspot collection as examples (see more on KML here)
  • Full support of pandas-like wraps for traces
  • Documentation (fix API description, more examples)
  • pip and conda installation

Other (either require much effort or barely important)

The following features are ordered by usefulness and usually take considerable time to implement:

Contributors and Contacts

Email: sergiy.gogolenko@gmail.com (Sergiy Gogolenko)

So far only one contributor.

Note

‼️ ⚠️ This repo excludes parts of the code related to legacy tools APIs and other bits that may violate NDAs of BMW, Harman, and Luxoft.

License

See the LICENSE file for license rights and limitations (GPLv3).

gAutoy Copyright © 2015 SGogolenko

About

Python API that unifies legacy tools for development and analysis of the automotive software

License:GNU General Public License v3.0


Languages

Language:Python 91.7%Language:HTML 2.9%Language:CSS 2.2%Language:Batchfile 1.3%Language:Makefile 0.9%Language:JavaScript 0.9%