Go to file
Inaky Perez-Gonzalez 0fb7abfea5 build: script to filter known issues
This is is a proposal to have a system to filter the output of the
build (compilation, documentation, sanity check and runtime tests)
that eliminates known issues so that whoever sees the output of the
tree can note new issues being added without having to dive on
existing, known ones.

Most common user of this will be the continuous integration system, to
decide what is shown to gerrit as feedback to the user who submitted a
change.

The rationale behind having it in the tree is that if somebody submits
code that introduces a false positive (due to tool limitations) or as
an accepted (normally minor) issue to be fixed later, it can also
submit a "filter" for it without breaking CI.

For example, consider the documentation workaround in include/uart.h
(that will be reverted when this is done):

  diff --git a/include/uart.h b/include/uart.h
  index a30b211..178bd5e 100644
  --- a/include/uart.h
  +++ b/include/uart.h
  @@ -97,7 +97,7 @@ typedef void (*uart_irq_config_func_t)(struct device *port);
    * @param sys_clk_freq System clock frequency in Hz
    */
   struct uart_device_config {
  -       union __unnamed_workaround__ {
  +       union {
                  uint32_t port;
                  uint8_t *base;
                  uint32_t regs;

This introduces a harmless warning in the documentation compilation
process due to a limitation in the tools that will be fixed in future
releases. In the meantime, as they accumulate, it makes more difficult
for people to know if *they* introduced any other warnings (or
errors). The configuration in .known-issues/doc/uart.conf matches that
warning and filters it out (and only that), with enough regex glue to work
around subtle context changes (like line numbers).

The implementation is a Python script that can take the build output
and remove what is being told to ignore by a list of configuration
files, each of which contains a list of single/multiline Python
regular expressions.

Addition of said exceptions is caught by CI: it will trigger a
maintainer being included as a reviewer because the as directed by the
entry for the .known-issues in the MAINTAINERS file.

Change-Id: I7939e0726f2c505481592c3a7f5f40fa3e9c62fd
Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2016-07-01 21:53:44 +00:00
.known-issues build: script to filter known issues 2016-07-01 21:53:44 +00:00
arch arm float: Add Kconfig options 2016-07-01 19:44:15 +00:00
boards usb: Add USB device core layer 2016-06-30 17:51:56 +00:00
doc doc: update troubleshooting for Kconfig help 2016-07-01 17:44:25 +00:00
drivers ext qmsi: Update to QMSI 1.1-Beta 2016-07-01 13:43:02 -07:00
ext ext qmsi: Update to QMSI 1.1-Beta 2016-07-01 13:43:02 -07:00
include Bluetooth: L2CAP: Fix not cleanup properly if ACL is disconnected 2016-07-01 14:17:06 +00:00
kernel tracing: _k_command_stack is explicitly not tracked. 2016-06-16 16:30:46 +00:00
lib nios2: Kconfig: remove some unused config options 2016-06-10 15:22:42 +00:00
misc gdb-server: update call to uart_register_input() 2016-06-22 17:40:01 +00:00
net Bluetooth: L2CAP: Fix not cleanup properly if ACL is disconnected 2016-07-01 14:17:06 +00:00
samples samples/static_lib: Linking with a static library 2016-07-01 00:39:20 +00:00
scripts build: script to filter known issues 2016-07-01 21:53:44 +00:00
tests REVERTME: test_pool disable due to memory corruption bug 2016-07-01 19:44:30 +00:00
usb usb: Move LOW_BYTE and HIGH_BYTE to samples code 2016-06-30 17:51:58 +00:00
.checkpatch.conf checkpatch: decrease max line number to 80 2016-05-31 19:09:14 +00:00
.gitattributes
.gitignore testcases: instruct git to ignore *log and outdir-* 2016-06-14 22:01:34 +00:00
.gitreview Add a .gitreview file 2016-02-20 14:25:01 +00:00
.mailmap mailmap: Add more entries for incomplete author information 2016-06-03 10:52:22 +00:00
Kbuild build: add more dependencies to build process 2016-05-20 18:25:19 +00:00
Kconfig kconfig: Do not put architecture in the title 2016-03-14 16:50:51 -04:00
Kconfig.zephyr usb: Add USB device core layer 2016-06-30 17:51:56 +00:00
LICENSE
MAINTAINERS build: script to filter known issues 2016-07-01 21:53:44 +00:00
Makefile usb: Add USB device core layer 2016-06-30 17:51:56 +00:00
Makefile.inc build: Fix application object files placement when building out of tree 2016-06-30 16:49:40 +00:00
zephyr-env.sh zephyr-env.sh: Add a note to indicate the required version of zsh 2016-03-18 22:01:19 +00:00