Qt6: Failed to install Qt6 Android on Linux Host

Version: aqtinstall-0.10.1 installed via pip
After running aqt install 6.0.0 linux android android_armv7 it says:
(aqt_test) tmp/aqt_test > aqt install 6.0.0 linux android android_armv7
2021-01-10 16:06:17,227 - aqt - INFO - aqtinstall(aqt) v0.10.1 on Python 3.9.1 [CPython GCC 10.2.0]
2021-01-10 16:06:18,823 - aqt - ERROR - Specified packages are not found while parsing XML of package information!
2021-01-10 16:06:18,823 - aqt - DEBUG - <Updates>
 <ApplicationName>{AnyApplication}</ApplicationName>
 <ApplicationVersion>1.0.0</ApplicationVersion>
 <Checksum>true</Checksum>
 <PackageUpdate>
  <Name>qt.qt6.600.android</Name>
  <DisplayName>Android</DisplayName>
  <Description>Qt 6.0.0 Prebuilt Components for Android armv7, arm64-v8a, x86 and x86_64</Description>
  <Version>6.0.0-0-202012071150</Version>
  <ReleaseDate>2020-12-07</ReleaseDate>
  <Dependencies>qt.tools.qtcreator, qt.qt6.600.doc, qt.qt6.600.examples, qt.qt6.600.android_arm64_v8a, qt.qt6.600.android_armv7, qt.qt6.600.android_x86, qt.qt6.600.android_x86_64</Dependencies>
  <AutoDependOn/>
  <Default>false</Default>
  <Script>installscript.qs</Script>
  <SortingPriority>270</SortingPriority>
  <DownloadableArchives/>
  <UpdateFile UncompressedSize="0" CompressedSize="0" OS="Any"/>
  <SHA1>16dc9c6fb99c87d673c4f659a922f7e4202e4fa2</SHA1>
 </PackageUpdate>
 <SHA1>16dc9c6fb99c87d673c4f659a922f7e4202e4fa2</SHA1>
 <MetadataName>2020-12-07-1150_meta.7z</MetadataName>
</Updates>

Traceback (most recent call last):
  File "/tmp/aqt_test/bin/aqt", line 8, in <module>
    sys.exit(main())
  File "/tmp/aqt_test/lib/python3.9/site-packages/aqt/__init__.py", line 38, in main
    return cli.run()
  File "/tmp/aqt_test/lib/python3.9/site-packages/aqt/installer.py", line 373, in run
    return args.func(args)
  File "/tmp/aqt_test/lib/python3.9/site-packages/aqt/installer.py", line 186, in run_install
    finisher(target_config, base_dir, self.logger)
  File "/tmp/aqt_test/lib/python3.9/site-packages/aqt/installer.py", line 460, in finisher
    raise e
  File "/tmp/aqt_test/lib/python3.9/site-packages/aqt/installer.py", line 445, in finisher
    with open(os.path.join(base_dir, qt_version, arch_dir, 'bin', 'qt.conf'), 'w') as f:
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/aqt_test/6.0.0/android_armv7/bin/qt.conf'

Following the code, it tries to search DownloadableArchives however in this XML it's empty. However there's a new key Dependencies which could help.

Work around in #200 and it has already merged into master.

Work around in #200 and it has already merged into master.

Fix is out as v1.0.0b2

Fix is out as v1.0.0b2

The installer gives installed/6.0.1/android_x86_64/bin/qmake: line 7: /home/qt/work/install/bin/qmake: No such file or directory
The Qt android installed from QtOnlineInstaller has this pointed to a gcc_64/bin/qmake, so it's possible that desktop version is an indirect dependency of android version.

You can install desktop version by yourself before installing android version.

As you may check here: https://github.com/Qv2ray/Qv2ray/runs/1853603668?check_suite_focus=true#step:4:359
/home/runner/work/Qv2ray/Qt/6.0.1/android_armv7/bin/qmake: 7: /home/runner/work/Qv2ray/Qt/6.0.1/android_armv7/bin/qmake: /home/qt/work/install/bin/qmake: not found
It's referencing an external address: /home/qt/work/install/bin/qmake where should be replaced by the real desktop version of qt

There seems be necessary to patch many files for Qt6, because  meta package script for android such as follows.
aqtinstall does not support qscript scripting engine, so users should handle them by hand by themselves
except for common things which aqt does, such as Qt6Core binary patching, qmake binary patching, and license setting.
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the release tools of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:GPL-EXCEPT$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/

// constructor
function Component()
{
    // Add dynamic dependency for mingw TC for Android packages on Windows.
    if (installer.value("os") == "win") {
        var mingw_tc_component = "qt.tools.win64_mingw810";
        component.addDependency(mingw_tc_component);
    }
    // Determine if this is a online snapshot build
    var snapshotBuild = false;
    var isSnapshotStr = "true";
    if (['true', 'yes', '1'].indexOf(isSnapshotStr) >= 0)
        snapshotBuild = true;

    // In snapshot builds add automatic dependency for preview component,
    // and in release builds add automatic dependency for common 'android' component,
    var dependencyStr = "qt.qt6.61.android";
    if (snapshotBuild)
        dependencyStr = "preview.qt.qt6.61.android";

    var autoDependency = component.value("AutoDependOn");
    if (autoDependency) {
        component.setValue("AutoDependOn", autoDependency+","+dependencyStr)
    }
    else {
        component.setValue("AutoDependOn", dependencyStr)
    }

    var hostDependencyStr = "";
    var hostDependency = component.value("Dependencies");
    if (hostDependency) {
        if (installer.value("os") == "x11") {
            hostDependencyStr = "qt.qt6.610.gcc_64"
        }
        if (installer.value("os") == "mac") {
            hostDependencyStr = "qt.qt6.610.clang_64"
        }
        if (installer.value("os") == "win") {
            hostDependencyStr = "qt.qt6.610.win64_mingw81"
        }
    component.setValue("Dependencies", hostDependencyStr)
    }
}

