.oH":HH$' "' ' -*R&o,
,MMM' "HLbd< ?&H\
.:MH ."\ ` MM MM&b
. "*H - &MMMMMMMMMH:
. dboo MMMMMMMMMMMM.
. dMMMMMMb *MMMMMMMMMP.
. MMMMMMMP *MMMMMP .
`#MMMMM MM6P ,
' `MMMP" HM*`,
' :MM .- ,
'. `#?.. . ..'
-. . .-
For this release only we had 58 different contributors from all around the globe contributing way
over 200 commits over 2.5 months to coala.
The name of this release is GlobalBear to honour our
GlobalBear class and
leave a statement on how global the community grows: gone are the days when we
visit conferences and we have to explain the project to all the people. More
and more people know the project before we meet them and this is great! This is
a huge step in our conquest to take over the world!
GlobalBear class serves our users by providing project wide "global"
analysis. This release it will probably make its last appearance because it
will be deprecated in favour of a more sophisticated concept in the near future.
We have also worked a lot towards building our dream of letting users declare
code analysis configuration completely language independently: to take a
sneak peek at what we want to do, check this out. You will see that
the first aspects are already in our source code and that bears can already
associate results with them so future versions of coala will be able to tell
the user a plethora of facts around the type of issue pointed out.
For users, we have added a lot of usability improvements as well as for example
the ability to merge patches within one line: if you previously had to run
coala multiple times because of patch conflicts, this is likely not the case
As a Bear writer you now have access to our
Language facilities: they
will give you facts about programming languages that you analyse so you can
build truly language independent bears. Also, you now can use
http://api.coala.io/ to get more information about our classes and functions
you work with.
Command Line Interface Changes:
coala-json have been deprecated. You can now use
coala --non-interactive and
coala --json respectively.
- Multiple patches within one line, even from different bears, can be
automatically merged by coala.
coala returns the exitcode 2 when not passing any
--files as well as when no section is enabled and nothing was done.
- coala can now automatically add
Ignore ...Bear comments to your source
code. Simply use the
Add ignore comment action when offered.
- Users can press enter to dismiss a result by default.
- Result action descriptions have been compressed to make them easier readable.
- The section name is now displayed when asking the user for missing settings.
coala --non-interactive shows results and patches by default now.
coala-dbus has been removed as it wasn't used by anyone.
--no-color argument allows to run coala with uncoloured results.
- Log messages are printed on stderr now.
coala --json doesn't output log messages in JSON anymore. This is a
technical issue. Log messages can easily be fetched from the stderr stream.
- Some performance improvements could be achieved.
- A lot more strings, like
no way are allowed for boolean
Bear API Changes:
LanguageDefinition has been deprecated. Use
coalib.bearlib.languages.Language instead. Consult
for usage hints.
- The deprecated
Lint class has now been removed.
CondaRequirement has been removed.
multiple constructor for
PackageRequirement classes has been
deprecate_bear decorator is now available so bears can be renamed
Diff object has now dedicated functions to
- A glob cornercase has been fixed.
- An issue where empty patches have been shown to the user has been fixed.
- Wrong handling of periods when changing casing has been fixed.
- A caching bug where results have not been shown to the user has been fixed.
- API documentation is now available at http://api.coala.io/
- Deprecated parameters are stored in the function metadata.
- Python builtin logging is now used.
- Numerous changes to get started on https://coala.io/cep5 have been
implemented. The first aspects are already defined in
coalib.bearlib.aspects and bears can already append aspects to results.
coalang files now have an alias dictionary.