Catégories: "Informatique"

Changes Firefox 29 beta5 to beta6

Avril 8th, 2014

The number of changeset has decreased (23 for beta6 compared to 43 for beta5). This is a good sign as we approach from the release date of 29. In this release, some top crashes have been fixed and some last bugs for Australis has been address.

  • 23 changesets
  • 55 files changed
  • 435 insertions
  • 704 deletions

By extensions:


By modules:


List of changesets:

Tim NguyenBug 989449 - fix menu-button dropmarker corners to have border-radii on Windows 7, Vista and XP. r=mikedeboer, a=sylvestre. - bc6c34299b03
Tim NguyenBug 980339 - Remove border-radius from add-on manager on Windows 8. r=mikedeboer, sr=Unfocused, a=sylvestre. - cb7f81834560
Mike de BoerBug 991072: fix zoom percentage label to be centered in any toolbar. r=mconley, a=sylvestre. - 3e69377c027a
Gijs KruitboschBug 946595 - High contrast themes on Windows 8 shouldn't be considered the default theme in CSS, r=jimm, a=sylvestre. - 250d63775815
Boris ZbarskyBug 976920 - Mostly back out Bug 932322 for now; only define the unforgeable properties on the window object itself. r=jst, a=sledru - aecbb562466a
Robert StrongBug 982448 - Some fxmetro pref's still being left behind with values without --enable-metro in the mozconfig. r=bbondy, a=sledru - 6f0ad6b259ca
Jan de MooijBug 983709 - Simple branch patch for uplift. r=hv1989, a=sledru - 81285325c7db
Jon CoppeardBug 986864. r=sfink, a=sledru - e6b88dfe88cd
Phil RingnaldaBug 986760 (with a dash of 989101 added in) - disable browser_UITour3.js on Linux for excessive failures and lack of action taken toward fixing them. a=test-only - 6c1da25749a0
Matthew NoorenbergheBug 990384 - Define tabToolbarNavbarOverlap to reduce magic numbers in CSS for the overlap between the tabs and nav-bar. r=mconley a=sylvestre - a2fccb7d55f7
Matthew NoorenbergheBug 878436 - Update Lion Fullscreen window styling offsets to avoid themes shifting position. r=timdream a=sylvestre - 4d27870d3fdc
Matthew NoorenbergheBug 990387 - Toolbar buttons on the TabsToolbar appear below the nav-bar border with a theme. r=dao a=sylvestre - 81075b35ee13
Matthew NoorenbergheBug 973855 - [Australis] Include browser-bottombox in the customization mode padding. r=jaws a=sylvestre - 75c7e2c98e0c
Jan BeichBug 948946 - Use private-browsing indicator with GTK theme on non-Linux as well. r=MattN a=sylvestre - f7faeaf19dfa
John DaggettBug 975460 - disable async font loader on OSX 10.6 (beta/aurora). r=smichaud,mkato a=sylvestre - 79c61c6f632d
Joel MaherBug 987892 - Clear up oranges for deBug mochitest-browser-chrome jobs on Mozilla-Beta. r=armenzg a=test-only - 13bf6fe8df1f
Benjamin BouvierBug 969203 - Take out non strictly commutative Float32 functions. r=sstangl, a=sledru - 7e9b33204db9
Bobby HolleyBug 980537 - Only store FakeBackstagePass instances in mThisObjects. r=khuey, a=sledru - 9933fa36efa5
Mike KaplyBacking out Bug 889085 (dddfd63f1414, f8c14bd80676) due to regression Bug 987783. r=roc, a=sledru - 51e5b0ec21b3
Garrett RobinsonBug 971341 - Fix infinite tab loading due to missing characters in CSP's path regexes. r=sstamm, a=lsblakk - fe5d67aa5366
Shane CaraveoBug 992398 - Fix domain for cdn deployment of directory site. r=gavin, a=sledru - ea5b3027bb42
Karl TomlinsonBug 990794 - Crash on ovrfl in SharedBuffer::Create(). r=roc, a=sledru - 51a84afe085d
Karl TomlinsonBug 990794 - Crash on ovrfl in AllocateAudioBlock. r=roc, a=sledru - 004a7c15d761

r= means reviewed by
a= means uplift approved by

Previous changelogs:

Changes Firefox 29 beta4 to beta5

Avril 4th, 2014

