text:
Accessibility: NVDA reads entire list of suggestions in intelliSense rather than currently focused one

VSCode Version: 1.44 Insider
OS Version: Windows 10
build 19577
Steps to Reproduce:

Open Code, create a file you have a language extension installed for and bring up the suggestions panel by typing.
NVDA will read the entire list of suggestions, followed by the currently selected one, followed by "[index] of ]max]".
What follows is a bit of log output from NVDA after , in a flask-based Python file, the phrase "fr"  is typed.

IO - speech.speak (13:42:49.990) - MainThread (8652):
Speaking [LangChangeCommand ('en'), 'filter float for format from frozenset from_conf_import_settings from_trans_import_gettext from_trans_import_ngettext from_trans_import_pgettext from_trans_import_ugettext_lazy for', 'list']
IO - speech.speak (13:42:50.007) - MainThread (8652):
Speaking [LangChangeCommand ('en'), 'filter', '13 of 24']

Does this issue occur when all extensions are disabled?: Yes
@isidorn  I strongly suspect this might have to do with the way issue 10777 was resolved, could you look into this?
@jcsteh Does this have something to do with the way NVDA handles role-list?

I don't use VS Code, so I can't comment on specifics here. I can't think of
a case where NVDA would itself descend into lists and read descendants.
However, it's possible that Chromium is calculating the name from
descendants if the list itself gets focused, though that would surprise me
since I believe that wouldn't be spec compliant.

@zersiax I can reproduce this issue, thanks for reprorting it. When did this exactly break, might you know? Why do you thing issue #10777 is related, I think you have a wrong issue number?
@leonardder might it be possible that there was a change in NVDA that broke this?
Please note that we changed the VS Code role to be application and that the aria-selected is now set a bit differently. However reverting any of those changes does not help here.
I am open for ideas.

@isidorn my bad, I meant issue 90876. The number I gave initially is the issue on NVDA's side :)
So to clarify, when we went from treeviewItems to ListItems because it was causing trouble, do you know if this was already happening as well?

@zersiax I have just verified and you are correct. The actual problem is that the role=list, once I change that to be role=tree all is good. The actual items having the role=listitem does not seem to be a problem.
I can of course make the change and revert our correct behavior of setting role=list. Though it would be more interesting if this can be fixed on the NVDA side and we remain with the correct role.
Otherwise we would use the role=tree only on windows so NVDA plays nice.
@leonardder @jcsteh let me know what you think. Thanks a lot!

I think the problem is that you set the role to list, whereas it should be listbox. See https://www.w3.org/WAI/PF/aria/roles#listbox

@leonardder you are correct. I just verified this indeed fixes the issue.
I have pushed a fix. @zersiax let me know if vscode insiders is good for you tomorrow. And thanks for creating this issue!

Actually after reading more about the roles here https://www.w3.org/WAI/PF/aria/roles#listbox
The role listboxis not so fitting for our lists. The role list is better.
Though I do understand that listbox might be better just for inteliSense, however we do not respect the spec that the children of that element should be option since for us the children are listitem.
@leonardder so my question is should the children of inteliSense be set to the role option

Actually after reading more about the roles here https://www.w3.org/WAI/PF/aria/roles#listbox
The role listboxis not so fitting for our lists. The role list is better.

Why do you think so? The role listbox IMO is the best choice when you have to deal with selecting one or more items in a list, whereas the list role is more for static lists. May be someone with more ARIA knowhow such as @marcozehe can help us out.
Here are the accessibility mappings. You can see t hat list maps to a readonly list, whereas listbox does not. Read-only here means that you can't select entries in the list.

@leonardder so my question is should the children of inteliSense be set to the role option

IN the case of listbox, yes, sorry for missing that.

Got it. So doing the following change: static tree will have role tree and children treeitem
static lists will have role list and children listitem
InteliSense will have role listbox and children option

@leonardder Yes, your assessment is correct. For an interactive list, where a user makes a choice, role "listbox" for the container and role "option" for the actual items are the correct roles to use. The actual thing getting focus, or being targeted by aria-activedescendant if that is used, is the visually highlighted element with role "option". That obviously needs to change with each press of the arrow keys, as the visual highlight also moves.
I believe the design pattern most closely resembling what you need is combobox, with either the manual selection or Selection with inline autocomplete variants. The difference is that your editable aria is the code editor, not a single line search or such. But Twitter, Facebook, and others have examples where this is possible inline, so there is precedence for this kind of autocomplete.

@MarcoZehe thanks a lot. We have just made the change to use listbox for our "interactive lists" or the inteliSense. You can try it out with vscode insdiers from Monday.

@zersiax did you get a chance to try this out in VS Code insiders? Asking because we would like to add a verified label to this issue if it got fixed for you? Thanks

Hi :) Yep, I can see this is working now. The only thing that still makes intellisense a little cumbersome now is the issue that when the list gets dismissed or updated, the filename etc. gets read out by NVDA but I'm pretty sure there is already a separate issue for that somewhere :) This one's fixed, though, thanks @isidorn

@zersiax Great, thanks adding verified label.
For the other issue we have this one tracking it https://github.com/microsoft/vscode/issues/89098 which is tracked on the NVDA side here https://github.com/nvaccess/nvda/issues/10887

authors: MarcoZehe isidorn jcsteh leonardder zersiax


text:
Allow extensions to contribute to the VS Code welcome page

Refs: #93604
@alefragnani Can you provide more details on what you are looking for here?

Hi @eamodio ,
Sure, I’m talking about https://github.com/microsoft/vscode/issues/63152, created by @misolori to explore improvements in the Welcome Page. I added this comment, asking to be able to contribute to some sections in the Welcome Page.
I found a few others issues which requests other improvements/customizations to the Welcome Page as well, like https://github.com/microsoft/vscode/issues/63057 And https://github.com/microsoft/vscode/issues/67600.
Thank you

source: gharchive/issue

authors: alefragnani eamodio

repo: microsoft/vscode

license: MIT

license_type: permissive

license_source: github-api


text:
Test NotebookConcatDocument

Refs: https://github.com/microsoft/vscode/issues/96279

[x] anyOS @weinand
[ ] anyOS @sbatten

Complexity: 4
Authors: @jrieken, @misolori, @rebornix, @roblourens

To help extension authors integrate existing language services with notebooks we have added a "concat document". That is all code cells of a notebook represented as single document.

Install https://marketplace.visualstudio.com/items?itemName=ms-vscode.vscode-github-issue-notebooks so that you have notebook sample

Now, use the vscode.notebook.createConcatTextDocument-API and to implement some fake language features, e.g. write a fake go-to-definition feature that uses positionAt and locationAt-API
The general flow is like this

keep a concat document around and implement fake go-to-def using that document (e.g jump to a random line)
register a language feature for notebook cells, e.g {scheme: vscode-notebook}-selector
map a cell onto the concat document (request) and map the result back onto cells

fyi - use the vscode-dts-utility to use the latest version of vscode.d.ts and/or vscode.proposed.d.ts

@jrieken Could the "NotebookConcatDocument" approach make existing language features automatically available to notebooks?
E.g. the JavaScript GoTo-Definition could work if:

a notebook supports the "NotebookConcatDocument"
the DocumentSelector of the "NotebookConcatDocument" matches the existing language feature
and the language feature support is "pure", that means it only accesses resources via a document

Yeah, maybe. The problem is that a concat document isn't a document, e.g it doesn't appear in the list of open text documents or in the respective events. So, a "magic integration" won't be possible - unfortunately.
The benefit of the concat document is that everything appears to be within one file, e.g there is no need for export/import statements (which will feel alien in notebooks) in order to reference variables and functions from other cells. However, that comes at the cost of isolation. If you have two cells that define different variants of the same (named) function you will have a conflict..

authors: jrieken weinand


text:
Add spaces to required fields

This pull request adds spaces to make it easier to create bug reports.

#161755

source: gharchive/pull-request


text:
Added support for custom icons in various editor inputs

This PR introduces the ability to use codicons in various editor inputs. The changes include modifications to the editor input classes to accept a ThemeIcon object, which can be used to set a custom icon.
#199965
#200147

Great small change, here are more editors to consider adopting:

WorkspaceTrustEditorInput
WalkThroughInput
GettingStartedInput
TerminalEditorInput
RuntimeExtensionsInput
DissassemblyViewInput
ChatEditorInput

Great small change, here are more editors to consider adopting:

WorkspaceTrustEditorInput
WalkThroughInput
GettingStartedInput
TerminalEditorInput
RuntimeExtensionsInput
DissassemblyViewInput
ChatEditorInput

Added support for all EditorInputs except WalkThroughInput and GettingStartedInput as these set an svg for which we do not have a codicon.

I only partially supported TerminalEditorInput as I am not sure how to support URI icons. Also, I don't support changing the colour of the icon provided by an EditorInput yet which I am planning on looking into in a follow up PR.

If you don't do color yet we should move the terminal back to the old system until then as it would be a regression

I will be looking into icon theme colours tomorrow. For the TerminalEditorInput, the icon colours should still be working after this PR as the colour classes are still being added to the extra classes as before. If it does not work then it's due to changing the CSS classes which are added to the div. In that case I'll just need to make a small adaption.

authors: Tyriar benibenj bpasero


text:
Title: Unexpected Application Shutdown

Type: Performance Issue
Steps to Reproduce:
Open the application.
Navigate to the ‘Settings’ menu.
Click on the ‘Update’ button.
Actual Result: The application shuts down unexpectedly with an error message “Application has stopped working”.
Expected Result: The application should start the update process without any errors.
Additional Information: This issue occurs on both Windows and macOS versions of the application. It seems to be more frequent when the system is under heavy load.
VS Code version: Code 1.83.0 (e7e037083ff4455cf320e344325dacb480062c3c, 2023-10-03T16:12:16.321Z)
OS version: Windows_NT x64 10.0.22631
Modes:

Duplicate to this https://github.com/microsoft/vsmarketplace/issues/785

authors: madhurivadaligithub markjpT

repo: microsoft/vsmarketplace


text:
MemoryBuffer example is potentially unsafe

I see some potential issues in the MemoryBuffer example which was added in https://github.com/microsoft/windows-rs/pull/756:

