code: def validate(self):
          
  
          changes = self.change_collector.collect_changes()
  
          features = []
          imported_okay = True
          for importer, modname, modpath in changes.new_feature_info:
              try:
                  mod = importer()
                  features.extend(_get_contrib_features(mod))
              except (ImportError, SyntaxError):
                  logger.info(
                      'Failed to import module at {}'
                      .format(modpath))
                  logger.exception('Exception details: ')
                  imported_okay = False
  
          if not imported_okay:
              return False
  
          # if no features were added at all, reject
          if not features:
              logger.info('Failed to collect any new features.')
              return False
  
          return all(
              validate_feature_api(feature, self.X, self.y, subsample=False)
              for feature in features
          )
docs: Collect and validate all new features