How to remove the require instance in Javascript.
-- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Include pdb files for firefox-sdk, and remove redudnt firefox-sdk/sdk/lib folder.
The firefox-sdk/sdk/lib is duplicate of firefox-sdk/lib That's was not necessary. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: now available on desktop Firefox
Wonderful, that's the feature I am looking for a long time. On Tue, Mar 8, 2016 at 5:55 AM, J. Ryan Stinnett wrote: > Do you like HTML? Do you like to build core browsing UI for desktop > Firefox? Now you can have both together! > > In more detail, is now enabled[1] on desktop Firefox. > This makes it possible to create frames for displaying web content (similar > to a ) from HTML chrome pages. This is the same system that > B2G has used for some time to display web content from an HTML UI. (This > feature is not available to web content and is not meant to be used there.) > > This gives us a core building block that can be used to build a fully HTML > browser UI. Of course, the existing UI has many XUL / XBL dependencies, but > this is at least one step. The DevTools team plans to use this new feature > quite soon as part of a refreshed Responsive Design Mode. Additionally, it > should make it easier for projects like browser.html to run from unmodified > Firefox. > > By default, can't access the storage used by > for cookies and other site data, making it hard to share page > state across the two browser frame types. An additional feature mozbrowser noisolation> has been added, which gives the frame access to the > same storage as . This is only meant for use on desktop > Firefox to allow HTML and XUL browser frames to work together. > > [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1238160 > > - Ryan > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
The Object performance are 5-100 times slower than Chrome. Array is a bit slow, map is faster, uint32array are 5 times faster.
My conclution: we really need improve the performance of Object, cause that's the most frequently used Thing. ```code performanceButton.onclick = function () { let startTime = Date.now() ChromeSamples.setStatus(`Start performance testing at time ${startTime}`); function testArray(count) { let startTime = Date.now() let a = [] for (let i = 0; i < count; ++i) { a[i] = i + 1 } return Date.now() - startTime } function testObject(count) { let startTime = Date.now() let a = {} for (let i = 0; i < count; ++i) { a[i] = i + 1 } return Date.now() - startTime } function testObjectSingle(count) { let startTime = Date.now() let a = {} for (let i = 0; i < count; ++i) { a[0] = i + 1 } return Date.now() - startTime } function testMap(count) { let startTime = Date.now() let a = new Map() for (let i = 0; i < count; ++i) { a.set(i, i + 1) } return Date.now() - startTime } function testUint32Array(count) { let startTime = Date.now() let a = new Uint32Array(count) for (let i = 0; i < count; ++i) { a[i] = i + 1 } return Date.now() - startTime } setTimeout(function () { let count = 1000 let testResult = { array: testArray(count), object: testObject(count), objectSingle: testObjectSingle(count), map: testMap(count), uint32Array: testUint32Array(count), } ChromeSamples.setStatus(`Start performance ending at time ${JSON.stringify(testResult)}`); }) } ``` Firefox: Start performance ending at time Start performance ending at time {"array":340,"object":4762,"objectSingle":2699,"map":5151,"uint32Array":29} Chrome: Start performance ending at time {"array":215,"object":614,"objectSingle":49,"map":6232,"uint32Array":100} -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Distribute a firefox-sdk.lib for linking a executable with icon
And firefox-sdk.lib should support for application.ini directly Or using a compiled application.ini.h obj file to link with firefox-sdk.lib to generating a user executable. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: How to remove #ifdef XP_MACOSX in xul files?
On Tue, Feb 2, 2016 at 9:08 PM, Gijs Kruitbosch wrote: > On 02/02/2016 12:36, Philip Chee wrote: > >> On 01/02/2016 18:17, Philipp Kewisch wrote: >> >>> You can use runtime checks for the OS, e.g. using Services.appinfo >>> >>> Philipp >>> >> >> Dude, he's talking about XUL, not JS. Please stop giving useless advice. >> > > It's perfectly possible to runtime-change the DOM tree as needed from JS, > either using DOM methods or using overlays and loadOverlay(). > > Firefox now uses AppConstants.jsm (e.g. `if (AppConstants.platform == > "macosx")` in many places to do things we used to do with ifdefs. That > sometimes includes migrating the ifdefs out of the XUL and making > behavioural changes at runtime instead. > > Please be respectful of other people's efforts to answer questions - > especially when the question is very tersely formulated and it is not > entirely clear what the scope of the question or possible solutions is. Thanks you all, I know how to deal with the problem with Javascript or overlay, but that's not I wanted, overlay doesn't support in Newest extensions, and javascript means I have to carefully writing down code for different platform and would be redundant. In deed, I ask this question because the whole mozilla source tree still need to preprocess XUL/html files for different OS/Target, and that's stopping us to wipe out the preprocess building system for those files. If we have simple runtime directive to direct which part of XUL files should be exclude out , Like IE( > > ~ Gijs > > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: How to remove #ifdef XP_MACOSX in xul files?
I means there is any instruction in XUL to remove the #ifdef XP_MACOSX but still preserve the semantics. On Mon, Feb 1, 2016 at 2:55 PM, Martin Thomson wrote: > sed -i~ -e '/#ifdef XP_MACOSX/d' xul files > > I think that we need more information on what it is that you intend to > do if we are to make a sensible suggestion. > > On Mon, Feb 1, 2016 at 5:23 PM, Yonggang Luo > wrote: > > How to remove #ifdef XP_MACOSX in xul files? > > ___ > > dev-platform mailing list > > dev-platform@lists.mozilla.org > > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to remove #ifdef XP_MACOSX in xul files?
How to remove #ifdef XP_MACOSX in xul files? ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
> > >> In fact, the only reason to use WebIDL is to getting javascript to using >> some native code, but the situation is I have no need to do that, all the >> new code we've writing down are in pure Javascript, if we have the willing >> to implement something with WebIDL, for example, the IMAP protocol, then >> we would choose the pure javascript to do that, like the jsmime does. >> The reason to rewriting XPConnect with JS-CTypes is not to use XPCOM to >> implement new things, but to re-use exist things. >> > > Are you talking about calling existing native code from JS? You can do > that with WebIDL by writing binding entry points for the classes you want. > I am talking about calling existing XPCOM code from JS :( if it's existing native code, the js-ctypes maybe enough. That's why I am doing such a thing that you are thinking weird and not necessary. Indeed, I am not willing to do that things too, but I still have no other options yet. > > If you're talking about impersonating arbitrary XPCOM components with > JS-implemented code...good luck doing that with anything other than > XPConnect. ;-) > Hope that would works > > >> Besides the mork database are only capable to running in main-thread, is >> that possible to running the libmime in the worker? >> Cause the libmime is really CPU intensive, I've seen it occupied 100% >> usage of CPU, if that could be able to off main-thread, then that's would >> be a great performance improvement. >> >>> >>>> > >>>> > >>>> > -- >>>> > Joshua Cranmer >>>> > Thunderbird and DXR developer >>>> > Source code archæologist >>>> > >>>> > ___ >>>> > dev-platform mailing list >>>> > dev-platform@lists.mozilla.org >>>> > https://lists.mozilla.org/listinfo/dev-platform >>>> > >>>> >>>> >>>> >>>> -- >>>> 此致 >>>> 礼 >>>> 罗勇刚 >>>> Yours >>>> sincerely, >>>> Yonggang Luo >>>> ___ >>>> dev-platform mailing list >>>> dev-platform@lists.mozilla.org >>>> https://lists.mozilla.org/listinfo/dev-platform >>>> >>> >>> >> >> >> -- >> 此致 >> 礼 >> 罗勇刚 >> Yours >> sincerely, >> Yonggang Luo >> > > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
On Tue, Jan 5, 2016 at 1:33 AM, Bobby Holley wrote: > On Mon, Jan 4, 2016 at 7:57 AM, 罗勇刚(Yonggang Luo) > wrote: > >> On Mon, Jan 4, 2016 at 11:37 PM, Joshua Cranmer 🐧 >> wrote: >> >> > On 1/4/2016 9:24 AM, 罗勇刚(Yonggang Luo) wrote: >> > >> >> 1、I was not trying implement new things in xpcom, our company(Kingsoft) >> >> are >> >> maintaining a fork of thunderbird, and at the current time >> >> We have to re-use existing XPCOM components that already exists in the >> >> thunderbid gecko world, beyond pure html >> >> things, there is too much things we have to re-use(xpcom things), and >> we >> >> are facing performance problems, >> >> the mork-db and the mime-parse, they are all working in synchronous >> way, >> >> so >> >> I have to figure out a way to calling these components >> >> in a worker directly, so that they would not cause UI-lag in >> main-thread. >> >> That's all the reason why I was trying to re-implement XPConnect with >> >> js-ctypes. So that I can calling >> >> the exist components in the worker. And free the main-thread. >> >> >> > >> > Mork, by design, can't be used off main-thread. So even if you're trying >> > to subvert it by using JS-ctypes and etc., it's not going to work very >> > well, let alone the problems you have with trying to maintain a >> > pseudo-reimplementation of xpconnect. >> > >> >> 3、 There is an advantage of XPCOM, WebIDL seems merely for Javascript, >> but >> >> XPCOM seems more language-neutral, we could be able to >> >> use xpcom in Java/Python and other languages, that's looks like a >> >> advantage >> >> of XPCOM. >> >> >> > XPIDL is effectively a fork of an old version of IDL. Its interfaces are >> > incapable of cleanly representing union types or array types very well, >> > something that WebIDL does far better, as WebIDL is partly a fork of a >> > newer version of IDL. I believe there already exists WebIDL bindings for >> > C++, JS, and Rust, and extending it to Java or Python would not be a >> > challenging task. The only complexity is that the WebIDL bindings does >> not >> > use a grand-central dispatch mechanism like XPConnect, but that merely >> > means that adding new bindings requires writing a code generator and >> > feeding all the interfaces through it instead of implementing several >> > customized dispatch mechanisms. Not that PyXPCOM or JavaXPCOM have >> worked >> > for the past several years. >> >> The core issue is WebIDL is not usable in non-gecko code yet, I didn't see >> any example in thunderbird source tree, but I see lots of XPCOM codes. So >> I >> do not have any clue how to using WebIDL in thunderbird world >> > > You would certainly need to blaze this trail. But it's certainly possible > (given that you're willing to fork mozilla-central), and I guarantee it > will be more tractable than rewriting XPConnect with JS-CTypes. > > In fact, the only reason to use WebIDL is to getting javascript to using some native code, but the situation is I have no need to do that, all the new code we've writing down are in pure Javascript, if we have the willing to implement something with WebIDL, for example, the IMAP protocol, then we would choose the pure javascript to do that, like the jsmime does. The reason to rewriting XPConnect with JS-CTypes is not to use XPCOM to implement new things, but to re-use exist things. Besides the mork database are only capable to running in main-thread, is that possible to running the libmime in the worker? Cause the libmime is really CPU intensive, I've seen it occupied 100% usage of CPU, if that could be able to off main-thread, then that's would be a great performance improvement. > >> > >> > >> > -- >> > Joshua Cranmer >> > Thunderbird and DXR developer >> > Source code archæologist >> > >> > ___ >> > dev-platform mailing list >> > dev-platform@lists.mozilla.org >> > https://lists.mozilla.org/listinfo/dev-platform >> > >> >> >> >> -- >> 此致 >> 礼 >> 罗勇刚 >> Yours >> sincerely, >> Yonggang Luo >> ___ >> dev-platform mailing list >> dev-platform@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-platform >> > > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
On Mon, Jan 4, 2016 at 11:37 PM, Joshua Cranmer 🐧 wrote: > On 1/4/2016 9:24 AM, 罗勇刚(Yonggang Luo) wrote: > >> 1、I was not trying implement new things in xpcom, our company(Kingsoft) >> are >> maintaining a fork of thunderbird, and at the current time >> We have to re-use existing XPCOM components that already exists in the >> thunderbid gecko world, beyond pure html >> things, there is too much things we have to re-use(xpcom things), and we >> are facing performance problems, >> the mork-db and the mime-parse, they are all working in synchronous way, >> so >> I have to figure out a way to calling these components >> in a worker directly, so that they would not cause UI-lag in main-thread. >> That's all the reason why I was trying to re-implement XPConnect with >> js-ctypes. So that I can calling >> the exist components in the worker. And free the main-thread. >> > > Mork, by design, can't be used off main-thread. So even if you're trying > to subvert it by using JS-ctypes and etc., it's not going to work very > well, let alone the problems you have with trying to maintain a > pseudo-reimplementation of xpconnect. > >> 3、 There is an advantage of XPCOM, WebIDL seems merely for Javascript, but >> XPCOM seems more language-neutral, we could be able to >> use xpcom in Java/Python and other languages, that's looks like a >> advantage >> of XPCOM. >> > XPIDL is effectively a fork of an old version of IDL. Its interfaces are > incapable of cleanly representing union types or array types very well, > something that WebIDL does far better, as WebIDL is partly a fork of a > newer version of IDL. I believe there already exists WebIDL bindings for > C++, JS, and Rust, and extending it to Java or Python would not be a > challenging task. The only complexity is that the WebIDL bindings does not > use a grand-central dispatch mechanism like XPConnect, but that merely > means that adding new bindings requires writing a code generator and > feeding all the interfaces through it instead of implementing several > customized dispatch mechanisms. Not that PyXPCOM or JavaXPCOM have worked > for the past several years. The core issue is WebIDL is not usable in non-gecko code yet, I didn't see any example in thunderbird source tree, but I see lots of XPCOM codes. So I do not have any clue how to using WebIDL in thunderbird world > > > -- > Joshua Cranmer > Thunderbird and DXR developer > Source code archæologist > > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
On Mon, Jan 4, 2016 at 9:53 PM, smaug wrote: > On 01/03/2016 06:55 PM, David Rajchenbach-Teller wrote: > >> Well, XPConnect is designed for the main thread, and many of the things >> it does assume that everything takes place on the main thread. >> >> An example, from the topic of my head: whenever objects cross between >> JavaScript and C++ through XPConnect, they need to be retained in >> hashtables to preserve unicity, etc. For performance reasons, these >> hashtables are not protected against concurrent access. >> >> Indeed. Which is why he is thinking to re-implement xpconnect for workers > using js-ctypes, no? > (personally I'd try to avoid xpconnect as much as possible and rather try > to figure out how to make > the webidl bindings usable for whatever use case we're talking about > here.) > > > Another example: JavaScript objects can point towards C++ objects and >> vice-versa. The garbage-collector (well, the cycle-collector) needs to >> walk the graph in specific ways to get rid of possible cycles that >> involve both C++ and JS. >> > This happens in workers too. > > > The worker's implementation of the >> cycle-collector is much simpler (and quite different) than the main >> thread's, >> > Not really. Cycle collector is exactly the same (CycleCollectorRuntime is > a bit more complicated in main thread)... So, the a bit more complicated part are used to dealing with the XPConnect things? I am trying to figure out a way that support > > > > since it doesn't need to handle XPConnect. >> > ...XPConnect just adds couple of extra js value containers to trace. Not > at all that different > to JSHolder hashtable which is used also in workers. > XPCWrappedJS is possibly the weirdest part of xpconnect from CC/GC point > of view, given that it > implements also weakreference handling. > > > But anyhow, I would certainly try to avoid any new xpconnect usage and try > to figure out how to utilize > webidl. Webidl can express APIs in more JS-friendly way and in Gecko case > also the C++ side is way simpler > (and faster) than implementing idl interfaces in C++. > 1、I was not trying implement new things in xpcom, our company(Kingsoft) are maintaining a fork of thunderbird, and at the current time We have to re-use existing XPCOM components that already exists in the thunderbid gecko world, beyond pure html things, there is too much things we have to re-use(xpcom things), and we are facing performance problems, the mork-db and the mime-parse, they are all working in synchronous way, so I have to figure out a way to calling these components in a worker directly, so that they would not cause UI-lag in main-thread. That's all the reason why I was trying to re-implement XPConnect with js-ctypes. So that I can calling the exist components in the worker. And free the main-thread. 2、Besides these reason, another important reason, I didn't see any way(example) to use WebIDL without building xul.dll, maintain the xul.dll is a big burden for small teams (for us, about 8 developers), so even if we trying to implement WebIDL things, we need a way to building WebIDL components independently, at the current time, I didn't see any possibilities. 3、 There is an advantage of XPCOM, WebIDL seems merely for Javascript, but XPCOM seems more language-neutral, we could be able to use xpcom in Java/Python and other languages, that's looks like a advantage of XPCOM. -Olli > > > > > Mixing both > >> accidentally can lead to unpredictable results. >> >> Oh, and XPConnect pointers can simply not be dereferenced from worker >> threads. Attempting to do so will crash libxul by design to avoid >> accidents. >> >> etc. >> >> Cheers, >> David >> >> On 03/01/16 17:45, 罗勇刚(Yonggang Luo) wrote: >> >>> >>> >>> On Mon, Jan 4, 2016 at 12:35 AM, David Rajchenbach-Teller >>> mailto:dtel...@mozilla.com>> wrote: >>> >>> Accessing XPCOM in a worker will most likely break the >>> garbage-collector >>> in novel and interesting ways, so I don't suggest heading in that >>> direction. >>> >>> I'd like to hear more information about that, >>> For example, if I setting a finalize for each XPCOM instance >>> Object(javascript), when the Object's is GCed, then I release >>> the xpcom instance, is that would not break the garbage-collector? >>> Or we have other problems about garbage-collector, I am interested in >>> that. >>> >>> >>> >>> Cheers, >>> David >&g
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
On Mon, Jan 4, 2016 at 7:22 PM, Bobby Holley wrote: > If you're forking mozilla-central, that shouldn't be a problem, right? > I am asking for some help, seeking for problems when I was trying to implement XPCOM connect with js-ctypes. So far, the garbage collection would be the biggest problem. Even though WebIDL has it's own advantages, but XPCOM are more language-neutral. On Jan 4, 2016 12:46 AM, "罗勇刚(Yonggang Luo)" wrote: > >> Well, cause that's not possible to implement APIs in webidl in the >> external dll with the xul >> >> On Mon, Jan 4, 2016 at 3:55 PM, Bobby Holley >> wrote: >> >>> Why not use webidl to expose the apis you want in workers? >>> On Jan 3, 2016 8:08 PM, "罗勇刚(Yonggang Luo)" >>> wrote: >>> >>>> >>>> >>>> On Mon, Jan 4, 2016 at 6:38 AM, Bobby Holley >>>> wrote: >>>> >>>>> As XPConnect module owner, I'd like to get it in record that we will >>>>> almost >>>>> certainly not take this or any support code for it (i.e. code in >>>>> js-ctypes) >>>>> in mozilla-central. >>>>> >>>>> Well, I was already have a modified version of mozilla-central, if the >>>> upstream is not possible, then I just need to maintain the fork and can not >>>> upstream the code. >>>> >>>>> On Sun, Jan 3, 2016 at 11:46 AM, Joshua Cranmer 🐧 < >>>>> pidgeo...@gmail.com> >>>>> wrote: >>>>> >>>>> > On 1/3/2016 10:24 AM, 罗勇刚(Yonggang Luo) wrote: >>>>> > >>>>> >> So that we could be able to access xpcom in worker. >>>>> >> And we could be able to implement thunderbird new msg protocol in >>>>> pure >>>>> >> javascript >>>>> >> >>>>> > >>>>> > I will point out that Thunderbird developers are already looking into >>>>> > replacing the xpcom use of message protocols, so if that is the >>>>> primary >>>>> > goal, then you are wasting your time, I am afraid. >>>>> > >>>>> > I will also point out that both JavaScript and C++ have moved on >>>>> from the >>>>> > time xpconnect was developed to the point that use of xpconnect >>>>> requires >>>>> > designing APIs that are uncomfortable to use from C++ or JavaScript >>>>> (or >>>>> > even both!), so it is a much better investment of time to move APIs >>>>> to >>>>> > newer paradigms than it is to try to develop a system that almost no >>>>> one >>>>> > really understands. >>>>> > >>>>> > -- >>>>> > Joshua Cranmer >>>>> > Thunderbird and DXR developer >>>>> > Source code archæologist >>>>> > >>>>> > >>>>> > ___ >>>>> > dev-platform mailing list >>>>> > dev-platform@lists.mozilla.org >>>>> > https://lists.mozilla.org/listinfo/dev-platform >>>>> > >>>>> ___ >>>>> dev-platform mailing list >>>>> dev-platform@lists.mozilla.org >>>>> https://lists.mozilla.org/listinfo/dev-platform >>>>> >>>> >>>> >>>> >>>> -- >>>> 此致 >>>> 礼 >>>> 罗勇刚 >>>> Yours >>>> sincerely, >>>> Yonggang Luo >>>> >>> >> >> >> -- >> 此致 >> 礼 >> 罗勇刚 >> Yours >> sincerely, >> Yonggang Luo >> > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
Well, cause that's not possible to implement APIs in webidl in the external dll with the xul On Mon, Jan 4, 2016 at 3:55 PM, Bobby Holley wrote: > Why not use webidl to expose the apis you want in workers? > On Jan 3, 2016 8:08 PM, "罗勇刚(Yonggang Luo)" wrote: > >> >> >> On Mon, Jan 4, 2016 at 6:38 AM, Bobby Holley >> wrote: >> >>> As XPConnect module owner, I'd like to get it in record that we will >>> almost >>> certainly not take this or any support code for it (i.e. code in >>> js-ctypes) >>> in mozilla-central. >>> >>> Well, I was already have a modified version of mozilla-central, if the >> upstream is not possible, then I just need to maintain the fork and can not >> upstream the code. >> >>> On Sun, Jan 3, 2016 at 11:46 AM, Joshua Cranmer 🐧 >>> wrote: >>> >>> > On 1/3/2016 10:24 AM, 罗勇刚(Yonggang Luo) wrote: >>> > >>> >> So that we could be able to access xpcom in worker. >>> >> And we could be able to implement thunderbird new msg protocol in >>> pure >>> >> javascript >>> >> >>> > >>> > I will point out that Thunderbird developers are already looking into >>> > replacing the xpcom use of message protocols, so if that is the primary >>> > goal, then you are wasting your time, I am afraid. >>> > >>> > I will also point out that both JavaScript and C++ have moved on from >>> the >>> > time xpconnect was developed to the point that use of xpconnect >>> requires >>> > designing APIs that are uncomfortable to use from C++ or JavaScript (or >>> > even both!), so it is a much better investment of time to move APIs to >>> > newer paradigms than it is to try to develop a system that almost no >>> one >>> > really understands. >>> > >>> > -- >>> > Joshua Cranmer >>> > Thunderbird and DXR developer >>> > Source code archæologist >>> > >>> > >>> > ___ >>> > dev-platform mailing list >>> > dev-platform@lists.mozilla.org >>> > https://lists.mozilla.org/listinfo/dev-platform >>> > >>> ___ >>> dev-platform mailing list >>> dev-platform@lists.mozilla.org >>> https://lists.mozilla.org/listinfo/dev-platform >>> >> >> >> >> -- >> 此致 >> 礼 >> 罗勇刚 >> Yours >> sincerely, >> Yonggang Luo >> > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
On Mon, Jan 4, 2016 at 6:38 AM, Bobby Holley wrote: > As XPConnect module owner, I'd like to get it in record that we will almost > certainly not take this or any support code for it (i.e. code in js-ctypes) > in mozilla-central. > > Well, I was already have a modified version of mozilla-central, if the upstream is not possible, then I just need to maintain the fork and can not upstream the code. > On Sun, Jan 3, 2016 at 11:46 AM, Joshua Cranmer 🐧 > wrote: > > > On 1/3/2016 10:24 AM, 罗勇刚(Yonggang Luo) wrote: > > > >> So that we could be able to access xpcom in worker. > >> And we could be able to implement thunderbird new msg protocol in pure > >> javascript > >> > > > > I will point out that Thunderbird developers are already looking into > > replacing the xpcom use of message protocols, so if that is the primary > > goal, then you are wasting your time, I am afraid. > > > > I will also point out that both JavaScript and C++ have moved on from the > > time xpconnect was developed to the point that use of xpconnect requires > > designing APIs that are uncomfortable to use from C++ or JavaScript (or > > even both!), so it is a much better investment of time to move APIs to > > newer paradigms than it is to try to develop a system that almost no one > > really understands. > > > > -- > > Joshua Cranmer > > Thunderbird and DXR developer > > Source code archæologist > > > > > > ___ > > dev-platform mailing list > > dev-platform@lists.mozilla.org > > https://lists.mozilla.org/listinfo/dev-platform > > > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
On Mon, Jan 4, 2016 at 3:46 AM, Joshua Cranmer 🐧 wrote: > On 1/3/2016 10:24 AM, 罗勇刚(Yonggang Luo) wrote: > >> So that we could be able to access xpcom in worker. >> And we could be able to implement thunderbird new msg protocol in pure >> javascript >> > > I will point out that Thunderbird developers are already looking into > replacing the xpcom use of message protocols, so if that is the primary > goal, then you are wasting your time, I am afraid. > > I will also point out that both JavaScript and C++ have moved on from the > time xpconnect was developed to the point that use of xpconnect requires > designing APIs that are uncomfortable to use from C++ or JavaScript (or > even both!), so it is a much better investment of time to move APIs to > newer paradigms than it is to try to develop a system that almost no one > really understands. It's a long time to talking about move away from xpcom, so that's would be more time we still stay with xpcom. > > > -- > Joshua Cranmer > Thunderbird and DXR developer > Source code archæologist > > > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
On Mon, Jan 4, 2016 at 12:55 AM, David Rajchenbach-Teller < dtel...@mozilla.com> wrote: > Well, XPConnect is designed for the main thread, and many of the things > it does assume that everything takes place on the main thread. > > An example, from the topic of my head: whenever objects cross between > JavaScript and C++ through XPConnect, they need to be retained in > hashtables to preserve unicity, etc. For performance reasons, these > hashtables are not protected against concurrent access. > I was maintaining the whole hashtable in the Javascript, And the XPConnect would be used any more, so that would be a problem. > > Another example: JavaScript objects can point towards C++ objects and > vice-versa. The garbage-collector (well, the cycle-collector) needs to > walk the graph in specific ways to get rid of possible cycles that > involve both C++ and JS. The worker's implementation of the > cycle-collector is much simpler (and quite different) than the main > thread's, since it doesn't need to handle XPConnect. Mixing both > Does the worker's gc are implement in mark-swap way? or reference-count based collector? Cause I was implement the whole xpconnect in pure javascript, I think a simple mark-swap garbage collector should be suffice. That's means, we only reference js object in javascript, and C++ object in javascript, and we never reference Javascript object in C++, that's wold not affect the worker's garbage-collector. > accidentally can lead to unpredictable results. > > Oh, and XPConnect pointers can simply not be dereferenced from worker > threads. Attempting to do so will crash libxul by design to avoid > accidents. > > etc. > > Cheers, > David > > On 03/01/16 17:45, 罗勇刚(Yonggang Luo) wrote: > > > > > > On Mon, Jan 4, 2016 at 12:35 AM, David Rajchenbach-Teller > > mailto:dtel...@mozilla.com>> wrote: > > > > Accessing XPCOM in a worker will most likely break the > garbage-collector > > in novel and interesting ways, so I don't suggest heading in that > > direction. > > > > I'd like to hear more information about that, > > For example, if I setting a finalize for each XPCOM instance > > Object(javascript), when the Object's is GCed, then I release > > the xpcom instance, is that would not break the garbage-collector? > > Or we have other problems about garbage-collector, I am interested in > that. > > > > > > > > Cheers, > > David > > > > On 03/01/16 17:24, 罗勇刚(Yonggang Luo) wrote: > > > So that we could be able to access xpcom in worker. > > > And we could be able to implement thunderbird new msg protocol in > > pure > > > javascript > > > > > > On Sun, Jan 3, 2016 at 11:09 PM, Josh Matthews > > mailto:j...@joshmatthews.net>> > > > wrote: > > > > > >> What is the motivation for this work? > > > > >> > > >> _______ > > >> dev-platform mailing list > > >> dev-platform@lists.mozilla.org > > <mailto:dev-platform@lists.mozilla.org> > > >> https://lists.mozilla.org/listinfo/dev-platform > > >> > > > > > > > > > > > > > > > > > > > -- > > 此致 > > 礼 > > 罗勇刚 > > Yours > > sincerely, > > Yonggang Luo > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
On Mon, Jan 4, 2016 at 12:35 AM, David Rajchenbach-Teller < dtel...@mozilla.com> wrote: > Accessing XPCOM in a worker will most likely break the garbage-collector > in novel and interesting ways, so I don't suggest heading in that > direction. > > I'd like to hear more information about that, For example, if I setting a finalize for each XPCOM instance Object(javascript), when the Object's is GCed, then I release the xpcom instance, is that would not break the garbage-collector? Or we have other problems about garbage-collector, I am interested in that. > > Cheers, > David > > On 03/01/16 17:24, 罗勇刚(Yonggang Luo) wrote: > > So that we could be able to access xpcom in worker. > > And we could be able to implement thunderbird new msg protocol in pure > > javascript > > > > On Sun, Jan 3, 2016 at 11:09 PM, Josh Matthews > > wrote: > > > >> What is the motivation for this work? > >> > >> ___ > >> dev-platform mailing list > >> dev-platform@lists.mozilla.org > >> https://lists.mozilla.org/listinfo/dev-platform > >> > > > > > > > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
So that we could be able to access xpcom in worker. And we could be able to implement thunderbird new msg protocol in pure javascript On Sun, Jan 3, 2016 at 11:09 PM, Josh Matthews wrote: > What is the motivation for this work? > > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
I was trying to implement the XPConnect with JS-Ctypes, is that would be a good idea?
ory { ShellClassFactoryVtblFunction *lpVtbl; } ShellClassFactory; //http://blog.quarkslab.com/visual-c-rtti-inspection.html // Visual C++ // 详解virtual table // http://www.cppblog.com/dawnbreak/archive/2009/03/10/76084.aspx SHELL_EXPORT void** XPCOM_GetInterfaceVTable(void* instance) { ShellClassFactory* factory = (ShellClassFactory*)instance; return factory->lpVtbl; } DWORD tId = 0; BOOL WINAPI DllMain(HINSTANCE aInstance, DWORD aReason, LPVOID aReserved) { switch (aReason) { case DLL_PROCESS_ATTACH: { tId = TlsAlloc(); if (tId == 0x) return FALSE; break; } case DLL_PROCESS_DETACH: { TlsFree(tId); iim = nullptr; xpconnect = nullptr; registrar = nullptr; compMgr = nullptr; gShellInited = false; // TODO: Use the full mozjs environment //JS_ShutDown(); break; } } return TRUE; } 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to using js-ctypes to add a function that use JS::Value JS:Object as parameter
For example, I was to use js-ctypes to access the following function: CPOWToString(JSContext* cx, unsigned argc, Value* vp) -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Cause Firefox doesn't support for binary extentions anymore? So may use to merge all the xpcom strings into a single implementation?
There is two much about strings in XPCOM. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
I was trying to implement the XPCOM-Layer, here is my code, don't know if that's was the right direction to do that.
PPORTS_IID, reinterpret_cast(&result)) != NS_OK) { result = nullptr; } if (result != nullptr) { result->AddRef(); } return result; } SHELL_EXPORT void* XPCOM_GetService(char* contractID) { nsISupports* result = nullptr; if (CallGetService(contractID, NS_ISUPPORTS_IID, reinterpret_cast(&result)) != NS_OK) { result = nullptr; } return result; } SHELL_EXPORT void* XPCOM_GetServiceCID(nsCID* cid) { nsISupports* result = nullptr; if (CallGetService(*cid, NS_ISUPPORTS_IID, reinterpret_cast(&result)) != NS_OK) { result = nullptr; } return result; } SHELL_EXPORT void* XPCOM_QueryInterface(nsISupports* instance, nsIID *iid) { void *result = nullptr; if (instance->QueryInterface(*iid, &result) != NS_OK) { result = nullptr; } return result; } SHELL_EXPORT void XPCOM_AddRef(nsISupports* instance) { instance->AddRef(); } SHELL_EXPORT void XPCOM_Release(nsISupports* instance) { instance->Release(); } DWORD tId = 0; BOOL WINAPI DllMain(HINSTANCE aInstance, DWORD aReason, LPVOID aReserved) { switch (aReason) { case DLL_PROCESS_ATTACH: tId = TlsAlloc(); if (tId == 0x) return FALSE; break; case DLL_PROCESS_DETACH: TlsFree(tId); break; } return TRUE; } -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: I was writing a dll to be called by js-ctypes, but I need the JsContext of the caller JS environemt
New question, what's the differences between GetCurrentJSContext & GetSafeJSContext in nsIXPConnect On Mon, Dec 28, 2015 at 1:16 AM, Yonggang Luo wrote: > And after investigation, I found it's seems not possible to do it, is > there any way to do that? Or we need to expose a API to do that. > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
I was writing a dll to be called by js-ctypes, but I need the JsContext of the caller JS environemt
And after investigation, I found it's seems not possible to do it, is there any way to do that? Or we need to expose a API to do that. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Does js-ctypes supports for nsISupports objects.
OK, I've done it with my own patch, indeed, I just want to calling C APIs with XPCOM pointers. So I implemented the following function to deal with my situation: 512020db461367413e46bfeb3af8b70ed45e01f8 xpcom/components/nsComponentManager.cpp | 14 ++ xpcom/components/nsIComponentManager.idl | 11 +++ 2 files changed, 25 insertions(+) diff --git a/xpcom/components/nsComponentManager.cpp b/xpcom/components/nsComponentManager.cpp index c5bcd92..bef39e2 100644 --- a/xpcom/components/nsComponentManager.cpp +++ b/xpcom/components/nsComponentManager.cpp @@ -21,6 +21,7 @@ #include "nsISupports.h" #include "nspr.h" #include "nsCRT.h" // for atoll +#include "nsPrintfCString.h" // Arena used by component manager for storing contractid string, dll // location strings and small objects @@ -1868,6 +1869,19 @@ nsComponentManagerImpl::SizeOfIncludingThis(mozilla::MallocSizeOf aMallocSizeOf) return n; } +NS_IMETHODIMP nsComponentManagerImpl::GetPointerForInterface(nsISupports *aInstance, const nsIID & aIID, nsACString & _retval) +{ + nsQueryInterface queryInterface(aInstance); + void* result = nullptr; + nsresult rc = queryInterface(aIID, &result); + if (rc != NS_OK) { +_retval = ""; +return NS_OK; + } + _retval = nsPrintfCString("0x%p", result); + return NS_OK; +} + // nsFactoryEntry diff --git a/xpcom/components/nsIComponentManager.idl b/xpcom/components/nsIComponentManager.idl index 1e5693a..912e11f 100644 --- a/xpcom/components/nsIComponentManager.idl +++ b/xpcom/components/nsIComponentManager.idl @@ -40,6 +40,17 @@ interface nsIComponentManager : nsISupports in nsIIDRef aIID, [iid_is(aIID),retval] out nsQIResult result); +/** + * getPointerForInterface + * + * Returns string representation of the pointer for a instance of the interface + * + * @param aInstance - The instance of the interface + * @param aIID - IID of interface requested + * @return ACString in hex format with "0x" prepended, or empty if the instance have no aIID + */ +ACString getPointerForInterface(in nsISupports aInstance, +in nsIIDRef aIID); /** * createInstance On Wed, Dec 23, 2015 at 11:02 PM, Ted Mielczarek wrote: > No, js-ctypes does not have any support for calling methods on C++ > classes. In fact, that functionality was WONTFIXed a while back: > https://bugzilla.mozilla.org/show_bug.cgi?id=505907. > > -Ted > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Does js-ctypes supports for nsISupports objects.
-- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to know the URI for a XBL file
-- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Move mailnews/intl back into gecko-dev and use options to choose disable/enable it.
On Tue, Dec 8, 2015 at 4:55 AM, Joshua Cranmer 🐧 wrote: > On 12/7/2015 11:38 AM, 罗勇刚(Yonggang Luo) wrote: > >> Maintain intl in comm source tree is a big burden, and cause >> The comm source are tightly coupled with gecko-dev >> source tree. >> >> By providing the necessary functional for comm, we can step forward >> to removing the building dependencies of comm from gecko-dev source tree. >> >> The Encoding part and the Crypt part is the most complicated part, and not >> be able >> to move into comm source tree completely, so we may choose an alternative >> way to do that, >> use prefs to disable it or enable it. >> > > The code was removed from mozilla-central because mozilla-central > explicitly does not want to support UTF-7. I rather suspect that Henri > Sivonen would outright reject (and I would agree with said rejection!) any > patch to attempt to move the code back to mozilla-central. It's doesn't need to support in firefox or other gecko-based project, I means continue to preserve the code, but provide a option to disable/enable it. Or the comm source tree need to depends on the internal of gecko, that's a big problem. > > > -- > Joshua Cranmer > Thunderbird and DXR developer > Source code archæologist > > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Move mailnews/intl back into gecko-dev and use options to choose disable/enable it.
Maintain intl in comm source tree is a big burden, and cause The comm source are tightly coupled with gecko-dev source tree. By providing the necessary functional for comm, we can step forward to removing the building dependencies of comm from gecko-dev source tree. The Encoding part and the Crypt part is the most complicated part, and not be able to move into comm source tree completely, so we may choose an alternative way to do that, use prefs to disable it or enable it. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
The functions that mailnews called from xul.dll, it's that possible to remove them all?
??0CertVerifier@psm@mozilla@@QAE@W4OcspDownloadConfig@012@W4OcspStrictConfig @012@W4OcspGetConfig@012@W4PinningMode@012@@Z ??0LoadInfo@mozilla@@QAE@PAVnsIPrincipal@@0PAVnsINode@@IIPAVnsIURI@@@Z ??0nsBufferDecoderSupport@@QAE@I@Z ??0nsEncoderSupport@@QAE@I@Z ??0nsNSSShutDownPreventionLock@@QAE@XZ ??0PipUIContext@@QAE@XZ ??1CryptoTask@mozilla@@MAE@XZ ??1nsBasicEncoder@@MAE@XZ ??1nsBufferDecoderSupport@@UAE@XZ ??1nsEncoderSupport@@UAE@XZ ??1nsMultiTableEncoderSupport@@UAE@XZ ??1nsNSSShutDownPreventionLock@@QAE@XZ ??1nsTableEncoderSupport@@UAE@XZ ??1SharedCertVerifier@psm@mozilla@@IAE@XZ ?_external_GetIOService@services@mozilla@ @YG?AU?$already_AddRefed@VnsIIOServiceXZ ?_external_GetObserverService@services@mozilla@ @YG?AU?$already_AddRefed@VnsIObserverServiceXZ ?_external_GetStringBundleService@services@mozilla@ @YG?AU?$already_AddRefed@VnsIStringBundleServiceXZ ?_external_GetXULChromeRegistryService@services@mozilla@ @YG?AU?$already_AddRefed@VnsIXULChromeRegistryXZ ?AddRef@LoadInfo@mozilla@@UAGKXZ ?AddRef@nsBasicDecoderSupport@@UAGKXZ ?AddRef@nsBasicEncoder@@UAGKXZ ?BaseURI@LoadInfo@mozilla@@UAEPAVnsIURI@@XZ ?Clear@OCSPCache@psm@mozilla@@QAEXXZ ?Convert@nsBufferDecoderSupport@@UAG?AW4nsresult@@PBDPAHPA_W1@Z ?Convert@nsEncoderSupport@@UAG?AW4nsresult@@PB_WPAHPAD1@Z ?ConvertNoBuff@nsEncoderSupport@@MAG?AW4nsresult@@PB_WPAHPAD1@Z ?ConvertNoBuffNoErr@nsMultiTableEncoderSupport@@MAG?AW4nsresult@ @PB_WPAHPAD1@Z ?ConvertNoBuffNoErr@nsTableEncoderSupport@@MAG?AW4nsresult@@PB_WPAHPAD1@Z ?Dispatch@CryptoTask@mozilla@@IAE?AW4nsresult@@PBDI@Z ?FindEncodingForLabel@EncodingUtils@dom@mozilla@@SA_NPBDPAPAD@Z ?Finish@nsEncoderSupport@@UAG?AW4nsresult@@PADPAH@Z ?FinishNoBuff@nsEncoderSupport@@MAG?AW4nsresult@@PADPAH@Z ?forget@nsNSSShutDownList@@SAXPAVnsNSSShutDownObject@@@Z ?GetBaseURI@LoadInfo@mozilla@@UAG?AW4nsresult@@PAPAVnsIURI@@@Z ?GetCharacterForUnMapped@nsBasicDecoderSupport@@UAE_WXZ ?GetContentPolicyType@LoadInfo@mozilla@@UAG?AW4nsresult@@PAI@Z ?GetDefaultCertVerifier@psm@mozilla@@YA?AV?$TemporaryRef@VSharedCertVerifier @psm@mozilla@@@2@XZ ?GetForceInheritPrincipal@LoadInfo@mozilla@@UAG?AW4nsresult@@PA_N@Z ?GetInnerWindowID@LoadInfo@mozilla@@UAG?AW4nsresult@@PAI@Z ?GetLoadingDocument@LoadInfo@mozilla@@UAG?AW4nsresult@@PAPAVnsIDOMDocument@ @@Z ?GetLoadingPrincipal@LoadInfo@mozilla@@UAG?AW4nsresult@@PAPAVnsIPrincipal@ @@Z ?GetLoadingSandboxed@LoadInfo@mozilla@@UAG?AW4nsresult@@PA_N@Z ?GetMaxLength@nsBufferDecoderSupport@@UAG?AW4nsresult@@PBDHPAH@Z ?GetMaxLength@nsEncoderSupport@@UAG?AW4nsresult@@PB_WHPAH@Z ?GetSecurityFlags@LoadInfo@mozilla@@UAG?AW4nsresult@@PAI@Z ?GetTriggeringPrincipal@LoadInfo@mozilla@@UAG?AW4nsresult@ @PAPAVnsIPrincipal@@@Z ?LoadingNode@LoadInfo@mozilla@@UAEPAVnsINode@@XZ ?LoadingPrincipal@LoadInfo@mozilla@@UAEPAVnsIPrincipal@@XZ ?Now@pkix@mozilla@@YA?AVTime@12@XZ ?NS_NewAdoptingUTF8StringEnumerator@@YA?AW4nsresult@ @PAPAVnsIUTF8StringEnumerator@@PAV?$nsTArray@VnsCString_external@Z ?PokeGC@nsJSContext@@SAXW4Reason@gcreason@JS@@H@Z ?QueryInterface@LoadInfo@mozilla@@UAG?AW4nsresult@@ABUnsID@@PAPAX@Z ?QueryInterface@nsBasicDecoderSupport@@UAG?AW4nsresult@@ABUnsID@@PAPAX@Z ?QueryInterface@nsBasicEncoder@@UAG?AW4nsresult@@ABUnsID@@PAPAX@Z ?Release@LoadInfo@mozilla@@UAGKXZ ?Release@nsBasicDecoderSupport@@UAGKXZ ?Release@nsBasicEncoder@@UAGKXZ ?remember@nsNSSShutDownList@@SAXPAVnsNSSShutDownObject@@@Z ?Reset@nsBufferDecoderSupport@@UAG?AW4nsresult@@XZ ?Reset@nsEncoderSupport@@UAG?AW4nsresult@@XZ ?Run@CryptoTask@mozilla@@EAG?AW4nsresult@@XZ ?SearchPropertyValue@nsUConvPropertySearch@@SA?AW4nsresult@ @QAY02PBDHPBDPAPAD@Z ?SetInputErrorBehavior@nsBasicDecoderSupport@@UAEXH@Z ?SetOutputErrorBehavior@nsEncoderSupport@@UAG?AW4nsresult@ @HPAVnsIUnicharEncoder@@_W@Z ?SupportImageWithMimeType@imgLoader@@SG_NPBDW4AcceptedMimeTypes@@@Z ?TriggeringPrincipal@LoadInfo@mozilla@@UAEPAVnsIPrincipal@@XZ ?VerifyCert@CertVerifier@psm@mozilla@@QAE?AW4_SECStatus@ @PAUCERTCertificateStr@@_JVTime@pkix@3@PAXPBDIPBUSECItemStr @@PAU?$TypeSpecificScopedPointer@UCERTCertListStr@@@3@PAW4SECOidTag @@PAW4OCSPStaplingStatus@123@PAW4KeySizeStatus@23@@Z ?virtualDestroyNSSReference@CryptoTask@mozilla@@EAEXXZ NS_Alloc NS_CStringCloneData NS_CStringContainerFinish NS_CStringContainerInit NS_CStringContainerInit2 NS_CStringCopy NS_CStringGetData NS_CStringGetIsVoid NS_CStringGetMutableData NS_CStringSetData NS_CStringSetDataRange NS_CStringSetIsVoid NS_CStringToUTF16 NS_CycleCollectorSuspect3 NS_DebugBreak NS_Free NS_GetComponentManager NS_GetServiceManager NS_NewNativeLocalFile NS_Realloc NS_StringCloneData NS_StringContainerFinish NS_StringContainerInit NS_StringContainerInit2 NS_StringCopy NS_StringGetData NS_StringGetMutableData NS_StringSetData NS_StringSetDataRange NS_UTF16ToCString RegisterWeakMemoryReporter UnregisterWeakMemoryReporter -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https
Re: What is the difference between asyncOpen2() and asyncOpen()
I am also curious about this. On Tue, Dec 8, 2015 at 1:00 AM, Philip Chee wrote: > I came across Bug 1182535 [tracking bug] change all callsites to > asyncOpen2 instead of asyncOpen > > What's the difference and why should I switch? > > Can I just do |s/asyncOpen\(/asyncOpen2\(/g| or are there some > subtleties I should be aware of? > > Phil > > -- > Philip Chee , > http://flashblock.mozdev.org/ http://xsidebar.mozdev.org > Guard us from the she-wolf and the wolf, and guard us from the thief, > oh Night, and so be good for us to pass. > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Leaving hg.mozilla bug.mozilla to github for the leaving complicated infrastructure of mozilla.
On Saturday, December 5, 2015 at 12:33:56 AM UTC+8, Nathan Froyd wrote: > On Fri, Dec 4, 2015 at 8:52 AM, luoyonggang wrote: > > > Do you a guess of _why_ they are slow? > > How serious is the slowness? > > How much faster would it need to be to be acceptable? > > > > Under win32, the llinkage time of xul.dll is 5minutes on ssd machine, > > that's not acceptable. > > > > How much RAM do you have? And is this a debug build or an optimized build? > > -Nathan 16GB RAM with i7, debug build is a bit faster, release build is much slower. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Leaving hg.mozilla bug.mozilla to github for the leaving complicated infrastructure of mozilla.
On Fri, Dec 4, 2015 at 3:55 PM, R Kent James wrote: > Yonggang Luo, I've been trying to figure out how to understand what you > are doing for over a year now without success. You've been doing some > amazing work, and I get the vague impression that you are working on a > Chinese fork of Thunderbird. Now you are proposing some specific changes to > Thunderbird infrastructure, but you are really not a Thunderbird > contributor. Could you give some sort of public statement of how your > technical work fits into the broader picture of products? > Indeed, I've been trying to do contribute back to the Thunderbird community, but that's too hard for me, the Thunderbird is always pursuing the mozilla-central, and we (our company) need a stable version of mozilla-central to release our product, and that's makes me hard to contribute back things, and we are using git but hg to do the version control, and that's also complicated our contribution progress. > I've been trying to get people working on open-source email clients to > talk to teach other and figure out ways to work together better. In my > dreams, we all work together to make an amazing product rather than have > small teams each duplicating each other's work. We'd love to be able to > work with you, even if you are not specifically contributing to > Thunderbird. But I have no context now to understand how. > When I trying to ease the development burden of Thunderbird, I didn't two things, 1、Building Xulrunner independently, So the xulrunner is a stable version. 2、Building our customized Thunderbird without mozilla source, and only depends on Xulrunner. When I trying submit a patch to thunderbird community, that's always need to create a bug in bug.mozilla.org, and that's very hard to use and slow. The merging progress are very slow. That's why I am hesitate to contributing things back. > > R. Kent James > Chair, Thunderbird Council > > > On 12/3/2015 8:52 PM, 罗勇刚(Yonggang Luo) wrote: > >> I think the relationship between Thunderbird/SeaMonkey and >> gecko-dev should be like the relation ship between Atom editor vs >> Electron. >> So there is no need that Thunderbird/SeaMonkey chasing the >> mozilla-central. >> And considerate the hard for contributing code in mozilla infrastructure >> for thunderbird, >> I suggest to completely to leave the mozilla infrastructure. >> To reach this target, we need to do the following things. >> 1、All the repos are git based and hosted on github >> I've already writing scripts to mirror all branches/tags of comm & >> gecko-dev, >> They are now placed at >> https://github.com/mail-apps/comm >> https://github.com/mail-apps/gecko-dev >> I have the scripts to do that. >> After the migration, we only need to maintain the gecko-dev mirror >> 2、Thunderbird/SeaMonkey bugs moved to github. >> I didn't write the scripts yet, >> 3、The leaving Makefile.in should be clear up, >> 4、Removing all the #if #endif in >> xul/js/mozilla files. This is not a must be procedure >> We may hack the mozbuild system that >> generate install_manifests for those files. >> 5、Leaving the C/C++ building system from moz.build >> This is very important, cause the current moz.build for building >> are to tight with the lowering mozilla building infrastructure, and >> if >> we want to leaving the mozilla source tree, this would be a >> unavoidable step. >> For building C/C++, we may choose gyp/cmake/qbs or other means >> that's was a self-contained echo-system and that's doesn't depends on >> the complicated mozbuild eco-system. >> For example: LLVM are leaving autoconf to CMake. >> We may choose, cause Thunderbird/SeaMonkey is much >> smaller than gecko-dev, so that's won't be a big deal. >> >> 6、 Building the All Thunderbird C/C++ compoents as a single >> thunderbird.dll or other things. I've already implement that, and >> doesn't >> need to modify much of the source code. >> 7、Getting all the locales install to be build with pure python. >> This is necessary, and because of this, we may also need to convert >> all >> the locales >> repo from hg to git. >> Or we may using a much simpler method. place all the locales files >> into >> the comm source-tree. >> >> 8、Building xulrunner distribution for Thunderbird/Gecko like >> https://github.com/atom/electron/releases, so we only need to downloading >> those binaries. >> >> 9、
Leaving hg.mozilla bug.mozilla to github for the leaving complicated infrastructure of mozilla.
I think the relationship between Thunderbird/SeaMonkey and gecko-dev should be like the relation ship between Atom editor vs Electron. So there is no need that Thunderbird/SeaMonkey chasing the mozilla-central. And considerate the hard for contributing code in mozilla infrastructure for thunderbird, I suggest to completely to leave the mozilla infrastructure. To reach this target, we need to do the following things. 1、All the repos are git based and hosted on github I've already writing scripts to mirror all branches/tags of comm & gecko-dev, They are now placed at https://github.com/mail-apps/comm https://github.com/mail-apps/gecko-dev I have the scripts to do that. After the migration, we only need to maintain the gecko-dev mirror 2、Thunderbird/SeaMonkey bugs moved to github. I didn't write the scripts yet, 3、The leaving Makefile.in should be clear up, 4、Removing all the #if #endif in xul/js/mozilla files. This is not a must be procedure We may hack the mozbuild system that generate install_manifests for those files. 5、Leaving the C/C++ building system from moz.build This is very important, cause the current moz.build for building are to tight with the lowering mozilla building infrastructure, and if we want to leaving the mozilla source tree, this would be a unavoidable step. For building C/C++, we may choose gyp/cmake/qbs or other means that's was a self-contained echo-system and that's doesn't depends on the complicated mozbuild eco-system. For example: LLVM are leaving autoconf to CMake. We may choose, cause Thunderbird/SeaMonkey is much smaller than gecko-dev, so that's won't be a big deal. 6、 Building the All Thunderbird C/C++ compoents as a single thunderbird.dll or other things. I've already implement that, and doesn't need to modify much of the source code. 7、Getting all the locales install to be build with pure python. This is necessary, and because of this, we may also need to convert all the locales repo from hg to git. Or we may using a much simpler method. place all the locales files into the comm source-tree. 8、Building xulrunner distribution for Thunderbird/Gecko like https://github.com/atom/electron/releases, so we only need to downloading those binaries. 9、Packaging the mozbuild building system into the xulrunner, so that we won't need the whole mozilla source-tree. 10、 The xulrunner only chasing for stable version of firefox, unless there is much need of new functional, then the xulrunner only based on ESR version of firefox. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: When the beta version of firefox with e10s would be released?
On Thursday, December 3, 2015 at 4:57:28 PM UTC+8, Dave Townsend wrote: > The developer edition already ships with e10s so you can test against that. Indeed, I am looking for more stable version > > On Wed, Dec 2, 2015 at 10:32 PM, Yonggang Luo wrote: > > I am looking for it to developing mutli-process based firefox addons/apps > > ___ > > dev-platform mailing list > > dev-platform@lists.mozilla.org > > https://lists.mozilla.org/listinfo/dev-platform ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
When the beta version of firefox with e10s would be released?
I am looking for it to developing mutli-process based firefox addons/apps ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
When the beta version of firefox with e10s would be released?
I am looking for it to developing mutli-process based firefox addons/apps ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: In the new e10s multiprocess model, is that possible to calling XPCOM in the client process?
I am care about the mozilla's mork db components, I hope those to read/write mork files on separate process and do not block the main UI. On Thu, Nov 26, 2015 at 4:05 PM, Dave Townsend wrote: > XPCOM is available in the child process but whether the specific > component you want works there or not is a different question. Some > components have proxies in the child process to make them work, some > work just fine and some don't work at all. Which component do you care > about? > > On Wed, Nov 25, 2015 at 11:44 PM, 罗勇刚(Yonggang Luo) > wrote: > > I want full xpcom access in client process such > > as do IMAP sync for thunderbird > > > > So we would gain performance improvement on the thunderbird. > > > > -- > > 此致 > > 礼 > > 罗勇刚 > > Yours > > sincerely, > > Yonggang Luo > > ___ > > dev-platform mailing list > > dev-platform@lists.mozilla.org > > https://lists.mozilla.org/listinfo/dev-platform > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
In the new e10s multiprocess model, is that possible to calling XPCOM in the client process?
I want full xpcom access in client process such as do IMAP sync for thunderbird So we would gain performance improvement on the thunderbird. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Does the sdk/page-worker are loading pages off-main thread? and running code in another thread?
pageWorker = require("sdk/page-worker").Page({ contentScript: "console.log(document.body.innerHTML);", contentURL: " http://en.wikipedia.org/wiki/Internet"; }); -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Why there is no load events for iframe that resident in html page with 'System permission'
Is there any security policy here or other things need to do. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Is that possible to implement Sqlite.jsm with ctypes so that is can works in the worker?
On Saturday, November 14, 2015 at 6:21:34 PM UTC+8, David Rajchenbach-Teller wrote: > Actually, Sqlite.jsm does most of its work off the main thread. > > But yes, it would clearly be possible to reimplement Sqlite.jsm using > js-ctypes for workers. If you wish to work on this, I can try and help > mentoring. > About js-ctypes, is that possible to port the mozilla's js-ctypes to v8 engine and other javascript engines, so that if I write down the js binding for sqlite, other js engines can also use the same API, and I am interested know if the node-ffi have advantages above mozilla's js-ctypes. > > Cheers, > David > > On 14/11/15 10:45, Yonggang Luo wrote: > > The current Sqlite.jsm can only work in main thread, that's would be a > problem when inserting a lot of data. > > ___ > > dev-platform mailing list > > dev-platform@lists.mozilla.org > > https://lists.mozilla.org/listinfo/dev-platform > > ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Is that possible to implement Sqlite.jsm with ctypes so that is can works in the worker?
The current Sqlite.jsm can only work in main thread, that's would be a problem when inserting a lot of data. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: How to stop the docShell to loading new URIs
Thank you a lot, now I know where to start. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
What's the plan to remove of the Makefile building system in moz.build
-- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to stop the docShell to loading new URIs
I opened a window and I don't hope it's loading anymore URIs into the docShell. How to configure the docShell to do that. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Can I remove the addon-sdk's require cache?
So when I loading it next Time, it's would loading from the the filesystem with the modified one. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Merging comm-central into mozilla-central (summary v1)
From my points of view, merging thunderbird back into mozilla source tree is not a good idea. And I think we need to html-ize the Thunderbird source tree, and remove the C/C++ dependencies to gecko as much as possible. And merging the comm back into mozilla-central is getting comm to be to BIG to maintain. I suggest to getting comm into github, and moving all the related issues into github but not mozilla bugzilla, that's too hard to creating a pull request and contributing codes. Indeed, I think the best way is to reactive the gecko xulrunner, and getting Thunderbird only dependence to XULRunner, And the thunderbird only need to compitable with the most ESR released version of XULRunner, and doesn't need to tracing the mozilla gecko patches in such a fast way. They are running in totally different patching speed. On Fri, Nov 6, 2015 at 11:32 PM, ISHIKAWA,chiaki wrote: > On 2015/10/27 9:06, Philipp Kewisch wrote: > >> Hi all, >> >> I'd love to see if we can move towards an agreement. For those of you >> that would prefer not to merge, I'd love to hear what your absolute >> minimum requirements would be that you'd accept a merge with. Changes to >> hg? Changes to dxr? A policy chanage? If we can establish clear >> requirements, maybe we can see they are not so hard to fulfill and we >> can come to an agreement quickly. Ideally, I'd like to find a middle >> ground here that is acceptable to everyone. >> >> Let me summarize requirements I have read: >> >> * Thunderbird bustages should not close Firefox trees >> * A version of dxr that does not show comm projects >> * A version of dxr that shows all projects >> * Treeherder remains separate >> * Normal m-c try pushes don't automatically build Thunderbird >> * There should be a commitment that comm projects will be regularly >> maintained at least in the foreseeable future >> >> * Thunderbird builds should not run on every m-c/m-i commit >> * The default checkout should not contain comm projects >> * It does not make sense if Thunderbird will be separate short term >> * There should be least amount of pressure to fix Thunderbird things for >> Firefox contributors >> >> >> If these are the requirements, with the exception of narrow clones which >> as I've understood are not stable yet, I believe they are all fairly >> easy to fulfill. >> >> Are there any other requirements I've missed? >> >> Philipp >> >> > I think the above summarizes the discussions and counter-points raised > rather well. > > Although I don't hear from many volunteers who send in TB patches > occasionally > in this thread, I believe many of them would work hard to make the > following a reality: > > > There should be a commitment that comm projects will be regularly > > maintained at least in the foreseeable future > > [Of course, there is NO contract by the user community, so "commitment" is > a rather > vague term here. I can't speak for others.] > > I, for one, use TB for regular work at the office and at home regularly, > and > have come to depend on it. So any serious bugs that I find (and there are > many > unfortunately) *HAVE* to be fixed eventually and so I try to send patches. > Some may send in patches to fix these bugs, and others may send in patches > to bring in new features. But if there are a million users out there, > I bet there are a couple hundred volunteers who can program. (I think > there was a statistics > compiled by someone to show the user community contribution in terms of > patches sent in > by individuals in the last few years after Mozilla foundation put TB at > the mercy of > user community.) > > And to make this maintenance easier (less breakage of tree herder > compilation, less duplication of slightly different similar documents > etc.), the merge is preferable from the standpoint of developers IMHO. > > TIA > > > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Is that possible to use Cc["@mozilla.org/docshell; 1"] to downloading html URI as blob?
For example, I am using the following code to fetch the mime parsed HTML flie: let messageService = MailServices.messenger.messageServiceFromURI(uri); let docshell = Cc["@mozilla.org/docshell;1"].createInstance(Ci.nsIDocShell); messageService.DisplayMessage(uri, docshell, MailServices.msgWindow, null, null, {}); But I don't know how to do that. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Can not access window.navigator.mozApps in xulrunner 38.1 apps
Does window.navigator.mozApps disabled for xulrunner or other reasons? -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Is there any events before loading a URL to a docshell.
So that I know what's the docshell is and the URL is. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
I wanna to register chrome manifest manually, how to do that?
-- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: How to avoid mozilla firefox remote debugger to ignore specific files
Thanks, that's wor ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to avoid mozilla firefox remote debugger to ignore specific files
I wanna to ignore some files when debugging . -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Does https NTLM auth support in Worker for XMLHttpRequest?
I am looking forward of it. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to monitor and output specific function call's performance in javascript?
I have a function call that would cause a series of synchronous listeners to be called, And I want to know which call is the most time consuming. What I need to do? -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Is there any plan to move all DEFINES into moz.build?
Executing: C:\CI-Cor\ks\bolt\bolt-sdk\mozbuild/../mozilla-build/python/python C:\CI-Cor\ks\bolt\bolt-sdk\mozbuild/../../build/BoltBuild.py build Copying C:\CI-Cor\ks\bolt-building\Obj-xulrunner-i686-pc-mingw32-Release\dist\config.status as C:\CI-Cor\ks\bolt\bolt-sdk\Release\build\configStatus.py Copying C:\CI-Cor\ks\bolt\build\ConfigStatusBolt.py as C:\CI-Cor\ks\bolt\bolt-sdk\Release\config.status 0:01.36 C:\CI-Cor\ks\bolt\bolt-sdk\Release\_virtualenv\Scripts\python.exe C:\CI-Cor\ks\bolt\bolt-sdk\Release\config.status --backend=Build Start building From C:/CI-Cor/ks/bolt/bolt-sdk/Release/dist: Kept 10159 existing; Added/updated 1; Removed 0 files and 0 directories. Building time is:6.75764342193 seconds Well, the building time for the whole mozilla source tree is 6 seconds when no modification is happened. And the initial building time is about 60s for the first build. That's almost including all the things except C/C++ files to building, for those part, I was generating Visual Studio project files and letting the Visual Studio do the rest things. If we added a new rule such as CompiledFile, and add dependencies between each TargetFile and SourceFile, then we can handling all the rest things such as generate file script, C/C++ files compiling. idl files are also handled by now, but in a customized way, if we add CompiledFile support, we can also treat IDL and xpt as CompiledFile. Do know what's the progress in mozilla community, this is my current work and plan, hope some feedeback. 2015-07-18 6:36 GMT+08:00 Nicholas Nethercote : > > On Sat, Jul 18, 2015 at 3:55 AM, Benoit Girard wrote: > > Why not continue to make piecework improvements? My understanding is `mach > > build binaries` now handles .cpp, .h changes only. Why not slowly extend > > this piece-wise to include .js[m], ipdl, idl, webidl in milestones? > > glandium has done and is continuing to do this kind of work. froydnj > has also chipped in a fair amount. My understanding is that a lot of > the low-hanging fruit has been picked so it's getting harder. > > Nick -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Is there any plan to move all DEFINES into moz.build?
May intention is to treat mozbuild as a relative indpendenent things so we can fast evolve it, and finally merge back to mozilla source tree. 2015-07-18 1:48 GMT+08:00 罗勇刚(Yonggang Luo) : > I've already handled jar.mn and all components things in CommonBackend of > common.py of mozbuild > > Now leave the DEFINES that needed by some files in the building procedure. > > My working result at > https://github.com/html-shell/mozbuild.git > > Hope someone can take a look. > > 2015-07-18 1:10 GMT+08:00 Gregory Szorc : > >> Ideally, yes. But nobody has put in the work for it. I think the reason >> we haven't seen much effort on continuing to purge Makefiles is because >> we've hit a local maximum with `mach build binaries`. The next big leap >> will take considerable investment (likely involves moving lots of logic out >> of config.mk and rules.mk so we can generate non-make build backends >> easier/faster). >> >> On Tue, Jul 14, 2015 at 3:23 PM, Yonggang Luo >> wrote: >> >>> This is a blocker to remove all makefiles. >>> ___ >>> dev-builds mailing list >>> dev-bui...@lists.mozilla.org >>> https://lists.mozilla.org/listinfo/dev-builds >>> >> >> > > > -- > 此致 > 礼 > 罗勇刚 > Yours > sincerely, > Yonggang Luo > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Is there any plan to move all DEFINES into moz.build?
I've already handled jar.mn and all components things in CommonBackend of common.py of mozbuild Now leave the DEFINES that needed by some files in the building procedure. My working result at https://github.com/html-shell/mozbuild.git Hope someone can take a look. 2015-07-18 1:10 GMT+08:00 Gregory Szorc : > Ideally, yes. But nobody has put in the work for it. I think the reason we > haven't seen much effort on continuing to purge Makefiles is because we've > hit a local maximum with `mach build binaries`. The next big leap will take > considerable investment (likely involves moving lots of logic out of > config.mk and rules.mk so we can generate non-make build backends > easier/faster). > > On Tue, Jul 14, 2015 at 3:23 PM, Yonggang Luo > wrote: > >> This is a blocker to remove all makefiles. >> ___ >> dev-builds mailing list >> dev-bui...@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-builds >> > > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to port Firefox's nsContextMenu.js into my customized Gecko based Application?
I want to use Firefox's nsContextMenu implementation for menu support in html pages. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: "Does jpm support for Thunderbird."
2015-07-02 18:19 GMT+08:00 J. Ryan Stinnett : > The mozilla-labs-jetpack list and/or #jetpack on IRC are probably > better (more focused) places to discuss JPM. > > - Ryan > > On Thu, Jul 2, 2015 at 5:14 AM, 罗勇刚(Yonggang Luo) > wrote: >> I am looking for it to developing plugins for thunderbird >> >> -- >> 此致 >> 礼 >> 罗勇刚 >> Yours >> sincerely, >> Yonggang Luo >> ___ >> dev-platform mailing list >> dev-platform@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-platform -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
"Does jpm support for Thunderbird."
I am looking for it to developing plugins for thunderbird -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
I was put XBL under customized protocol but not works properly, how to fix it?
Is there any flag I need to setting up? For example: app://app-bootstrap/skin/HTMLBrowser.xul -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: How create a full copy of mozbuild and dependencies at https://github.com/html-shell/mozbuild
Well, the https://pypi.python.org/pypi/mozbuild is not enough to building mozilla source tree, that's why I created mozbuildfull package. The intention of mozbuildfull is to creating tags version of mozbuild that can building related version of mozilla source tree and distributed with XUL SDK, so we can building other projects that dependent on mozilla gecko engine For example mozbuildfull 38.1 can used with xulrunner SDK 38.1, So we can easily developing things without the need of full gecko source tree. (It's really to big(2.4GB)!) 2015-07-01 0:19 GMT+08:00 Gregory Szorc : > The mozbuild Python package is available on PyPI: > https://pypi.python.org/pypi/mozbuild > > It's also possible to obtain an archive of the source from hg.mozilla.org. > See the instructions for the "archive" command/URL at > https://hg.mozilla.org/mozilla-central/help/hgweb. > > I would strongly prefer to not extract the files into a standalone GitHub > project, as that will make merging differences harder and could lead to a > permanent fork, which isn't conducive to the health of mozbuild at this > juncture, IMO. > > > On Mon, Jun 29, 2015 at 10:36 PM, 罗勇刚(Yonggang Luo) > wrote: >> >> I think doing this can getting mozbuild can be used >> as a independent software without the gecko source tree. >> >> >> >> -- >> 此致 >> 礼 >> 罗勇刚 >> Yours >> sincerely, >> Yonggang Luo >> ___ >> dev-platform mailing list >> dev-platform@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-platform > > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How create a full copy of mozbuild and dependencies at https://github.com/html-shell/mozbuild
I think doing this can getting mozbuild can be used as a independent software without the gecko source tree. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Why include extApplication.js but using scriptLoader load it?
https://dxr.mozilla.org/mozilla-central/source/browser/fuel/fuelApplication.js#817 #include ../../toolkit/components/exthelper/extApplication.js -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: How to getting custom protocol custom-protocol://some-uri-path to act like http to support page browser?
2015-06-25 7:26 GMT+08:00 Nicholas Alexander : > > > On Wed, Jun 24, 2015 at 5:53 AM, Yonggang Luo wrote: >> >> 在 2015年6月24日星期三 UTC+8下午7:38:01,Philipp Kewisch写道: >> > On 6/24/15 1:10 PM, Yonggang Luo wrote: >> > > For example. >> > > custom-protocol://some-uri-path/test.html >> > > >> > > I want the test.html works like >> > > >> > > http://some-web-site/test.html >> > > That I can navigate in the html page. >> > > >> > Check out nsIProtocolHandler >> > >> > Here is an implementation that directly forwards to http(s): >> > >> > >> > http://mxr.mozilla.org/comm-central/source/calendar/base/src/calProtocolHandler.js >> > >> > Philipp >> >> This is forwards to https, but I am forwards to resource:// >> That's really different. > > > I'm quite sure I already told you about this, but > https://github.com/ncalexan/fennec-bootstrapper includes a bootstrapper:// > protocol which does something quite similar: it handles bootstrapper://URI > like URI. It does some things around privileges that I found necessary to > load http (and resource, I think) schemes in a privileged context. Yes, I've already done that, but resource is totally different from http when I running To getting resource act like http, we need do preferences work to getting the bootstrap URI can load internally pref("network.protocol-handler.expose.bootstrap", true); > > Nick -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: How to getting custom protocol custom-protocol://some-uri-path to act like http to support page browser?
在 2015年6月24日星期三 UTC+8下午7:38:01,Philipp Kewisch写道: > On 6/24/15 1:10 PM, Yonggang Luo wrote: > > For example. > > custom-protocol://some-uri-path/test.html > > > > I want the test.html works like > > > > http://some-web-site/test.html > > That I can navigate in the html page. > > > Check out nsIProtocolHandler > > Here is an implementation that directly forwards to http(s): > > http://mxr.mozilla.org/comm-central/source/calendar/base/src/calProtocolHandler.js > > Philipp This is forwards to https, but I am forwards to resource:// That's really different. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to getting custom protocol custom-protocol://some-uri-path to act like http to support page browser?
For example. custom-protocol://some-uri-path/test.html I want the test.html works like http://some-web-site/test.html That I can navigate in the html page. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to retrieve callstack for JavaScript strict warning
I was running xulrunner or thunderbird. and the warning appeared in consoe ``` JavaScript strict warning: , line 0: TypeError: "Services" is read-only JavaScript strict warning: , line 0: TypeError: "Services" is read-only JavaScript strict warning: resource://gre/modules/GMPUtils.jsm, line 92: ReferenceError: reference to undefined property this.KEY_LOG_BASE [info] Injecting starting [info] The createChromeWindow uri is:null,app://app/test/xul/441414-richtree.xul [info] Injecting starting [info] Injecting starting [info] Inject finished for URI:app://app/test/xul/441414-richtree.xul ``` -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
In http://ftp.mozilla.org/pub/mozilla.org/b2g/tinderbox-builds/larch-win64/latest/
The graphene-41.0a1.en-US.win64.zip Doesn't package with icu dlls -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: atom-shell is electron, what's gecko-shell would be?
I was modified the chromeless to using it to building a variant version of Thunderbird, and want it to use under productive environment, cause I do a lot modificaton on chromeless so I wanna to fork it under a different name. Not so sure if that was a good idea.. 在 2015年6月17日星期三 UTC+8上午12:45:57,Paul Rouget写道: > It doesn't work on windows yet. It's very much WIP. Not ready for testing. > Code is here: https://hg.mozilla.org/projects/larch > > > Where to download nightly build for Windows ? > >> Graphene, the version of Gecko that runs browser.html, is basically > >> the equivalent of electron. Still a lot to do. > >> See: https://bugzilla.mozilla.org/show_bug.cgi?id=1115098 & > >> https://github.com/mozilla/browser.html (see graphene issues). > >> > >>> I am looking forward to it. > >>> ___ > >>> dev-platform mailing list > >>> dev-platform@lists.mozilla.org > >>> https://lists.mozilla.org/listinfo/dev-platform > >> > >> > >> > >> -- > >> Paul > > > > > > > > -- > > 此致 > > 礼 > > 罗勇刚 > > Yours > > sincerely, > > Yonggang Luo > > > > -- > Paul ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: atom-shell is electron, what's gecko-shell would be?
Where to download nightly build for Windows ? 2015-06-17 0:10 GMT+08:00 Paul Rouget : > Graphene, the version of Gecko that runs browser.html, is basically > the equivalent of electron. Still a lot to do. > See: https://bugzilla.mozilla.org/show_bug.cgi?id=1115098 & > https://github.com/mozilla/browser.html (see graphene issues). > > On Tue, Jun 16, 2015 at 5:59 PM, Yonggang Luo wrote: >> I am looking forward to it. >> ___ >> dev-platform mailing list >> dev-platform@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-platform > > > > -- > Paul -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
atom-shell is electron, what's gecko-shell would be?
I am looking forward to it. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Way to discarding xul is raising HTML.
2015-06-14 14:34 GMT+08:00 Paul Rouget : > For the context menu, it's easy to just use the contextmenu event from > the Browser API and create a floating div; for popups used by elements > like , I haven't looked yet, but my plan is to do what Gaia > does, and also use a div. I'm just not sure how to wire things > together yet. For native menu, I don't know yet what to do. Maybe > re-use the html5 menu element. The floating div, it's can not cross the barrier, that's means it's can not getting to the outsize of the ChromeWindow for desktop application. > > On Fri, Jun 12, 2015 at 5:34 PM, 罗勇刚(Yonggang Luo) > wrote: >> What's the plan to support for menu and popup and tooltip things? >> Is there any adaptable way to do that? >> >> 2015-06-08 18:51 GMT+08:00 Paul Rouget : >>> Right. Not supported yet. >>> >>> On Mon, Jun 8, 2015 at 11:13 AM, 罗勇刚(Yonggang Luo) >>> wrote: >>>> I also found in pure html window, there is no way to add support for >>>> context menu. >>>> And also popup. >>>> >>>> 2015-06-08 12:17 GMT+08:00 Paul Rouget : >>>>> B2G on desktop only uses HTML. OS integration is poor, but we are working >>>>> on it. >>>>> See the larch branch (https://hg.mozilla.org/projects/larch). >>>>> We are working on OS X support first. >>>>> For session restore, see bug 1033999. >>>>> >>>>> On Fri, Jun 5, 2015 at 8:02 PM, 罗勇刚(Yonggang Luo) >>>>> wrote: >>>>>> At the current time, pure html window doesn't support for >>>>>> session and other things. Such >>>>>> as setting the whole html's background to be transparent >>>>>> with the operating system. >>>>>> >>>>>> If we want to remove XUL completely from Mozilla source tree, what's >>>>>> left to do? >>>>>> >>>>>> >>>>>> -- >>>>>> 此致 >>>>>> 礼 >>>>>> 罗勇刚 >>>>>> Yours >>>>>> sincerely, >>>>>> Yonggang Luo >>>>>> ___ >>>>>> dev-platform mailing list >>>>>> dev-platform@lists.mozilla.org >>>>>> https://lists.mozilla.org/listinfo/dev-platform >>>>> >>>>> >>>>> >>>>> -- >>>>> Paul >>>> >>>> >>>> >>>> -- >>>> 此致 >>>> 礼 >>>> 罗勇刚 >>>> Yours >>>> sincerely, >>>> Yonggang Luo >>> >>> >>> >>> -- >>> Paul >> >> >> >> -- >> 此致 >> 礼 >> 罗勇刚 >> Yours >> sincerely, >> Yonggang Luo > > > > -- > Paul -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Way to discarding xul is raising HTML.
What's the plan to support for menu and popup and tooltip things? Is there any adaptable way to do that? 2015-06-08 18:51 GMT+08:00 Paul Rouget : > Right. Not supported yet. > > On Mon, Jun 8, 2015 at 11:13 AM, 罗勇刚(Yonggang Luo) > wrote: >> I also found in pure html window, there is no way to add support for >> context menu. >> And also popup. >> >> 2015-06-08 12:17 GMT+08:00 Paul Rouget : >>> B2G on desktop only uses HTML. OS integration is poor, but we are working >>> on it. >>> See the larch branch (https://hg.mozilla.org/projects/larch). >>> We are working on OS X support first. >>> For session restore, see bug 1033999. >>> >>> On Fri, Jun 5, 2015 at 8:02 PM, 罗勇刚(Yonggang Luo) >>> wrote: >>>> At the current time, pure html window doesn't support for >>>> session and other things. Such >>>> as setting the whole html's background to be transparent >>>> with the operating system. >>>> >>>> If we want to remove XUL completely from Mozilla source tree, what's left >>>> to do? >>>> >>>> >>>> -- >>>> 此致 >>>> 礼 >>>> 罗勇刚 >>>> Yours >>>> sincerely, >>>> Yonggang Luo >>>> _______ >>>> dev-platform mailing list >>>> dev-platform@lists.mozilla.org >>>> https://lists.mozilla.org/listinfo/dev-platform >>> >>> >>> >>> -- >>> Paul >> >> >> >> -- >> 此致 >> 礼 >> 罗勇刚 >> Yours >> sincerely, >> Yonggang Luo > > > > -- > Paul -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to getting firefox support let by default without version=1.7 or version=1.8?
-- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Way to discarding xul is raising HTML.
I also found in pure html window, there is no way to add support for context menu. And also popup. 2015-06-08 12:17 GMT+08:00 Paul Rouget : > B2G on desktop only uses HTML. OS integration is poor, but we are working on > it. > See the larch branch (https://hg.mozilla.org/projects/larch). > We are working on OS X support first. > For session restore, see bug 1033999. > > On Fri, Jun 5, 2015 at 8:02 PM, 罗勇刚(Yonggang Luo) > wrote: >> At the current time, pure html window doesn't support for >> session and other things. Such >> as setting the whole html's background to be transparent >> with the operating system. >> >> If we want to remove XUL completely from Mozilla source tree, what's left to >> do? >> >> >> -- >> 此致 >> 礼 >> 罗勇刚 >> Yours >> sincerely, >> Yonggang Luo >> ___ >> dev-platform mailing list >> dev-platform@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-platform > > > > -- > Paul -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to getting html files under URI resource://URI-path have the same permission that chrome://URI-path does?
I am trying to place html files under resource directory without need to maintain chrome for resource files.. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Is there any ‘:root ’ XBL binding equivalent in shadowDOM, if not, is there any plan to add something alike?
For example, I want to implement a customized titlebar and shadow for all html page, by hiding the system titlebar and shadow and resizer. And do not affect exist page. the following code is a way to do that, but need affect exist html code. Canvas tutorial function draw(){ var canvas = document.getElementById('tutorial'); if (canvas.getContext){ var ctx = canvas.getContext('2d'); } } html{ height: calc(100% - 41px); width: calc(100%-10px); margin: 36px 5px 5px 5px; } body{ height: 100%; width: 100%; margin:0px; } #content { position: fixed; top: 36px; bottom: 5px; left: 5px; right: 5px; border: none; overflow: auto; } canvas{ height: 900px; width: 576; border: 1px solid black; } iframe.CustomTitlebar{ margin: -36px -5px -5px -5px; position: fixed; border: none; height: 100%; width: 100%; z-index: -2147483648; } -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Is it safe to remove IsXUL check in nsContainerFrame
in function nsContainerFrame::SyncWindowProperties(nsPresContext* aPresContext, nsIFrame*aFrame, nsView* aView, nsRenderingContext* aRC) Element* rootElement = aPresContext->Document()->GetRootElement(); if (!rootElement || !rootElement->IsXUL()) { // Scrollframes use native widgets which don't work well with // translucent windows, at least in Windows XP. So if the document // has a root scrollrame it's useless to try to make it transparent, // we'll just get something broken. // nsCSSFrameConstructor::ConstructRootFrame constructs root // scrollframes whenever the root element is not a XUL element, so // we test for that here. We can't just call // presShell->GetRootScrollFrame() since that might not have // been constructed yet. // We can change this to allow translucent toplevel HTML documents // (e.g. to do something like Dashboard widgets), once we // have broad support for translucent scrolled documents, but be // careful because apparently some Firefox extensions expect // openDialog("something.html") to produce an opaque window // even if the HTML doesn't have a background-color set. return; } I want to remove rootElement->IsXUL() check for supporting transparent root html window, is that OK? -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Way to discarding xul is raising HTML.
At the current time, pure html window doesn't support for session and other things. Such as setting the whole html's background to be transparent with the operating system. If we want to remove XUL completely from Mozilla source tree, what's left to do? -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to override Components.utils.import to inject predefined symbols for all.
-- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to automatically start remote debugger and automatically connect the xulrunner application
And stop when connected. firefox -chrome chrome://browser/content/devtools/connect.xhtml This can open the connect page, but can not automatically connect. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Is there any demo for Services.ww.getChromeForWindow
I am trying to use it and always return null. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
_stricmp exist in mozcrt.lib but stricmp doesn't exist.
It's the mozcrt.lib for vs 2010. Cause ms is automatcally relocate stricmp to _stricmp, but mozcrt.lib doesn't do that. -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: How to inspect Js callstack from C++ callstack, I am using visual studio to debugging
Thanks for all, that's really helped!. 2015-06-02 20:47 GMT+08:00 Honza Bambas : > invoke DumpJSStack() from the debugger. It will output to console or to the > VC++ output window. > > -hb- > > > On 6/1/2015 11:26, 罗勇刚(Yonggang Luo) wrote: >> >>mozjs.dll!js::jit::BaselineScript::icEntryFromPCOffset(unsigned int >> pcOffset) Line 553 C++ >>mozjs.dll!js::jit::DebugModeOSRVolatileStub> *>::invalid() Line 56 C++ >>mozjs.dll!js::jit::DoGetElemFallback(JSContext * cx, >> js::jit::BaselineFrame * frame, js::jit::ICGetElem_Fallback * stub_, >> JS::Handle lhs, JS::Handle rhs, >> JS::MutableHandle res) Line 4048 C++ >>[External Code] >>[Frames below may be incorrect and/or missing] >>mozjs.dll!EnterBaseline(JSContext * cx, js::jit::EnterJitData & >> data) Line 126 C++ >>mozjs.dll!js::jit::EnterBaselineMethod(JSContext * cx, js::RunState >> & state) Line 155 C++ >>mozjs.dll!js::RunScript(JSContext * cx, js::RunState & state) Line 411 >> C++ >>mozjs.dll!js::Invoke(JSContext * cx, JS::CallArgs args, >> js::MaybeConstruct construct) Line 497 C++ >>mozjs.dll!js::Invoke(JSContext * cx, const JS::Value & thisv, const >> JS::Value & fval, unsigned int argc, const JS::Value * argv, >> JS::MutableHandle rval) Line 531 C++ >>mozjs.dll!js::DirectProxyHandler::call(JSContext * cx, >> JS::Handle proxy, const JS::CallArgs & args) Line 467 C++ >>mozjs.dll!js::CrossCompartmentWrapper::call(JSContext * cx, >> JS::Handle wrapper, const JS::CallArgs & args) Line 465 >> C++ >>mozjs.dll!js::Proxy::call(JSContext * cx, JS::Handle >> proxy, const JS::CallArgs & args) Line 2678 C++ >>mozjs.dll!js::proxy_Call(JSContext * cx, unsigned int argc, >> JS::Value * vp) Line 3082 C++ >>mozjs.dll!js::Invoke(JSContext * cx, JS::CallArgs args, >> js::MaybeConstruct construct) Line 468 C++ >>mozjs.dll!js::Invoke(JSContext * cx, const JS::Value & thisv, const >> JS::Value & fval, unsigned int argc, const JS::Value * argv, >> JS::MutableHandle rval) Line 531 C++ >>mozjs.dll!js::jit::DoCallFallback(JSContext * cx, >> js::jit::BaselineFrame * frame, js::jit::ICCall_Fallback * stub_, >> unsigned int argc, JS::Value * vp, JS::MutableHandle res) >> Line 8251 C++ >>[External Code] >>mozjs.dll!EnterBaseline(JSContext * cx, js::jit::EnterJitData & >> data) Line 126 C++ >>mozjs.dll!js::jit::EnterBaselineMethod(JSContext * cx, js::RunState >> & state) Line 155 C++ >>mozjs.dll!js::RunScript(JSContext * cx, js::RunState & state) Line 411 >> C++ >>mozjs.dll!js::Invoke(JSContext * cx, JS::CallArgs args, >> js::MaybeConstruct construct) Line 497 C++ >>mozjs.dll!js::Invoke(JSContext * cx, const JS::Value & thisv, const >> JS::Value & fval, unsigned int argc, const JS::Value * argv, >> JS::MutableHandle rval) Line 531 C++ >>mozjs.dll!js::DirectProxyHandler::call(JSContext * cx, >> JS::Handle proxy, const JS::CallArgs & args) Line 467 C++ >>mozjs.dll!js::CrossCompartmentWrapper::call(JSContext * cx, >> JS::Handle wrapper, const JS::CallArgs & args) Line 465 >> C++ >>mozjs.dll!js::Proxy::call(JSContext * cx, JS::Handle >> proxy, const JS::CallArgs & args) Line 2678 C++ >>mozjs.dll!js::proxy_Call(JSContext * cx, unsigned int argc, >> JS::Value * vp) Line 3082 C++ >>mozjs.dll!js::Invoke(JSContext * cx, JS::CallArgs args, >> js::MaybeConstruct construct) Line 468 C++ >>mozjs.dll!js::Invoke(JSContext * cx, const JS::Value & thisv, const >> JS::Value & fval, unsigned int argc, const JS::Value * argv, >> JS::MutableHandle rval) Line 531 C++ >>> >>> mozjs.dll!js::jit::DoCallFallback(JSContext * cx, js::jit::BaselineFrame >>> * frame, js::jit::ICCall_Fallback * stub_, unsigned int argc, JS::Value * >>> vp, JS::MutableHandle res) Line 8251 C++ >> >>[External Code] >>mozjs.dll!EnterBaseline(JSContext * cx, js::jit::EnterJitData & >> data) Line 126 C++ >>mozjs.dll!js::jit::EnterBaselineMethod(JSContext * cx, js::RunState >> & state) Line 155 C++ >>mozjs.dll!js::RunScript(JSContext * cx, js::RunState & state) Line 411 >> C++ >>mozjs.dll!js::Invoke(JSContext * cx, JS::CallArgs args, >> js::MaybeConstruct construct) Line 497 C++ >>mozjs.dll!js::Invoke(JSContext * cx, const JS::Value & thisv, const >> JS::Value & fval, unsigned int argc, const JS::Value * argv, >> JS::MutableHandle rval) Line 531 C++ >>
How to inspect Js callstack from C++ callstack, I am using visual studio to debugging
unsigned int argc, JS::Value * vp, JS::MutableHandle res) Line 8251 C++ [External Code] mozjs.dll!EnterBaseline(JSContext * cx, js::jit::EnterJitData & data) Line 126 C++ mozjs.dll!js::jit::EnterBaselineMethod(JSContext * cx, js::RunState & state) Line 155 C++ mozjs.dll!js::RunScript(JSContext * cx, js::RunState & state) Line 411 C++ mozjs.dll!js::Invoke(JSContext * cx, JS::CallArgs args, js::MaybeConstruct construct) Line 497 C++ mozjs.dll!js::Invoke(JSContext * cx, const JS::Value & thisv, const JS::Value & fval, unsigned int argc, const JS::Value * argv, JS::MutableHandle rval) Line 531 C++ mozjs.dll!JS_CallFunctionValue(JSContext * cx, JS::Handle obj, JS::Handle fval, const JS::HandleValueArray & args, JS::MutableHandle rval) Line 5064 C++ xul.dll!nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJS * wrapper, unsigned short methodIndex, const XPTMethodDescriptor * info_, nsXPTCMiniVariant * nativeParams) Line 1272 C++ xul.dll!nsXPCWrappedJS::CallMethod(unsigned short methodIndex, const XPTMethodDescriptor * info, nsXPTCMiniVariant * params) Line 517 C++ xul.dll!PrepareAndDispatch(nsXPTCStubBase * self, unsigned int methodIndex, unsigned int * args, unsigned int * stackBytesToPop) Line 87 C++ xul.dll!SharedStub() Line 113 C++ xul.dll!mozilla::storage::`anonymous namespace'::CompletionNotifier::Run() Line 146 C++ xul.dll!nsThread::ProcessNextEvent(bool mayWait, bool * result) Line 719 C++ xul.dll!NS_ProcessNextEvent(nsIThread * thread, bool mayWait) Line 263 C++ xul.dll!mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate * aDelegate) Line 95 C++ xul.dll!MessageLoop::RunHandler() Line 223 C++ xul.dll!MessageLoop::Run() Line 197 C++ xul.dll!nsBaseAppShell::Run() Line 166 C++ xul.dll!nsAppShell::Run() Line 186 C++ xul.dll!nsAppStartup::Run() Line 279 C++ xul.dll!XREMain::XRE_mainRun() Line 4020 C++ xul.dll!XREMain::XRE_main(int argc, char * * argv, const nsXREAppData * aAppData) Line 4088 C++ xul.dll!XRE_main(int argc, char * * argv, const nsXREAppData * aAppData, unsigned int aFlags) Line 4300 C++ wpsmail.exe!00171ba1() Unknown -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Is that possible to port nodejs with gecko javascript engine?
I've found Microsoft already done that. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Replacing Mozmill driven tests for Firefox with Marionette
Maybe a generalize name is better? Such as xul-ui-tests? > Andrew Halberstadt wrote on 05/13/2015 04:24 PM: > > > I thought thunderbird was using a very out-of-date version of mozmill > > which was already unmaintained anyway? Or did you already upgrade to the > > latest version? > > Yes, its a very outdated version of Mozmill from the hotfix-1.5 branch, > which we do not support since more than a year. Given that I have to add > that we cannot maintain something which is not in use at all. It's sad > to say but if something is broken the TB devs will have to get it fixed > in their customized Mozmill version. > > -- > Henrik ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Replacing Mozmill driven tests for Firefox with Marionette
在 2015年5月16日星期六 UTC+8下午4:46:35,Yonggang Luo写道: > Maybe a generalize name is better? > Such as xul-ui-tests? > > Andrew Halberstadt wrote on 05/13/2015 04:24 PM: > > > > > I thought thunderbird was using a very out-of-date version of mozmill > > > which was already unmaintained anyway? Or did you already upgrade to the > > > latest version? > > > > Yes, its a very outdated version of Mozmill from the hotfix-1.5 branch, > > which we do not support since more than a year. Given that I have to add > > that we cannot maintain something which is not in use at all. It's sad > > to say but if something is broken the TB devs will have to get it fixed > > in their customized Mozmill version. > > > > -- > > Henrik Or gecko-ui-tests. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
What's the plan to implement UDP sockets in Worker?
I am looking into it. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: May I execute mozIStorageStatement.executeAsync() at the same time in a single thread?
在 2015年4月25日星期六 UTC+8上午3:28:02,David Rajchenbach-Teller写道: > By the way, I don't know if you're writing JS code or C++ code, but if > it's the former, you really should use Sqlite.jsm. Yes, I was using Javascript code, maybe that's was the cause of failure. > > Cheers, > David > > On 24/04/15 18:48, Yonggang Luo wrote: > > I am currently using executeAsync to do async sqlite operation > > in main thread, and running multiple executeAsync in parallel, and it's > > crashed, > > I am not so sure if multiple executeAsync can be executed at the same time. > > ___ > > dev-platform mailing list > > dev-platform@lists.mozilla.org > > https://lists.mozilla.org/listinfo/dev-platform > > > > > -- > David Rajchenbach-Teller, PhD > Performance Team, Mozilla ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
May I execute mozIStorageStatement.executeAsync() at the same time in a single thread?
I am currently using executeAsync to do async sqlite operation in main thread, and running multiple executeAsync in parallel, and it's crashed, I am not so sure if multiple executeAsync can be executed at the same time. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How to use review-board to post a set of changes?
I means do not post a single diff, but multiple diff. The current command rbt command will automatically merge multiple changes as a single diff and submit, how to avoid this ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How does stl_wrappers works in mozilla building system?
I can not found the cause that how mozilla building with stl_wrappers. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
How does stl_wrappers works in mozilla building system?
I can not found the cause that how mozilla building with stl_wrappers. ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Is there anyway to parse XML in other thread?
在 2015年4月3日星期五 UTC+8下午11:14:31,Boris Zbarsky写道: > On 4/3/15 9:31 AM, 罗勇刚(Yonggang Luo) wrote: > > Don't know if we can compile c expat to asm.js to running in a worker. > > If you just want an XML parser in JS, there are various options out > there which are significantly more usable (and possibly faster) than > trying to shoehorn expat into JS. I'd like to know what it is, I am currently using mozilla's internal XmlParser in main thread(can only used in main thread), but it's will block my UI, that's really makes me feels not good. > > -Boris ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Is there anyway to parse XML in other thread?
Thanks for your help, even though XMLHttpRequest 's responoseXml is always be null. Don't know if we can compile c expat to asm.js to running in a worker. 2015-04-03 20:35 GMT+08:00 Xidorn Quan : > I think you can use XMLHttpRequest in a worker, so that everything happens > in the separate thread. > > - Xidorn > > On Fri, Apr 3, 2015 at 8:40 PM, Yonggang Luo wrote: >> >> I am currently to use XMLHttpRequest to fetch large amount of xml files >> in main thread but found it's very slow when I fetching multiple document >> that contains large amount data in the same time. >> ___ >> dev-platform mailing list >> dev-platform@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-platform > > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform