Giter VIP home page Giter VIP logo

colcon-alias's Introduction

colcon-common-extensions

A meta package aggregating colcon-core as well as a set of common extensions.

colcon-alias's People

Contributors

cottsay avatar mosfet80 avatar nuclearsandwich avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

cottsay

colcon-alias's Issues

Logging subdirectory uses alias for each invoked verb

Steps:

  1. $ colcon alias bat --command build --command test
  2. $ colcon bat --packages-select foobar

Expected:
Subdirectories and symlinks exist for both build and test verbs, (i.e. log/build_*, log/latest_build, log/test_*, log/latest_test)

Actual:
A single subdirectory is created for the alias (i.e. log/bat_*, log/latest_bat)
The directory is re-used for each command, so only the last command's output is present.

Overriding existing command line arguments breaks colcon

I just played around with colcon-alias and tried to override an existing command:
colcon alias --command build --packages-up-to -- build
The command passes, but every future call to colcon fails with the following traceback:

Traceback (most recent call last):
  File "/home/timon/.local/bin/colcon", line 8, in <module>
    sys.exit(main())
  File "/home/timon/.local/lib/python3.10/site-packages/colcon_core/command.py", line 118, in main
    return _main(command_name=command_name, argv=argv)
  File "/home/timon/.local/lib/python3.10/site-packages/colcon_core/command.py", line 154, in _main
    known_args, _ = parser.parse_known_args(args=argv)
  File "/home/timon/.local/lib/python3.10/site-packages/colcon_alias/argument_parser/alias.py", line 43, in parse_known_args
    self._add_aliases()
  File "/home/timon/.local/lib/python3.10/site-packages/colcon_alias/argument_parser/alias.py", line 68, in _add_aliases
    alias_parser = self._subparser.add_parser(
  File "/home/timon/.local/lib/python3.10/site-packages/colcon_core/argument_parser/__init__.py", line 206, in add_parser
    self._parser.add_parser(*args, **kwargs))
  File "/home/timon/.local/lib/python3.10/site-packages/colcon_defaults/argument_parser/defaults.py", line 66, in add_parser
    assert args[0] not in self._parsers
AssertionError

The alias cannot be removed with colcon alias build and has to be manually removed from the colcon_alias.yaml file.

Adding mixin to the alias?

I'm trying to register an alias to run build with a mixin e.g.

colcon build --mixin release

however running

$ colcon alias build_release --command build --mixin release

produces

colcon: error: Mixin 'release' is not available for 'alias'

I can get around the error by putting the mixin in quotes

$ colcon alias build_release --command build "--mixin release"
Registered command list for alias 'build_release':
  build --mixin release

however this produced an error when calling the alias:

$ colcon build_release
colcon: error: unrecognized arguments: --mixin release

Any way around this or is this expected behavior?

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.