function warning(message, onlyShowMessageOnce = false) {
  /* eslint-disable no-undef, no-process-env */
  if (global.process && HIDDEN_PROCESSES[process.env.NODE_ENV]) {
    return;
  }
  /* eslint-enable no-undef, no-process-env */
  if (!onlyShowMessageOnce || !USED_MESSAGES[message]) {
    /* eslint-disable no-console */
    console.warn(message);
    /* eslint-enable no-console */
    USED_MESSAGES[message] = true;
  }
}
Warn the user about something
@param {String} message - the message to be shown
@param {Boolean} onlyShowMessageOnce - whether or not we allow the
 - message to be show multiple times