A (potential?) solution for SDK extensions...

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.
New Tobin Paradigm

Re: A (potential?) solution for SDK extensions...

Unread post by New Tobin Paradigm » 2017-01-10, 19:49

Well it was worth a try anyway... There likely is a solution for this but it is deep in XPIProvider... There is an additional idea that could be made to assure the foundation is alive before you access anything from it.. Register an observer in the foundation and then each PMKit extension will, on bootstrap wait until it can get a go ahead signal to continue initialization. Maybe? I dunno..

There are ways around it I am sure but.. I am tired and tired.

As for the toolkit part.. Yeah it requires duplication but you could always create a second copy of jetpack as the PMKit.. Leave jetpack alone and static to service DevTools until such time it can get widdled down to what is absolutely necessary for DevTools and you can do whatever you want with pmkit..


SGvagon

Re: A (potential?) solution for SDK extensions...

Unread post by SGvagon » 2017-01-13, 20:28

So, this solution be able to install SDK addons? And Jetpack too? Or I must some edit these addons for Pale Moon? Thank you in advance. I need Twitch Tracker https://addons.mozilla.org/cs/firefox/a ... h-tracker/ addon to work in Pale Moon, or Twitch Now (but this addon is for newer Firefox than Pale Moon) .

JustOff

Re: A (potential?) solution for SDK extensions...

Unread post by JustOff » 2017-01-13, 21:06

SGvagon wrote:So, this solution be able to install SDK addons? And Jetpack too? Or I must some edit these addons for Pale Moon?
The most of SDK-based add-ons can be adapted to work with Pale Moon 27.1 (currently in beta) using PMkit. The highest chances have those add-ons who are compatible with Firefox 38. The others likely can be adapted too, but probably will require more work.

You have to share a link to PMkit documentation (currently draft) with the developer of your favorite add-on and ask him to add support for Pale Moon. In case the developer will need some more information, I am ready to answer his questions here on forum in a separate topic.

If the add-on is hosted on GitHub, like Twitch Now, you can open an issue (or even poll request) with your wish, so we will be able to communicate right there.


UPD: Here is the successful example of how it was done with YouTube ALL HTML5 (you are not required to propose ready-made solution as I did).

illiad
Fanatic
Fanatic
Posts: 222
Joined: 2016-05-15, 13:04

Re: A (potential?) solution for SDK extensions...

Unread post by illiad » 2017-01-14, 18:47

Hmmm, I dunno about video, many problems with extensions... :crazy: please, I have no clue about all the fancy stuff like SDK, Jet, etc, etc... :? :( :roll: :wtf:

No, they all load, LOOK like they work... BUT when the 'options' dialog comes up, there is little or no control, even the X does not work???

the ones I cannot do without are TabMix plus, and TabFlick (this enables a tab to be easily moved/copied to another window )

There are lots of others, but until the above work properly, I will have to stay with V26.5...
VM 300Mbs in london england :lol: :coffee: on Intel Core I7 3GHz on Gigabyte X58a.
PM 32.4.1(64bit) on win7(64bit) sp1 - does ytoobe better than FF!! 8-) :lol: :P
Got 24Gig, Nvidia GTX 1060 :D dont need 4k - not rich, not gamer, newer GPUs only for $$$ peeps
:eh: useragentstring(com) :problem: FF 115.3.1 :angel: :P

JustOff

Re: A (potential?) solution for SDK extensions...

Unread post by JustOff » 2017-01-14, 18:54

illiad wrote:Hmmm, I dunno about video, many problems with extensions... :crazy: please, I have no clue about all the fancy stuff like SDK, Jet, etc, etc... :? :(
Please keep the thread on-topic :!:

illiad
Fanatic
Fanatic
Posts: 222
Joined: 2016-05-15, 13:04

Re: A (potential?) solution for SDK extensions...

Unread post by illiad » 2017-01-14, 19:20

As I said, I need help understanding... please explain more fully... :)
VM 300Mbs in london england :lol: :coffee: on Intel Core I7 3GHz on Gigabyte X58a.
PM 32.4.1(64bit) on win7(64bit) sp1 - does ytoobe better than FF!! 8-) :lol: :P
Got 24Gig, Nvidia GTX 1060 :D dont need 4k - not rich, not gamer, newer GPUs only for $$$ peeps
:eh: useragentstring(com) :problem: FF 115.3.1 :angel: :P

New Tobin Paradigm

Re: A (potential?) solution for SDK extensions...

Unread post by New Tobin Paradigm » 2017-01-14, 19:22

Off-topic:
illiad wrote:Hmmm, I dunno about video, many problems with extensions... :crazy: please, I have no clue about all the fancy stuff like SDK, Jet, etc, etc... :? :( :roll: :wtf:

No, they all load, LOOK like they work... BUT when the 'options' dialog comes up, there is little or no control, even the X does not work???

the ones I cannot do without are TabMix plus, and TabFlick (this enables a tab to be easily moved/copied to another window )

There are lots of others, but until the above work properly, I will have to stay with V26.5...
TMP and TabFlick are not even jetpack-style extensions.. So they are not a blocker for you as far as this thread is related.

One thing I don't understand is why you need an extension like TabFlick when Pale Moon supports dragging tabs off to create new windows and moving tabs back and forth between windows.. Did you not know this was a thing?
illiad wrote:As I said, I need help understanding... please explain more fully... :)
Anyway, understanding, tl;dr there are Two and a half different styles of extensions for Pale Moon and at least at this moment, other mozilla-style applications (not including webextensions).

Toolkit aka Overlay aka Legacy aka NOT Restartless are the oldest type of mozilla-style extensions.
Bootstrap aka Restartless is a hack on Toolkit-style extensions to allow dynamic and lazy loaded components of an extension without having to restart your browser.
Jetpack aka Add-ons SDK aka utterly failed garbage is an additional hack on top of Bootstrap-style extensions but do not have any other commonality with previously mentioned Toolkit extensions as they use an abstracted javascript defined API which translates code down to the native toolkit in the platform. You know, instead of just using the toolkit directly.

Also, if you wanted to know.. WebExtensions is Mozilla's inferior clone of Google Chrome Extensions which are the LEAST capable of the lot. This is not currently supported by Pale Moon.

illiad
Fanatic
Fanatic
Posts: 222
Joined: 2016-05-15, 13:04

Re: A (potential?) solution for SDK extensions...

Unread post by illiad » 2017-01-14, 20:13

"Pale Moon supports dragging tabs off to create new windows and moving tabs back and forth between windows"

but can you do that when all windows are maximized? and be sure what window is what?? here is the visual prompt..
dialog.jpg
You do not have the required permissions to view the files attached to this post.
VM 300Mbs in london england :lol: :coffee: on Intel Core I7 3GHz on Gigabyte X58a.
PM 32.4.1(64bit) on win7(64bit) sp1 - does ytoobe better than FF!! 8-) :lol: :P
Got 24Gig, Nvidia GTX 1060 :D dont need 4k - not rich, not gamer, newer GPUs only for $$$ peeps
:eh: useragentstring(com) :problem: FF 115.3.1 :angel: :P

New Tobin Paradigm

Re: A (potential?) solution for SDK extensions...

Unread post by New Tobin Paradigm » 2017-01-14, 20:33

Off-topic:
Regardless, the extension works with Pale Moon 27.*.. I just tested it.. Kinda neat.. but yeah..
Did you learn anything from my description of the types of extensions, btw?

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

Re: A (potential?) solution for SDK extensions...

Unread post by Moonchild » 2017-01-19, 01:17

Not sure why this topic was locked...
"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

kizo07

Re: A (potential?) solution for SDK extensions...

Unread post by kizo07 » 2017-01-19, 02:58

Matt A Tobin wrote:learn anything from
Thanks Matt A Tobin. I learned much too!
Just wondering, (maybe I should write this in sugestions?)
Could you write (or somebody else if You haven't time) some kind 'brochure' about extensions? To put on our add-on site.
I have some friends ('regular' users) whose I would like to introduce Pale Moon and I'm afraid that they can be impatient and instal to much add-ons at time.
You know, something about 'to much', possible issues, possible overlapping/interference, how they can affect browser...etc, etc...
Some kind 'recommendation' for first time/basic use, how prospective users might interact with add-ons in correlation with the browser.
I could think even a different add-ons sections...fe 'Pale Moon Regular', 'Pale Moon de luxe', 'Turbo Twin Moon', 'Pimp My Pale Moon'...

JustOff

Re: A (potential?) solution for SDK extensions...

Unread post by JustOff » 2017-01-20, 13:34

Given the public statements and the personal conversation I had with Matt A Tobin, I would like to ask him to stop trying to ruin PMkit, which is only going to be released with coming Pale Moon 27.1.

There are many reasons why PMkit was [re]introduced, they were already described in detail by Moonchild. Please don't try to eliminate it immediately, let's reach the final extinction of this technology in an evolutionary way.

Tobin, if you have your own view about how PMkit should be changed based on your own understanding of Pale Moon future, please keep in mind that such changes should not degrade neither PMkit, nor overall browser performance and stability. I'm against any political decisions, if they are unsafe from technical point of view and I'm not going to help you on this way untill you will be ready to propose truly reliable solution and prove it.
Off-topic:
Could you please better make efforts to Pale Moon Add-ons site? The lack of opportunity to independently add and modify extension after two years of APMO existence looks unacceptable and prevents normal development of whole project.

New Tobin Paradigm

Re: A (potential?) solution for SDK extensions...

Unread post by New Tobin Paradigm » 2017-01-20, 14:37

My views about jetpack are well know and substantiated in fact.. I will not debate it here.

However, if you hadn't noticed, because you didn't bother to check, I for two and a half years faithfully served this Project going way beyond most until recently. The Pale Moon Add-ons Site in its CMSMS-Hybrid form was limited but served where no other person or solution was available. I and the Add-ons Team made that happen. With the recent landing of Project Phoebus 1.0 the Second Generation Add-ons Site it had to first of all take up the burden and replace the CMSMS-Hybrid in all functions (save search)

Among the time in those two and half years when the CMSMS-Hybrid was in service it was improved visually and services added like working AUS with langpacks and optionally with externals, Search Plugins, API calls, etc. There has been countless HOURS of research and development in other areas of the project including Pale Moon its self. While you focus on a couple of small area I worked all over the place.

I learned a respectable functional understanding of the Mozilla-style build system, I updated libs such as but not limited to libvpx. I helped strip out undesirable components from the codebase such as the unused Windows Maintenance Service, broken incomplete in-content preferences and more in the codebase. I did daily real world testing of the browser development versions and more.

I also helped lay out and resolve issues getting FossaMail building with post-v25 Pale Moon backend and did many things there as well including a chat core update.

Also, for Tycho's development I single handedly brought the Pale Moon Application Specific Code up an effective 11 mozilla codebases and got it building and working to about 85% ensuring that Tycho would indeed be Pale Moon and not some extreme modification of Browser 38. Am I saying that this couldn't have been done by others.. No. In time it could have been. Am I trying to take away from those like Ryan and Travis and others who got it to its current 99.98% on first release? No. It is merely a fact. Actually the culmination of work done two years prior and research that spanned those two years brought to a successful end result.

You can check these all by my commit history on the Pale Moon repository, FossaMail Repository, defunct Tycho repository as well as my private repositories for evidence of this.

I also setup a wiki, the reverse engineered a working understanding to setup and maintain and am further improving the Pale Moon instance of xRef: The Code Cross Reference service. I also helped build up the Pale Moon IRC Channel as a non-forum option for community members and developers can interact.

Basically, beyond my modest (with the exception of porting the Application Specific Code to Tycho) but important contributions to primary Pale Moon development.. I helped build large chunks of the Pale Moon Services Infrastructure.

But back to the Add-ons Site.. Yeah those additional efforts had affected the time dedicated to the Add-ons Site but I have tried very hard to make that right with landing Phoebus 1.0 and starting production planning in Feb to start work on Phoebus 1.5 to bring new minor features to the add-ons site. Such as an unstable channel, Old versions of extensions, homepage/support links, and support for displaying the license. All things that have been requested by people.

I am also starting pre-production planning for the next major update to the Add-ons Site in the form of Phoebus 2.0. Which is planned to bring search back, full SQL storage of data, Self Service, Administration, and more of what should have came earlier but didn't. Seeing as I am not even a direct member of this project I am continuing Phoebus development regardless and in addition to my own ambitions to get back to Binary Outcast .

Regardless, I take serious offense to your trivializing of not only what I have done, who I am, and what I continue to do. How dare you call me out (read: attack) publicly like this and make what is by definition and internal discussion public without even presenting my side. I don't want to sound self-important, even though I am, and don't want to sound abrasive, even though I am, and don't want to sound overly opinionated, again even though I am. But what you have done just now.. Is wrong and I will not stand for it no matter WHAT my status is in this community.

JustOff

Re: A (potential?) solution for SDK extensions...

Unread post by JustOff » 2017-01-20, 15:11

Off-topic:
Sorry, but I see too much self-admiration is in your post, which, btw, is completely offtopic here. I have said only what I said and this bears no relation to your past achievements that I respect undoubtly. Please be constructive and do not turn the discussion into a personal fight.

New Tobin Paradigm

Re: A (potential?) solution for SDK extensions...

Unread post by New Tobin Paradigm » 2017-01-20, 15:15

Off-topic:
Then don't start a personal fight.

Also, is there something wrong with being proud of one's achievements and contributions to the greater good? In what world is this a bad thing?

riiis
Lunatic
Lunatic
Posts: 471
Joined: 2014-05-17, 15:51
Location: USA

Re: A (potential?) solution for SDK extensions...

Unread post by riiis » 2017-01-20, 18:10

JustOff wrote:
Off-topic:
Could you please better make efforts to Pale Moon Add-ons site? The lack of opportunity to independently add and modify extension after two years of APMO existence looks unacceptable and prevents normal development of whole project.
Off-topic:
APMO includes the following citation:
The Pale Moon Add-ons Site is powered by Project Phoebus.
The term "Project Phoebus" only links to GitHub and thus appears to be predominantly the conception and work of one person. But, I hadn't heard of this project before, so I checked by also googling the term. I was only able to find a few references to "Project Phoebus" not involving APMO. But even these other references also appear unrelated to the "Project Phoebus" featured at APMO.

Not only is one person principal in designing and coding APMO, this same one-person also seems to be running the website. This same one-person also seems to have and exercise capricious control of which add-ons are listed or not listed at APMO. Some of this capriciousness has been demonstrated, all too frequently, on this very forum. This same one-person also is shown as moderator for the forum category "The Pale Moon add-ons website". This capriciousness (i.e. erratic, without reason) provides little comfort to add-on developers (or users), that their migrated PMkit-type add-ons would be quickly listed, or even listed at all, at APMO.

APMO should function with proper internal controls (which includes proper "separation of duties"). The APMO powered by Project Phoebus does not appear much different, in outward appearance and issues, from the APMO of two years ago. Therefore, perhaps there should not be a Project Phoebus 2.0 in APMO's future (but something else).
Last edited by riiis on 2017-01-20, 18:41, edited 1 time in total.

JustOff

Re: A (potential?) solution for SDK extensions...

Unread post by JustOff » 2017-01-20, 18:15

riiis wrote:APMO
Please keep this thread on-topic, you better start the separate one to discuss it.

New Tobin Paradigm

Re: A (potential?) solution for SDK extensions...

Unread post by New Tobin Paradigm » 2017-01-20, 19:44

Please see the thread at: viewtopic.php?f=44&t=14558

Re: Recent Off Topic Discussion

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

Re: A (potential?) solution for SDK extensions...

Unread post by Moonchild » 2017-01-21, 20:13

May I remind everyone of the post I made recently:

viewtopic.php?f=17&t=14544#p103976

As for the on-topic discussion at hand, the following:
  • Both approaches offered (using toolkit modules and using a foundation extension) are equally valid. Offering the alternatives here is merely adding to the discussion, and is not "ruining" anything. In fact, the foundation extension idea was the first thing that popped up in both your minds as a way to work around the SDK conundrum -- so it must be a good idea.
  • Both alternatives have pros and cons to them.
    • PMkit's pros are in terms of having a quick solution with existing platform technologies.
    • Foundation extension's pros are in terms of agility, modular use and browser-independent progression of the add-on framework.
    • PMkit's cons are in terms of having to freeze the developer tools, not being very agile for future development, and having a heavier browser out-of-the box for everyone, even if developer tools would not be included by choice (without devtools, Pale Moon would not need to include the jetpack modules).
    • Foundation extension's cons are more complexity for the end user and (as long as web developer tools would still rely on jetpack) double the load of the framework in the browser for the people who do use it.
  • I agree with Tobin that the SDK is a deprecated way of creating extensions, and in my opinion has always been. So these solutions are solutions for deprecated technologies.
  • At the same time though, because of Mozilla, this is, as I've stated before, a legacy that we can't just ignore.
In light of all these points, not just one particular one, it's been my decision to go ahead with PMkit as a faster, less-involved solution to have SDK-based extensions have an option to be(come) compatible with Pale Moon going forward with relatively little effort on the extension developers' side.
At the same time, the alternative solution is no less valid, and may still be considered in the future if there will be a need to de-couple toolkit and SDK, but I hope by that time extension developers will have had the time and traction to write proper XUL extensions instead.

So, that out the way, everyone please stop getting your panties in a bunch.
Off-topic:
As for the APMO discussion, if you feel the setup isn't fair because there's not enough people involved staffing the add-ons site, then by all means, step up and offer your volunteered time and expertise to improve the setup and make it more of a community effort. And please don't assault the one person who has written this framework for presentation and updates of extensions for Pale Moon as a volunteer project, completely from scratch to be efficient and catered specifically to our needs, all right?
"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