Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cherry picked PRs from master to branch_5_0_x #9624

Closed
wants to merge 47 commits into from

Conversation

@level420
Copy link
Member

commented Feb 5, 2019

This started with a simple attempt to fix #9629, but escalated into a mass cherry-picking PR from master, trying to succeed the testrunner runs on chrome and firefox.

cajus and others added 2 commits May 1, 2016
Merge pull request #216 from petitben/master
Fix BZ#9213 - Table select all rows w/ Ctrl+A
Update Keyboard.js (#9404)
FireFox fixed this behavior from build 29: https://bugzilla.mozilla.org/show_bug.cgi?id=935876.
So now preventing the default action while processing keydown doesn't fire keypress in FireFox > 29.
Merge pull request #9565 from schnepe2/issue_9323
6 approvals, 12 days over. merged. Thanks @schnepe2!
Conflicts:
	framework/source/class/qx/event/handler/Keyboard.js

@level420 level420 changed the title cherry picked PRs #216 and #9404 to fix #9623 cherry picked PRs #216, #9404 and #9565 to fix #9623 Feb 5, 2019

peuter and others added 7 commits Apr 20, 2016
Add maxLengthValues array entry for webkit
to come par with the array in qx.bom.element.Attribute when faking property defaults
Fix test qx.test.bom.Attribute for safari/webkit
Current Safari does not report the maximum value for `maxlength` for input elements anymore which was til some point 524288. Instead it reports, in compliance with W3C [1], the value of -1 as a default for the case that there is no default value for the attribute. The current W3C tests [2] also expect this behaviour.

See
[1] https://html.spec.whatwg.org/multipage/common-dom-interfaces.html#limited-to-only-non-negative-numbers
[2] http://w3c-test.org/html/semantics/forms/the-input-element/maxlength.html
Conflicts:
	framework/source/class/qx/test/bom/Attribute.js
Fixed dimensions (width and height) of AbstractScrollArea (issue 9351) (
#9355)

* [Improved] moved practical logic into constructor so it's theme independent

* [Changed] default dimensions of abstract scroll area

* Partly revert jsdoc change and corrected initial scroll area width

I'm trying this changes because I'm to curiuos to see if the scroll related tests stop failing.

* [Fixed] default dimensions of ui.form.List are missing

* [Improved] virtual.core.Scroller and form.List dimensions
@level420

This comment has been minimized.

Copy link
Member Author

commented Feb 7, 2019

Pushed some more cherry-picked PRs with the intention to fix the tests. Here locally down from about 100 failing tests to 36. It's a hard job to identify all the those PRs which fixed the tests.

BTW: @oetiker ported the travis tests back on 12. Aug 2018: #9125 to branch_5_0_x where the travis job promptly failed: https://travis-ci.org/qooxdoo/qooxdoo/builds/151754600 for firefox with 86 failed tests and chrome with 95 failed tests.

At some point merging was blocked per rule when the travis check failed, thus not allowing us to merge anymore in branch_5_0_x

@level420

This comment has been minimized.

Copy link
Member Author

commented Feb 7, 2019

Now we have 36 tests failing for firefox and 31 tests failing for chrome.

level420 and others added 11 commits Mar 4, 2016
Eliminate discrepancy of the locale property
qx.locale.Manager defines property locale nullable : true, but
qx.util.format.NumberFormat does not, but the properties get bound by
single value binding, which causes null value exceptions on
qx.locale.Manager.getInstance().resetLocale().

This PR changes the locale property of qx.locale.Manager being
initialized with the current client locale, or if not available with the
default locale "C" which is now availavle as a variable via
qx.core.Environment.get("locale.default")
Merge pull request #168 from level420/level420-disposed-layout-item-d…
…ont-render

[Bug #9252] Do not render layout items if they are already disposed
Merge pull request #198 from peuter/fix/196
Introduce blacklist in event manager...
Skip the whole event loop when a listener has been blacklisted otherw…
…ise the context disposal warning is been shown for blacklisted listeners. (#9198)
Merge pull request #208 from cajus/fix-chrome-test
Disable failing tests which work for themselves in chrome.
Conflicts:
	framework/source/class/qx/test/bom/element/AnimationJs.js
Make test scale configurable
Conflicts:
	.travis/test
	framework/source/class/qx/dev/unit/AsyncWrapper.js
Merge pull request #9514 from level420/fix-travis-run-parameters
5 days, 5 approvals. merged.
Thanks, @level420!
Conflicts:
	.travis/test
	framework/config.json
Merge pull request #192 from level420/level420-locale-init
Call the applyer for the locale property in the constructor of qx.locale.Manager
add
"asset-let" :
 {
    "qx.icontheme" : ["Tango"]
  }

Conflicts:
	framework/config.json
fix broken qx.test.data.ListReverse test
Conflicts:
	framework/source/class/qx/data/controller/List.js
level420 added 3 commits Mar 4, 2016
Fixing qx.util.format.DateFormat test on locale reset
I suspect that this test did not work for long time, as resetting the
locale allways lead to a null value exception in the bound DateFormat
instance (var df).

Now we create a DateFormat instance which uses the initial locale and
use it to complare against the reset bound DateFormat.
Fix qx.test.uti.DateFormat.testChangingLocales
The test assumes that on start the locale managers locale property is at
init state, but this is not shure if we had run other tests before which
also set a locale. So just reset the locale manager before starting.
Skip qx.test.util.DateForma.testInvalidDate for edge
Edge parses even invalid dates and calculates  from the "overflowing" days and months the next "logical" date. In the test the invalid date "2011-11-32" is parsed as "2011-12-02".
level420 and others added 17 commits Aug 7, 2017
allow qx.test.io.remote.transport.XmlHttp:testSetHeader to be run und…
…er php-fpm

polyfill for getallheaders from https://github.com/ralouphie/getallheaders
published under the MIT license
needed if the test is run under php-fpm
See https://bugs.php.net/bug.php?id=62596
Detect not being on Windows 10
to be able to skip specific tests
Disable test in qx.test.io.request.XhrWithRemote for win10
"test: progress phases when abort after loading" breaks Windows 10 for edge, ie, chrome and firefox
Merge pull request #8998 from level420/level420-fix-qx.test.bom.Locat…
…ion-empty-body

Fix qx.test.bom.Location tests in non headless firefox and chrome
Support for cooperative concurrency (#9214)
* Added support for cooperative concurrency

This commit implements a W3C draft listed under
https://www.w3.org/TR/requestidlecallback. While most
browsers do not implement it yet, it is a helpful
pattern for background tasks, queue processing, etc.

* Added cancel method

* Adjusted to meet suggestions by @derrell

* Restore sandbox directly after using the env
use the correct start time for animation sequences (#9226)
* use the correct start time for animation sequences

* adjust check
locale cleanup + do not add translations in the constructor as it is …
…called long before the tests in this class are executed and may be overwritten by other tests
optimises qx.event.Idle so that it only creates a timer if a listener
has been attached; this is useful for profiling because qx.event.Idle
will otherwise pollute the timing data
@cboulanger

This comment has been minimized.

Copy link
Contributor

commented Jun 3, 2019

After @level420 has put so much work into this, we should really do something with it. Why don't we create a 5.0.4-beta release and ask people to test it?

@cboulanger

This comment has been minimized.

Copy link
Contributor

commented Jun 14, 2019

@level420 Dietrich, do you have some updates on this?

@level420

This comment has been minimized.

Copy link
Member Author

commented Sep 11, 2019

Closing this PR as I think that by trying to fix the testrunner to succeed, I've cherry picked more PRs than needed to only backport some fixes into the 5_0_x branch.

My strong opinion is that we don't have a chance to fix the tests in the 5_0_x branch without fixing the framework, which means that we will end having everything in 5_0_x what we also have in 6_0_x.

One main big obstacle was, that fixes were committed along with changes for the testing framework which lead to the cherry picks not being applicable as a is, but had to be manually unthreaded into the bug fix and the test framework enhancements.

I've learned a lot about git, cherry picking, github commit hashes and so forth, but I fear my efforts were waste of time in relation to backporting bug fixes to branch_5_0_x.

@level420 level420 closed this Sep 11, 2019

@cboulanger

This comment has been minimized.

Copy link
Contributor

commented Sep 11, 2019

@level420 Thanks for trying, anyways! We need to move people to v6, then, which shouldn't be too much of a problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
8 participants
You can’t perform that action at this time.