A multi-language code generator for the Opera Scope Protocol. Code is generated from Google Protocol Buffer definitions.
Project description
Introduction
Hob is a multi-language code generator for the Opera Scope Protocol. It generates code from Google Protocol Buffer files (.proto), which describes the services, messages, commands and events.
The Scope Protocol is an RPC system used in the Opera web browser. This allows external and embedded clients to debug, inspect or perform other operations on any running Opera instance.
Hob consists of the following components:
The hob command line tool which is used to generate code and other output formats.
A library for working with Google Protocol Buffer definitions. It can read .proto files and has classes and functions for working with protobuf elements.
Support for third party extensions which can add additional commands.
Dependencies
- argparse:
- mako:
If you install hob using easy_install or pip these dependencies will be installed automatically.
Usage
usage: hob [-h] [-v] [--verbose] [--quiet] [-c CONFIG_FILE] [-t TARGET] [--project PROJECT] [-w [WARNING [WARNING ...]]] [--pdb] [--profile FILE] command ... commands: xml Generate XML structures of protocol definitions proto Generate Protocol Buffer definitions js Create service interfaces for JavaScript. If no files are specified, the following files will be added in the 'service' folder: console_logger.py, http_logger.py, scope.py, window_manager.py, ecmascript_debugger.py. Files can also be specified with the service name, e.g. just ecmascript-debugger. scope.py and window_manager.py will always be added. extensions Lists all enabled extensions rst-doc Create reST documentation of selected services. If no files are specified all services are added. validate Validates services, commands, events, messages and fields according to the style guide config Displays the current config. This is the result of all loaded config and project files as well as overrides from the command-line. options: -h, --help show this help message and exit -v, --verbose increase verbosity --version show program's version number and exit --quiet be silent -c CONFIG_FILE, --config-file CONFIG_FILE use specific config file instead of system-wide/local config files -t TARGET, --target TARGET specify target configuration to use (overrides config file). --project PROJECT specifies project name or file to use (hob.project) -w [WARNING [WARNING ...]], --warning [WARNING [WARNING ...]] enable a warning flag, pick from all, field-id-gap, field-id-sequence --pdb start python debugger on exceptions --profile FILE profile a command using the python profiler, writes result to specified file
Changelog
See http://bitbucket.org/scope/hob/wiki/Changelog or the CHANGELOG file in the top distribution directory.
Contact
Hob is maintained by the Opera Dragonfly team. The authors are:
Jan Borsodi <jborsodi@opera.com>
Christian Krebs <chrisk@opera.com>
Additional help from:
Johannes Hoff <jhoff@opera.com>
Rune Halvorsen <runeh@opera.com>
Anders Hartvoll Ruud <andersr@opera.com>
License
See the LICENSE file in the top distribution directory.
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
File details
Details for the file hob-0.3.3.zip
.
File metadata
- Download URL: hob-0.3.3.zip
- Upload date:
- Size: 107.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 211c84b8affdd697dcad0f8a14b7b934eedfa0338d87cc353a06a9dfd215fa44 |
|
MD5 | f114e7d32a7dfa1999e01510a918006b |
|
BLAKE2b-256 | 549a952539ed6a3dfaa0d42cadebdba9902ed901c32cf260052317f96c43c627 |