The Future of Pale Moon

Talk about code development, features, specific bugs, enhancements, patches, and similar things.
Forum rules
Please keep everything here strictly on-topic.
This board is meant for Pale Moon source code development related subjects only like code snippets, patches, specific bugs, git, the repositories, etc.

This is not for tech support! Please do not post tech support questions in the "Development" board!
Please make sure not to use this board for support questions. Please post issues with specific websites, extensions, etc. in the relevant boards for those topics.

Please keep things on-topic as this forum will be used for reference for Pale Moon development. Expect topics that aren't relevant as such to be moved or deleted.
User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35402
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

The Future of Pale Moon

Unread post by Moonchild » 2016-06-09, 00:47

One might call this a reprise after similarly-titled news articles have popped up the last time there was talk about some important decisions that needed to be made a few months ago, but here it is: and official announcement about what is in store for Pale Moon in the near and longer-term future.

The longer-term future of Pale Moon

The most important thing to mention for the longer-term future of Pale Moon is that we are dedicating ourselves to a major code changeover to a new code base and rewriting important parts of the browser and the toolkit it bases upon. This has been touched on in past discussions when talking about a new browser product. We do not currently have a public-ready prototype yet for this browser based on new code (a few things are still quite broken) but we are making steady progress and the end result will give us the solid, desired base to build our browser upon for the foreseeable future. With this changeover, there will be a stronger focus on current technologies with good opportunities to extend and keep pace with significant developments on the web. This new milestone will, therefore, have a number of additions that have initially not been on our implementation agenda, so our current roadmap won't paint a full picture of the browser as it will eventually be -- this roadmap will be updated once we are closer to completing our goals and have a better handle on what we are and are not including in the new milestone.

Our application code (our front-end/UI) will remain mostly the same, which will give our current users a familiar, customizable interface on their window to the web. Under the hood, however, there will be big changes. To understand what this means, the basic structure of our browser needs some explanation: Our browser code is divided into several different components: networking, rendering, scripting engine, layout engine, toolkit and front-end. What end-users see and work with is the front-end (and to some extent the toolkit) -- these are the components that make an application what it is, e.g. Firefox, SeaMonkey, Pale Moon, Thunderbird, FossaMail, Sunbird, etc.
The other components are part of the back-end, which is what drives these applications and provides the platform to build the application on. Setting aside our own platform changes (Goanna), Pale Moon will build on this common (Mozilla-derived) platform, but the application code (front-end) and to some extent our toolkit, meaning the code that makes the application what it is and what is exposed to the users of the browser, will be and remain our own. So there is literally no Firefox application code, and it will not be "based on a specific version of Firefox".

Highlighting a few of the improvements that are planned:
  • Full support for DirectX 11 on Windows to take advantage of graphics acceleration. This will bring the browser in line with current graphics drivers and hardware in a more native way.
    Our current support level is DX 10 on supported operating systems.
  • Full support for HTTP/2.
  • Native support for Ruby Annotations in the parser (our current method is a much slower post-layout reformatting based on work by the talented Keiichi Shimamura).
  • Improvements to important "landmark" ES6 (JavaScript) features, like Promises, Maps, Sets, Symbols, Generator functions, Typed Arrays, and Array Methods.
  • Support for MSE/DASH video streaming and more advanced handling of media files.
Perhaps a more burning question for our current users is what we will continue supporting. We will continue to use/support:
  • The Goanna engine. With the milestone it will be the third iteration of this engine going forward.
  • Our time-tested user interface with full customizability.
  • XUL/XBL as our main UI and interface language.
  • Overlay/XUL (native UI) extensions with a little work. See below for important notes about extensions.
  • Extensions with binary (XPCOM) components.
  • Full themes and lightweight themes.
  • Sync 1.1 (Our current and secure Pale Moon Sync).
  • Advanced font styling (full graphite shaping support).
  • NPAPI plugins.
  • The Camellia encryption cipher.
