- Revert "jobs: Fixing environment required to run catkin test targets on pre-indigo catkin" (#600) This reverts commit 050de443da4a65be23b6f62a954efea60db53d09 and partially c5daf4a6d4cb02ab7c22a553a565bddadbaa2a45.
- Doc updates: usage of
-d
on cheat sheet, updated verb .txt files (#604) - The-d|--directory
feature was introduced in #572 - Also randump_cli
to update help literally included on verb documentation pages. This updated more than justdocs/verbs/cli/catkin_list.txt
, but they were in need of an update - Add
--this
option tolocate
verb (addresses #552) (#605) - Merge pull request #608 from mikepurvis/fix-build-type Check build_type with function from catkin_pkg.
- Flake8 fixes for new warnings.
- Switch to get_build_type from catkin_pkg.
- Add failing test for an ament/catkin package.
- Allow extending profiles and merging their contents. (#592)
- Updated regex for extracting '-l' and '-j' args for make (#573)
* Updated regex for extracting '-l' and '-j' args for make
Summary of improvements:
- No longer consuming args that happen to begin
jX
orlX
(whereX
is a sequence if integers. - Fixed bug where an empty 'j' arg would throw aValueError
when trying to convert an empty string (''
) to an int - Both-l/--load-average
and-j/--jobs
can now be empty (which is supported by GNU Make - The-l/--load-average
arg will now accept a float value (e.g.catkin build -l4.0
) which is supported by GNU Make * Added test cases for make args regular expressions Test cases also helped to make regexes slightly more robust. - Do not ignore metapackages (fix #418) (#596) Metapackages must not be ignored by catkin_tools. The fact that other non-metapackages cannot depend on them according to REP-140 does not imply that they do not need to be built and installed at all.
- Catch BlockingIOError in job_server. (#599)
- Drop parentheses from yields and returns (#595)
- Use distutils to handle install path (#569)
- Update release suites. (#564) * Add cosmic, disco, and eoan suites. * Remove old suites. * Bump Python3 version to 3.5 in stdeb. * Drop jessie as a supported target. * Add focal. Co-authored-by: Mike Purvis <[email protected]>
- Also run tests with Python 3.7 and 3.8 (#590) Signed-off-by: Shane Loretz <[email protected]>
- Added option to past list of directories to
list
verb (#572) - Fix permissions of created setup files (#563)
- Handle empty file in
get_metadata
correctly (#568) If themetadata_file_path
exists but themetadata_file
is empty,yaml.safe_load(metadata_file)
will return None. But the caller expects a dictionary which can lead to a crash. (e.g. in https://github.com/catkin/catkin_tools/blob/master/catkin_tools/verbs/catkin_build/cli.py#L371) - add authors/maintainers/licenses to context, which are the default values on package creation (#548)
- argument parser: use None instead of [] for empty jobs args (#575)
- Fix space-suffix option (#560)
- Bash completion for run_tests verb (#562) * bash completion for run_tests and options * also completing packages
- Revert "Set posix=False when parsing environment variables (#578)" (#584) This reverts commit 5b121260a75ffcda863d4588a8e9efc7b4945477.
- Add Travis CI badge to README.md (#585)
- Support globs in build/blacklist/whitelist (#576) * Add glob patterns to build, blacklist and whitelist * Add glob patterns to clean * Add test for glob pattern build
- Set posix=False when parsing environment variables (#578)
- Revert #561 (#582)
Now that the project is only targetting python 3.5+, #561 is no longer required and we can use the most up-to-date version of
sphinx
andsphinxcontrib-spelling
. - Do not load the environment when calling profile to allow to change the profile if the current profile is invalid (#566)
- Set Travis to check Python 3.5 and 3.6. (#580)
- Python 3 only, migrate from trollius to native asyncio (#574)
- fix(controllers): python3 fix for the controllers.py file (#565)
- Force sphinxcontrib-spelling less than 4.3.0 (#561)
- fix(docs) mechanics to linked develspace (#546)
- Contributors: Alexis Paques, Christian Henkel, Fan Jiang, Jan Strohbeck, Jarvis Schultz, Johannes Meyer, Leroy Rügemer, Matt Reynolds, Matthijs van der Burgh, Mike Purvis, Moritz Münst, Ramon Wijnands, Shane Loretz, Steven! Ragnarök, Tim de Jager, Timon Engelke, Yuki Furuta
- Fixed jobserver not working with GNU make >= 4.2 (#480)
- Use yaml.safe_load everywhere. (#542)
- Fixed unhandled config context options warning (#489)
- Added some exception handling for io (#529)
- Added opt --active to profile list (#513)
- Added build type switch to cheat sheet. (#522)
- Fix issue when empty install prefix specified (#533)
- Fix bug when workspace contains special characters (#536) Simply sanitize the workspace name when printing it out
- Add local_setup.* to DEVEL_LINK_BLACKLIST (#539)
- Fix notification typo (#527)
- When using a non-standard shell fix the usage of DEFAULT_SHELL. (#511) Previously, using a non-standard shell meant using that non-standard shell's path (shell_path) whereas the shell_name would be bash. Not only is there this discrepancy, but then the command is actually run with the non-standard shell, which is liable to cause runtime errors (as it does if e.g. SHELL=/usr/bin/fish).
- Sort authors/maintainers for correct email assignment (#492)
- Fixed 'pip install --user catkin_tools' (#488)
- Fixed 'catkin profile set ...' error message (#487)
- Respect VERBOSE environment variable if already set before in verbose mode (#506)
- Re-enable Sphinx spell check. (#461)" (#462)
- Silence E722 flake8 warnings, fix OSX builds. (#509)
- setup.py: Exclude all tests* from install (#499)
- Fixed typo: relateive -> relative (#484)
- Sanitizes log message input (#479)
- Enable arguments with spaces in alias definition (#476)
- Fixed zsh completion to actually use zsh caching for package list (#459) (#475)
- Fixed doc and completion based on current CLI for interleave output (#467) The current CLI for interleave output proposes to use --interleave-output instead of --interleave.
- Add trollius to setup.py install_requires list (#474) closes #445 This patch can be viewed as continuing the work of pull request #282.
- Fix typo in documentation of option env-cache (#466)
- Implementation of pluggable spaces. (#458)
- Disable Sphinx spell check for now. (#461)
- Better message when missing a required command line tool. (#455)
- Specify return code when build interrupted. (#452)
- Drop utf-8 encoding to compute file hashes in symlink stage (#399)
- Fix logic which merges environment PATH variables. (#449)
- Ignore vim swap files. (#450)
- Add tests for isolated builds. (#444)
- Correctly merge envvars from isolated workspaces. (#443)
- Fix hanging on circular run depend. (#440)
- Contributors: Chris Lalancette, Christian Muck, Felix Widmaier, Florian Tschopp, Hervé Audren, Ian Taylor, JD Yamokoski, Jeremie Deray, Johannes Meyer, Jonathan Bohren, Manuel Binna, Mikael Arguedas, Mike Purvis, Robert Haschke, Scott C. Livingston, Simon Deleersnijder, Tim Rakowski, Tommi, William Woodall, Xfel, luisrayas3
- Removed unused dependency on
sphinxcontrib-ansi
(#432) - Fixed a small bug in a log message (#428)
- Changed the way symlinks from the private devel spaces were made to better support Python development (#377)
- Fixed a unicode error which occurred when there was unicode output from the compiler (#368)
- Fixed race condition in build related to reading of install space (fixes #378) (#391)
- stderr output from the compiler is now output to stderr by catkin tools to better support integration with IDE's (#400) (#424)
- Improved handling of situation where SHELL environment variable does not exist (#414) (#421)
- Contributors: Jonathan Bohren, Robert Haschke, @dominiquehunziker, Timothee Cour, Mike Purvis
- Deprecated
catkin --locate-extra-shell-verbs
in favor ofcatkin locate --shell-verbs
(#352) - Fixed regression in red catkin icon on error feature (#346)
- Fixed a bug in the execution of jobs and display of active status (#351)
- Fixed a bug in environment cache checking (#353)
- Fixed a bug in display of build times over one hour (#357)
- Notifications are now coalesced into a single notification (#358)
- Improvements to shell completion and zsh specific completions (#365)
- Various typos fixed.
- Now uses
ioctl()
to determine the terminal width on some platforms (#415) (#416) - Contributors: Jonathan Bohren, Robert Haschke, Claudio Bandera, Kei Okada, Andreas Hertle, David V. Lu!!, Timo Röhling, G.A. vd. Hoorn
- Revert #344 until a better fix can be made.
- Add test for unicode in env (#345) Regression test for issue #338.
- Fixed mishandling of environments with unicode values (#342)
- Fixed bug where a long delay occurred when using a slow status rate (#344)
- Contributors: Jonathan Bohren, Steven Peters
- Major refactor of the job execution engine to use Trollius/Asyncio.
* Changed the way build environments are generated (no more
build.sh
). - Added new "Linked-devel" space option, where the
devel
space for each package is isolated, but are symlinked to a single mergeddevel
space afterwards. - Added support for cleaning and partial cleaning of the workspace with
catkin clean
. - Added "shell verbs" like
catkin cd
andcatkin source
(requires sourcing of shell files). - Added support for (and testing for)
DESTDIR
. - Warnings are now captured and reported to the console even without
--verbose
. - Fixed
setup.py
installation when using--user
. - Fixed an issue where CMake was always rerun even when the settings didn't change.
- Added support for the
.built_by
marker file to detect when being used at the same time ascatkin_make[_isolated]
. - Fixed
catkin create -p
. - Improved error message when a circular dependency in the packages is detected.
- Fixed a problem where
catkin config
could incorrectly clear the make arguments. - Fixed a bug where the UI could get stuck on "calculating new jobs".
- Fixed a bug where the
--isolated-devel
option would crash when building a subset of the workspace. - Fixed the "leaf_sources out of bounds" error.
- Moved log files out of
build/logs
into "log space" in the workspace root. - Added env utility verb for querying environment and running commands in a modified environment.
- Build types (i.e. cmake, catkin) are now supplied through
entry_points
. - Added "environemnt caching" for build jobs to speed up building in some cases.
- Contributors: Alexander Schaefer, Dave Coleman, Dirk Thomas, Esteve Fernandez, Ivor Wanders, Jonathan Bohren, Kartik Mohta, Kei Okada, Kentaro Wada, Robert Haschke, Steven Peters, William Woodall
- Added some new shell based verbs, i.e.
catkin cd
andcatkin source
. #244 #192 - Use a red icon when a build fails in the notifications. #246
- Changed how and where shell completion files are installed.
- Improvements to support
DESTDIR
. #240 - Added a cross tool check to warn users when they are using
catkin_tools
in conjunction with eithercatkin_make
orcatkin_make_isolated
. #214 - Use
/bin/bash
as a fallback when theSHELL
environment variable is not set. #239 #243 - Fix error when
TERM
doesn't match (throughssh
for example). #232
- Added support for architecture specific libraries directories, a la
GNUInstallDirs
. #156 - Fixed a bug in the implementation of the
--this
option of thecatkin build
verb. #162 - Fixed parsing of and added options that append, remove, or clear arugments which are actually lists, e.g.
--cmake-args
. #147 #179 - Moved the ANSI color related options to the
catkin
command and out of thecatkin build
verb. #158 - Fixed a bug where the
--this
command could look outside of the workspace. #169 - Improved the perfomance of listing the result spaces by only loading the environement when asked and caching when needed. #174 #185 #190
- Added support for blacklisting and whitelisting packages. #175
- Some warnings from
catkin_pkg
are now suppressed in some verbs. Requirescatkin_pkg
>= 0.2.8. #163 - Added an internal implementation of the GNU Make server which consolidates jobs amoungst multiple runs of
make
. This has the affect of limiting the total number of jobs make is running even when using a large-p
value. This changes the default behavior of the tool, to get the old behavior simply add--no-jobserver
tocatkin build
. This can be set in your build profile withcatkin config
, or you could use a verb alias to always pass it. In general this new default behavior should prevent systems from being brought to their knees bycatkin build
. #155 - Added the
catkin locate
verb. #165 - Added bash and zsh shell completion. #168
- Added the
--no-color
option to the build verb which forcescatkin build
to not output color. - Fixed a bug in a console message.
- Added options
--continue-on-error
and--summarize
(#138) - Added option for limiting status line updates,
--status-rate
(#141) - Made small fixes to the generated documentation.
- Fixed a bug where
run_depends
were not considered in topological ordering. - Consolidated functions to calculate terminal width.
- Improved failure condition of missing
cmake
andmake
cli tools.