From da446b3846684d6a55c16d0baad34cad36f5e71b Mon Sep 17 00:00:00 2001 From: Sean Budd Date: Tue, 31 Oct 2023 17:20:12 +1100 Subject: [PATCH] Update detours, ia2, sonic, w3c, wil (#15695) Summary of the issue: Update various dependences to their latest commit on master. Description of user facing changes Should be none Description of development approach Updated detours, ia2, sonic, w3c, wil to their latest master commit. Created a build to test. Chrome tests were temporarily disabled due to an issue with Chrome on appveyor. This appears to be resolved after several successful builds with tests enabled, so they have been re-enabled. Chrome tests were updated to support the latest w3c examples. --- .github/CODEOWNERS | 2 +- include/detours | 2 +- include/ia2 | 2 +- include/readme.md | 57 +++++++++++++++++++++++++ include/sonic | 2 +- include/w3c-aria-practices | 2 +- include/wil | 2 +- projectDocs/dev/createDevEnvironment.md | 13 +++--- tests/system/robot/chromeTests.py | 23 +++++----- tests/system/robot/chromeTests.robot | 2 +- user_docs/en/changes.t2t | 11 ++++- 11 files changed, 93 insertions(+), 25 deletions(-) create mode 100644 include/readme.md diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 563724e1e67..293117a3f5c 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -49,7 +49,7 @@ /projectDocs/community/ @nvaccess/userDocs /projectDocs/testing/ @nvaccess/userDocs @nvaccess/developers /projectDocs/issues/ @nvaccess/userDocs @nvaccess/developers -readme.md @nvaccess/userDocs @nvaccess/developers +/readme.md @nvaccess/userDocs @nvaccess/developers security.md @nvaccess/userDocs @nvaccess/developers CODE_OF_CONDUCT.md @nvaccess/userDocs @nvaccess/developers .github/CONTRIBUTING.md @nvaccess/userDocs @nvaccess/developers diff --git a/include/detours b/include/detours index 45a76a35998..4b8c659f549 160000 --- a/include/detours +++ b/include/detours @@ -1 +1 @@ -Subproject commit 45a76a359989aa0ce037440449976a777fd01e63 +Subproject commit 4b8c659f549b0ab21cf649377c7a84eb708f5e68 diff --git a/include/ia2 b/include/ia2 index cbc1f296317..3d8c7f0b833 160000 --- a/include/ia2 +++ b/include/ia2 @@ -1 +1 @@ -Subproject commit cbc1f296317809f841303aadfbd67e71337c1a55 +Subproject commit 3d8c7f0b833453f761ded6b12d8be431507bfe0b diff --git a/include/readme.md b/include/readme.md new file mode 100644 index 00000000000..627570f65bb --- /dev/null +++ b/include/readme.md @@ -0,0 +1,57 @@ +## Updating dependencies +Updates should be reflected in the [createDevEnvironment guide](../projectDocs/dev/createDevEnvironment.md) and the [change log](../user_docs/en/changes.t2t). + +### Detours +https://github.com/microsoft/Detours + +Fetch latest from master. +Test using [the steps here](../projectDocs/design/displayModel.md). +An example control is the file properties dialog from file explorer. + +### eSpeak +https://github.com/espeak-ng/espeak-ng + +[eSpeak guide](./espeak.md) + +### ia2 +https://github.com/LinuxA11y/IAccessible2 + +Fetch latest from master. + +### javaAccessBridge32 +[javaAccessBridge32-bin readme](https://github.com/nvaccess/javaAccessBridge32-bin) + +### liblouis +TODO + +### microsoft-ui-uiautomation +https://www.github.com/michaeldcurran/microsoft-ui-uiautomation/ + +We are stuck on our own fork. +The fork specifically adds support for connection bound objects to the high-level API, see PR microsoft/microsoft-ui-uiautomation#95. + +### nsis +[NSIS-build readme](https://github.com/nvaccess/NSIS-build) + +### nvda_dmp +TODO + +### nvda-cldr +[nvda-cldr readme](https://github.com/nvaccess/nvda-cldr) + +### sonic +https://github.com/waywardgeek/sonic + +Fetch latest from master. +Used to boost in rate eSpeak. + +### w3c-aria-practices +https://github.com/w3c/aria-practices + +Fetch latest from master. +Used in chrome system tests. + +### wil +https://github.com/microsoft/wil/ + +Fetch latest from master. diff --git a/include/sonic b/include/sonic index 1d7051354f3..8694c596378 160000 --- a/include/sonic +++ b/include/sonic @@ -1 +1 @@ -Subproject commit 1d7051354f32392a3b3cdb8a8bcfe56e6f8b744f +Subproject commit 8694c596378c24e340c09ff2cd47c065494233f1 diff --git a/include/w3c-aria-practices b/include/w3c-aria-practices index 79ad38e184a..9a5e55ccbeb 160000 --- a/include/w3c-aria-practices +++ b/include/w3c-aria-practices @@ -1 +1 @@ -Subproject commit 79ad38e184ab81ab1c1d0ea94c67b96fb41b0975 +Subproject commit 9a5e55ccbeb0f1bf92b6127c9865da8426d1c864 diff --git a/include/wil b/include/wil index 3234003fe96..5e9be7b2d2f 160000 --- a/include/wil +++ b/include/wil @@ -1 +1 @@ -Subproject commit 3234003fe96a02a9c1b686cf51f43ee5d3ec5c84 +Subproject commit 5e9be7b2d2fe3834a7107f430f7d4c0631f69833 diff --git a/projectDocs/dev/createDevEnvironment.md b/projectDocs/dev/createDevEnvironment.md index ecf3c633720..f8d7bbf7e1d 100644 --- a/projectDocs/dev/createDevEnvironment.md +++ b/projectDocs/dev/createDevEnvironment.md @@ -65,21 +65,22 @@ If you aren't sure, run `git submodule update` after every git pull, merge or ch For reference, the following run time dependencies are included in Git submodules: * [eSpeak NG](https://github.com/espeak-ng/espeak-ng), version 1.52-dev commit `ed9a7bcf` -* [Sonic](https://github.com/waywardgeek/sonic), commit 1d705135 -* [IAccessible2](https://wiki.linuxfoundation.org/accessibility/iaccessible2/start), commit cbc1f29631780 +* [Sonic](https://github.com/waywardgeek/sonic), commit `8694c596378c24e340c09ff2cd47c065494233f1` +* [IAccessible2](https://wiki.linuxfoundation.org/accessibility/iaccessible2/start), commit `3d8c7f0b833453f761ded6b12d8be431507bfe0b` * [liblouis](http://www.liblouis.io/), version 3.27.0 * [Unicode Common Locale Data Repository (CLDR)](http://cldr.unicode.org/), version 42.0 * NVDA images and sounds * [Adobe Acrobat accessibility interface, version XI](https://download.macromedia.com/pub/developer/acrobat/AcrobatAccess.zip) -* [Microsoft Detours](https://github.com/microsoft/Detours), commit 45a76a3 -* brlapi Python bindings, version 0.8 or later, distributed with [BRLTTY for Windows](https://brltty.app/download.html), version 6.1 +* [Microsoft Detours](https://github.com/microsoft/Detours), commit `4b8c659f549b0ab21cf649377c7a84eb708f5e68` +* brlapi Python bindings, version 0.8.5 or later, distributed with [BRLTTY for Windows](https://brltty.app/download.html), version 6.6 * lilli.dll, version 2.1.0.0 * [Python interface to FTDI driver/chip](http://fluidmotion.dyndns.org/zenphoto/index.php?p=news&title=Python-interface-to-FTDI-driver-chip) * [Nullsoft Install System](https://nsis.sourceforge.io), version 3.08 -* Java Access Bridge 32 bit, from Zulu Community OpenJDK build 13.0.1+10Zulu (13.28.11) +* [Java Access Bridge 32 bit, from Zulu Community OpenJDK build 13.0.1+10Zulu (13.28.11)](https://github.com/nvaccess/javaAccessBridge32-bin) +* [wil](https://github.com/microsoft/wil/) * [Microsoft UI Automation Remote Operations Library, forked from @microsoft by @michaeldcurran](https://www.github.com/michaeldcurran/microsoft-ui-uiautomation/) * Commit 224b22f3bf9e - * The fork specifically adds support for CallExtension / IsExtensionSupported to the high-level API, see pr microsoft/microsoft-ui-uiautomation#84. + * The fork specifically adds support for CallExtension / IsExtensionSupported to the high-level API, see pr microsoft/microsoft-ui-uiautomation#84 and #95. Additionally, the following build time dependencies are included in the miscDeps git submodule: diff --git a/tests/system/robot/chromeTests.py b/tests/system/robot/chromeTests.py index 16743da2f2d..7c1fdf49a2c 100644 --- a/tests/system/robot/chromeTests.py +++ b/tests/system/robot/chromeTests.py @@ -34,8 +34,12 @@ #: single space is used to separate semantics in braille output. BRAILLE_SEP = " " -ARIAExamplesDir = os.path.join( - _NvdaLib._locations.repoRoot, "include", "w3c-aria-practices", "examples" +ARIAPatternsDir = os.path.join( + _NvdaLib._locations.repoRoot, + "include", + "w3c-aria-practices", + "content", + "patterns", ) @@ -894,7 +898,7 @@ def test_ariaTreeGrid_browseMode(): """ Ensure that ARIA treegrids are accessible as a standard table in browse mode. """ - testFile = os.path.join(ARIAExamplesDir, "treegrid", "treegrid-1.html") + testFile = os.path.join(ARIAPatternsDir, "treegrid", "examples", "treegrid-1.html") _chrome.prepareChrome( f""" @@ -913,7 +917,7 @@ def test_ariaTreeGrid_browseMode(): actualSpeech = _chrome.getSpeechAfterKey("tab") _asserts.strings_match( actualSpeech, - "issue 790. link" + "Treegrid Pattern link" ) # Jump to the ARIA treegrid with the next table quicknav command. # The browse mode caret will be inside the table on the caption before the first row. @@ -991,7 +995,7 @@ def test_ariaCheckbox_browseMode(): """ Navigate to an unchecked checkbox in reading mode. """ - testFile = os.path.join(ARIAExamplesDir, "checkbox", "checkbox.html") + testFile = os.path.join(ARIAPatternsDir, "checkbox", "examples", "checkbox.html") _chrome.prepareChrome( f""" @@ -2234,7 +2238,7 @@ def test_i10890(): # Chrome sometimes exposes tables as clickable, sometimes not. # This test does not need to know, so disable reporting of clickables. spy.set_configValue(["documentFormatting", "reportClickable"], False) - testFile = os.path.join(ARIAExamplesDir, "grid", "datagrids.html") + testFile = os.path.join(ARIAPatternsDir, "grid", "examples", "data-grids.html") _chrome.prepareChrome( f""" @@ -2279,19 +2283,18 @@ def test_ARIASwitchRole(): """ Ensure that ARIA switch controls have an appropriate role and states in browse mode. """ - testFile = os.path.join(ARIAExamplesDir, "switch", "switch.html") + testFile = os.path.join(ARIAPatternsDir, "switch", "examples", "switch.html") _chrome.prepareChrome( f""" """ ) - # Jump to the first heading 2 in the iframe. + # Jump to the second heading 2 in the iframe. + _chrome.getSpeechAfterKey("2") actualSpeech = _chrome.getSpeechAfterKey("2") _asserts.strings_match( actualSpeech, SPEECH_SEP.join([ - "frame", - "main landmark", "Example", "heading level 2" ]), diff --git a/tests/system/robot/chromeTests.robot b/tests/system/robot/chromeTests.robot index 31241ffe447..1b6af0c4671 100644 --- a/tests/system/robot/chromeTests.robot +++ b/tests/system/robot/chromeTests.robot @@ -4,7 +4,7 @@ # For more details see: https://www.gnu.org/licenses/gpl-2.0.html *** Settings *** Documentation HTML test cases in Chrome -Force Tags NVDA smoke test browser chrome excluded_from_build +Force Tags NVDA smoke test browser chrome # for start & quit in Test Setup and Test Test Teardown Library NvdaLib.py diff --git a/user_docs/en/changes.t2t b/user_docs/en/changes.t2t index 304aee5da84..a271bc5b5e1 100644 --- a/user_docs/en/changes.t2t +++ b/user_docs/en/changes.t2t @@ -58,6 +58,13 @@ Add-ons will need to be re-tested and have their manifest updated. - The ``BrailleDisplayDriver`` base class now has ``numRows`` and ``numCols`` properties to provide information about multi line braille displays. Setting ``numCells`` is still supported for single line braille displays and ``numCells`` will return the total number of cells for multi line braille displays. (#15386) - Updated BrlAPI for BRLTTY to version 0.8.5, and its corresponding python module to a Python 3.11 compatible build. (#15652, @LeonarddeR) +- Updated ``include`` dependencies: + - detours to ``4b8c659f549b0ab21cf649377c7a84eb708f5e68``. (#15695) + - ia2 to ``3d8c7f0b833453f761ded6b12d8be431507bfe0b``. (#15695) + - sonic to ``8694c596378c24e340c09ff2cd47c065494233f1``. (#15695) + - w3c-aria-practices to ``9a5e55ccbeb0f1bf92b6127c9865da8426d1c864``. (#15695) + - wil to ``5e9be7b2d2fe3834a7107f430f7d4c0631f69833``. (#15695) + - - === API Breaking Changes === @@ -66,11 +73,11 @@ Please open a GitHub issue if your Add-on has an issue with updating to the new - NVDA is now built with Python 3.11. (#12064) - Updated pip dependencies: - - configobj to 5.1.0dev commit e2ba4457. (#15544) + - configobj to 5.1.0dev commit ``e2ba4457c4651fa54f8d59d8dcdd3da950e956b8``. (#15544) - Comtypes to 1.2.0. (#15513, @codeofdusk) - fast_diff_match_patch to 2.0.1. (#15514, @codeofdusk) - Flake8 to 4.0.1. (#15636, @lukaszgo1) - - py2exe to 0.13.0.1dev commit 4e7b2b2c60face592e67cb1bc935172a20fa371d. (#15544) + - py2exe to 0.13.0.1dev commit ``4e7b2b2c60face592e67cb1bc935172a20fa371d``. (#15544) - robotframework to 6.1.1. (#15544) - SCons to 4.5.2. (#15529) - sphinx to 7.2.6. (#15544)