Component.prototype.createOperations = function()
{
    component.createOperations();

    var qtPath = "@TargetDir@" + "/6.1.0/android_armv7";
    var qmakeBinary = "";
    var cmakeBinary = "";
    var platform = "";
    var qmakeScript = "";
    var qtCMakeScript = "";
    var targetQtConf = "";
    var targetQtConf_documentation = "Documentation=../../Docs/Qt-6.1.0";
    var targetQtConf_examples = "Examples=../../Examples/Qt-6.1.0";
    var originalQmakePath = "";
    var newQmakePath = "";
    var originalSetCMakePath ="";
    var newSetCMakePath = "";
    var originalQtCMakeStandaloneTestPath = "/Users/qt/work/install/target";
    var newQtCMakeStandaloneTestPath = "";
    var originalHostPrefix = "HostPrefix=../../";
    var newHostPrefix = "";
    var originalHostData = "HostData=target";
    var newHostData = "";
    var androidQmakeBinary = "";
    var qtToolchainCmake = "";
    var qtBuildInternalsExtraCmake = "";
    var originalQtHostPath = "/Users/qt/work/install";
    var newQtHostPath = "";
    var originalQtHostPathCmakeDir = "";
    var newQtHostPathCmakeDir = "";
    var originalQtHostTargetPath = "/Users/qt/work/install/target";
    var newQtHostTargetPath = "";

    if (installer.value("os") == "x11") {
        // Host qmake installed via dependencies
        qmakeBinary = "@TargetDir@" + "/6.1.0/gcc_64/bin/qmake";
        // CMake is installed under Tools by default for all Qt installations
        cmakeBinary = "@TargetDir@" + "/Tools/CMake/bin/cmake";
        platform = "linux";

        qmakeScript = qtPath + "/bin/qmake";
        qtCMakeScript = qtPath + "/bin/qt-cmake";
        qtCMakePrivateScript = qtPath + "/bin/qt-cmake-private";
        qtCMakeStandaloneTestScript = qtPath + "/bin/qt-cmake-standalone-test";
        targetQtConf = qtPath + "/bin/target_qt.conf";
        qtToolchainCmake = qtPath + "/lib/cmake/Qt6/qt.toolchain.cmake";
        qtBuildInternalsExtraCmake = qtPath + "/lib/cmake/Qt6BuildInternals/QtBuildInternalsExtra.cmake";

        // Initialize variables used for patching host qmake location
        // Host is qmake installed via dependencies
        originalQmakePath = "/home/qt/work/install/bin/qmake";
        newQmakePath = "@TargetDir@" + "/6.1.0/gcc_64/bin/qmake";

        // Initialize variables used for patching CMake to under Tools
        originalSetCMakePath = "/opt/cmake-3.18.3/bin/cmake";
        newSetCMakePath = cmakeBinary;

        // Initialize variable with path to bin/qt-cmake-private(.bat)
        originalQtCMakeStandaloneTestPath = "/home/qt/work/install/target";
        newQtCMakeStandaloneTestPath = qtPath;

        // Set new patched values for target_qt.confs
        newHostPrefix = "HostPrefix=../../gcc_64";
        newHostData = "HostData=../android_armv7";

        // Set new patched values for qt.toolchain.cmake
        // __qt_initial_qt_host_path
        originalQtHostPath = "/home/qt/work/install";
        newQtHostPath = "@TargetDir@" + "/6.1.0/gcc_64";
        //__qt_initial_qt_host_path_cmake_dir
        originalQtHostPathCmakeDir = "/home/qt/work/install/lib/cmake";
        newQtHostPathCmakeDir = "@TargetDir@" + "/6.1.0/gcc_64/lib/cmake";

        // Set new patched values for QtBuildInternalsExtra.cmake
        originalQtHostTargetPath = "/home/qt/work/install/target";
        newQtHostTargetPath = qtPath;
    }

    if (installer.value("os") == "mac") {
        // Host qmake installed via dependencies
        qmakeBinary = "@TargetDir@" + "/6.1.0/clang_64/bin/qmake";
        // CMake is installed under Tools by default for all Qt installations
        cmakeBinary = "@TargetDir@" + "/Tools/CMake/bin/cmake";
        platform = "mac";

        //qmakeScript = "@TargetDir@" + "/6.1.0/armv7/bin/qmake.bat";
        qmakeScript = qtPath + "/bin/qmake";
        qtCMakeScript = qtPath + "/bin/qt-cmake";
        qtCMakePrivateScript = qtPath + "/bin/qt-cmake-private";
        qtCMakeStandaloneTestScript = qtPath + "/bin/qt-cmake-standalone-test";
        targetQtConf = qtPath + "/bin/target_qt.conf";
        qtToolchainCmake = qtPath + "/lib/cmake/Qt6/qt.toolchain.cmake";
        qtBuildInternalsExtraCmake = qtPath + "/lib/cmake/Qt6BuildInternals/QtBuildInternalsExtra.cmake";

        // Initialize variables used for patching host qmake location
        // Host is qmake installed via dependencies
        originalQmakePath = "/Users/qt/work/install/bin/qmake";
        newQmakePath = "@TargetDir@" + "/6.1.0/clang_64/bin/qmake";

        // Initialize variables used for patching CMake to under Tools
        originalSetCMakePath = "/Applications/CMake.app/Contents/bin/cmake";
        newSetCMakePath = cmakeBinary;

        // Initialize variable with path to bin/qt-cmake-private(.bat)
        newQtCMakeStandaloneTestPath = qtPath;

        // Set new patched values for target_qt.confs
        newHostPrefix = "HostPrefix=../../clang_64";
        newHostData = "HostData=../android_armv7";

        // Set new patched values for qt.toolchain.cmake
        // __qt_initial_qt_host_path
        newQtHostPath = "@TargetDir@" + "/6.1.0/clang_64";
        //__qt_initial_qt_host_path_cmake_dir
        originalQtHostPathCmakeDir = "/Users/qt/work/install/lib/cmake";
        newQtHostPathCmakeDir = "@TargetDir@" + "/6.1.0/clang_64/lib/cmake";

        // Set new patched values for QtBuildInternalsExtra.cmake
        newQtHostTargetPath = qtPath;
    }

    if (installer.value("os") == "win") {
        // Host qmake installed via dependencies
        qmakeBinary = "@TargetDir@" + "/6.1.0/mingw81_64/bin/qmake.exe";
        // CMake is installed under Tools by default for all Qt installations
        cmakeBinary = "@TargetDir@" + "/Tools/CMake_64/bin/cmake.exe";
        platform = "windows";

        //qmakeScript = "@TargetDir@" + "/6.1.0/armv7/bin/qmake.bat";
        qmakeScript = qtPath + "\\bin\\qmake.bat";
        qtCMakeScript = qtPath + "\\bin\\qt-cmake.bat";
        qtCMakePrivateScript = qtPath + "\\bin\\qt-cmake-private.bat";
        qtCMakeStandaloneTestScript = qtPath + "\\bin\\qt-cmake-standalone-test.bat";
        targetQtConf = qtPath + "\\bin\\target_qt.conf";
        qtToolchainCmake = qtPath + "\\lib\\cmake\\Qt6\\qt.toolchain.cmake";
        qtBuildInternalsExtraCmake = qtPath + "\\lib\\cmake\\Qt6BuildInternals\\QtBuildInternalsExtra.cmake";

        // Initialize variables used for patching host qmake location
        // Host is qmake installed via dependencies
        originalQmakePath = "/Users/qt/work/install/bin\\qmake.exe";
        newQmakePath = "@TargetDir@" + "\\6.1.0\\mingw81_64\\bin\\qmake.exe";

        // Initialize variables used for patching CMake to under Tools
        originalSetCMakePath = "C:/CMake/bin/cmake.exe";
        newSetCMakePath = cmakeBinary.replace(/\\/g, "/");

        // Initialize variable with path to bin/qt-cmake-private(.bat)
        newQtCMakeStandaloneTestPath = qtPath;

        // Set new patched values for target_qt.conf
        newHostPrefix = "HostPrefix=../../mingw81_64";
        newHostData = "HostData=../android_armv7";

        // Set new patched values for qt.toolchain.cmake
        // cmake paths can use forward slash instead of backslash in paths which is unusual for Windows
        // Make whole path using forward slash a.k.a Unix path notation instead of backslash
        var windowsTargetDir = "@TargetDir@";
        var unixTargetDir = windowsTargetDir.replace(/\\/g, "/");
        console.log("Converting path for cmake: ");
        console.log("  from windowsTargetDir: " + windowsTargetDir);
        console.log("  to unixTargetDir: " + unixTargetDir);

        // __qt_initial_qt_host_path
        newQtHostPath = unixTargetDir + "/6.1.0/mingw81_64";
        //__qt_initial_qt_host_path_cmake_dir
        originalQtHostPathCmakeDir = "/Users/qt/work/install/lib/cmake";
        newQtHostPathCmakeDir = unixTargetDir + "/6.1.0/mingw81_64/lib/cmake";

        // Set new patched values for QtBuildInternalsExtra.cmake
        newQtHostTargetPath = qtPath;

        // Copy qmake from host bin to target bin for patching
        androidQmakeBinary =  qtPath + "\\bin\\qmake.exe";
        console.log("Copying qmake: ");
        console.log("  from qmakeBinary: " + qmakeBinary);
        console.log("  to androidQmakeBinary: " + androidQmakeBinary);
        component.addOperation("Copy", qmakeBinary, androidQmakeBinary);
    }

    // Patch build time paths from target\bin\qmake(.bat) script
    console.log("Patching qmake script: " + qmakeScript);
    console.log("  from originalQmakePath: " + originalQmakePath);
    console.log("  to newQmakePath: " + newQmakePath);
    component.addOperation("Replace", qmakeScript, originalQmakePath, newQmakePath);

    // Patch build time CMake path from qt-cmake(.bat) script
    console.log("Patching CMake path from qt-cmake script: " + qtCMakeScript);
    console.log("  from originalSetCMakePath: " + originalSetCMakePath);
    console.log("  to newSetCMakePath: " + newSetCMakePath);
    component.addOperation("Replace", qtCMakeScript, originalSetCMakePath, newSetCMakePath);

    // Patch build time CMAke paths from qt-cmake-private(.bat) script
    console.log("Patching CMake path from qt-cmake-private script: " + qtCMakePrivateScript);
    console.log("  from originalSetCMakePath: " + originalSetCMakePath);
    console.log("  to newSetCMakePath: " + newSetCMakePath);
    component.addOperation("Replace", qtCMakePrivateScript, originalSetCMakePath, newSetCMakePath);

    // Patch build time CMAke paths from qt-cmake-standalone-test(.bat) script
    console.log("Patching path from qt-cmake-standalone-test script: " + qtCMakeStandaloneTestScript);
    console.log("  from originalQtCMakeStandaloneTestPath: " + originalQtCMakeStandaloneTestPath);
    console.log("  to newQtCMakeStandaloneTestPath: " + newQtCMakeStandaloneTestPath);
    component.addOperation("Replace", qtCMakeStandaloneTestScript, originalQtCMakeStandaloneTestPath, newQtCMakeStandaloneTestPath);

    // Patch Host Prefix and Host Data paths from target_qt.conf
    console.log("Patching Host Prefix and Host Data from target_qt.conf: " + targetQtConf);
    console.log("  from originalHostPrefix: " + originalHostPrefix);
    console.log("  to newHostPrefix: " + newHostPrefix);
    console.log("  from originalHostData: " + originalHostData);
    console.log("  to newHostData: " + newHostData);
    component.addOperation("Replace", targetQtConf, originalHostPrefix, newHostPrefix);
    component.addOperation("Replace", targetQtConf , originalHostData, newHostData);

    // Append target_qt.conf with relative paths to documentation and examples
    console.log("Appending " + targetQtConf_documentation + " and " + targetQtConf_examples + " to targetQtConf" + targetQtConf);
    component.addOperation("AppendFile", targetQtConf, targetQtConf_documentation);
    // Add a new line to targetQtConf which AppendFile operation doesn't add automatically
    if (installer.value("os") == "win") {
        // \r\n = CR + LF used as a new line character in Windows
        component.addOperation("AppendFile", targetQtConf, "\r\n");
    }
    else {
        // \n = LF (Line Feed) used as a new line character in Unix/macOS
        component.addOperation("AppendFile", targetQtConf, "\n");
    }
    component.addOperation("AppendFile", targetQtConf, targetQtConf_examples);

    // Patch Qt install path from qt.toolchain.cmake
    console.log("Patching install path from qt.toolchain.cmake : " + qtToolchainCmake);
    console.log("set __qt_initial_qt_host_path");
    console.log("  from originalQtHostPath: " + originalQtHostPath);
    console.log("  to newQtHostPath: " + newQtHostPath);
    component.addOperation("Replace", qtToolchainCmake, originalQtHostPath, newQtHostPath);
    console.log("set __qt_initial_qt_host_path_cmake_dir");
    console.log("  from originalQtHostPathCmakeDir: " + originalQtHostPathCmakeDir);
    console.log("  to newQtHostPathCmakeDir: " + newQtHostPathCmakeDir);
    component.addOperation("Replace", qtToolchainCmake, originalQtHostPathCmakeDir, newQtHostPathCmakeDir);

    // Patch Qt install path from QtBuildInternalsExtra.cmake
    console.log("Patching install path from QtBuildInternalsExtra.cmake : " + qtBuildInternalsExtraCmake);
    console.log("  from originalQtHostTargetPath: " + originalQtHostTargetPath);
    console.log("  to newQtHostTargetPath: " + newQtHostTargetPath);
    component.addOperation("Replace", qtBuildInternalsExtraCmake, originalQtHostTargetPath, newQtHostTargetPath);

    addInitQtPatchOperation(component, platform, qtPath, qmakeScript, "emb-arm-qt5");

    if (installer.value("SDKToolBinary") == "")
        return;

    // add Qt into QtCreator
    component.addOperation("Execute",
                           ["@SDKToolBinary@", "addQt",
                            "--id", component.name,
                            "--name", "Qt %{Qt:Version} for Android ARMv7",
                            "--type", "Qt4ProjectManager.QtVersion.Android",
                            "--qmake", qmakeScript,
                            "UNDOEXECUTE",
                            "@SDKToolBinary@", "rmQt", "--id", component.name]);

    // patch/register docs and examples
    var installationPath = installer.value("TargetDir") + "/6.1.0/android_armv7";
    print("Register documentation and examples for: " + installationPath);
    patchQtExamplesAndDoc(component, installationPath, "Qt-6.1.0");

    // is this OpenSource installation?
    var isOpenSource = "true";
    if (['true', 'yes', '1'].indexOf(isOpenSource) >= 0) {
        // patch qconfig.pri
        var qconfigFile = qtPath + "/mkspecs/qconfig.pri";
        component.addOperation("LineReplace", qconfigFile, "QT_EDITION =", "QT_EDITION = OpenSource");
        if (installer.value("os") == "x11") {
            component.addOperation("LineReplace", qconfigFile, "QT_LICHECK = licheck64", "QT_LICHECK =");
        }
        if (installer.value("os") == "mac") {
            component.addOperation("LineReplace", qconfigFile, "QT_LICHECK = licheck_mac", "QT_LICHECK =");
        }
        if (installer.value("os") == "win") {
            component.addOperation("LineReplace", qconfigFile, "QT_LICHECK = licheck.exe", "QT_LICHECK =");
        }
    }

    // On Windows, earlier copied qmake.exe for patching purposes causes issues later if not removed
    if (installer.value("os") == "win") {
        component.addOperation("Delete", androidQmakeBinary);
    }
}

PR #210 handle the case, it modify qmake script for android installation, that is now merged into master branch.

released the fix.

Wait, there's another quick question.
(aqt_test) aqt_test > diff ~/Qt/6.1.0/android_arm64_v8a/lib/cmake/Qt6/qt.toolchain.cmake ./installed/6.1.0/android_arm64_v8a/lib/cmake/Qt6/qt.toolchain.cmake                                       2⏎ 11s
27c27
<     set(__qt_initial_qt_host_path "/home/uvu/Qt/6.1.0/gcc_64")
---
>     set(__qt_initial_qt_host_path "/home/qt/work/install")
32c32
<     set(__qt_initial_qt_host_path_cmake_dir "/home/uvu/Qt/6.1.0/gcc_64/lib/cmake")
---
>     set(__qt_initial_qt_host_path_cmake_dir "/home/qt/work/install/lib/cmake")

With aqtinstall 1.1.3
(aqt_test) aqt_test > pip show aqtinstall                                                                                1⏎
Name: aqtinstall
Version: 1.1.3
Summary: Another unofficial Qt installer

The qt.toolchain.cmake seems not patched. A valid __qt_initial_qt_host_path is required for a working qt-cmake.

aqt don't have a feature to patch cmake. Please do it  yourself.
Anyone who know how to patch it are very welcome to give Pull-Request to aqtinstall project.

Thanks for your reply, for future reference, this patch make the toolchain work.
sed -i "s,/home/qt/work/install,/YOUR_PATH_TO_QT/6.0.1/gcc_64,g" $Qt6_DIR/lib/cmake/Qt6/qt.toolchain.cmake


