howler-api 3.0.0.dev366__tar.gz → 3.0.0.dev369__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of howler-api might be problematic. Click here for more details.
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/PKG-INFO +1 -1
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/collection.py +1 -1
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/external/reindex_data.py +11 -15
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/base.py +21 -3
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/pyproject.toml +1 -1
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/README.md +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/add_label.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/add_to_bundle.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/change_field.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/demote.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/example_plugin.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/prioritization.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/promote.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/remove_from_bundle.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/remove_label.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/actions/transition.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/base.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/socket.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/action.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/analytic.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/auth.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/clue.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/configs.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/dossier.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/help.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/hit.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/notebook.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/overview.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/search.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/template.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/tool.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/user.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/utils/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/utils/etag.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/api/v1/view.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/app.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/README.md +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/classification.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/classification.yml +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/exceptions.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/loader.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/logging/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/logging/audit.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/logging/format.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/net.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/net_static.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/random_user.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/common/swagger.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/config.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/cronjobs/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/cronjobs/retention.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/cronjobs/rules.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/cronjobs/view_cleanup.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/README.md +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/bulk.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/constants.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/exceptions.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/howler_store.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/migrations/fix_process.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/operations.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/schemas.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/store.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/support/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/support/build.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/support/schemas.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/types.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/error.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/external/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/external/generate_mitre.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/external/generate_sigma_rules.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/external/generate_tlds.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/external/wipe_databases.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/gunicorn_config.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/healthz.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/helper/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/helper/azure.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/helper/discover.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/helper/hit.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/helper/oauth.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/helper/search.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/helper/workflow.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/helper/ws.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/README.md +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/charter.txt +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/helper.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/howler_enum.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/action.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/analytic.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/assemblyline.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/aws.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/azure.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/cbs.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/config.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/dossier.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/agent.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/autonomous_system.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/client.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/cloud.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/code_signature.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/container.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/dns.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/egress.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/elf.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/email.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/error.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/event.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/faas.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/file.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/geo.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/group.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/hash.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/host.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/http.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/ingress.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/interface.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/network.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/observer.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/organization.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/os.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/pe.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/process.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/registry.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/related.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/rule.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/server.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/threat.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/tls.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/url.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/user.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/user_agent.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/vulnerability.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/gcp.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/hit.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/howler_data.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/lead.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/localized_label.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/overview.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/pivot.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/template.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/user.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/view.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/random_data.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/randomizer.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/patched.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/plugins/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/plugins/config.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/README.md +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/counters.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/events.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/hash.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/lock.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/queues/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/queues/comms.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/queues/multi.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/queues/named.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/queues/priority.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/set.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/user_quota_tracker.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/security/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/security/socket.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/security/utils.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/action_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/analytic_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/auth_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/config_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/dossier_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/event_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/hit_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/jwt_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/lucene_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/notebook_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/overview_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/template_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/services/user_service.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/__init__.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/annotations.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/chunk.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/dict_utils.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/isotime.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/list_utils.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/lucene.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/path.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/socket_utils.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/str_utils.py +0 -0
- {howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/utils/uid.py +0 -0
|
@@ -430,7 +430,7 @@ class ESCollection(Generic[ModelType]):
|
|
|
430
430
|
wait_for_completion=True,
|
|
431
431
|
timeout="10s",
|
|
432
432
|
)
|
|
433
|
-
except elasticsearch.exceptions.TransportError as e:
|
|
433
|
+
except (elasticsearch.exceptions.TransportError, elasticsearch.exceptions.ApiError) as e:
|
|
434
434
|
err_code, msg, _ = e.args
|
|
435
435
|
if (err_code == 500 or err_code == "500") and msg in [
|
|
436
436
|
"timeout_exception",
|
|
@@ -9,10 +9,6 @@ DELAY = 5
|
|
|
9
9
|
if __name__ == "__main__":
|
|
10
10
|
print("This script will allow you to reindex all indexes in elasticsearch.")
|
|
11
11
|
print("For obvious reasons, be EXTREMELY CAREFUL running this code.")
|
|
12
|
-
|
|
13
|
-
for i in range(DELAY):
|
|
14
|
-
print(f"Continuing in {str(DELAY - i)}...", end="\r")
|
|
15
|
-
time.sleep(1)
|
|
16
12
|
print()
|
|
17
13
|
answer = input("Are you sure you want to reindex data for an index in this cluster? [yes/NO]\n")
|
|
18
14
|
|
|
@@ -28,15 +24,15 @@ if __name__ == "__main__":
|
|
|
28
24
|
|
|
29
25
|
ds = loader.datastore(archive_access=False)
|
|
30
26
|
|
|
31
|
-
indexes: dict[str, tuple[
|
|
32
|
-
"analytic": (ds.analytic
|
|
33
|
-
"hit": (ds.hit
|
|
34
|
-
"view": (ds.view
|
|
35
|
-
"template": (ds.template
|
|
36
|
-
"overview": (ds.overview
|
|
37
|
-
"action": (ds.action
|
|
38
|
-
"user": (ds.user
|
|
39
|
-
"dossier": (ds.dossier
|
|
27
|
+
indexes: dict[str, tuple[ESCollection, Callable]] = {
|
|
28
|
+
"analytic": (ds.analytic, ds.analytic.reindex),
|
|
29
|
+
"hit": (ds.hit, ds.hit.reindex),
|
|
30
|
+
"view": (ds.view, ds.view.reindex),
|
|
31
|
+
"template": (ds.template, ds.template.reindex),
|
|
32
|
+
"overview": (ds.overview, ds.overview.reindex),
|
|
33
|
+
"action": (ds.action, ds.action.reindex),
|
|
34
|
+
"user": (ds.user, ds.user.reindex),
|
|
35
|
+
"dossier": (ds.dossier, ds.dossier.reindex),
|
|
40
36
|
}
|
|
41
37
|
|
|
42
38
|
print("Which index will you reindex?")
|
|
@@ -47,10 +43,10 @@ if __name__ == "__main__":
|
|
|
47
43
|
sys.exit(1)
|
|
48
44
|
|
|
49
45
|
print("Index schema:")
|
|
50
|
-
print(json.dumps(
|
|
46
|
+
print(json.dumps(indexes[index_answer][0]._get_index_mappings(), indent=2))
|
|
51
47
|
|
|
52
48
|
print("\nYou will be reindexing the following indexes:")
|
|
53
|
-
print("\n".join(indexes[index_answer][0]))
|
|
49
|
+
print("\n".join(indexes[index_answer][0].index_list_full))
|
|
54
50
|
|
|
55
51
|
answer = input(("\nAre you sure you want to reindex these indexes? [yes/NO]\n"))
|
|
56
52
|
print()
|
|
@@ -1093,8 +1093,8 @@ class Model:
|
|
|
1093
1093
|
return out
|
|
1094
1094
|
|
|
1095
1095
|
@classmethod
|
|
1096
|
-
def add_namespace(cls, namespace: str, field: _Field):
|
|
1097
|
-
field
|
|
1096
|
+
def add_namespace(cls, namespace: str, field: _Field, index=None, store=None, description=None):
|
|
1097
|
+
recursive_set_name(field, namespace)
|
|
1098
1098
|
|
|
1099
1099
|
if hasattr(cls, "_odm_field_cache_skip"):
|
|
1100
1100
|
cls._odm_field_cache_skip[namespace.rstrip("_")] = field
|
|
@@ -1102,7 +1102,25 @@ class Model:
|
|
|
1102
1102
|
if hasattr(cls, "_odm_field_cache"):
|
|
1103
1103
|
cls._odm_field_cache[namespace.rstrip("_")] = field
|
|
1104
1104
|
|
|
1105
|
-
|
|
1105
|
+
setattr(cls, namespace, field)
|
|
1106
|
+
|
|
1107
|
+
field._Model__description = description
|
|
1108
|
+
for name, field_data in field.fields().items():
|
|
1109
|
+
if not FIELD_SANITIZER.match(name) or name in BANNED_FIELDS:
|
|
1110
|
+
raise HowlerValueError(f"Illegal variable name: {name}")
|
|
1111
|
+
|
|
1112
|
+
recursive_set_name(field_data, name)
|
|
1113
|
+
field_data.apply_defaults(index=index, store=store)
|
|
1114
|
+
|
|
1115
|
+
@classmethod
|
|
1116
|
+
def remove_namespace(cls, namespace: str):
|
|
1117
|
+
if hasattr(cls, "_odm_field_cache_skip"):
|
|
1118
|
+
del cls._odm_field_cache_skip[namespace.rstrip("_")]
|
|
1119
|
+
|
|
1120
|
+
if hasattr(cls, "_odm_field_cache"):
|
|
1121
|
+
del cls._odm_field_cache[namespace.rstrip("_")]
|
|
1122
|
+
|
|
1123
|
+
delattr(cls, namespace)
|
|
1106
1124
|
|
|
1107
1125
|
@staticmethod
|
|
1108
1126
|
def _recurse_fields(name, field, show_compound, skip_mappings, multivalued=False):
|
|
@@ -148,7 +148,7 @@ suppress-none-returning = true
|
|
|
148
148
|
[tool.poetry]
|
|
149
149
|
package-mode = true
|
|
150
150
|
name = "howler-api"
|
|
151
|
-
version = "3.0.0.
|
|
151
|
+
version = "3.0.0.dev369"
|
|
152
152
|
description = "Howler - API server"
|
|
153
153
|
authors = [
|
|
154
154
|
"Canadian Centre for Cyber Security <howler@cyber.gc.ca>",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/datastore/migrations/fix_process.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/odm/models/ecs/autonomous_system.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/queues/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/queues/priority.py
RENAMED
|
File without changes
|
|
File without changes
|
{howler_api-3.0.0.dev366 → howler_api-3.0.0.dev369}/howler/remote/datatypes/user_quota_tracker.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|