Mozilla Nederland LogoDe Nederlandse

Abonneren op feed Mozilla planet
Planet Mozilla -
Bijgewerkt: 21 uur 43 min geleden

Emma Irwin: Keeping Girls Engaged in STEM Fields (until they retire as old women)

wo, 17/06/2015 - 05:31

I was honoured to be invited to Makerfaire Vancouver this past month to talk a bit about Mozilla, Mozilla Webmaker ‘Clubs’ and to encourage a grassroots approach to teaching and mentoring girls in STEM.  As it tends to go, I learned far more from others on the panel than I was capable of sharing I also left feeling a greater sense of purpose for my role in encouraging diversity in technology.

And that purpose came after listening to another panel speaker shared his studies showing that – when girls are asked to identify their gender on exams, they almost always had lower results than if they had taken a test without gender identification.  And this resonated with me, not on reflection of my girlhood in science, but in my years working in technology and transition to motherhood.

Although important, it feels like the the bulk of advocacy begins with girls and ends with young women.  I want to argue that success for ‘girls in STEM’ can only truly be celebrated when that success flows through the various identities and transitions in a woman’s life.

Motherhood is like that gender question on exams in that it often changes our confidence that we might be capable – or that people in positions of influence  believe we are.  Not because motherhood changes our abilities (heck no!) but because there’s a sense we need to apologize for having a competing priority especially when dominate tech culture reflects 18 hour days, beer-nights and ping-pong tables. Without proper mentorship, support and advocacy I’ve witnessed that tech loses a lot of women during this time.

So, I don’t have the answers (sorry of you scrolled down for wisdom) but what occurred to me is that somehow I have managed to say in tech, despite a number of transitions in my life – including a year-long period of critical illness for one of my children.  I’ll be doing a lot more thinking about how to connect local efforts around youth with women who can also benefit. For me that also means thinking about open source participation as a way to find mentors, and to stay connected and relevant during life transitions.


* I have been ‘shouted down’ on this topic before, by men saying I was ignoring the challenges fatherhood played in their careers.  To that I say – go solve that too.

* We were also asked about STEAM (arts education). To that I say, if you have strengths in art, go teach that.  No one person can solve all things – take that thing you are good at, and bring it to your community :)

* Learning to Solder was the highlight of Makerfaire for my daughters.


Categorieën: Mozilla-nl planet

Karl Dubost: Working on mozilla-central with SublimeText

wo, 17/06/2015 - 02:41

When I started to patch mozilla central for creating a patch, I had a bit of hard time. The file I was working on had trailing spaces in multiple places. My SublimeText configuration trims white spaces on save. It helps to keep my project sane if I forget about the end of lines. Unfortunately when you are working on files maintained by others and you want to separate the file cleaning (trimming spaces) from the actual fix, this is becoming cumbersome.

So I decided to start a sublime-project preference file for things which should or should not happen when working with mozilla central code. For now it does almost nothing, but if you know about some requirements and other things that should happen when working with mozilla central, just tell me. I will probably put it in a better place later, but for quickly drafting, let's use gist for mozilla-central.sublime-project.

{ "folders": [{ "path": "/Users/karl/code/mozilla-central" }], "settings": { "trim_trailing_white_space_on_save": false }, }

Change the path to your own path.


Categorieën: Mozilla-nl planet

Kim Moir: Test job reduction by the numbers

di, 16/06/2015 - 22:52
In an earlier post,  I wrote how we had reduced the amount of test jobs that run on two branches to allow us to scale our infrastructure more effectively.  We run the tests that historically identify regressions more often.  The ones that don't, we skip on every Nth push.  We now have data on how this reduced the number of jobs we run since we began implementation in April.

We run SETA on two branches (mozilla-inbound and fx-team) and on 18 types of builds.  Collectively, these two branches represent about 20% of pushes each month.  Implementing SETA allowed us to move  from ~400 -> ~240 jobs per push on these two branches1 We run the tests identified as not reporting regressions on every 10th commit or 90 minutes since the last test was scheduled.  We run the critical tests on every commit.2

Reduction in number of jobs per push on mozilla-inbound as SETA scheduling is rolled out
A graph for the fx-team branch shows a similar trend. It was a staged rollout starting in early April, as I enabled platforms and as the SETA data became available. The dip in early June reflects where I enabled SETA for Android 4.3.

This data will continue to be updated in our scheduling configuration as it evolves and is updated by the code that Joel and Vaibhav wrote to analyze regressions. The analysis identifies that there were

Jobs to ignore: 440
Jobs to run: 114
Total number of jobs: 554

which is significant.  Our buildbot configurations are updated the latest SETA data with every reconfig, which occurs usually occurs every couple of days.