PowerShell Beta - the ESC key doesn't clear in Linux

In Linux, the ESC kay is not clearing the current line. This works in Windows!
Steps to reproduce

Type any cmdlet in PowerShell console prompt but don't press TAB nor Enter Key:

PS /home/maxt> $PSVers

Press the ESC key to cleared the line.

Expected behavior

To clear the line you are currently On.
PS /home/maxt> $PSVers   ## - Press ESC key.
PS /home/maxt>  ## Current line is blank.

Actual behavior

Doesn't  do anything!
Environment data

Ubuntu:  16.04.01

PS /home/maxt> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      6.0.0-beta
PSEdition                      Core
BuildVersion                   <IP_ADDRESS>
CLRVersion
GitCommitId                    v6.0.0-beta.2
OS                             Linux 4.4.0-81-generic #104-Ubuntu SMP Wed Jun 14 08:17:06 UTC 2017
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

This is by design - on LInux, PSReadline defaults to Emacs mode.
If you want Windows mode, you can put this in your profile:
Set-PSReadlineOption -EditMode Windows

Awesome!! Thanks @lzybkr.
:)

Make it the default value better


Show repo size

@leotm - https://github.com/softvar/github-plus/issues/6
https://github.com/harshjv/github-repo-size
Great stuff, would be good to be able to run both or even better add ^^ as a new feature.

Hey @leotm,
Now the extension show repo size too and the calls being made are now optimized.
Install the latest v0.1.5 -> https://chrome.google.com/webstore/detail/github-plus/anlikcnbgdeidpacdbdljnabclhahhmd

Now in master and on chrome web store too 😄


added precision argument to ceil, floor and round

fixes #393
take primarily from an existing patch from the older jut-io/product
codebase and slightly adapted

@dmajda @bkutil

+1

@rlgomes FYI, I changed markup of level 1 and 2 headings in JuttleSpec tests to be #-based in #462. It would be great to adjust tests added here for consistency.

@dmajda I'll rebase with master and fix that up before merging.

Almost forgot to update the documentation... doing that now.

https://github.com/juttle/juttle/pull/455/files#diff-7ab98f8bedcc3d8b11f5e60f41664038 someone review the docs (@dmehra, @dmajda)

merging on green


Image loader colour space should be assumed sRGB more often.

Converted from project view. Task is already complete.


F11 throws [InvokeFunction] unknown service 'debugService' error rather than toggling full screen mode

Type: Bug
Press F11.
Expected result: Full screen mode is toggled
Actual result: [InvokeFunction] unknown service 'debugService' pop-up appears
Note: Using View>Appearance>Full Screen still works fine
Azure Data Studio version: azuredatastudio 1.45.1 (88c21b1725a3e79440027bdb7b5a55fb036be0e2, 2023-08-03T00:42:37.945Z)
OS version: Windows_NT x64 10.0.19045
Restricted Mode: No
Preview Features: Enabled
Modes:

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-8365U CPU @ 1.60GHz (8 x 1896)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
7.82GB (1.08GB free)

Process Argv
--folder-uri file:///c%3A/Users/nyep/Institute%20for%20Government/Data%20-%20General/UK%20government%20and%20politics/Ministers/Ministers%20database

Screen Reader
no

VM
0%

Extensions (1)

Extension
Author (truncated)
Version

import
Mic
1.5.5

This is a new issue since upgrade to either v1.44 or 1.45 - and to me looks similar to #23236

This is a new issue since upgrade to either v1.44 or 1.45 - and to me looks similar to #23236

The problem continues

@edvvdev I think there hasn't been a release yet in which the fix would be present


Replace YYYY-MM date with MM/YYYY or MMM YYYY

Seeing all the numbers together like that seems a bit cluttered. Instead we should use display month names or at least the abbreviated form?

Various references for this.

Giraffe CVs - MMMMM YYYY or MMM. YYYY
Resume Worded - MM/YYYY or MMM YYYY
Jobscan - MM/YYYY or MMMMM YYYY

Workable advice specifying DD so that ATS systems can clearly see it's a date. However, most other sources don't offer the same advice, and some even discourage it as too much unnecessary information.
I'd prefer to avoid DD/MM/YYYY or MM/DD/YYYY as in most cases these are ambiguous anyway.

For now I'll settle on MM/YYYY as this is shorter, but I may reconsider in future.


Documentation for Image module

I am working on this this week.

Just pushed a ton of documentation updates for the 0.8.0 release (I've been holding on to them until the release was ready). I added a placeholder for Image, so just replace it with your content whenever you're ready.

Done
https://github.com/Wyamio/Wyam.Web/commit/2828127bf36c772a3a66b741f7c373883f3def5e


New fields to detect crash loop and failed machine reclaim

Adds new fields crash_loop and failed_machine_reclaim to MachineProvisioningEvents as introduced here

Codecov Report

Merging #87 (ed12c40) into master (3b9a650) will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master     #87   +/-   ##
======================================
  Coverage    3.45%   3.45%
======================================
  Files          16      16
  Lines        1275    1275
======================================
  Hits           44      44
  Misses       1224    1224
  Partials        7       7

Help us with your feedback. Take ten seconds to tell us how you rate us.


Update module for Ballerina 1.2.0 and change org to ballerinax

Purpose
This PR update the module compatibility with Ballerina 1.2.0 and change the organization of the module from wso2 to ballerinax.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Provide refasterJS-style DSL to allow quick definition of custom compiler passes

I got this idea from a suggestion that we add a check for, probably accidental, calls to x.prototype.foo()
instead of x.prototype.foo.apply() (or call()).
It's a good idea, but probably not worth spending closure-compiler eng time on. It would be great if people could quickly write their own errors and warnings like this one by using a DSL like the one used by refasterJS, just a bit of JS template with annotations. For this example, I'm thinking it would look something like this.
/**

Warn if code calls a method on func.prototype directly instead of using its call() or apply() method.
@param {Function} func
@identifierParam someFunc
@warning Direct call to prototype method. Did you mean to use apply() or call()?
/
function warning_prototypeMethodCall(func, someFunc) {
func.prototype.someFunc(/* @anyParameters */);
}

There would be a compiler option to specify one or more files containing such templates to be used during compilation.
This could even be extended to optimizations or other code modification.
Closure-compiler eng could use this as a quick way to prototype an optimization.

cc @mknichel who created RefasterJS

Hi @brad4d ,
You can use RefasterJS syntax with the Closure Compiler conformance framework (https://github.com/google/closure-compiler/wiki/JS-Conformance-Framework - BANNED_CODE_PATTERN).
Have you seen this before? Are you asking for something that's not possible with that?

That's a very good point, @mknichel. I'm not very familiar with the
conformance framework, which is why I forgot about it here.
I know it can prevent compilation of banned code patterns.
Can it also just warn?
Can it modify the AST also?
Thanks,
Bradford
On Tue, May 10, 2016 at 9:26 PM mknichel<EMAIL_ADDRESS>wrote:

Hi @brad4d https://github.com/brad4d ,
You can use RefasterJS syntax with the Closure Compiler conformance
framework (
https://github.com/google/closure-compiler/wiki/JS-Conformance-Framework

BANNED_CODE_PATTERN).

Have you seen this before? Are you asking for something that's not
possible with that?
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/google/closure-compiler/issues/1785#issuecomment-218358633

I don't think you can cause one particular conformance rule to warn while the rest error, but I think you can cause all conformance violations to warn by setting the level for JSC_CONFORMANCE_VIOLATION..
Right now there's no support for transforming code in the compiler with the RefasterJS syntax. It's something that we have discussed before, but so far we've never come up with a use case to implement it.

So to sum-up the current state of things:

The JS conformance framework will allow users to forbid or give warnings for code patterns they define, but it isn't fine-grained enough now to treat some patterns as errors and others as warnings.
RefasterJS can be used for code transformations, but the compiler doesn't support incorporating such transformations into a compiler pass.

So, suppose I'm a super power user, and I really want to define my own custom code manipulation, warnings, and errors on top of what the compiler can provide. The current solution would be a tool chain that looks something like this.
Whenever compilation is needed...

Run RefasterJS over the code with my custom code modification definitions.
Get my custom warnings by running the compiler once with minimal code modification options, JS Conformance errors treated as warnings, and my custom "warnings" JS Conformance specifications.
Run the compiler again with all the options I want enabled and my custom JS Conformance error specifications.

So, all this is do-able if a bit awkward in places.
It seems reasonable to just use RefasterJS for custom code modification.
The main awkwardness is around defining some code patterns as warnings and others as errors.
Allowing separate specification of error and warning conformance patterns in a single invocation of the compiler at least doesn't sound like it would be difficult, but there are a lot of more important things to work on, so I'll just close this.
Thanks.

There was some discussion and proposal to create conformance rule "level"  (lint, warning, error) but I haven't implemented it.

We're still discussing how to classify conformance errors (security, lint, performance, etc.) - we may propose something to you in the upcoming months.


Extension Host Terminated unexpectedly

Issue Type: Bug
Update: I have found that if I run the same installation on a local administrator account the error does not happen. (Right Click -> Run as Admin)
After upgrade from 1.37.1 to 1.38 or 1.39 of VS-Code the "extension host terminates unexpectedly".
This happens also on a clean install without any modifications, extensions...
I have tried

new installation, with and without any extensions -> no difference
new portable installation, with and without any extensions -> no difference
disable git, since other suggest it may come from there -> no difference

The extensions I typically use are listed below.
This is the output from the error console:

abstractExtensionService.ts:155 Extension host terminated unexpectedly.
Version: 1.39.1 (user setup)
Commit: 88f15d1
Date: 2019-10-10T23:31:28.683Z
Electron: 4.2.10
Chrome: 69.0.3497.128
Node.js: 10.11.0
V8: 6.9.427.31-electron.0
OS: Windows_NT x64 10.0.18362

Same
Version: 1.39.2 (system setup)
Commit: 6ab598523be7a800d7f3eb4d92d7ab9a66069390
Date: 2019-10-15T26:35:18.241Z
Electron: 4.2.10
Chrome: 69.0.3497.128
Node.js: 10.11.0
V8: 6.9.427.31-electron.0
OS: Windows_NT x64 6.1.7601

@tobiaslombacher @pavangayakwad @daFritz84 Does this reproduce when disabling all extensions?

Well, I uninstalled completely, restarted my machine and then installed freshly, Not getting this issue since from 2 days of my regular work. Yeah, all my extensions are lost and I installed few of them which I use regularly.

@tobiaslombacher @pavangayakwad @daFritz84 Does this reproduce when disabling all extensions?
Can you please share your installed extensions? Perhaps there is an extension common between the three of you that might cause the crash of the extension host process?

Things I tried:

disabled all extensions with  the command line switch
uninstalled all extensions
tried to use portable mode (zip file with data directory)
So, I'm quite sure it has something to do with my particular windows version / configuration.

However, I did not try @pavangayakwad method yet.

OK here is the list of my Extensions for now. However, lost others when I uninstalled.
Not sure how much this would help you now, however, sharing it anyway.

I have

removed all extensions on existing installs and
tried clean new portable installations with and without the extensions or user data.

I found out (all tried with the portable version, though I have tested 1.39.1 also with the user install and system install)

1.37.1 - with or without extensions, running in the user account is working
1.38.1 and .2 - with or without extensions, running in the user account is not working
1.38.1 and .2 - with or without extensions, running in the local admin account is working without crashing the extension host.
1.39.1 and .2 - behave the same as 1.38.1 and .2

It seems to be independent of the extensions in use since it crashes also without any extensions installed or enabled.

Just for the record:
I tried uninstalling 1.37.1, restarting and installing with 1.39.2 without luck.

@tobiaslombacher Does anything appear in the developer tools (F1 > Developer: Toggle Developer Tools) when the crash occurs? Can you share the extension host / window logs? (F1 > Developer: Open Logs Folder...)
@bpasero Would you have any idea how to troubleshoot this further?

@alexandrudima possibly with the Debug Diagnostics Tools on Windows as outlined at https://github.com/Microsoft/vscode/wiki/Native-Crash-Issues#windows. However this would require that the user has time enough to attach to the process.
Another thing maybe worth trying is to see if this reproduces out of sources. If so, we could add a bit of delay before starting the extension host so that this tool can be attached.

Also now that we are shipping insiders on E6, possibly a crash report is generated? Maybe about time to push https://github.com/microsoft/vscode/issues/80858 so that we can test this on users :)

Here are my log files.
From the console window:
-1571463428257.log
other logs:
main.log
exthost.log
If I need to get more details please let me know.

I have captured the logs with the Debug Diagnostic Tool.
When the extension host terminated, I restarted it 3 times.
The logs are attached.
Code__PID__9984__Date__10_19_2019__Time_09_14_17AM__105__Log.txt
Code__PID__21876__Date__10_19_2019__Time_09_14_12AM__785__Log.txt
Code__PID__5948__Date__10_19_2019__Time_09_14_12AM__955__Log.txt
Code__PID__14804__Date__10_19_2019__Time_09_14_12AM__874__Log.txt
Code__PID__18272__Date__10_19_2019__Time_09_14_17AM__194__Log.txt
Code__PID__21080__Date__10_19_2019__Time_09_14_36AM__858__Log.txt
Code__PID__10216__Date__10_19_2019__Time_09_14_23AM__826__Log.txt
Code__PID__3684__Date__10_19_2019__Time_09_14_27AM__830__Log.txt
Code__PID__21364__Date__10_19_2019__Time_09_14_17AM__10__Log.txt

Interesting one:
***********************
*  EXCEPTION DETAILS  *
***********************

DetailID = 1
	Count:    2
	Exception #:  0XC0000005
	Stack:
		CRYPT32!CertCloseStore+0x2fe
		CRYPT32!CertCloseStore+0x2e3
		CRYPT32!CertEnumCertificatesInStore+0x1f
		crypt32_7fed42e0000+0x1ca9
		crypt32_7fed42e0000+0x338d
		Code!napi_create_function+0x34a
		Code!v8::Extension::~Extension+0xc1c
		Code!v8::ScriptCompiler::ExternalSourceStream::ResetToBookmark+0x291cf
		Code!v8::ScriptCompiler::ExternalSourceStream::ResetToBookmark+0x28751
		Code!v8::ScriptCompiler::ExternalSourceStream::ResetToBookmark+0x283d1
		Code!v8::EmbedderHeapTracer::FinalizeTracing+0x23aa62
		0x00000040`b10bb801
		0x00000209`10d3fe39
		0x00000209`10d3f309
		0x00000078`08788949
		0x00000008`00000000
		0x00000159`d0f05751
		0x00000209`10d56371
		0x0000014d`dad19081
		0x2bdd00
		0x6
		0x2bde20
		0x0000014d`dad0880d
		0x00000159`d0f026f1
		0x00000078`0878dd31
		0x00000005`00000000
		0x00000159`d0f02801
		0x00000209`10d56371
		0x00000078`0878dd31
		0x00000209`10d3f309

Thanks a lot @tobiaslombacher and @bpasero !

@chrmarti This appears to be an access violation in vscode-windows-ca-certs, specifically on this line

From Code__PID__21080__Date__10_19_2019__Time_09_14_36AM__858__Log.txt:
Notice crypt32.node getting loaded from vscode-windows-ca-certs:
  \\?\c:\Users\lot\Downloads\vscode1392\resources\app\node_modules.asar.unpacked\vscode-windows-ca-certs\build\Release\crypt32.node loaded at 0xd42e0000

Notice the access violation top stack points to CRYPT32
DetailID = 1
	Count:    2
	Exception #:  0XC0000005
	Stack:
		CRYPT32!CertCloseStore+0x2fe
		CRYPT32!CertCloseStore+0x2e3
		CRYPT32!CertEnumCertificatesInStore+0x1f
		crypt32_7fed42e0000+0x1ca9
		crypt32_7fed42e0000+0x338d
		Code!napi_create_function+0x34a
		Code!v8::Extension::~Extension+0xc1c
		Code!v8::ScriptCompiler::ExternalSourceStream::ResetToBookmark+0x291cf
		Code!v8::ScriptCompiler::ExternalSourceStream::ResetToBookmark+0x28751
		Code!v8::ScriptCompiler::ExternalSourceStream::ResetToBookmark+0x283d1
		Code!v8::EmbedderHeapTracer::FinalizeTracing+0x23aa62

Do we need to change anything in the group policies? Does anybody know what needs to be changed?
Somehow it is strange that this happened only from 1.38.1 onwards and I am pretty sure that our GPO's did not change during this period.

You can try disabling System Certificates as a workaround:

There was a bug before 1.38 preventing it from working and likely preventing it from crashing in your case too.

@chrmarti  yep, the workaround does the trick for me.

@tobiaslombacher and @daFritz84 I have pushed a potential fix, could you verify you can run with System Certificates enabled with tomorrow's (Friday's) Insiders build once it's out: https://code.visualstudio.com/insiders/

@chrmati

disabling the System Certificates worked :+1:
tried 1.40 insiders - no success. The extension host still terminates, see below

abstractExtensionService.ts:155 Extension host terminated unexpectedly. Code:<PHONE_NUMBER>  Signal:  null
_onExtensionHostCrashed @ abstractExtensionService.ts:155
notificationsAlerts.ts:40 Extension host terminated unexpectedly.

@tobiaslombacher
Could you install Node.js 12 and try in an empty folder:

npm i vscode-windows-ca-certs
Create a test.js file:

console.log('Node: ' + JSON.stringify(process.versions));

console.log('Loading');
const winCA = require('vscode-windows-ca-certs');

let ders = [];
console.log('Opening');
const store = winCA();
try {
    let der;
    console.log('Reading');
    while (der = store.next()) {
        ders.push(der);
    }
    console.log('Read ' + ders.length);
} finally {
    console.log('Closing');
    store.done();
}
console.log('Done');

node test.js

And attach the output of that?

@tobiaslombacher Can you please try again with today's Insiders build? We had some test failures on Friday and the Friday insiders build was released a bit delayed.

@alexandrudima I have tried with today's build 1.40.0. Now it is working without problems.
@chrmarti I will have to get it installed and running first. Give me a little time. Not so easy if you are in a domain network.

@tobiaslombacher No need to try that if the Insiders build works. Thanks.
@daFritz84 Could you give the Insiders build a try and check if it works with System Certificates enabled too?

@chrmarti A little late to the party, but I can also confirm that the latest Insider Build fixes this issue

@daFritz84 new download from website still have issue:
Version: 1.40.1 (user setup) Commit: 8795a9889db74563ddd43eb0a897a2384129a619 Date: 2019-11-13T16:49:35.976Z Electron: 6.1.2 Chrome: 76.0.3809.146 Node.js: 12.4.0 V8: 7.6.303.31-electron.0 OS: Windows_NT x64 10.0.17763

@thanhnguyen92
I'm running 1.40.1 (user setup) on Windows 10 without any troubles.
You might wanna try some of the debugging steps listed in this thread, like disabling all extensions or doing some native debugging.
In any case, opening a new issue might be appropriate.

@daFritz84 of course I did all above steps:

Disable System Certificates
Uninstall/install Visual Code
Remove all extensions

@thanhnguyen92
Then you might wanna create a new issue referencing this one. I cannot reopen this issue since I'm neither the original thread creator nor an admin in this project.

@thanhnguyen92
Then you might wanna create a new issue referencing this one. I cannot reopen this issue since I'm neither the original thread creator nor an admin in this project.

Thanks @daFritz84 , I've created the new one #85586


Documentation go build does not mention 'testdata' folder

What version of Go are you using (go version)?
n/a
Does this issue reproduce with the latest release?
n/a
What did you do?
Navigate to https://golang.org/cmd/go/#hdr-Compile_packages_and_dependencies. It says:

When compiling packages, build ignores files that end in '_test.go'.

What did you expect to see?
I expected to see the 'testdata' folder be mentioned as well.
(it took me quite a while before I knew that this magic string existed)
What did you see instead?
see above

This is documented in go help packages, which is mentioned in the page you link.
I think it's best to keep information in a single place, to keep it organised. If you think go help packages isn't easy enough to find, do you have any suggestions about that?
/cc @bcmills @jayconrod

yes, you make a fair point. I would be fine closing this issue.
WRT 'go help'. I forgot about this. I vaguely remember something like this when starting with go, but I never looked back. Stackoverflow / google is what I and most devs will do.
Although i like the idea of go help - I question whether the investment is worth the effort. Especially for developers that use an IDE. And as you say, information should be in a single place; so probably the .org page would be my preferred choice.

Thank you @stephanwesten for your contribution. Through the comments listed above, it seems like you are happy with the current documentation scheme. I'm going to close this issue and mark it it as "working as intended." Please feel free to open it again or comment if you feel otherwise.


Insert Snippet Shortcut not Working

VSCode Version: 1.43.0
OS Version: Linux Mint 19.3 Tricia

Steps to Reproduce:

Create The Keybinding

{
 "key": "ctrl+;",
 "command": "insertSnippet",
},

Go to Editor and Press ctrl+;.

Nothing Happens.

Does this issue occur when all extensions are disabled?: Yes
Expected Behaviour:
My Expectation is when I press ctrl+; It will show what I get from pressing F1 > Insert Snippet. Something like:

Sorry, the keybinding I was looking for is:
{
    "key": "ctrl+;",
    "command": "editor.action.showSnippets"
},


feat(devtools): Send usage telemetry to collection endpoint

Description
Keeping as draft until we figure out all details of how this approach would work. We're still exploring an option to use public packages only.
Reviewer Guidance
The review process is outlined on this wiki page.

Superseded by https://github.com/microsoft/FluidFramework/pull/16904


Register as new Julia package

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/120271
Tip: Release Notes
Did you know you can add release notes too? Just add markdown formatted text underneath the comment after the text
"Release notes:" and it will be added to the registry PR, and if TagBot is installed it will also be added to the
release that TagBot creates. i.e.
@JuliaRegistrator register

Release notes:

## Breaking changes

- blah

To add them here just re-invoke and the PR will be updated.
Tagging
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.0 -m "<description of version>" e4d82f24d615bbbf69f77c434881f39f77901503
git push origin v0.1.0

Registration pull request created: JuliaRegistries/General/120277
Tip: Release Notes
Did you know you can add release notes too? Just add markdown formatted text underneath the comment after the text
"Release notes:" and it will be added to the registry PR, and if TagBot is installed it will also be added to the
release that TagBot creates. i.e.
@JuliaRegistrator register

Release notes:

## Breaking changes

- blah

To add them here just re-invoke and the PR will be updated.
Tagging
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.0 -m "<description of version>" 02692612cf3601c39de9758b8d52c1d0b14abde0
git push origin v0.1.0


Update 50-exercise.md

Thank you Nina for wonderful Python course.
Update "Product" to "Sum" for add_numbers() function.

Thanks for your contribution!


RuntimeError: unreachable executed

🐛 Bug description
I'm using wasm-pack to build a wasm that generates an SVG on the fly.  Code compiles with no error. The resulting wasm worked fine up until I added a line (and included chrono), and now the browser gives me "RuntimeError: unreachable executed" and I can inspect into the wasm to an unreachable statement.
🤔 Expected Behavior
Shouldn't be generating a wasm that can hit an unreachable statement.
👟 Steps to reproduce
See https://github.com/mikedilger/circular_calendar which I have just pushed for this bug report.
🌍 Your environment
wasm-pack version: 0.8.1
rustc version: 1.38.0

Now that I think of it, it's probably related to chrono and time.

@mikedilger You should be using console_error_panic_hook, which will dramatically improve the error messages.
For chrono you need to enable the wasmbind feature.

Oh man is that valuable information!  Thanks.

I'm trying to use SystemTime::now() and gettuing the same error. Do I have to use chrono for this?

@Songkeys There is currently no way to use SystemTime with wasm32-unknown-unknown.
However you can use js_sys::Date::now() which calls the JavaScript Date.now() and returns an f64.
Or you can use js_sys::Date::new_0() if you want a JavaScript Date object instead.

For the record, was doing network requests with https://github.com/seanmonstar/reqwest in rust and after enabling https://crates.io/crates/console_error_panic_hook compiled catches

panicked at 'called `Result::unwrap()` on an `Err` value: reqwest::Error { kind: Builder, source: "JsValue(ReferenceError: Headers is not defined\nReferenceError: Headers is not defined\n    at /home/iuslkae/lib-test/pkg/lib_test.js:270:15\n    at handleError (/home/iuslkae/lib-test/pkg/lib_test.js:217:18)\n    at module.exports.__wbg_new_cf4002932f67522d (/home/iuslkae/lib-test/pkg/lib_test.js:269:65)\n    at null.<anonymous> (wasm://wasm/001b906e:1:200279)\n    at null.<anonymous> (wasm://wasm/001b906e:1:65901)\n    at null.<anonymous> (wasm://wasm/001b906e:1:155650)\n    at null.<anonymous> (wasm://wasm/001b906e:1:139731)\n    at null.<anonymous> (wasm://wasm/001b906e:1:177221)\n    at null.<anonymous> (wasm://wasm/001b906e:1:144986)\n    at null.<anonymous> (wasm://wasm/001b906e:1:184052))" }', src/lib.rs:26:6

Apparently it required this way and worked fine.

import { default as fetch, Headers, Request, Response } from 'node-fetch';
// declare global;
// @ts-ignore
global.fetch = fetch;
// @ts-ignore
global.Headers = Headers;
// @ts-ignore
global.Request = Request;
// @ts-ignore
global.Response = Response;
greet().then(console.log);

Patch node-fetch on nodejs to get my lib work.


updated wording

Current dependencies on/for this PR:

main

PR #8   👈

This stack of pull requests is managed by Graphite.


Update README.md

I meant to add this earlier. Maybe I even had it at one point and accidentally removed it? But I think it's more likely that I took a note to add it, and lost track of the note. Anyways, here it is now! It is complementary/compatible with other resources in the guide, not just because of the Python aspect but because of the PyTorch focus.


exportcert refactor

The certificate creation and export can be abstracted out into a new utility class so as to allow for better separation of concerns and scope for future extensions. The organisation is now as follows:
ExportCertCommand:

Affirms and assigns the export path based on the ability to create a folder to export to
Validates the index input and raises a CommandException if there is a violation
Checks if the volunteer has non-zero event records
Retrieves the records and corresponding events for the selected volunteer from the model
Creates a new CertGenerator object by supplying the save path, volunteer and (record, event) pairs.
Calls the generatePdf method of the CertGenerator class and handles the potential resulting IOExceptions.

CertGenerator:

Gets instantiated with a save path, volunteer object and volunteer data in the from of (record, event) pairs.
Populates a PDF document with the supplied volunteer information
Exports the PDF document to the supplied savepath

Some design considerations:

Save path is supplied by ExportCertCommand so as to support future functionality to get the filepath from the user itself. As such, CertGenerator is excluded from the save path decision making process.
The retrieval of volunteer information is done in ExportCertCommand itself so as to prevent the need for both CertGenerator and ExportCertCommand to interact with the model. This is inspired by the Law of Demeter.

Coverage increased (+0.09%) to 67.353% when pulling c909013c013b414b2a9f53543d6fa90870e28db3 on sharan8:exportcert-refactor into 76ad5970cca1b93c2d56001e304a86ce0b430c8e on CS2103-AY1819S1-W16-2:master.


Update oidcrp.oauth2.init.py file import

Line 12 - from oidcservice.service import init_services
should be:
from oidcservice.service import build_services

Don't know why you say that.
build_services are not around anymore. Replaced by init_services.
Unfortunately example/conversation.py are not updated to reflect this.
And I have to updated the documentation.

much appreciated for response.
I see my mistake.  I pip installed oidcservice, I see that the git repo oidcservice is updated.

A good point I should update PyPI.


What's the roadmap to DISABLE THIS FEATURE in future AD Connect versions???

This does more harm than good
It creates more work to fix instead of facilitating the locations of remediation
Now you have to make the modification in multiple places:
AD onprem
MSOL PowerShell
MSOL Deleted users
EXO mbx alias
EXO PowerShell
Soft Deletion trigger to play between AD and Azure AD
AD Connect metaverse
Prior to this the object just won't sync, which was good. You only had a single place to remediate on-prem AD, once fixed you could sync again.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 6addd727-64bb-f71d-acf2-850220ba8973
Version Independent ID: 74342c05-c714-0cfc-8dd6-d29611cacaef
Content: Identity synchronization and duplicate attribute resiliency
Content Source: articles/active-directory/hybrid/how-to-connect-syncservice-duplicate-attribute-resiliency.md
Service: active-directory
Sub-service: hybrid
GitHub Login: @billmath
Microsoft Alias: billmath

@Neckross
Thanks for your feedback! We will investigate and update as appropriate.

Hi @Neckross ,
This currently is not on the roadmap, but you can make a request in User Voice to add this ability, and I will share it along. https://feedback.azure.com/forums/169401-azure-active-directory
You can also keep an eye on the AD Connect release notes.
I have also passed your feedback along to the product team and will update this thread when I have a response.

This is broken. Asking us to get it voted up is missing the point entirely.
I have two users, both UPN's are correct. They are not duplicates, they are the exact object I expect synchronization for.
They should synchronize.
This is not something we need to have voted up; it's something you guys need to fix.
If one or the other is an administrator should have nothing to do with screwing up the UPN's one one or both.
This is broken. We shouldn't have to vote on fixing broken products.


Add Job name label to pods

What would you like to be added:
Add Job name label to pods
Why is this needed:
In dynamically provisioned clusters, this would be helpful for debugging which job triggered a node pool creation for that job to land on.

/assign

job-name label is here: https://github.com/kubernetes-sigs/jobset/blob/0b8c19c14159302048b7fd5bf50a1c2d819193e2/api/jobset/v1alpha2/jobset_types.go#L29

Thanks for working on this @googs1025!

job-name label is here:
https://github.com/kubernetes-sigs/jobset/blob/0b8c19c14159302048b7fd5bf50a1c2d819193e2/api/jobset/v1alpha2/jobset_types.go#L29

Okay, thanks for reminding me of this, I will try it out in the next few days!

root@VM-0-17-ubuntu:/home/ubuntu# kubectl describe pods network-jobset-leader-0-0-2qphg
Name:             network-jobset-leader-0-0-2qphg
Namespace:        default
Priority:         0
Service Account:  default
Node:             cluster1-worker2/<IP_ADDRESS>
Start Time:       Sat, 25 May 2024 14:44:56 +0800
Labels:           batch.kubernetes.io/controller-uid=88683b1c-7d3b-4108-a28c-a5382e876e01
                  batch.kubernetes.io/job-completion-index=0
                  batch.kubernetes.io/job-name=network-jobset-leader-0
                  controller-uid=88683b1c-7d3b-4108-a28c-a5382e876e01
                  job-name=network-jobset-leader-0
                  jobset.sigs.k8s.io/job-index=0
                  jobset.sigs.k8s.io/job-key=f355a63a96e9dba5c05d688eac605a6c8c1f379f
                  jobset.sigs.k8s.io/jobset-name=network-jobset
                  jobset.sigs.k8s.io/replicatedjob-name=leader
                  jobset.sigs.k8s.io/replicatedjob-replicas=1
                  jobset.sigs.k8s.io/restart-attempt=0
Annotations:      batch.kubernetes.io/job-completion-index: 0
                  jobset.sigs.k8s.io/job-index: 0
                  jobset.sigs.k8s.io/job-key: f355a63a96e9dba5c05d688eac605a6c8c1f379f
                  jobset.sigs.k8s.io/jobset-name: network-jobset
                  jobset.sigs.k8s.io/replicatedjob-name: leader
                  jobset.sigs.k8s.io/replicatedjob-replicas: 1
                  jobset.sigs.k8s.io/restart-attempt: 0
Status:           Running
IP:               <IP_ADDRESS>
IPs:

...

root@VM-0-17-ubuntu:/home/ubuntu# kubectl describe pods pi-26c2f
Name:             pi-26c2f
Namespace:        default
Priority:         0
Service Account:  default
Node:             cluster1-worker2/<IP_ADDRESS>
Start Time:       Sat, 25 May 2024 12:56:50 +0800
Labels:           app=my-app
                  batch.kubernetes.io/controller-uid=ce3589d6-a8fe-4975-a292-e369cbc48b88
                  batch.kubernetes.io/job-name=pi
                  controller-uid=ce3589d6-a8fe-4975-a292-e369cbc48b88
                  job-name=pi
...

I tried to launch a jobset or create pods in the cluster, and I noticed that there is already a 'job-name' label field present

Oh I forgot the Job controller already adds this, nevermind we can close this.


Possible interactions with taldcroft/asciitable?

asciitable works really well with pandas already. I've been using asciitable to format the dataframes out to Latex tables and it's already pretty terse because you can use the to_records method on the DataFrame object.

asciitable.write(dataframe.to_record(), "table.dat", Writer=asciitable.Latex, latexdict=latexdict)

We could always bundle a dictionary of sane defaults, perhaps prepopulate the caption, the title etc and base those on the metadata from the DataFrame object. Perhaps hide the need to call to_record() by subclass it.

Maybe we should create an xtable-lite inside pandas using asciitable (or simpletable in statsmodels) for easily outputting DataFrame to LaTeX. If you wanted to create some fully worked examples of this I'd be happy to include them in the documentation (pull request would be best!)

