Commit Graph

51 Commits (b0e95fd5af08891c0829c8482179548231ad1843)

Author SHA1 Message Date
Raphaël Vinot b0e95fd5af chg: Refactorize typing, validate 2020-01-23 10:27:40 +01:00
Raphaël Vinot 2e064563c3 chg: Add typing markup 2020-01-02 15:55:00 +01:00
Raphaël Vinot 24a8f90ea8 new: Remove python < 3.6 support. 2019-12-18 14:45:14 +01:00
Raphaël Vinot c9b5d24073 fix: Add missing fields to event & attribute for the feed output 2019-12-11 23:12:14 +01:00
Raphaël Vinot 99d015a0d1 chg: Update documentation
Fix #396
2019-12-02 23:33:01 +01:00
Raphaël Vinot 446649992f fix: Raise PyMISPError instead of Exception 2019-11-27 17:08:15 +01:00
Raphaël Vinot 78c9f4f605 chg: Few more improvements on the feed export 2019-11-25 16:35:56 +01:00
Raphaël Vinot 6098cd869f chg: Make the feed generator more generic 2019-11-22 17:36:24 +01:00
Raphaël Vinot 61867a8257 fix: improve stability of feed output 2019-11-20 12:49:42 +01:00
Raphaël Vinot b1818b1751 new: Add to_feed export to MISPEvent 2019-11-19 15:53:58 +01:00
Raphaël Vinot fef328d395 fix: Python <3.4 should work again....
Fix #482
2019-10-18 11:56:09 +02:00
Raphaël Vinot cc204475ff chg: Test if json exists in cached method 2019-10-10 18:33:55 +02:00
Raphaël Vinot 6cc7730d24 chg: Decode datetime without dateutils if possible 2019-10-10 18:27:47 +02:00
Raphaël Vinot 2785d0027d fix: [Python2] Use LRU cache decorator, fix call to describe_types in PyMISP 2019-10-10 10:15:23 +02:00
Raphaël Vinot 02659a5782 chg: Add support for rapidjson, refactoring and code cleanup. 2019-10-09 16:07:40 +02:00
Raphaël Vinot f312f87072 fix: Objects helpers were broken, do not overwrite describe_types 2019-10-08 09:28:33 +02:00
Raphaël Vinot 3bb220c94b chg: Cleanups and improvements 2019-10-08 08:15:56 +02:00
Raphaël Vinot f322e479cd fix: Support for legacy python versions
90 days and counting, folks.
2019-10-07 04:00:11 -06:00
Raphaël Vinot f9118f8c85 Merge branch 'mback2k-template-cache' into perf 2019-10-07 03:53:50 -06:00
Marc Hoersken 4be029a0f6 Use classmethod instead of staticmethod and avoid hard-coded reference 2019-10-04 08:55:55 +02:00
Raphaël Vinot bae942d2ec fix: Cache object templates at AbstractMISP level
Related #468 and  #471
2019-10-03 13:54:43 -07:00
Raphaël Vinot 6c1f988b13 fix: Cache describeTypes at AbstractMISP level. 2019-10-03 13:23:00 -07:00
Marc Hoersken e05c7d9b4f Cache JSON definitions in memory LFU cache provided by cachetools
- Path and modified time of JSON file are used as the cache key
- Global state is hidden away inside a root-class for re-use
- Maximum size is 150 considering the number of JSON definitions

During my tests the memory usage of the test suites was halved.
2019-10-03 19:30:57 +02:00
Raphaël Vinot a2b66e943b fix: Big speed improvment when loading MISPEvent
1. `properties` is a list comprehension
2. Massively reduce the amount of calls to `properties`
2019-10-02 22:45:12 -07:00
Raphaël Vinot da6d7cbeb8 fix: move __not_jsonable *inside* the __init__
Turns out, if you modify a variable defined outside the __init__,
every instances (and inherited classes) of that class will be impacted by it.
2019-08-07 16:09:56 +02:00
Raphaël Vinot c9d58dad8a chg: Deprecate everything in PyMISP 2019-07-17 11:44:55 +02:00
Raphaël Vinot de65608a12 fix: Properly fix deprecation warning
fix #390
2019-05-08 10:12:41 +02:00
Raphaël Vinot 5a4c37d029 chg: Bump dependencies. 2019-05-07 11:04:25 +02:00
Raphaël Vinot fe91d06b91 chg: Remove dependency on six 2019-02-06 11:31:05 +01:00
Raphaël Vinot 9a6761e817 add: Add __eq__ to AbstractMISP
Allow to discard duplicate tags.
2018-09-23 17:39:24 -04:00
Raphaël Vinot 8b8459ce53 fix: normalizing the outputs 2018-08-28 17:30:07 -04:00
Raphaël Vinot 739ab41896 new: More test cases, bug fixes 2018-08-10 19:04:02 +02:00
Raphaël Vinot fcb83f7318 new: Reworking the REST API (WiP) 2018-08-09 18:12:05 +02:00
Raphaël Vinot 44344913f8 fix: Py3.5 compat 2018-08-08 11:19:24 +02:00
Raphaël Vinot f937e844dd chg: Make object helpers more generic, cleanup. 2018-03-27 14:57:12 +02:00
Sami Mokaddem 3faec3c00d fix: AbstractMISP.from_dict() do not accept positional argument 2018-03-15 12:04:23 +01:00
Raphaël Vinot c41281030b chg: Move MISPTag to Abstract MISP. 2018-01-08 11:59:32 +01:00
Raphaël Vinot a01e7f5e27 fix: edited method works as expected, add tests. 2018-01-05 19:17:25 +01:00
Raphaël Vinot bb1aac5720 chg: Multiple changes
* Fix timestamp dump (properly enforce UTC)
* Properly handle proposals
* Add many getter/setter
* Add dedicated test cases for MISPEvent and other objects
2018-01-04 16:43:19 +01:00
Raphaël Vinot a497613a85 chg: Update documentation, cleanup 2017-12-22 14:49:14 +01:00
Raphaël Vinot efb6ca974c fix: Properly use the edited flag 2017-12-21 18:46:28 +01:00
Raphaël Vinot 78c156bb6f new: (hopefully) Cleverer handling of timestamps in the objects
& some cleanup
2017-12-20 12:43:31 +01:00
Raphaël Vinot d19a10ddcc chg: Make the library easier to use 2017-12-13 15:45:02 +01:00
Raphaël Vinot f54a029e2a new: Proper debug system
Make it easy to investigate the json blobs sent to the server.
2017-11-08 17:33:55 -08:00
Raphaël Vinot 134df0cafb chg: Properly use python logging module. 2017-11-07 18:10:04 -08:00
Raphaël Vinot 6eb807381d Properly initialize a new malware sample 2017-09-18 15:37:55 +01:00
Raphaël Vinot da2b28a927 Use MISPAbstract as a master class everywhere.
This is probably breaking everything.... ¯\_(ツ)_/¯
2017-09-12 16:46:06 +02:00
Raphaël Vinot 2bc0745fbf Refactoring in order to load objects 2017-08-28 19:16:20 +02:00
Raphaël Vinot f06bfd310b Do not fail if pymisp is not installed 2017-08-25 16:38:12 +02:00
Raphaël Vinot c09ce0032c Refactor all the things
Add script for MISP core, make everything generic.
2017-08-24 19:21:52 +02:00