The platforms configured to run fewer tests for both opt and debug are

        MacOSX (10.6, 10.10)
        Windows (XP, 7, 8)
        Ubuntu 12.04 for linux32, linux64 and ASAN x64
        Android 2.3 armv7 API 9
        Android 4.3 armv7 API 11+

Additional info
1Tests may have been disabled/added at the same time,  this is not taken into account
2There still some scheduling issues to be fixed see bug 1174870  and bug 1174746 for further details
Categorieën: Mozilla-nl planet

Michael Kaply: CCK2 2.1(.1) is Officially Available

di, 16/06/2015 - 21:01

I announced and released CCK2 2.1 to my mailing list subscribers last week. A couple bugs were found and fixed, and so I am officially releasing CCK 2.1.1 to the world and making it available as an update to CCK 2.0 users. You can download it here.

This new CCK2 represents a major change over previous versions in that it no longer depends on the distribution/bundles directory when using AutoConfig. It creates its own directory (cck2) that should be preserved across Firefox installs. I made this change in anticipation of Firefox 40 where the distribution/bundles directory will no longer work. For people that were using the distribution/bundles directory to distribute their own add-ons, I've enabled the cck2/bundles directory to serve the same purpose. As with the distribution/bundles directory, add-ons built with the SDK and restartless add-ons will not work.

Other changes in this new version include the ability to disable various new Firefox features like Pocket and Social Sharing.

I've also made a change to the export function that should make it easier to move CCK2 configs to other machines. If you've placed your resources (search plugins, certs, etc.) under your output directory, when you export your config, it will use relative paths. After transferring all the data to the new machine, you can edit the JSON file to change to the new output directory before importing.

As always, the CCK2 Wizard is provided as-is. You can open issues and feature requests, as well as participate in forum discussions at, but the only way to guarantee responses is to purchase a CCK2 Support plan.

I really appreciate the support of the folks who have done that.

Categorieën: Mozilla-nl planet

Armen Zambrano: mozci 0.8.0 - New feature -- Trigger coalesced jobs + improved performance

di, 16/06/2015 - 19:38
Beware! This release is full awesome!! However, at the same time new bugs might pop up so please let us know :)
You can trigger now all coalesced jobs on a revision:
mozci-trigger --coalesced --repo-name REPO -r REVISIONContributionsThanks to @adusca @glandium @vaibhavmagarwal @chmanchester for their contributions on this release.

How to updateRun "pip install -U mozci" to update

Major highlights
  • #259 - New feature - Allow triggering
  • #227 - Cache files as gzip files instead of uncompressed
    • Less disk print
  • #227 - Allow using multiple builders
  • 1e591bf - Make sure that we do not fetch files if they are not newer
    • We were failing to double check that the last modification date of a file was the same as the one in the server
    • Hence, we were downloading files more often than needed
  • Caching builds-4hr on memory for improved performance

Minor improvements
  • f72135d - Backfilling did not accept dry_run or to trigger more than once
  • More tests and documents
  • Support for split tests (test packages json file)
  • Some OOP refactoring

All changesYou can see all changes in here:
Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.
Categorieën: Mozilla-nl planet

Chris AtLee: RelEng 2015 (Part 2)

di, 16/06/2015 - 17:39

This the second part of my report on the RelEng 2015 conference that I attended a few weeks ago. Don't forget to read part 1!

I've put up links to the talks whenever I've been able to find them.

Defect Prediction

Davide Giacomo Cavezza gave a presentation about his research into defect prediction in rapidly evolving software. The question he was trying to answer was if it's possible to predict if any given commit is defective. He compared static models against dynamic models that adapt over the lifetime of a project. The models look at various metrics about the commit such as:

  • Number of files the commit is changing
  • Entropy of the changes
  • The amount of time since the files being changed were last modified
  • Experience of the developer

His simulations showed that a dynamic model yields superior results to a static model, but that even a dynamic model doesn't give sufficiently accurate results.

I wonder about adopting something like this at Mozilla. Would a warning that a given commit looks particularly risky be a useful signal from automation?

Continuous Deployment and Schema Evolution

Michael de Jong spoke about a technique for coping with SQL schema evolution in a continuously deployed applications. There are a few major issues with changing SQL schemas in production including:

  • schema changes typically block other reads/writes from occurring
  • application logic needs to be synchronized with the schema change. If the schema change takes non-trivial time, which version of the application should be running in the meanwhile?

Michael's solution was to essentially create forks of all tables whenever the schema changes, and to identify each by a unique version. Applications need to specify which version of the schema they're working with. There's a special DB layer that manages the double writes to both versions of the schema that are live at the same time.

Securing a Deployment Pipeline

Paul Rimba spoke about security deployment pipelines.

One of the areas of focus was on the "build server". He started with the observation that a naive implementation of a Jenkins infrastructure has the master and worker on the same machine, and so the workers have the opportunity to corrupt the state of the master, or of other job types' workspaces. His approach to hardening this part of the pipeline was to isolate each job type into its own docker worker. He also mentioned using a microservices architecture to isolate each task into its own discrete component - easier to secure and reason about.

We've been moving this direction at Mozilla for our build infrastructure as well, so it's good to see our decision corroborated!

Makefile analysis

Shurui Zhou presented some data about extracting configuration data from build systems. Her goal was to determine if all possible configurations of a system were valid.

The major problem here is make (of course!). Expressions such as $(shell uname -r) make static analysis impossible.

We had a very good discussion about build systems following this, and how various organizations have moved themselves away from using make. Somebody described these projects as requiring a large amount of "activation energy". I thought this was a very apt description: lots of upfront cost for little visible change.

However, people unanimously agreed that make was not optimal, and that the benefits of moving to a more modern system were worth the effort.

Categorieën: Mozilla-nl planet

Jeff Walden: San Francisco v. Sheehan: opinion and analysis

di, 16/06/2015 - 15:17

Last time I gave my last pre-opinion thoughts on the Texas specialty license plate case, Walker v. Texas Division, Sons of Confederate Veterans, whose oral argument I attended in March. The other case I saw that day, San Francisco v. Sheehan, was recently decided. Today I discuss the opinions in that case.

Ninth Circuit overturned, film at 11

My dismissive suggestion that San Francisco would win because Ninth Circuit and qualified immunity was on target. The Court ruled, 6-2, that the officers should receive qualified immunity — giving the win to San Francisco.

The Americans with Disabilities Act and accommodating the disabled

Recall that Justice Scalia and others alleged that San Francisco had improperly changed its argument from the time it got the Supreme Court to hear the case, to when it presented its formal argument. San Francisco initially argued that the Americans with Disabilities Act categorically didn’t require officers to accommodate armed and violent suspects who are disabled. But then later it argued that the ADA didn’t apply specifically to Sheehan, because she had posed a “direct threat”.

Every justice agreed that San Francisco’s tactics precluded the Court from deciding whether the ADA applied to armed and violent disabled suspects. So that’s still an open question awaiting a case properly presenting it.

Disposing of the rest of the case

But then what happens to the case and its remaining questions, if the ADA question is dismissed? The six-justice majority decided that the officers deserved qualified immunity. Justice Scalia, joined by Justice Kagan, argued that San Francisco shouldn’t be given a win for “snookering” the Court, when the Court wouldn’t have answered the qualified immunity question if presented alone. Instead the Court should have dismissed the entire case, leaving San Francisco to its loss in the Ninth Circuit.


I previously wasn’t entirely certain that San Francisco had changed its argument. But in light of the Court’s unanimous agreement on the matter, and in light of other commentary, it seems clear that it did.

I wasn’t aware the Court could dismiss “half” a case; that seems reasonable for the ADA question. For the remainder of the case, I think I lean toward Scalia’s and Kagan’s view. It’s unfair to parties in cases to allow one side to make an argument, then not be held to that argument come decision time. But I didn’t trace the majority’s cites far enough to conclude that its position was definitely wrong, so count my agreement with Scalia and Kagan as only tentative.

Next time, discussion of the ultimate opinion in Walker v. Texas Division, Sons of Confederate Veterans. The case is still pending, so I can’t yet say when that post might be ready.

Categorieën: Mozilla-nl planet

Robert O'Callahan: Israel, Part 1

di, 16/06/2015 - 15:06

I just got back today from an amazing trip to Israel. I was invited by the Technion to speak at their TCE 2015 conference. So I did that, added a few days for sight-seeing since I don't like to travel halfway around the world for just a couple of days of work, and also had a full day in Hong Kong on the way there.

I've never been outside the airport in Hong Kong before, so I was excited to finally do that. I took the tram up Tai Ping Peak, walked the Lugard Road circuit and back down to the city, then spent the afternoon at Cheung Chau island. It was incredibly hot and humid, and I was so busy looking for drinks and icy desserts that I forgot to eat proper food until the end of the day. I enjoyed the coastal track on Cheung Chau island, through jungle and the back streets of villages, though the Cheng Po Tsai "pirate cave" was a bit disappointing --- comparable sea caves at Piha don't even have names :-).

Checking into my El Al flight I experienced the famous El Al security. The very nice security man asked me endless questions, including topics like what I did in the USA and who I knew there from the Middle East. It all went well, aided by the Technion's letter, but I was nervous and felt a bit of an urge to confess to something (anything!) to make the man happy. Two local security officers with very large guns were watching the whole area and I wondered what happens if you accidentally give a wrong answer...

