Re: Changes to tests build system integration (mostly xpcshell for now)

2013-09-30 Thread Gregory Szorc

Just landed in inbound is a mass conversion of mochitests to use manifests.

Not all references were moved. However, the intention is to move them 
all eventually. If you want to help with the effort, the tracking bug is 
920185. See 
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?changeset=22a30d73daf6 
for what is involved.


Please try to avoid adding new mochitest-related functionality to 
Makefile.in files, as you'll just be creating more work for the eventual 
conversion.


The manifest file format is documented at 
https://ci.mozilla.org/job/mozilla-central-docs/Build_Documentation/test_manifests.html.


On 9/24/13 9:23 PM, Gregory Szorc wrote:

Just landed in inbound and bound to stick sooner or later are some
changes to how tests are integrated with the build system.

* The per-directory xpcshell make targets have been removed. Use mach
(preferred) or TEST_PATH=... make xpcshell-tests top-level make target.

* xpcshell.ini files are now required to annotate their support files
so the build system knows what needs to be installed. i.e. files added
to xpcshell test directories are no longer automatically packaged by
default.

* Support for test manifests for all the flavors of mochitests have been
added to moz.build files. This means we should not be defining
mochitests in Makefile.in any more. Instead, create {browser-chrome.ini,
mochitest.ini, chrome.ini, a11y.ini} files (like xpcshell.ini files) and
reference said files in moz.build files via A11Y_MANIFESTS,
BROWSER_CHROME_MANIFESTS, MOCHITEST_MANIFESTS, and
MOCHITEST_CHROME_MANIFESTS. Bug 920185 has been filed to track this
effort. **Moving files over and reducing the total number of Makefile.in
and moz.build files will make the tree build faster.**

* Test manifests now support some additional features. Run |mach
build-docs| or see
http://build-docs.paas.allizom.org/test_manifests.html for the canonical
documentation.
___
firefox-dev mailing list
firefox-...@mozilla.org
https://mail.mozilla.org/listinfo/firefox-dev


___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Xulrunner and Angularjs

2013-09-30 Thread harmmeiier
After some tweaking around in the angular code because XULrunner returns 0 as 
status for successful xhr request made to local resources (on disk) I am 
running into yet another obstacle.

Any link that's manipulated by angular stops working:

a href='#/students/JON'Wors/a
a href='#/students/{{JON}}'doesnt work/a

Yet links that are dynamically added work fine too

  var a=document.createElement(a);
  a.href=#/students/JON;
  a.innerHTML=JS added works fine;
  document.body.appendChild(a);

The html file is in a XUL browser element and all the scripts and templates are 
located in chrome://myapp/content/. After having angular accept 0 as a 
successful return status, loading the templates and binding the data XUL 
descides it's time to mess with the links.

Working links have a href of: chrome://myapp/content/index.html#/students/JON
Non working: unsafe:chrome://myapp/content/index.html#/students/JON

This only happens to elements that angular binds data to. Not sure why this 
feature of XUL would do this because all links point to resources located in 
chrome://myapp/content/
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


DOM Bindings Meeting - Monday (today) @ 12:30 PM PDT

2013-09-30 Thread Andrew McCreight
Our (professedly) weekly DOM bindings meetings continue on Monday Sept 30 at 
12:30 PM PDT.

Thanks to Kyle Huey for sending out these meeting notices over the last year or 
so!

Meeting details:

* Monday, September 30, 2013, 12:30 PM PDT (3:30 PM EDT/9:30 PM CEST)
* Dial-in Info:
 - Vidyo room: Boris Zbarsky
 - In office or soft phone: extension 92
 - US/INTL: 650-903-0800 or 650-215-1282 then extension 92
 - Toll-free: 800-707-2533 then password 369
 - Conference number 9235
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Hang monitoring for non-main threads

2013-09-30 Thread Jim Chen
Hi all,

I'm looking at implementing a hang monitoring mechanism for non-main
threads. The initial motivation was that we've been noticing hangs on
the compositor thread in Fennec. These hangs are not as easy to notice
as main thread hangs, and we'd like more information about them like
how frequently they occur. As we move more components off main thread,
I think this kind of information could be useful to other areas as well.

So far I looked at the main thread hang monitor [1], but it seems to
make a lot of assumptions about the main thread. I think it would make
sense to have a separate, generic hang monitor that can monitor
multiple other threads. Each thread would register with the hang
monitor and tell it how much time the thread must be blocked before
it's considered a hang. The hang monitor would then relay
counts/histogram of hangs to telemetry. It would be even better if we
can get stacks.

One thing I'm not sure about is we have a variety of threads (IPC
threads, media threads, etc.), and I don't know how hard it would be
to adapt them to use the hang monitor. Please share your comments and
suggestions!

Thanks,
Jim

