oletools icon indicating copy to clipboard operation
oletools copied to clipboard

Oletools unable to install because of Pyparsing version problem

Open noadekel-DI opened this issue 2 years ago • 6 comments

Affected tool: general oletools

Describe the bug When trying to install, pip cannot find Pyparsing in version below 3.0 (tried to install manually and upgrade pip, nothing works) and thus unable to install.

Console output / Screenshots ERROR: Could not find a version that satisfies the requirement pyparsing<3,>=2.1.0 (from oletools) (from versions: 3.0.8) ERROR: No matching distribution found for pyparsing<3,>=2.1.0

Version information:

  • OS: Linux
  • OS version: Ubuntu 20.04.4 LTS
  • Python version: 3.9
  • oletools version: latest

noadekel-DI avatar Apr 26 '22 10:04 noadekel-DI

@decalage2 Can you please explain why it was necessary to avoid pyparsing 3+ in https://github.com/decalage2/oletools/commit/750859ce1d94d782c2890c2735e2db808741b4fd. 2020 pyparsing 3+ was only available in a early alpha. Was this the reason?

jloehel avatar May 15 '23 21:05 jloehel

@jloehel You can see a comment from declage2 here https://github.com/decalage2/oletools/pull/812

vEpiphyte avatar May 16 '23 01:05 vEpiphyte

@jloehel You can see a comment from declage2 here #812

Thanks for the hint. I am not sure if I understand the argument here. Oletools does not depend on ViperMonkey. ViperMonkey requires oletools. It should be enough to add the restriction to ViperMonkey. If oletools runs with pyparsing 2.x and 3.x it's fine.

jloehel avatar May 17 '23 17:05 jloehel

It is a bit confusing, since vipermonkey does have its own pyparsing constraint.

vEpiphyte avatar May 17 '23 17:05 vEpiphyte

Yes, it's just that I haven't touched the pyparsing code in olevba for years, and I don't know if it runs fine with the latest pyparsing versions. After some testing with different VBA samples, if it works we can relax the requirement to allow pyparsing 3.

decalage2 avatar May 17 '23 18:05 decalage2

Would also like a version that works with pyparsing 3.x. Any word on this?

DManowitz avatar Dec 24 '23 07:12 DManowitz