From dfc304d9f653880696a900d94dc6a6ba6f980d70 Mon Sep 17 00:00:00 2001 From: mr-tz Date: Tue, 1 Oct 2024 17:00:22 +0000 Subject: [PATCH 1/3] add Python 3.8 and 3.9 deprecation warning tmp --- capa/ghidra/capa_explorer.py | 4 ++++ capa/ghidra/capa_ghidra.py | 4 ++++ capa/main.py | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/capa/ghidra/capa_explorer.py b/capa/ghidra/capa_explorer.py index e0b2cf19..4628b675 100644 --- a/capa/ghidra/capa_explorer.py +++ b/capa/ghidra/capa_explorer.py @@ -372,6 +372,10 @@ if __name__ == "__main__": from capa.exceptions import UnsupportedRuntimeError raise UnsupportedRuntimeError("This version of capa can only be used with Python 3.8+") + elif sys.version_info < (3, 10): + from warnings import warn + + warn("This is the last capa version supporting Python 3.8 and 3.9.", DeprecationWarning, stacklevel=2) exit_code = main() if exit_code != 0: popup("capa explorer encountered errors during analysis. Please check the console output for more information.") # type: ignore [name-defined] # noqa: F821 diff --git a/capa/ghidra/capa_ghidra.py b/capa/ghidra/capa_ghidra.py index 55ab8046..81792493 100644 --- a/capa/ghidra/capa_ghidra.py +++ b/capa/ghidra/capa_ghidra.py @@ -164,4 +164,8 @@ if __name__ == "__main__": from capa.exceptions import UnsupportedRuntimeError raise UnsupportedRuntimeError("This version of capa can only be used with Python 3.8+") + elif sys.version_info < (3, 10): + from warnings import warn + + warn("This is the last capa version supporting Python 3.8 and 3.9.", DeprecationWarning, stacklevel=2) sys.exit(main()) diff --git a/capa/main.py b/capa/main.py index 518c9ce2..60c5d638 100644 --- a/capa/main.py +++ b/capa/main.py @@ -903,6 +903,10 @@ def apply_extractor_filters(extractor: FeatureExtractor, extractor_filters: Filt def main(argv: Optional[List[str]] = None): if sys.version_info < (3, 8): raise UnsupportedRuntimeError("This version of capa can only be used with Python 3.8+") + elif sys.version_info < (3, 10): + from warnings import warn + + warn("This is the last capa version supporting Python 3.8 and 3.9.", DeprecationWarning, stacklevel=2) if argv is None: argv = sys.argv[1:] From 544e3eee5b5843d9b88771f8ab6a578affbdb85a Mon Sep 17 00:00:00 2001 From: mr-tz Date: Tue, 1 Oct 2024 17:05:54 +0000 Subject: [PATCH 2/3] bump version to 7.4.0 tmp2 tmp2 --- CHANGELOG.md | 41 ++++++++++++++++++++++++++++++++--------- capa/version.py | 2 +- 2 files changed, 33 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f385f36..c9860292 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,11 +4,39 @@ ### New Features +### Breaking Changes + +### New Rules (0) + +- + +### Bug Fixes + +### capa Explorer Web + +### capa Explorer IDA Pro plugin + +### Development + +### Raw diffs +- [capa v7.4.0...master](https://github.com/mandiant/capa/compare/v7.4.0...master) +- [capa-rules v7.4.0...master](https://github.com/mandiant/capa-rules/compare/v7.4.0...master) + +## v7.4.0 + +The v7.4.0 capa release fixes a bug when processing VMRay analysis archives and enhances API extraction for all dynamic backends. For better terminal rendering capa now solely relies on the rich library. + +The standalone capa executable can now automatically detect installations of relevant third party applications and use their backends (notably, idalib and Binary Ninja). For the extra standalone Linux build we've upgraded from Python 3.11 to 3.12. + +Twelve new rules have been added. Thanks to all the contributors! + +*This is the last capa version supporting Python 3.8 and 3.9. If you have major concerns about this please reach out to us.* + +### New Features + - add IDA v9.0 backend via idalib #2376 @williballenthin - locate Binary Ninja API using XDG Desktop Entries #2376 @williballenthin -### Breaking Changes - ### New Rules (15) - nursery/access-unmanaged-com-objects-in-dotnet mehunhoff@google.com @@ -25,7 +53,6 @@ - host-interaction/firewall/modify/access-firewall-policy-via-inetfwpolicy2 jakub.jozwiak@mandiant.com - host-interaction/firewall/modify/access-firewall-rule-properties-via-inetfwrule jakub.jozwiak@mandiant.com - host-interaction/registry/open-recentdocs-registry-key matthew.williams@mandiant.com -- ### Bug Fixes @@ -39,14 +66,10 @@ ### capa Explorer Web - improve navigation in capa Explorer Web @s-ff #2425 -### capa Explorer IDA Pro plugin - -### Development - ### Raw diffs -- [capa v7.3.0...master](https://github.com/mandiant/capa/compare/v7.3.0...master) -- [capa-rules v7.3.0...master](https://github.com/mandiant/capa-rules/compare/v7.3.0...master) +- [capa v7.3.0...v7.4.0](https://github.com/mandiant/capa/compare/v7.3.0...v7.4.0) +- [capa-rules v7.3.0...v7.4.0](https://github.com/mandiant/capa-rules/compare/v7.3.0...v7.4.0) ## v7.3.0 diff --git a/capa/version.py b/capa/version.py index dce982c2..8b31915f 100644 --- a/capa/version.py +++ b/capa/version.py @@ -5,7 +5,7 @@ # Unless required by applicable law or agreed to in writing, software distributed under the License # is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and limitations under the License. -__version__ = "7.3.0" +__version__ = "7.4.0" def get_major_version(): From d795db90177a0d59e6b4b1e01c6e67f8d5f512b3 Mon Sep 17 00:00:00 2001 From: mr-tz Date: Wed, 2 Oct 2024 08:56:38 +0000 Subject: [PATCH 3/3] include capa explorer web entry --- doc/release.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/release.md b/doc/release.md index 2149b8f5..602c7eac 100644 --- a/doc/release.md +++ b/doc/release.md @@ -26,7 +26,9 @@ ### Bug Fixes - ### capa explorer IDA Pro plugin + ### capa Explorer Web + + ### capa Explorer IDA Pro plugin ### Development