I think it makes sense to build up a suite of IO adapters to all of the foreseeable formats. Then can decide on the question of the user API. Perhaps augmenting the save method is the way to go (which currently uses pickle, but will eventually use a custom binary format, whenever I can get around to doing that. Pull request away IMHO!


Improve PeeringPhase-Based Replication

Description
This pr includes:

the logic to delete the replicated resources when the GroupVersionResource has no longer to be replicated
a filter in the add and update handlers to avoid the replication of local resource to the remote cluster when the replication is not enabled for that Cluster-GroupVersionResource pair
a handler that is triggered when the replication has to start for a remote cluster. This handler lists the local resources and passes them to the AddHandler

Fixes #573
How Has This Been Tested?

[x] locally on KinD
[x] add unit test

/rebase

/rebase


Add docker support

A new environment needs to be created called docker, which handles the docker backend work.

I'm interested in this feature.  Is there anything I can do to help?

Right now, we're at a standstill at implementing it.
We don't believe that the panel really can support what we need for it properly without making it look poor, so are looking at fixing that entire thing up first.
I am also starting to reconsider how the environments got set up, because each one has copied code, so I'd want to also consolidate what I can.
I had started the implementation, but halted on it because I could not find a good way to handle it on the UI with what docker needs (mainly, their networking at the time) so I've not pursued this farther.
What we are looking for in the end is that we just use docker for the container, and do not do any port-mapping like what Scales did, in which it said it was running on 25565 in the logs, but it was only because it's in a container.
We also have issues where if you need to alter the ports that are available for the container, there is no way to do that currently.
We are waiting for the panel-side of the "server edit" (there's actually 2 pages for it, one for users, and one for admins, as there is fields that users can edit, but some they can't), as that'd be needed for this implementation.


GPC_4T - Chronologicaly Order cts_0 file

cts_0 file should be in chronological order. The instructions that are first executed should before those that are executed later.

Chronologicaly Order crt makes few bugs and cause the program to run infinite

That's very strange.
Bug in HW or SW?


⚠ Processors has degraded performance

In b8255dc, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 155 ms

Resolved: Processors performance has improved in 816717a.


Making genius plural

I assume this is what you meant?

Thanks!

Will update the website soon, Thanks!


Shouldn't Jumpbox in the diagram be replaced with Azure Bastion?

[Enter feedback here]
This diagram pre dates the release of Bastion and I think it should replace jumpboxes in the diagram since thats its purpose.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: be033e7f-d78f-f63f-c9b5-f08130315704
Version Independent ID: d66f5650-fffb-79a6-ee59-40eaad06cd4f
Content: Multi-region N-tier application - Azure Architecture Center
Content Source: docs/reference-architectures/n-tier/multi-region-sql-server.md
Service: architecture-center
Sub-service: reference-architecture
GitHub Login: @MikeWasson
Microsoft Alias: pnp

Thanks for reporting - this issue is under review.  This is a Microsoft Internal DevOps Bug ID AB#238107


Azure Active Directory: Login URL not working

Hi,
I set up SSO between for Salesforce(SP) using Azure Active directory as the Identity provider.

Service provider initiated login works pretty well.

However, when I try to login via Azure login URL ==> https://login.microsoftonline.com/aa98b67f-726a-46b5-9cd5-88a50d8943aa/saml2
I get the error below.
What needs to be done to enable login from Azure Active Directory?
Thanks
d039043

Request Id: a6e0a060-a36b-4acd-9645-30fcd2997900
Correlation Id: ff79c67b-e142-4bb9-8cb6-fe753395de2d
Timestamp: 2019-11-27T16:33:28Z
Message: AADSTS750054: SAMLRequest or SAMLResponse must be present as query string parameters in HTTP request for SAML Redirect binding.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: adf2d1dc-ab4d-5e4a-d18d-a9f4fba5aedb
Version Independent ID: 2a58c27f-19e8-1a9a-f14a-45db73b91cc2
Content: Tutorial: Azure Active Directory Single sign-on (SSO) integration with Salesforce
Content Source: articles/active-directory/saas-apps/salesforce-tutorial.md
Service: active-directory
Sub-service: saas-app-tutorial
GitHub Login: @jeevansd
Microsoft Alias: jeedes

@d039043
Thanks for your feedback! We will investigate and update as appropriate.

@d039043 You are using the wrong URL here. For IDP initiated URL please find the "User Access URL" from Azure AD Application Properties tab. Then you can use that URL in the browser and it will do the SSO. Also alternatively user can login to Access Panel https://myapps.microsoft.com and then click on the application tile to perform the SSO.

#please-close

Thanks @jeevansd
Sorry, but where can I find "Azure AD Application Properties" tab?
Still trying to figure out Azure UI and navigation!

@d039043 In the Azure Portal got to Azure Active Directory -> Enterprise Apps -> Search your app -> Click on the app -> Properties page -> User Access URL


Unclear how to add multiple genetic diagnoses

It's currently unclear in the model how one should register multiple genetic diagnoses (https://github.com/ejp-rd-vp/CDE-semantic-model/blob/master/docs/genetic_diagnosis.md).
When looking at the ShEx, it looks like that this is not modeled out (yet)?

Thanks for the fast reply! What do you mean with multiple lines? From which part of the model on? Role/Process/Output type/Attribute type?

If you're using our templates and CSV transformation, it is one line of CSV per feature.

We're not using the templates / CSV transformation, but try to implement the model ourselves in our EDC system. I hope the model is independent from tooling? :)

I see... then you can start from the process node and create multiple outputs that refer to the sequence variant ID that is an attribute of the patient (output nodes need to have distinct identifiers, but I believe everything else is constrained by its database URI identifier so you don't need to worry about uniqueness for those nodes).  Hope I got that right!  Our transformation just "does the right thing", so I haven't thought about it in a while ;-)

Sorry!  No... multiple unique process nodes also... sorry, they carry (in principle) a timestamp and may have been determined at different times, so there has to be one process per output.  Sorry!!


questions about MRIQC (use output of other pipeline; reports for other MRI image; test example)

Hi all,
I am a beginner and have several questions about MRIQC. 1) How to run MRIQC using the outputs from another pipeline that didn’t use the MRIQC workflow? 2) Can MRIQC generate qualitative reports for other MRI contrasts (besides anatomical and functional), such as diffusion MRI, QSM MRI? 3) Where can I get an test example of MRIQC. I appreciate very much for your time.
Best,
Zhiguo

How to run MRIQC using the outputs from another pipeline that didn’t use the MRIQC workflow?

That is not possible by design. MRIQC only works on original data. The only acceptable preprocessing step is defacing (i.e. removing facial features from anatomical scans) for HIPAA/GDPR requirements.

Can MRIQC generate qualitative reports for other MRI contrasts (besides anatomical and functional), such as diffusion MRI, QSM MRI?

It can't. We would be very happy to incorporate such extensions, should someone contribute them.

Where can I get an test example of MRIQC

If you want data to run MRIQC on your own, https://openneuro.org has lots of datasets in the right BIDS format. If you want to see examples of reports generated by MRIQC -> https://mriqc.s3.amazonaws.com/index.html#openfmri/


Only concatenate after all batches are done

Based on the discussion in #398, I was able to make Llama.eval faster by only calling np.concatenate once all the batches are done.
Performance measurements based on the tester included in the original issue.
Master: (~3137.75ms overhead)
   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
      501    2.977    0.006   87.771    0.175 llama.py:400(eval)

This PR: (~350.9ms overhead)
   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
      501    0.041    0.000   84.657    0.169 llama.py:400(eval)

It works!
Later on, I discovered that when I used my original test scripts and opted for the 7b model instead of the 33b model, and increased the length of the generation to a larger number such as 1500, the discrepancy became much more pronounced. And please note that the discrepancy only becomes apparent if your GPU is powerful enough. For example, if I limit the power of my 4090 to 150W, the speed difference between llama.cpp and llama-cpp-python is very small.
I tried testing the llama.cpp, the master branch and this PR on a 4090, and here are the results:
llama.cpp:
llama_print_timings:      sample time =   622.44 ms /  1500 runs   (    0.41 ms per token,  2409.87 tokens per second)
llama_print_timings: prompt eval time =   686.74 ms /   760 tokens (    0.90 ms per token,  1106.68 tokens per second)
llama_print_timings:        eval time = 13915.99 ms /  1498 runs   (    9.29 ms per token,   107.65 tokens per second)
llama_print_timings:       total time = 15485.60 ms

Master branch:
llama_print_timings:      sample time =   622.33 ms /  1499 runs   (    0.42 ms per token)
llama_print_timings: prompt eval time =    82.49 ms /     9 tokens (    9.17 ms per token)
llama_print_timings:        eval time = 14630.76 ms /  1498 runs   (    9.77 ms per token)
llama_print_timings:       total time = 32872.15 ms

This PR:
llama_print_timings:      sample time =   622.46 ms /  1499 runs   (    0.42 ms per token,  2408.17 tokens per second)
llama_print_timings: prompt eval time =    82.13 ms /     9 tokens (    9.13 ms per token,   109.59 tokens per second)
llama_print_timings:        eval time = 13908.38 ms /  1498 runs   (    9.28 ms per token,   107.70 tokens per second)
llama_print_timings:       total time = 16918.75 ms

This PR improved the total time from 32.8s to 16.9s. Well done!
Thank you so much for greatly improving the speed!

It works!
Later on, I discovered that when I used my original test scripts and opted for the 7b model instead of the 33b model, and increased the length of the generation to a larger number such as 1500, the discrepancy became much more pronounced. And please note that the discrepancy only becomes apparent if your GPU is powerful enough. For example, if I limit the power of my 4090 to 150W, the speed difference between llama.cpp and llama-cpp-python is very small.
I tried testing the llama.cpp, the master branch and this PR on a 4090, and here are the results:
llama.cpp:
llama_print_timings:      sample time =   622.44 ms /  1500 runs   (    0.41 ms per token,  2409.87 tokens per second)
llama_print_timings: prompt eval time =   686.74 ms /   760 tokens (    0.90 ms per token,  1106.68 tokens per second)
llama_print_timings:        eval time = 13915.99 ms /  1498 runs   (    9.29 ms per token,   107.65 tokens per second)
llama_print_timings:       total time = 15485.60 ms

Master branch:
llama_print_timings:      sample time =   624.38 ms /  1499 runs   (    0.42 ms per token,  2400.77 tokens per second)
llama_print_timings: prompt eval time =    81.84 ms /     9 tokens (    9.09 ms per token,   109.96 tokens per second)
llama_print_timings:        eval time = 14081.58 ms /  1498 runs   (    9.40 ms per token,   106.38 tokens per second)
llama_print_timings:       total time = 31905.15 ms

This PR:
llama_print_timings:      sample time =   622.46 ms /  1499 runs   (    0.42 ms per token,  2408.17 tokens per second)
llama_print_timings: prompt eval time =    82.13 ms /     9 tokens (    9.13 ms per token,   109.59 tokens per second)
llama_print_timings:        eval time = 13908.38 ms /  1498 runs   (    9.28 ms per token,   107.70 tokens per second)
llama_print_timings:       total time = 16918.75 ms

This PR improved the total time from 31.9s to 16.9s. Well done!
Thank you so much for greatly improving the speed!


Main node thread blocked when worker thread gets stuck

We attempted a cross-USA route with alternatives enabled with a core factor of 0.8.  This lead to a very long request time.
In the meantime, the Node instance hosting node-osrm locked up and stopped accepting more requests.  It appeared that the main thread was blocked.  The system was built without debugging symbols, so here's all I managed to extract:
(gdb) info threads
  Id   Target Id         Frame
  14   Thread 0x7fd8e1aee700 (LWP 3220) "SignalSender" sem_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:85
  13   Thread 0x7fd8aec90700 (LWP 3228) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  12   Thread 0x7fd8ae48f700 (LWP 3229) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  11   Thread 0x7fd8adc8e700 (LWP 3230) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  10   Thread 0x7fd8ad48d700 (LWP 3231) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  9    Thread 0x7fd8acc8c700 (LWP 3232) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  8    Thread 0x7fd8ac48b700 (LWP 3233) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  7    Thread 0x7fd8abc8a700 (LWP 3234) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  6    Thread 0x7fd8ab489700 (LWP 3235) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  5    Thread 0x7fd8aac88700 (LWP 3236) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  4    Thread 0x7fd8aa487700 (LWP 3237) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  3    Thread 0x7fd8a9c86700 (LWP 3238) "node" 0x00007fd8e0483dde in osrm::engine::SearchEngineData::InitializeOrClearSecondThreadLocalStorage(unsigned int) () from node_modules/osrm/lib/binding/osrm.node
  2    Thread 0x7fd8a9485700 (LWP 3239) "node" pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