Because of the changes as well as a re-balancing needed to keep the amount of work and code manageable for our team, there are however some negatives to this change as well. If we are going to move forward in a sustainable way, some parts of our support will have to be dropped.
We will have to:
  • Drop support for Windows XP entirely. Targeting the NT5 era of operating systems as a valid platform would require extensive extra measures and code paths to maintain for a generation of operating systems that is by now well past its end of life. Keeping things XP compatible would hold back our development potential.
  • Drop our current localization. Although our current language packs are a good method to localize the browser, the extensive changes would also mean that all language packs would have to be completely reworked, as well as the problem that we cannot move our user interface development at the pace we would like to if for every string change we would be reliant on our translators to follow suit on the short term. We also do not currently have an automated localization framework to help us out with such a big task, and are short on the manpower to organize this properly, to boot.
    Pale Moon's new milestone will initially be English-only as a result. We may return to offering localizations for some major languages around the globe later on when our code base has sufficiently settled, but it will require a completely new setup (and time).
  • Potentially drop support for Jetpack/SDK extensions. Our hybrid browser will almost certainly no longer sufficiently fit the bill for this kind of extension, especially considering most SDK extensions are specifically focused on and written for Australis, which we will never have. Although this may slightly raise the threshold for new add-on developers, creating native overlay extensions isn't exactly rocket science either.
Important notes about extensions

As indicated above, extensions will need some reworking to be compatible with our future Pale Moon. Pale Moon isn't Firefox, and with the new milestone, the differences will place it solidly apart to where extension developers will simply be expected to target us specifically or it will likely cause major issues. More so than before, I'd like to stress that our current ability to install Firefox extensions in Pale Moon is meant to be transitional behavior.
Mind you, the actual code changes needed may likely not be extensive, but at the very least it should be a conscious developer decision to release their extension for our target application instead of the topsy-turvy world where we are expected to make Pale Moon conform to/compatible with an extension that wasn't even written for us in the first place.
Because Mozilla is deprecating extensions as a whole (including Jetpack/SDK) in favor of "WebExtensions", there won't be any common ground left apart from legacy Firefox extensions that Mozilla won't support anymore, and SDK extensions kind of fall through the cracks as never having been very compatible with us to begin with and now being deprecated to boot. So, ultimately, there may also be no reason to extend our current transitional support for installing Firefox extensions that are factually targeting a different browser, but we'll have to see to what extent compatibility can be retained. With Mozilla planning a complete changeover, we will effectively be fully inheriting the XUL/XBL way of writing extensions the way they have been created for most of Firefox's lifetime.

The near future of Pale Moon

As you can imagine, something like this will take a considerable amount of time. So, for the near future, nothing will change for Pale Moon and we will continue to develop and publish updates to our current v26 era browser while the new milestone is developed further.
As the new milestone will develop further, we will publish public betas to involve our community in giving it shape, and to give extension developers plenty of time to try out their extensions on Pale Moon and make necessary changes before it is released as final.

I'll be more than happy to answer any specific questions about this change.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

adisib
Lunatic
Lunatic
Posts: 380
Joined: 2015-06-13, 03:34
Location: KY

Re: The Future of Pale Moon

Unread post by adisib » 2016-06-09, 02:30

Will the development team be releasing continued 26.x.x updates as extended support release after this major update is released and if so, is there a known time-frame for how long the ESR will last?

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35402
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: The Future of Pale Moon

Unread post by Moonchild » 2016-06-09, 06:27

adisib wrote:Will the development team be releasing continued 26.x.x updates as extended support release after this major update is released and if so, is there a known time-frame for how long the ESR will last?
There are no plans to make 26.* into an ESR. If anything, we want to reduce the number of parallel releases to keep the workload under control and better matched to the manpower we have.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

User avatar
loxodont
Astronaut
Astronaut
Posts: 725
Joined: 2014-07-26, 23:03
Location: Mare Serenitatis

Re: The Future of Pale Moon

Unread post by loxodont » 2016-06-09, 11:09

Not that I understand every of the technical changes in long term future, but from first reading plans sound good to me (sorry for the XP users).

Thx for the clarificaton about Pale Moon future, I'm glad there IS a roadmap.

One of the biggest cliffs to sail round will be the extensions functionality, from users view of course. If I get it right the part about extensions is rather about FF extensions compatibility. I personally don't use many of them, but will there be changes for Pale Moon add-ons too?

Ryrynz

Re: The Future of Pale Moon

