synapse 2.186.0__tar.gz → 2.188.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.186.0/synapse.egg-info → synapse-2.188.0}/PKG-INFO +1 -1
- {synapse-2.186.0 → synapse-2.188.0}/pyproject.toml +1 -2
- {synapse-2.186.0 → synapse-2.188.0}/synapse/cortex.py +133 -9
- {synapse-2.186.0 → synapse-2.188.0}/synapse/datamodel.py +20 -4
- {synapse-2.186.0 → synapse-2.188.0}/synapse/exc.py +14 -1
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/ast.py +6 -4
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/auth.py +9 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/hive.py +1 -1
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/httpapi.py +2 -1
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/modelrev.py +771 -11
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/nexus.py +6 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/node.py +5 -3
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/scrape.py +18 -104
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/spooled.py +26 -3
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/storm.py +51 -28
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/model.py +320 -250
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/modelext.py +31 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/scrape.py +1 -4
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormtypes.py +53 -11
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/version.py +2 -2
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/view.py +9 -3
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/base.py +27 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/files.py +22 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/inet.py +49 -4
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/infotech.py +49 -22
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/orgs.py +64 -2
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/proj.py +1 -6
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/risk.py +65 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_cortex.py +21 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_agenda.py +13 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_auth.py +15 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_cell.py +2 -1
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_httpapi.py +6 -0
- synapse-2.188.0/synapse/tests/test_lib_modelrev.py +1761 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_nexus.py +26 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_scrape.py +14 -6
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_spooled.py +34 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_storm.py +48 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_model.py +0 -270
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_modelext.py +76 -1
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_scrape.py +0 -8
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormtypes.py +12 -1
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_trigger.py +8 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_view.py +24 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_base.py +11 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_files.py +19 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_inet.py +33 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_infotech.py +14 -11
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_orgs.py +39 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_proj.py +11 -1
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_risk.py +32 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/changelog.py +11 -3
- {synapse-2.186.0 → synapse-2.188.0/synapse.egg-info}/PKG-INFO +1 -1
- {synapse-2.186.0 → synapse-2.188.0}/synapse.egg-info/SOURCES.txt +0 -3
- synapse-2.186.0/synapse/assets/__init__.py +0 -35
- synapse-2.186.0/synapse/assets/storm/migrations/model-0.2.28.storm +0 -355
- synapse-2.186.0/synapse/tests/test_assets.py +0 -25
- synapse-2.186.0/synapse/tests/test_lib_modelrev.py +0 -1222
- {synapse-2.186.0 → synapse-2.188.0}/LICENSE +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/README.rst +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/setup.cfg +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/axon.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/cells.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/cmds/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/cmds/boss.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/cmds/cortex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/cmds/hive.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/common.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/cryotank.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/daemon.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/attack-flow/LICENSE.txt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/attack-flow/README.md +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/attack-flow/attack-flow-schema-2.0.0.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/certs/cas/The Vertex Project Intermediate CA 00.crt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/certs/cas/The Vertex Project ROOT CA.crt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/certs/crls/The Vertex Project Intermediate CA 00.crl +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/certs/crls/The Vertex Project ROOT CA.crl +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/iana.tlds.mpk +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/README.md +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/LICENSE.txt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/binary.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/bundle.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/core.json +0 -0
- {synapse-2.186.0 → synapse-2.188.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.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/dictionary.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension-definition.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/extension.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/external-reference.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/granular-marking.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hashes-type.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/hex.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/identifier.json +0 -0
- {synapse-2.186.0 → synapse-2.188.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.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/language-content.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/marking-definition.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/properties.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/timestamp.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/common/url-regex.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/artifact.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/autonomous-system.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/directory.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/domain-name.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-addr.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/email-message.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/file.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv4-addr.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/ipv6-addr.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mac-addr.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/mutex.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/network-traffic.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/process.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/software.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/url.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/user-account.json +0 -0
- {synapse-2.186.0 → synapse-2.188.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.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/observables/x509-certificate.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/attack-pattern.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/campaign.json +0 -0
- {synapse-2.186.0 → synapse-2.188.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.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/grouping.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/identity.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/incident.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/indicator.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/infrastructure.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/intrusion-set.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/location.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware-analysis.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/malware.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/note.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/observed-data.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/opinion.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/report.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/threat-actor.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/tool.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sdos/vulnerability.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/relationship.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/data/jsonschemas/raw.githubusercontent.com/oasis-open/cti-stix2-json-schemas/stix2.1/schemas/sros/sighting.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/glob.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/agenda.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/aha.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/autodoc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/base.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/boss.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/cache.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/cell.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/certdir.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/chop.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/cli.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/cmd.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/cmdr.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/config.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/const.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/coro.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/crypto/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/crypto/coin.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/crypto/ecc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/crypto/passwd.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/crypto/rsa.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/crypto/tinfoil.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/datfile.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/drive.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/dyndeps.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/encoding.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/gis.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/grammar.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/hashitem.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/hashset.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/health.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/hiveauth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/ingest.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/interval.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/jsonstor.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/layer.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/link.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/lmdbslab.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/module.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/modules.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/msgpack.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/multislabseqn.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/oauth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/output.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/parser.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/platforms/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/platforms/common.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/platforms/darwin.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/platforms/freebsd.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/platforms/linux.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/platforms/windows.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/queue.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/ratelimit.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/reflect.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/rstorm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/schemas.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/scope.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/share.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/slaboffs.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/slabseqn.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/snap.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/storm.lark +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/storm_format.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormctrl.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormhttp.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/aha.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/auth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/backup.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/basex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/cache.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/cell.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/compression.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/cortex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/easyperm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/env.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/ethereum.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/gen.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/gis.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/graph.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/hashes.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/hex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/imap.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/infosec.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/ipv6.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/iters.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/json.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/log.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/macro.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/math.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/mime.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/notifications.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/oauth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/pack.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/project.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/random.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/smtp.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/spooled.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/stats.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/stix.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/storm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/tabular.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/vault.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/version.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/xml.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormlib/yaml.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormsvc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/stormwhois.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/structlog.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/task.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/thishost.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/thisplat.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/threads.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/time.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/trigger.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/types.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lib/urlhelp.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lookup/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lookup/cvss.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lookup/iana.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lookup/iso3166.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lookup/macho.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lookup/pe.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lookup/phonenum.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/lookup/timezones.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/mindmeld.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/auth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/belief.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/biz.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/crypto.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/dns.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/doc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/economic.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/entity.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/geopol.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/geospace.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/gov/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/gov/cn.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/gov/intl.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/gov/us.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/language.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/material.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/math.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/media.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/person.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/planning.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/science.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/syn.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/telco.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/models/transport.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/servers/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/servers/aha.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/servers/axon.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/servers/cell.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/servers/cortex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/servers/cryotank.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/servers/jsonstor.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/servers/stemcell.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/telepath.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/TestUtilsGetrefs.test_basics.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/aha/certs/cas/synapse.crt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/aha/certs/cas/synapse.key +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.crt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/aha/certs/hosts/00.aha.loop.vertex.link.key +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/aha/certs/users/root@synapse.crt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/aha/certs/users/root@synapse.key +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/attack_flow/CISA AA22-138B VMWare Workspace (Alt).json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/attack_flow/CISA_Iranian_APT.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/certdir/cas/ca.crt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/certdir/cas/ca.key +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/certdir/hosts/localhost.crt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/certdir/hosts/localhost.key +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/certdir/users/root.crt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/certdir/users/root.key +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/certdir/users/user.crt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/certdir/users/user.key +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/changelog/model_2.176.0_16ee721a6b7221344eaf946c3ab4602dda546b1a.yaml.gz +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/changelog/model_2.176.0_2a25c58bbd344716cd7cbc3f4304d8925b0f4ef2.yaml.gz +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/cpedata.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/rstorm/httpresp1.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/rstorm/httpresp2.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/rstorm/httpresp3.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/rstorm/httprespmulti.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/rstorm/testsvc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stix_export/basic.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stix_export/custom0.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stix_export/risk0.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stix_import/apt1.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stix_import/oasis-example-00.json +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormcov/argvquery.storm +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormcov/dupesubs.storm +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormcov/lookup.storm +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormcov/pivot.storm +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormcov/pragma-nocov.storm +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormcov/spin.storm +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormcov/stormctrl.storm +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormmod/common +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/badapidef.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/badcmdname.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/badjsonpkg.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/docs/foobar.md +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/docs/foobar.svg +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/dotstorm/dotstorm.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/dotstorm/storm/commands/dotstorm.bar.storm +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/dotstorm/storm/modules/dotstorm.foo.storm +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/nocontent.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/nomime.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/nopath.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/nosuchfile.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/notitle.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/optic/index.html +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/storm/commands/invalidCMD +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/storm/commands/testpkg.baz +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/storm/commands/testpkgcmd +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/storm/modules/apimod +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/storm/modules/testmod +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/testpkg.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/workflows/testpkg-bam.newp +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/workflows/testpkg-baz.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/stormpkg/workflows/testpkg-foo.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/test.dat +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/files/testcore/cell.yaml +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/nopmod.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_axon.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_cmds_boss.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_cmds_cortex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_cmds_hive.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_common.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_cryotank.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_daemon.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_data.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_datamodel.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_exc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_glob.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_init.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_aha.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_ast.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_autodoc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_base.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_boss.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_cache.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_certdir.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_chop.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_cli.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_config.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_const.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_coro.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_crypto_coin.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_crypto_ecc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_crypto_passwd.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_crypto_tinfoil.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_datfile.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_dyndeps.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_encoding.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_gis.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_grammar.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_hashitem.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_hashset.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_health.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_hive.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_interval.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_jsonstor.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_layer.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_link.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_lmdbslab.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_module.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_msgpack.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_multislabseqn.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_node.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_output.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_platforms_linux.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_queue.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_ratelimit.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_reflect.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_rstorm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_scope.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_slaboffs.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_slabseqn.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_snap.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_storm_format.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormhttp.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_aha.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_auth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_backup.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_basex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_cache.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_cell.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_compression.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_cortex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_easyperm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_env.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_ethereum.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_gen.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_gis.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_hashes.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_hex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_imap.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_infosec.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_ipv6.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_iters.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_json.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_log.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_macro.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_mime.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_oauth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_pack.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_random.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_smtp.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_spooled.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_stats.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_stix.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_storm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_tabular.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_vault.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_xml.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormlib_yaml.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormsvc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_stormwhois.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_structlog.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_task.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_thishost.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_time.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_types.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_urlhelp.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lib_version.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lookup_iso3166.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_lookup_phonenum.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_mindmeld.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_auth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_belief.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_biz.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_crypto.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_dns.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_doc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_economic.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_geopol.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_geospace.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_gov_cn.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_gov_intl.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_gov_us.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_language.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_material.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_math.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_media.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_person.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_planning.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_science.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_syn.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_telco.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_model_transport.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_servers_axon.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_servers_cortex.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_servers_cryotank.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_servers_stemcell.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_servers_univ.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_telepath.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_aha.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_autodoc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_axon2axon.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_backup.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_cellauth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_changelog.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_cryo_cat.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_cryo_list.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_csvtool.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_docker_validate.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_easycert.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_feed.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_genpkg.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_guid.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_healthcheck.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_hiveload.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_hivesave.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_json2mpk.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_livebackup.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_modrole.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_moduser.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_promote.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_pullfile.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_pushfile.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_reload.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_rstorm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_snapshot.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_tools_storm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_utils.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_utils_getrefs.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/test_utils_stormcov.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tests/utils.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/aha/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/aha/clone.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/aha/easycert.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/aha/enroll.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/aha/list.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/aha/provision/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/aha/provision/service.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/aha/provision/user.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/autodoc.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/axon2axon.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/backup.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/cellauth.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/cmdr.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/cryo/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/cryo/cat.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/cryo/list.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/csvtool.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/docker/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/docker/validate.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/easycert.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/feed.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/genpkg.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/guid.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/healthcheck.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/hive/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/hive/load.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/hive/save.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/json2mpk.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/livebackup.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/modrole.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/moduser.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/promote.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/pullfile.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/pushfile.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/reload.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/rstorm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/snapshot.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/tools/storm.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/utils/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/utils/getrefs.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/utils/stormcov/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/utils/stormcov/plugin.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cashaddress/LICENSE +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cashaddress/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cashaddress/base58.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cashaddress/convert.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cashaddress/crypto.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cashaddress/tests/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cashaddress/tests/test_cashaddress.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/LICENSE +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/email/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/email/_parseaddr.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/email/utils.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/ipaddress.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/test/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/test/support/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/test/test_email/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/test/test_email/test_email.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/test/test_email/test_utils.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/cpython/lib/test/test_ipaddress.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/substrateinterface/LICENSE +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/substrateinterface/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/substrateinterface/tests/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/substrateinterface/tests/test_ss58.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/substrateinterface/utils/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/substrateinterface/utils/ss58.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/utils.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/LICENSE +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/constants.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/core/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/core/addresscodec/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/core/addresscodec/codec.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/core/addresscodec/exceptions.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/core/addresscodec/main.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/core/addresscodec/utils.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/tests/__init__.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/tests/test_codec.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/tests/test_main.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse/vendor/xrpl/tests/test_main_test_cases.py +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse.egg-info/dependency_links.txt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse.egg-info/requires.txt +0 -0
- {synapse-2.186.0 → synapse-2.188.0}/synapse.egg-info/top_level.txt +0 -0
|
@@ -4,7 +4,7 @@ build-backend = 'setuptools.build_meta'
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = 'synapse'
|
|
7
|
-
version = '2.
|
|
7
|
+
version = '2.188.0'
|
|
8
8
|
authors = [
|
|
9
9
|
{ name = 'The Vertex Project LLC', email = 'root@vertex.link'},
|
|
10
10
|
]
|
|
@@ -84,7 +84,6 @@ include-package-data = true
|
|
|
84
84
|
|
|
85
85
|
[tool.setuptools.package-data]
|
|
86
86
|
'synapse' = [
|
|
87
|
-
'assets/**',
|
|
88
87
|
'data/*.mpk',
|
|
89
88
|
'data/certs/**',
|
|
90
89
|
'data/attack-flow/**',
|
|
@@ -425,13 +425,14 @@ class CoreApi(s_cell.CellApi):
|
|
|
425
425
|
async for item in self.cell.syncLayerNodeEdits(layr.iden, offs, wait=wait):
|
|
426
426
|
yield item
|
|
427
427
|
|
|
428
|
-
async def getPropNorm(self, prop, valu):
|
|
428
|
+
async def getPropNorm(self, prop, valu, typeopts=None):
|
|
429
429
|
'''
|
|
430
430
|
Get the normalized property value based on the Cortex data model.
|
|
431
431
|
|
|
432
432
|
Args:
|
|
433
433
|
prop (str): The property to normalize.
|
|
434
434
|
valu: The value to normalize.
|
|
435
|
+
typeopts: A Synapse type opts dictionary used to further normalize the value.
|
|
435
436
|
|
|
436
437
|
Returns:
|
|
437
438
|
(tuple): A two item tuple, containing the normed value and the info dictionary.
|
|
@@ -440,15 +441,16 @@ class CoreApi(s_cell.CellApi):
|
|
|
440
441
|
s_exc.NoSuchProp: If the prop does not exist.
|
|
441
442
|
s_exc.BadTypeValu: If the value fails to normalize.
|
|
442
443
|
'''
|
|
443
|
-
return await self.cell.getPropNorm(prop, valu)
|
|
444
|
+
return await self.cell.getPropNorm(prop, valu, typeopts=typeopts)
|
|
444
445
|
|
|
445
|
-
async def getTypeNorm(self, name, valu):
|
|
446
|
+
async def getTypeNorm(self, name, valu, typeopts=None):
|
|
446
447
|
'''
|
|
447
448
|
Get the normalized type value based on the Cortex data model.
|
|
448
449
|
|
|
449
450
|
Args:
|
|
450
451
|
name (str): The type to normalize.
|
|
451
452
|
valu: The value to normalize.
|
|
453
|
+
typeopts: A Synapse type opts dictionary used to further normalize the value.
|
|
452
454
|
|
|
453
455
|
Returns:
|
|
454
456
|
(tuple): A two item tuple, containing the normed value and the info dictionary.
|
|
@@ -457,7 +459,7 @@ class CoreApi(s_cell.CellApi):
|
|
|
457
459
|
s_exc.NoSuchType: If the type does not exist.
|
|
458
460
|
s_exc.BadTypeValu: If the value fails to normalize.
|
|
459
461
|
'''
|
|
460
|
-
return await self.cell.getTypeNorm(name, valu)
|
|
462
|
+
return await self.cell.getTypeNorm(name, valu, typeopts=typeopts)
|
|
461
463
|
|
|
462
464
|
async def addForm(self, formname, basetype, typeopts, typeinfo):
|
|
463
465
|
'''
|
|
@@ -1350,6 +1352,17 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
1350
1352
|
'desc': 'Controls access to deleting specific extended model forms.',
|
|
1351
1353
|
'ex': 'model.form.del._foo:bar'},
|
|
1352
1354
|
|
|
1355
|
+
{'perm': ('model', 'type', 'add'), 'gate': 'cortex',
|
|
1356
|
+
'desc': 'Controls access to adding extended model types.'},
|
|
1357
|
+
{'perm': ('model', 'type', 'add', '<type>'), 'gate': 'cortex',
|
|
1358
|
+
'desc': 'Controls access to adding specific extended model types.',
|
|
1359
|
+
'ex': 'model.type.add._foo:bar'},
|
|
1360
|
+
{'perm': ('model', 'type', 'del'), 'gate': 'cortex',
|
|
1361
|
+
'desc': 'Controls access to deleting extended model types.'},
|
|
1362
|
+
{'perm': ('model', 'type', 'del', '<type>'), 'gate': 'cortex',
|
|
1363
|
+
'desc': 'Controls access to deleting specific extended model types.',
|
|
1364
|
+
'ex': 'model.type.del._foo:bar'},
|
|
1365
|
+
|
|
1353
1366
|
{'perm': ('model', 'prop', 'add'), 'gate': 'cortex',
|
|
1354
1367
|
'desc': 'Controls access to adding extended model properties.'},
|
|
1355
1368
|
{'perm': ('model', 'prop', 'add', '<form>'), 'gate': 'cortex',
|
|
@@ -1938,12 +1951,12 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
1938
1951
|
return
|
|
1939
1952
|
|
|
1940
1953
|
async def coreQueuePuts(self, name, items):
|
|
1941
|
-
await self._push('queue:puts', name, items)
|
|
1954
|
+
return await self._push('queue:puts', name, items)
|
|
1942
1955
|
|
|
1943
1956
|
@s_nexus.Pusher.onPush('queue:puts', passitem=True)
|
|
1944
1957
|
async def _coreQueuePuts(self, name, items, nexsitem):
|
|
1945
1958
|
nexsoff, nexsmesg = nexsitem
|
|
1946
|
-
await self.multiqueue.puts(name, items, reqid=nexsoff)
|
|
1959
|
+
return await self.multiqueue.puts(name, items, reqid=nexsoff)
|
|
1947
1960
|
|
|
1948
1961
|
@s_nexus.Pusher.onPushAuto('queue:cull')
|
|
1949
1962
|
async def coreQueueCull(self, name, offs):
|
|
@@ -3183,12 +3196,19 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3183
3196
|
|
|
3184
3197
|
async def _loadExtModel(self):
|
|
3185
3198
|
|
|
3199
|
+
self.exttypes = self.cortexdata.getSubKeyVal('model:types:')
|
|
3186
3200
|
self.extforms = self.cortexdata.getSubKeyVal('model:forms:')
|
|
3187
3201
|
self.extprops = self.cortexdata.getSubKeyVal('model:props:')
|
|
3188
3202
|
self.extunivs = self.cortexdata.getSubKeyVal('model:univs:')
|
|
3189
3203
|
self.extedges = self.cortexdata.getSubKeyVal('model:edges:')
|
|
3190
3204
|
self.exttagprops = self.cortexdata.getSubKeyVal('model:tagprops:')
|
|
3191
3205
|
|
|
3206
|
+
for typename, basetype, typeopts, typeinfo in self.exttypes.values():
|
|
3207
|
+
try:
|
|
3208
|
+
self.model.addType(typename, basetype, typeopts, typeinfo)
|
|
3209
|
+
except Exception as e:
|
|
3210
|
+
logger.warning(f'Extended type ({typename}) error: {e}')
|
|
3211
|
+
|
|
3192
3212
|
for formname, basetype, typeopts, typeinfo in self.extforms.values():
|
|
3193
3213
|
try:
|
|
3194
3214
|
self.model.addType(formname, basetype, typeopts, typeinfo)
|
|
@@ -3238,6 +3258,9 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3238
3258
|
dict: A dictionary containing forms, form properties, universal properties and tag properties.
|
|
3239
3259
|
'''
|
|
3240
3260
|
ret = collections.defaultdict(list)
|
|
3261
|
+
for typename, basetype, typeopts, typeinfo in self.exttypes.values():
|
|
3262
|
+
ret['types'].append((typename, basetype, typeopts, typeinfo))
|
|
3263
|
+
|
|
3241
3264
|
for formname, basetype, typeopts, typeinfo in self.extforms.values():
|
|
3242
3265
|
ret['forms'].append((formname, basetype, typeopts, typeinfo))
|
|
3243
3266
|
|
|
@@ -3277,18 +3300,30 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3277
3300
|
emodl = await self.getExtModel()
|
|
3278
3301
|
amodl = collections.defaultdict(list)
|
|
3279
3302
|
|
|
3303
|
+
types = {info[0]: info for info in model.get('types', ())}
|
|
3280
3304
|
forms = {info[0]: info for info in model.get('forms', ())}
|
|
3281
3305
|
props = {(info[0], info[1]): info for info in model.get('props', ())}
|
|
3282
3306
|
tagprops = {info[0]: info for info in model.get('tagprops', ())}
|
|
3283
3307
|
univs = {info[0]: info for info in model.get('univs', ())}
|
|
3284
3308
|
edges = {info[0]: info for info in model.get('edges', ())}
|
|
3285
3309
|
|
|
3310
|
+
etyps = {info[0]: info for info in emodl.get('types', ())}
|
|
3286
3311
|
efrms = {info[0]: info for info in emodl.get('forms', ())}
|
|
3287
3312
|
eprops = {(info[0], info[1]): info for info in emodl.get('props', ())}
|
|
3288
3313
|
etagprops = {info[0]: info for info in emodl.get('tagprops', ())}
|
|
3289
3314
|
eunivs = {info[0]: info for info in emodl.get('univs', ())}
|
|
3290
3315
|
eedges = {info[0]: info for info in emodl.get('edges', ())}
|
|
3291
3316
|
|
|
3317
|
+
for (name, info) in types.items():
|
|
3318
|
+
enfo = etyps.get(name)
|
|
3319
|
+
if enfo is None:
|
|
3320
|
+
amodl['types'].append(info)
|
|
3321
|
+
continue
|
|
3322
|
+
if enfo == info:
|
|
3323
|
+
continue
|
|
3324
|
+
mesg = f'Extended type definition differs from existing definition for {name}.'
|
|
3325
|
+
raise s_exc.BadTypeDef(mesg=mesg, name=name)
|
|
3326
|
+
|
|
3292
3327
|
for (name, info) in forms.items():
|
|
3293
3328
|
enfo = efrms.get(name)
|
|
3294
3329
|
if enfo is None:
|
|
@@ -3341,6 +3376,9 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3341
3376
|
mesg = f'Extended edge definition differs from existing definition for {info[0]}'
|
|
3342
3377
|
raise s_exc.BadEdgeDef(mesg=mesg, n1form=n1form, verb=verb, n2form=n2form)
|
|
3343
3378
|
|
|
3379
|
+
for typename, basetype, typeopts, typeinfo in amodl['types']:
|
|
3380
|
+
await self.addType(typename, basetype, typeopts, typeinfo)
|
|
3381
|
+
|
|
3344
3382
|
for formname, basetype, typeopts, typeinfo in amodl['forms']:
|
|
3345
3383
|
await self.addForm(formname, basetype, typeopts, typeinfo)
|
|
3346
3384
|
|
|
@@ -3405,9 +3443,15 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3405
3443
|
if not formname.startswith('_'):
|
|
3406
3444
|
mesg = 'Extended form must begin with "_"'
|
|
3407
3445
|
raise s_exc.BadFormDef(form=formname, mesg=mesg)
|
|
3446
|
+
|
|
3408
3447
|
if self.model.form(formname) is not None:
|
|
3409
3448
|
mesg = f'Form name already exists: {formname}'
|
|
3410
3449
|
raise s_exc.DupFormName(mesg=mesg)
|
|
3450
|
+
|
|
3451
|
+
if self.model.type(formname) is not None:
|
|
3452
|
+
mesg = f'Type already exists: {formname}'
|
|
3453
|
+
raise s_exc.DupTypeName.init(formname)
|
|
3454
|
+
|
|
3411
3455
|
return await self._push('model:form:add', formname, basetype, typeopts, typeinfo)
|
|
3412
3456
|
|
|
3413
3457
|
@s_nexus.Pusher.onPush('model:form:add')
|
|
@@ -3462,6 +3506,74 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
3462
3506
|
await self.fire('core:extmodel:change', form=formname, act='del', type='form')
|
|
3463
3507
|
await self.feedBeholder('model:form:del', {'form': formname})
|
|
3464
3508
|
|
|
3509
|
+
async def addType(self, typename, basetype, typeopts, typeinfo):
|
|
3510
|
+
if not isinstance(typeopts, dict):
|
|
3511
|
+
mesg = 'Type options should be a dict.'
|
|
3512
|
+
raise s_exc.BadArg(type=typename, mesg=mesg)
|
|
3513
|
+
|
|
3514
|
+
if not isinstance(typeinfo, dict):
|
|
3515
|
+
mesg = 'Type info should be a dict.'
|
|
3516
|
+
raise s_exc.BadArg(type=typename, mesg=mesg)
|
|
3517
|
+
|
|
3518
|
+
if not typename.startswith('_'):
|
|
3519
|
+
mesg = 'Extended type must begin with "_".'
|
|
3520
|
+
raise s_exc.BadTypeDef(type=typename, mesg=mesg)
|
|
3521
|
+
|
|
3522
|
+
if self.model.type(typename) is not None:
|
|
3523
|
+
raise s_exc.DupTypeName.init(typename)
|
|
3524
|
+
|
|
3525
|
+
if (base := self.model.type(basetype)) is None:
|
|
3526
|
+
mesg = f'Specified base type {basetype} does not exist.'
|
|
3527
|
+
raise s_exc.NoSuchType(mesg=mesg, name=basetype)
|
|
3528
|
+
|
|
3529
|
+
base.clone(typeopts)
|
|
3530
|
+
|
|
3531
|
+
return await self._push('model:type:add', typename, basetype, typeopts, typeinfo)
|
|
3532
|
+
|
|
3533
|
+
@s_nexus.Pusher.onPush('model:type:add')
|
|
3534
|
+
async def _addType(self, typename, basetype, typeopts, typeinfo):
|
|
3535
|
+
if self.model.type(typename) is not None:
|
|
3536
|
+
return
|
|
3537
|
+
|
|
3538
|
+
ifaces = typeinfo.get('interfaces')
|
|
3539
|
+
|
|
3540
|
+
if ifaces and 'taxonomy' in ifaces:
|
|
3541
|
+
logger.warning(f'{typename} is using the deprecated taxonomy interface, updating to meta:taxonomy.')
|
|
3542
|
+
|
|
3543
|
+
ifaces = set(ifaces)
|
|
3544
|
+
ifaces.remove('taxonomy')
|
|
3545
|
+
ifaces.add('meta:taxonomy')
|
|
3546
|
+
typeinfo['interfaces'] = tuple(ifaces)
|
|
3547
|
+
|
|
3548
|
+
self.model.addType(typename, basetype, typeopts, typeinfo)
|
|
3549
|
+
|
|
3550
|
+
self.exttypes.set(typename, (typename, basetype, typeopts, typeinfo))
|
|
3551
|
+
await self.fire('core:extmodel:change', name=typename, act='add', type='type')
|
|
3552
|
+
|
|
3553
|
+
if (_type := self.model.type(typename)) is not None:
|
|
3554
|
+
await self.feedBeholder('model:type:add', {'type': _type.pack()})
|
|
3555
|
+
|
|
3556
|
+
async def delType(self, typename):
|
|
3557
|
+
if not typename.startswith('_'):
|
|
3558
|
+
mesg = 'Extended type must begin with "_".'
|
|
3559
|
+
raise s_exc.BadTypeDef(type=typename, mesg=mesg)
|
|
3560
|
+
|
|
3561
|
+
if self.model.type(typename) is None:
|
|
3562
|
+
raise s_exc.NoSuchType.init(typename)
|
|
3563
|
+
|
|
3564
|
+
return await self._push('model:type:del', typename)
|
|
3565
|
+
|
|
3566
|
+
@s_nexus.Pusher.onPush('model:type:del')
|
|
3567
|
+
async def _delType(self, typename):
|
|
3568
|
+
if self.model.type(typename) is None:
|
|
3569
|
+
return
|
|
3570
|
+
|
|
3571
|
+
self.model.delType(typename)
|
|
3572
|
+
|
|
3573
|
+
self.exttypes.pop(typename, None)
|
|
3574
|
+
await self.fire('core:extmodel:change', name=typename, act='del', type='type')
|
|
3575
|
+
await self.feedBeholder('model:type:del', {'type': typename})
|
|
3576
|
+
|
|
3465
3577
|
async def addFormProp(self, form, prop, tdef, info):
|
|
3466
3578
|
if not isinstance(tdef, tuple):
|
|
3467
3579
|
mesg = 'Form property type definitions should be a tuple.'
|
|
@@ -6282,13 +6394,14 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
6282
6394
|
logger.exception('mod load fail: %s' % (ctor,))
|
|
6283
6395
|
return None
|
|
6284
6396
|
|
|
6285
|
-
async def getPropNorm(self, prop, valu):
|
|
6397
|
+
async def getPropNorm(self, prop, valu, typeopts=None):
|
|
6286
6398
|
'''
|
|
6287
6399
|
Get the normalized property value based on the Cortex data model.
|
|
6288
6400
|
|
|
6289
6401
|
Args:
|
|
6290
6402
|
prop (str): The property to normalize.
|
|
6291
6403
|
valu: The value to normalize.
|
|
6404
|
+
typeopts: A Synapse type opts dictionary used to further normalize the value.
|
|
6292
6405
|
|
|
6293
6406
|
Returns:
|
|
6294
6407
|
(tuple): A two item tuple, containing the normed value and the info dictionary.
|
|
@@ -6301,16 +6414,22 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
6301
6414
|
if pobj is None:
|
|
6302
6415
|
raise s_exc.NoSuchProp(mesg=f'The property {prop} does not exist.',
|
|
6303
6416
|
prop=prop)
|
|
6304
|
-
|
|
6417
|
+
|
|
6418
|
+
tobj = pobj.type
|
|
6419
|
+
if typeopts:
|
|
6420
|
+
tobj = tobj.clone(typeopts)
|
|
6421
|
+
|
|
6422
|
+
norm, info = tobj.norm(valu)
|
|
6305
6423
|
return norm, info
|
|
6306
6424
|
|
|
6307
|
-
async def getTypeNorm(self, name, valu):
|
|
6425
|
+
async def getTypeNorm(self, name, valu, typeopts=None):
|
|
6308
6426
|
'''
|
|
6309
6427
|
Get the normalized type value based on the Cortex data model.
|
|
6310
6428
|
|
|
6311
6429
|
Args:
|
|
6312
6430
|
name (str): The type to normalize.
|
|
6313
6431
|
valu: The value to normalize.
|
|
6432
|
+
typeopts: A Synapse type opts dictionary used to further normalize the value.
|
|
6314
6433
|
|
|
6315
6434
|
Returns:
|
|
6316
6435
|
(tuple): A two item tuple, containing the normed value and the info dictionary.
|
|
@@ -6323,6 +6442,9 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
6323
6442
|
if tobj is None:
|
|
6324
6443
|
raise s_exc.NoSuchType(mesg=f'The type {name} does not exist.',
|
|
6325
6444
|
name=name)
|
|
6445
|
+
if typeopts:
|
|
6446
|
+
tobj = tobj.clone(typeopts)
|
|
6447
|
+
|
|
6326
6448
|
norm, info = tobj.norm(valu)
|
|
6327
6449
|
return norm, info
|
|
6328
6450
|
|
|
@@ -6411,6 +6533,8 @@ class Cortex(s_oauth.OAuthMixin, s_cell.Cell): # type: ignore
|
|
|
6411
6533
|
if appt is not None:
|
|
6412
6534
|
return appt.pack()
|
|
6413
6535
|
|
|
6536
|
+
self.auth.reqNoAuthGate(iden)
|
|
6537
|
+
|
|
6414
6538
|
user = await self.auth.reqUser(cdef['creator'])
|
|
6415
6539
|
|
|
6416
6540
|
cdef = await self.agenda.add(cdef)
|
|
@@ -853,13 +853,17 @@ class Model:
|
|
|
853
853
|
for _, mdef in mods:
|
|
854
854
|
|
|
855
855
|
for formname, forminfo, propdefs in mdef.get('forms', ()):
|
|
856
|
-
self.addForm(formname, forminfo, propdefs)
|
|
856
|
+
self.addForm(formname, forminfo, propdefs, checks=False)
|
|
857
857
|
|
|
858
858
|
# now we can load edge definitions...
|
|
859
859
|
for _, mdef in mods:
|
|
860
860
|
for etype, einfo in mdef.get('edges', ()):
|
|
861
861
|
self.addEdge(etype, einfo)
|
|
862
862
|
|
|
863
|
+
# now we can check the forms display settings...
|
|
864
|
+
for form in self.forms.values():
|
|
865
|
+
self._checkFormDisplay(form)
|
|
866
|
+
|
|
863
867
|
def addEdge(self, edgetype, edgeinfo):
|
|
864
868
|
|
|
865
869
|
n1form, verb, n2form = edgetype
|
|
@@ -915,7 +919,7 @@ class Model:
|
|
|
915
919
|
self.types[typename] = newtype
|
|
916
920
|
self._modeldef['types'].append(newtype.getTypeDef())
|
|
917
921
|
|
|
918
|
-
def addForm(self, formname, forminfo, propdefs):
|
|
922
|
+
def addForm(self, formname, forminfo, propdefs, checks=True):
|
|
919
923
|
|
|
920
924
|
if not s_grammar.isFormName(formname):
|
|
921
925
|
mesg = f'Invalid form name {formname}'
|
|
@@ -949,7 +953,8 @@ class Model:
|
|
|
949
953
|
for ifname in form.type.info.get('interfaces', ()):
|
|
950
954
|
self._addFormIface(form, ifname)
|
|
951
955
|
|
|
952
|
-
|
|
956
|
+
if checks:
|
|
957
|
+
self._checkFormDisplay(form)
|
|
953
958
|
|
|
954
959
|
self.formprefixcache.clear()
|
|
955
960
|
|
|
@@ -1029,10 +1034,21 @@ class Model:
|
|
|
1029
1034
|
return
|
|
1030
1035
|
|
|
1031
1036
|
if self.propsbytype.get(typename):
|
|
1032
|
-
|
|
1037
|
+
mesg = f'Cannot delete type {typename} as it is still in use by properties.'
|
|
1038
|
+
raise s_exc.CantDelType(mesg=mesg, name=typename)
|
|
1039
|
+
|
|
1040
|
+
for _type in self.types.values():
|
|
1041
|
+
if typename in _type.info['bases']:
|
|
1042
|
+
mesg = f'Cannot delete type {typename} as it is still in use by other types.'
|
|
1043
|
+
raise s_exc.CantDelType(mesg=mesg, name=typename)
|
|
1044
|
+
|
|
1045
|
+
if _type.isarray and _type.arraytype.name == typename:
|
|
1046
|
+
mesg = f'Cannot delete type {typename} as it is still in use by array types.'
|
|
1047
|
+
raise s_exc.CantDelType(mesg=mesg, name=typename)
|
|
1033
1048
|
|
|
1034
1049
|
self.types.pop(typename, None)
|
|
1035
1050
|
self.propsbytype.pop(typename, None)
|
|
1051
|
+
self.arraysbytype.pop(typename, None)
|
|
1036
1052
|
|
|
1037
1053
|
def _addFormUniv(self, form, name, tdef, info):
|
|
1038
1054
|
|
|
@@ -193,6 +193,13 @@ class DupTagPropName(SynErr): pass
|
|
|
193
193
|
class DupUserName(SynErr): pass
|
|
194
194
|
class DupStormSvc(SynErr): pass
|
|
195
195
|
|
|
196
|
+
class DupTypeName(SynErr):
|
|
197
|
+
@classmethod
|
|
198
|
+
def init(cls, name, mesg=None):
|
|
199
|
+
if mesg is None:
|
|
200
|
+
mesg = f'Type already exists: {name}.'
|
|
201
|
+
return DupTypeName(mesg=mesg, name=name)
|
|
202
|
+
|
|
196
203
|
class DupEdgeType(SynErr):
|
|
197
204
|
|
|
198
205
|
@classmethod
|
|
@@ -245,6 +252,13 @@ class NoSuchForm(SynErr):
|
|
|
245
252
|
mesg = f'No form named {name}.'
|
|
246
253
|
return NoSuchForm(mesg=mesg, name=name)
|
|
247
254
|
|
|
255
|
+
class NoSuchType(SynErr):
|
|
256
|
+
@classmethod
|
|
257
|
+
def init(cls, name, mesg=None):
|
|
258
|
+
if mesg is None:
|
|
259
|
+
mesg = f'No type named {name}.'
|
|
260
|
+
return NoSuchType(mesg=mesg, name=name)
|
|
261
|
+
|
|
248
262
|
class NoSuchProp(SynErr):
|
|
249
263
|
|
|
250
264
|
@classmethod
|
|
@@ -289,7 +303,6 @@ class NoSuchPath(SynErr): pass
|
|
|
289
303
|
class NoSuchPivot(SynErr): pass
|
|
290
304
|
class NoSuchUniv(SynErr): pass
|
|
291
305
|
class NoSuchRole(SynErr): pass
|
|
292
|
-
class NoSuchType(SynErr): pass
|
|
293
306
|
class NoSuchUser(SynErr): pass
|
|
294
307
|
class NoSuchVar(SynErr): pass
|
|
295
308
|
class NoSuchView(SynErr): pass
|
|
@@ -731,7 +731,7 @@ class SubQuery(Oper):
|
|
|
731
731
|
async with runt.getSubRuntime(self.kids[0]) as runt:
|
|
732
732
|
async for valunode, valupath in runt.execute():
|
|
733
733
|
|
|
734
|
-
retn.append(valunode
|
|
734
|
+
retn.append(valunode)
|
|
735
735
|
|
|
736
736
|
if len(retn) > limit:
|
|
737
737
|
query = self.kids[0].text
|
|
@@ -1387,7 +1387,7 @@ class SwitchCase(Oper):
|
|
|
1387
1387
|
varv = await self.kids[0].compute(runt, path)
|
|
1388
1388
|
|
|
1389
1389
|
# TODO: when we have var type system, do type-aware comparison
|
|
1390
|
-
subq = self.cases.get(
|
|
1390
|
+
subq = self.cases.get(await s_stormtypes.tostr(varv))
|
|
1391
1391
|
if subq is None and self.defcase is not None:
|
|
1392
1392
|
subq = self.defcase
|
|
1393
1393
|
|
|
@@ -1401,7 +1401,7 @@ class SwitchCase(Oper):
|
|
|
1401
1401
|
# no nodes and a runt safe value should execute
|
|
1402
1402
|
varv = await self.kids[0].compute(runt, None)
|
|
1403
1403
|
|
|
1404
|
-
subq = self.cases.get(
|
|
1404
|
+
subq = self.cases.get(await s_stormtypes.tostr(varv))
|
|
1405
1405
|
if subq is None and self.defcase is not None:
|
|
1406
1406
|
subq = self.defcase
|
|
1407
1407
|
|
|
@@ -4177,9 +4177,11 @@ class EditPropSet(Edit):
|
|
|
4177
4177
|
# runt node property permissions are enforced by the callback
|
|
4178
4178
|
runt.confirmPropSet(prop)
|
|
4179
4179
|
|
|
4180
|
+
isndef = isinstance(prop.type, s_types.Ndef)
|
|
4180
4181
|
isarray = isinstance(prop.type, s_types.Array)
|
|
4181
4182
|
|
|
4182
4183
|
try:
|
|
4184
|
+
|
|
4183
4185
|
if isarray and isinstance(rval, SubQuery):
|
|
4184
4186
|
valu = await rval.compute_array(runt, path)
|
|
4185
4187
|
expand = False
|
|
@@ -4187,7 +4189,7 @@ class EditPropSet(Edit):
|
|
|
4187
4189
|
else:
|
|
4188
4190
|
valu = await rval.compute(runt, path)
|
|
4189
4191
|
|
|
4190
|
-
valu = await s_stormtypes.tostor(valu)
|
|
4192
|
+
valu = await s_stormtypes.tostor(valu, isndef=isndef)
|
|
4191
4193
|
|
|
4192
4194
|
if isadd or issub:
|
|
4193
4195
|
|
|
@@ -493,6 +493,11 @@ class Auth(s_nexus.Pusher):
|
|
|
493
493
|
raise s_exc.NoSuchAuthGate(iden=iden, mesg=mesg)
|
|
494
494
|
return gate
|
|
495
495
|
|
|
496
|
+
def reqNoAuthGate(self, iden):
|
|
497
|
+
if self.authgates.get(iden) is not None:
|
|
498
|
+
mesg = f'An auth gate already exists with iden: ({iden}).'
|
|
499
|
+
raise s_exc.DupIden(iden=iden, mesg=mesg)
|
|
500
|
+
|
|
496
501
|
def checkUserLimit(self):
|
|
497
502
|
'''
|
|
498
503
|
Check if we're at the specified user limit.
|
|
@@ -570,6 +575,8 @@ class Auth(s_nexus.Pusher):
|
|
|
570
575
|
if user is not None:
|
|
571
576
|
return
|
|
572
577
|
|
|
578
|
+
self.reqNoAuthGate(iden)
|
|
579
|
+
|
|
573
580
|
info = {
|
|
574
581
|
'iden': iden,
|
|
575
582
|
'name': name,
|
|
@@ -626,6 +633,8 @@ class Auth(s_nexus.Pusher):
|
|
|
626
633
|
if role is not None:
|
|
627
634
|
return
|
|
628
635
|
|
|
636
|
+
self.reqNoAuthGate(iden)
|
|
637
|
+
|
|
629
638
|
info = {
|
|
630
639
|
'iden': iden,
|
|
631
640
|
'name': name,
|
|
@@ -351,7 +351,7 @@ class Hive(s_nexus.Pusher, s_telepath.Aware):
|
|
|
351
351
|
await self.cell.auth._hndlsetUserProfileValu(iden, name, valu)
|
|
352
352
|
|
|
353
353
|
elif full[0] == 'cellvers':
|
|
354
|
-
self.cell.setCellVers(full[-1], valu, nexs=False)
|
|
354
|
+
await self.cell.setCellVers(full[-1], valu, nexs=False)
|
|
355
355
|
|
|
356
356
|
node = await self._getHiveNode(full)
|
|
357
357
|
|
|
@@ -1056,13 +1056,14 @@ class ModelNormV1(Handler):
|
|
|
1056
1056
|
|
|
1057
1057
|
propname = body.get('prop')
|
|
1058
1058
|
propvalu = body.get('value')
|
|
1059
|
+
typeopts = body.get('typeopts')
|
|
1059
1060
|
|
|
1060
1061
|
if propname is None:
|
|
1061
1062
|
self.sendRestErr('MissingField', 'The property normalization API requires a prop name.')
|
|
1062
1063
|
return
|
|
1063
1064
|
|
|
1064
1065
|
try:
|
|
1065
|
-
valu, info = await self.cell.getPropNorm(propname, propvalu)
|
|
1066
|
+
valu, info = await self.cell.getPropNorm(propname, propvalu, typeopts=typeopts)
|
|
1066
1067
|
except s_exc.NoSuchProp:
|
|
1067
1068
|
return self.sendRestErr('NoSuchProp', 'The property {propname} does not exist.')
|
|
1068
1069
|
except Exception as e:
|