* 1    Thread 0x7fd8e1af0780 (LWP 3219) "node" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38

Backtrace on the main thread:
(gdb) bt
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x0000000000a189ba in uv__epoll_wait (epfd=-906766032, events=0x400, nevents=-1, timeout=78373)
    at ../deps/uv/src/unix/linux-syscalls.c:283
#2  0x0000000000a177e6 in uv__io_poll (loop=0xed5b00 <default_loop_struct>, timeout=4999) at ../deps/uv/src/unix/linux-core.c:211
#3  0x0000000000a0b6d5 in uv_run (loop=0xed5b00 <default_loop_struct>, mode=UV_RUN_DEFAULT) at ../deps/uv/src/unix/core.c:317
#4  0x00000000009b2d0d in node::Start(int, char**) ()
#5  0x00007fd8e06ecec5 in __libc_start_main (main=0x9c4180 <main>, argc=2, argv=0x7ffdc9f40ba8, init=<optimized out>, fini=<optimized out>,
    rtld_fini=<optimized out>, stack_end=0x7ffdc9f40b98) at libc-start.c:287
#6  0x00000000005a6929 in _start ()

Backtrace on the one active worker thread that appeared to be stuck:
(gdb) thread apply 3 bt
Thread 3 (Thread 0x7fd8a9c86700 (LWP 3238)):
#0  0x00007fd8e0483dde in osrm::engine::SearchEngineData::InitializeOrClearSecondThreadLocalStorage(unsigned int) ()
   from node_modules/osrm/lib/binding/osrm.node
#1  0x00007fd8e0472e74 in osrm::engine::routing_algorithms::AlternativeRouting<osrm::engine::datafacade::BaseDataFacade>::ComputeLengthAndSharingOfViaPath(unsigned int, int*, int*, std::vector<unsigned int, std::allocator<unsigned int> > const&, int) ()
   from node_modules/osrm/lib/binding/osrm.node
#2  0x00007fd8e04774d7 in osrm::engine::routing_algorithms::AlternativeRouting<osrm::engine::datafacade::BaseDataFacade>::operator()(osrm::engine::PhantomNodes const&, osrm::engine::InternalRouteResult&) () from node_modules/osrm/lib/binding/osrm.node
#3  0x00007fd8e047b8e8 in osrm::engine::plugins::ViaRoutePlugin::HandleRequest(osrm::engine::api::RouteParameters const&, osrm::util::json::Object&) () from node_modules/osrm/lib/binding/osrm.node
#4  0x00007fd8e043428b in osrm::engine::Engine::Route(osrm::engine::api::RouteParameters const&, osrm::util::json::Object&) ()
   from node_modules/osrm/lib/binding/osrm.node
#5  0x00007fd8e040804d in node_osrm::Engine::AsyncRunRoute(uv_work_s*) () from node_modules/osrm/lib/binding/osrm.node
#6  0x0000000000a14564 in worker (arg=<optimized out>) at ../deps/uv/src/unix/threadpool.c:74
#7  0x0000000000a0a202 in uv__thread_start (ctx_v=<optimized out>) at ../deps/uv/src/uv-common.c:323
#8  0x00007fd8e0a98182 in start_thread (arg=0x7fd8a9c86700) at pthread_create.c:312
#9  0x00007fd8e07c547d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

The code for InitializeOrClearSecondThreadLocalStorage looks pretty innocent, so I suspect it has been inlined and the problem is deeper within one of its callees.
It is not clear to me why the node main thread has stopped responding, unless something in InitializeOrClearSecondThreadLocalStorage has caused a deadlock.
At the time this backtrace was taken, there was 1 CPU core pegged at 100% CPU.  It was not obvious which thread was doing the work, I ran bt a few times and nothing seemed to change.

Maybe related to https://github.com/Project-OSRM/node-osrm/issues/109

libuv uses thread local storage since https://github.com/joyent/libuv/issues/904. I wonder if there is some clobbering going on. Did OSRM always use thread local storage or is this a new thing?

We have been always using thread local storage as long as I can remember. We need it for multiple things, bust most importantly the binary heaps that are used in each search are thread local.

Quite a different issue (since this only happened at exit), but linking this nonetheless for possible clues of what clobbering can lead to: https://trac.osgeo.org/gdal/ticket/5509

@danpat - can you confirm which node version this was seen with?

$ node --version
v0.10.42

Is this still an issue?

Closing because we dropped 0.10 support.


mocha tests fail on current version of openpgp

suggested solution to import 'babel-polyfill' in mocha tests <-- didn't work
try babel-require?

https://github.com/ptariche/koa-pgp


Performance optimization

close #10
# run
cargo bench --bench my_benchmark -- --verbose

8 files, each with a size of 10 MB, uploaded in approximately 3.3 seconds.  The speed is 24 MB/s.

In fact, by modifying the code to increase concurrency, it is possible to achieve an upload speed of 30-40 MB/s.
like this:
let (handle_sender, session_receiver) = channel(64);

Thanks for taking the time to do this. This implementation has several synchronization problems, including handles, and the request_id itself can be atomic, but I will fix all this myself in another branch.

Thanks for taking the time to do this. This implementation has several synchronization problems, including handles, and the request_id itself can be atomic, but I will fix all this myself in another branch.

This has been very helpful in my work and I am very much looking forward to this part of the feature


Bring Python current in Travis

Checklist

PR commits have been squashed
All tests pass
Code adheres to contributing guidelines

@boyan-soubachov please review


Making Macros work with Player tokens

It's most certainly an issue on my end but it never hurts to ask.
Id like to make it so when a player token enters a trap area it auto triggers the proper saving throw.
however when I link the standard dex save macro to the triggering area it give me an error
RefferenceError: actor is not defined

You could use token.actor before, but from v1.3.0 actor will work as well for greater compatibility with standard macros.


Error upon project creation

$ fractal project new asd /tmp

DEBUG:asyncio:Using selector: EpollSelector
DEBUG:root:Namespace(batch=False, cmd='project', dataset=None, json=False, name='asd', password=None, path='/tmp', slurm_user=None, subcmd='new', user=None, v=0)
INFO:root:name='asd' project_dir='/tmp' read_only=False slug=None default_dataset_name='default'
DEBUG:httpx._client:HTTP Request: POST http://localhost:8002/auth/token/login "HTTP/1.1 200 OK"
DEBUG:httpx._client:HTTP Request: POST http://localhost:8002/api/v1/project/ "HTTP/1.1 201 Created"
DEBUG:root:201
Traceback (most recent call last):
  File "/data/homes/test01/.conda/envs/fractal-client-v1/bin/fractal", line 8, in <module>
    sys.exit(run())
  File "/data/homes/test01/.conda/envs/fractal-client-v1/lib/python3.8/site-packages/fractal/__main__.py", line 7, in run
    asyncio.run(main())
  File "/data/homes/test01/.conda/envs/fractal-client-v1/lib/python3.8/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/data/homes/test01/.conda/envs/fractal-client-v1/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
    return future.result()
  File "/data/homes/test01/.conda/envs/fractal-client-v1/lib/python3.8/site-packages/fractal/client.py", line 65, in main
    interface = await handle()
  File "/data/homes/test01/.conda/envs/fractal-client-v1/lib/python3.8/site-packages/fractal/client.py", line 55, in handle
    interface = await handler(client, **vars(args))
  File "/data/homes/test01/.conda/envs/fractal-client-v1/lib/python3.8/site-packages/fractal/cmd/__init__.py", line 41, in project
    iface = await project_create(client, batch=batch, **kwargs)
  File "/data/homes/test01/.conda/envs/fractal-client-v1/lib/python3.8/site-packages/fractal/cmd/_project.py", line 36, in project_create
    project = check_response(res, expected_status_code=201, coerce=ProjectRead)
  File "/data/homes/test01/.conda/envs/fractal-client-v1/lib/python3.8/site-packages/fractal/response.py", line 40, in check_response
    return coerce(**data)
  File "/data/homes/test01/.conda/envs/fractal-client-v1/lib/python3.8/site-packages/sqlmodel/main.py", line 506, in __init__
    raise validation_error
pydantic.error_wrappers.ValidationError: 1 validation error for ProjectRead
slug
  field required (type=value_error.missing)

Is Project.slug an attribute we actually use anywhere?

Fixed with https://github.com/fractal-analytics-platform/fractal/commit/c08343c2f742e78531d18965297df1f2a9e22ba4


Leave defaultConfig commented out

The defaultConfig variable is currently unused in the config file. As a part of eslint:recommended, this is disallowed. It would make more sense to leave it commented out, as it exists in the stub, rather than uncommenting it during the cli init process.
For me, personally, I end up making new vue apps relatively often for mockups, which does use estlint:recommended. For most of these projects, I only end up with a couple of changes to the config file and I haven't felt a need to reach for that defaultConfig variable.

Travis said the build failed, but it looks to me like an issue with checking the node vulnerabilities. All of the tests passed otherwise.
(+) Client request error: getaddrinfo ENOTFOUND api.nodesecurity.io api.nodesecurity.io:443

This will not apply after 1.0 release.
I don’t want to speak for Adam, but I don’t see a reason to keep this open.

Yeah gonna close this since it's no longer relevant, thanks though!


Typo in Note

https://docs.microsoft.com/en-us/power-platform/admin/api-request-limits-allocations?source=docs#what-is-a-microsoft-power-platform-request
Current: there is be a small set of system
Edit: there is a small set of system

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 02f2c989-54cf-d81a-aafb-2f4cd6fef108
Version Independent ID: 69811228-6a61-a078-86b3-ed11a6d9c84d
Content: Requests limits and allocations - Power Platform
Content Source: power-platform/admin/api-request-limits-allocations.md
Service: power-platform
GitHub Login: @dileepsinghmicrosoft
Microsoft Alias: dileeps

@crmpatrick
Thanks for bringing this to our attention. This will be corrected soon.


Refactor Mind-AR to ES Modules format. Decouple ThreeJS

In reference to:
https://github.com/hiukim/mind-ar-js/issues/104
I set ThreeJS as a peerDependency:{ "three": ">=0.136.0"} in package.json and marked 'three' as external. This should allow people to use their chosen version of ThreeJS.  Since ThreeJS does not follow SemVer conventions, it's always possible that a future update of ThreeJS could break stuff. We'll just worry about that when it becomes a problem.
I've refactored the code base to be ES Module compliant as this gives us a lot of benefits:

we can use the new Webpack5 method for using workers since 'worker-loader' was deprecated.
Webpack can use ESBuild's "tree-shaking" for optimizing dependencies.
better compatibility with ThreeJS as they have gone the ESM route as well

Breaking Changes:

For people using script tags to import Mind-AR, they will need to do the same for ThreeJS
The reference to window.MINDAR.IMAGE/FACE.THREE has been removed.

If you're wondering why some of the commits mention Vite, I originally forked this to use Vite instead. But decided to commit the ESM work back to the main branch for Webpack5.

@jmschrack
Thanks for the PR! Looking forward to migrate it to ES6 module.
Did a quick check. We might have an issue with the face tracking examples. (using <script> tag)

