(self)
Run the package filtering plugins and remove any packages from the
        packages_to_sync that match any filters.
        - Logging of action will be done within the check_match methods
Run the package filtering plugins and remove any packages from the
        packages_to_sync that match any filters.
        - Logging of action will be done within the check_match methods
Run the package filtering plugins and remove any packages from the packages_to_sync that match any filters . - Logging of action will be done within the check_match methods
def _filter_packages(self) -> None:
        """
        Run the package filtering plugins and remove any packages from the
        packages_to_sync that match any filters.
        - Logging of action will be done within the check_match methods
        """
        global LOG_PLUGINS

        filter_plugins = self.filters.filter_project_plugins()
        if not filter_plugins:
            if LOG_PLUGINS:
                logger.info("No project filters are enabled. Skipping filtering")
                LOG_PLUGINS = False
            return

        # Make a copy of self.packages_to_sync keys
        # as we may delete packages during iteration
        packages = list(self.packages_to_sync.keys())
        for package_name in packages:
            if not all(
                plugin.filter({"info": {"name": package_name}})
                for plugin in filter_plugins
                if plugin
            ):
                if package_name not in self.packages_to_sync:
                    logger.debug(f"{package_name} not found in packages to sync")
                else:
                    del self.packages_to_sync[package_name]
def _filter_packages ( self ) -> None : global LOG_PLUGINS filter_plugins = self . filters . filter_project_plugins ( ) if not filter_plugins : if LOG_PLUGINS : logger . info ( "No project filters are enabled. Skipping filtering" ) LOG_PLUGINS = False return # Make a copy of self.packages_to_sync keys # as we may delete packages during iteration packages = list ( self . packages_to_sync . keys ( ) ) for package_name in packages : if not all ( plugin . filter ( { "info" : { "name" : package_name } } ) for plugin in filter_plugins if plugin ) : if package_name not in self . packages_to_sync : logger . debug ( f"{package_name} not found in packages to sync" ) else : del self . packages_to_sync [ package_name ]