[1]
http://mxr.mozilla.org/mozilla-central/source/xpcom/threads/HangMonitor.cpp
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Re: Hang monitoring for non-main threads

2013-09-30 Thread Benjamin Smedberg

On 9/30/2013 2:48 PM, Jim Chen wrote:

So far I looked at the main thread hang monitor [1], but it seems to
make a lot of assumptions about the main thread.

Yes.


  I think it would make
sense to have a separate, generic hang monitor that can monitor
multiple other threads. Each thread would register with the hang
monitor and tell it how much time the thread must be blocked before
it's considered a hang.
The big problem is properly defining what hung actually means. For 
threads which primarily process events, hung pretty much means that the 
thread is stopped in the middle of processing an event but has never 
finished. But not all threads are like that. And, you have to be aware 
of times such as a computer going to sleep when a thread is hung on 
purpose by the user. But this kind of hang monitoring wouldn't catch a 
problem if a thread stopped processing events for some other reason. It 
might also get confused with nested event loops.


The main-thread hang monitor original was designed to crash the app 
after a prolonged hang, but it turns out that getting sleeping computers 
right as well as scaling the timeout to slow systems especially at 
startup was causing false positives. So the hang monitor is currently 
just used for telemetry collection.


--BDS

___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Re: Hang monitoring for non-main threads

2013-09-30 Thread Vladan Djeric

On 30/09/2013 2:48 PM, Jim Chen wrote:

So far I looked at the main thread hang monitor [1], but it seems to
make a lot of assumptions about the main thread. I think it would make
sense to have a separate, generic hang monitor that can monitor
multiple other threads.


I like the idea, but with Benjamin's caveats


The hang monitor would then relay
counts/histogram of hangs to telemetry. It would be even better if we
can get stacks.


Getting stacks will not be difficult, you can use the same 
infrastructure as the chrome-hang reporter.


Are you interested in permanent hangs or transient hangs? You'll have to 
make sure the browser can still exit properly when the hangs you're 
interested occur, otherwise Telemetry might not get a chance to write 
down the hang info to disk at session exit and it will never get reported.


___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Silencing debug spew

2013-09-30 Thread Bill McCloskey
Hi everyone,

If you run debug builds, you're probably aware of all the gunk
that gets dumped out to the console for even simple things like
starting up a browser. There's probably a rationale for all of
WARNING: No disk space watcher component available!: file 
/home/billm/mozilla/in1/dom/indexedDB/IndexedDatabaseManager.cpp, line 207
these messages and warnings, and we probably do fix some of them
occasionally. But at this point, there are so many that it's a
++DOMWINDOW == 4 (0x7effb67f08b8) [serial = 4] [outer = 0x7effb67ef8b8]
++DOMWINDOW == 5 (0x7effb64f1cb8) [serial = 5] [outer = 0x7effbfbe70b8]
little overwhelming. What's really bothersome is that my own
WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv)  subjPrincipal) failed: file 
/home/billm/mozilla/in1/docshell/base/nsDocShell.cpp, line 8442
debugging printfs are hard to find in all the unrelated spew.

I just landed bug 921293, which makes it possible to silence some
of these messages with an environment variable. If you just add
the following to your .bashrc or whatever:

# Silence ++THIS and --THAT
export MOZ_QUIET=1

# Silence NS_WARNING
export MOZ_IGNORE_WARNINGS=1

then you won't get any more messages about DOM windows or
docshell creation/destruction or about NS_WARNINGs firing. So far
it's had a much more positive effect on my debugging experience
than I would have expected.

-Bill
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Re: Silencing debug spew

2013-09-30 Thread Karl Tomlinson
Bill McCloskey writes:

 # Silence ++THIS and --THAT
 export MOZ_QUIET=1

 # Silence NS_WARNING
 export MOZ_IGNORE_WARNINGS=1

 then you won't get any more messages about DOM windows or
 docshell creation/destruction or about NS_WARNINGs firing.

Thanks very much, Bill.  I think I'll also find this useful.

Can we all agree to only use NS_WARNING for things that are
unlikely to happen?

This includes NS_ENSURE_SUCCESS and friends.
I thought there was almost consensus on avoiding NS_ENSURE_*
because of the way jump statements are hidden, but I've still seen
some advocating.

Can we at least agree not to use NS_ENSURE_SUCCESS when failure
is reasonably likely in normal use?
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Re: Silencing debug spew

2013-09-30 Thread Jesse Ruderman
If MOZ_IGNORE_WARNINGS=1 becomes common, I worry that warning spew will 
pile up even more than it does now, making it impossible to use warnings 
as part of the development process.


Incorrect warnings should be removed. Especially noisy warnings, such as 
those that happen during startup and showdown, should be disabled until 
the underlying bugs are fixed:


https://bugzilla.mozilla.org/show_bug.cgi?id=fx-noise
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform