summaryrefslogtreecommitdiff
path: root/gr-utils/python/modtool/core/base.py
Commit message (Collapse)AuthorAgeFilesLines
* gr-utils: restructure {mod,block}tool foldersjapm482020-04-101-202/+0
| | | | | Move modtool and blocktool outside of the python folder, as per issue #2462.
* Update license header to SPDX formatdevnulling2020-01-271-13/+1
|
* Disable Python 2kMarcus Müller2020-01-041-16/+1
| | | | | | | | | | - Update SWIG settings - Update CMake - Remove Python2 references Note: This does not touch a lot of Python files, and many Python files will still work with Python 2 after this commit. However, we won't allow that in our CMake, and the support will be gone too.
* Block header parsing tool: GSoC 2019 (#2750)Arpit Gupta2019-12-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add base.py file in cli module to import override Click functions * Create cli and core base module for AST generation of header blocks * Create basic CLI for blocktool with minimal support * Add Sequence Completer to CLI and successful generation of AST * CLI structure complete with parseheader command * Basic core structure complete * Add test script gr_blocktool to run the tool * Add JSON schema and validation for parsed json output file * Change properties and methods key to list in JSON schema * Create an independent api from blocktool * Bug fix for abslute path of the header files * Create basic parser core api * Parse the block header documentation * Expose the core api, minor bug fixes * Create the code pylint compatible * Modify cli to accept file_path as an argument, parse default values of make function arguments * Fix: Namespace parsing of block header file * Parse the io_signature from the implementation file of the block header * Create json file generator * Add key-value io_signature and docstring in json schema, change sample generated json output * Fix: squash an I/O parsing bug * Change directory structure for blocktool tests * Add Blocktool unittest * Removed empty strings, make the code pylint compatible * Use str.format() to get output * Implement YAML generator * Add a new CLI argument to parse a complete header directory * Add Logger to log errors without raising exceptions * Create output schema file in blocktool core * Change directory structure of blocktool and cli commands * write unittests for Blocktool Excceptions * Add sample yaml files * Simplify blocktool cli structure * Refactor blocktool exception handling * Split long blocktool unit-tests * Parse message ports from the implementation file * Add tests for parsed message port id, update sample json files * Add blocktool subdirectory, files in CMakeLists.txt * Remove test files to run Blocktool * Fix: locates implementation file by traversing the module * Integrate blocktool with modtool as an external plugin * Create proper formatting of io_signature for yaml files * Extend modtool makeyaml command to extend support for blocktool * Remove external plugin for modtool support, add blocktool independent script * Minor formatiing, change function name due to conflict with modtool function * Add support to read and add blocktool special comments in header file * Fix: Key Errors, Modify Documentation Reader * Raise warning in case of conflict in the parsed information and blocktool comments * Remove all the blocktool boilerplate cli code and provide minimal support * Remove gr_blocktool script and use blocktool as a python module * Major refactoring of the modtool cli structure to support the blocktool API * Check for PyGCCXML dependency during build * Add README.md for gr-blocktool and remove modtool cli warnings
* modtool: Supply SimpleNamespace for legacy PythonMarcus Müller2019-04-211-1/+16
|
* modtool core: Don't import CLI functionality unless CLI is usedMarcus Müller2019-04-211-1/+1
| | | | | | | This allows usage of scripted modtool on systems without click installed. Only with this, headless unit testing can be done without installing click.
* modtool: gr-modtool overhaul GSoC 2018Swapnil Negi2019-01-041-0/+214
This commit contains all the changes done during the 2018 GSoC "gr-modtool overhaul". Changes include: - Rewrite of gr-modtool based on Python Click - Split of gr-modtool in cli and core - Adherence to new GNU Radio 3.8 API for OOTs - Pylint improvements - Py3k and Py2k compatibility This feature is merged in a squash-merge due to big refactoring on the head and base branch and the impossibility to unclutter both.