Firefox 29 beta 5 has just been pushed to the mirrors. This release is similar to beta3 and beta4 is term of number of commits but their total size has been divided by 2. In this beta, some critical bugs fixed, various sync improvements and, obviously, Australis!

We are also providing two more statistics: by extensions and by modules (the number of files changed).

  • 43 changesets
  • 128 files changed
  • 1049 insertions
  • 425 deletions

By extensions:


By modules:


List of changesets:

Boris ZbarskyBug 988106 - No more unnecessary .wrappedJSObject in debugger. r=past, a=sledru
Bobby HolleyBug 969441 - Check for recursion outside of the hairy transplant callsites. r=billm, a=sledru
Nikhil MaratheBug 967005 - Report rejected promises when worker stops running. r=bent, a=sledru
Sean StanglBug 616491 - Limit YARR stack size to 1MB. r=mjrosenb, a=sledru
Mark HammondBug 970167 - Disable passwords engine when a master password is set. r=rnewman, a=sledru
Bas SchoutenBug 984796 - Fix some small errors in path flattening code. r=jwatt, a=sledru
Mark HammondBug 985212 - Check if the username looks like an email address to determine what sync to use. r=rnewman, a=sledru
Henrik SkupinBug 987147 - [tps] Re-add support for old sync authentication. r=jgriffin, a=sledru
Peter Van der BekenBug 988863 - Preserve Location in AddProperty. r=bholley, a=sledru
Olli PettayBug 987433 - DOMTokenList should have a strong reference to its owner so that the API doesn't suddenly start returning empty string. r=khuey, a=sledru
Brian NicholsonBug 988527 - Fix progress.9.png to have balanced padding. r=lucasr, a=sledru
Benjamin BouvierBug 989166 - Reserve stack explicitly rather than implicitly. r=sstangl, a=sledru
Margaret LeibovicBug 976680 - Remove landscape padding from home banner. r=bnicholson, a=sledru
Sylvestre LedruBug 990213 - Post Beta 4: disable EARLY_BETA_OR_EARLIER a=me
Marco CastelluccioBug 898647 - Move app package in the Resources directory on Mac. r=myk, a=sledru
Randell JesupBug 986762 - Don't release DataChannelConnection on transient thread on readblob failure. r=smaug, a=sledru
Myk MelezBug 982559 - Use intent data to start app from legacy shorcut. r=wesj, a=sledru
Jared WeinBug 969963 - Grey out PanelUI-popup items when a subview is opened. r=mconley a=sledru
Gijs KruitboschBug 983997 - move pulse animation into animation container, too, r=mak,a=sylvestre
Chris PetersonBug 952602 - #ifdef EARLY_BETA_OR_EARLIER to disable navigator.plugins[] cloaking before GA release. r=bsmedberg a=sylvestre
Nick AlexanderBug 983350 - Follow-up: Rev User-Agent string. r=rnewman, a=follow-up
Mats PalmgrenBug 988453 - Make nsHyphenationManager::Shutdown() resilient against being called more than once. r=roc a=sledru
Jim MathiesBug 978127 - Update various win8 specific australis customized ui tests to use new Services.metro.supported prop. r=gijs. a=tests
Jon CoppeardBug 986843 - Replace AutoHoldZone with AutoCompartmentRooter r=terrence a=sylvestre
Bobby HolleyBug 989183 - Check for nsXBLJSClass. r=bz, a=sledru
Ehsan AkhgariBug 965362 - Do not assume that all of the contents of the HTTP channel will be available by the time we decide to read it synchronously in devtools tests. r=robcee, a=test-only
Ehsan AkhgariBug 947531 - Focus the test window before starting the test. a=test-only
Martyn HaighBug 970209 - Surround update logic in about:apps with synth apk specific wrapper. r=wesj, a=sledru
Matt BrubeckBug 972844 - Add a Maybe Later link on about:feedback intro. r=mfinkle, a=sledru
Matt WoodrowBug 973264 - If we wrap gfxImageSurface data when creating a SourceSurface, hold a reference to the original surface so the data stays alive. r=Bas, a=sledru
Olli PettayBug 989210 - Consistently make cycle collector to deal with TextTrackManager's member variables. r=reyre, a=abillings
Jan de MooijBug 989586 - Fix Ion correctness Bug when inlining |new Array(x)|. r=bhackett, a=sledru
Robert StrongBug 982448 - some fxmetro pref's still being left behind with values without --enable-metro in the mozconfig. r=bbondy, a=sledru
L. David BaronBug 989130 - Back out changeset fe119a83b1f2 (Bug 942017) while leaving the corresponding test from changeset 3c63decb4e7e. r=jfkthame approval-mozilla-beta=sylvestre
Luke WagnerBug 983448 - Fix masm.convertUInt32ToFloat32 on x86. r=bbouvier, a=sledru
Mike HommeyBug 984447 - Properly handle forks in mozjemalloc after Bug 694896. r=smichaud, a=sledru
Ehsan AkhgariBug 919208 - Rewrite test_bug668513.html to run in its own window so that it won't be able to navigate the test runner frame back. r=bzbarsky, a=test-only
Anthony LamBug 970213 - Replace icon with custom design. r=wesj, a=sledru
Cameron McCormackBug 989965 - Resolve style for pseudo-elements correctly when style rules that have user action pseudo-classes on them are present. r=bzbarsky, a=sledru
Myk MelezBug 968129 - Load initial tab in WebappImpl:loadStartupTab. r=mfinkle, a=sledru
Ehsan AkhgariBug 990202 - Move the test page to a new window to prevent it from navigating the test runner frame back. r=bzbarsky, a=test-only
Randy LinBug 912627 - Remove spurious assertion. r=cpearce, a=sledru
Ryan VanderMeulenBacked out changeset cd8fed951743 (Bug 982448) for Windows mochitest-bc perma-fail.

