--ignore-dirs not working for multiple directories

Overview Description

When trying to add several folders to --exclude-dirs, the filter stops working and all folders in the project are taken.

Steps to Reproduce

  1. pybabel extract --input-dirs=. --ignore-dirs="venv* alembic*" -o locales/messages.pot
  2. The filter does not work at all

Actual Results

extracting messages from notify.py
extracting messages from alembic\env.py
extracting messages from alembic\versions\673b7ac42339_.py
...
extracting messages from alembic\versions\f5247959f18a_.py
extracting messages from venv\Lib\site-packages_virtualenv.py
...
extracting messages from venv\Lib\site-packages\aiogram_init_.py
extracting messages from venv\Lib\site-packages\aiogram_meta_.py
extracting messages from venv\Lib\site-packages\aiogram\exceptions.py
extracting messages from venv\Lib\site-packages\aiogram\loggers.py
extracting messages from venv\Lib\site-packages\aiogram\client_init_.py
extracting messages from venv\Lib\site-packages\aiogram\client\bot.py
extracting messages from venv\Lib\site-packages\aiogram\client\context_controller.py
extracting messages from venv\Lib\site-packages\aiogram\client\default.py
extracting messages from venv\Lib\site-packages\aiogram\client\telegram.py

Expected Results

extracting messages from notify.py

Additional Information

I decided to look into the problem, so I looked into the code. I found that the problem occurs in the call to the "_make_directory_filter" function. self.ignore_dirs is passed inside the function, which is not separated by spaces. A few strips of code above is the following code:


ignore_dirs = listify_value(self.ignore_dirs)
    if ignore_dirs:
        self.directory_filter = _make_directory_filter(self.ignore_dirs)
    ...

I assume that instead of "self.ignore_dirs" you need to pass "ignore_dirs" to the function. Otherwise, it turns out that the _make_directory_filter function accepts a list of one string, while it is intended to accept a list of strings that were previously separated by spaces.