If I get a mutable slice (like it's done in the example) then I must ensure that no one else accesses the memory at the same time. Nobody stops me from calling as_slice twice on the same IMemoryBufferReference ... so the as_slice function should be marked unsafe. Unfortunately even changing the input to &mut IMemoryBufferReference doesn't help, because WinRT types themselves are just references and I can easily get another one referencing the same underlying object ...
Even if I change the output to an immutable slice (and in my case I only need read access, so I modified the code accordingly), I would need to make sure that no one else writes to the buffer at the same time while my immutable slice exists. Is there a guarantee for IMemoryBufferReference that the contents don't change while I hold the reference? Does IMemoryBufferReference come with any guarantees by itself, or does that depend on where I got the IMemoryBufferReference from? (Note that there is a similar issue with mmap-like APIs, so e.g. this wrapper function is marked unsafe.)
Lastly, I'm not sure from the documentation of https://docs.microsoft.com/en-us/windows/win32/winrt/imemorybufferbyteaccess-getbuffer whether the pointer to the data might be NULL if the buffer is empty. But I don't see any indication that it cannot, so you need to make sure that NULL is not passed to std::slice::from_raw_parts[_mut] because that is not allowed. NonNull::dangling() can be used instead (when the length is 0).

You're right of course. I've updated (#822) the example.

authors: Boddlnagg kennykerr

repo: microsoft/windows-rs


text:
Wrong locale used by winget-cli

Brief description of your issue
My default language in system is Polish, Japanese language pack is installed as secondary (I'm learning Japanese).
Winget ignore Polish package and print all messages in japanese. Even though I have the locale set to pl-PL in the system and json winget configuration.
Polish keyboard is enabled and set as default (POL in dock near clock)
Steps to reproduce
Install any package eg.:
winget install -e --id=JesseDuffield.lazygit

Expected behavior
Message in polish or english.
Actual behavior
Message in japanese:
➜ Get-WinSystemLocale
LCID             Name             DisplayName
----             ----             -----------
1045             pl-PL            polski (Polska)

➜ winget install -e --id=JesseDuffield.lazygit
既存のパッケージが既にインストールされています。インストールされているパッケージ...をアップグレードしようとしています
利用可能なアップグレードが見つかりませんでした。
構成されたソースから入手できる新しいパッケージ バージョンはありません。

Environment
➜ winget --info
v1.6.3482 の Windows パッケージ マネージャー
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22631.2861
システム アーキテクチャ: X64
パッケージ: Microsoft.DesktopAppInstaller v1.21.3482.0

Winget ディレクトリ
--------------------------------------------------------------------------------------------------------------------------------------
ログ                                      %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir
ユーザー設定                              %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json
ポータブル リンク ディレクトリ (ユーザー) %LOCALAPPDATA%\Microsoft\WinGet\Links
ポータブル リンク ディレクトリ (マシン)   C:\Program Files\WinGet\Links
ポータブル パッケージ ルート (ユーザー)   %LOCALAPPDATA%\Microsoft\WinGet\Packages
ポータブル パッケージ ルート              C:\Program Files\WinGet\Packages
ポータブル パッケージ ルート (x86)        C:\Program Files (x86)\WinGet\Packages
インストーラのダウンロード                %USERPROFILE%\Downloads

リンク
-----------------------------------------------------------------------------------
プライバシーに関する声明    https://aka.ms/winget-privacy
使用許諾契約                https://aka.ms/winget-license
サード パーティに関する通知 https://aka.ms/winget-3rdPartyNotice
ホーム ページ               https://aka.ms/winget
Windows ストアの使用条件    https://www.microsoft.com/en-us/storedocs/terms-of-sale

管理者設定                                状態
----------------------------------------------
LocalManifestFiles                        無効
BypassCertificatePinningForMicrosoftStore 無効
InstallerHashOverride                     無効
LocalArchiveMalwareScanOverride           無効

Settings.json:
{
   "$schema": "https://aka.ms/winget-settings.schema.json",
   "installBehavior": {
        "preferences": {
            "locale": [ "pl-PL", "en-US" ]
        }
    },
    "visual": {
        "progressBar": "rainbow"
    }
}

I am facing identical issue. My setup is identical to OP's (Polish locale enabled and used in everyday work, Japanese language installed for learning purposes).
I partially resolved the issue by regrouping languages in Settings -> Language -> Preferred Languages. I have three languages installed: Polish, Japanese and English and they were listed in that order. I moved the English language higher, so now my order is Polish, English, Japanese. After reordering and restarting the terminal, winget's language is now set to English.
My environment:
winget --info
Windows Package Manager v1.8.1911
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.19045.4651
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.23.1911.0

I have the same issue, Polish installed, with Japanese in the background. I can confirm that the trick with installing US locale and setting Japanese as the third language in the list works ok.
My env (called both before and after applying the trick)
`> winget --info
v1.9.25200 の Windows パッケージ マネージャー
Copyright (c) Microsoft Corporation. All rights reserved.
Windows: Windows.Desktop v10.0.26100.2605
システム アーキテクチャ: X64
パッケージ: Microsoft.DesktopAppInstaller v1.24.25200.0
Winget ディレクトリ
ログ                                      %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir
ユーザー設定                              %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json
ポータブル リンク ディレクトリ (ユーザー) %LOCALAPPDATA%\Microsoft\WinGet\Links
ポータブル リンク ディレクトリ (マシン)   C:\Program Files\WinGet\Links
ポータブル パッケージ ルート (ユーザー)   %LOCALAPPDATA%\Microsoft\WinGet\Packages
ポータブル パッケージ ルート              C:\Program Files\WinGet\Packages
ポータブル パッケージ ルート (x86)        C:\Program Files (x86)\WinGet\Packages
インストーラのダウンロード                %USERPROFILE%\Downloads
リンク
プライバシーに関する声明    https://aka.ms/winget-privacy
使用許諾契約                https://aka.ms/winget-license
サード パーティに関する通知 https://aka.ms/winget-3rdPartyNotice
ホーム ページ               https://aka.ms/winget
Windows ストアの使用条件    https://www.microsoft.com/en-us/storedocs/terms-of-sale
管理者設定                                状態
LocalManifestFiles                        無効
BypassCertificatePinningForMicrosoftStore 無効
InstallerHashOverride                     無効
LocalArchiveMalwareScanOverride           無効
ProxyCommandLineOptions                   無効
DefaultProxy                              無効`
`> winget --info
Windows Package Manager v1.9.25200
Copyright (c) Microsoft Corporation. All rights reserved.
Windows: Windows.Desktop v10.0.26100.2605
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.24.25200.0
Winget Directories
Logs                               %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir
User Settings                      %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json
Portable Links Directory (User)    %LOCALAPPDATA%\Microsoft\WinGet\Links
Portable Links Directory (Machine) C:\Program Files\WinGet\Links
Portable Package Root (User)       %LOCALAPPDATA%\Microsoft\WinGet\Packages
Portable Package Root              C:\Program Files\WinGet\Packages
Portable Package Root (x86)        C:\Program Files (x86)\WinGet\Packages
Installer Downloads                %USERPROFILE%\Downloads
Links
Privacy Statement   https://aka.ms/winget-privacy
License Agreement   https://aka.ms/winget-license
Third Party Notices https://aka.ms/winget-3rdPartyNotice
Homepage            https://aka.ms/winget
Windows Store Terms https://www.microsoft.com/en-us/storedocs/terms-of-sale
Admin Setting                             State
LocalManifestFiles                        Disabled
BypassCertificatePinningForMicrosoftStore Disabled
InstallerHashOverride                     Disabled
LocalArchiveMalwareScanOverride           Disabled
ProxyCommandLineOptions                   Disabled
DefaultProxy                              Disabled`

authors: parasit ukaszg yaci

repo: microsoft/winget-cli


text:
winget list incorrect version after winget install

Brief description of your issue
After installing Microsoft.ServiceFabricSDK version 7.0.1949, the version shown by winget list is 7.0.1949.9590.
Not exactly sure if it's a package issue or an issue with WinGet.
May be related:
When I winget configure with the following resource, it always thinks the package is not installed (even after I manually winget install):
# yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2
properties:
  resources:
    - resource: Microsoft.WinGet.DSC/WinGetPackage
      directives:
        description: Install Service Fabric SDK
        allowPrerelease: true
      settings:
        id: Microsoft.ServiceFabricSDK
        source: winget
        version: "7.0.1949"
        installMode: Default
  configurationVersion: "0.2.0"

Steps to reproduce
winget install -e --id Microsoft.ServiceFabricSDK --version 7.0.1949 --accept-package-agreements

Expected behavior
The version should be 7.0.1949.
Actual behavior
> winget list -e --id Microsoft.ServiceFabricSDK
Name                               Id                         Version       Source
-----------------------------------------------------------------------------------
Microsoft Azure Service Fabric SDK Microsoft.ServiceFabricSDK 7.0.1949.9590 winget

Environment
Windows Package Manager v1.7.10582
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22631.3155
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.22.10582.0

Related: https://github.com/microsoft/winget-pkgs/issues/142677

authors: cthlo stephengillie


text:
Please confirm these before moving forward

[X] I have searched for my issue and not found a work-in-progress/duplicate/resolved issue.
[X] I have not been informed if the issue is resolved in a preview version of the winget client.

Category of the issue
Other
Brief description of your issue
Winget search lists the latest version as 5.1.7, when version 5.1.8 is the latest version and is the version that winget installs. In addition, winget fails to recognize the version of the package, but as I understand it that's likely an issue for the developer.
Steps to reproduce
Run winget install -e --id AngusJohnson.ResourceHacker
Actual behavior
Winget lists 5.1.7 as the latest version, but correctly installs 5.1.8 which is the real latest version.
Expected behavior
Winget to list 5.1.8 as the latest version, and ideally recognize the version number in winget list.
Environment
PS C:\Users\ryang> winget --info
Windows Package Manager (Preview) v1.3.1611-preview
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22000.739
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.18.1611.0

Logs: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir

Links
---------------------------------------------------------------------------
Privacy Statement   https://aka.ms/winget-privacy
License Agreement   https://aka.ms/winget-license
Third Party Notices https://aka.ms/winget-3rdPartyNotice
Homepage            https://aka.ms/winget
Windows Store Terms https://www.microsoft.com/en-us/storedocs/terms-of-sale
PS C:\Users\ryang>

Screenshots and Logs
https://i.imgur.com/qj4C8FD.png
WinGet-2022-06-14-20-38-07.095.log
WinGet-AngusJohnson.ResourceHacker.5.1.7-2022-06-14-20-38-24.187.log

Version Number was based off from the DisplayName https://github.com/microsoft/winget-pkgs/pull/42354 but I'll update tomorrow so people don't get confused.
I think DisplayVersion fixes are implemented in the latest winget-cli preview so it's only the manifest that needs to be updated to add AppsAndFeaturesEntries.

Close with reason: Resolved by 63650;

authors: Hitmanforrent ItzLevvie Trenly

repo: microsoft/winget-pkgs


text:
[Package Request]: add EarTrumpet Dev

Package Requested

[X] I would like someone else to build the manifest.
[ ] I would like help so I can submit the manifest.
[X] I have performed a search and couldn't find this package.
[X] I have checked that the installer for this package is not contained in a .zip file
[X] I think there is a new version available and I have provided the URL.

Please provide the following information
Publisher: File New Project
Publisher Url: https://github.com/File-New-Project
Package Name: File-New-Project.EarTrumpet.Dev
Description: EarTrumpet is a powerful volume control app for Windows. (Dev Version)
Package Version: 2.20.6
Installer URL: https://install.eartrumpet.app/dev/EarTrumpet.Package_2.2.0.6_x86.appxbundle
Current Package Identifier (for new versions):
https://install.eartrumpet.app/dev/

@riverar do you have an opinion here?
I'm not sure if it's a different package family name or if it would cause conflict with the upgrade scenario (assuming you're OK with having it added to the community repository).

Thanks for pinging me.
Both dev and non-dev have the same identity (40459File-New-Project.EarTrumpet) and cannot be installed simultaneously, so I don't think this will work well in winget community repository at this time. I'll take an action to give dev builds identity, then can revisit.

authors: KrisSchneider denelon riverar


text:
Remove Twilio.Authy version 1.8.3

URL is 404
Microsoft Reviewers: Open in CodeFlow

@wingetbot run

authors: ImJoakim Trenly


text:
Add version: OpenJS.NodeJS.Nightly version 21.0.0-nightly20230703acf071e9d5

Pull request has been created with Komac v1.8.0 :rocket:
Microsoft Reviewers: codeflow:open?pullrequest=https://github.com/microsoft/winget-pkgs/pull/111148&drop=dogfoodAlpha

After making sure following pr has been merged, you can merge this

PR that need to merge
#111122

After making sure following pr has been merged, you can merge this

PR that need to merge
#111122

After making sure following pr has been merged, you can merge this

PR that need to merge
#111122

After making sure following pr has been merged, you can merge this

PR that need to merge
#111122

@jedieaston


text:
Update EpicGames Launcher to 1.3.82.0

[ ] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?
[x] Have you tested your manifest locally with winget install --manifest <path>?
[x] Does your manifest conform to the 1.5 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

@microsoft-github-policy-service agree


text:
New version: foldynl.QLog version 0.33.0

Pull request has been created with komac v2.1.1 :rocket:

For moderators
This account is automated by Github Actions and the source code was created by CoolPlayLin. If you have any questions about any pull request, don't hesitate to ping Exorcism0666.

[!warning]
With the new version of Komac, numerous Pull Requests may contain bugs or unwanted elements. If such issues arise, please tag russellbanks so that these bugs can be addressed in future updates.

[!important]
Please carefully review these Pull Request before merging. If it is a Pull Request for removing incorrect content and the URLs are issue, free upon manual checking, please close this Pull Request directly. (It is best to inform Exorcism0666 of the closure.)

良い一日をお過ごしください！

Automatic Validation ended with:

2024-03-08T15:30:52.3483237Z ##[error] Manifest Error: DisplayVersion declared in the manifest has overlap with existing DisplayVersion range in the index. Existing DisplayVersion range in index:  [ [0.32.0, 0.32.0]]

(Automated response - build 869.)


text:
Remove Microsoft.AzureInformationProtectionViewer 2.18.26.0 to Microsoft.Azure.InformationProtection.Viewer 2.18.26.0

Microsoft Reviewers: Open in CodeFlow

URL: - https://download.microsoft.com/download/1/1/1/11105C02-C1EB-4AD4-901F-4DAD290ED9CC/AzInfoProtectionViewer_UL.exe
Invalid URI: The URI scheme is not valid.
(Automated message - build 637)

authors: Trenly stephengillie


text:
the-sz.FlashBuilder version 1.47

Checklist for Pull Requests

[ ] Have you signed the Contributor License Agreement?
[ ] Is there a linked Issue?

Manifests

[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] This PR only modifies one (1) manifest
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.6 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Hi @the-sz,
The package didn't pass a Defender or similar security scan. This might be a false positive and we can rescan tomorrow.
(Automated response - build 877.)

Automatic Validation ended with:

Installation failed with exit code -1978335187
2024-04-21 01:04:04.787 [FAIL] Installer failed security check. Url: https://the-sz.com/common/get.php?product=flash Result: 0x80004005

(Automated response - build 877.)

@wingetbot run

authors: stephengillie the-sz


text:
New package: Enyium.NightLight version 0.1.0

Checklist for Pull Requests

[x] Have you signed the Contributor License Agreement?
[x] This resolves #157016

Manifests

[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?
[x] Have you tested your manifest locally with winget install --manifest <path>?
[x] Does your manifest conform to the 1.6 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Verify:


text:
Remove Amazon.Corretto.11 11.0.16.8 to Amazon.Corretto.11.JDK 11.0.16.8

Microsoft Reviewers: Open in CodeFlow

URL: https://corretto.aws/downloads/resources/11.0.16.8.1/amazon-corretto-11.0.16.8.1-windows-x64.msi
OK
(Automated message - build 910)

authors: SpecterShell stephengillie


text:
Remove version: LiErHeXun.Quicker version 1.36.0.0

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

For moderators or/and anyone else

[!Caution]
As a result of several personal problems I've had over the last few months + my final exams coming up very soon, I'm currently unable to look at my GitHub notifications every day and maintain my executions correctly.
If you detect a certain problem on a certain pul request:

Either you can close the pull request directly without mentioning me.
Or you can send me a message on X (Twitter): @Exorcism0666

Thank you for your understanding, and I'm sorry if some pull requests can't be approved due to the situation I'm in.

This account is automated by Github Actions and the source code was created by CoolPlayLin. If you have any questions about any pull request, don't hesitate to ping Exorcism0666.

[!warning]
With the new version of Komac, numerous Pull Requests may contain bugs or unwanted elements. If such issues arise, please tag russellbanks so that these bugs can be addressed in future updates.

[!important]
Please carefully review these Pull Request before merging. If it is a Pull Request for removing incorrect content and the URLs are issue, free upon manual checking, please close this Pull Request directly. (It is best to inform Exorcism0666 of the closure.)

良い一日をお過ごしください！

Close with reason: URL works for me;


text:
Remove version: Canonical.Juju version 2.9.8

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

Close with reason: Duplicate;


text:
Remove version: CiderCollective.Cider version 1.6.2

It return 404 in GitHub Action, and the project has been archived.

Replace #198939

Microsoft Reviewers: Open in CodeFlow

/dup of 198936

URL: https://github.com/ciderapp/Cider/releases/download/v1.6.2/Cider-Setup-1.6.2.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 924)

Hi @DuckDuckStudio,
This manifest has the highest version number for this package. Is it available from another location? (This might be in error if the version is switching from semantic to string, or string to semantic.)
(Automated response - build 931.)

[Policy] Reset Labels
[Policy] Reset Feedback

authors: DuckDuckStudio ItzLevvie stephengillie


text:
New version: dundee.gdu version 5.30.1

Pull request has been created with WinGet Releaser v2 :rocket:
Microsoft Reviewers: Open in CodeFlow

@wingetbot run

Manual Validation ended with:

11:55:25 AM:
2024-12-31 11:55:24.957 [CLI ] ShellExecute installer failed: 1

(Automated response - build 933.)

Manual Validation ended with:

2024-12-31 12:32:54.337 [FAIL] Installer failed security check. Url: https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-
2024-12-31-13-02/ffmpeg-n5.1.6-11-gcde3c5fc0c-win64-lgpl-shared-5.1.zip Result: 0x80004005

(Automated response - build 933.)

authors: ItzLevvie dundee stephengillie


text:
New version: utools.utools version 2.4.3

[X] Have you signed the Contributor License Agreement?
[X] Have you checked that there aren't other open pull requests for the same manifest update/change?
[X] Have you validated your manifest locally with winget validate --manifest <path>?
[X] Have you tested your manifest locally with winget install --manifest <path>?
[X] Does your manifest conform to the 1.0 schema?

Microsoft Reviewers: Open in CodeFlow

/azp run

authors: OfficialEsco arjun-msft


text:
Added Plex Desktop version 1.20.0.1406

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] Have you validated your manifest locally with winget validate <manifest>, where <manifest> is the name of the manifest you're submitting?
[x] Have you tested your manifest locally with winget install -m <manifest>?

Microsoft Reviewers: Open in CodeFlow

These URLs are resolving fine on my end, I'm not sure what's going on. #4075 is encountering the same error. I haven't edited the URLs from the previous version.

Well we made progress, but the installer is erroring at the end.

Looks like I'm getting that too now, both for 1.20.0.1406 and 1.15.0.1358 (the version that is currently in the repo).

I'll see if Plex Support has anything to say about it, but if we need to close this for now that is fine.

Plex doesn't seem to monitor their issues repo. I'll close this for now, once different return code support is out I'll fix it and resubmit.

authors: KevinLaMS jedieaston


text:
Update: joe.joe version 4.6.0.40514

null
Microsoft Reviewers: Open in CodeFlow

/azp run

authors: Trenly msftrubengu


text:
Use https for package url

null
Microsoft Reviewers: Open in CodeFlow

/azp run


text:
New version: Joplin.Joplin.Pre-release version 2.8.7

Result: Installation Successful

Manifest
Add/Remove Programs

Name
Joplin (Pre-release)
Joplin 2.8.7

Version
2.8.7
2.8.7

Publisher
Laurent Cozic
Laurent Cozic

ProductCode

499c114e-8890-5040-9c02-24abe7d3ebe9

Auto-updated by vedantmgoyal2009/winget-pkgs-automation in workflow run 1423
Microsoft Reviewers: Open in CodeFlow

@wingetbot run


text:
Update: Microsoft.VisualStudio.2022.Enterprise version 17.0.0

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.1 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

/azp run


text:
New version: KDE.Okular version 22.12.2 [FP-O]

Result: Installation Successful

Manifest
Add/Remove Programs

Name
Okular
Okular

Version
22.12.2
22.12.2

Publisher
KDE e.V.
KDE e.V.

ProductCode

Okular

Auto-updated by vedantmgoyal2009/winget-pkgs-automation in workflow run 5815

@vedantmgoyal2009 The download is unavailable. No idea if it is temporary or permanent. Any ideas?

The installer url in the manifest is this
InstallerUrl: https://binary-factory.kde.org/view/Windows%2064-bit/job/Okular_Release_win64/1286/artifact/okular-22.12.2-**1286**-windows-cl-msvc2019-x86_64.exe
But in binary factory the up-to-date url is
https://binary-factory.kde.org/view/Windows%2064-bit/job/Okular_Release_win64/lastSuccessfulBuild/artifact/okular-22.12.2-1294-windows-cl-msvc2019-x86_64.exe
Note the difference between both, 1286 in installer and 1294 in binary factory.

So, those are just Nightly builds and they are probably deleting them every now and then...? If there is no permanent available download this is just bad

Thanks to help on their Matrix channel I found a permanently available release: https://download.kde.org/stable/release-service/22.12.1/windows/
Discoverable via https://apps.kde.org/de/okular/ (but not via https://okular.kde.org/)

authors: Croydon aldeano vedantmgoyal2009


text:
Preserve maximized state on app restart

Is your feature request related to a problem:
I have installed Obsidian as a GUI app in WSL2 (since I want my vault and plugins to live in the WSL2 filesystem).

When I start the app it is in "normal" window mode (i.e. not maximized).
Then I maximize it.
Exit
Start again. Now it is not maximized.

Doing the same thing when Obsidian is installed as a Windows app preserves this state. It starts maximized the second time.
Describe the solution you'd like:
I would like it to remember the maximized state.
Describe alternatives you've considered:
If this is a pure linux issue (i.e. not WSL2 related) I'd be glad to learn how to configure this. Please then consider adding this to the WSLg docs anyway, since this behaviour is something more people will probably wonder about and which differ between WSL and Windows apps.
If not preserving state, it would be useful to know how to force start a WSL2 GUI application in maximized state. Editing the windows shortcut file and choosing "maximized" does not seem to have any effect. Add command line flags? How? Please consider adding an example re this as well.
Additional context:
No response

There's a bug in Intellij which could be worked around by preserving the maximised state, so I'd love for this to work too

Would definitely be a big improvement.

authors: adamc55 conan einarpersson

repo: microsoft/wslg


text:
The profile picture is not loading and getting access denied error.

Hi Team,
Able to read the user profile details. But the profile picture is not loading and getting below
exception. Have set the readbasic and read properties as well.
Code: ErrorAccessDenied
Message: Access to OData is disabled.
Please help to figure it out.
Thanks,
Anuraj Rajagopal

Which version of the graph API are you using? v1.0 or beta? What kind of account are you using to sign in? Personal, or Work or school account?

authors: anurajrajagopal mark-szabo


text:
Code snippets don't handle OData casts properly

https://docs.microsoft.com/en-us/graph/api/directory-deleteditems-list?view=graph-rest-1.0&tabs=csharp#example
AB#7019

This is part of https://github.com/microsoftgraph/microsoft-graph-explorer-api/issues/146 as well

closing this to track in #146

authors: andrueastman darrelmiller zengin

repo: microsoftgraph/microsoft-graph-devx-api


text:
Sample code throws error

The sample code provided in the README throws an error:
import asyncio
from azure.identity.aio import ClientSecretCredential
from kiota_authentication_azure.azure_identity_authentication_provider import AzureIdentityAuthenticationProvider
from msgraph import GraphRequestAdapter
from msgraph import GraphServiceClient

credential = ClientSecretCredential(
    'tenant_id',
    'client_id',
    'client_secret'
)
scopes = ['User.Read']
auth_provider = AzureIdentityAuthenticationProvider(credential, scopes=scopes)
request_adapter = GraphRequestAdapter(auth_provider)
client = GraphServiceClient(request_adapter)

async def get_user():
    user = await client.users_by_id('userPrincipalName').get()  # It also has a surperfluous ')' at the end of this line.
    print(user.display_name)

asyncio.run(get_user())

Exception has occurred: ModuleNotFoundError
__path__ attribute not found on 'msgraph.generated.models.security' while trying to find 'msgraph.generated.models.security.alert'

The above exception was the direct cause of the following exception:

  File "C:\Users\Daniel\Documents\source\graphsdkbeta\main.py", line 27, in get_user
    user = await client.users_by_id("DiegoS@klmnnr.onmicrosoft.com").get()
  File "C:\Users\Daniel\Documents\source\graphsdkbeta\main.py", line 31, in <module>
    asyncio.run(get_user())

When I put an empty __init__.py file into site-packages\msgraph\generated\models\security folder then the error disappear.
But then I fails later on client.users_by_id() with the error
  File "C:\work\pyenv311\Lib\site-packages\msgraph\generated\users\item\user_item_request_builder.py", line 1151, in get
    return await self.request_adapter.send_async(request_info, user.User, response_handler, error_mapping)                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^TypeError: HttpxRequestAdapter.send_async() takes 4 positional arguments but 5 were given

Note sure that we should use this SDK beta version for now...

Closing this as the mentioned issues with the beta sdk have been resolved.

authors: danielniccoli remss samwelkanda

repo: microsoftgraph/msgraph-beta-sdk-python


text:
GraphClient List Applications get call does not return all values as GraphRBAC

Describe the bug
When using the old GraphRBACManagement client to list all applications, the response is detailed here: https://docs.microsoft.com/en-us/python/api/azure-graphrbac/azure.graphrbac.models.application(class)?view=azure-python
In the new GraphClient, calling a get on '/applications' returns the following: https://docs.microsoft.com/en-us/graph/api/application-list?view=graph-rest-1.0&tabs=http
There are discrepancies here between the responses, namely the parameters allow_guests_sign_in and allow_passthrough_users are returned in the RBAC client but not the GraphClient and I don't see any corresponding way to get this information from it. Is there a reason for this or is there anyway I can get this information as it is blocking me from migrating as these values are important to my project.
Expected behavior
Get '/applications' from the GraphClient should return all the same parameters as the original RBAC Client.
Extra Question
Is there plans to introduce models to this client as well, as currently there are none? Or is there a roadmap I can view to see how much functionality will be available. The deprecation of Azure AD is in june and this package is very barebones for such a short timeframe.
Thanks

thanks for reporting this issue, we have since released a new version of the SDK which this issue doesn't apply to. We encourage you to migrate to the new version and open a new issue if you still need help

repo: microsoftgraph/msgraph-sdk-python-core


text:
Skip reflection for most types

Make the reflection types a black list:
CAA, HIP, IPSECKEY, NSEC3, NSEC, SIG, TSIG, URI,
All other types don't use reflection anymore.
Return a pointer to the header when there is no rdata, this restores old
behavior. The rest of the conversion mostly hangs on getting size-hex
right, but then packStruct and packStructValue and the unpack variant
can be killed.
Generate pack and unpack for all embedded types as well.

@asergeyev this works, except for:
% go t                                                                                ~/g/src/github.com/miekg/dns cleanup-noreflect +
--- FAIL: TestPrivateByteSlice (0.00s)
	privaterr_test.go:84: offset is not matching to length of Private RR: 17!=40
	privaterr_test.go:89: got error unpacking ISBN: dns: buffer size too small
FAIL
exit status 1

I'm afraid I've changed some (hidden) semantics on the Len() stuff. Could you check wth is going on here? Thanks!

@asergeyev nvm, the pack for the privaterr type didn't pack the header. Working.  Now failing elsewhere, but not as severe.

repo: miekg/dns

license_source: bigquery


text:
Issue with opening picker after snippet redraw

I am using your picker with Nette Framework (php) and Naja.js (js) which uses "snippets" as blocks of html to be updated after ajax request.
After update of the snippet with picker in it, it would not reopen, I had to add to add onBeforeOpen listener to remove uip-close class.
$('input.icon-picker').each(function() {
	let preview = $(this).parents('.input-group').find('.icon-preview i');
	let target = $(this).attr('id');

	let iconPicker = new UniversalIconPicker('#'+target, {
		iconLibraries: ['font-awesome.min.json'],

		onBeforeOpen: function() {
			$('#uip-modal-'+target).removeClass('uip-close');
		},

		onSelect: function(info) {
			$(preview).attr('class', info.iconClass).addClass('fa-fw');
			$('#'+target).val(info.iconClass);
		}
	});

	$(preview).attr('class', $(this).val()).addClass('fa-fw');
});

Edit: This code gets called on load and after snippet update so picker should be reinitialized.

The fact that I have to do in onBeforeOpen what should be done in open method by the iconpicker is not a problem?

Indeed I don't know exactly the way you load your page, snippet and ajax data.
Adding $('#uip-modal-'+target).removeClass('uip-close'); somewhere in the plugin CORE code might solve the issue, but I can't reproduce the case easily.

Well there is this code in open method that I think handles this:
                } else {
                    //Icon library open if dom element exist
                    this.universalDomEle.classList.remove('uip-close');
                    this.universalDomEle.classList.add('uip-open');
                }

Which means the issue must be there? My javascript knowledge is very limited, I might try to fix it however I don't know if I won't break something else.

Yes, that's the question. I don't want to break anything, so I'd need to be able to reproduce your issue.
If you can provide me a simple test file, without using any framework or external tool then I'll work on it.

authors: juniwalk migliori

repo: migliori/universal-icon-picker


text:
Add Queuing details to provide more transparency on Backups

OADP/Velero currently has limitations that it processes one backup request at a time as highlighted in the discussion here.. It might certainly be the case that a single instance of OADP install is shared by multiple non-admin users. So in order to give some transparency on what is the current backup request status or a general idea when it will get processed so that the non-admin user's are not left to wonder about what's happening with their backup, a queuing mechanism is desired. The queuing status would be added to the NAB CR status and it would give a general idea about how many backup request are still remaining to be process before their own backup operation gets triggered.

Closing as dup of https://github.com/migtools/oadp-non-admin/issues/20

repo: migtools/oadp-non-admin


text:
Pack libtensorflow.dll at runtimes/win-x64/native

In .NET Core projects that consume TensorFlowSharp with RuntimeIdentifier=win-x64, libtensorflow.dll is never copied to the output directory. This change also packs libtensorflow.dll at win-x64 too. I didn't get rid of win7-x64 for the sake of backwards compatibility.

Any chance of having this published to NuGet? It has passed CI and produced a nupkg:
https://dev.azure.com/migueldeicaza/TensorFlowSharp/_build/results?buildId=2339&view=results

repo: migueldeicaza/TensorFlowSharp

license: mit


text:
ListView's ProcessKey returns true even if the SelectedItem event isn't handled

ProcessKey implementations should return true only if the processing of the key actually did something.
OnSelectedItem returns true even if the event isn't handled; Instead, it should return false if no action has been defined.
Proposed fix:
Before:
public virtual bool OnOpenSelectedItem ()
{
	if (source.Count <= selected || selected < 0) return false;
	var value = source.ToList () [selected];

	OpenSelectedItem?.Invoke (new ListViewItemEventArgs (selected, value));

	return true;
}

After:
public virtual bool OnOpenSelectedItem ()
{
	if (source.Count <= selected || selected < 0 || OpenSelectedItem == null) {
		return false;
	}

	var value = source.ToList () [selected];

	OpenSelectedItem?.Invoke (new ListViewItemEventArgs (selected, value));

	return true;
}

Then, have ProcessKey utilize the return value from OnOpenSelectedItem:
public override bool ProcessKey (KeyEvent kb)
		{
...
			case Key.Enter:
				return OnOpenSelectedItem ();
				break;

...
			default:
				return false;
			}

			return true;
		}

@tig sometimes a view that handle some keystroke need to check if it's necessary to do something or not, but need to set it to true because it has the focus and don't want another view take another action for that keystroke. Think well :-)

authors: BDisp tig


text:
Hardcoded url in selenium tests

In test_selenium.py the url is hard coded, which works fine if you are testing on your local machine, but with Jenkins, where many projects might run and also use port 5000 or if you use grid, this will not work.
Ist there a best practice on how to set the url and port in the selenium tests?

The standard way is to pass the port number in a PORT environment variable. Depending on your testing set up, you may be able to reserve a port for your test, or maybe just get a random port number.

authors: miguelgrinberg pwfraley

repo: miguelgrinberg/flasky


text:
Test for native support using typeof

So that we can polyfill sendBeacon even in browsers that do have native support, but the testing environment doesn't like it (e.g. cypress).
This is how we'd polyfill it in cypress, if the support detection was done via typeof navigator.sendBeacon === "function":
cy.window().then(win => {
    win.navigator.sendBeacon = undefined;
    return new Promise( resolve => {
        win.document.querySelector("head").appendChild(
            Object.assign( win.document.createElement("script"), {
                onload: resolve,
                // https://github.com/miguelmota/Navigator.sendBeacon
                src: "https://unpkg.com/navigator.sendbeacon"
            })
        );
    });
});

I can issue a PR.

Closed via https://github.com/miguelmota/Navigator.sendBeacon/commit/882a7dbb34592fe987f131fd8f899eeca1e2fac4

:100:

This is embarrassing, because I haven't checked the code until now :). Your fix is checking whether the navigator is a function, but we need to check whether the navigator.sendBeacon is a function (in the isSupported helper). I'll make a PR.

@dwelle yea that was an error on my part but it was immediately fixed right away in the next commit.
Thanks for removing the unnecessary checks. Merging!

authors: dwelle miguelmota


text:
fitur translate screen

Describe your suggested feature
I need a feature that is rarely found in comic reading apps, namely the translate screen, maybe it could be added in the future for more comfort in reading comics
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I have updated the app to version 0.16.4.
[X] I will fill out all of the requested information in this form.

Just to be clear, you're asking Mihon to include some sort of automatic series translation? Or do you just want to change your app's language (More > Settings > Appearance > App language)

Untuk memperjelas, Anda meminta Mihon menyertakan semacam terjemahan seri otomatis? Atau apakah Anda hanya ingin mengubah bahasa aplikasi Anda (Lainnya > Pengaturan > Tampilan > Bahasa aplikasi)

I want a feature to automatically translate the comics I want to read

Yeah, that's not happening. Completely and wildly out of anything even near Mihon's actual scope. Find a source that has translations for the series you want, or learn to translate yourself.

authors: MajorTanya Vierilukmantia

repo: mihonapp/mihon


text:
Ignore "intent://" urls on webview

Webview can't handle intent:// urls, returning true cancels the request.
Issue example: https://github.com/keiyoushi/extensions-source/issues/3810

Shouldn't the blob:http case also return true?

Shouldn't the blob:http case also return true?

Seems like webview can handle that

authors: AntsyLich bapeey


text:
Implement fuzzy finder as default filter for Select/MultiSelect

My initial suggestion on the implementation in #162 turned sour once I ran into issues with your filtered_options implementation.
In the end I decided to replace the Filter<'a, T> function in favour of a Scorer<'a, T> function.
The only difference between the two is the return type being Option<i64> still allowing to implement filters as before, but now also allowing to order/rank the options according to the calculated score.
Moving the prompts to the new scoring logic was minimally invasive and works together with the filtered_options logic already implemented!
I added a reset_cursor config option which if true, will reset the cursor position to 0 on filter input changes.
Since it's no longer a "Filter" I have renamed Documentation and types where it makes sense.
This is very much up for debate.
TODO

Create a feature flag that disables the fuzzy DEFAULT_SCORER and enables a naive one that just does a contains check.

Will get to the failing tests tomorrow :P

The rustix dependency breaking msrv tests seems to originate from the tmpfile from the editor feature:
├── tempfile v3.8.0
│   ├── cfg-if v1.0.0
│   ├── fastrand v2.0.0
│   └── rustix v0.38.13
│       ├── bitflags v2.4.0
│       └── linux-raw-sys v0.4.7

I'm not sure it's in scope of this PR to fix that?

Full cargo tree output

➜ cargo tree --all-features
  Downloaded numtoa v0.1.0
  Downloaded termion v2.0.1
  Downloaded 2 crates (32.4 KB) in 0.25s
inquire v0.6.2 (/home/spu/projects/inquire/inquire)
├── bitflags v2.4.0
├── chrono v0.4.30
│   ├── iana-time-zone v0.1.57
│   └── num-traits v0.2.16
│       [build-dependencies]
│       └── autocfg v1.1.0
├── console v0.15.7
│   ├── lazy_static v1.4.0
│   ├── libc v0.2.147
│   └── unicode-width v0.1.10
├── crossterm v0.25.0
│   ├── bitflags v1.3.2
│   ├── libc v0.2.147
│   ├── mio v0.8.8
│   │   ├── libc v0.2.147
│   │   └── log v0.4.20
│   ├── parking_lot v0.12.1
│   │   ├── lock_api v0.4.10
│   │   │   └── scopeguard v1.2.0
│   │   │   [build-dependencies]
│   │   │   └── autocfg v1.1.0
│   │   └── parking_lot_core v0.9.8
│   │       ├── cfg-if v1.0.0
│   │       ├── libc v0.2.147
│   │       └── smallvec v1.11.0
│   ├── signal-hook v0.3.17
│   │   ├── libc v0.2.147
│   │   └── signal-hook-registry v1.4.1
│   │       └── libc v0.2.147
│   └── signal-hook-mio v0.2.3
│       ├── libc v0.2.147
│       ├── mio v0.8.8 (*)
│       └── signal-hook v0.3.17 (*)
├── dyn-clone v1.0.13
├── fuzzy-matcher v0.3.7
│   └── thread_local v1.1.7
│       ├── cfg-if v1.0.0
│       └── once_cell v1.18.0
├── newline-converter v0.3.0
│   └── unicode-segmentation v1.10.1
├── once_cell v1.18.0
├── tempfile v3.8.0
│   ├── cfg-if v1.0.0
│   ├── fastrand v2.0.0
│   └── rustix v0.38.13
│       ├── bitflags v2.4.0
│       └── linux-raw-sys v0.4.7
├── termion v2.0.1
│   ├── libc v0.2.147
│   └── numtoa v0.1.0
├── unicode-segmentation v1.10.1
└── unicode-width v0.1.10

inquire-derive v0.6.2 (/home/spu/projects/inquire/inquire-derive)
[dev-dependencies]
└── inquire v0.6.2 (/home/spu/projects/inquire/inquire) (*)

I'm not sure it's in scope of this PR to fix that?

Will take care of it.

I'm not sure it's in scope of this PR to fix that?

Will take care of it.
Update: Fixed it.

Great, I will rebase then!

Do you have an idea of the impact of pulling in the library you're using? Mostly out of curiosity and to make sure we won't be shooting ourselves in the foot.

In terms of performance:
Performance is great still, I've been using my fork with lists of 1500 options with instant changes to the options.
I would show an Asciinema cast, but the filtering test was on work related Jira issues..
Weight should not be an issue, though I'm not 100% sure on how to quantify this.
The number of sub-dependencies is minimal and there is no non-Rust code at least.
I will try to update my fork tomorrow!

I've applied the changes and rebased as discussed earlier, additionally I updated the changelog to reflect the changes.
Before this is considered final, I want to try and implement Nucleo instead.
It was apparently announced last week and is supposedly 5-8 times faster than fuzzy-matcher
But from a cursory view at how they are using it in the Helix editor, the implementation would potentially need to change a fair bit.
The easiest solution might be to implement a trait similar to Autocompleter which can hold the Matcher and the added Pattern/Atom types.
The reason being the Matcher can be reused for the entire lifetime of the current prompt, but the Pattern/Atom that is parsed from the input needs to be re-parsed on any change to the input.
But parsing anew on every Option in the list would be wasteful.
See: https://github.com/helix-editor/helix/blob/master/helix-term/src/ui/menu.rs#L95-L104

I'm a bit stuck on using Nucleo instead as of right now. I'm running into the same challenges as I faced with my initial idea in #162.
I would prefer to not rewrite most of the Select/Multiselect Prompt logic just to shoehorn Nucleo in.

Merge conflicts have been resolved and I defaulted the reset behaviour to true!
You're welcome to merge anytime! :D

Merged!

authors: Baarsgaard mikaelmello

repo: mikaelmello/inquire


text:
Performance of the frame conversion to PIL.Image

Hello! I found out the difference in the performance of different ways of frame conversion to PIL image. For example, I want to convert frame to PIL image and I can do it like this:
for packet in cap.demux(video_stream):
            for frame in packet.decode():
                img = frame.to_rgb().to_ndarray()
                img = Image.fromarray(img)

Another way is to use to_image function:
for packet in cap.demux(video_stream):
            for frame in packet.decode():
                img = frame.to_image()

I tried to extract 300 frames from video and the first script took ~1.25s, while the second took ~1.80s. Am I missing something?
I have:
 av 7.0.0.dev0 version (build from commit 90e334f)
ffmpeg version n4.2
numpy                         1.18.1
Pillow                        7.0.0

You seem to have found which code path is best for your usage, great! I'm going to close this issue as I don't see what's expected from the PyAV maintainers.

authors: Edelbert jlaine

repo: mikeboers/PyAV


text:
Failed to build docker image

Error validating message "[object Object]" with ID "active-users.message" in file "build/en.json"

Full log
 Operating System: Alpine Linux v3.11 (containerized)
 OSType: linux
 Architecture: x86_64
 CPUs: 12
 Total Memory: 7.625GiB
 Name: 26b9aa8ca8fa
 ID: 74QS:O3IM:AWY3:UDYL:X7DX:EFZK:WKWP:LZLD:EKB4:SPCE:IFLW:MSYP
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false
 Product License: Community Engine

+ /usr/local/bin/docker build --rm=true -f Dockerfilereal -t 5a32dbb0243b0865218f84d20f847783e031e372 . --pull=true --label org.label-schema.schema-version=1.0 --label org.label-schema.build-date=2020-09-19T12:52:42Z --label org.label-schema.vcs-ref=5a32dbb0243b0865218f84d20f847783e031e372 --label org.label-schema.vcs-url=https://github.com/rluisr/umami-docker.git
#1 [internal] load .dockerignore
#1 transferring context: 2B done
#1 DONE 0.1s

#2 [internal] load build definition from Dockerfilereal
#2 transferring dockerfile: 267B done
#2 DONE 0.2s

#3 [internal] load metadata for docker.io/library/node:12.18-alpine
#3 DONE 3.4s

#8 [internal] load build context
#8 transferring context: 2.11MB 0.0s done
#8 DONE 0.1s

#4 [1/4] FROM docker.io/library/node:12.18-alpine@sha256:757574c5a2102627de...
#4 resolve docker.io/library/node:12.18-alpine@sha256:757574c5a2102627de54971a0083d4ecd24eb48fdf06b234d063f19f7bbc22fb done
#4 sha256:757574c5a2102627de54971a0083d4ecd24eb48fdf06b234d063f19f7bbc22fb 1.43kB / 1.43kB done
#4 sha256:f667be05181f5bc13cc8ff1dac8b0ffb9198e98f3d6562342ef44255087a584c 1.16kB / 1.16kB done
#4 sha256:1f52b7199ba6c03adeaa39b53e1237b19e74d43749201c2877a0669e7c0c81c1 6.72kB / 6.72kB done
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 0B / 2.81MB 0.2s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 0B / 24.66MB 0.2s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 0B / 2.24MB 0.2s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 130.03kB / 2.24MB 1.5s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 146.41kB / 2.81MB 1.9s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 261.10kB / 2.24MB 2.3s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 392.18kB / 2.81MB 2.7s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 433.13kB / 2.24MB 2.7s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 654.32kB / 2.24MB 3.0s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 654.32kB / 2.81MB 3.1s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 834.54kB / 2.24MB 3.2s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 850.93kB / 2.81MB 3.3s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 1.03MB / 2.24MB 3.5s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 1.08MB / 2.81MB 3.6s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 1.16MB / 2.24MB 3.6s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 1.24MB / 24.66MB 3.7s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 1.28MB / 2.81MB 3.9s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 1.37MB / 2.24MB 3.9s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 1.47MB / 2.81MB 4.2s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 1.56MB / 2.24MB 4.2s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 1.74MB / 2.81MB 4.5s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 1.81MB / 2.24MB 4.5s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 1.96MB / 2.24MB 4.7s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 1.96MB / 2.81MB 4.8s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 2.13MB / 2.81MB 5.0s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 2.23MB / 2.24MB 5.0s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 2.29MB / 2.81MB 5.1s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 2.46MB / 2.81MB 5.2s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 2.61MB / 24.66MB 5.2s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 2.24MB / 2.24MB 5.1s done
#4 sha256:834ca887ea10ccf5c773b01efa3b1331ba97b7b9fa6fc0c00f8577e96491ab05 0B / 280B 5.2s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 2.62MB / 2.81MB 5.6s
#4 sha256:834ca887ea10ccf5c773b01efa3b1331ba97b7b9fa6fc0c00f8577e96491ab05 280B / 280B 5.7s done
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 2.78MB / 2.81MB 5.9s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 2.81MB / 2.81MB 6.1s done
#4 extracting sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 0.1s done
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 3.91MB / 24.66MB 7.1s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 5.15MB / 24.66MB 8.4s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 6.40MB / 24.66MB 9.4s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 7.74MB / 24.66MB 10.6s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 9.08MB / 24.66MB 12.0s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 10.75MB / 24.66MB 12.8s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 12.01MB / 24.66MB 13.3s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 13.74MB / 24.66MB 13.9s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 15.37MB / 24.66MB 14.6s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 16.76MB / 24.66MB 15.5s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 18.40MB / 24.66MB 16.4s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 19.77MB / 24.66MB 17.0s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 21.10MB / 24.66MB 17.9s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 22.52MB / 24.66MB 18.7s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 23.89MB / 24.66MB 19.2s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 24.66MB / 24.66MB 19.6s done
#4 extracting sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72
#4 extracting sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 0.9s done
#4 extracting sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f
#4 extracting sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 0.1s done
#4 extracting sha256:834ca887ea10ccf5c773b01efa3b1331ba97b7b9fa6fc0c00f8577e96491ab05 done
#4 DONE 21.5s

#5 [2/4] COPY . /app
#5 DONE 1.7s

#6 [3/4] WORKDIR /app
#6 DONE 0.1s

#7 [4/4] RUN npm install && npm run build
#7 34.71
#7 34.71 > @prisma/cli@2.7.0 preinstall /app/node_modules/@prisma/cli
#7 34.71 > node preinstall/index.js
#7 34.71
#7 35.77
#7 35.77 > @prisma/cli@2.7.0 install /app/node_modules/@prisma/cli
#7 35.77 > node download-build/index.js
#7 35.77
#7 35.88
#7 35.88 > bcrypt@5.0.0 install /app/node_modules/bcrypt
#7 35.88 > node-pre-gyp install --fallback-to-build
#7 35.88
#7 35.99 node-pre-gyp WARN Using needle for node-pre-gyp https download
#7 37.33 [bcrypt] Success: "/app/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node" is installed via remote
#7 37.34
#7 37.34 > husky@4.3.0 install /app/node_modules/husky
#7 37.34 > node husky install
#7 37.34
#7 37.41 husky > Setting up git hooks
#7 37.41 Cannot read property 'toString' of null
#7 37.42 husky > Failed to install
#7 37.67
#7 37.67 > @ampproject/toolbox-optimizer@2.6.0 postinstall /app/node_modules/@ampproject/toolbox-optimizer
#7 37.67 > node lib/warmup.js
#7 37.67
#7 38.76 AMP OPTIMIZER Downloaded latest AMP runtime data.
#7 38.85
#7 38.85 > @prisma/client@2.7.0 postinstall /app/node_modules/@prisma/client
#7 38.85 > node scripts/postinstall.js
#7 38.85
#7 56.73 warning The postinstall script automatically ran `prisma generate` and did not find your `prisma/schema.prisma`.
#7 56.73 If you have a Prisma Schema file in a custom path, you will need to run
#7 56.73 `prisma generate --schema=./path/to/your/schema.prisma` to generate Prisma Client.
#7 56.73 If you do not have a Prisma Schema file yet, you can ignore this message.
#7 56.73
#7 56.76
#7 56.76 > geolite2-redist@1.0.7 postinstall /app/node_modules/geolite2-redist
#7 56.76 > node scripts/postinstall.js
#7 56.76
#7 56.84 Downloading MaxMind databases from mirror...
#7 68.39
#7 68.39 > husky@4.3.0 postinstall /app/node_modules/husky
#7 68.39 > opencollective-postinstall || exit 0
#7 68.39
#7 68.43 Thank you for using husky!
#7 68.43 If you rely on this package, please consider supporting our open collective:
#7 68.43 > https://opencollective.com/husky/donate
#7 68.43
#7 69.68 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.3 (node_modules/webpack/node_modules/fsevents):
#7 69.68 npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
#7 69.69 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.3 (node_modules/rollup/node_modules/fsevents):
#7 69.69 npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
#7 69.69 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.13 (node_modules/fsevents):
#7 69.69 npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
#7 69.69
#7 69.70 added 1461 packages from 812 contributors and audited 1470 packages in 68.961s
#7 70.62
#7 70.62 138 packages are looking for funding
#7 70.62   run `npm fund` for details
#7 70.62
#7 70.62 found 5 low severity vulnerabilities
#7 70.62   run `npm audit fix` to fix them, or `npm audit` for details
#7 70.90
#7 70.90 > umami@0.40.0 build /app
#7 70.90 > npm-run-all build-tracker build-lang build-db build-app
#7 70.90
#7 71.27
#7 71.27 > umami@0.40.0 build-tracker /app
#7 71.27 > rollup -c rollup.tracker.config.js
#7 71.27
#7 71.45
#7 71.45 tracker/index.js → public/umami.js...
#7 71.81 created public/umami.js in 365ms
#7 72.15
#7 72.15 > umami@0.40.0 build-lang /app
#7 72.15 > npm-run-all format-lang compile-lang
#7 72.15
#7 72.56
#7 72.56 > umami@0.40.0 format-lang /app
#7 72.56 > node scripts/format-lang.js
#7 72.56
#7 72.77 /app/lang/de-DE.json -> /app/build/de-DE.json
#7 72.80 /app/lang/en-US.json -> /app/build/en-US.json
#7 72.84 /app/lang/en.json -> /app/build/en.json
#7 72.88 /app/lang/es-MX.json -> /app/build/es-MX.json
#7 72.92 /app/lang/fr-FR.json -> /app/build/fr-FR.json
#7 72.95 /app/lang/ja-JP.json -> /app/build/ja-JP.json
#7 72.97 /app/lang/mn-MN.json -> /app/build/mn-MN.json
#7 72.98 /app/lang/nl-NL.json -> /app/build/nl-NL.json
#7 73.00 /app/lang/ru-RU.json -> /app/build/ru-RU.json
#7 73.02 /app/lang/tr-TR.json -> /app/build/tr-TR.json
#7 73.03 /app/lang/zh-CN.json -> /app/build/zh-CN.json
#7 73.29
#7 73.29 > umami@0.40.0 compile-lang /app
#7 73.29 > formatjs compile-folder --ast build lang-compiled
#7 73.29
#7 73.62 Error validating message "[object Object]" with ID "active-users.message" in file "build/en.json"
#7 73.68 TypeError: input.charCodeAt is not a function
#7 73.68     at peg$parseselfClosingTag (/app/node_modules/intl-messageformat-parser/src/parser.js:722:19)
#7 73.68     at peg$parsetagElement (/app/node_modules/intl-messageformat-parser/src/parser.js:681:14)
#7 73.68     at peg$parsemessageElement (/app/node_modules/intl-messageformat-parser/src/parser.js:453:18)
#7 73.68     at peg$parsemessage (/app/node_modules/intl-messageformat-parser/src/parser.js:434:14)
#7 73.68     at peg$parsestart (/app/node_modules/intl-messageformat-parser/src/parser.js:428:14)
#7 73.68     at Object.peg$parse [as pegParse] (/app/node_modules/intl-messageformat-parser/src/parser.js:3124:18)
#7 73.68     at Object.parse (/app/node_modules/intl-messageformat-parser/index.js:31:24)
#7 73.68     at Object.<anonymous> (/app/node_modules/@formatjs/cli/src/compile.js:93:70)
#7 73.68     at step (/app/node_modules/@formatjs/cli/src/compile.js:33:23)
#7 73.68     at Object.next (/app/node_modules/@formatjs/cli/src/compile.js:14:53)
#7 73.69 npm ERR! code ELIFECYCLE
#7 73.69 npm ERR! errno 1
#7 73.69 npm ERR! umami@0.40.0 compile-lang: `formatjs compile-folder --ast build lang-compiled`
#7 73.69 npm ERR! Exit status 1
#7 73.69 npm ERR!
#7 73.69 npm ERR! Failed at the umami@0.40.0 compile-lang script.
#7 73.69 npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
#7 73.71
#7 73.71 npm ERR! A complete log of this run can be found in:
#7 73.71 npm ERR!     /root/.npm/_logs/2020-09-19T12_54_23_563Z-debug.log
#7 73.72 ERROR: "compile-lang" exited with 1.
#7 73.72 npm ERR! code ELIFECYCLE
#7 73.72 npm ERR! errno 1
#7 73.72 npm ERR! umami@0.40.0 build-lang: `npm-run-all format-lang compile-lang`
#7 73.72 npm ERR! Exit status 1
#7 73.72 npm ERR!
#7 73.72 npm ERR! Failed at the umami@0.40.0 build-lang script.
#7 73.72 npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
#7 73.74
#7 73.74 npm ERR! A complete log of this run can be found in:
#7 73.74 npm ERR!     /root/.npm/_logs/2020-09-19T12_54_23_597Z-debug.log
#7 73.74 ERROR: "build-lang" exited with 1.
#7 73.75 npm ERR! code ELIFECYCLE
#7 73.75 npm ERR! errno 1
#7 73.75 npm ERR! umami@0.40.0 build: `npm-run-all build-tracker build-lang build-db build-app`
#7 73.75 npm ERR! Exit status 1
#7 73.75 npm ERR!
#7 73.75 npm ERR! Failed at the umami@0.40.0 build script.
#7 73.75 npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
#7 73.76
#7 73.76 npm ERR! A complete log of this run can be found in:
#7 73.76 npm ERR!     /root/.npm/_logs/2020-09-19T12_54_23_623Z-debug.log
#7 ERROR: executor failed running [/bin/sh -c npm install && npm run build]: runc did not terminate sucessfully
------
 > [4/4] RUN npm install && npm run build:
------
failed to solve with frontend dockerfile.v0: failed to build LLB: executor failed running [/bin/sh -c npm install && npm run build]: runc did not terminate sucessfully
time="2020-09-19T12:54:27Z" level=fatal msg="exit status 1"

That en.json file shouldn't be there. The correct file is en-US.json. You can try deleting en.json and re-building.

I've updated the build script to clear out the build directory so this shouldn't happen again. Try pulling the latest version.

another error occurred.
#2 [internal] load build definition from Dockerfilereal
#2 transferring dockerfile: 267B done
#2 DONE 0.1s

#1 [internal] load .dockerignore
#1 transferring context: 2B done
#1 DONE 0.2s

#3 [internal] load metadata for docker.io/library/node:12.18-alpine
#3 DONE 2.7s

#4 [1/4] FROM docker.io/library/node:12.18-alpine@sha256:757574c5a2102627de...
#4 resolve docker.io/library/node:12.18-alpine@sha256:757574c5a2102627de54971a0083d4ecd24eb48fdf06b234d063f19f7bbc22fb done
#4 ...

#5 [internal] load build context
#5 transferring context: 2.13MB 0.0s done
#5 DONE 0.2s

#4 [1/4] FROM docker.io/library/node:12.18-alpine@sha256:757574c5a2102627de...
#4 sha256:757574c5a2102627de54971a0083d4ecd24eb48fdf06b234d063f19f7bbc22fb 1.43kB / 1.43kB done
#4 sha256:f667be05181f5bc13cc8ff1dac8b0ffb9198e98f3d6562342ef44255087a584c 1.16kB / 1.16kB done
#4 sha256:1f52b7199ba6c03adeaa39b53e1237b19e74d43749201c2877a0669e7c0c81c1 6.72kB / 6.72kB done
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 0B / 2.81MB 0.1s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 0B / 24.66MB 0.1s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 0B / 2.24MB 0.1s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 634.11kB / 2.24MB 0.4s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 2.10MB / 2.24MB 0.5s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 371.97kB / 2.81MB 0.8s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 2.85MB / 24.66MB 0.8s
#4 sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 2.24MB / 2.24MB 0.6s done
#4 sha256:834ca887ea10ccf5c773b01efa3b1331ba97b7b9fa6fc0c00f8577e96491ab05 0B / 280B 0.8s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 789.76kB / 2.81MB 0.9s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 1.78MB / 2.81MB 1.1s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 4.19MB / 24.66MB 1.1s
#4 sha256:834ca887ea10ccf5c773b01efa3b1331ba97b7b9fa6fc0c00f8577e96491ab05 280B / 280B 1.0s done
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 2.36MB / 2.81MB 1.2s
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 2.81MB / 2.81MB 1.3s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 5.52MB / 24.66MB 1.3s
#4 extracting sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08
#4 sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 2.81MB / 2.81MB 1.3s done
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 7.09MB / 24.66MB 1.5s
#4 extracting sha256:cbdbe7a5bc2a134ca8ec91be58565ec07d037386d1f1d8385412d224deafca08 0.1s done
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 8.50MB / 24.66MB 1.6s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 11.02MB / 24.66MB 1.8s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 12.54MB / 24.66MB 1.9s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 15.86MB / 24.66MB 2.2s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 18.06MB / 24.66MB 2.4s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 20.31MB / 24.66MB 2.6s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 22.53MB / 24.66MB 2.8s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 24.66MB / 24.66MB 3.0s
#4 sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 24.66MB / 24.66MB 3.4s done
#4 extracting sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 0.1s
#4 extracting sha256:57d481011659a13bdb095379d64b4b858612ae1b923da2247c8fc97d52920c72 1.0s done
#4 extracting sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f
#4 extracting sha256:d6fabc993f172c5fea591f7820f283ca6e238289b3414930dbc808a392f80e9f 0.1s done
#4 extracting sha256:834ca887ea10ccf5c773b01efa3b1331ba97b7b9fa6fc0c00f8577e96491ab05 done
#4 DONE 5.4s

#6 [2/4] COPY . /app
#6 DONE 2.0s

#7 [3/4] WORKDIR /app
#7 DONE 0.1s

#8 [4/4] RUN npm install && npm run build
#8 28.62
#8 28.62 > @prisma/cli@2.7.0 preinstall /app/node_modules/@prisma/cli
#8 28.62 > node preinstall/index.js
#8 28.62
#8 29.76
#8 29.76 > @prisma/cli@2.7.0 install /app/node_modules/@prisma/cli
#8 29.76 > node download-build/index.js
#8 29.76
#8 29.87
#8 29.87 > bcrypt@5.0.0 install /app/node_modules/bcrypt
#8 29.87 > node-pre-gyp install --fallback-to-build
#8 29.87
#8 29.99 node-pre-gyp WARN Using needle for node-pre-gyp https download
#8 31.27 [bcrypt] Success: "/app/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node" is installed via remote
#8 31.29
#8 31.29 > husky@4.3.0 install /app/node_modules/husky
#8 31.29 > node husky install
#8 31.29
#8 31.36 husky > Setting up git hooks
#8 31.37 Cannot read property 'toString' of null
#8 31.37 husky > Failed to install
#8 31.67
#8 31.67 > @ampproject/toolbox-optimizer@2.6.0 postinstall /app/node_modules/@ampproject/toolbox-optimizer
#8 31.67 > node lib/warmup.js
#8 31.67
#8 32.35 AMP OPTIMIZER Downloaded latest AMP runtime data.
#8 32.47
#8 32.47 > @prisma/client@2.7.0 postinstall /app/node_modules/@prisma/client
#8 32.47 > node scripts/postinstall.js
#8 32.47
#8 36.46 warning The postinstall script automatically ran `prisma generate` and did not find your `prisma/schema.prisma`.
#8 36.46 If you have a Prisma Schema file in a custom path, you will need to run
#8 36.46 `prisma generate --schema=./path/to/your/schema.prisma` to generate Prisma Client.
#8 36.46 If you do not have a Prisma Schema file yet, you can ignore this message.
#8 36.46
#8 36.50
#8 36.50 > geolite2-redist@1.0.7 postinstall /app/node_modules/geolite2-redist
#8 36.50 > node scripts/postinstall.js
#8 36.50
#8 36.58 Downloading MaxMind databases from mirror...
#8 45.27
#8 45.27 > husky@4.3.0 postinstall /app/node_modules/husky
#8 45.27 > opencollective-postinstall || exit 0
#8 45.27
#8 45.32 Thank you for using husky!
#8 45.32 If you rely on this package, please consider supporting our open collective:
#8 45.32 > https://opencollective.com/husky/donate
#8 45.32
#8 46.48 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.3 (node_modules/webpack/node_modules/fsevents):
#8 46.48 npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
#8 46.49 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.3 (node_modules/rollup/node_modules/fsevents):
#8 46.49 npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
#8 46.49 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.13 (node_modules/fsevents):
#8 46.49 npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
#8 46.49
#8 46.49 added 1490 packages from 820 contributors and audited 1499 packages in 45.742s
#8 47.34
#8 47.34 138 packages are looking for funding
#8 47.34   run `npm fund` for details
#8 47.34
#8 47.34 found 5 low severity vulnerabilities
#8 47.34   run `npm audit fix` to fix them, or `npm audit` for details
#8 47.63
#8 47.63 > umami@0.42.0 build /app
#8 47.63 > npm-run-all build-tracker build-lang build-db build-app
#8 47.63
#8 48.01
#8 48.01 > umami@0.42.0 build-tracker /app
#8 48.01 > rollup -c rollup.tracker.config.js
#8 48.01
#8 48.19
#8 48.19 tracker/index.js → public/umami.js...
#8 48.57 created public/umami.js in 377ms
#8 48.89
#8 48.89 > umami@0.42.0 build-lang /app
#8 48.89 > npm-run-all format-lang compile-lang
#8 48.89
#8 49.26
#8 49.26 > umami@0.42.0 format-lang /app
#8 49.26 > node scripts/format-lang.js
#8 49.26
#8 49.43 /app/build/de-DE.json ✗
#8 49.43 /app/build/en-US.json ✗
#8 49.43 /app/build/en.json ✗
#8 49.43 /app/build/es-MX.json ✗
#8 49.43 /app/build/fr-FR.json ✗
#8 49.43 /app/build/ja-JP.json ✗
#8 49.43 /app/build/mn-MN.json ✗
#8 49.43 /app/build/nl-NL.json ✗
#8 49.43 /app/build/ru-RU.json ✗
#8 49.43 /app/build/tr-TR.json ✗
#8 49.43 /app/build/zh-CN.json ✗
#8 49.52 /app/lang/da-DK.json -> /app/build/da-DK.json
#8 49.55 /app/lang/de-DE.json -> /app/build/de-DE.json
#8 49.58 /app/lang/en-US.json -> /app/build/en-US.json
#8 49.62 /app/lang/es-MX.json -> /app/build/es-MX.json
#8 49.65 /app/lang/fr-FR.json -> /app/build/fr-FR.json
#8 49.67 /app/lang/ja-JP.json -> /app/build/ja-JP.json
#8 49.70 /app/lang/mn-MN.json -> /app/build/mn-MN.json
#8 49.71 /app/lang/nl-NL.json -> /app/build/nl-NL.json
#8 49.73 /app/lang/ru-RU.json -> /app/build/ru-RU.json
#8 49.74 /app/lang/tr-TR.json -> /app/build/tr-TR.json
#8 49.76 /app/lang/zh-CN.json -> /app/build/zh-CN.json
#8 50.01
#8 50.01 > umami@0.42.0 compile-lang /app
#8 50.01 > formatjs compile-folder --ast build lang-compiled
#8 50.01
#8 50.63
#8 50.63 > umami@0.42.0 build-db /app
#8 50.63 > npm-run-all copy-db-schema build-db-client
#8 50.63
#8 50.99
#8 50.99 > umami@0.42.0 copy-db-schema /app
#8 50.99 > node scripts/copy-db-schema.js
#8 50.99
#8 51.03 Database type detected: mysql
#8 51.03 Copied /app/prisma/schema.mysql.prisma to /app/prisma/schema.prisma
#8 51.28
#8 51.28 > umami@0.42.0 build-db-client /app
#8 51.28 > dotenv prisma generate
#8 51.28
#8 53.39
#8 53.39 ✔ Generated Prisma Client (version: 2.7.0) to ./node_modules/@prisma/client in 65ms
#8 53.39
#8 53.39 You can now start using Prisma Client in your code:
#8 53.39
#8 53.39 ```
#8 53.39 import { PrismaClient } from '@prisma/client'
#8 53.39 // or const { PrismaClient } = require('@prisma/client')
#8 53.39
#8 53.39 const prisma = new PrismaClient()
#8 53.39 ```
#8 53.39
#8 53.39 Explore the full API: http://pris.ly/d/client
#8 53.72
#8 53.72 > umami@0.42.0 build-app /app
#8 53.72 > next build
#8 53.72
#8 54.52 info  - Creating an optimized production build...
#8 54.55 Attention: Next.js now collects completely anonymous telemetry regarding usage.
#8 54.55 This information is used to shape Next.js' roadmap and prioritize features.
#8 54.55 You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:
#8 54.55 https://nextjs.org/telemetry
#8 54.55
#8 54.64 warn  - Duplicate page detected. pages/api/account.js and pages/api/account/index.js both resolve to /api/account.
#8 54.64 warn  - Duplicate page detected. pages/api/website.js and pages/api/website/index.js both resolve to /api/website.
#8 54.64 warn  - Duplicate page detected. pages/settings.js and pages/settings/index.js both resolve to /settings.
#8 54.65
#8 54.65 > Build error occurred
#8 54.65 Error: You cannot define a route with the same specificity as a optional catch-all route ("/dashboard" and "/dashboard[[...id]]").
#8 54.65     at UrlNode._smoosh (/app/node_modules/next/dist/next-server/lib/router/utils/sorted-routes.js:1:1002)
#8 54.65     at /app/node_modules/next/dist/next-server/lib/router/utils/sorted-routes.js:1:719
#8 54.65     at Array.map (<anonymous>)
#8 54.65     at UrlNode._smoosh (/app/node_modules/next/dist/next-server/lib/router/utils/sorted-routes.js:1:691)
#8 54.65     at UrlNode.smoosh (/app/node_modules/next/dist/next-server/lib/router/utils/sorted-routes.js:1:322)
#8 54.65     at getSortedRoutes (/app/node_modules/next/dist/next-server/lib/router/utils/sorted-routes.js:31:13)
#8 54.65     at build (/app/node_modules/next/dist/build/index.js:9:548)
#8 54.66 npm ERR! code ELIFECYCLE
#8 54.66 npm ERR! errno 1
#8 54.66 npm ERR! umami@0.42.0 build-app: `next build`
#8 54.66 npm ERR! Exit status 1
#8 54.66 npm ERR!
#8 54.66 npm ERR! Failed at the umami@0.42.0 build-app script.
#8 54.66 npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
#8 54.68
#8 54.68 npm ERR! A complete log of this run can be found in:
#8 54.68 npm ERR!     /root/.npm/_logs/2020-09-19T18_18_03_131Z-debug.log
#8 54.68 ERROR: "build-app" exited with 1.
#8 54.69 npm ERR! code ELIFECYCLE
#8 54.69 npm ERR! errno 1
#8 54.69 npm ERR! umami@0.42.0 build: `npm-run-all build-tracker build-lang build-db build-app`
#8 54.69 npm ERR! Exit status 1
#8 54.69 npm ERR!
#8 54.69 npm ERR! Failed at the umami@0.42.0 build script.
#8 54.69 npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
#8 54.70
#8 54.70 npm ERR! A complete log of this run can be found in:
#8 54.70 npm ERR!     /root/.npm/_logs/2020-09-19T18_18_03_158Z-debug.log
#8 ERROR: executor failed running [/bin/sh -c npm install && npm run build]: runc did not terminate sucessfully
------
 > [4/4] RUN npm install && npm run build:
------
failed to solve with frontend dockerfile.v0: failed to build LLB: executor failed running [/bin/sh -c npm install && npm run build]: runc did not terminate sucessfully
time="2020-09-19T18:18:03Z" level=fatal msg="exit status 1"`

Strange, it looks like your git pull is not updating the files correctly. pages/api/website.js was moved to pages/api/website/index.js, so it should no longer exist. Same with the previous problem with en.json.

ah... sorry.... You're right, the problem has been solved.

authors: mikecao rluisr

repo: mikecao/umami


text:
serde dependencies must be synchronized

Unfortunately, the ^0 introduced around 13fa7c98f7e60c120f230a7b6f83b10cbcdf804f is problematic. While SemVer requires a major version bump for breaking changes for versions >= 1.0.0, it allows breaking changes between minor version releases for versions < 1.0.0. "0.x and 0.x+1 are not considered compatible, but 1.x and 1.x+1 are." For this reason, specifying 0 or ^0 is an anti-pattern.
Serde 0.7 is not backwards compatible with 0.6, so the Serde dependencies should be set to 0.7.
What ended up happening to someone in IRC was that serde_codegen 0.7 was being used alongside serde 0.6 by textnonce, because the version rules were relaxed enough for Cargo to decide that was OK. This resulted in this compile error.
Similarly, Syntex's minor version should be specified in Cargo.toml.
I recommend cargo yanking the affected versions (0.2.3 and 0.2.4, I believe) of textnonce and releasing 0.2.5 with the fixed dependencies.

But textnonce works with serde 0.6.  textnonce doesn't really care, and that is what ^0 is saying, and I think rightly so.
What I noticed sfackler did in rust-postgres was specify version = ">= 0.6, < 0.8" .  This I am happy to do.
I understand that some things which use textnonce depend on serde 0.7.   But equally true (at least up until a few days ago, perhaps still), some things which use textnonce still depend on serde 0.6.
If you go through Cargo.lock to find where dependencies collide, I suspect you will find some dependency other than textnonce that is requiring serde 0.6.  If not, it seems to suggest a bug in Cargo.

If you go through Cargo.lock to find where dependencies collide, I suspect you will find some dependency other than textnonce that is requiring serde 0.6.

Correct, this is the problem. If you do a fresh cargo build of textnonce, the resulting Cargo.lock specifies the latest dependencies: serde 0.7 and serde_codegen 0.7. If you manually change the latter to serde_codegen 0.6.14 and cargo build again, textnonce compilation fails with the aforementioned error.
This can happen innocently depending to your Cargo workflow. Example:

Start a fresh crate with one dependency: iron = "0.2.6"
cargo build → success!
Add the dependency params = "0.0.3"
cargo build → textnonce v0.2.4 fails the compilation.

I linked the current Cargo.toml on irc.mozilla.org#cargo and sfackler had this to say:

sfackler: Skyler: that seems like a setup that would not work
...
sfackler: yeah, seems like it just needs a "cargo update" kick the 0.6 dependency up to 0.7

cargo update
cargo build → success!

I'm not sure if there's a case where cargo update would not resolve this issue, but I still think it is worth addressing. version = ">= 0.6, < 0.8" would be better as it would prevent 0.8 from e.g. changing #[derive(Serialize)] to #[derive(SerdeSerialize)] and spontaneously breaking the crate, but it doesn't address the problem that we're facing with serde and serde_codegen strictly requiring their simultaneous usage to be locked at the same minor version.
I'm sorry this is such a hassle, I didn't recognize that this problem would be so complicated. I'm learning a lot about Cargo... so not all is lost for me! :stuck_out_tongue:

The right solution requires changes to Cargo, and I've filed an issue (see above).  Several well known community crates explicitly require serde 0.6 still (I dare say most do), while a few now explicitly require serde 0.7, and even fewer still allow for either version of serde.   Specifying one or the other excludes use with the other set of crates, so I'm really in a pickle here.  There is no way to make this work for everybody at the moment.  I even think cargo update -p serde; cargo update -p serde_codegen isn't sufficient; manual editing of Cargo.lock may be required in some cases.  Manual forking of some packages to tweak their dependencies may also be required.  If you come up with something that works for everybody, I'm all ears.

I like that resolution, thank you for filing a bug!
As a grubby 0.7 consumer, my instinct is to force all 0.6 consumers to specify textnonce 0.2.2 until they can upgrade to 0.7. I understand the trouble in this ruling (feature lock), so I don't know if it's standard practice by any other crate authors.
Anyway, thanks for hashing this out with me!

I'll reopen to track the upstream issue

This is unlikely to still be an issue as serde has been stabilized for some time now.

authors: SkylerLipthay mikedilger

repo: mikedilger/textnonce


text:
In case of multiple tables, with thead repeat per page is required, and if first row of second table has longer content then that row is displaying in another page and header is repeating two times

Generate pdf with 0.12.5
test multiple tables.pdf
Please refer attached pdf
In case of multiple tables, with header-repeat-per-page, if first row of second table has longer content then it is displaying in another page and header is repeating two times
HTML :
test.html.zip
So basically header should not repeat two times in above case for table-2
: either remove first header
: or break that 1st row in two parts, half on first page and half in other page.
tried
tr {
page-break-inside:unset;
}
too,
That first row overlaps with thead in v 0.12.4, but in 0.12.5 it is more worst.

Our library only wraps wkthmltopdf in a PHP class. We can not fix things that are broken in wkthmltopdf itself. You should ask for support over at their project site.

Oh, okay, thanks,
your library is awesome,
but your library is not working with wkhtmltopdf v0.12.5
I want to put binary in of v0.12.5 in my project and give path of that binary to execute, as we can do in 0.12.4
like:
$this->pdfObj->binary = /opt/lampp/htdocs/myproject/lib/wkhtmltox/bin/wkhtmltopdf

What do you mean by "not working"? You can still configure the path as usual. There's nothing version specific in our library. It should work with any version of wkthmltopdf.

wkhtmltopdf command is working fine in terminal.
And result of
"which wkhtmltopdf"
is
"/usr/local/bin/wkhtmltopdf"
And
wkhtmltopdf -V
results:
wkhtmltopdf 0.12.5 (with patched qt)
Please see this screenshot:

But with this version, (all my code is same), it throws this error :
`
| wkhtmltopdf: /opt/lampp/lib/libstdc++.so.6: version CXXABI_1.3.8' not found (required by wkhtmltopdf) -- | --   | wkhtmltopdf: /opt/lampp/lib/libstdc++.so.6: version GLIBCXX_3.4.21' not found (required by wkhtmltopdf)
  | wkhtmltopdf: /opt/lampp/lib/libstdc++.so.6: version CXXABI_1.3.9' not found (required by wkhtmltopdf)   | wkhtmltopdf: /opt/lampp/lib/libz.so.1: version ZLIB_1.2.9' not found (required by /usr/lib/x86_64-linux-gnu/libpng16.so.16)
`
If I manually set path of wkhtmltopdf,
$this->pdfObj = new Pdf($params);
$this->pdfObj->binary = "/usr/local/bin/wkhtmltopdf";
then it throws following error :
`
| /usr/local/bin/wkhtmltopdf: /opt/lampp/lib/libstdc++.so.6: version CXXABI_1.3.8' not found (required by /usr/local/bin/wkhtmltopdf) -- | --   | /usr/local/bin/wkhtmltopdf: /opt/lampp/lib/libstdc++.so.6: version GLIBCXX_3.4.21' not found (required by /usr/local/bin/wkhtmltopdf)
  | /usr/local/bin/wkhtmltopdf: /opt/lampp/lib/libstdc++.so.6: version CXXABI_1.3.9' not found (required by /usr/local/bin/wkhtmltopdf)   | /usr/local/bin/wkhtmltopdf: /opt/lampp/lib/libz.so.1: version ZLIB_1.2.9' not found (required by /usr/lib/x86_64-linux-gnu/libpng16.so.16)
`

Hmm, sorry, I have no idea. If you find out what's wrong and find that we can fix/improve something here, let us know.

authors: mikehaertl vk-sourcefuse

repo: mikehaertl/phpwkhtmltopdf


text:
Support holding down arrow-buttons on touchscreens

With this commit, it's also possible to hold down the arrow buttons on devices with touchscreens, to move the tabbar horizontally. Currently nothing happens if you press the arrow buttons for a longer duration on a touchscreen device (e.g. iPhone).

Thanks for contributing to my plugin! This is a great suggestion.
By any chance, did you verify that this change won't interfere with swiping the tabs, which can be enabled via the enableSwiping option?
Also, what do you think about just combining the TOUCH_START/MOUSEDOWN and TOUCH_END/MOUSEUP event listeners since they invoke the same methods? So you could just have, for example:
.on(ev.MOUSEDOWN + ' ' + ev.TOUCH_START, function (e) { evh.handleMousedownOnSlideMovContainerLeftArrow.call...

Thank you for your feedback. I really appreciate your work!
It runs together with enableSwiping, but there is another issue. If you hold the button till the beginning of the tabbar has been reached, the browser opens up the context menu of the first nav-item, and I don't understand why. Any ideas?
Your suggestion is good. I'll merge the event listeners.

Ah, yes, on mobile devices the contextmenu event fires if you touch and hold for a certain period of time.
What you could do is maybe add a listener for that event and preventDefault on it if you're scrolling the tabs, which can be checked using the .data keys that get set in the handleMouseDown... methods:
stc.$slideRightArrowClickTarget.data(CONSTANTS.DATA_KEY_IS_MOUSEDOWN, true);

Unless you have another suggestion? The drawback of that approach is that the user would never be able to get the context menu on the scroll arrows, but maybe that doesn't really matter. Would there be a need for that?
One way around it would be to add some code to check if the tabs are still moving, and if they're no longer moving then after a short delay allow the context menu to appear. But that seems like it might be needlessly complicated. I can't think of a reason the context menu would be useful on those buttons for a mobile user.
What are your thoughts?
Also, I think this might be a reason to have your own listeners for the touch events rather than combining them with the mouse events because I think the context menu should only be prevented if a touch event triggered it (since that's the only time it's really an issue), so you'd need a way to distinguish them. I wouldn't want to prevent a desktop user from getting the context menu for the buttons.

Thank you for your reply!
The funny thing is, that the context-menu doesn't get triggered on the arrow-buttons. They are only divs, therefore nothing happens if you touch and hold down for a longer period of time. Instead the event of
the first tab-button underneath the arrow gets activated, when you scroll left.
So we would need to temporarily set a preventDefault on the tabs (instead of the arrows), as long as they are moving. I don't think a preventDefault on the arrows would help to fix this issue.
What's or opinion on this?

I'm actually seeing the contextmenu event firing on the arrow buttons in this plunk:
http://plnkr.co/edit/IL8u3c2UJChYaqT9vk17
using desktop Chrome's mobile device emulator. (I log messages to the console and also write them to a div right above the tabs.)
I also tried it on my iPhone SE because I assume the Chrome emulator is probably not 100% true to an actual mobile device, but the plunk was so small that I couldn't test it properly.
Were you using a mobile device when you saw the contextmenu event not being triggered?

authors: Cashewz mikejacobson


text:
🛑 OMSF is down

In f4a0ae7, OMSF (https://www.omsf.io) was down:

HTTP code: 0
Response time: 0 ms

Resolved: OMSF is back up in 1007478 after 10 minutes.

repo: mikemhenry/website-uptime