r= means reviewed by
a= means uplift approved by

Previous changelogs:

Changes Firefox 29 beta3 to beta4

Avril 2nd, 2014

Firefox 29 beta 4 Desktop has just been released. In term of numbers (changeset or diff), this release is similar to the beta 3.
That won't be a surprise but most of the changes in this beta have been related to Australis, Sync and the UITour.

  • 46 changesets
  • 120 files changed
  • 2313 insertions
  • 489 deletions
Nick AlexanderBug 983350 - Include User-Agent header for FxAccount and TokenServer requests. r=rnewman, a=sylvestre
Olli PettayBug 987140 - Return width/height from the most recent image request. r=bz, a=sledru
Mihai SucanBug 950430 - Potential fix for intermittent browser_webconsole_chrome.js | Test timed out. a=test-only
Matthew NoorenbergheBug 885139 - Notify consumers about LWT optimization and listen for it in LightweightThemeListener. r=jaws a=Sylvestre
Matthew NoorenbergheBug 988144 - UITour: Highlight effects don't occur if a highlight is moved to a different target with the same effect. r=Unfocused a=Sylvestre
Tim NguyenBug 983801 - Remove border radius from bookmarks panel submenus on Windows 8 r=mdeboer a=sylvestre
Mike de BoerBug 987443: [Australis] fix zoom button label rounding. r=Gijs a=sylvestre
Gijs Kruitbosch[Australis] Bug 987177 - invalidate wrapper's node reference, r=jaws, a=sylvestre
Gijs Kruitbosch[Australis] Bug 987177 - make destroyWidget clear caches for XUL wrappers, r=jaws, a=sylvestre
Brandon ChengBug 893661 - (Australis) Back button and toolbar slightly smaller than design spec; r=gijs,jaws,a=sylvestre
Mike de BoerBug 985416: update visual appearance of dropmarker open state. r=Gijs, a=sylvestre
Jason SmithBug 985274 - Ensure generated callback function handles string objects. r=drno, a=test-only
Ryan VanderMeulenBug 909305 - Replace mozilla-banner.gif with a plain blue image in 163504-2*.html since we aren't trying to test individual pixel differences in resized image painting there. r=tn, a=test-only
Ryan VanderMeulenBug 919482 - Replace mozilla-banner.gif with a plain blue image in 163504-1*.html since we aren't trying to test individual pixel differences in resized image painting there. r=tn, a=test-only
Geoff BrownBug 915449 - Get EditText view instead of using Solo.getEditText. r=mcomella, a=test-only
Rick EyreBug 987076 - Construct HTMLMediaElement::mTextTrackManager lazily. r=roc, a=sledru
James HugmanBug 958709 - Catch the intent from the synthesized APK to kill the process. r=mfinkle, r=mhaigh, a=sledru
Richard NewmanBug 987294 - Unsafe access to mTabsChangedListeners in Tabs. r=bnicholson, a=sylvestre
Richard NewmanBug 984723 - Rework intervals and scheduling for Android Sync. r=nalexander, a=sylvestre
Mark CapellaBug 978731 - Cursor position jumps around, dragging handles moves text. r=wesj, a=sledru
Myk MelezBug 982557 - Migrate old prefs and set apkPackageName after updating app via APK. r=mfinkle, a=sledru
Mark HammondBug 988051 - Lazy-load FxAccountsClient module. r=rnewman, a=sledru
Michael ComellaBug 957894 - Update account pickling code for Firefox Accounts. r=nalexander, a=sledru
Boris ZbarskyBug 987003 - Be more careful sandboxing javascript: URLs. r=bholley, a=sledru
Randell JesupBug 986762 - Don't release DataChannelConnection on transient thread on readblob failure. r=smaug, a=sledru
Ryan VanderMeulenBacked out changeset efb3bb0642a0 (Bug 986762) for bustage.
Monica ChewBug 989232: Fix failure in testSecurity/testSafeBrowsingNotificationBar.js (r=gcp,a=sledru)
Brian R. BondyBug 981166 - Turn off Metro Firefox and cleanup DEH registration. r=rstrong, jimm. a=sledru
Brian R. BondyBug 988853 - Disable Metro builds on secondary configs. r=jimm. a=lsblakk
Richard NewmanBug 965811 - Support Firefox Account-based Sync in SendTabActivity. r=nalexander, a=lsblakk
Matthew NoorenbergheBug 941862 - UITour: Support a callback to notify when the menu panel opens while the menu button is an info panel target. r=Unfocused a=Sylvestre
Matthew NoorenbergheBug 988305 - UITour: getTarget should catch exceptions from a target's query function. r=Unfocused a=Sylvestre
Gijs KruitboschBug 985958 - fix CSS rules to make :active style work, r=mconley, a=sylvestre
Brian R. BondyBug 961676. r=rstrong. a=abillings
Mike de BoerBug 987461: prevent bookmark menu button dropmarker icon to stretch when placed in certain toolbars. r=Gijs, a=sylvestre
Mike de BoerBug 957151: fix styling of primary toolbar buttons on the bookmarks toolbar on Linux. r=Gijs, a=sylvestre
Mike ConleyBug 986920 - New tab button has equal z-index to non-selected tabs in Windows Classic mode. r=Gijs, a=sylvestre
Matthew NoorenbergheBug 979747 - Inherit text color on toolbars above the titlebar on Windows Classic. f=Gijs r=mikedeboer a=Sylvestre
Matthew NoorenbergheBug 879921 - Use the "tabbable" class to make the new tab page's close button tabbable. r=Gijs a=Sylvestre
Matthew NoorenbergheBug 879921 - Replace GTK close icons on Linux with our own except for on menus and dialog buttons. r=Gijs a=Sylvestre
Jared WeinBug 989133 - Add a soft hyphen to the character encoding label for en-US to avoid auto-hyphenation. r=MattN, a=sylvestre
Jared WeinBug 962884 - Offer opt-out from auto-hyphenation for labels in the menu panel. r=Gijs a=lsblakk
Jared WeinBug 940393 - Win8: Text color on inactive tabs makes text very hard to read. r=gijs, a=sylvestre
Gijs KruitboschBug 989009 - should theme live bookmark submenu items correctly, r=mak, a=sylvestre

