pyfa-org / Pyfa

Python fitting assistant, cross-platform fitting tool for EVE Online
GNU General Public License v3.0
1.61k stars 406 forks source link

Add mutation info to XML export/import. #2561

Closed m-sasha closed 7 months ago

m-sasha commented 9 months ago

Currently, when exporting in XML format, the mutation information is lost, and when reimporting the file, Pyfa will simply ignore the mutated item, leaving an empty slot.

This PR implements writing/using mutation info when exporting/importing in XML format.

For mutated items (modules and drones), write and read these hardware tag attributes:

DarkFenX commented 9 months ago

Does EVE use XML for anything fit-related?

Primary reason I didn't add it to XML right away was that EVE was using XML for import/export, and I didn't want to break it (or implement, then test, then fix or find workarounds for stuff which was broken).

DarkFenX commented 9 months ago

Ok, seems like it still uses XML for batch export/import. Can you test how mutated modules and drones are interpreted by EVE for import? Pretty sure it should ignore extended attributes, but idk how it will react to mutated item itself.

m-sasha commented 9 months ago

It ignores the extra attributes, and reacts to the mutated item as before:

image
m-sasha commented 9 months ago

Just to clarify - as EVE ignores the extended attributes, this PR changes nothing as far as it's concerned.

A fit with mutated modules exported from EVE and then imported back into EVE will have the same effect as the same fit exported from Pyfa (which is exactly how it behaved before).