Commit Graph

1577 Commits (7de5c458bb155bc72ffb2f245c1c4f0777033465)

Author SHA1 Message Date
Chris Lenk 7de5c458bb Fix import sort order 2021-01-15 10:27:39 -05:00
Chris Lenk a3f20dde7a Use consistent import style in parsing.py 2021-01-15 10:27:23 -05:00
Michael Chisholm 5d016142cf Small tweaks: move the definition of DEFAULT_VERSION from the
top-level stix2 package to stix2.version but import it into
stix2.  This makes it possible for someone to get the symbol
without needing to import all of stix2.

Change an "import X" style import to "from X import Y" in
stix2/__init__.py to be consistent with the other imports in
that file.
2021-01-13 11:22:34 -05:00
Michael Chisholm f51e309775 Refactor stix2.parsing into more focused modules:
- stix2.registry, which contains the class mapping structure
  and code for scanning stix2 modules for its initial population
- stix2.registration, which contains code used to register custom
  STIX types with the registry
- stix2.parsing, which contains code for creating instances of
  registered stix2 classes from raw dicts.

This is intended to reduce circular import problems, by giving
dependent code the ability to import a module which has exactly
the functionality it needs, without pulling a lot of other stuff
it doesn't need.  Fewer imports means less chance of an import
cycle.
2021-01-08 22:08:33 -05:00
Chris Lenk 0866df0546 Merge branch 'khdesai-master'
Fixes #476.
2020-12-11 11:33:22 -05:00
Chris Lenk 71889b173f Touch up filesystem docs 2020-12-11 11:28:26 -05:00
Desai, Kartikey H 20a9bb316c Fix #476 2020-12-10 22:10:24 -06:00
Chris Lenk 5bddf9321e Bump version: 2.0.2 → 2.1.0 2020-11-20 17:37:58 -05:00
Chris Lenk a19eb54948 Update CHANGELOG for v2.1.0 2020-11-20 17:36:56 -05:00
Chris Lenk b55c3bb1df Fix pattern equivalence doc style for consistency 2020-11-20 16:34:11 -05:00
Chris Lenk f9e9c50db9
Merge pull request #474 from emmanvg/472-issue
fix ordering problem with Class definitions
2020-11-20 10:35:42 -05:00
Emmanuelle Vargas-Gonzalez 119364c889
Merge branch 'master' into 472-issue 2020-11-20 10:02:46 -05:00
Chris Lenk a82dc5e813
Merge pull request #475 from oasis-open/equivalence-indicator-patterns
Use pattern equivalence in indicators
2020-11-20 09:56:35 -05:00
Chris Lenk 5b174c8a86
Merge pull request #473 from emmanvg/471-issue
fix typo for Class X509V3ExtensionsType
2020-11-20 09:56:20 -05:00
Chris Lenk 53f451b097 Use pattern equivalence in indicators 2020-11-20 09:33:56 -05:00
Emmanuelle Vargas-Gonzalez e7242c9ae6 forgot one... 2020-11-19 08:48:57 -05:00
Emmanuelle Vargas-Gonzalez 49985cc51d fix ordering problem with Class definitions 2020-11-18 19:01:12 -05:00
Emmanuelle Vargas-Gonzalez c9bafaf5ae fix typo for Class X509V3ExtensionsType 2020-11-18 18:08:57 -05:00
Chris Lenk 3cef32edb2
Merge pull request #470 from chisholm/where_sighted_refs_types
Fix Sighting bug with reference type enforcement on where_sighted_refs
2020-11-16 17:12:21 -05:00
Michael Chisholm 169ef87bc2 pre-commit stylistic fixes 2020-11-16 15:10:06 -05:00
Michael Chisholm f5bbbe7a3b Fix bug with reference type enforcement on property
where_sighted_refs on Sighting.
2020-11-16 15:04:24 -05:00
Chris Lenk a751df32c6
Fix Location semantic equivalence check for Location objects without the latitude and longitude properties (#467)
* Fix Location semantic equivalence check for Location objects without the latitude and longitude properties.

Uses contribution from @zrush-mitre (#464).

Fixes #462.

* Remove a line
2020-11-10 12:55:17 -05:00
Chris Lenk cfb518a84b
Merge pull request #465 from oasis-open/equivalence-documentation
Equivalence module documentation fix
2020-10-18 22:03:35 -04:00
Chris Lenk e08a26a39c Correct variable name 2020-10-18 21:09:07 -04:00
Emmanuelle Vargas-Gonzalez bb3b1e141a add requirement to prevent breaking change to fail build 2020-10-16 17:36:20 -04:00
Emmanuelle Vargas-Gonzalez 92ab1227ed docstrings, changes to equivalence.ipynb 2020-10-16 17:12:52 -04:00
Emmanuelle Vargas-Gonzalez fc600df5f1 update .gitignore and conf.py 2020-10-16 16:43:12 -04:00
Emmanuelle Vargas-Gonzalez 5ec001d324 add new rst files and directories 2020-10-16 16:42:17 -04:00
Emmanuelle Vargas-Gonzalez 7d99a9dab2 remove docs in wrong locations or directories 2020-10-16 16:40:25 -04:00
Emmanuelle Vargas-Gonzalez fb705c4885
Graph Equivalence (#449)
* new packages for graph and object-based semantic equivalence

* new method graphically_equivalent for Environment, move equivalence methods out

* object equivalence function, methods used for object-based moved here.

* new graph_equivalence methods

* add notes

* add support for versioning checks (default disabled)

* new tests to cover graph equivalence and new methods

* added more imports to environment.py to prevent breaking changes

* variable changes, new fields for checks, reset depth check per call

* flexibility when object is not available on graph.

* refactor debug logging message

* new file stix2.equivalence.graph_equivalence.rst and stix2.equivalence.object_equivalence.rst for docs

* API documentation for new modules

* additional text required to build docs

* add more test methods for list_semantic_check an graphically_equivalent/versioning

* add logging debug messages, code clean-up

* include individual scoring on results dict, fix issue on list_semantic_check not keeping highest score

* include results as summary in prop_scores, minor tweaks

* Update __init__.py

doctrings update

* apply feedback from pull request

- rename semantic_check to reference_check
- rename modules to graph and object respectively to eliminate redundancy
- remove created_by_ref and object_marking_refs from graph WEIGHTS and rebalance

* update docs/ entries

* add more checks, make max score based on actual objects checked instead of the full list, only create entry when type is present in WEIGHTS dictionary

update tests to reflect changes

* rename package patterns -> pattern

* documentation, moving weights around

* more documentation moving

* rename WEIGHTS variable for graph_equivalence
2020-10-16 11:35:26 -04:00
Chris Lenk d17d01d165
Merge pull request #444 from chisholm/comp_ds_unversioned_objs
Update CompositeDataSource and deduplicate() support for unversioned objects
2020-10-15 08:57:55 -04:00
Chris Lenk edfcb1641a
Merge pull request #460 from emmanvg/459-issue
TAXIICollectionSource custom object handling fix
2020-09-30 09:55:52 -04:00
Emmanuelle Vargas-Gonzalez 7b35b82996 TAXIICollectionSource custom object handling fix 2020-09-29 11:21:02 -04:00
Chris Lenk 3267036f33
Merge pull request #452 from oasis-open/api-reference-for-pattern-eq
Expose API Reference for Pattern Equivalence - ReadTheDocs
2020-09-18 13:52:02 -04:00
Chris Lenk ddb25c544a
Merge pull request #456 from chisholm/fix_comparison_expression_root_type
Fix object type tracking for AST comparison expression 'AND'
2020-09-18 09:59:53 -04:00
Chris Lenk 5a34d529a8
Merge pull request #454 from chisholm/fix_make_constant
Fix AST make_constant() function to create TimestampConstants
2020-09-16 09:23:15 -04:00
Michael Chisholm 7d64764ae3 Fix object type tracking for comparison expressions in the pattern
AST module.
2020-09-14 15:42:36 -04:00
Michael Chisholm bad42e5b78 pre-commit stylistic junk 2020-09-12 19:33:56 -04:00
Michael Chisholm ff35e8a01b Add some unit tests for the AST make_constant() function. 2020-09-12 19:14:29 -04:00
Michael Chisholm f2691e89f5 Fix make_constant() in the AST module, to always return a
constant.  It was failing to do so for timestamps, instead
returning a STIXdatetime object.
2020-09-12 19:14:29 -04:00
Emmanuelle Vargas-Gonzalez 639769d885 expose API Reference for Pattern Equivalence for ReadTheDocs 2020-09-11 13:54:13 -04:00
Chris Lenk 72a032c6e3
Merge pull request #451 from oasis-open/fix-read-the-docs
Fix for ReadTheDocs
2020-09-11 11:24:32 -04:00
Emmanuelle Vargas-Gonzalez 122c3694e4
Update requirements.txt 2020-09-11 11:15:38 -04:00
Emmanuelle Vargas-Gonzalez a7083c01dd add pygments in requirements.txt 2020-09-11 11:11:30 -04:00
Chris Lenk 18c6f49e5c
Merge pull request #445 from chisholm/pattern_equivalence
Pattern equivalence
2020-09-11 09:25:58 -04:00
Michael Chisholm b5015b74ba pre-commit stylistic fixes 2020-08-19 12:10:51 -04:00
Michael Chisholm 3c25410a9d pre-commit stylistic fix 2020-08-19 11:51:47 -04:00
Chris Lenk 18ee0d831e
Merge pull request #443 from chisholm/add_pattern_validator_version
Add a version restriction to the stix2-patterns dependency
2020-08-18 09:11:08 -04:00
Michael Chisholm 7fa3c78dea Update CompositeDataSource and deduplicate() to handle unversioned
objects, including 2.1 SCOs.  Updated some unit tests to test
this.  Fixed a typo in a 2.0 unit test (2.0 deduplicate() test).
2020-08-17 18:38:29 -04:00
Michael Chisholm 241d253a29 Add a version restriction to the stix2-patterns dependency, to
ensure users aren't tripped up by old versions.
2020-08-17 13:49:19 -04:00