fork-maintainers / iceraven-browser

Iceraven Browser
4.65k stars 224 forks source link

Warp Settings #154

Open rsssxd opened 3 years ago

rsssxd commented 3 years ago

New warp speed setting coming to Fenix. Fenix is really good with this setting. I expect Icerevan to get the new fenix tuning. Screenshot_20200924-113953233_1

rsssxd commented 3 years ago

https://groups.google.com/g/mozilla.dev.platform/c/1PHhxBxSehQ?pli=1

abhijitvalluri commented 3 years ago

What does it do?

rsssxd commented 3 years ago

Fenix loads much faster like chromium

You can download and test the latest firefox developer version

rsssxd commented 3 years ago

Is there an update?πŸ˜ƒ

rsssxd commented 3 years ago

https://www.reddit.com/r/firefox/comments/itib6s/dogfooding_warp_on_nightly_new_js_jit_engine/

ghost commented 3 years ago

I actually was not a fan of Fennec. If the ability to view link text in long press menu gets implemented #152 and if this gets enabled I will not think twice about switching to IceRaven on android.

rsssxd commented 3 years ago

@interfect Is it possible to update today for warp feature? Please πŸ˜₯

abhijitvalluri commented 3 years ago

Please have some patience @reyis4402, we are doing this as a side project after our day job. So we may not be able to update the fork with the latest commits from Mozilla regularly or quickly. I will try now.

rsssxd commented 3 years ago

@abhijitvalluri thank πŸ˜‡πŸ˜ƒπŸ˜€

interfect commented 3 years ago

I suspect there isn't a good way to get this until it moves out of Nightly and into release Firefox.

We've been shipping the release version of the actual browser engine (Gecko, the C++ part shared with desktop), while it looks like this is part of the Nightly version of Gecko. To get this now, I think we'd have to swap over to the Nightly version of the engine.

It's not hard, but it would probably make things less stable, so I'd prefer not to do it unless we really have to. @reyis4402 is Iceraven too slow for you for some particular application or task? Or do you just want it to be faster because faster is better?

I suppose we could ship the Nightly engine, but not tracking the release builds of the app wrapper has been causing us trouble with Mozilla introducing bugs that we then pick up, so we're wanting to stick more closely to their releases on the app side. I suppose we could flip completely around to shipping the Nightly engine in a stable, release-flavored app wrapper, if we wanted to, but I'm not sure that's a good idea.

Or maybe @abhijitvalluri will come up with something.

rsssxd commented 3 years ago

@interfect Icerevan is really fast but plugins slow down firefox. I thought this feature would work for me.

In addition, in new versions, the plug-in tray has become smaller and more stylish, it will be nice to use it.

rsssxd commented 3 years ago

The browser should be on f-droid to support users.

rsssxd commented 3 years ago

https://cloud.bubu1.eu/s/btFt2a8XRn38YnE F-Droid released test apk for new fennec.

abhijitvalluri commented 3 years ago

@interfect oh, I did not realize that this will require nightly gecko engine. I assumed it will work with latest master of mozilla. I am not sure if we want to use nightlies. But I thought they simply "enabled it by default" in nightly. That is, users can still enable it in our version by doing some about:config editting I guess? @reyis4402 can you use this in current version via about:config edits?

Namit-Nayan commented 3 years ago

can you use this in current version via about:config edits?

