moyix / pdbparse

Python code to parse Microsoft PDB files
Other
316 stars 84 forks source link

Python 3.12 not supported #58

Open zeevro opened 1 year ago

zeevro commented 1 year ago

construct<2.10 uses the imp module, which was removed on Python 3.12. Is there a reason not to use a more recent construct version?

Hyask commented 1 year ago

Also, the construct-typing package must be installed for properly type checking a project that uses construct. Unfortunately, construct-typing requires construct>=2.10.

Looking at the changelog, it doesn't seem like there were big removals or changes in the API. The only removal are Embedded and EmbeddedSwitch, but they don't seem to be in use in pdbparse, according to grep.

@moyix given your recent activity on this repo, do you think that would be doable for you to release a new version of pdbparse with the construct<2.10 constraint loosened? I can help provide feedback on this if need be.

Hyask commented 1 year ago

Just to let people know, here is how I fixed the problem on my side:

I've no idea if the rest of the pdbparse package work fine with a newer construct, but at least that's a start.

Hyask commented 1 year ago

For those interested, you can put this line in your requirements.txt to use the version I mentioned just above:

pdbparse @ https://github.com/tetrane/pdbparse/raw/f29816285a5cbaf00bfe8c10379e664a5e4118ac/dist/pdbparse-1.5.1.tar.gz#sha256=1b046f137bc5b807983b15c1a1c71360faffad658be0ee4ba05763b0ab428486