r= means reviewed by
a= means uplift approved by

Previous changelogs:

Changes Firefox 29 beta2 to beta3

Mars 31st, 2014

In order to improve the feedback and the beta releases of Firefox, we are going to start publishing some information on beta releases.
For this, we are using the mercurial repository and using these two tags/revisions: --rev "ancestor(FIREFOX_29_0b2_RELEASE,FIREFOX_29_0b3_RELEASE)::FIREFOX_29_0b3_RELEASE" (See bsmedberg's blog post for more information on this syntax).

We are ignoring the commit from the ffxbld robot.

Firefox 29 beta 3 release(compared to Firefox 29 beta 2)
Here are some numbers:

  • 49 changesets
  • 112 files changed
  • 2174 insertions
  • 423 deletions

List of changes:
Philipp Sackl: Bug 979938 - Delay the display of the tab close button to avoid visual noise. r=Dao, a=sylvestre
Masayuki Nakano: Bug 981963 Ignore following char message if its wParam is 0 r=jimm, a=sledru
JW Wang: Bug 907162 - Fix MediaDecoderStateMachine might dispatch MediaDecoder::PlaybackEnded more than once and trigger multiple 'ended' events in HTMLMediaElement. r=cpearce, a=sledru
JW Wang: Bug 934794 - Fix failing to update stream blocking status when endBlockingDecisions == mStateComputedTime. r=roc, a=sledru
Olli Pettay: Bug 985988 = Event handlers should update preventDefault flag similar way to event.preventDefault(). r=masayuki, a=sledru
Brandon Benvie: Bug 970172 - Prevent VariablesView Variables from handling clicks while editing. r=vporof, a=sledru
Brian Nicholson: Bug 962103 - Make progress bar overlap content. r=lucasr, a=sledru
Brian Nicholson: Bug 962103 - Fix progress bar visibility on pre-Honeycomb devices. r=lucasr, a=sledru
John Schoenick: Bug 985859 - navigator.mimeTypes access should be case-insensitive. r=bsmedberg, a=sledru
Sebastian Hengst: Bug 982615 - Sync panel is not entirely displayed in localized builds. r=mak, a=gavin
Bobby Holley: Bug 986542 - Don't categorically disable script for detached docshells. r=bz, a=sledru
Gavin Sharp: Bug 955950 - Add pref to disable "reset Firefox" nag. r=MattN, a=sledru
Ryan VanderMeulen: Bug 985859 - Adding missing include to fix bustage. a=bustage
Shane Caraveo: Bug 915835 fix leak in socialmarks event listeners, r=markh, a=lsblakk
Chris Karlof: Bug 983256 - Change the client generated expiration time in FxA assertions to be 'forever'. r=jedp, a=lsblakk
Shane Caraveo: Bug 984628 fix social button states, r=markh, a=sylvestre
Nathan Froyd: Bug 942411 - Set the src of the iframe after adding it to the document. a=test-only
Phil Ringnalda: Bug 863658 - Replace mozilla-banner.gif with a plain blue image in 359903-2.html since we aren't trying to test individual pixel differences in resized image painting there. r=bz, a=test-only
Ryan VanderMeulen: Bug 948389 - Replace mozilla-banner.gif with a plain blue image in 405577-1.html since we aren't trying to test individual pixel differences in resized image painting there. r=roc, a=test-only
Brian Grinstead: Bug 962931 - Request longer timeout for browser_webconsole_split.js. r=msucan, a=test-only
Brian R. Bondy: Bug 981166 - Turn off Metro Firefox and cleanup DEH registration. r=rstrong, jimm. a=sylvestre
Nicholas Hurley: Bug 978759 - Fix shutdown crash in seer. r=mcmanus, a=sledru
Margaret Leibovic: Bug 943262 - Use CharsetMenu.jsm instead of for Character Encoding menu items. r=bnicholson, a=sledru
Sid Stamm: Bug 835357 - Fix telemetry probes for DNT so they accumulate before the pings are sent. r=mcmanus, a=sledru
Ryan VanderMeulen: Backed out the requestCompleteLog part of Bug 942411 because it wasn't needed for the fix anyway. a=bustage
Brian Smith :: Return the correct error message when no potential issuers are found during path bulding in insanity::pkix, r=keeler a=sylvestre
Brian Smith: Bug 978120, Part 1: Make nsIX509Cert.setCerttrust, and nsIX509CertDB.addCert, and nsIX509CertDB2.addCertFromBase64 work on Android and B2G, r=keeler a=sylvestre
Brian Smith :: part 2: Enable more PSM xpcshell tests on Android and B2G, r=keeler a=testonly
Margaret Leibovic: Bug 982181 - Hide home banner after it is animated off screen, to avoid intercepting click events on pre-honeycomb devices. r=lucasr a=sledru
Ryan VanderMeulen: Backed out changesets d3352d36dbdf and e74b6a1da573 (Bug 978120) and changeset 816c209eaa71 (Bug 978528) for Android xpcshell failures.
Monica Chew :: Force url classifier clients to specify which tables to lookup, add a pref to skip hash completion checks (r=gcp,ba=sledru)
Matthew Noorenberghe: Bug 985786 - [10.6] Make the button to leave fullscreen match the styles of other toolbarbuttons and fix its missing image. r=mconley a=Sylvestre
Marco Bonardo: Bug 983571 - browser.bookmarks.autoExportHTML = true no longer works. r=Yoric a=sylvestre
Marco Bonardo: Backout 450a302d1ffa (Bug 983571) due to xpcshell failures
Monica Chew :: Rename urlclassifier.download_block_table and urlclassifier.download_allow_table (r=gcp,a=sledru)
Marco Bonardo: Bug 983571 - browser.bookmarks.autoExportHTML = true no longer works. r=Yoric a=sylvestre
Masatoshi Kimura: Bug 986347 - Restore accidentaly removed HasBogusPopupsDropShadowOnMultiMonitor() call. r=jimm a=sylvestre
Mike de Boer :: restore sidebar splitter and header styles on Windows 8. r=jaws, a=sledru.
Mike Conley: Bug 984156 - Make subview footer menuseparators have a non-zero height to prevent bookmarks folder scrolling issues. r=mak, a=sledru.
Gijs Kruitbosch: Bug 986529 - invert tab close icons on windows classic, r=jaws, a=sledru.
Tim Nguyen: Bug 984979 - Fix back button :active state on Windows 8, r=gijs, a=sledru.
Gijs Kruitbosch: Bug 985815 - fix customtoolbars test so it doesn't break subsequent tests, r=jaws, a=sledru.
Gijs Kruitbosch: Bug 985815 - propagate collapsed state to other windows, add test. r=jaws, a=sledru.
Gijs Kruitbosch: Bug 987615 - fix layout of buttons which are too long in customize mode, r=jaws, a=sledru.
Steven MacLeod: Bug 967028 - Use a SHistoryListener to collect entries from history.pushState(). r=Yoric, a=sylvestre
Jonathan Watt: Bug 959128 - Fix transforms of clipPath content for clipPath being used within SVG-in-OpenType glyph. r=heycam, a=sylvestre
Brian R. Bondy: Backout 7971f738a6cd temporarily as a safety precaution. r=jimm, rsrong, me. a=me
Ehsan Akhgari: Backed out 2 changesets (Bug 957652) because Bug 957431 is being backed out, a=sylvestre
Ehsan Akhgari: Backed out 2 changesets (Bug 957431) because we decided we're keeping Attr.ownerElement in the end; a=sylvestre ba=me
r= means reviewed by
a= means uplift approved by

If you have any suggestion to improve this for the next report, don't hesitate!

Rebuild of Debian using Clang 3.4

Mars 21st, 2014

Using the AWS donation, David Suarez and myself have been able to rebuild the whole archive with Clang 3.4.
The rebuild has been done January 10th but, with my new job, I did not find the time to publish the result.
Releases after releases, the results are getting better and better.

Currently, 2193 packages in the archive are failing to build from source.
That is roughly the same number of build failures as with the precedent rebuild with Clang 3.3.
However, this is good news for two reasons:
* the number of new packages in Debian increased (18854 at time of the 3.3 release, 21204 for the 3.4)
* clang 3.4 has more checks and error detections.

I also started to update clang to make it closer to gcc. For example, I transformed wrong usage of -O (> 6) error to be treated as regular warning.

However, a critical bug has emerged during this release. When using -D_FORTIFY_SOURCE=2 (which is the case of many Debian packages), the binaries produced freeze (infinity loop in the ASM). This has been reported upstream as bug 16821 and concerns about 150 packages (including Firefox, gcc, LLVM, etc). Hopefully, this will be fixed in 3.5 (this is unlikely for 3.4.1).

About the new build failures, now, Clang triggers an error (or warning + -Werror) on:

* Wrong usage of the default argument (should be done in the definition)
16 occurrences

* Usage of C++11 feature without the appropriate argument
7 occurrences

* Unused static const declaration
5 occurrences

* Recursive template instantiation exceeded
4 occurrences

* Defitinion of a builtin function
3 occurrences

* Read-only variable is not assignable
2 occurrences

By the way, I proposed a Google Summer of Code Project to work faster on a support of Debian built by Clang. As requirements, I asked students to fix some bugs, they already did a great job.