code: def find_packages(where='.', exclude=(), invalidate_cache=False):
      
  
      if exclude:
          warnings.warn(
              "Use of the exclude parameter is no longer supported since it does "
              "not work as expected. Use add_exclude_packages instead. Note that "
              "it must be called prior to any other calls from setup helpers.",
              AstropyDeprecationWarning)
  
      # Calling add_exclude_packages after this point will have no effect
      _module_state['excludes_too_late'] = True
  
      if not invalidate_cache and _module_state['package_cache'] is not None:
          return _module_state['package_cache']
  
      packages = _find_packages(
          where=where, exclude=list(_module_state['exclude_packages']))
      _module_state['package_cache'] = packages
  
      return packages
docs: This version of ``find_packages`` caches previous results to speed up
      subsequent calls.  Use ``invalide_cache=True`` to ignore cached results
      from previous ``find_packages`` calls, and repeat the package search.