Early Sunday morning I got a taxi from Ben Gurion airport to Haifa. Excitingly, the taxi driver drove at 130km/h most of the way, with one hand on the steering wheel --- because he only had one arm. I stayed at the Colony Hotel, which was generally excellent and who very generously checked me into a room at 6am! Later in the morning I walked around the waterfront and up the front side of the famous Mount Carmel, then to the Bahai Gardens tour with my friend Nimrod --- amazing. We had a late, long lunch with a couple of other conference people and I spent the rest of the day relaxing and working in my room.

An unexpected blessing of my trip was the food. I've never had much Middle Eastern/Mediterranean food before --- there's not much of it here in Auckland --- so I had a lot of very good food that's new to me. I will never think about hummus the same way again.

The TCE conference was held on Monday and Tuesday. It was an eclectic group of speakers, but most of them were very good at giving talks accessible to a broad audience, and I really enjoyed hearing a broad range of computer science talks like I used to in my grad student days at CMU. There were very interesting talks on complexity theory, databases, architecture, compilers, testing, verification, and more. One of the speakers was my former CMU officemate Bianca --- an unexpected pleasure to meet again in such an exotic location! Having been mostly out of the academic circuit for a long time, I felt many waves of imposter syndrome, and so I was rather nervous leading up to my talk. It all seemed to mysteriously come right as soon as I got started --- I'll chalk that up to God and prayer. Without a clock or a proper practice run, even the timing was perfect; we had time for a couple of questions before a wailing siren cut us off --- a scheduled national-defense drill. I think we were supposed to flee to a shelter but most people just went to get coffee. I had a great time talking to researchers at the conference, and learned a lot of useful information.

On Monday night we had a speakers' dinner at the Technion, on a balcony with a view towards the Golan (and on a clear day, Mount Hermon, apparently). It was sobering to think of the brutal civil war raging just beyond our vision. On Tuesday night I had one of the most extraordinary meals of my life at a Druze village near Haifa --- a dozen large side dishes, most new to me; a huge main dish consisting of kebab meats, rice and cheese, with a layer of bread baked on top; and an irresistable kanafe dessert. I had no desire or need to eat anything the whole of the following day --- which I'll cover in the next post.

Categorieën: Mozilla-nl planet

Byron Jones: happy bmo push day!

di, 16/06/2015 - 08:42

