Juan Carrano bea30c3f89 sys/ubjson: remove module.
The ubjson module has a number of quality defects and is unsafe.
Considering CBOR is popular, standarized and supported in RIOT and that
the ubjson implementation is a home-grown one whose API will likely be
unfamiliar to new users, I propose to delete it.

This removal, of course, dows not have to be NOW. We can deprecate it for
one or two releases before.

What's wrong with this module?

- Unsafe: the parsing is done recursively. This is embedded in the API, so it
  is not possible to fix it without changing the API. A document with too much
  nesting can cause a stack overflow.
- Does not validate writing: it is possible to produce invalid output. From
  the docs:
  > The library won't complain if you write multiple values that are not
  > inside an array or object. The result will just not be properly serialized.
- Poorly tested. As shown by #11702, #11703 the tests were not even detecting
  that a False was stored as True.
- In line with the previous remark, see
  68dc5b0d6e/tests/unittests/tests-ubjson/tests-ubjson.c (L66-L77)
  Why is the following code in the unit tests??
  ```c
    irq_disable();
    sched_set_status(data->main_thread, STATUS_PENDING);
  ```
- #2175 is still unfixed after 3.5 years.
- Code quality. The code has multiline macros that assign variables and
  return. See c332514875/sys/ubjson/ubjson-write.c (L34-L41)

Can we mark it as deprecated this release and sweep it in the following one?
2019-12-01 23:44:39 +01:00
..
2019-11-23 22:39:37 +01:00
2019-11-23 22:39:37 +01:00
2018-10-18 13:37:21 +02:00
2019-11-23 22:39:37 +01:00
2019-11-23 22:39:37 +01:00
2018-10-03 11:54:17 +02:00
2019-11-23 22:39:37 +01:00
2019-11-28 19:15:34 +01:00
2019-11-23 22:39:37 +01:00
2019-11-23 22:39:37 +01:00
2019-11-23 22:39:37 +01:00
2019-11-20 18:53:11 +01:00
2019-11-23 22:39:07 +01:00
2018-05-28 15:43:41 -04:00
2019-10-04 11:35:52 +02:00
2017-09-01 09:35:48 +02:00
2019-11-23 22:39:37 +01:00
2019-08-06 19:43:54 +02:00
2017-06-16 16:50:54 +02:00
2017-06-16 16:50:54 +02:00
2019-08-20 14:32:49 +02:00
2019-11-23 22:39:37 +01:00
2018-08-29 15:57:24 +02:00
2019-11-23 22:39:07 +01:00
2019-11-23 22:39:07 +01:00
2019-11-23 22:39:37 +01:00
2019-11-23 22:39:37 +01:00
2018-08-24 18:14:03 +02:00
2018-06-11 19:12:02 +02:00
2018-08-22 10:54:25 +02:00
2017-12-12 07:51:39 +01:00
2019-11-23 22:39:37 +01:00
2019-11-23 22:39:37 +01:00
2019-11-23 22:39:37 +01:00
2019-11-23 22:39:07 +01:00