ChargePoint / xcparse

Command line tool & Swift framework for parsing Xcode 11+ xcresult
MIT License
393 stars 47 forks source link

Add `--legacy` flag for Xcode 16 compatibility #88

Closed marinofelipe closed 1 month ago

marinofelipe commented 2 months ago

Change Description:

As discussed in #87. This is a short term solution, for a long term one the xcresulttool usage is to be later reviewed.

I didn't simply change XCResultToolCommand:13 to include --legacy because some commands don't require and fail when it gets added, such as MetadataGet and Version

Test Plan/Testing Performed:

FPVMateOfficial commented 2 months ago

Worked for me (macOS Sonoma 14.6.1 / Xcode 16)

Thanks for the quick fix!

dailydmello commented 1 month ago

Can this PR be reviewed and merged, as I am facing this problem aswell

marinofelipe commented 1 month ago

Can this PR be reviewed and merged, as I am facing this problem aswell

@abotkin-cpi could you please take a look? Let me know if there's anything missing, such as extending the tests. Thank you

tahirmt commented 1 month ago

I think this change will break compatibility with Xcode 15. Perhaps the --legacy flag should be conditionally added instead.

abotkin-cpi commented 1 month ago

Hey @marinofelipe, sorry I've been out this last month for my wedding & honeymoon. As @tahirmt mentioned and @rsukumar-cpi from our ChargePoint team confirmed in testing, we'll need to add backwards compatibility support prior to merging due to the limitations of older xcresulttool. If you have the chance to add it, that would be awesome, otherwise I'll take a stab at adding it to your PR when I'm free this weekend.

marinofelipe commented 1 month ago

@tahirmt , @rsukumar-cpi , you're correct. I had a note to ask if backwards compatibility was needed, or if the next release could be exclusive to the Xcode 16 toolchain, but completely forgot it 🤦‍♂️ , thanks for the heads up and the pointer regarding how similar version checks are done.

Hey @marinofelipe, sorry I've been out this last month for my wedding & honeymoon. As @tahirmt mentioned and @rsukumar-cpi from our ChargePoint team confirmed in testing, we'll need to add backwards compatibility support prior to merging due to the limitations of older xcresulttool. If you have the chance to add it, that would be awesome, otherwise I'll take a stab at adding it to your PR when I'm free this weekend.

Thanks @abotkin-cpi . I'll try to go and add myself early this weekend, but if I don't get to it then please do.

marinofelipe commented 1 month ago

@abotkin-cpi , @rsukumar-cpi afad1f adds the condition. Some observations

rsukumar-cpi commented 1 month ago

@marinofelipe The changes look good to me. I'm looking into the failing tests in our CI right now. Once the issue is resolved, I will merge this PR.

tahirmt commented 1 month ago

@rsukumar-cpi any idea when we can get this released?

tahirmt commented 4 weeks ago

Hi @rsukumar-cpi can you please also publish a new release with this change so it can be installed using brew?

rsukumar-cpi commented 4 weeks ago

@tahirmt @marinofelipe Just pushed a release 2.3.2 with this change. You should be able to install the latest version via brew.