I tried to change it to import cv from '../libs/opencv.js', but that doesn't work because the opencv.js is built externally, and there is no export.
I'm not sure what's the proper way to handle this.

I recall running into this elsewhere on another project. I'll check it out and see if I can overcome it.

@hiukim I fixed opencv.js  and pushed the fix up.
However, I discovered that webpack externals don't like using source maps in the browser which is what ThreeJS has moved to.  I'll look into it some more.

@hiukim Alright, I finally solved the issue with webpack5 and external ThreeJS in the browser.   Turns out that ES Module support is considered "experimental" in Webpack5 and it took a fair amount of trial and error to find the right combination of config settings to get it to work.
Might I suggest switching away from webpack to Vite instead?   It uses Rollup.js which has better support for building libraries.  https://github.com/jmschrack/mind-ar-js/tree/vite

Strange... All of the face-tracking examples work for me except Example1. (Albeit looks like i missed a type="module" tag on one of my commits. )  The Image-Tracking examples break randomly for me. Sometimes working sometimes not.
After messing around with it for a while, it seems there is a race condition of some sort between modules and AFrame.
When they do work, I get a  __webpack_modules__[moduleId] is not a function  error which I can't seem to dig up any info on other than this:  https://github.com/webpack/webpack/issues/13951  Which is funny to me because both of them stated they solved the issue by switching to Rollup.js which is what Vite uses.

@jmschrack I did a quick trial on your esm branch: https://github.com/jmschrack/mind-ar-js/tree/esm and seems like all examples work, except the image-tracking three.html example

All aframe examples seems good to me with your multi-webpack configs.  Maybe we don't need the vite-webpack hybrid?

@hiukim
Haha, you make it sound like it's 80% of the way there!  👍  But 4 out of 5 of your examples use A-Frame though, so to me it's only 50% there. 👎
I use ThreeJS every day professionally, so I'm biased to ensuring that it works as well.  ;)
The problems with A-Frame and ThreeJS are this:

ThreeJS requires module support. Which as of Webpack 5.75.0 is not fully supported. (In our case, it breaks when it tries to load the WebWorkers).

This requires us to use Rollup.js (optionally via Vite)

A-Frame was not made for modules and has a non-standard setup which does not work well with modules.  (Which is one of the reasons why they don't use the official ThreeJS under the hood.)

This optimally prefers Webpack.
It can work with modules (Rollup.js)

I did push an update on my vite branch that, as of now, has all of the A-Frame & ThreeJS examples working properly.
Before MindAR registers the custom systems/components with AFrame, it checks if the document DOM has already been parsed. If so, after registering, it reloads the DOM via document.body.innerHTML=document.body.innerHTML.  It's not a bad solution, but my instincts don't like it.
As for now, we can go forward with Vite instead because we can get both working with Vite as opposed to only A-Frame with Webpack.        (I think the best solution is the hybrid Webpack+Vite approach, personally.  But I'll defer to you on that.)

@hiukim That's because FaceTarget doesn't use a WebWorker.
The problem comes down to the ImageTracking's Controller Worker.  If I use experimental.outputModule=true, I get Uncaught TypeError: Failed to execute 'importScripts' on 'WorkerGlobalScope': Module scripts don't support importScripts().   If instead I use target="web" I get
Uncaught TypeError: __webpack_modules__[moduleId] is not a function at ./src/image-target/matching/matching.js (matcher.js:51:2) at ./src/image-target/matching/matcher.js (hough.js:174:2) at ./src/image-target/controller.worker.js (src_image-target_controller_worker_js.js:10:78)  (I also can't get webpack to accept the external ThreeJS either in this mode)
I think this is a dead end for now. (Maybe a future webpack update will fix this?)
The two phase build process of Vite to generate the core&three libraries and then webpack to generate the aframe compatible libraries works fine, and requires no major code changes.  Maybe in the future Vite or Webpack will update to solve this, but for now this is the simplest solution that doesn't require writing custom code to band-aid missing feature of webpack.


Revert bad merges for CI

What changes were proposed in this pull request?
No changes.  Revert of bad patches
How was this patch tested?
mvn checkstyle and rat checks.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/1558/
Test FAILed.
Test FAILured.


Can I have Nuxt ignore a path?

I'm trying to use GraphQL's subscriptions-transport-ws with Nuxt. It appears to return a plain HTTP.Server, not Connect middleware, and it's mounted by setting the path attribute when constructing. So IOW I can't use app.use("/subscriptions", ...) to mount the server.
I think I'm creating it correctly, but I think nuxt.render is intercepting all routes, and since I can't use this server as middleware, I can't insert it into the chain before Nuxt grabs everything.
Is there any way to tell nuxt.render to pass through routes at a certain path?
One way I thought to do this was to set up middleware to intercept paths starting with /subscriptions. I then thought that perhaps I could tell Nuxt to stop processing the request altogether and not even return its error page, but I couldn't see a way to do this. Maybe the Connect middleware's next() function can be attached to the context on the server? I matched the path, but couldn't halt processing by Nuxt.

@ndarilek I think you should better adding nuxt middle-ware as last one. Also in next release (~tomorrow) nuxt will expose connect app instance for nuxt.render :)

The thing I'm trying to add isn't middleware, so I don't think the
middleware matching rules apply.

So would you please explain more about your use case are you using that inside express?

Here are the docs:
http://dev.apollodata.com/tools/graphql-subscriptions/express.html
Note that new SubscriptionServer(...) isn't being mounted like
middleware, presumably it is consuming the HTTP.Server created from the
Express app and intercepting everything sent to /subscriptions. Nothing
I do can get this working with my Nuxt server, so I think I need a way
to tell Nuxt to ignore /subscriptions even though it is intercepting all
other routes.

What template are you using with Nuxt?

#504

What does this have to do with this issue?
I'm frustrated that this issue has been closed twice now without
resolution. If there is no intention of letting me tell the Nuxt
middleware to ignore a path, then can someone please say so so I can
rewrite my app to not use Nuxt? Otherwise, please don't close this just
because I'm using Apollo and Vue-apollo uses Apollo.
Thanks. If I've missed how this issue is resolved by the link then I do
apologize. This issue has nothing to do with making Vue-apollo work,
which I already have achieved on several projects.

Thanks for re-opening.
I'd really like to see a fix for this and am willing to try implementing
it, especially as I don't even know for certain whether it will make the
Apollo subscription server accessible. I just need a bit of guidance.
There are two ways I can imagine implementing this. One would be this in
nuxt.config.js:
   ignorePaths: [
     "/subscriptions"
   ]

This would tell Nuxt's server to ignore the list of paths and simply
call next() as soon as they're matched.
Another option would be middleware like the following:
middleware/apollo-subscriptions.js:
export default ({route, next}) => {
     if(route.path.startsWith("/subscriptions"))
     next()
}

This would involve modifying contexts to contain the Connect next()
function and expose it to middleware. It may also be necessary to expose
a function which, when called, tells the Nuxt middleware that processing
should be stopped. Maybe the original next() function can be wrapped
to do this.
Open to any thoughts on these solutions, or to any others I may have
missed. If I successfully implement something and it doesn't let me
connect to a Nuxt-hosted Apollo subscription server then I'll close this
issue and keep debugging.

Have you tried to use Nuxt programmatically with the express-template?
By using Nuxt programmatically, we will be able to create some routes trigger before nuxt.render or even better to use nuxt.renderRoute in your routing file.

@ndarilek here another approach without vue-apollo: https://gist.github.com/dohomi/e101dea40cb4483b1d6e0dd81f9ce788 please follow the link to the original project by Pier. I used this pure apollo-client approach combined with vuex.. the subscription works already but only on client side yet..

@dohomi is there a write up anywhere related to implementing this? I'm new to nuxt and just starting out on using graph.cool. There seems to be so many bits of examples floating around right now, it's becoming impossible to know which one to follow :/

@ImTheDeveloper its basically up to you. If you follow the link check out the project of Pier. Otherwise with the most recent rc3 Nuxt has an example to use it with vue-apollo:
https://github.com/nuxt/nuxt.js/tree/dev/examples/vue-apollo

Thanks @dohomi I assume sticking with the official examples might at least provide something common to cling on to.


A little worried(; · ∀ ·)

Although I am allowed to use because it is very favorite.
But ...
<script> alert ('xss') </ script>
... From being able to run the script such as it's the OK?

so... it's not committed yet?


Replace Netlify Lighthouse

Description
The main problem when we put the performance test on the build process is that it will slow down our build time. So the idea is to differentiate the process.
Move the performance check from build time to the PR creation without blocking the build process. It block the PR, not the build process.
Proposal
Try to check Lighthouse-CI on GitHub Action: https://github.com/GoogleChrome/lighthouse-ci

@zainfathoni Request to add SECRET on the Github Action
ref: https://github.com/GoogleChrome/lighthouse-ci/blob/main/docs/getting-started.md#overview

Request install App ini ya:
https://github.com/GoogleChrome/lighthouse-ci/blob/main/docs/getting-started.md#github-app-method-recommended

App installed and secrets.LHCI_GITHUB_APP_TOKEN set Mas @mazipan. Thanks for working on it!


How:
Use renderIntoDocument in snapShot testing instead of render to get the entire DOM tree. Portal mounted in the body is then accessed to check if content within the portal is mounted.

Checklist:

[ ] Documentation N/A
[X] Tests
[ ] Ready to be merged

We've had test passing on master. I believe the travis cache was causing issues. We'll need to introduce lock files.


Interchange prototype conflict

Hello!
First of all, I am sorry for opening this issue cause it is not since interchange has not been implemented yet. So this is really a question - have you been successful with interchange, cause in my store it does not work with prototype and for some reason just removes the img tag altogether.
I would appreciate any help on this topic!
Thank you!

Closing because we are moving to another framework


fixed queryProcessInstanceListPaging query slow

because queryProcessInstanceListPaging has contain longtext type field by instance.*,so queryProcessInstanceListPaging query slow , but longtext field not used.
Tips

Thanks very much for contributing to Apache DolphinScheduler.
Please review https://dolphinscheduler.apache.org/en-us/community/index.html before opening a pull request.

What is the purpose of the pull request
(For example: This pull request adds checkstyle plugin.)
Brief change log
(for example:)

Add maven-checkstyle-plugin to root pom.xml

Verify this pull request
(Please pick either of the following options)
This pull request is code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added dolphinscheduler-dao tests for end-to-end.
Added CronUtilsTest to verify the change.
Manually verified the change by testing locally.

工作流实例查询慢，最后定位sql 时发现是 查询了task_json，而task_json 是longtext，在数据量大的时候，严重影响性能。

Codecov Report

Merging #3893 into dev will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev    #3893      +/-   ##
============================================
- Coverage     40.36%   40.34%   -0.03%
+ Complexity     2945     2942       -3
============================================
  Files           460      460
  Lines         21817    21817
  Branches       2650     2650
============================================
- Hits           8806     8801       -5
- Misses        12176    12178       +2
- Partials        835      838       +3

Impacted Files
Coverage Δ
Complexity Δ

...e/dolphinscheduler/remote/NettyRemotingClient.java
50.00% <0.00%> (-2.78%)
9.00% <0.00%> (-2.00%)

...dolphinscheduler/remote/future/ResponseFuture.java
79.66% <0.00%> (-1.70%)
17.00% <0.00%> (-1.00%)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 08dc691...fd5f927. Read the comment docs.

hi, thank you very much for your contribution,such changes are not bugs, we should clarify a boundary between bugs and enhancements.