httptoolkit / httptoolkit-android

Automatic Android interception & debugging with HTTP Toolkit, for Android
https://httptoolkit.com
GNU Affero General Public License v3.0
476 stars 72 forks source link

WIP: Modernize codebase #19

Closed dewantawsif closed 6 months ago

dewantawsif commented 6 months ago

TODO:

@pimterry lemme know your thoughts before I proceed.

CLAassistant commented 6 months ago

CLA assistant check
All committers have signed the CLA.

pimterry commented 6 months ago

Thanks for looking into this @dewantawsif but I don't think I'm interested in any of those changes.

I'm definitely very open to fixes to improve actual issues of course (if there are concrete issues being fixed here, please let me know!) but there's no need to rewrite everything to Kotlin just for the sake of it.

I'm not interested in any kind of Java/Groovy -> Kotlin rewrite or similar just because it's the more 'modern' option. I totally agree Kotlin is great, but all the benefits come into play when you're actively building or working on a codebase, and in the medium-term there's no large development planned here at all. It's very likely that the work to do all this will be more work than all other development on this specific codebase for the next couple of years put together, which makes it a bit pointless, and the risk of introducing issues along the way (especially in the VPN code) is very high. Does that make sense?

Ditto for compose UI & material 3 - the current UI works just fine really, and I don't think any of that is necessary. Compose is great, and I totally agree it can offer a better dev experience & architecture in many ways, but those are not top priorities here right now, as there's no major changes planned here in the short term. By the time there's next large changes required here it's very possible that Compose will have changed significantly anyway with new versions and Material 4 will be the new place to be.

I do appreciate the help, but I don't think this is a good use of your time. Again though, if there are concrete issues (issues with the dev setup that make it actually unusable as-is, specific UI improvements, bug fixes, better UX, updates required for latest Android SDKs, etc etc) then those are of course very interesting but AFAICT that's not what's happening here.

dewantawsif commented 6 months ago

I was mainly looking into updating the UI which led to learning the build dependencies were outdated fast forward some hours later and here I am.

pimterry commented 6 months ago

It's an easy trap to fall into :smile:. Was there something specific you wanted to update the UI to do?

dewantawsif commented 6 months ago

Mainly in using Material 3 in selected app screen. All other app I use have Material 3 switches so it looked kinda out of place 😅