Chris Lenk
14dce03616
Provide default for revoked, sighting:summary.
...
This allows filter on un-revoked objects. Changes default JSONEncoder to
drop optional properties with default values in the spec if set to the
default value. They can be included by passing
include_optional_defaults=True to serialize().
2018-04-16 14:37:07 -04:00
Chris Lenk
194672ee2b
Tweak FilterSet docstrings style
2018-04-13 17:11:07 -04:00
Chris Lenk
14d3543906
Merge branch 'master' into invalid-type-names
2018-04-13 16:38:17 -04:00
Chris Lenk
f127d145c4
Merge pull request #166 from oasis-open/139-dict-filter-value
...
139 dict filter value
2018-04-13 16:35:32 -04:00
=
6df23e7268
removed unecessary checks, (clearly I need to review python ref model)
2018-04-13 16:06:31 -04:00
Chris Lenk
a475fc6dbd
Disallow invalid type names in custom classes
2018-04-13 14:52:00 -04:00
Chris Lenk
a8b8bfe88b
Merge pull request #165 from oasis-open/161-dictionaryproperty-fixes
...
Allow dictionaries in a ListProperty
2018-04-13 14:39:04 -04:00
=
a614a78e22
rm testing lines
2018-04-13 14:21:44 -04:00
=
eba1844535
tweak to filter property checking to make sure original object property is not altered; added tests for this as well
2018-04-13 14:01:33 -04:00
Chris Lenk
58be98104f
Merge pull request #164 from oasis-open/157-allow-generic-custom-observables
...
Allow generic custom observables and custom observable extensions
2018-04-13 12:38:02 -04:00
=
abe252e248
Merge branch 'master' of https://github.com/oasis-open/cti-python-stix2 into 139-dict-filter-value
2018-04-13 12:35:47 -04:00
=
61e091baf3
added FilterSet class for internal use; modified certain parsing processes to make deepcopies or suppled values(dicts) so as to taint original user passed data; added Filter logic to handle datetime objects; added/adjusted tests accordingly
2018-04-13 12:25:12 -04:00
Chris Lenk
fc6a33b23e
Disallow missing 'type' property with allow_custom
...
There was a bug where if you allowed custom content the library would parse an
object without the required 'type' property.
2018-04-13 11:18:56 -04:00
=
1a1e5e1616
WIP- getting close though
2018-04-13 11:08:03 -04:00
Emmanuelle Vargas-Gonzalez
a8b7be88d0
Add support for pretty print case list of dictionaries.
2018-04-13 11:04:07 -04:00
Chris Lenk
d08be151f7
Allow a ListProperty of DictionaryProperties
2018-04-12 21:26:48 -04:00
Chris Lenk
91376586d4
Simplify allowing custom observables/extensions
2018-04-12 16:33:08 -04:00
Chris Lenk
9ef5b395a8
Fix allowing custom observables and extensions
2018-04-12 14:20:24 -04:00
=
31fc1c369a
still WIP
2018-04-12 12:03:07 -04:00
=
333fea4d18
merge conflicts
2018-04-11 21:08:37 -04:00
=
ba6fa595c6
WIP - finding more issues with allowing dicts as filters
2018-04-11 20:54:16 -04:00
Chris Lenk
3e048ef325
Fix deprecated 3.6 backslash-character pairs
...
(https://docs.python.org/3/whatsnew/3.6.html#deprecated-python-behavior )
2018-04-11 15:46:17 -04:00
=
27647091a5
WIP - just at stash point
2018-04-11 13:36:52 -04:00
Chris Lenk
b633fd3785
WIP: Allow custom observables, extensions
2018-04-10 12:54:27 -04:00
Chris Lenk
5c5ca1f21c
Move 'extensions' property to custom Observables
...
... from custom Observable extensions (an extension doesn't need an
'extensions' property).
2018-04-09 15:35:08 -04:00
Chris Lenk
b851afba01
Req. custom extension properties as list of tuples
2018-04-09 15:34:39 -04:00
Chris Lenk
f83d9a56b5
Clean up documentation
2018-04-09 13:29:53 -04:00
Chris Lenk
1d06e642a4
Bump and pin nbsphinx version
2018-04-09 09:55:29 -04:00
Emmanuelle Vargas-Gonzalez
1ff640de3c
Moved some test methods here
2018-04-06 14:24:15 -04:00
Emmanuelle Vargas-Gonzalez
cd85683f2b
WIP: Cleaned test_datastore to only include base store tests
2018-04-06 14:23:48 -04:00
Emmanuelle Vargas-Gonzalez
0d1729bbd7
Deleted test_filesystem in favor of test_datastore_filesystem.py
2018-04-06 14:20:39 -04:00
Emmanuelle Vargas-Gonzalez
80e4706ac4
Add some test objs previously in test_datastore.py
2018-04-06 14:19:51 -04:00
Emmanuelle Vargas-Gonzalez
c2e7cbb3e3
Moved from test_datastore.py -> new file test_datastore_taxii.py
2018-04-06 14:18:05 -04:00
Emmanuelle Vargas-Gonzalez
59ff0c4f26
Moved from test_datastore.py -> new file test_datastore_memory.py
2018-04-06 14:17:49 -04:00
Emmanuelle Vargas-Gonzalez
5c4472cbbd
Moved from test_datastore.py -> new file test_datastore_filters.py
2018-04-06 14:17:19 -04:00
Emmanuelle Vargas-Gonzalez
8f58f29358
Moved from test_datastore.py -> new file test_datastore_filesystem.py
2018-04-06 14:16:04 -04:00
Chris Lenk
e6e72856b3
Remove query_by_type()
...
Missed these earlier.
2018-04-05 11:22:50 -04:00
Greg Back
a1ad90d43f
Merge pull request #150 from oasis-open/38-workbench
...
Create Workbench layer
2018-04-05 10:09:23 -05:00
Chris Lenk
e3bbc39353
Fix bug with mutable default parameter
2018-04-05 10:07:35 -04:00
Chris Lenk
589c00064b
Remove query_by_type
...
It's not that much of a shortcut and we can add it back in later if it
makes sense.
2018-04-04 14:09:54 -04:00
Chris Lenk
f951b9b09e
Factor out dupl. code for creating list of filters
2018-04-04 13:50:41 -04:00
Greg Back
f61bc5e5ee
Merge pull request #154 from oasis-open/code-coverage
...
Increase code coverage, fix patterning bugs
2018-04-03 15:11:15 -05:00
Greg Back
537dff9d2a
Merge pull request #153 from oasis-open/118-allow-generic-obj
...
118-allow generic obj and 135- split up parse()
2018-04-03 15:06:25 -05:00
Chris Lenk
dd8f0f5c72
Increase code coverage slightly
...
An Environment will always have a CompositeDataSource, so there was no way
those exceptions could get raised.
2018-04-02 16:44:57 -04:00
Chris Lenk
3abfe7868a
Add more patterning tests
...
... and fix bugs detected in doing so
2018-04-02 16:38:04 -04:00
Chris Lenk
940afb0012
Require a type when querying by type
2018-04-02 09:54:22 -04:00
Emmanuelle Vargas-Gonzalez
0bb1bb37f1
Call parse() on stix_data
...
# Fix on MemorySource.load_from_file()
2018-04-02 07:40:25 -04:00
=
90834c5b95
docs and tests for parse() mod
2018-03-30 13:21:07 -04:00
Chris Lenk
d453bf6f1a
Add a couple granular markings tests
2018-03-30 13:12:51 -04:00
Chris Lenk
4a2ac6df3a
Add/fix workbench docs, rename add() -> save()
2018-03-30 12:04:31 -04:00
Chris Lenk
98cc86eef6
Fix workbench wrapped classes for `parse()`.
...
The wrapped classes need to be in the OBJ_MAP mapping, not just the
workbench.py globals.
2018-03-30 12:04:31 -04:00
Chris Lenk
b9bbd03481
Update workbench imports and documentation
...
Import a bunch of stuff so users can just "from stix2.workbench import *" and
not need to import other stuff (e.g. MarkingDefinition, Cyber Observable
Object classes, etc.) from stix2.
2018-03-30 12:04:31 -04:00
Chris Lenk
efede51453
Skip documenting some workbench stuff
2018-03-30 12:04:31 -04:00
Chris Lenk
e48e0886a8
Improve code coverage slightly
...
Environment will always have a CompositeDataSource, so the try/catches
in add_filter/s did not make sense.
2018-03-30 12:02:27 -04:00
Chris Lenk
4fb24f14de
Allow passing add'l filters to related_to()
2018-03-30 12:02:27 -04:00
Chris Lenk
61733ad899
Add functions to set ObjectFactory default values
2018-03-30 12:02:27 -04:00
Chris Lenk
fd6d9f74e9
Move query_by_type() to DataStoreMixin
2018-03-30 12:02:27 -04:00
Chris Lenk
eeb94562f9
Clean up DataStore return value documentation
2018-03-30 12:02:27 -04:00
Chris Lenk
53c2d4fadf
Allow add'l filters in workbench query functions
2018-03-30 12:02:27 -04:00
Chris Lenk
e91b71f300
Test adding a data source to the workbench
2018-03-30 12:02:27 -04:00
Chris Lenk
5285934034
Make Workbench use implicit ObjectFactory
...
This is needed to implement functions like `set_default_creator`.
The changes to Tox are so that the wrapping we do in workbench doesn't
affect the rest of our tests. If we test them all in one go, pytest will
import all the tests before running any of them. This will cause the
workbench versions of the SDO classes to be used in all tests.
2018-03-30 12:02:27 -04:00
Chris Lenk
b2613ca62c
Add Workbench wrapper functions
2018-03-30 12:02:27 -04:00
Chris Lenk
aeff8f4bc0
Create Workbench layer
...
Contains a default implicit Environment and functions to get all objects
a specific type.
2018-03-30 12:02:27 -04:00
=
89cf4bc38f
WIP:allow unknown custom objects to be processed by parse; WIP: splitting up parse utility into components; found bug in tests that wasnt providing for proper teardown cleaning, fixed
2018-03-29 11:49:30 -04:00
Greg Back
e92db2417a
Merge pull request #147 from oasis-open/119-taxii-filters
...
119 taxii filters
2018-03-28 15:24:28 -05:00
=
51dcd6c184
same as last commit
2018-03-22 11:46:49 -04:00
=
b1579ae265
same as last commit
2018-03-22 11:36:35 -04:00
=
9f19245c8a
modify tests for python 3.x acceptance
2018-03-22 11:23:48 -04:00
=
536e56836c
adding Filter check when the Filter property is 'type', checks the value has no underscores (issue #136 )
2018-03-22 10:59:07 -04:00
Michael K
383bf5755e
remove debug line
2018-03-21 22:06:46 -04:00
=
7880e4a89b
passing TAXII query params in correct format to taxii2client; patching bug where TAXII query filters were being applied again locally to STIX objects via Filters (which doesnt work)
2018-03-21 17:19:05 -04:00
Greg Back
3c2d877bc3
Merge pull request #145 from oasis-open/138-non-json-files
...
138 non json files
2018-03-21 13:37:27 -05:00
Emmanuelle Vargas-Gonzalez
eeb34ebbef
Change logic for case `isinstance(stix_data, list)``
2018-03-19 12:03:25 -04:00
Emmanuelle Vargas-Gonzalez
32cb62cca2
Make sure we return if there is nothing to add to the collection
2018-03-19 11:00:09 -04:00
Chris Lenk
4e5eb88458
Increase versioning code coverage slightly
2018-03-16 16:38:29 -04:00
Emmanuelle Vargas-Gonzalez
c98abb18f5
Fix docs
2018-03-16 14:26:41 -04:00
Emmanuelle Vargas-Gonzalez
7f9a3c49ea
Update TAXIICollectionSink.add() to use serialize(). Call parse() on dict objects. Pass UTF-8 strings to taxii2client. closes #134
2018-03-15 13:51:47 -04:00
=
2fbde05e6c
putting test files in stix type folder that exists on git (bc there are files in it)
2018-03-14 19:34:07 -04:00
=
f4558c0958
pre-commit errors
2018-03-14 19:09:25 -04:00
=
6f762e7ea0
woops forgot file, recommit of: more type checking of filesystem json files; added corresponding tests
2018-03-14 16:32:31 -04:00
=
af14cd4f88
more type checking of filesystem json files; added corresponding tests
2018-03-14 16:28:44 -04:00
Greg Back
5820fa0845
GH-138: ignore invalid JSON files.
2018-03-14 10:06:23 -05:00
Chris Lenk
955cad8385
Clarify serialization in documentation
2018-03-13 16:01:42 -04:00
Chris Lenk
f9523f24bf
Bump version: 0.5.0 → 0.5.1
2018-03-06 12:05:53 -05:00
Chris Lenk
35679e6a6b
Bump version: 0.4.0 → 0.5.0
2018-03-06 11:45:06 -05:00
Chris Lenk
5a71ef2e64
Fix allow_custom in functions calling new_version
2018-03-02 11:32:07 -05:00
Chris Lenk
1eab9b2832
Assume custom properties allowable in add_markings
2018-03-02 10:21:51 -05:00
Greg Back
307a85c8b1
Reorder modules for API documentation
2018-03-01 13:15:02 -06:00
Chris Lenk
eb2d87ce71
Rename "DataStore" class to "DataStoreMixin"
...
Fix #116 .
2018-03-01 11:27:37 -05:00
Chris Lenk
5f703509be
Rename "sources" subpackage to "datastore"
...
Fix #114 .
2018-03-01 09:04:42 -05:00
Chris Lenk
9402cff110
Merge pull request #131 from oasis-open/taxii_collection_source_404
...
Data source/store/sink changes
2018-02-27 17:04:14 -05:00
Chris Lenk
b6f14cdd4d
Fix MemoryStore docstrings
2018-02-27 16:53:05 -05:00
Chris Lenk
7bdf786f89
Remove deprecated tests
2018-02-27 12:17:26 -05:00
Chris Lenk
57eb709c48
Merge branch 'master' into taxii_collection_source_404
2018-02-26 17:08:28 -05:00
Chris Lenk
df57f4d159
Fix typos in datasources
2018-02-26 16:56:24 -05:00
Emmanuelle Vargas-Gonzalez
b6c22010bb
Fix imports for test_location.py
2018-02-23 08:52:34 -05:00
Emmanuelle Vargas-Gonzalez
d51f1014c7
Fix InstrusionSet 'last_seen' in 2.1
2018-02-23 08:24:26 -05:00
Emmanuelle Vargas-Gonzalez
06974c72f5
Merge branch 'master' of github.com:oasis-open/cti-python-stix2 into stix2.1
2018-02-23 08:21:16 -05:00
Chris Lenk
aaff2a3a04
Appease pycodestyle
2018-02-22 09:55:15 -05:00
Chris Lenk
2886ae9961
Add links to specs in STIX Objects' documentation
2018-02-21 16:46:13 -05:00
Chris Lenk
5427e79d71
Fix pycodestyle/isort issues
2018-02-19 15:03:20 -05:00
Chris Lenk
845934033e
Avoid checking valid refs when deepcopying
...
Using `deepcopy` on an Observable object that referenced another (e.g.
domain name -> resolves to -> IPv4 address) would fail because no
`_valid_refs` were available. Assuming that the references have
already been checked and are valid when using `deepcopy`, we can use a
special value ('*') to skip the valid_refs check.
This will also allow creating new versions of ObservedData objects that
contain related objects, since `new_version` calls `deepcopy`.
2018-02-19 14:44:28 -05:00
Greg Back
e2c9354d14
GH-121: Use correct property name for IntrusionSet.last_seen
...
Fix #121
2018-01-16 08:49:15 -06:00
Emmanuelle Vargas-Gonzalez
722d46c6c5
Merge branch 'master' of github.com:oasis-open/cti-python-stix2 into stix2.1
2017-12-08 09:36:59 -05:00
=
da8ae6a621
Merge branch 'taxii_collection_source_404' of https://github.com/oasis-open/cti-python-stix2 into taxii_collection_source_404
2017-12-01 11:33:34 -05:00
=
0c8dd7f47c
added docstring warning for utility function
2017-12-01 11:30:41 -05:00
Greg Back
126094106e
Merge branch 'master' into taxii_collection_source_404
2017-11-29 22:13:16 +00:00
=
742d249ee0
trying to fix timing bug
2017-11-29 12:50:13 -05:00
=
52a052d4dd
removing debug lines; attemting to fix a Travis test error
2017-11-29 12:27:20 -05:00
=
2399ee62ec
adjusting tests
2017-11-29 12:03:10 -05:00
Greg Back
98ca928dea
Merge pull request #111 from oasis-open/89-relationships
...
Support de-referencing relationships
2017-11-27 14:19:29 +00:00
Chris Lenk
4a6bca4486
Merge branch 'master' into 89-relationships
2017-11-21 16:41:21 -05:00
Chris Lenk
d355d1827e
Move `creator_of` to DataStore/DataSource
2017-11-21 16:29:06 -05:00
Chris Lenk
078474259a
Simplify `related_to`
2017-11-21 16:19:15 -05:00
Chris Lenk
6446be310c
Clean up relationships code
2017-11-21 15:57:35 -05:00
=
0347bb52fd
added remove_custom_stix() utility; tweaked new_version() to make it a little safer
2017-11-21 14:39:50 -05:00
Chris Lenk
92f7e706bf
Improve error handling in relationships/related_to
2017-11-21 10:29:57 -05:00
Greg Back
f481788e1e
Merge pull request #112 from samcornwell/get_type_from_id
...
Add get_type_from_id utility function
2017-11-20 15:19:24 +00:00
Sam Cornwell
eff51a2bb8
fixed pycodestyle failure
2017-11-19 23:00:42 -05:00
Sam Cornwell
78612530ff
added tests for get_type_from_id
2017-11-19 22:27:31 -05:00
Sam Cornwell
8930e72cc3
added get_type_from_id function to utils
2017-11-19 22:11:44 -05:00
Chris Lenk
7e0f911972
Add relationship_type note to docstrings
2017-11-17 17:30:24 -05:00
=
ec42182cb1
issue #107 , also MemorySource.load_from_file() parses JSON into python-stix2 objects now
2017-11-17 12:19:06 -05:00
Emmanuelle Vargas-Gonzalez
c03ecb5230
Update test modules
2017-11-17 08:50:40 -05:00
=
da4e843993
issue #104 with TAXIICollectionSource tweak
2017-11-16 17:47:27 -05:00
Chris Lenk
515ff1e53f
Clean up test
2017-11-16 16:50:27 -05:00
Chris Lenk
cfa18bfd0d
Improve Environment tests
2017-11-16 16:43:27 -05:00
Chris Lenk
f0331f8b9b
Reorganize DataStore code for dereferencing
...
- Move `relationships()` to DataStore like `related_to()` is. If a
DataStore implementation needs a different way to handle relationship
dereferencing (e.g. TAXII in the future, or CompositeDataSource), it
can overwrite these functions.
- Reduce code duplication.
- Check for presence of Data Source/Sink in all DataStores, not just in
Environment.
2017-11-16 16:25:57 -05:00
Chris Lenk
29dec997a0
Add related_to()
...
Function for calling relationships() but instead of just returning the
Relationship objects, returns the STIX objects being refered to in those
Relationships.
2017-11-16 14:58:59 -05:00
Chris Lenk
86f28644f9
Fix Python2 bug when filter value is unicode
2017-11-15 16:56:55 -05:00
Chris Lenk
1b816c3d84
Test relationships() functions
2017-11-15 16:34:07 -05:00
Emmanuelle Vargas-Gonzalez
e6a8b555d3
Add test for CustomMarking. closes #109
2017-11-15 13:12:00 -05:00
Emmanuelle Vargas-Gonzalez
fbce8f15fe
Allow no custom __init__() on CustomMarking
2017-11-15 12:55:34 -05:00
Chris Lenk
55cf00d7f0
Move relationships() to DataSources
2017-11-15 10:37:17 -05:00
Chris Lenk
ef3ce9f6f0
Bump version: 0.3.0 → 0.4.0
2017-11-13 16:40:58 -05:00
Chris Lenk
2dc8a97a51
Fix documentation links for v20
2017-11-13 14:14:24 -05:00
Chris Lenk
f9ad7ceb65
Add relationships() function to Environment
2017-11-13 11:09:56 -05:00
Chris Lenk
7495ea6588
Add inter-documentation links
...
So when users read the guide docs, they can click a link to go to a
relevant section in the API reference.
2017-11-09 15:42:59 -05:00
Chris Lenk
c38483b631
Improve markings docstrings
...
Including a note that the markings functions can be used as methods on
SDO/SRO/MarkingDefinition objects.
2017-11-09 10:19:57 -05:00
Emmanuelle Vargas-Gonzalez
258ea4b82c
Some cleanup in MemoryStore
2017-11-08 14:01:56 -05:00
Emmanuelle Vargas-Gonzalez
da66f10147
Make DataStore a regular class, remove unwanted overrides, update tests. Remove CustomProperty since it is no longer needed
2017-11-08 13:53:21 -05:00
Emmanuelle Vargas-Gonzalez
489e45ad1b
Merge branch 'master' of github.com:oasis-open/cti-python-stix2 into issue-98
2017-11-08 10:31:49 -05:00
Greg Back
5aa8c66bfc
Merge pull request #97 from oasis-open/memory-tests
...
Test MemoryStore saving/loading to/from file
2017-11-08 14:59:27 +00:00
Emmanuelle Vargas-Gonzalez
19818c8573
Remove stray print()
2017-11-06 14:21:29 -05:00
Emmanuelle Vargas-Gonzalez
0d5859b906
Test other CompositeDataSource operations
2017-11-03 15:13:00 -04:00
Emmanuelle Vargas-Gonzalez
79475586d8
Revert object_properties() to #85 fix. Update tests accordingly
2017-11-03 14:17:36 -04:00
Emmanuelle Vargas-Gonzalez
d31b110330
Update TAXII datastores
2017-11-03 08:58:47 -04:00
Emmanuelle Vargas-Gonzalez
d6c14139f3
Extend object serialization options for _STIXBase
2017-11-03 08:02:32 -04:00
Emmanuelle Vargas-Gonzalez
8c2af813b2
Define CustomProperty. Make sure to update _properties dict when allow_custom=True
2017-11-02 21:56:18 -04:00
Emmanuelle Vargas-Gonzalez
cd6c7982af
Update tests related to Datastores
2017-11-02 21:31:56 -04:00
Emmanuelle Vargas-Gonzalez
1e591a827d
ABC for DataSink, DataStore and DataSource. Fixes across the concrete objects
2017-11-02 21:29:25 -04:00
Emmanuelle Vargas-Gonzalez
f6f7d0aed8
Merge branch 'master' of github.com:oasis-open/cti-python-stix2
2017-11-02 07:48:37 -04:00
Emmanuelle Vargas-Gonzalez
bdb91c6ac4
Update STIX 2.1 structure
2017-11-02 07:21:24 -04:00
Greg Back
37e9049536
Merge pull request #93 from emmanvg/issue-91
...
Update stix2 Package Structure
2017-11-01 20:09:15 +00:00
Greg Back
f029a01f9a
Merge pull request #95 from oasis-open/filters
...
Change filters to allow filtering all properties
2017-11-01 20:04:48 +00:00
Emmanuelle Vargas-Gonzalez
b2ff16994f
Document new util method
2017-11-01 14:21:26 -04:00
Emmanuelle Vargas-Gonzalez
a17d770d34
Merge master
2017-11-01 14:17:41 -04:00
Chris Lenk
7dd222b202
Test MemoryStore saving/loading to/from file
...
Python 3 dict.values() returns a view, not a list. See
https://stackoverflow.com/a/17431716/
Fix #65 .
2017-11-01 12:51:04 -04:00
Emmanuelle Vargas-Gonzalez
84fa86a2fd
Fix import statement
2017-11-01 11:03:02 -04:00
Emmanuelle Vargas-Gonzalez
06a50b0178
Update README, add DEFAULT_VERSION
2017-11-01 10:48:28 -04:00
Chris Lenk
c2d1e9777b
Clean up filters
...
- Simplify an if statement since split() with no matches returns single
item list
- Rename _all_filter -> _check_property and make it a method on Filter
- Raise an error instead of returning -1
- s/field/property
2017-11-01 10:40:10 -04:00
Chris Lenk
d93bf44c00
Merge branch 'master' into 76-filesystem-bundles
2017-10-31 14:10:29 -04:00
Chris Lenk
482135465b
Merge pull request #92 from oasis-open/issue66
...
Fix #66 - checking STIX obj ID from TAXII server
2017-10-31 14:06:34 -04:00
=
d8e4f1ab98
addessing requested changes
2017-10-31 13:48:31 -04:00
Chris Lenk
924c72e98a
Change filters to allow filtering all properties
...
(Not just common properties)
2017-10-30 17:25:32 -04:00
Emmanuelle Vargas-Gonzalez
a514c5a3df
Add test for _register_type()
2017-10-29 00:09:13 -04:00
Chris Lenk
612f2fbab8
Increase code coverage for filesystem datastore
...
Found a couple bugs in the process and fixed them, too.
2017-10-27 15:50:43 -04:00
Emmanuelle Vargas-Gonzalez
42317ddf31
Update filesystem.py to allow_custom and version
2017-10-27 12:38:03 -04:00
Chris Lenk
f103084439
Add `bundlify` parameter to FileSystemStore/Sink
...
This brings back the option (disabled by default) to wrap objects in a bundle
when saving them to the filesystem.
2017-10-27 12:23:57 -04:00
Chris Lenk
4e3752912d
Remove stray `print` statement
2017-10-26 15:35:19 -04:00
Emmanuelle Vargas-Gonzalez
9aefa61153
Small fix for Python 3.3, 3.4
2017-10-26 12:39:27 -04:00
Emmanuelle Vargas-Gonzalez
8c56adda21
Update package structure
2017-10-26 11:39:45 -04:00
=
082973f780
whitespace - somehow pre-commit got turned off??
2017-10-25 15:18:32 -04:00
=
7092990565
tested code with jupyter notebook and local TAXII server
2017-10-25 14:36:20 -04:00
Chris Lenk
5dffe74867
Clean up creator_of
...
(renamed from created_by)
2017-10-24 14:20:42 -04:00
Emmanuelle Vargas-Gonzalez
d4db4f0ab8
Define source code encoding
2017-10-24 12:53:53 -04:00
Chris Lenk
47b11453fa
Increase test coverage for memory datastore
2017-10-24 12:43:30 -04:00
Chris Lenk
5c28074364
Add `allow_custom` to datastore docstrings
2017-10-24 09:15:09 -04:00
Emmanuelle Vargas-Gonzalez
7b6236674c
Add new tests.
2017-10-23 08:06:29 -04:00
Emmanuelle Vargas-Gonzalez
ef98c38937
Minor changes
2017-10-23 08:04:18 -04:00
Chris Lenk
e1e368c0d2
Add created_by() function to Environment
2017-10-20 09:13:04 -04:00
Chris Lenk
476cd1ed5b
Add option for custom content to TAXII datastore
2017-10-18 18:34:08 -04:00
Chris Lenk
c6d5eee083
Separate out Memory datatstore tests
...
Makes sure custom content can be added to a MemoryStore.
2017-10-18 18:31:46 -04:00
Chris Lenk
e1d8c2872e
Don't Bundlify data in FileSystemStore
...
Don't wrap objects in a Bundle when adding them to a FileSystemStore,
but still support getting objects from FileSystemStore that were saved
in a bundle.
Also:
- Add option to allow custom content in FileSystemStore
- Simplify an if statement
- Improve FileSystem docstrings
- Remove an unnecessary parse() call in FileSystemSource.get()
2017-10-18 15:46:45 -04:00
Emmanuelle Vargas-Gonzalez
be3e841ecb
New object test files
2017-10-18 13:58:24 -04:00
Chris Lenk
84094e9f79
Separate out filesystem tests
2017-10-18 08:27:12 -04:00
Emmanuelle Vargas-Gonzalez
6deaddc04e
Make sure custom properties are returned by object. closes #85
2017-10-12 14:08:32 -04:00
Chris Lenk
134267bfd6
Add FileSystem test fixture, test adding bundle
2017-10-12 11:20:20 -04:00
Greg Back
374539a6cc
Don't try to re-parse STIX Objects when adding to Bundle.
2017-10-12 14:38:25 +00:00
Emmanuelle Vargas-Gonzalez
cccd42d984
Make AS 'number' required, add missing props to SocketExt. closes #77
2017-10-11 15:10:06 -04:00
Emmanuelle Vargas-Gonzalez
f6e21d2199
Merge branch 'master' of github.com:oasis-open/cti-python-stix2 into stix2.1
2017-10-11 13:31:46 -04:00
Emmanuelle Vargas-Gonzalez
c4c2fb950e
Implement LanguageContent object. Update GranularMarking and other missing properties
2017-10-11 13:30:26 -04:00
Emmanuelle Vargas-Gonzalez
b99d9e4132
Update confidence docstrings
2017-10-11 13:16:59 -04:00
Chris Lenk
2b6023e7bb
Allow objects with custom properties in bundles
2017-10-09 17:33:12 -04:00
Emmanuelle Vargas-Gonzalez
2ec8205f1e
Implement confidence conversion scales
2017-10-09 07:22:19 -04:00
Emmanuelle Vargas-Gonzalez
50f3d60259
Update branch
2017-10-06 20:34:08 -04:00
Chris Lenk
51361216e9
Bump version: 0.2.0 → 0.3.0
2017-10-06 15:40:34 -04:00
Chris Lenk
2f58d7888b
Merge branch 'master' of https://github.com/oasis-open/cti-python-stix2
2017-10-06 15:09:35 -04:00
Emmanuelle Vargas-Gonzalez
5577686ee8
Add new STIX2.1 SDOs and additional properties
2017-10-06 15:09:14 -04:00
Chris Lenk
e57c36f525
Check custom extension properties is not empty
2017-10-06 15:05:39 -04:00
Chris Lenk
d0f3fb0b47
Merge pull request #62 from oasis-open/documentation
...
Documentation: Fixes #53 .
2017-10-06 14:33:14 -04:00
Emmanuelle Vargas-Gonzalez
2b65f7205b
Mutex 'name' is required. Bunch of formatting, update test
2017-10-06 14:24:46 -04:00
Chris Lenk
66e57ced25
Fix merge conflicts
2017-10-06 14:19:09 -04:00
Chris Lenk
23e3b3cc20
Fix FileSystemSource.all_versions bug
...
If `get()` returned a single STIX object, `all_versions()` would return a
list of the properties/values of that object.
2017-10-06 14:02:25 -04:00
Chris Lenk
1821cdb197
Merge pull request #71 from oasis-open/more_ds_tests
...
FileSystem tests
2017-10-06 13:31:50 -04:00
Chris Lenk
63e9d6af70
Merge pull request #69 from emmanvg/master
...
Update required properties in SDOs
2017-10-06 13:30:14 -04:00
Chris Lenk
79902f361e
Merge pull request #61 from oasis-open/list_comp
...
frivolous list comprehensions converted to list()
2017-10-06 13:29:22 -04:00
=
a36922990f
removing list comps
2017-10-06 11:20:18 -04:00
=
205013000d
removing debug line
2017-10-06 11:00:39 -04:00
=
a26e9b589f
FileSystem tests, and test directory of sample stix2 data
2017-10-06 10:56:24 -04:00
Emmanuelle Vargas-Gonzalez
24bc282d7e
Update required properties, indicator label and tests. closes #68
2017-10-06 10:29:30 -04:00
Chris Lenk
9ea4344ca7
Make MarkingsMixin private
...
Partially so it doesn't clog up the markings API documentation.
2017-10-05 20:50:54 -04:00
Chris Lenk
8b702c6985
Minor API docs improvements
...
- Hide "Bases" below class signatures
- Leave some empty space after tables
2017-10-05 20:44:58 -04:00
Greg Back
1414035e8d
Isolate TimestampConstant in test.
2017-10-05 21:54:58 +00:00
Greg Back
f3431c97da
nested summaries for sources
2017-10-05 18:45:31 +00:00
Richard Piazza
0dc3226048
added test for Timestamp_Constant
2017-10-05 13:43:56 -04:00
=
ec34aa952f
Merge branch 'documentation' of https://github.com/oasis-open/cti-python-stix2 into documentation
2017-10-04 15:59:04 -04:00
=
f7c17d0c07
some progress on CompositeDS guide, but includes some bug fixes in the DataSource API
2017-10-04 15:57:38 -04:00
Chris Lenk
233ee7924e
Merge branch 'master' into documentation
2017-10-04 10:38:40 -04:00
Richard Piazza
ebd28aca9d
Merge branch 'master' of https://github.com/oasis-open/cti-python-stix2
2017-10-04 10:27:18 -04:00
Richard Piazza
3891595250
Use t prefix for timestamp constant
2017-10-04 10:27:06 -04:00
=
5789fbce20
filesystem list comps
2017-10-04 09:47:18 -04:00
=
616ec6bbeb
frivalous list comprehensions converted to list()
2017-10-03 16:20:03 -04:00
Chris Lenk
3ca8cf820e
Add STIXDomainObject and STIXRelationshipObject
2017-10-03 15:01:55 -04:00
Chris Lenk
2bdf83401a
Add a shortcut for marking functions
...
So marking functions like `add_markings()` can be directly called as methods on
SDO/SRO classes. Note that they return new versions of the objects
because objects are immutable.
2017-10-03 10:28:58 -04:00
=
3b9e52ce19
parsing taxii filters not needed when retrieving by id
2017-10-02 16:43:08 -04:00
Chris Lenk
58db629de8
Add markings functions to top level namespace
2017-10-02 16:09:38 -04:00
Chris Lenk
035f1a6c73
Support MarkingDefinition objs, not just ID strs
...
(when passed into `add_markings()` or `remove_markings()`)
2017-10-02 12:28:47 -04:00
=
fea2499ae2
forgot to pull doc branch down first, after having merged master into doc branch locally (to get access to DataStore/Filter code
2017-09-29 16:03:48 -04:00
=
4af665bf81
merge conflicts
2017-09-29 15:47:39 -04:00
Greg Back
9e21a69c7f
Merge branch 'master' into documentation
2017-09-29 19:14:11 +00:00
Greg Back
b31b4f29f8
Handle inconsistent error messages between Python 2 and Python 3.
2017-09-29 18:45:15 +00:00
=
ffa2242878
code changes brought about by discussion of pull request of 'bug_fixes' branch
2017-09-29 11:24:19 -04:00
Chris Lenk
ac97eb8bdc
Add Environment documentation (Jupyter)
...
Has errors, needs #57 .
2017-09-25 16:39:58 -04:00
Chris Lenk
b6d1bb26de
Improve utils docs, rename subpackage docs folders
2017-09-22 14:54:21 -04:00
=
55943847fa
updated corresponding tests that would have broke
2017-09-22 11:49:54 -04:00
=
94df10bf8d
docstrings redone; code changes for adding/returning STIX objects to FileSystem, Memory, TAXII; code changes for query sets and filters
2017-09-22 11:29:17 -04:00
Chris Lenk
eac1ce94de
Improve docstrings for Sphinx output
...
Also remove package and module names from classes and functions.
Also remove stix2.base from docs. We hide all private classes and
functions from the docs, so the only thing the documentation for base
included was STIXJSONEncoder.
2017-09-22 11:24:55 -04:00
Chris Lenk
c0fd740e0a
Improve autodoc output
...
- Add markings and sources
- Tidy up some docstrings
2017-09-22 10:01:00 -04:00
Chris Lenk
d7efd1f752
Set up Sphinx autodoc
...
This will automatically generate API documentation from docstrings.
2017-09-21 17:27:13 -04:00
Chris Lenk
21d978acc8
Fix errors when instantiating custom classes
...
Defining a custom object/observable/extension class with no custom
__init__() function would result in an `AttributeError` or `TypeError`,
depending on if the class sub-classed `object` or not.
2017-09-21 09:11:01 -04:00
Greg Back
463d1e6b28
Merge pull request #52 from oasis-open/environment
...
Environment layer
2017-09-12 13:59:08 +00:00
Greg Back
f00dcb682a
Fix imports
2017-09-11 13:00:40 +00:00
Greg Back
774acb23ea
Remove extra newline
2017-09-11 11:56:23 +00:00
Chris Lenk
190b639126
Fix memory datastore to pass tests
...
1) 'stix_data' is now optional; you can set up a MemorySink without
needing a starting set of data.
2) Removed stix2-validator calls. The validator fails when called on our
_STIXBase-derived classes because we store timestamps as datetime
objects, while the validator expects strings. Also, this was the only
datastore that used the validator, and we should be consistent across
all of them. The validator can be added back in later.
2017-09-08 12:49:08 -04:00
Chris Lenk
be07c32500
Add parse() to Environment layer
...
The Environment layer does not keep its own mapping of custom object types.
If we think it likely that users will want to maintain separate lists of
custom object types between two or more Environments, we can add this
later.
2017-09-08 12:40:01 -04:00
Chris Lenk
f60331fb77
Improve docstrings for Environment layer
2017-09-08 11:15:10 -04:00
Chris Lenk
4dfb5d2365
Test Environment layer
2017-09-08 09:01:12 -04:00
Richard Piazza
ceb88f176e
added TimestampConstant
2017-09-07 10:35:31 -04:00
Richard Piazza
95cac595da
merge in latest
2017-09-07 10:18:02 -04:00
Chris Lenk
598f38921f
Start Environment layer
2017-09-06 16:20:16 -04:00
Greg Back
adac43708b
Merge pull request #46 from oasis-open/markings
...
Marking Support
2017-09-05 19:08:45 +00:00
Chris Lenk
42962e6675
Improve markings tests
...
- Test markings functions with both dictionaries and our _STIXBase-derived
classes as input.
- Slightly improve test coverage.
- Drop Python 2.6 support.
2017-09-01 16:41:16 -04:00
Chris Lenk
cc66e1a492
Make markings function signatures consistent
...
Put `marking` before `selectors`. The granular marking version of
`is_marked` requires selectors to not be None.
2017-09-01 10:50:01 -04:00
Emmanuelle Vargas-Gonzalez
6f36ea8488
Merge remote-tracking branch 'oasis/master' into datastores
2017-09-01 10:13:57 -04:00
Emmanuelle Vargas-Gonzalez
13f2810b25
Remove name positional argument, clean memory.py redundant codeother minor changes. Increase coverage.
2017-09-01 08:15:50 -04:00
Greg Back
124da846c3
Merge branch 'master' into markings
2017-08-31 20:36:59 +00:00
Greg Back
b1054e780a
Merge remote-tracking branch 'origin/master' into datastores
2017-08-31 19:52:48 +00:00
Greg Back
ba846f9501
Clean up some tests.
2017-08-31 18:23:08 +00:00
Greg Back
7b46283a5c
Build filter function map
2017-08-31 18:21:29 +00:00
Greg Back
71d42b0e51
Merge remote-tracking branch 'origin/datastores' into filter
2017-08-31 17:18:20 +00:00
Chris Lenk
9d45a3dca2
Keep MALWARE_KWARGS to a minimal set
...
...but use an additional set with a description for marking tests.
2017-08-31 12:51:13 -04:00
Chris Lenk
15287959a4
Modify versioning API to work on dictionaries
...
This includes new_version() and revoke().
2017-08-31 12:28:07 -04:00
clenk
8a33cb7716
Touch up ObjectReferenceProperty checks
...
- reword "_refs" error
- check with isinstance instead of __class__.__name__
2017-08-30 16:15:05 -04:00
clenk
0e658255a8
Move check to when custom observable is defined
...
Catch properties named "_ref" or "_refs" that aren't
ObjectReferenceProperty when the custom observable is defined, not when
it is instantiated.
2017-08-30 15:33:28 -04:00
=
22c749d0df
filter changes
2017-08-30 11:18:11 -04:00
Emmanuelle Vargas-Gonzalez
8ca2c3390b
Minor changes to DataSource.apply_common_filters(). Improve overall code coverage.
2017-08-29 15:15:32 -04:00
Emmanuelle Vargas-Gonzalez
b1ac24d46e
Minor changes.
2017-08-29 15:08:26 -04:00
Emmanuelle Vargas-Gonzalez
415c53066f
Code coverage changes, fix some tests. Add stix2-validator dependency.
2017-08-28 15:19:55 -04:00
Emmanuelle Vargas-Gonzalez
aea076103c
Update tests to improve coverage.
2017-08-28 14:33:12 -04:00
Emmanuelle Vargas-Gonzalez
160d69b03d
Changes to datastores.
2017-08-28 14:32:51 -04:00
Emmanuelle Vargas-Gonzalez
07bbe23a98
Add some tests for custom objects.
2017-08-28 14:32:05 -04:00
Emmanuelle Vargas-Gonzalez
23f36a9a69
Minor changes to custom object decorators. Add new marking decorator.
2017-08-28 14:30:53 -04:00
clenk
095c5066d5
Touch up markings tests
...
Increase code coverage and s/tlo/sdo/
2017-08-25 15:56:39 -04:00
clenk
0cd75e3fba
Increase code coverage
2017-08-24 17:53:43 -04:00
clenk
6fa3c84aa3
Improve tests and coverage for custom content
...
In ObservableProperty.clean(), parse_observable() will handle the issue
of non-cyber observable objects being presnt in an observable property.
The line raising a ValueError would not be reached so it was removed.
2017-08-24 15:46:36 -04:00
Emmanuelle Vargas-Gonzalez
3822e39243
Remove COMMON_PROPERTIES.
2017-08-24 15:10:09 -04:00
Emmanuelle Vargas-Gonzalez
1dfaaf15ef
Minor change. closes #29
2017-08-24 12:54:50 -04:00
Emmanuelle Vargas-Gonzalez
dd17e88ae0
Code refactor/clean-up, changed some exceptions. Update docstrings.
2017-08-24 12:47:14 -04:00
clenk
ee49e78c72
Add custom extensions to cyber observables
...
Fix #31 .
2017-08-23 18:36:24 -04:00
Emmanuelle Vargas-Gonzalez
8d4c1d55b5
Minor style changes.
2017-08-23 13:12:40 -04:00
Emmanuelle Vargas-Gonzalez
f33427328b
Update tests for object and granular markings.
2017-08-23 13:07:22 -04:00
Emmanuelle Vargas-Gonzalez
15bff530be
Refactor granular_markings.py code and remove unnecessary code in utils.py
2017-08-23 13:06:51 -04:00
Emmanuelle Vargas-Gonzalez
f437a4df5b
Merge branch 'datastores' of github.com:oasis-open/cti-python-stix2 into datastores
2017-08-22 10:47:23 -04:00
Emmanuelle Vargas-Gonzalez
d060abbed5
Updated regex expressions. Thanks to @drothenberg for that contribution!
2017-08-22 10:47:13 -04:00
Greg Back
69eb09c32b
Merge remote-tracking branch 'origin/master' into datastores
2017-08-21 22:40:07 +00:00
Greg Back
4cd99f04ea
Use version of taxii2-client from PyPI.
2017-08-21 22:16:23 +00:00
clenk
8687521111
Change object markings for immutable SDOs
2017-08-21 13:57:01 -04:00
clenk
d4edb8b0bc
Validate patterns when creating Indicators
2017-08-18 14:22:57 -04:00
clenk
c0d02fbfcd
[WIP] Touch up marking code
2017-08-18 12:36:34 -04:00
Emmanuelle Vargas-Gonzalez
c64b7de761
Change query dict style for Filter namedtuple.
2017-08-18 12:05:12 -04:00
Richard Piazza
fb75de47c5
added TimestampConstant
2017-08-17 14:50:42 -04:00
clenk
14b922ba92
Merge remote-tracking branch 'emmanvg/marking-support' into markings
2017-08-17 12:26:46 -04:00
Emmanuelle Vargas-Gonzalez
681be1a5d9
Make CompositeDataStore subclass DataStore. Remove deduplicate() from CompositeDataSource.
2017-08-16 09:58:33 -04:00
Emmanuelle Vargas-Gonzalez
a18804a195
Add ordereddict dependency for 2.6 support. Import change in utils.py
2017-08-15 14:12:21 -04:00
Emmanuelle Vargas-Gonzalez
15b5e107d5
Fix imports, sort requirements.
2017-08-15 13:54:16 -04:00
Emmanuelle Vargas-Gonzalez
4ffc8edeeb
Update all tests. Re-organize EXPECTED values, update some regex expressions.
2017-08-15 13:41:51 -04:00
Emmanuelle Vargas-Gonzalez
1b48ad9778
Changes to object serialization.
2017-08-15 13:40:47 -04:00
Emmanuelle Vargas-Gonzalez
e3f82effc7
Apply OrderedDict changes to bundle, fix import in sdo.py
2017-08-15 08:24:43 -04:00
Emmanuelle Vargas-Gonzalez
cb5c4ad080
Merge pull request #42 from oasis-open/bundles Parse bundles correctly
2017-08-14 15:21:58 -04:00