It needs GecoView v82 atleast. (Like it's present in GV: 82.0a1-20200919212721) The beta version of fenix should have it now I think.

interfect commented 3 years ago

The browser should be on f-droid to support users.

Yep. That's in #26 already.

@abhijitvalluri I'm really just guessing it's only in Nightly GechoView. Maybe it is available in other versions behind an about:config flag. If so, we would maybe just need to update android-components and cut a release and then people could use it via flag.

rsssxd commented 3 years ago

@interfect @abhijitvalluri Δ±cerevan old version Screenshot_20200927-054011475_1

rsssxd commented 3 years ago

Unfortunately

rsssxd commented 3 years ago

Firefox Nightly Old Version Screenshot_20200924-113953233_1

rsssxd commented 3 years ago

Removed but no updates to browser?

rsssxd commented 3 years ago

πŸ˜₯

rsssxd commented 3 years ago

@interfect Update ? Maybe Today? πŸ™ƒπŸ˜œ

abhijitvalluri commented 3 years ago

I am creating a release today. @interfect I am going to enable release automation today and test it out with the next release of iceraven. So, give me a few hours. @reyis4402 this will definitely not enable warp settings as we are still not using nightly Gecko engine. Sorry!

rsssxd commented 3 years ago

Won't Icerevan be updated to the latest build of Fenix? @abhijitvalluri

rsssxd commented 3 years ago

Last update does not install @interfect @abhijitvalluri

rsssxd commented 3 years ago

Arm64 corrupt

abhijitvalluri commented 3 years ago

Thanks for pointing out the issue. I will try to investigate and fix it. Deleted the bad release in the meantime.

rsssxd commented 3 years ago

Please update to the latest fenix

interfect commented 3 years ago

@reyis4402 It's not a matter of updating to the "latest" code from Fenix, or even the latest browser engine. There are multiple "latest" browser engines simultaneously. Specifically, there are three flavors: "nightly", "beta", and "release". Each has a current, most recent, latest version. Which flavor any build of the browser actually uses is controlled here:

https://github.com/fork-maintainers/iceraven-browser/blob/648aaa00a243b4364510bc1e097156562703d4ba/app/build.gradle#L360-L366

We're already using the latest "release" version in our "forkRelease" builds (the ones we publish), with all the latest patches and security updates (as of whenever we last pulled in changes from Mozilla). But new testing features like "warp" are only put into the "nightly" and "beta" flavors first, until they've been tested enough that one can be sure they don't cause new problems.

We could change the flavor we use to "nightly" or "beta", but that might break some web sites.

We could also run you off a "forkDebug" build just for you, which should have our Iceraven features but use the "nightly" flavor of the browser engine, if you really want to test the two together. You could do it too. All you have to do is follow the instructions here, but say ./gradlew assembleForkDebug instead of ./gradlew assembleForkRelease, and look in app/build/outputs/apk/forkDebug/ for the resulting APKs.

interfect commented 3 years ago

@reyis4402 Here's an arm64 APK debug build for you. It ought to have the "warp" feature for testing, but it doesn't have all the release icons and stuff, and it may have other bugs.

rsssxd commented 3 years ago

It crashes, also I have a lot of settings in the inside, I can't leave them Screenshot_20200927-232743614

rsssxd commented 3 years ago

Please provide a second version with warp setting for icerevann browser

rsssxd commented 3 years ago

@interfect @abhijitvalluri Warp setting is already false and it is activated if the user wishes.

It's a pity that you don't put icerevaann in the browser

interfect commented 3 years ago

OK @reyis4402, here's a release-mode build of 1.1.0 with the nightly version of the engine swapped in, for arm64, under the io.github.forrkmaintainers.iceraven app ID, with the right signing key. I've installed it and verified that it has the "warp" setting, and it doesn't immediately crash for me. I can't guarantee that it's stable, because it isn't (it's using the nightly version of the browser engine), but you should be able to use it.

Please report back on whether it's any more broken than the real 1.1.0 release; if not I suppose we could consider changing to the nightly version of the engine for everyone, or making multiple flavors of builds for the releases. Ideally it would be a runtime setting, but I think the hacking required to swap out the whole browser engine at runtime might be too much.

CharmCityCrab commented 3 years ago

For what it's worth, I strongly favor sticking with the stable version of the rendering engine. I use Iceraven as my default Android browser, and stability is much more important to me than a mild speed increase.

Warp will reach Iceraven shortly after Firefox stable gets it. It's not like we'll never see it. Let them test it and shake out a few of the bugs first. We'll get it when it's ready.

The Iceraven developers were very kind in creating reyis his own personal build so he could use this feature. However, what he quickly seemed to find out is that it crashed a lot because it isn't ready, which to me confirms the decision making process in not widely implementing it yet.

If it were just a matter of a simple about:config switch, I'd say sure, put it in defaulted to off, and the very few people who are interested in using something that might give them a 5% speed boost at the price of constant browser crashes could go ahead and enable it on their personal builds. However, it doesn't sound like that's something that can be done- we'd have to go to a less stable build of the rendering engine to get that in there, and it is very much not worth it, and would put the entire browser on a very different track that would have lasting effects in terms of how the browser would work long-term just to shoehorn this one thing in a little bit sooner than it otherwise would naturally reach us through stable.

Iceraven is not Firefox's unbranded testing branch. It's it's own browser, and the releases are the stable releases for Iceraven. To really gain marketshare, Iceraven needs to be reliable.

In the long-run, I would actually even favor using upstream stable as the base for everything except for key features we need from beta and nightly (If they work correctly most of the time), and of course Iceraven specific code and features. I am not sure that's the right move to make right now, because upstream hasn't gotten enough features down to the non-rendering related elements of their stable branch to really make it anything close to a feature complete browser to the standards of a lot of Iceraven's user base. But, eventually, it'd make sense to transition to stable as the core for everything, as long as we don't drop user options and features in the process- when "eventually" is time wise would be something I would trust the developers to figure out. In the meantime, though, I wouldn't destablize the main thing that is already ported from stable.

I don't see stability in the rendering engine as going against the core "options" oriented mission of Iceraven either. Invisible small performance boosts like Warp provides when it doesn't crash the browser are not really UI options or privacy protecting options, which tends to be what the average end user thinks of as options.