synapse 2.223.0__tar.gz → 2.224.0__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 synapse might be problematic. Click here for more details.
- {synapse-2.223.0/synapse.egg-info → synapse-2.224.0}/PKG-INFO +1 -1
- {synapse-2.223.0 → synapse-2.224.0}/pyproject.toml +1 -1
- {synapse-2.223.0 → synapse-2.224.0}/synapse/common.py +2 -2
- {synapse-2.223.0 → synapse-2.224.0}/synapse/cortex.py +52 -3
- {synapse-2.223.0 → synapse-2.224.0}/synapse/datamodel.py +1 -1
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/layer.py +6 -6
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/schemas.py +2 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/storm.py +35 -1
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/imap.py +12 -4
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/task.py +0 -1
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormtypes.py +19 -1
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/version.py +2 -2
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/inet.py +25 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/proj.py +3 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/risk.py +6 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/syn.py +8 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_common.py +4 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_cortex.py +51 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_storm.py +97 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_imap.py +14 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormtypes.py +12 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_inet.py +23 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_proj.py +3 -1
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_risk.py +10 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_syn.py +54 -2
- {synapse-2.223.0 → synapse-2.224.0/synapse.egg-info}/PKG-INFO +1 -1
- {synapse-2.223.0 → synapse-2.224.0}/LICENSE +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/README.rst +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/setup.cfg +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/axon.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/cells.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/cmds/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/cmds/boss.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/cmds/cortex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/cmds/hive.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/cryotank.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/daemon.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/attack-flow/LICENSE.txt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/attack-flow/README.md +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/attack-flow/attack-flow-schema-2.0.0.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/certs/cas/The Vertex Project Intermediate CA 00.crt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/certs/cas/The Vertex Project ROOT CA.crt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/certs/crls/The Vertex Project Intermediate CA 00.crl +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/certs/crls/The Vertex Project ROOT CA.crl +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/iana.tlds.mpk +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/iana.uris.mpk +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/README.md +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/LICENSE.txt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/binary.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/bundle.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/core.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/cyber-observable-core.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/dictionary.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension-definition.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/external-reference.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/granular-marking.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hashes-type.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hex.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/identifier.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/kill-chain-phase.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/language-content.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/marking-definition.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/properties.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/timestamp.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/url-regex.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/artifact.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/autonomous-system.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/directory.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/domain-name.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-addr.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-message.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/file.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv4-addr.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv6-addr.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mac-addr.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mutex.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/network-traffic.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/process.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/software.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/url.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/user-account.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/windows-registry-key.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/x509-certificate.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/attack-pattern.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/campaign.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/course-of-action.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/grouping.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/identity.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/incident.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/indicator.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/infrastructure.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/intrusion-set.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/location.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware-analysis.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/note.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/observed-data.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/opinion.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/report.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/threat-actor.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/tool.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/vulnerability.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/relationship.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/sighting.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/lark/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/lark/imap.lark +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/data/lark/storm.lark +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/exc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/glob.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/agenda.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/aha.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/ast.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/auth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/autodoc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/base.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/boss.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/cache.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/cell.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/certdir.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/chop.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/cli.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/cmd.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/cmdr.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/config.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/const.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/coro.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/crypto/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/crypto/coin.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/crypto/ecc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/crypto/passwd.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/crypto/rsa.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/crypto/tinfoil.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/datfile.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/drive.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/dyndeps.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/encoding.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/gis.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/grammar.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/hashitem.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/hashset.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/health.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/hive.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/httpapi.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/ingest.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/interval.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/json.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/jsonstor.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/link.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/lmdbslab.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/modelrev.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/module.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/modules.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/msgpack.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/multislabseqn.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/nexus.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/node.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/oauth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/output.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/parser.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/platforms/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/platforms/common.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/platforms/darwin.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/platforms/freebsd.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/platforms/linux.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/platforms/windows.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/queue.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/ratelimit.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/reflect.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/rstorm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/scope.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/scrape.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/share.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/slaboffs.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/slabseqn.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/snap.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/spooled.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/storm_format.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormctrl.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormhttp.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/aha.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/auth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/backup.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/basex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/cache.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/cell.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/compression.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/cortex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/easyperm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/env.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/ethereum.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/gen.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/gis.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/graph.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/hashes.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/hex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/index.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/infosec.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/ipv6.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/iters.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/json.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/log.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/macro.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/math.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/mime.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/model.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/modelext.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/notifications.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/oauth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/pack.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/pkg.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/project.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/random.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/scrape.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/smtp.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/spooled.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/stats.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/stix.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/storm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/tabular.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/utils.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/vault.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/version.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/xml.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormlib/yaml.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormsvc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/stormwhois.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/structlog.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/task.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/thishost.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/thisplat.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/threads.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/time.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/trigger.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/types.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/urlhelp.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lib/view.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lookup/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lookup/cvss.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lookup/iana.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lookup/iso3166.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lookup/macho.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lookup/pe.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lookup/phonenum.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/lookup/timezones.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/mindmeld.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/auth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/base.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/belief.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/biz.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/crypto.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/dns.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/doc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/economic.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/entity.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/files.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/geopol.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/geospace.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/gov/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/gov/cn.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/gov/intl.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/gov/us.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/infotech.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/language.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/material.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/math.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/media.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/orgs.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/person.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/planning.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/science.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/telco.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/models/transport.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/servers/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/servers/aha.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/servers/axon.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/servers/cell.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/servers/cortex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/servers/cryotank.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/servers/jsonstor.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/servers/stemcell.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/telepath.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/TestUtilsGetrefs.test_basics.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/aha/certs/cas/synapse.crt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/aha/certs/cas/synapse.key +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.crt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.key +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/aha/certs/users/root@synapse.crt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/aha/certs/users/root@synapse.key +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/attack_flow/CISA AA22-138B VMWare Workspace (Alt).json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/attack_flow/CISA_Iranian_APT.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/certdir/cas/ca.crt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/certdir/cas/ca.key +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/certdir/hosts/localhost.crt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/certdir/hosts/localhost.key +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/certdir/users/root.crt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/certdir/users/root.key +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/certdir/users/user.crt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/certdir/users/user.key +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/changelog/model_2.176.0_16ee721a6b7221344eaf946c3ab4602dda546b1a.yaml.gz +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/changelog/model_2.176.0_2a25c58bbd344716cd7cbc3f4304d8925b0f4ef2.yaml.gz +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/cpedata.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/rstorm/httpresp1.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/rstorm/httpresp2.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/rstorm/httpresp3.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/rstorm/httprespmulti.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/rstorm/testsvc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stix_export/basic.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stix_export/custom0.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stix_export/risk0.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stix_import/apt1.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stix_import/oasis-example-00.json +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormcov/argvquery.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormcov/dupesubs.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormcov/lookup.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormcov/pivot.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormcov/pragma-nocov.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormcov/spin.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormcov/stormctrl.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormmod/common +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/badapidef.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/badcmdname.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/badendpoints.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/badinits.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/badjsonpkg.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/docs/foobar.md +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/docs/foobar.svg +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/dotstorm/dotstorm.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/dotstorm/storm/commands/dotstorm.bar.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/dotstorm/storm/modules/dotstorm.foo.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/nocontent.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/nomime.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/nopath.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/nosuchfile.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/notitle.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/optic/index.html +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/storm/commands/invalidCMD +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/storm/commands/testpkg.baz +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/storm/commands/testpkgcmd +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/storm/modules/apimod +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/storm/modules/testmod +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/testpkg.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/workflows/testpkg-bam.newp +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/workflows/testpkg-baz.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/stormpkg/workflows/testpkg-foo.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/test.dat +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/testcore/cell.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/testpkg_build_docs/docs/bar.rst +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/testpkg_build_docs/docs/foo.rst +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/testpkg_build_docs/storm/commands/testcmd.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/testpkg_build_docs/storm/modules/apimod.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/testpkg_build_docs/storm/modules/testmod.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/testpkg_build_docs/storm/testcmd.storm +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/files/testpkg_build_docs/testpkg.yaml +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/nopmod.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_axon.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_cmds_boss.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_cmds_cortex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_cmds_hive.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_cryotank.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_daemon.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_data.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_datamodel.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_exc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_glob.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_init.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_agenda.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_aha.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_ast.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_auth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_autodoc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_base.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_boss.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_cache.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_cell.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_certdir.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_chop.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_cli.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_config.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_const.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_coro.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_crypto_coin.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_crypto_ecc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_crypto_passwd.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_crypto_tinfoil.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_datfile.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_dyndeps.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_encoding.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_gis.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_grammar.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_hashitem.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_hashset.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_health.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_hive.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_httpapi.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_interval.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_json.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_jsonstor.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_layer.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_link.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_lmdbslab.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_modelrev.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_module.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_msgpack.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_multislabseqn.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_nexus.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_node.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_output.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_platforms_linux.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_queue.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_ratelimit.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_reflect.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_rstorm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_scope.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_scrape.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_slaboffs.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_slabseqn.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_snap.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_spooled.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_storm_format.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormctrl.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormhttp.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_aha.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_auth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_backup.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_basex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_cache.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_cell.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_compression.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_cortex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_easyperm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_env.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_ethereum.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_gen.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_gis.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_hashes.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_hex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_index.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_infosec.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_ipv6.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_iters.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_json.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_log.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_macro.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_mime.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_model.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_modelext.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_oauth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_pack.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_pkg.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_random.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_scrape.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_smtp.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_spooled.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_stats.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_stix.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_storm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_tabular.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_task.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_utils.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_vault.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_xml.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormlib_yaml.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormsvc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_stormwhois.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_structlog.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_task.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_thishost.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_time.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_trigger.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_types.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_urlhelp.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_version.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lib_view.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lookup_iso3166.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_lookup_phonenum.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_mindmeld.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_auth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_base.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_belief.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_biz.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_crypto.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_dns.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_doc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_economic.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_entity.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_files.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_geopol.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_geospace.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_gov_cn.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_gov_intl.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_gov_us.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_infotech.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_language.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_material.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_math.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_media.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_orgs.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_person.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_planning.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_science.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_telco.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_model_transport.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_servers_axon.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_servers_cortex.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_servers_cryotank.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_servers_stemcell.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_servers_univ.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_telepath.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_aha.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_apikey.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_autodoc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_axon.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_axon2axon.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_backup.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_cellauth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_changelog.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_cortex_layer.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_cryo_cat.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_cryo_list.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_csvtool.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_demote.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_docker_validate.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_easycert.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_feed.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_genpkg.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_guid.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_healthcheck.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_hiveload.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_hivesave.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_json2mpk.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_livebackup.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_modrole.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_moduser.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_pkgs_gendocs.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_promote.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_pullfile.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_pushfile.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_reload.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_rstorm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_shutdown.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_snapshot.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_tools_storm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_utils.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_utils_getrefs.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/test_utils_stormcov.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tests/utils.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/aha/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/aha/clone.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/aha/easycert.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/aha/enroll.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/aha/list.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/aha/mirror.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/aha/provision/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/aha/provision/service.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/aha/provision/user.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/apikey.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/autodoc.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/axon/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/axon/dump.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/axon/load.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/axon2axon.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/backup.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/cellauth.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/changelog.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/cmdr.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/cortex/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/cortex/layer/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/cortex/layer/dump.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/cortex/layer/load.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/cryo/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/cryo/cat.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/cryo/list.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/csvtool.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/demote.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/docker/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/docker/validate.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/easycert.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/feed.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/genpkg.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/guid.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/healthcheck.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/hive/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/hive/load.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/hive/save.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/json2mpk.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/livebackup.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/modrole.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/moduser.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/pkgs/gendocs.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/pkgs/pandoc_filter.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/promote.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/pullfile.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/pushfile.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/reload.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/rstorm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/shutdown.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/snapshot.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/tools/storm.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/utils/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/utils/getrefs.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/utils/stormcov/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/utils/stormcov/plugin.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cashaddress/LICENSE +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cashaddress/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cashaddress/base58.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cashaddress/convert.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cashaddress/crypto.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cashaddress/tests/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cashaddress/tests/test_cashaddress.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/LICENSE +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/email/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/email/_parseaddr.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/email/utils.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/http/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/http/cookies.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/ipaddress.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/json.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/test/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/test/support/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/test/test_email/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/test/test_email/test_email.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/test/test_email/test_utils.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/test/test_http_cookies.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/test/test_ipaddress.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/cpython/lib/test/test_json.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/substrateinterface/LICENSE +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/substrateinterface/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/substrateinterface/tests/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/substrateinterface/tests/test_ss58.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/substrateinterface/utils/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/substrateinterface/utils/ss58.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/utils.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/LICENSE +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/constants.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/core/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/core/addresscodec/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/core/addresscodec/codec.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/core/addresscodec/exceptions.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/core/addresscodec/main.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/core/addresscodec/utils.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/tests/__init__.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/tests/test_codec.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/tests/test_main.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse/vendor/xrpl/tests/test_main_test_cases.py +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse.egg-info/SOURCES.txt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse.egg-info/dependency_links.txt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse.egg-info/requires.txt +0 -0
- {synapse-2.223.0 → synapse-2.224.0}/synapse.egg-info/top_level.txt +0 -0
|
@@ -144,7 +144,7 @@ def flatten(item):
|
|
|
144
144
|
item: The python primitive object to normalize.
|
|
145
145
|
|
|
146
146
|
Notes:
|
|
147
|
-
Only None, bool, int, bytes, strings, lists, tuples and dictionaries are acceptable input.
|
|
147
|
+
Only None, bool, int, bytes, strings, floats, lists, tuples and dictionaries are acceptable input.
|
|
148
148
|
List objects will be converted to tuples.
|
|
149
149
|
Dictionary objects must have keys which can be sorted.
|
|
150
150
|
|
|
@@ -155,7 +155,7 @@ def flatten(item):
|
|
|
155
155
|
if item is None:
|
|
156
156
|
return None
|
|
157
157
|
|
|
158
|
-
if isinstance(item, (str, int, bytes)):
|
|
158
|
+
if isinstance(item, (str, int, bytes, float)):
|
|
159
159
|
return item
|
|
160
160
|
|
|
161
161
|
if isinstance(item, (tuple, list)):
|
|
@@ -464,6 +464,15 @@ class CoreApi(s_cell.CellApi):
|
|
|
464
464
|
'''
|
|
465
465
|
return await self.cell.getTypeNorm(name, valu, typeopts=typeopts)
|
|
466
466
|
|
|
467
|
+
async def addType(self, typename, basetype, typeopts, typeinfo):
|
|
468
|
+
'''
|
|
469
|
+
Add an extended type to the data model.
|
|
470
|
+
|
|
471
|
+
Extended types must begin with _
|
|
472
|
+
'''
|
|
473
|
+
self.user.confirm(('model', 'type', 'add', typename))
|
|
474
|
+
return await self.cell.addType(typename, basetype, typeopts, typeinfo)
|
|
475
|
+
|
|
467
476
|
async def addForm(self, formname, basetype, typeopts, typeinfo):
|
|
468
477
|
'''
|
|
469
478
|
Add an extended form to the data model.
|
|
@@ -535,6 +544,15 @@ class CoreApi(s_cell.CellApi):
|
|
|
535
544
|
self.user.confirm(('model', 'tagprop', 'del'))
|
|
536
545
|
return await self.cell.delTagProp(name)
|
|
537
546
|
|
|
547
|
+
async def addEdge(self, edge, edgeinfo):
|
|
548
|
+
'''
|
|
549
|
+
Add an extended edge definition to the data model.
|
|
550
|
+
|
|
551
|
+
Extended edge definitions must use a verb which begins with _
|
|
552
|
+
'''
|
|
553
|
+
self.user.confirm(('model', 'edge', 'add'))
|
|
554
|
+
return await self.cell.addEdge(edge, edgeinfo)
|
|
555
|
+
|
|
538
556
|
async def addStormPkg(self, pkgdef, verify=False):
|
|
539
557
|
self.user.confirm(('pkg', 'add'))
|
|
540
558
|
return await self.cell.addStormPkg(pkgdef, verify=verify)
|
|
@@ -1440,6 +1458,11 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
1440
1458
|
{'perm': ('model', 'univ', 'del'), 'gate': 'cortex',
|
|
1441
1459
|
'desc': 'Controls access to deleting extended model universal properties and values.'},
|
|
1442
1460
|
|
|
1461
|
+
{'perm': ('model', 'edge', 'add'), 'gate': 'cortex',
|
|
1462
|
+
'desc': 'Controls access to adding extended model edges.'},
|
|
1463
|
+
{'perm': ('model', 'edge', 'del'), 'gate': 'cortex',
|
|
1464
|
+
'desc': 'Controls access to deleting extended model edges.'},
|
|
1465
|
+
|
|
1443
1466
|
{'perm': ('node',), 'gate': 'layer',
|
|
1444
1467
|
'desc': 'Controls all node edits in a layer.'},
|
|
1445
1468
|
{'perm': ('node', 'add'), 'gate': 'layer',
|
|
@@ -2568,6 +2591,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
2568
2591
|
ctor.pkgname = cdef.get('pkgname')
|
|
2569
2592
|
ctor.svciden = cdef.get('cmdconf', {}).get('svciden', '')
|
|
2570
2593
|
ctor.forms = cdef.get('forms', {})
|
|
2594
|
+
ctor.deprecated = cdef.get('deprecated', {})
|
|
2571
2595
|
|
|
2572
2596
|
def getStorNode(form):
|
|
2573
2597
|
ndef = (form.name, form.type.norm(cdef.get('name'))[0])
|
|
@@ -2596,6 +2620,18 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
2596
2620
|
if ctor.pkgname:
|
|
2597
2621
|
props['package'] = ctor.pkgname
|
|
2598
2622
|
|
|
2623
|
+
if ctor.deprecated:
|
|
2624
|
+
props['deprecated'] = True
|
|
2625
|
+
|
|
2626
|
+
if (eolvers := ctor.deprecated.get('eolvers')) is not None:
|
|
2627
|
+
props['deprecated:version'] = eolvers
|
|
2628
|
+
|
|
2629
|
+
if (eoldate := ctor.deprecated.get('eoldate')) is not None:
|
|
2630
|
+
props['deprecated:date'] = eoldate
|
|
2631
|
+
|
|
2632
|
+
if (mesg := ctor.deprecated.get('mesg')) is not None:
|
|
2633
|
+
props['deprecated:mesg'] = mesg
|
|
2634
|
+
|
|
2599
2635
|
pnorms = {}
|
|
2600
2636
|
for prop, valu in props.items():
|
|
2601
2637
|
formprop = form.props.get(prop)
|
|
@@ -3662,6 +3698,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3662
3698
|
|
|
3663
3699
|
return True
|
|
3664
3700
|
|
|
3701
|
+
@s_cell.from_leader
|
|
3665
3702
|
async def addUnivProp(self, name, tdef, info):
|
|
3666
3703
|
if not isinstance(tdef, tuple):
|
|
3667
3704
|
mesg = 'Universal property type definitions should be a tuple.'
|
|
@@ -3676,6 +3713,8 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3676
3713
|
mesg = 'ext univ name must start with "_"'
|
|
3677
3714
|
raise s_exc.BadPropDef(name=name, mesg=mesg)
|
|
3678
3715
|
|
|
3716
|
+
self.model.getTypeClone(tdef)
|
|
3717
|
+
|
|
3679
3718
|
base = '.' + name
|
|
3680
3719
|
if base in self.model.props:
|
|
3681
3720
|
raise s_exc.DupPropName(mesg=f'Cannot add duplicate universal property {base}',
|
|
@@ -3697,6 +3736,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3697
3736
|
if univ:
|
|
3698
3737
|
await self.feedBeholder('model:univ:add', univ.pack())
|
|
3699
3738
|
|
|
3739
|
+
@s_cell.from_leader
|
|
3700
3740
|
async def addForm(self, formname, basetype, typeopts, typeinfo):
|
|
3701
3741
|
if not isinstance(typeopts, dict):
|
|
3702
3742
|
mesg = 'Form type options should be a dict.'
|
|
@@ -3718,6 +3758,8 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3718
3758
|
mesg = f'Type already exists: {formname}'
|
|
3719
3759
|
raise s_exc.DupTypeName.init(formname)
|
|
3720
3760
|
|
|
3761
|
+
self.model.getTypeClone((basetype, typeopts))
|
|
3762
|
+
|
|
3721
3763
|
return await self._push('model:form:add', formname, basetype, typeopts, typeinfo)
|
|
3722
3764
|
|
|
3723
3765
|
@s_nexus.Pusher.onPush('model:form:add')
|
|
@@ -3772,6 +3814,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3772
3814
|
await self.fire('core:extmodel:change', form=formname, act='del', type='form')
|
|
3773
3815
|
await self.feedBeholder('model:form:del', {'form': formname})
|
|
3774
3816
|
|
|
3817
|
+
@s_cell.from_leader
|
|
3775
3818
|
async def addType(self, typename, basetype, typeopts, typeinfo):
|
|
3776
3819
|
if not isinstance(typeopts, dict):
|
|
3777
3820
|
mesg = 'Type options should be a dict.'
|
|
@@ -3840,6 +3883,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3840
3883
|
await self.fire('core:extmodel:change', name=typename, act='del', type='type')
|
|
3841
3884
|
await self.feedBeholder('model:type:del', {'type': typename})
|
|
3842
3885
|
|
|
3886
|
+
@s_cell.from_leader
|
|
3843
3887
|
async def addFormProp(self, form, prop, tdef, info):
|
|
3844
3888
|
if not isinstance(tdef, tuple):
|
|
3845
3889
|
mesg = 'Form property type definitions should be a tuple.'
|
|
@@ -3858,6 +3902,9 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3858
3902
|
if _form.prop(prop):
|
|
3859
3903
|
raise s_exc.DupPropName(mesg=f'Cannot add duplicate form prop {form} {prop}',
|
|
3860
3904
|
form=form, prop=prop)
|
|
3905
|
+
|
|
3906
|
+
self.model.getTypeClone(tdef)
|
|
3907
|
+
|
|
3861
3908
|
await self._push('model:prop:add', form, prop, tdef, info)
|
|
3862
3909
|
|
|
3863
3910
|
@s_nexus.Pusher.onPush('model:prop:add')
|
|
@@ -4039,6 +4086,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
4039
4086
|
await self.fire('core:extmodel:change', name=prop, act='del', type='univ')
|
|
4040
4087
|
await self.feedBeholder('model:univ:del', {'prop': univname})
|
|
4041
4088
|
|
|
4089
|
+
@s_cell.from_leader
|
|
4042
4090
|
async def addTagProp(self, name, tdef, info):
|
|
4043
4091
|
if not isinstance(tdef, tuple):
|
|
4044
4092
|
mesg = 'Tag property type definitions should be a tuple.'
|
|
@@ -4051,6 +4099,8 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
4051
4099
|
if self.exttagprops.get(name) is not None:
|
|
4052
4100
|
raise s_exc.DupPropName(name=name)
|
|
4053
4101
|
|
|
4102
|
+
self.model.getTypeClone(tdef)
|
|
4103
|
+
|
|
4054
4104
|
return await self._push('model:tagprop:add', name, tdef, info)
|
|
4055
4105
|
|
|
4056
4106
|
@s_nexus.Pusher.onPush('model:tagprop:add')
|
|
@@ -4088,6 +4138,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
4088
4138
|
await self.fire('core:tagprop:change', name=name, act='del')
|
|
4089
4139
|
await self.feedBeholder('model:tagprop:del', {'tagprop': name})
|
|
4090
4140
|
|
|
4141
|
+
@s_cell.from_leader
|
|
4091
4142
|
async def addEdge(self, edge, edgeinfo):
|
|
4092
4143
|
if not isinstance(edgeinfo, dict):
|
|
4093
4144
|
mesg = 'Edge info should be a dict.'
|
|
@@ -4667,6 +4718,7 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
4667
4718
|
s_stormlib_macro,
|
|
4668
4719
|
s_stormlib_model,
|
|
4669
4720
|
s_stormlib_pkg,
|
|
4721
|
+
s_stormlib_task,
|
|
4670
4722
|
s_stormlib_vault,
|
|
4671
4723
|
]
|
|
4672
4724
|
|
|
@@ -4674,9 +4726,6 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
4674
4726
|
for cdef in cmod.stormcmds:
|
|
4675
4727
|
await self._trySetStormCmd(cdef.get('name'), cdef)
|
|
4676
4728
|
|
|
4677
|
-
for cdef in s_stormlib_task.stormcmds:
|
|
4678
|
-
await self._trySetStormCmd(cdef.get('name'), cdef)
|
|
4679
|
-
|
|
4680
4729
|
async def _initPureStormCmds(self):
|
|
4681
4730
|
oldcmds = []
|
|
4682
4731
|
for name, cdef in self.cmddefs.items():
|
|
@@ -127,7 +127,7 @@ class LayerApi(s_cell.CellApi):
|
|
|
127
127
|
Scan the full layer and yield artificial nodeedit sets.
|
|
128
128
|
'''
|
|
129
129
|
|
|
130
|
-
if not self.allowed(self.liftperm):
|
|
130
|
+
if not await self.allowed(self.liftperm):
|
|
131
131
|
await self._reqUserAllowed(self.readperm)
|
|
132
132
|
async for item in self.layr.iterLayerNodeEdits():
|
|
133
133
|
yield item
|
|
@@ -167,14 +167,14 @@ class LayerApi(s_cell.CellApi):
|
|
|
167
167
|
|
|
168
168
|
Once caught up with storage, yield them in realtime.
|
|
169
169
|
'''
|
|
170
|
-
if not self.allowed(self.liftperm):
|
|
170
|
+
if not await self.allowed(self.liftperm):
|
|
171
171
|
await self._reqUserAllowed(self.readperm)
|
|
172
172
|
async for item in self.layr.syncNodeEdits(offs, wait=wait, reverse=reverse):
|
|
173
173
|
yield item
|
|
174
174
|
await asyncio.sleep(0)
|
|
175
175
|
|
|
176
176
|
async def syncNodeEdits2(self, offs, wait=True):
|
|
177
|
-
if not self.allowed(self.liftperm):
|
|
177
|
+
if not await self.allowed(self.liftperm):
|
|
178
178
|
await self._reqUserAllowed(self.readperm)
|
|
179
179
|
async for item in self.layr.syncNodeEdits2(offs, wait=wait):
|
|
180
180
|
yield item
|
|
@@ -184,7 +184,7 @@ class LayerApi(s_cell.CellApi):
|
|
|
184
184
|
'''
|
|
185
185
|
Returns what will be the *next* nodeedit log index.
|
|
186
186
|
'''
|
|
187
|
-
if not self.allowed(self.liftperm):
|
|
187
|
+
if not await self.allowed(self.liftperm):
|
|
188
188
|
await self._reqUserAllowed(self.readperm)
|
|
189
189
|
return await self.layr.getEditIndx()
|
|
190
190
|
|
|
@@ -192,12 +192,12 @@ class LayerApi(s_cell.CellApi):
|
|
|
192
192
|
'''
|
|
193
193
|
Return the total number of (edits, meta) pairs in the layer changelog.
|
|
194
194
|
'''
|
|
195
|
-
if not self.allowed(self.liftperm):
|
|
195
|
+
if not await self.allowed(self.liftperm):
|
|
196
196
|
await self._reqUserAllowed(self.readperm)
|
|
197
197
|
return await self.layr.getEditSize()
|
|
198
198
|
|
|
199
199
|
async def getIden(self):
|
|
200
|
-
if not self.allowed(self.liftperm):
|
|
200
|
+
if not await self.allowed(self.liftperm):
|
|
201
201
|
await self._reqUserAllowed(self.readperm)
|
|
202
202
|
return self.layr.iden
|
|
203
203
|
|
|
@@ -954,6 +954,7 @@ _reqValidPkgdefSchema = {
|
|
|
954
954
|
'items': {'type': 'array',
|
|
955
955
|
'items': {'type': 'string'}},
|
|
956
956
|
},
|
|
957
|
+
'deprecated': {'$ref': '#/definitions/deprecatedItem'},
|
|
957
958
|
},
|
|
958
959
|
'additionalProperties': True,
|
|
959
960
|
'required': ['name', 'storm']
|
|
@@ -980,6 +981,7 @@ _reqValidPkgdefSchema = {
|
|
|
980
981
|
'type': 'string',
|
|
981
982
|
'enum': s_msgpack.deepcopy(datamodel_basetypes),
|
|
982
983
|
},
|
|
984
|
+
'deprecated': {'$ref': '#/definitions/deprecatedItem'},
|
|
983
985
|
},
|
|
984
986
|
}
|
|
985
987
|
],
|
|
@@ -932,6 +932,7 @@ stormcmds = (
|
|
|
932
932
|
},
|
|
933
933
|
{
|
|
934
934
|
'name': 'ps.list',
|
|
935
|
+
'deprecated': {'eolvers': 'v3.0.0', 'mesg': 'Use ``task.list`` instead.'},
|
|
935
936
|
'descr': 'List running tasks in the cortex.',
|
|
936
937
|
'cmdargs': (
|
|
937
938
|
('--verbose', {'default': False, 'action': 'store_true', 'help': 'Enable verbose output.'}),
|
|
@@ -958,6 +959,7 @@ stormcmds = (
|
|
|
958
959
|
},
|
|
959
960
|
{
|
|
960
961
|
'name': 'ps.kill',
|
|
962
|
+
'deprecated': {'eolvers': 'v3.0.0', 'mesg': 'Use ``task.kill`` instead.'},
|
|
961
963
|
'descr': 'Kill a running task/query within the cortex.',
|
|
962
964
|
'cmdargs': (
|
|
963
965
|
('iden', {'help': 'Any prefix that matches exactly one valid process iden is accepted.'}),
|
|
@@ -1111,6 +1113,16 @@ stormcmds = (
|
|
|
1111
1113
|
},
|
|
1112
1114
|
)
|
|
1113
1115
|
|
|
1116
|
+
def deprmesg(name, depritem):
|
|
1117
|
+
if (mesg := depritem.get('mesg')) is not None:
|
|
1118
|
+
return f'"{name}" is deprecated: {mesg}'
|
|
1119
|
+
|
|
1120
|
+
if (eolvers := depritem.get('eolvers')) is not None:
|
|
1121
|
+
return f'"{name}" is deprecated and will be removed in {eolvers}.'
|
|
1122
|
+
|
|
1123
|
+
eoldate = depritem.get('eoldate')
|
|
1124
|
+
return f'"{name}" is deprecated and will be removed on {eoldate}.'
|
|
1125
|
+
|
|
1114
1126
|
@s_cache.memoize(size=1024)
|
|
1115
1127
|
def queryhash(text):
|
|
1116
1128
|
return s_common.queryhash(text)
|
|
@@ -1906,6 +1918,7 @@ class Parser:
|
|
|
1906
1918
|
self.root = root
|
|
1907
1919
|
self.exited = False
|
|
1908
1920
|
self.mesgs = []
|
|
1921
|
+
self.deprs = {}
|
|
1909
1922
|
|
|
1910
1923
|
self.optargs = {}
|
|
1911
1924
|
self.posargs = []
|
|
@@ -1931,7 +1944,7 @@ class Parser:
|
|
|
1931
1944
|
|
|
1932
1945
|
choices = opts.get('choices')
|
|
1933
1946
|
if choices is not None and opts.get('action') in ('store_true', 'store_false'):
|
|
1934
|
-
mesg =
|
|
1947
|
+
mesg = 'Argument choices are not supported when action is store_true or store_false'
|
|
1935
1948
|
raise s_exc.BadArg(mesg=mesg, argtype=str(argtype))
|
|
1936
1949
|
|
|
1937
1950
|
dest = self._get_dest(names)
|
|
@@ -1988,6 +2001,9 @@ class Parser:
|
|
|
1988
2001
|
|
|
1989
2002
|
dest = argdef.get('dest')
|
|
1990
2003
|
|
|
2004
|
+
if (deprecated := argdef.get('deprecated')) is not None:
|
|
2005
|
+
self.deprs[item] = deprecated
|
|
2006
|
+
|
|
1991
2007
|
oact = argdef.get('action', 'store')
|
|
1992
2008
|
if oact == 'store_true':
|
|
1993
2009
|
opts[dest] = True
|
|
@@ -2177,6 +2193,12 @@ class Parser:
|
|
|
2177
2193
|
|
|
2178
2194
|
self._printf(f'Usage: {self.prog} [options] {posargs}')
|
|
2179
2195
|
|
|
2196
|
+
if self.cdef is not None and (deprecated := self.cdef.get('deprecated')) is not None:
|
|
2197
|
+
dmsg = deprmesg(self.prog, deprecated)
|
|
2198
|
+
self._printf('')
|
|
2199
|
+
self._printf(f'Deprecated: {dmsg}')
|
|
2200
|
+
self._printf('')
|
|
2201
|
+
|
|
2180
2202
|
if self.cdef is not None and (endpoints := self.cdef.get('endpoints')):
|
|
2181
2203
|
self._printf('')
|
|
2182
2204
|
self._printf('Endpoints:')
|
|
@@ -2286,6 +2308,10 @@ class Parser:
|
|
|
2286
2308
|
wrap_first = self._wrap_text(first, wrap_w)
|
|
2287
2309
|
self._printf(f'{base:<{base_w-2}}: {wrap_first[0]}')
|
|
2288
2310
|
|
|
2311
|
+
if (deprecated := argdef.get('deprecated')) is not None:
|
|
2312
|
+
mesg = deprmesg(names[0], deprecated)
|
|
2313
|
+
self._printf(f'{"":<{base_w-2}} Deprecated: {mesg}')
|
|
2314
|
+
|
|
2289
2315
|
for ln in wrap_first[1:]: self._printf(f'{"":<{base_w}}{ln}')
|
|
2290
2316
|
for ln in helplst[1:]:
|
|
2291
2317
|
lead_s = len(ln) - len(ln.lstrip())
|
|
@@ -2401,6 +2427,10 @@ class Cmd:
|
|
|
2401
2427
|
except s_exc.BadSyntax: # pragma: no cover
|
|
2402
2428
|
pass
|
|
2403
2429
|
|
|
2430
|
+
for item, depr in self.pars.deprs.items():
|
|
2431
|
+
mesg = deprmesg(item, depr)
|
|
2432
|
+
await self.runt.snap.warnonce(mesg)
|
|
2433
|
+
|
|
2404
2434
|
for line in self.pars.mesgs:
|
|
2405
2435
|
await self.runt.snap.printf(line)
|
|
2406
2436
|
|
|
@@ -2522,6 +2552,10 @@ class PureCmd(Cmd):
|
|
|
2522
2552
|
}
|
|
2523
2553
|
}
|
|
2524
2554
|
|
|
2555
|
+
if (deprecated := self.cdef.get('deprecated')) is not None:
|
|
2556
|
+
mesg = deprmesg(name, deprecated)
|
|
2557
|
+
await self.runt.warnonce(mesg)
|
|
2558
|
+
|
|
2525
2559
|
if self.runtsafe:
|
|
2526
2560
|
data = {'pathvars': {}}
|
|
2527
2561
|
async def genx():
|
|
@@ -526,14 +526,22 @@ class ImapLib(s_stormtypes.Lib):
|
|
|
526
526
|
|
|
527
527
|
try:
|
|
528
528
|
imap = await s_common.wait_for(coro, timeout)
|
|
529
|
-
except
|
|
529
|
+
except TimeoutError:
|
|
530
530
|
raise s_exc.TimeOut(mesg='Timed out waiting for IMAP server hello.') from None
|
|
531
531
|
|
|
532
532
|
async def fini():
|
|
533
|
-
async def
|
|
534
|
-
|
|
533
|
+
async def imapfini():
|
|
534
|
+
if imap.isfini:
|
|
535
|
+
return
|
|
536
|
+
|
|
537
|
+
try:
|
|
538
|
+
await s_common.wait_for(imap.logout(), 5)
|
|
539
|
+
except TimeoutError:
|
|
540
|
+
pass # pragma: no cover
|
|
541
|
+
|
|
535
542
|
await imap.fini()
|
|
536
|
-
|
|
543
|
+
|
|
544
|
+
self.runt.snap.core.schedCoro(imapfini())
|
|
537
545
|
|
|
538
546
|
self.runt.snap.onfini(fini)
|
|
539
547
|
|
|
@@ -1910,6 +1910,7 @@ class LibPs(Lib):
|
|
|
1910
1910
|
'type': {'type': 'function', '_funcname': '_list',
|
|
1911
1911
|
'returns': {'type': 'list', 'desc': 'A list of task definitions.', }}},
|
|
1912
1912
|
)
|
|
1913
|
+
_storm_lib_deprecation = {'eolvers': 'v3.0.0', 'mesg': 'Use the corresponding ``$lib.task`` function.'}
|
|
1913
1914
|
_storm_lib_path = ('ps',)
|
|
1914
1915
|
|
|
1915
1916
|
def getObjLocals(self):
|
|
@@ -2968,7 +2969,13 @@ class LibTime(Lib):
|
|
|
2968
2969
|
|
|
2969
2970
|
storm> $now=$lib.time.now() $str=$lib.time.format($now, '%A %d, %B %Y') $lib.print($str)
|
|
2970
2971
|
|
|
2971
|
-
Tuesday 14, July 2020
|
|
2972
|
+
Tuesday 14, July 2020
|
|
2973
|
+
|
|
2974
|
+
Format a timestamp into a string using included format string::
|
|
2975
|
+
|
|
2976
|
+
storm> $now=$lib.time.now() $str=$lib.time.format($now, $lib.time.formats.iso8601) $lib.print($str)
|
|
2977
|
+
|
|
2978
|
+
2025-10-02T09:34:00Z''',
|
|
2972
2979
|
'type': {'type': 'function', '_funcname': '_format',
|
|
2973
2980
|
'args': (
|
|
2974
2981
|
{'name': 'valu', 'type': 'int', 'desc': 'A timestamp in epoch milliseconds.', },
|
|
@@ -3103,6 +3110,10 @@ class LibTime(Lib):
|
|
|
3103
3110
|
{'name': 'timezone', 'desc': 'A timezone name. See python pytz docs for options.', 'type': 'str'},
|
|
3104
3111
|
),
|
|
3105
3112
|
'returns': {'type': 'list', 'desc': 'An ($ok, $valu) tuple.', }}},
|
|
3113
|
+
{'name': 'formats.iso8601', 'desc': 'ISO8601 time format string in UTC timezone (Z).', 'type': 'str'},
|
|
3114
|
+
{'name': 'formats.iso8601us', 'desc': 'ISO8601 time format string (with microseconds) in UTC timezone (Z).', 'type': 'str'},
|
|
3115
|
+
{'name': 'formats.rfc2822', 'desc': 'RFC 2822 time format string in UT timezone.', 'type': 'str'},
|
|
3116
|
+
{'name': 'formats.synapse', 'desc': 'Synapse time format string.', 'type': 'str'},
|
|
3106
3117
|
)
|
|
3107
3118
|
_storm_lib_path = ('time',)
|
|
3108
3119
|
|
|
@@ -3127,6 +3138,13 @@ class LibTime(Lib):
|
|
|
3127
3138
|
'dayofyear': self.dayofyear,
|
|
3128
3139
|
'dayofmonth': self.dayofmonth,
|
|
3129
3140
|
'monthofyear': self.monthofyear,
|
|
3141
|
+
|
|
3142
|
+
'formats': {
|
|
3143
|
+
'iso8601': '%Y-%m-%dT%H:%M:%SZ',
|
|
3144
|
+
'iso8601us': '%Y-%m-%dT%H:%M:%S.%fZ',
|
|
3145
|
+
'rfc2822': '%d %b %Y %H:%M:%S UT',
|
|
3146
|
+
'synapse': '%Y/%m/%d %H:%M:%S.%f',
|
|
3147
|
+
},
|
|
3130
3148
|
}
|
|
3131
3149
|
|
|
3132
3150
|
@stormfunc(readonly=True)
|
|
@@ -223,6 +223,6 @@ def reqVersion(valu, reqver,
|
|
|
223
223
|
##############################################################################
|
|
224
224
|
# The following are touched during the release process by bumpversion.
|
|
225
225
|
# Do not modify these directly.
|
|
226
|
-
version = (2,
|
|
226
|
+
version = (2, 224, 0)
|
|
227
227
|
verstring = '.'.join([str(x) for x in version])
|
|
228
|
-
commit = '
|
|
228
|
+
commit = '7c6e619bf5fd9c5801891b489b11bbee7fdbebd0'
|
|
@@ -3700,6 +3700,9 @@ class InetModule(s_module.CoreModule):
|
|
|
3700
3700
|
)),
|
|
3701
3701
|
('inet:service:platform', {}, (
|
|
3702
3702
|
|
|
3703
|
+
('id', ('str', {'strip': True}), {
|
|
3704
|
+
'doc': 'An ID which identifies the platform.'}),
|
|
3705
|
+
|
|
3703
3706
|
('url', ('inet:url', {}), {
|
|
3704
3707
|
'ex': 'https://twitter.com',
|
|
3705
3708
|
'alts': ('urls',),
|
|
@@ -3708,6 +3711,13 @@ class InetModule(s_module.CoreModule):
|
|
|
3708
3711
|
('urls', ('array', {'type': 'inet:url', 'sorted': True, 'uniq': True}), {
|
|
3709
3712
|
'doc': 'An array of alternate URLs for the platform.'}),
|
|
3710
3713
|
|
|
3714
|
+
('zone', ('inet:fqdn', {}), {
|
|
3715
|
+
'alts': ('zones',),
|
|
3716
|
+
'doc': 'The primary zone for the platform.'}),
|
|
3717
|
+
|
|
3718
|
+
('zones', ('array', {'type': 'inet:fqdn', 'sorted': True, 'uniq': True}), {
|
|
3719
|
+
'doc': 'An array of alternate zones for the platform.'}),
|
|
3720
|
+
|
|
3711
3721
|
('name', ('str', {'onespace': True, 'lower': True}), {
|
|
3712
3722
|
'ex': 'twitter',
|
|
3713
3723
|
'alts': ('names',),
|
|
@@ -3722,6 +3732,21 @@ class InetModule(s_module.CoreModule):
|
|
|
3722
3732
|
'disp': {'hint': 'text'},
|
|
3723
3733
|
'doc': 'A description of the service platform.'}),
|
|
3724
3734
|
|
|
3735
|
+
('parent', ('inet:service:platform', {}), {
|
|
3736
|
+
'doc': 'A parent platform which owns this platform.'}),
|
|
3737
|
+
|
|
3738
|
+
('status', ('inet:service:object:status', {}), {
|
|
3739
|
+
'doc': 'The status of the platform.'}),
|
|
3740
|
+
|
|
3741
|
+
('period', ('ival', {}), {
|
|
3742
|
+
'doc': 'The period when the platform existed.'}),
|
|
3743
|
+
|
|
3744
|
+
('creator', ('inet:service:account', {}), {
|
|
3745
|
+
'doc': 'The service account which created the platform.'}),
|
|
3746
|
+
|
|
3747
|
+
('remover', ('inet:service:account', {}), {
|
|
3748
|
+
'doc': 'The service account which removed or decommissioned the platform.'}),
|
|
3749
|
+
|
|
3725
3750
|
('provider', ('ou:org', {}), {
|
|
3726
3751
|
'doc': 'The organization which operates the platform.'}),
|
|
3727
3752
|
|
|
@@ -166,6 +166,9 @@ class ProjectModule(s_module.CoreModule):
|
|
|
166
166
|
('created', ('time', {}), {
|
|
167
167
|
'doc': 'The time the comment was added.'}),
|
|
168
168
|
|
|
169
|
+
('ext:creator', ('ps:contact', {}), {
|
|
170
|
+
'doc': 'The contact information of the creator from an external system.'}),
|
|
171
|
+
|
|
169
172
|
('updated', ('time', {'ismax': True}), {
|
|
170
173
|
'doc': 'The last time the comment was updated.'}),
|
|
171
174
|
|
|
@@ -269,6 +269,9 @@ class RiskModule(s_module.CoreModule):
|
|
|
269
269
|
|
|
270
270
|
(('risk:outage', 'impacted', None), {
|
|
271
271
|
'doc': 'The outage event impacted the availability of the target node.'}),
|
|
272
|
+
|
|
273
|
+
(('risk:alert', 'about', None), {
|
|
274
|
+
'doc': 'The alert is about the target node.'}),
|
|
272
275
|
),
|
|
273
276
|
'forms': (
|
|
274
277
|
|
|
@@ -800,6 +803,9 @@ class RiskModule(s_module.CoreModule):
|
|
|
800
803
|
('detected', ('time', {}), {
|
|
801
804
|
'doc': 'The time the alerted condition was detected.'}),
|
|
802
805
|
|
|
806
|
+
('updated', ('time', {}), {
|
|
807
|
+
'doc': 'The time the alert was most recently modified.'}),
|
|
808
|
+
|
|
803
809
|
('vuln', ('risk:vuln', {}), {
|
|
804
810
|
'doc': 'The optional vulnerability that the alert indicates.'}),
|
|
805
811
|
|
|
@@ -365,6 +365,14 @@ class SynModule(s_module.CoreModule):
|
|
|
365
365
|
('nodedata', ('array', {'type': 'syn:nodedata'}), {
|
|
366
366
|
'deprecated': True,
|
|
367
367
|
'doc': 'The list of nodedata that may be added by the command.', 'uniq': True, 'sorted': True, 'ro': True}),
|
|
368
|
+
('deprecated', ('bool', {}), {
|
|
369
|
+
'doc': 'Set to true if this command is scheduled to be removed.'}),
|
|
370
|
+
('deprecated:version', ('it:semver', {}), {
|
|
371
|
+
'doc': 'The Synapse version when this command will be removed.'}),
|
|
372
|
+
('deprecated:date', ('time', {}), {
|
|
373
|
+
'doc': 'The date when this command will be removed.'}),
|
|
374
|
+
('deprecated:mesg', ('str', {}), {
|
|
375
|
+
'doc': 'Optional description of this deprecation.'}),
|
|
368
376
|
)),
|
|
369
377
|
),
|
|
370
378
|
}),)
|
|
@@ -75,6 +75,10 @@ class CommonTest(s_t_utils.SynTest):
|
|
|
75
75
|
self.ne('15c8a3727942fa01e04d6a7a525666a2', s_common.guid(item))
|
|
76
76
|
self.eq('15c8a3727942fa01e04d6a7a525666a2', s_common.guid(s_common.flatten(item)))
|
|
77
77
|
|
|
78
|
+
item = {'foo': 'bar', 'baz': 10, 'gronk': True, 'hehe': ['ha', 'ha'], 'tupl': (1, 'two', 1.23), 'newp': None}
|
|
79
|
+
self.ne('02efa9b7612f371dbb65a596cd303d9a', s_common.guid(item))
|
|
80
|
+
self.eq('02efa9b7612f371dbb65a596cd303d9a', s_common.guid(s_common.flatten(item)))
|
|
81
|
+
|
|
78
82
|
def test_common_vertup(self):
|
|
79
83
|
self.eq(s_common.vertup('1.3.30'), (1, 3, 30))
|
|
80
84
|
self.true(s_common.vertup('30.40.50') > (9, 0))
|
|
@@ -6650,6 +6650,57 @@ class CortexBasicTest(s_t_utils.SynTest):
|
|
|
6650
6650
|
with self.raises(s_exc.BadPropDef):
|
|
6651
6651
|
await prox.addTagProp('_blah:blah^blah', ('int', {}), {})
|
|
6652
6652
|
|
|
6653
|
+
# Mirrors on newer model versions should not be able to add extended model elements
|
|
6654
|
+
# based on model elements the leader doesn't have
|
|
6655
|
+
async with self.getTestAha() as aha:
|
|
6656
|
+
|
|
6657
|
+
conf = {'aha:provision': await aha.addAhaSvcProv('00.cortex')}
|
|
6658
|
+
core00 = await aha.enter_context(self.getTestCore(conf=conf))
|
|
6659
|
+
|
|
6660
|
+
conf = {'aha:provision': await aha.addAhaSvcProv('01.cortex', {'mirror': 'cortex'})}
|
|
6661
|
+
core01 = await aha.enter_context(self.getTestCore(conf=conf))
|
|
6662
|
+
|
|
6663
|
+
# Add a type directly to the mirror's model to simulate different model version
|
|
6664
|
+
core01.model.addType('_newmodel:type', 'str', {}, {})
|
|
6665
|
+
|
|
6666
|
+
with self.raises(s_exc.NoSuchType):
|
|
6667
|
+
await core01.addType('_test:type', '_newmodel:type', {}, {})
|
|
6668
|
+
|
|
6669
|
+
await core01.sync()
|
|
6670
|
+
self.none(core01.model.type('_test:type'))
|
|
6671
|
+
|
|
6672
|
+
with self.raises(s_exc.NoSuchType):
|
|
6673
|
+
await core01.addUnivProp('_woot', ('_newmodel:type', {}), {})
|
|
6674
|
+
|
|
6675
|
+
await core01.sync()
|
|
6676
|
+
self.none(core01.model.prop('._woot'))
|
|
6677
|
+
|
|
6678
|
+
with self.raises(s_exc.NoSuchType):
|
|
6679
|
+
await core01.addForm('_hehe:haha', '_newmodel:type', {}, {})
|
|
6680
|
+
|
|
6681
|
+
await core01.sync()
|
|
6682
|
+
self.none(core01.model.form('_hehe:haha'))
|
|
6683
|
+
|
|
6684
|
+
with self.raises(s_exc.NoSuchType):
|
|
6685
|
+
await core01.addFormProp('inet:asn', '_newer', ('_newmodel:type', {}), {})
|
|
6686
|
+
|
|
6687
|
+
await core01.sync()
|
|
6688
|
+
self.none(core01.model.prop('inet:asn:_newer'))
|
|
6689
|
+
|
|
6690
|
+
with self.raises(s_exc.NoSuchType):
|
|
6691
|
+
await core01.addTagProp('user', ('_newmodel:type', {}), {})
|
|
6692
|
+
|
|
6693
|
+
await core01.sync()
|
|
6694
|
+
self.none(core01.model.tagprop('user'))
|
|
6695
|
+
|
|
6696
|
+
core01.model.addForm('_newmodel:type', {}, {})
|
|
6697
|
+
|
|
6698
|
+
with self.raises(s_exc.NoSuchForm):
|
|
6699
|
+
await core01.addEdge(('_newmodel:type', '_foo', None), {})
|
|
6700
|
+
|
|
6701
|
+
await core01.sync()
|
|
6702
|
+
self.none(core01.model.edge(('_newmodel:type', '_foo', None)))
|
|
6703
|
+
|
|
6653
6704
|
async def test_cortex_axon(self):
|
|
6654
6705
|
async with self.getTestCore() as core:
|
|
6655
6706
|
# By default, a cortex has a local Axon instance available
|