Unread post by Ryrynz » 2016-06-09, 11:13

So what version if any are you basing it on? Having Electrolysis would be a very good idea.

Falna
Astronaut
Astronaut
Posts: 511
Joined: 2015-08-23, 17:56
Location: UK / France

Re: The Future of Pale Moon

Unread post by Falna » 2016-06-09, 11:54

Ryrynz wrote:So what version if any are you basing it on? Having Electrolysis would be a very good idea.
I wouldn't be too surprised if there's not a straightforward answer to the version that it's based on, if the end result will be a long way from any previous FF version.
From the main thread on the subject (viewtopic.php?f=5&t=6660), it's safe to say that there is zero chance of Electrolysis being included.

Forked extensions :
● Add-ons Inspector ● Auto Text Link ● Copy As Plain Text ● Copy Hyperlink Text ● FireFTP button replacement ● gSearch Bar ● Navigation Bar Enhancer ● New Tab Links ● Number Tabs ● Print Preview Button and Keyboard Shortcut 2 ● Scrollbar Search Marker ● Simple Marker ● Tabs To Portfolio ● Update Alert ● Web Developer's Toolbox ● Zap Anything

Hint: If you expect a reply to your PM, allow replies...

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35402
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: The Future of Pale Moon

Unread post by Moonchild » 2016-06-09, 12:12

loxodont wrote: If I get it right the part about extensions is rather about FF extensions compatibility. I personally don't use many of them, but will there be changes for Pale Moon add-ons too?
There will be changes for all add-ons. Depending on how an extension interacts it may not be much, or it may be a lot. This is why I say we will have plenty of time and open betas to get this all sorted.
Ryrynz wrote:So what version if any are you basing it on?
Please go back and read the initial post again.
Ryrynz wrote:Having Electrolysis would be a very good idea.
Having electrolysis would be a very bad idea. In fact, we're having to deal with fallout of half-implemented e10s in our work right now.
e10s is not something we want, and making everything asynchronous is not only complex, but also very inefficient for a good number of functions in a browser.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

half-moon

Re: The Future of Pale Moon

Unread post by half-moon » 2016-06-09, 12:13

I thought you've stated on multiple occasions that you weren't going to implement MSE, as it was just a stepping stone for nasty malware (EME/DRM).

Fedor2
Banned user
Banned user
Posts: 704
Joined: 2016-04-11, 01:26

Re: The Future of Pale Moon

Unread post by Fedor2 » 2016-06-09, 12:30

To make things clear, you will drop current palemoon code, and will adopt some new different code? whence this new code will be taken?

And what about this graphics acceleration feature, how it related with the hardware, and finally what will be the minimum hardware requirements for the new palemoon

Nevertheless, you'll have my support until i am able to make run it on winxp.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35402
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: The Future of Pale Moon

Unread post by Moonchild » 2016-06-09, 12:40

half-moon wrote:I thought you've stated on multiple occasions that you weren't going to implement MSE, as it was just a stepping stone for nasty malware (EME/DRM).
It is. And I have.

The other side of the coin is however that people with streaming sites are moving towards deprecating flash, and their alternative players regularly employ MSE/DASH to save bandwidth (unrelated to DRM). The reason why it will be in the next milestone is simply because it came with the package, and there is no reason to disable it if it's in increased use without EME. I don't like MSE because of what it stands for, and therefore this inclusion is done reluctantly and I do not and will not agree with EME -- but from a compatibility and relevance point of view, it's important to not needlessly restrict our users.

The web has evolved to something a lot more visual media heavy. This requires adjusting our balance.
Fedor2 wrote:To make things clear, you will drop current palemoon code, and will adopt some new different code?
No. Please read the initial post again. We will keep our current Pale Moon application code, but will adapt it to back-end changes.
Fedor2 wrote:And what about this graphics acceleration feature, how it related with the hardware, and finally what will be the minimum hardware requirements for the new palemoon
It's an extension of our current support. Eventually we'll drop support for people who do not have the platform update installed (which is available for all current NT6 operating systems, including Vista) reducing hardware accelerated support there, because it needlessly complicates the rendering logic.
System requirements will remain pretty much the same, with the exception that XP/2003 and other NT5-based operating systems will no longer be supported, at all. That includes offshoots like POSReady and ReactOS.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

