Add support for develop branch nif.xml
@niftools/pyffi-reviewer
Hi, I'm back from the dead. Recently got back into modding Bethesda games.
Overview
This pull request updates pyffi to be able to support the latest nif.xml. I am not done and I believe there are still more issues to fix. I also have more tests to write and disable/remove a lot of debug logging. All tests are working (at least on python 3.10). I am currently not feeling well so I well fill out this pull request in detail later.
The way I got pyffi to work with the latest nif.xml is on reading stream, we update all attributes to be set the versions specified. I also duplicated xml object model into niftoolsxml because I didn't want to update all xmls right now to the new niftoolsxml specification.
TODO:
- [x] Updating FileFormat.Data versions should update the versions of all blocks
- [ ] Add more documentation
- [x] Add more tests
- ~Implement conversions of attributes when updating attributes~
Fixes Known Issues
[Ordered list of issues fixed by this PR]
Documentation
Added all object models to the documentation.
Testing
[Overview of testing required to ensure functionality is correctly implemented]
Manual
[Order steps to manually verify updates are working correctly]
Automated
Modified Expression tests to also test extra features Added tests for importing files for specific games
Additional Information
~I want to move away from nosetests, not because I dislike them but because I think we only need one test framefwork pytest.~