the following changes have been pushed to

  • [1146769] cc activity isn’t shown
  • [1173124] Create a Firefox Friends Product w/ Components
  • [1172614] Revise VP list in from created in bug 1121594
  • [1172953] Move contrib/docker/.* to docker/*
  • [1173664] product information no longer wraps
  • [1174130] Update Mozilla Reps form to add mozilla-reps and mozilla-reps-admins group by default
  • [1146774] treeherder/tbpl comments are not automatically collapsed
  • [1173771] “Share a link to this list of bugs” doesn’t work for saved searches
  • [1169312] Missing space in expired-token error
  • [1173398] reduce the number of visible buttons at the top right of the page
  • [1174632] show keyword summary in tracking module summary
  • [1174644] fields are not sorted when shown on bug-modal
  • [1174637] a double-colon nick is detected as “:”
  • [1166337] Ignore * returned from GitHub

discuss these changes on

Filed under: bmo, mozilla
Categorieën: Mozilla-nl planet

Air Mozilla: Dnet Global Launch: Scaling Tech Innovations for the Social Bottom Line

di, 16/06/2015 - 04:30

 Scaling Tech Innovations for the Social Bottom Line Dnet's founder and CEO will give a short talk celebrating the launch of their new US operation, and we'll have a live chat with an...

Categorieën: Mozilla-nl planet

Mozilla Addons Blog: New AMO t-shirt design chosen!

ma, 15/06/2015 - 23:39

Congratulations to Erick León Bolinaga, whose design was chosen by the community to be printed on the new AMO developer t-shirt. Erick has been a Mozilla contributor for 8 years and is the co-founder and leader of the Mozilla Cuba community. He says:

“It was a pleasure to participate in this contest. I would like to thank Mozilla for making this participatory. I would also like to thank all the community members who voted for my design. The biggest reward will be seeing the design printed on t-shirts for add-on developers. They have contributed in making Firefox the best browser ever.”

Big thanks to everyone who submitted a design, and congratulations to the two runners up, Avishek Gangopadhyay and Drack Wave.

And here is Erick’s design!


To qualify for a shirt, you must be one of the following:

  1. A developer with an add-on listed on AMO
  2. A developer with an add-on that is not listed on AMO, but is signed
  3. A background theme designer with 10,000 or more users

If you pass one of these qualifications, please sign up here to reserve your shirt! The deadline to sign up is Weds, July 8, 2015.

The shirt will be printed after the deadline, and we’ll start mailing them out in August.

Thank you to everyone who participated!

Categorieën: Mozilla-nl planet

Air Mozilla: Brownbag: Inequality in global app marketplaces and what Mozilla can do about it

ma, 15/06/2015 - 21:00

 Inequality in global app marketplaces and what Mozilla can do about it A presentation by Caribou Digital on the app economy and the role of digital marketplaces.

Categorieën: Mozilla-nl planet

Cameron Kaiser: Mission accomplished: IonPower kicks incredibly large gluteus

ma, 15/06/2015 - 20:18
I like kicking big butts on big endian processors and I cannot lie. You other brothers/sisters/etc. are unable to deny.

Remember our primary target was to make our new IonPower JavaScript JIT backend eclipse our previous speed champion, JaegerMonkeyPPC, on our chosen classic V8 benchmark. It's always hard to judge debugging builds because of all the extra chaff they carry, but as of early this morning TenFourFox 38 was able to get a G5-optimized build up (more on that in a moment which builders need to read). Let's get a drum roll, maestro. Test system is a Quad G5 with performance set to Highest. Here is our current browser (31.7.0) running the current JIT compiler, PPCBC:

% /Applications/ --no-ion -f run.js
Richards: 208
DeltaBlue: 579
Crypto: 365
RayTrace: 574
EarleyBoyer: 628
RegExp: 622
Splay: 932
NavierStokes: 439
Score (version 7): 502

PPCBC beats the interpreter by a long shot, which our long suffering friends running Firefox in PowerPC Linuxland must still contend with, but PPCBC was no JaegerMonkey. Here is 17.0.11:

% /Applications/ -m -n -f run.js
Richards: 3160
DeltaBlue: 8364
Crypto: 3036
RayTrace: 1784
EarleyBoyer: 3602
RegExp: 553
Splay: 4115
NavierStokes: 1383
Score (version 7): 2519

Yup, that was good times. But are you ready for awesome?

% mozilla-38b/obj-ff-dbg/dist/bin/js -f run.js
Richards: 7258
DeltaBlue: 19207
Crypto: 2857
RayTrace: 15730
EarleyBoyer: 8873
RegExp: 1202
Splay: 3960
NavierStokes: 3456
Score (version 7): 5561

That is 2.21 times faster than JaegerMonkey (versions 10-22) and over eleven (!!) times faster than PPCBC (versions 24-36). I don't think you even want to see how much faster it is than the interpreter ... but what the heck!

% mozilla-38b/obj-ff-dbg/dist/bin/js --no-ion --no-baseline --no-native-regexp -f run.js
Richards: 44.7
DeltaBlue: 172
Crypto: 80.9
RayTrace: 113
EarleyBoyer: 173
RegExp: 192
Splay: 341
NavierStokes: 135
Score (version 7): 134

That's over 41 times faster. I can't wait to get this hot little rocket in your hot little hands. Mind the fire. PowerPC got back.

The only target we missed is that Baseline-only performance is still about 25% slower than PPCBC, which admittedly was highly optimized for that purpose. I think this tradeoff will be acceptable. :)

Builders are warned: 38 will probably require some tweaks to bintools due to a problem with N_SECT and gcc 4.6. I'm currently experimenting with a modified strip that doesn't choke on these non-standard object files and will provide this to you when the beta becomes available. In addition, I've pretty much settled on gcc 4.9 for post-38 and we will likely use a combination of MacPorts and Sevan's pkgsrc builds for the new build system, if there is one. More on that after 38 launches successfully.

Categorieën: Mozilla-nl planet

Chris Cooper: Releng & Relops weekly highlights - June 12, 2015

ma, 15/06/2015 - 19:04

Happy Monday!

Release Engineering has a lot going on. To help spread good news and keep everyone informed, we’re trying an experiment in communication.

Managers put together a list of what we all have been working on, highlighting wins in the last week or so. That list gets sent out to the public release-engineering mailing list and then gets reblogged here.

Please send feedback - did you learn anything, what else should we have included, and what topics might need some additional explanation or context.


Taskcluster: Morgan now has working opt, debug, PGO and ASan 64-bit Linux builds for TaskCluster. This work enables developers to experiment with linux try jobs on their local systems! Dustin debugged and confirmed that inter-region S3 transfers are capped at 1 MB/sec; he also stood up a relengapi proxy for accessing private files in tooltool. Rail just finished work on deploying signing workers for TaskCluster, important for deploying funsize.

Puppetized Windows in AWS: Mark debugged and worked around an annoying ACL and netsh bugs in puppet that were blocking forward progress on Windows puppetization. Amy and Rob are generating 2008R2 puppetized AMIs in AWS via cloud-tools.


Amy, Hal, Nick, Ben, and Kim responded to the many issues caused by the NetApp outage, including unexpected buildbot database corruption. Hal, Ben, Nick and Rail have been working hard to enable 38.0.6, in support of the spring release which included a bunch of features we needed to get out the door to users.

Q worked on making S3 uploads from Windows complete successfully and worked with Sheriffs to debug and fix a Start Screen problem on Windows 8 that was causing test failures. Jake is saving us money by retiring diamond (shout out to shutting things off!). Rob & Q ensured that all systems now send logs to Papertrail, EVEN XP!

Mike removed the one of the last blockers to getting off FTP and over to S3: porting Android buildsto mozharness. In addition to freeing us from the buildbot factories, this also uses TaskCluster’s index service for uploading artifacts to S3. Hal and Anhad (our amazing intern!) now have vcs-sync conversions all running in parallel from AWS. As part of moving mozharness in-tree, Jordan is doing to work allow consumers to create and fetch mozharness bundles automatically from relengapi.

Thank you all!

And here are all the details:

  • Morgan got ASan and debug Firefox builds running in Task Cluster with very little additional effort on top of her previous work with opt builds. Optimized and PGO builds are already working well. Also, this work enables developers to run try jobs on a local system! See:
  • Dustin worked with the AWS support team to determine/verify that S3 is capping transfers between regions at 1MB/sec using their single-stream copy mechanism (bug 1167732). This pinpoints a bottleneck in our CI infrastructure where we can instead use their multi-stream copy utility and increase performance.
  • Dustin wrote a relengapi proxy (bug 1170753) to allow Android builds access to private files via Releng’s existing tooltool application (which he also rewrote recently). This puts us one step closer to being able to build Android using TaskCluster, the new CI tool developed by the FxOS Releng team. He’ll be working on a more generic proxy implementation once we are further along with the Android builds.
  • Rail finished work deploying the new signing workers for TaskCluster. These will be used initially for funsize to sign partial update MARs, and will be used in the future to sign nightly and release builds as well.
Puppetized Windows in AWS
  • We’ve been facing issues with the interaction between puppet and Windows 2008 that led to puppet runs failing after some number of executions. After some detailed debugging, Mark has identified that the Windows file module attempts to append permissions instead of replacing them when puppet runs (bug 1170587). This means we eventually ran out of space in the ACL definition and puppet failed. For now, he’s come up with a workaround that clears the ACL and the applies them fresh on each run where they need to change. He’ll be filing a bug with the puppet folks, but this allows us to move forward on our work to manage WIndows 2008 build machines with puppet instead of GPO. There was another puppet bug/bad interaction with netsh exit statuses (bug 1165567) that Mark has a workaround for so we can deploy the same TCP stack tuning that we did with GPO.
  • Rob and Amy have been modifying cloud-tools and now have a process that’s generating puppetized AMIs for 2008R2 (bug 1166448). Next up is to validate that we get successful machine instantiations off of those AMIs and get some working builds off of those machines in try.
  • Amy, Hal, Nick, Ben, and Kim performed emergency work in conjunction with IT and sheriffs during a Netapp storage outage that brought down releng VMWare systems and the buildbot database (as well as several other company services). Once they repaired the affected systems and brought them back online, they verified that services were functional and the trees could be opened again (bug 1172666).
  • Rob and Q finished up the last of the powershell and GPO scripting to add nxlog forwarding to our WIndows XP hosts (bug 1097374). This modification to the XP systems sends all system errors to our consolidated logging infrastructure. Adding this logging to XP means that all release engineering systems now report to the centralized system where we can search, alert, and triage issues with the systems where we would not have previously had insight. As a result, we’ll now be able to find and fix systems issues faster.
  • After some heavy debugging of timeouts during Windows 2008 uploads to S3 from our SCL3 datacenter during two tree closures, we think we’ve found the sweet spot of Windows TCP stack stability and performance. The systems hit an unexpected cascading performance failure after latency between the datacenter and S3 pushed us over an unknown/undocumented threshold. Fortunately, we had experienced similar issues in our prototype infrastructure in EC2 and Q had solved the longstanding EC2 -> S3 upload speed problem just days before (bug 1165314). The conditions in the datacenter were slightly different than our EC2 test-bed and he caught an additional stability issue after rolling out the first fix (bug 1168812). The second fix he deployed seems to have everything working well again and improved our performance in EC2 significantly.
  • Jake is saving us money and network/CPU usage by retiring the use of diamond (which was reporting to on our EC2 Linux instances (bug 1164220). We’re now relying on collectd to report statistics to the internal graphite infrastructure instead of also sending the same stats to hostedgraphite. Jake is in the process of compiling updated/patched collectd packages for all of our platforms which we’ll roll out soon to fix some known issues with reporting (bug 1157337)
  • In cooperation with the sheriff’s, Q has rolled out a change to our Windows 8 test machines that we believe will solve a number of timeout failures across different Firefox test suites. In these test cases, the diagnosis via screenshot was that the Start Screen was active when it should not have been and that the tests were not getting the correct feedback. The change turns off the Start Screen and, because it might also be impacting the same tests, Windows 8 Hot Corners (bug 1169243).
  • The “spring release” aka 38.0.5 and followups have needed some special attention. Hal, Ben, Nick and Rail have been doing a lot of work over the past weeks handling “What’s New” problems with Aurora, as well as the unscheduled 38.0.6 release. This was an important release to fix up some fallout caused by the funnelcake 38.0.5 experiment. If you’re like Selena, you might not know that funnelcake is our code name for special partner builds that have a look at user conversion for things like download, install and update.
  • Mike has switched Android builds over to use mozharness instead of the legacy buildbot factories. This was one of the last blockers for our migration off of FTP to S3. The new mozharness based builds upload to S3 using task cluster’s index service.
  • Hal and Anhad (our intern) have made good progress on moving vcs-sync off end-of-life hardware. All conversions are now running in parallel from AWS!
  • Jordan is working on adding endpoints to relengapi that will allow consumers to create and fetch mozharness bundles automatically. This is an essential precursor to having mozharness completely managed in-tree and reducing hands-on interaction from releng to zero.
Categorieën: Mozilla-nl planet

Air Mozilla: Mozilla Weekly Project Meeting

ma, 15/06/2015 - 19:00

Mozilla Weekly Project Meeting The Monday Project Meeting

Categorieën: Mozilla-nl planet

Marcia Knous: Firefox OS App Development "Summer of Code"

ma, 15/06/2015 - 18:49
Since they popped into an an IRC channel and asked for a Flame device, I have been working with a set of high school students in Virginia on various projects related to Firefox OS and the BuddyUp app. I just received an email from their IT teacher about an interesting Summer of Code project they just started.   They are also working on another great project, remixing a Firefox OS tutorial.   These students have done a great job, and should proud of all the work they have done over the course of
Categorieën: Mozilla-nl planet

Chris Cooper: Brace yourselves

ma, 15/06/2015 - 18:34

Categorieën: Mozilla-nl planet

Jeff Walden: Final thoughts on Walker v. Texas Division, Sons of Confederate Veterans

ma, 15/06/2015 - 15:17

Two months ago I began a blog post series about my recent visit to the Supreme Court for oral arguments in two cases. San Francisco v. Sheehan concerned police use of force in San Francisco; Walker v. Texas Division, Sons of Confederate Veterans concerned Texas’s specialty license plate program and its restrictions on permissible designs. Seven weeks ago I discussed oral argument in the Texas license plate case. Today I return for final thoughts on the Texas license plate case, in which a decision is expected any day now — perhaps even in an hour today.

(Why the seven-week delay when I’d promised merely “a day or two”? The day of the last post, I underwent [relatively] minor surgery for pain from a high ankle sprain, that hadn’t fully responded to approaches short of arthroscopic ankle surgery. [The surgery seems to have been successful, but I probably can’t be sure til I regain full ankle flexibility/strength. I can walk almost entirely normally now, but strength and flexibility are still noticeably diminished, albeit improving daily.] Although I had spare time immediately afterward, I wasn’t particularly inclined to post-writing, and as time passed I never got back in the groove. Time winding down before the ultimate opinion has put me back on track. :-) )

Back to forum analysis

Before I tackled oral argument, my previous posts discussed offensive speech. I left one question hanging: what sort of forum is Texas’s specialty license plate program? Is it a designated public forum or a limited public forum?

This turns out not to matter. To judge offensiveness requires adopting a particular viewpoint, but regardless which sort of forum Texas specialty plates are, restrictions must be viewpoint-neutral. As for Texas’s argument that judging offensiveness is “objective” and viewpoint-neutral, this plainly must fall in light of the Court’s repeated insistence that “the government may not prohibit the expression of an idea simply because society finds the idea itself offensive”.

Censoring based on offensiveness is not viewpoint-neutral. But in either a designated public forum or a limited public forum, restrictions must be viewpoint-neutral. So it doesn’t matter which Texas’s program is: prohibitions based on offensiveness must fall.

My opinion On Texas

If you’ve paid any attention to this series, it should be obvious that I think Texas must lose. When Texas opened up a forum for speech on plates and invited essentially everyone onto them, they lost control over what can be said there. An amicus brief from the Rutherford Institute best captures my thoughts on this case. (Which isn’t to say I disagree with other briefs supporting Texas SCV, simply that the approach here best matches my reasoning.)

Other specialty plate programs

So much for Texas’s program. What about programs in other states? Such disputes previously have centered on Confederate flags (by other SCV divisions), but perhaps the most prominent topic of controversy has been adoption/abortion/pro-life/pro-choice advocacy. Some states have explicitly ordered designs taking sides in that controversy, or have approved such designs submitted by private parties. Inevitably the other side files suit for a chance to say its piece. What should happen? I think it depends on the contours of the program.

If a state legislature passes a law ordering a design be produced, or delegating that to the state DMV, that legitimately does seem to me to be government speech. Private parties have no right to butt in to demand alternative designs. The place to challenge such programs is in the voting booth, not the courthouse. The same is true if privately-submitted designs receive legislative approval in a pick-and-choose process: the available designs are government speech (although the designs themselves may be hybrid speech).

On the other hand, if a state provides a specialty plate program in which private parties may request designs, and those designs aren’t explicitly limited to particular topics, the specialty plate program is a designated public forum in which permitted private parties can say whatever they want. (Subject to the usual traditional public forum restrictions.) (This is Texas’s program.)

If the state provides an open program with restrictions, then we have a limited public forum. A specialty plate program along these lines might or might not be able to exclude speakers. For example, many Texas designs recognize particular colleges. A state program allowing only colleges to submit designs, consisting of a color scheme and a logo, wouldn’t be required to accept a specialty plate on some other topic, or from a non-college. A specialty plate program that allowed, say, “non-political” designs only would be a much closer question that would probably swing the other way. (Who’s to say what’s political and what isn’t, “viewpoint-neutrally”?) But if criteria were objective and viewpoint-neutral, restrictions might be permissible.

Justice Kennedy’s concern that striking Texas’s program “curtails” speech

One slightly disconcerting moment at oral argument came after Texas SCV argued that Texas pretty much couldn’t prohibit anything on specialty plates. With minor adjustments for readability:

Justice Scalia
So you’re — you’re really arguing for the abolition of Texas specialty plates, aren’t you? I couldn’t make a better argument for — in that direction than — than what you’ve been doing.
Mr. George
Well, we had got along without it a long time before we got it, and we can get along without it again.
Justice Kennedy
So in a way, your argument curtails speech?

I’m not sure whether this ever received an answer. But the answer I’d have given is simple: “We call Texas’s bluff.” As I’ve noted, other states have had to respond to court cases in favor of unliked speakers: on license plates, in Adopt-A-Highway programs, in municipal transit ad programs, and so on. The states and cities operating these programs generally haven’t shut down the programs to prevent undesirable speakers from speaking, and many don’t even adjust program parameters to work around court decisions. No matter what it might bluster, Texas won’t shut down its program if it loses. Only very few ill-mannered states are likely to pick up their toys and leave, rather than share them with speakers they don’t like.


My prediction is that Texas will lose unanimously. The justices generally were somewhat taken aback by the sprawling assertions made by Texas SCV, but that seems only natural when good people contemplate potentially allowing vile, racist speech. The justices, as judges, ultimately must be, and are, less susceptible to these emotional tuggings than it might seem in the moment of argument. This is a very pro-speech Court; I think they’ll have very little trouble getting over their prejudices against speech they might not like.

Only Justice Scalia seemed to have particular sympathy for Texas, and for Texas being permitted to run its program however it wants. I think he viewed specialty plates and programs as mostly one giant exercise in frivolity: “Why aren’t bumper stickers good enough?”, “Why does anyone care what’s on their license plate?”, to put words in his mouth. There’s something to that: if we returned to a world where license plates were solid-color letters on a solid-color background, it’s hard to say anyone would really be much worse off. But just because a particular means of speech seems unbelievably stupid doesn’t justify shutting it down. I don’t think Justice Scalia would hang up on that in an opinion.

Ultimately I think the open nature of Texas’s invitation, combined with the standardless system by which Texas can reject designs, will sway him against Texas, even if he thinks the entire controversy is a waste of time. Justice Scalia was one of the votes striking down statutes criminalizing flag-burning on the basis of its offensiveness. I don’t see how he would abrogate that position on offensive speech just because Texas nominally exercises “effective[] control” over the specialty license plate program but doesn’t specifically cabin designs to limited topics.

Next time I return to San Francisco v. Sheehan to discuss the opinion in that case. And unlike last time, I’ll guarantee this discussion will issue tomorrow. (Barring Dreamhost downtime, server issues, Judgment Day, &c.) :-)

Categorieën: Mozilla-nl planet