# Items in this file must have a licence compatible with AL 2.0
PyYAML~=5.4.1                     # WTFPL
elasticsearch-dsl>=7.0.0,<8.0.0   # AL2.0
elasticsearch[async]~=7.13.1      # AL2.0
certifi~=2020.6.20                # MPL 2.0
netaddr~=0.8.0                    # BSD, MIT
formatflowed~=2.0.0               # Python Software Foundation