x-15a2

Re: The Future of Pale Moon

Unread post by x-15a2 » 2016-06-09, 14:14

Thanks for this detailed update and the sense of openness that it represents. As PM users, many of us have an emotional investment in this project and having a road map laid out like this is great.

I'm wondering if this would be a good time for the PM development team to "officially" and proactively reach out to various extension developers, sharing this road map, letting them know that there is still an active environment for many of their extensions, and determining how PM can help them with keeping their projects alive and compatible with Pale Moon?

I understand that many of us (PM users) have contacted many extension developers but I'm thinking that communication directly from the development team would carry more weight and the team would be better equipped to answer both technical and business related questions that the extension developers may have.

As I see it, one of the great strengths of PM is the (potential) vast array of extensions that allow users a level of customization not found in other browsers. I hope that we can keep a large number of these extensions viable and available well into the future as PM continues to chart its own path.

Thanks!

New Tobin Paradigm

Re: The Future of Pale Moon

Unread post by New Tobin Paradigm » 2016-06-09, 15:03

We did proactively reach out to extension developers. A few awesome ones responded accordingly and over time some more have joined the ranks but the majority have snubbed us or never responded. The good thing is MOST are using sane open source licenses so even if they never come around (you know, after the end of true extensions on Firefox) others can fork and take them over.

When it comes to evaluation of exactly how Firefox extensions as-is (and current Pale Moon compatible extensions) will be supported it is a tough decision that needs careful evaluation. I can tell you that all the extensions I personally use seem to function as-is but almost all of them act upon the front-end code which is pretty much the same in Codename Tycho.

Preliminary results are extensions on a code compatibility level are going to be as follows.. Toolkit and Bootstrap extensions that mostly address the front end code like Image Toolbox, History Submenus II, Menu editors and things like that change how the browser looks and works (and by some miracle ABL 3.5b1 -- yay) should and in most cases will work without much issue. However, those interacting things that have changed like the post-Firefox 26 Findbar and those that touch deeper backend components to do their job will depend on if those backend components have been changed/refactored/etc. Like download managers may have a tough time initally. Those Jetpack (add-ons sdk) extensions will be very hit or miss because of just the unstable nature of jetpack especially if they expect to do anything relating to Australis proper).

As Moonchild said it will depend. Ideally it would be great to simply Pale Moon-ize them all and not load Firefox extensions as-is at all as that was always meant to be transitional and really makes what can be supported quite fuzzy.

Since we will be effectively inheriting the entire library of mozilla-style extensions (it is quite a rich library at that) and most of them all have solid open source licenses it will be up to all of us to move forward with extensions.

So I will say this.. We need to make the future better on this front. It is up to us. People, users, community members a long time ago made Firefox a popular household name but Corporate greed and marketing stupidity managed to all but kill that. Let us, the users, pick up the pieces and start it again and do it even better this time and make it stick. Not let imposed compromise and apathy take away our voice or our choice or our dreams again. We all have a second chance.. Let's all work to make sure that not only do we (developers of the browser) not screw it up but we (users) don't let it be screwed up.

Don't know how to code? Learn. Can't figure something out? Ask. Can't find something? Search.

We are in control of our own future and path. Let's all go where we want to go.. Together.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35402
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: The Future of Pale Moon

Unread post by Moonchild » 2016-06-09, 15:06

(mid-aired with Tobin highlighting another side of this story)
x-15a2 wrote:I'm wondering if this would be a good time for the PM development team to "officially" and proactively reach out to various extension developers, sharing this road map, letting them know that there is still an active environment for many of their extensions, and determining how PM can help them with keeping their projects alive and compatible with Pale Moon?
The question is: how? It's not like we have a mailing list or ready contacting information to reach out to.
It's not really possible for us developers to reach out individually to each extension developer. So... it would have to be something you, the user community, would have to help with. Do you have favorite extensions that you would like to see continued as we move forward? If so, reach out and ask (nicely) if the devs would consider going into the future with us.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

x-15a2

Re: The Future of Pale Moon

Unread post by x-15a2 » 2016-06-09, 17:56

@Tobin and @Moonchild, thanks for the great input, it is appreciated.

Sometime in my spare time (ha!) over the next couple of day, I may try to come up with some verbiage that PM users can use as a template when attempting to contact extension developers, requesting their involvement in the project. I'll forward it to you first then (with your blessing) we can post it here for others to use when contacting their favorite extension developers. I'll shoot to be concise and accurate while providing contact and cursory project information. In the mean time, let me know if there is any specific information that should be included and I'll be sure to get it in.

I'll also continue to look for online hangouts that FF extension developers frequent.

Thanks

rea987

Re: The Future of Pale Moon

Unread post by rea987 » 2016-06-09, 22:01

Very nice to hear. Would support for MSE/DASH fix video problems on Twitter?

Thehandyman1957

Re: The Future of Pale Moon

Unread post by Thehandyman1957 » 2016-06-09, 23:51

Well, it was nice while it lasted. I do hope the best for those that will continue to be able to use this new Pale Moon.

I am very thankful that I was able to partake, and find this wonderful browser.

I will continue to use what you gave us in XP land. I could never go back to any other browser. :thumbdown:

And have become very much comfortable with the add on's I use.

I completely understand the reasons for not continuing XP support.

It is sad though that ReactOs will never have a place here. I get it, but it's sad.

I also wonder though about this non ability to use anything but English. :problem:

How many folks here use Pale Moon in a Non English mode? How many folks will no longer be able to use it? :think:

It will be interesting to see how many folks continue to use the older versions because of this.

Gone are the days of old. I will always miss the good ol days. :(

x-15a2

Re: The Future of Pale Moon

Unread post by x-15a2 » 2016-06-10, 00:28

I won't attempt to address all of your points, but regarding:
Thehandyman1957 wrote:I also wonder though about this non ability to use anything but English. How many folks here use Pale Moon in a Non English mode? How many folks will no longer be able to use it? It will be interesting to see how many folks continue to use the older versions because of this.
Let's see what MC actually wrote:
Moonchild wrote:Pale Moon's new milestone will initially be English-only as a result...
It's all in the details.

New Tobin Paradigm

Re: The Future of Pale Moon

Unread post by New Tobin Paradigm » 2016-06-10, 01:45

Because this needs to be said.. PLEASE read the initial post very carefully because the details matter.

Also.. :twisted:
5c5fb1e6-43c5-4720-a1bb-16e0fe27efee.jpg
Please do not start a discussion about the screenshot.

MicrosoftDOS

Re: The Future of Pale Moon

Unread post by MicrosoftDOS » 2016-06-10, 03:29

DELETE DELETE DELETE
Last edited by MicrosoftDOS on 2016-06-28, 02:01, edited 3 times in total.

Lurker_01
Fanatic
Fanatic
Posts: 122
Joined: 2015-06-12, 14:59
Location: Uruguay

Re: The Future of Pale Moon

Unread post by Lurker_01 » 2016-06-10, 07:11

I think the improvements to the browser in this new version are quite great, i am not sure what improvement will DirectX 11 bring other that probably somewhat more responsible browser in some cases (having myself only dual-core, directx 11 multi-threading is not that useful and flash will "lag" the computer anyway (i find html5 versions worse for now, maybe it will be better on the new version)).
The other extra features is a plus.
The temporary loss of localization will be a nuisance but something i think most tech people can live with because they originally found this but non-tech people probably not so much if they don't know english or can't work on it, the userbase will probably will be fractured somewhat because of this for a time but is not the end of the world because the web is still quite functional on this version for now, the only bad thing would be is no security upgrades. (considering the fact i am on xp for now, you probably would find this is kind of ironic)
Off-topic:
While i wish i could modify Pale Moon because i am stuck for a while on XP because a HDD crash i honestly can only use the browser as best of my abilities and bear in the possible shortcomings, because if i ever wanted to touch and junk my computer with development tools and do thin customization for myself i may as well just go and get gentoo and build everything and audit everything and remove all not necessary features because i will lose the convenience of just installing and updating, and because of that i am on windows and not linux with 100 dependencies (yes distributions do exist but not always can be usable).
Off-topic:
@Tobin Did you post this screenshoot in "What my Pale Moon looks like"? :P this is a Joke

Locked