[QBD] [Import] Customers/projects page

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/49705
PROPOSAL:
Tests

Same as QA steps

[x] Verify that no errors appear in the JS console

Offline tests

Same as QA steps
QA Steps

Prerequisites:

Turn on Beta quickbooksDesktopOnNewDot on your account
Connect your workspace to QBD in OldDot. (Help doc)

Sign in on an account above
Go to any Workspace -> Accounting
Click on "Import" menu under QuickBooks Desktop connection
Click on "Customers" menu item
Verify it displays 1 "Import" toggle button and "Displayed as" menu
Switch on "Import" toggle button
Verify it saves successfully to the server and the "Displayed as" value is "Tags"
Click on "Displayed as"
Change to "Report fields"
Verify it saves successfully to the server and the "Displayed as" value is "Report fields"

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/4a978f25-f83b-4bb4-8eb9-ba6969321b3c

Android: mWeb Chrome

https://github.com/user-attachments/assets/32e71742-f7a7-49ff-84ec-f3810dc8cf9a

iOS: Native

https://github.com/user-attachments/assets/2e43f04c-3e35-4909-a3d1-9803bb62452c

iOS: mWeb Safari

https://github.com/user-attachments/assets/066ea6b5-3300-470b-a10b-ae8f11fcf5a5

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/d14ad849-9d7a-4ab3-868a-7e27ec2f7c36

MacOS: Desktop

https://github.com/user-attachments/assets/2c8ce060-5abe-4d87-a404-4ef6cbd07165

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.


Made the website responsive and added images

Description
The website is now made responsive for smaller devices as well.
Screenshot

Closes #14
For #14

@balwaniankit include the screen recording of all the sections that you have made responsive.

@balwaniankit use the current image assets. We'll update them afterwards.


hover_effects added

Issue number: #106
Added some hover effects.
@TejasNasre plz have a look and if you want any changes plz let me know.

update bro you have not changed the logo of WhatsApp and x not added hover there

Do you also want the icon of whatsapp to be changed ??

Do you also want the icon of whatsapp to be changed ??

you raised issue check the discussion and change the things asap


Add support for creating late clones via hcsshim

This is one of the many small PRs that enable the support for late cloning.
This commit adds the set of functions that expose the late cloning functionality
from hcsshim and adds new annotations for clients to use the late cloning feature.
Signed-off-by: Amit Barve<EMAIL_ADDRESS>

Please rebase these commits into a more curated set for review and check-in.

One thing to consider is how templates will show up in queries for pods/containers, as well as how they will handle being queried for inspect info and stats. We should make sure reasonable results are returned, and that it doesn't error out.


CSRF Example failing

Question
Attempting to use the example at the bottom of https://badgerati.github.io/Pode/Tutorials/Middleware/Types/CSRF/
The view generates the webpage, but when pressing submit Pode says the CSRF token is invalid.

The Enable-PodeSessionMiddleware is missing a -Duration :) I did fix all of these at one point, must have slipped through the cracks!
Set the session to the following, and it should be good:
Enable-PodeSessionMiddleware -Duration 120

Okay it refreshes now without error, but I'm not seeing the flash message 🤔

Huh, I just ran the example (with the above change) and get the flash message back 🤔

Start-PodeServer -Browse {
    Add-PodeEndpoint -Address localhost -Port 8080 -Protocol Http
    Set-PodeViewEngine -Type Pode

    # setup session and csrf middleware
    Enable-PodeSessionMiddleware -Secret 'vegeta' -Duration 120
    Enable-PodeCsrfMiddleware

    # this route will work, as GET methods are ignored by CSRF by default
    Add-PodeRoute -Method Get -Path '/' -ScriptBlock {
        $token = (New-PodeCsrfToken)
        Write-PodeViewResponse -Path 'index' -Data @{ 'csrfToken' = $token } -FlashMessages
    }

    # POST route for form which will require the csrf token from above
    Add-PodeRoute -Method Post -Path '/token' -ScriptBlock {
        Add-PodeFlashMessage -Name 'message' -Message $WebEvent.Data['message']
        Move-PodeResponseUrl -Url '/'
    }
}

Yup, works fine 👀

Interesting. Test-PodeFlashMessage doesn't seem to recognize the the message exist if I test for it at the default path before the view response. It does after it adds the flash message in the Token route.
Does this imply it may not be tracking the session?

I did this:
Start-PodeServer -Browse {
    Add-PodeEndpoint -Address localhost -Port 8080 -Protocol Http
    Set-PodeViewEngine -Type Pode

    # setup session and csrf middleware
    Enable-PodeSessionMiddleware -Secret 'vegeta' -Duration 120
    Enable-PodeCsrfMiddleware

    # this route will work, as GET methods are ignored by CSRF by default
    Add-PodeRoute -Method Get -Path '/' -ScriptBlock {
        $token = (New-PodeCsrfToken)
        Test-PodeFlashMessage -Name 'message' | Out-Default
        Write-PodeViewResponse -Path 'index' -Data @{ 'csrfToken' = $token } -FlashMessages
    }

    # POST route for form which will require the csrf token from above
    Add-PodeRoute -Method Post -Path '/token' -ScriptBlock {
        Add-PodeFlashMessage -Name 'message' -Message $WebEvent.Data['message']
        Test-PodeFlashMessage -Name 'message' | Out-Default
        Move-PodeResponseUrl -Url '/'
    }
}

I get False on the initial page load, but thereafter I get True from the /token route and the / route 🤔
Is the code above similar to what you have with your Test-PodeFlashMessage or different?

I'm getting False-True -False. It doesn't think there's a flash message after the redirect.

That is strange 🤔  which version of Pode/PowerShell are you using? Because you're right, that does sound like something's preventing it from saving the session's data.
All this is running locally your your machine, I assume?

Local, MacOS, 7.1.4, 2.4.1
All up to date.

I just tried those on Windows and Ubuntu, both worked as expected 🤔 Are you able to try either of those and see what happens?
Do you get anything by adding New-PodeLoggingMethod -Terminal | Enable-PodeErrorLogging as well? Just in case.

Man I am really striking out today.
CentOS 8: (Currently using for REST endpoints). Started another instance of pode, for some reason Pode is unable to find index.pode and returns 404 --- the file is for sure in the current directory that pode is being invoked from. No idea what that's about ....
Windows: Still No flash message. First time install for Pode there as well.

When I ran the server as root these errors popped up

This is bizarre! I just tried on a fresh Windows VM and it worked 🤯
The errors from CentOS are probably because there's no browser to be opened - removing -Browser should stop those.
I guess to be absolutely sure I'm doing everything the same: if you're using the just the example would just be able to attach a zip/7z of the server? If not, could you show a screenshot of the file/folder structure; an example of the code (which I'm guessing is just the example! 😂); and the steps you're taking on the page/form itself?

Flash_Message_Test.zip

First thing I spotted is the index.pode should be in a views folder :) I've updated the docs to fix that it doesn't mention that!

After that, it works for me (on Windows it worked even without the views folder, which I probably need to look into!) 🤔

I'm gonna find another laptop to try this on
https://user-images.githubusercontent.com/24230425/130709543-5a214786-8434-4909-8765-6e8397b5edf5.mov

I have tried on 4 computers with the same results a Windows 10 VM, A Centos 8 VM, A Win Server 2016 VM, MacOS Catalina.
All of them have the same issue. Dx

And I finally got ahold of another Mac - fresh build - Pode 1.4.1 - PS 7.1.4 - still not working.
Maybe you can give me a zip file of you working one.

Hey, apologies for the late response here 🙇  - I was finishing up the release over on Pode.Web, but can get back to doing work on Pode now.
Sessions and Headers requires Authentication, (here), the idea for them is so a user can use a REST call to login, supply the session for other requests, then logout. If you've got a scenario for sessions on a REST API with no authentication, I can look into it!
This is where I'm wondering if something strange is happening to the cookie. When a user logs in via the frontend Pode creates and storage a SessionId with data in-mem, and this SessionId is sent back to the browser as a Set-Cookie header to create the cookie. On subsequent requests from the browser, the browser automatically resends current, non-expired, cookies on all requests. Pode parses these cookies from the request, one hopefully being pode.sid, and uses the value of that to retrieve the Session data.
Now I've released Pode.Web I'll look into this more, one idea I had is what happens if you set the -Duration to something crazy? Like -Duration 604800 so it expires after a week?

Get-PodeSessionId only returns the SessionId if the current session is for an authenticated user, but in hindsight it should probably just just return the current SessionId regardless.
If the request doesn't contain a a pode.sid cookie or header, or the SessionId is invalid, then Pode will regenerate a new one each time. The session is only saved and returned as a cookie/header on response if data is set on the session (like Views++ or the authenticated user)

If you've got a scenario for sessions on a REST API with no authentication, I can look into it.
Well there's an easy way around it so probably not worth the effort to do anything specific about it now at least. 😄
if you set the -Duration to something crazy? Like -Duration 604800 so it expires after a week?
Setting -Duration 18001 is the minimum number that works.
If the request doesn't contain a a pode.sid cookie or header, or the SessionId is invalid, then Pode will regenerate a new one each time. So is the default behavior that using session middleware generates a cookie unless you specify header?

I think I've got it!
If you're able to update the Pode module locally, what happens if you change the following line:
https://github.com/Badgerati/Pode/blob/0f5a522cc71499f86d27ce8165ece295ba31f3fa/src/Private/Sessions.ps1#L202
to be:
$expiry = $Session.Properties.TimeStamp.ToUniversalTime()

instead? :D
I span up a server in Central US when we were first looking at this and CSRF was fine. But your 18001s is bang on UTC -05:00, so figured I'd try again. BOOM, this time it stopped working for me too!
Turns out, the expiry is read from the cookie, but is converted to local time, not UTC. So when it check UTC Now vs Local Now it's expired. Changing that one line to convert to UTC fixed it on my VM 😄

And yes, session middleware will use cookies by default, unless -UseHeader is specified when enabling sessions.

Badgerati for the win!
Ah UTC the DNS of time 🤣 . This should go down in Pode bug history.

This should go down in Pode bug history

Hahah, yes definitely! 😂
I've pushed a more full commit to fix this (and the missing Add-PodeEndpoint in the docs!). I'll look at getting this out into a v2.4.2 will some other bugs - rather than waiting for v2.5.0! 😃


Didn't claim/receive drop for overwatch

I saw the program mining hours and it should have finished watching it but after checking the inventory it didn't claim anything
Also the refresh button doesn't work in the inventory

Hello o/
The "Refresh" button in the inventory may not do what you think it does. It refreshes the current Inventory display. This is only useful if you've just changed any of the filtering options available right next to the button - otherwise it doesn't really do anything. The view is also automatically refreshed every time the user changes the tab to the Inventory one. To actually refresh the whole inventory and make it up to date with it's factual state, you need to reload the entire application via the Reload button available in the Settings tab. This is done automatically every hour, to keep everything updated as much as possible.
If your mining progress is inaccurate and the miner isn't claiming the drops, you're most likely running into #301. Since that's an ongoing issue, this makes this one a duplicate.


refactor: using x6-hook for mindmap demo

Description

Motivation and Context

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Enhancement (changes that improvement of current feature or performance)
[x] Refactoring (changes that neither fixes a bug nor adds a feature)
[ ] Test Case (changes that add missing tests or correct existing tests)
[ ] Code style optimization (changes that do not affect the meaning of the code)
[ ] Docs (changes that only update documentation)
[x] Chore (changes that don't modify src or test files)

Self Check before Merge

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

将demo改为函数式组件
使用一个变量存储树形结构 const [state, setState] = useState(data)，更新state的时候，自动计算mindmap布局结果以及更新idMap索引，方便按id查找节点
监听布局结果result变化，使用一个traverse函数生成{nodes: [], edges: []}两个数组，这两个数组虽然全是新生成的，但是只要其中的id是固定的，useGraphState这个hooks内部的diff就能做到增量更新画布。
给主题节点注册add:topic事件回调，通过addTopic更新state数据从而添加节点到画布
通过keyboard绑定快捷键，通过快捷键更新state数据从而添加或者删除节点。

https://github.com/lloydzhou/x6-hooks/issues/1

在线demo
https://codesandbox.io/s/x6-hooks-react-mindmap-demo-2t6954?file=/src/App.js


[FSDE-1363] demo upgrade

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Playpen/job/ChiGCR/job/ChiGCR/job/PR-38/2/. :white_check_mark:


fix: ensure mapred pid dir persists restart

Fixes #296 /run/hadoop/mapred directory not created on boot
To make clear that you license your contribution under
the Apache License Version 2.0, January 2004 and that you give permission to TOSIT,
you have to acknowledge this by using the following check-box.

[x] I hereby declare this contribution to be licenced under the Apache License Version 2.0, January 2004

[x] I hereby agree to grant TOSIT a copyright license to use my contributions.

@DanielJohnHarty can you do a rebase and merge action please instead of direct merge ?


[Question] Multiple Video Tracks for a Remote Participant

Hi,
Is it possible to have multiple video tracks from a single participant.
As an example:

To stream the front camera and the back camera at the same time.
To stream the front/back cameras with different FPS and Dimensions.

Hi @astaranowicz,
I don't see any problem with publishing multiple video tracks, except that TVICameraSource doesn't support capturing from multiple AVCaptureDevices. If you want to write your own TVIVideoSource that operates AVCaptureSession with dual devices you could probably achieve what you are looking for.
Best,
Chris

Hey @astaranowicz,
I came across some good sample code to capture from multiple devices. Have you seen the AVMulticamPip example?
Best,
Chris

Great.  I went down the route to have 2 CameraSources (each with a sink) with 2 Video Tracks.  What I was confused about was that the remote participant could only have 1 video, 1 audio, and 1 data track.  So I didn't think that the remote participant can subscribe to multiple video tracks.  What I realized is that the local participant can create as many tracks as they want, and the remote participant can subscribe to multiple, but mainly show just 1 track at at time.
Thank you for the help and example,
Aaron

@astaranowicz (cc: @ceaglest ) would you mind showing me how you published multiple video tracks?  I modified the VideoQuickStart iOS project and I have two CameraSource objects and am creating an array of  two LocalVideoTrack objects:
           let options1 = CameraSourceOptions { (builder) in
                if #available(iOS 13.0, *) {
                    // Track UIWindowScene events for the key window's scene.
                    // The example app disables multi-window support in the .plist (see UIApplicationSceneManifestKey).
                    builder.orientationTracker = UserInterfaceTracker(scene: UIApplication.shared.keyWindow!.windowScene!)
                }
            }

            let options2 = CameraSourceOptions { (builder) in
                if #available(iOS 13.0, *) {
                    // Track UIWindowScene events for the key window's scene.
                    // The example app disables multi-window support in the .plist (see UIApplicationSceneManifestKey).
                    builder.orientationTracker = UserInterfaceTracker(scene: UIApplication.shared.keyWindow!.windowScene!)
                }
            }

            // Preview our local camera track in the local video preview view.
            camera1 = CameraSource(options: options1, delegate: self)
            camera2 = CameraSource(options: options2, delegate: self)

            let tracksArray: [LocalVideoTrack] = [
                LocalVideoTrack(source: camera1!, enabled: true, name: "camera1")!,
                LocalVideoTrack(source: camera2!, enabled: true, name: "camera2")!
            ]

            self.localVideoTracks = tracksArray

I made an additional previewView @IBOutlet type of VideoView so now I have two:
            localVideoTracks![0].addRenderer(self.previewView1)
            localVideoTracks![1].addRenderer(self.previewView2)

The problem occurs when I try to call .startCapture() on the second camera source.  Whatever one gets called first works and renders, but not the second one.  I am running an iPhone 11 Pro Max iOS13 so I know dual camera capture at the same time is supported:
camera1!.startCapture(device: frontCamera!) { (captureDevice, videoFormat, error) in
                if let error = error {
                    self.logMessage(messageText: "Capture failed with error.\ncode = \((error as NSError).code) error = \(error.localizedDescription)")
                } else {
                    self.previewView1.shouldMirror = (captureDevice.position == .front)
                }
            }

            camera2!.startCapture(device: backCamera!) { (captureDevice, videoFormat, error) in
                if let error = error {
                    self.logMessage(messageText: "Capture failed with error.\ncode = \((error as NSError).code) error = \(error.localizedDescription)")
                } else {
                    self.previewView2.shouldMirror = (captureDevice.position == .back)
                }
            }

The camera2 startCapture() call fails in the closure with a pretty unspecific error:
 ERROR:Twilio:[Platform](0x16db7b000): Fatal runtime capture error: Error Domain=AVFoundationErrorDomain Code=-11800 "The operation could not be completed" UserInfo={NSLocalizedFailureReason=An unknown error occurred (-12780), NSLocalizedDescription=The operation could not be completed, NSUnderlyingError=0x2836b9f80 {Error Domain=NSOSStatusErrorDomain Code=-12780 "(null)"}}, code -11800


fix: update to eye v10.17.1

fix: update to eye v10.17.1

:tada: This PR is included in version 16.16.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release
v16.16.1

Your semantic-release bot :package::rocket:


[fix] don't log warning if root is configured

root is no longer set since https://github.com/sveltejs/kit/pull/5303. This logs an unnecessary warning when using Storybook

Can you elaborate? As far as I can tell, setting root just makes everything break. What are the situations in which it makes sense to be configured?

Storybook sets root to the expected directory. SvelteKit doesn't check what the value of the setting is and just prints an error if it's configured at all eventhough there's no actual issue. And SvelteKit doesn't actually set the value so the error message is also incorrect in saying that SvelteKit is taking control of it.

What is 'the expected directory'? I'm just very unclear on how it could work. It feels like SvelteKit probably should set the value to the project root and/or print an error if it's set to something else

Ah. So I think what we should do is error if root is explicitly set to something other than the cwd

Ok. Updated the PR to do that


Installer changes

Guys, I am going to split this PR in multiple ones. @fmalheiro, will probably need your help to make sure  we don't brake anything..

Guys, as discussed with everyone I will close this PR and open a new one to have a fresh view of the changes.


Refresh plugin

Hi,
This is a refresh of plugin

[x] Make sure you are opening from a topic/feature/bugfix branch (right side) and not your main branch!
[x] Ensure that the pull request title represents the desired changelog entry
[x] Please describe what you did

Regards,

Thanks a lot! Unfortunately due to how Jenkinsfile security works, I had to resubmit this as #11 to get a working PR build.

No problem, thanks for the refresh and the release


[Documentation bug] Format issue in document of tf.raw_ops.For

URL(s) with the issue:
https://www.tensorflow.org/api_docs/python/tf/raw_ops/For
Description of issue (what needs changing):
The signature of the function has format issue

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): No
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): MacOS Mojave 10.14
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below): 2.3.0
Python version: 3.7.6

hello @yashk2810 and @lamberta
can anyone please review this PR?
Thanks

hello @yashk2810 and @lamberta
can anyone please review this PR?
Thanks

@DNXie,
This issue is fixed now in TF2.9, Please refer to the screenshot below

For more details please refer tf.raw_ops.For. Thank you.

Are you satisfied with the resolution of your issue?
Yes
No


debug info in external file ignored

Version and Platform (required):

Binary Ninja Version: 4.0.5336 free
OS: Fedora (actually Nobara but does not matter for this report I think)
OS Version: 40
CPU Architecture: x64

Bug Description:
When opening UnityPlayer.so from the GOG drm-free copy of Hollow Knight for Linux (or likely similar Unity games on Linux), IDA free is able to recover more debug info than binaryninja, and my friend who is signficantly better at using binaryninja than me tells me that this is a bug and that it should be loading data from UnityPlayer_s.debug. If the extra file is loaded properly, there should be symbols like

Steps To Reproduce:
Please provide all steps required to reproduce the behavior:

Import the file and wait for analysis. Note: there needs to be a UnityPlayer_s.debug in the directory I think.

Expected Behavior:
It should use the debug info..
Screenshots/Video Recording:
Manually telling it to import gives this warning and doesn't do anything and I'm unsure if it's related.

First load:

Binary:
Theoretically this should be decompilable and doesn't contain any of the game (I hope) so it should be fine to upload? I'm assuming that a free game could also include these files.
UnityPlayer.zip
UnityPlayer_s.zip
(total file size even when zipped exceeds limits)
Additional Information:
seems like unity games need to built in a specific way to have the seperate library so file and debug data? I tried to find a free game to link but it was packaged differently.

The specific issue in this case is that the .debug file linked by the .gnu_debuglink section does not actually contain any DWARF information, but extra symbols and symbol names in .symtab and .strtab which are skipped by binja.


Default empty template fields

resolves #233
starts a new pattern of encapsulating Configuration defaults within the owning class

Synopsis
First commit, looks good. Provides defaults and moves the default dictionary into SaveOptions to have easy access to .DEFAULT_.... I believe this is also the commit that resolves the aforementioned issue.
I disagree with second commit.
Reasoning
I think the point was to let the Feature class have authority as to where it saves it's default configuration, but that's not a good thing. The naming get_* should be without side-effects. And we should avoid functions that overwrite data passed into them, especially at a fixed key like this.
# it's obvious where the data came from and where it's saved
self.defaults["save"] = SaveOptions.get_default_configuration()

# a getter with no return value ? which key did it get written to ?
SaveOptions.get_default_configuration(self.defaults)

Extended rational / philosophy
Problems would ensue if this bit of code were scaled up:
d = {}
d[x_0] = y_0
d[x_1] = y_1
d[x_2] = y_2
A.get_default_configuration(d)
B.get_default_configuration(d)
C.get_default_configuration(d)

It's non-trivial to ensure that keys of A/B/C's implementation don't collide with x_i.
Alternatively, sticking to the previous way scales up easily.
d = {}
d[x_0] = y_0
d[x_1] = y_1
d[x_2] = y_2
d["save"] = A.get_default_configuration(d)
d["save"].update(B.get_default_configuration(d))
d["save"].update(C.get_default_configuration(d))

The point is not that we want to necessarily scale this piece up, rather to use how does this scale as a heuristic when deciding between two semantic equivalences.
[aside]: Not about this PR, but this reasoning of 'premature scaling' could be (mis-)used to justify setattr's and generative lambda stuff such as process_func -- to which I would say something like "except don't do that".

I disagree with second commit

Fixed.


[WIP] Raw contexts

Depends on: https://github.com/tomaka/glutin/pull/1045
A new API which allows us to make a context for a raw window. I plan to implement it for linux and windows. Currently untested.
Implemented:

[x] Linux
[ ] Windows

Tested:

[ ] Linux
[ ] Windows

After working on this for some while, I realized it would be easier and more appropriate to add a from_raw function to winit's windows and eventsloops.


added the missing ui property

I've just added the missing ui property to the Behavior.
https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.behavior.md

@Linowitch thanks mate!


(LWRP) Magenta shows in prefab thumbnails but not on the prefab itself

I'm currently setting up the scene environment for HoloLens using LWRP and MRTK RC2.1. After importing assets, the prefab textures in the scene/thumbnails became magenta. After selecting "Mixed Reality Toolkit > Utilities > Upgrade MRTK Standard Shader for LWRP", the magenta was fixed on the prefab textures but not in the thumbnail.

SETUP:

Unity 2019.1.13f1
MRTK RC2.1

Fixed the magenta issue-- right-clicked a prefab and selected "Reimport all", though they're all turned around 180 degrees. Not sure how that happened.


Scripts to verify members and PI of a project space

To find the PI of a project space,
ls -la /data/project | grep group_name
To find if the user has access to (a group/which all groups)
groups blazer_id
To find the members of a group,
getent group group_name

I also noticed that using id blazer_id also shows groups and labs, users belong to or have access to.


MongoDB Atlas - connection refused

I'm trying to connect to MongoDB Atlas but I always get connection refused
This is my URL
config :order_db, :db,
  url<EMAIL_ADDRESS>
And the call is the following:
 {:ok, conn} = Mongo.start_link(url: Application.get_env(:order_db, :db)[:url])
Any idea what's going on?

Can you please share which version of the driver you are using? Can you also show the error that you are receiving?

It looks like you have +srv in your url which is meant to tell the driver to look at SRV DNS records[1]. I believe that is not currently implemented in this drivers URL Parser.
If you, or anyone else, would care to take a crack at adding this, I would be more than happy to help.
[1] https://docs.mongodb.com/manual/reference/connection-string/#dns-seedlist-connection-format

I've created the implementation in the url_parser for the mongodb+srv, let'me create a PR for the changes


Update version: RedHat.Podman version 4.6.1

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

Manifest Error: Duplicate installer entry found.


x/website: Example codes don't have horizontal scroller on mobile devices

What did you expect to see?
Example codes to have horizontal scroller.
What did you see instead?
Long lines are wrapped around.

Can you link to an example?

Can you link to an example?

https://golang.org/pkg/strings/#example_Split

This needs a better description; do you mean that viewing the website on a mobile device, there is no scroll (and the test does not wrap)?  Can you tell me what sort of mobile device you are using, and if you can tell, the OS/browser version?
Using Chrome on an Android phone with (very) up-to-date software, I see this, which looks to me like the wrapping that you desire:

This needs a better description; do you mean that viewing the website on a mobile device, there is no scroll (and the test does not wrap)?

Yes. Example codes don't have horizontal scroll and text are (long lines) wrapped.

Can you tell me what sort of mobile device you are using, and if you can tell, the OS/browser version?

Dev: Symphony i12
OS/Browser: Android 10 Go / Bromite 90

Using Chrome on an Android phone with (very) up-to-date software, I see this, which looks to me like the wrapping that you desire:

I see the same as you see. But I don't desire line wrapping.

I opened a PR - https://github.com/golang/website/pull/56

@seankhliao more time to take decision? It's just two lines of change.

cc @dmitshur


Translations to PT

In order to help increasing the community, I've translated some of the main Describing Arquives to Portuguese

What does your PR fix?
Improve the understanding of the project.

Which triplets are supported/not supported? Have you updated the CI baseline?

No

Does your PR follow the maintainer guide?

Yes I tried to follow all the orders

If you have added/updated a port: Have you run ./vcpkg x-add-version --all and committed the result?

didn't change or create any

@microsoft-github-policy-service agree [company="default"]

Thank you!


Manually control clickoutside class

If the default clickoutside class were to change it would be an API break, so theoretically we are already protected against that.  But manually specifying the class avoids having to match the "magic" string in the clickoutside library.

Failing because of #438

Current coverage is 95.49%

Merging #437 into master will increase coverage by +0.02% as of 2399c62

@@            master    #437   diff @@
======================================
  Files            9       9
  Stmts          221     222     +1
  Branches        44      45     +1
  Methods         90      91     +1
======================================
+ Hit            211     212     +1
  Partial          2       2
  Missed           8       8

Review entire Coverage Diff as of 2399c62

Powered by Codecov. Updated on successful CI builds.


Support for multiple events.

Hi,
is support for multiple events at the same time in your library?

YES

yes, you can check it out by trying drag & drop of events on the demo app on cocoacontrols:
https://www.cocoacontrols.com/controls/ddcalendarview


More straightforward transaction error handling

Changes commit error strategy:

Errors on commit will be returned directly, unless rollback is
attempted and fails.
In that case, Error::RollbackError will now contain the commit
error

This design stems from noticing that:

End-user having to match on original error as well as possibly
recursively CommitError containing what they are looking for
(typically, a possible serialization failure) is a hassle.
Rollback errors are far less common than commit errors, and typically
result in abandonning to use this connection ever again, so it's fine
if getting the details about those is a bit more complex.
It is still possible for the user to differentiate commit errors from
in-closure errors if really necessary (backtrace will be properly
collected, and user has control over the closure so they can check)

This allows for easier handling of e.g. serialization failures.
Changes transaction error handling strategy:

Instead of providing API for custom error handling on commit, connection is free to register updates to the transaction manager status as it encounters errors.
This transaction manager status is updated to be able to store that transaction is aborted and requires top-level rollback to be usable again.
This information is used in AnsiTransactionManager's commit/rollback logic. Notably, if top-level transaction is detected to be broken, the transaction manager will not even attempt rollback of savepoints.

This design seems to simplify error handling (number of lines goes down), while removing some mysql-specific code from the general AnsiTransactionManager.

This is in draft pending answer to the following question (and non-pg tests fixes):
I'd need some enlightenment regarding what the purpose of this is:
https://github.com/diesel-rs/diesel/blob/46c366a08c2f64fa77eda9639ee15d50d21cb1f3/diesel/src/connection/transaction_manager.rs#L314
to be sure of what I'm doing.
Also, that stuff about is_error_relevant_for_rollback isn't done here:
https://github.com/diesel-rs/diesel/blob/7184f128a3c1435d12b32f413b14b6632e2f753c/diesel/src/pg/transaction.rs#L303
But I thought PG's transactions were a superset of ANSI, so why is it not here?
Somewhat independent but still slightly related: shouldn't we mark the transaction manager as broken if we reach this point:
https://github.com/diesel-rs/diesel/blob/df7ca0ae54a20e4c0d59c13e00d1c07667d61723/diesel/src/connection/transaction_manager.rs#L351
and rollback_result is an error?

other question: currently, when is previous_error_relevant_for_rollback cleaned after a successful commit or rollback?

I'd need some enlightenment regarding what the purpose of this is:

This is required because mysql returns serialization errors not at the end of the transaction call, but on the corresponding statement call inside of the transaction. So to make the transaction return a serialization error we somehow need to remember that this was the likely reason why the transaction failed in the first place. This is essentially a hack to somehow get this information to the right place. See https://github.com/diesel-rs/diesel/pull/3021 for more details and discussion.

Also, that stuff about is_error_relevant_for_rollback isn't done here:
But I thought PG's transactions were a superset of ANSI, so why is it not here?

As noted above: That's mainly for the reason that this is currently a mysql specific hack. Sometimes I think that we we should just ditch AnsiTransactionManager at all and provide a tailored implementation for each backend. That would make such details much easier. In the end there are quite a lot non-obvious details there that differ from backend to backend.

Somewhat independent but still slightly related: shouldn't we mark the transaction manager as broken if we reach this point:
and rollback_result is an error?

Seems reasonable :+1:

other question: currently, when is previous_error_relevant_for_rollback cleaned after a successful commit or rollback? (so that it doesn't affect subsequent transactions)

Opps, seems like I've missed that 🙈
I would probably handle that here: https://github.com/diesel-rs/diesel/blob/df7ca0ae54a20e4c0d59c13e00d1c07667d61723/diesel/src/connection/transaction_manager.rs#L143

Note to self: there may be some documentation update to do still

@Emm as you had worked on this originally maybe you'll want to have a look on that I didn't forget anything. ;)


Umbrella app configuration

I was just wondering if it was possible to configure Guardian on a per app basis in the context of an umbrella?
In my umbrella, I have two apps which both define a unique User resource which are handled independently as far as authentication is concerned. I've had to create another app in the umbrella to handle serialization (via Guardian) which depends on the two aforementioned apps.
Because of this, I can no longer run the entire test suite of each application (tests which rely on authentication fail) given they don't know the "auth" app exists. It's an unresolvable circular dependency.
The build is still green when tests are run from the umbrella root, so it's not a gigantic issue, but I would ideally also like to retain the ability to run the test suite of each app in the umbrella independently. That is, the authentication tests in each umbrella app.
Example
defmodule Lunchbox.Auth.GuardianSerializer do
  @behaviour Guardian.Serializer

  alias Lunchbox.Repo

  def for_token(user = %Lunchbox.Catering.User{}) do
    {:ok, "CateringUser:#{user.id}"}
  end
  def for_token(user = %Lunchbox.Admin.User{}) do
    {:ok, "AdminUser:#{user.id}"}
  end
  def for_token(_),  do: {:error, "Unknown resource type"}

  def from_token("CateringUser:" <> id) do
    {:ok, Repo.get(Lunchbox.Catering.User, id)}
  end
  def from_token("AdminUser:" <> id) do
    {:ok, Repo.get(Lunchbox.Admin.User, id)}
  end
  def from_token(_), do: {:error, "Unknown resource type"}
end

This is my serializer module inside the auth app of my umbrella. The catering and admin apps define Lunchbox.Catering.User and Lunchbox.Admin.User respectively.
Because auth depends on both {:catering, in_umbrella: true} and {:admin, in_umbrella: true} so that it can see the above structs, neither catering nor admin can depend on auth which would solve my issue.
Ideal outcome
What I would like to do is create a unique serializer module for each application and delete the auth app altogether. However, afaik there's no way to configure Guardian that way.
If I do, whichever app happens to run second will stomp all over the config for the first app, which would configure admin to load up the serializer for catering, for example.

Definitely agree here. The current configuration for Guardian is subpar as it is only available globally. This is something we are planning to change for a 1.0 milestone.

That's fantastic news. I solved the above by moving everything to the one app which is less than perfectly ideal, but it's also OK.
Looking forward to refactoring once 1.0 hits 👍

I had a similiar issue. It can be solved by updating your umbrella configuration files in this way:
For example you have an umbrella app with two websites using guardian an other apps that are being used by them, e.g.
website_a (using guardian)
website_b (using guardian)
common_app_a
common_app_b
In config.exs of your umbrella, remove this line:
import_config "../app/*/config/config.exs"

And replace with these
import_config "../app/common_app_a/config/config.exs"
import_config "../app/common_app_b/config/config.exs"

Now change the mix files of the to website apps to just import their own configs:
config_path: "config/config.exs"

Then in the config.exs of the two website apps add this line
import_config "../../../config/config.exs"

It would be much easier if guardian would try to figure out in which module it is being used. Application.get_all_env :guardian returns a list with two guardian configurations, so i think it should be possible to pick the correct config.

In my case, it's not an umbrella app, but one app with multiple endpoints.
How would I have multiple configurations for Guardian in one app?

Hi!
I've been with this issue (I'm developing an umbrella app with multiple Endpoints that use Guardian in a different way).
What do you think about making some parts of the Guardian lib (the ones that read and directly use the config) as part of a macro, (which can read the config using a parameter and MODULE, as Ecto does).
Then it can be used in a module like:
defmodule WadusApp.Guardian do
  use Guardian, otp_app: :wadus_app
end```

and call that class from plugs by passing it as parameters, execute things like `WadusApp.Guardian.sign_in(conn, object)` , etc.

What do you think about that point of view to solve this?

Something like this is what we've been thinking for  1.0
The global config is too limiting

any ETA? so you accept PR in case I can dedicate some time to this?

Starting work on this.

Any updates on this?

Hey @odarriba
Work is progressing on V1 which includes the ability to have multiple configurations in a single app. There are three remaining items left.
1: the Phoenix helpers
2: permissions
3: updating guardian db
I expect that these will be finished and an rc will be released later next week.

Thanks for the update @hassox !
Looking forward to see the RC and start using it for our multi-app umbrella project 😄

Now available on master and will be published to Hex very soon™.


Log when mismatched referenceSequenceNumber messages are detected by the batch manager - main

For compression to work as expected and maintain batch correctness, it is required that all messages within the same batch have the same reference sequence number.
The feature was partially ported from next (without the API on the runtime layer to block op creation from the event handler) and it is disabled by default (see https://github.com/microsoft/FluidFramework/pull/12326 and the description for details). Compression would enable it.
By default, the feature is disabled. However, we'd like to know if and when it happens, so this change will log at most 5 instances per session along with the stacktrace in order to help us better understand the customer scenarios and find a workaround.
Also fixing the issue with the AgentScheduler performing op reentry (also ported from next).
Regardless of the runtime options (including the compression options), when the feature is explicitly enabled, if the feature gate Fluid.ContainerRuntime.DisableOpReentryCheck is set to true, the feature will end up disabled.

@andre4i - overall observation: We likely will need to enable all these features pretty soon in Bohemia code base. As such, validating that we do not have hidden work (product breaks because of these new limitations) will be extremely useful in short amount of time

overall observation: We likely will need to enable all these features pretty soon in Bohemia code base. As such, validating that we do not have hidden work (product breaks because of these new limitations) will be extremely useful in short amount of time

@vladsud
I have checked that the bohemia repository does not break any tests if we just enable this, so I am cautiously optimistic about it.


[Feature request] Pull request: Allow administrator to change owner

Gitea version (or commit ref): 1.x
Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[x] Not relevant

Description
User story: As an administrator I would like to change the owner of a pull request.
Sometimes developers create pull requests in order to make a review of changes of another developer.
Normally the developer should create a pull request after his change(s) is/are ready to review.
In some situation the reviewer himself create the pull request. Since he becomes the owner of the pull request he is not able to accept or deny the changes.
...

I don't see how that would work with forks for example

Just close and open a new one is OK.


Lint SkStore

Add ESLint and enable more strict typechecking rules for skstore/ts/src.
Only minor changes, no red flags were found.
A few rules are still disabled because they were too noisy.
To run the linter: npm run lint

#294 should fix this

Maybe non-Error exceptions were intended. @skiplabsdaniel, were they?

LGTM


Multiple 'default' subsatements for leaf-list

As per RFC7950 , a leaf-list can have more than  one (0..n)  'default' substatements
( if 'min-elements'  with  values 1 or more is not present in the leaf-list)
The freeconf/yang library provides a method  Default() for leaf, leaflist etc..
But as lieaf-list can have (0..n) deafults,  is there any possibility of  providing an additional  method to get mutiple default values for leaf-list case??
something like  ->   func (m *LeafList) Defaults() []interface{}   ??????

fixed.  Defaults() still returns an "interface{}" but underlying type is always a "[]interface{}"


Baseline Plugin

The top image is my starting progress on the Baseline Plugin.
The second image is edited to reflect what I would like to see moving forward. Note that (1) the legend matches the graph (2) the inner and outer radii are reciprocated on the other side of wavelength, (3) there is a clear indication of the region we are considering to be the baseline.

#127

#127


RemoteForwarder instead of RemoteMailbox

Thanks for the guides.
https://www.ockam.io/learn/how-to-guides/rust/04-forwarding should be updated, to replace RemoteMailbox with RemoteForwarder
#[ockam::node]
async fn main(mut ctx: Context) -> Result<()> {
    let hub = "<IP_ADDRESS>:10222";
    //let hub = "<IP_ADDRESS>:4000";
    let tcp = TcpTransport::create(&ctx).await?;
    tcp.connect(hub).await?;
    ctx.start_worker("echo_service", EchoService).await?;
    let forwarder = RemoteForwarder::create(&mut ctx, hub, "echo_service").await?;
    println!(
        "echo_service forwarding address: {}",
        forwarder.remote_address()
    );
    Ok(())
}

Thank you, great catch!


Fix refactor/necromancy

Enhances #1054
In this PR:

I am replacing require with import/export
Upgrading even more packages.
Fixing webExt missing config
Replacing nyc with c8

@lidel bringing this up again for your consideration! ❤


insert comment to a cell

When I try using the cell.c = 'i-am-comment', does this insert a comment to a cell?
I am trying to insert a comment to a cell. How can I do it. I am using the latest js-xlsx. Also tried https://github.com/protobi/js-xlsx#cell-styles

I'd like. I've just opened a question on SO: http://stackoverflow.com/questions/41526127/write-xlsx-file-with-comments-using-js-xlsx


Background section chevrons

These are the v shaped design of the sections.
This was done by putting svg shapes on the front and back
of the sections and specifying classes for what type
of shape at what point.
This was done with svg because doing CSS shapes at 100% width
like this seemed difficult. This was all done in the section
classes because these shapes are really part of the sections,
or the sections are these shapes.
TODO:

Investigate way to keep svg to 100% width but also maintain
aspect ration to ensure v shape doesn't change.

Will you be addressing the TODO in this PR btw? If not, make an issue

I figured out it won't be addressed at all.


Users might get a 500 error message if/when …

add issues here where we see a 500 error in the portal with no useful error message for the users

When a users redcap API token is wrong - the user will get a 500 error message

When there is an issue with a redcap form - if a redcap form has an error with the form definition we should notify users so they know they need to change the redcap configuration.


Adding support for Rocky Linux 8 and 9

Description
Adding Rocky Linux support
Related Issue

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Chore (non-breaking change that does not add functionality or fix an issue)

Checklist:

[ ] I have read the CONTRIBUTING document.
[ ] I have run the pre-merge tests locally and they pass.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] If Gemfile.lock has changed, I have used --conservative to do it and included the full output in the Description above.
[ ] All new and existing tests passed.
[ ] All commits have been signed-off for the Developer Certificate of Origin.

Corresponding AdHoc build - https://buildkite.com/chef/chef-chef-chef-17-omnibus-adhoc/builds/363
The 2 failures are related to the images themselves and not the changes to the yaml files


Add a -Force switch to Convert-Path and Resolve-Path so as to also support hidden files.

Summary of the new feature / enhancement
Currently, both Convert-Path and Resolve-Path only ever report non-hidden files.
In order to also support hidden files, a -Force switch should be added, analogous to Get-Item and Get-ChildItem.
E.g., on Unix-like platforms:
# Ditto for Resolve-Path
Convert-Path ~/.bash*

This currently produces NO output, because .-prefixed files and directories are considered hidden on Unix-like platforms.
Desired output (for example):
/Users/jdoe/.bash_sessions
/Users/jdoe/.bash_history
/Users/jdoe/.bash_profile
/Users/jdoe/.bashrc

Note: The problem arises only with wildcard patterns - literal paths are found.
Proposed technical implementation details (optional)
No response

This sounds like a great enhancement 👍
It was always interesting how only Get-ChildItem had a -Hidden parameter which only displayed hidden files. If you also wanted non-hidden files you would also need to use -Force.
Makes sense to use -Force for consistency to include hidden files for all cmdlets.

I noticed as well on Ubuntu this seems to only be an issue with wildcards:
12-21 18:37:36 ~/git-repos/PowerShell [master ≡]> Convert-Path ./.gitignore
/home/armaan/git-repos/PowerShell/.gitignore
12-21 18:37:52 ~/git-repos/PowerShell [master ≡]> Convert-Path ./.git*
12-21 18:37:55 ~/git-repos/PowerShell [master ≡]>
12-21 18:37:55 ~/git-repos/PowerShell [master ≡]> Resolve-Path ./.gitignore

Path
----
/home/jdoe/git-repos/PowerShell/.gitignore

12-21 18:40:39 ~/git-repos/PowerShell [master ≡]> Resolve-Path ./.git*
12-21 18:40:42 ~/git-repos/PowerShell [master ≡]>

On Windows it works as expected:
12-21 18:39:15 ~\git-repos\PowerShell [master ≡]> Convert-Path .\.gitignore
C:\Users\jdoe\git-repos\PowerShell\.gitignore
12-21 18:39:20 ~\git-repos\PowerShell [master ≡]> Convert-Path .\.git*
C:\Users\jdoe\git-repos\PowerShell\.github
C:\Users\jdoe\git-repos\PowerShell\.gitattributes
C:\Users\jdoe\git-repos\PowerShell\.gitignore
12-21 18:39:23 ~\git-repos\PowerShell [master ≡]> Resolve-Path .\.gitignore

Path
----
C:\Users\jdoe\git-repos\PowerShell\.gitignore

12-21 18:40:05 ~\git-repos\PowerShell [master ≡]> Resolve-Path .\.git*

Path
----
C:\Users\jdoe\git-repos\PowerShell\.github
C:\Users\jdoe\git-repos\PowerShell\.gitattributes
C:\Users\jdoe\git-repos\PowerShell\.gitignore

Thanks,  @ArmaanMcleod.
Good point about only wildcard expressions being affected (I've updated the initial post to clarify.)
Note that .-prefixed files aren't necessarily hidden on Windows, which explains why even wildcard-based matching found it. There, it is the Hidden attribute that matters, so if you hide, say, .\.gitignore with attrib -h .\.gitignore, Convert-Path .\.git* will no longer match it.
As an aside:

The distinction between literal paths and wildcard-based matching with respect to hidden items generally makes sense - but, unfortunately, isn't observed by Get-Item and  Get-ChildItem
See #6502

I forgot that years ago I had asked for the same, only more comprehensively:

Test-Path, Split-Path -Resolve, Join-Path -Resolve, and Invoke-Item too need a -Force switch in order to include hidden items when using wildcards - see #6502.


Request to add functionality for training / test inputs that contain NaN

The current version of RandomForestRegressor supports nans and missing values in training data, however, sklearn-quantile does not.
If you edit the lines of code (e.g., in quantile.pyx) that use "check_X_y" or "check_array" from sklearn to include force_all_finite="allow-nan" and recompile, then  from what I can tell, everything works fine.
However, you also need to replace "np.quantile" with "np.nanquantile" or else nans are output in some of the quantiles.
I have not done extensive testing, but in the use cases with my own data, this appears to work. Maybe someone else will benefit from this too.

This is unfortunately not really the right way to implement this. The 'sampling' implementation that I assume you are using stores a random sample of data per tree per leaf. If this value is NaN this basically reduces the number of trees that your calculated value is based on.
I don't really know how sklearn implemented this, if they either ignore the entries with NaN values or they are doing something different. Depending on that, I could do this same before calling the default random forest implementation.
The same goes for the test step. Conceptually, what is the result supposed to be if a NaN is present in the data? NaN? Something else?


Fix README to reflect the latest architecture.

@tamarrow Please review. Thanks!

@jsancio one question, rest LGTM

@tamarrow, I removed the Marathon schema file because we don't currently use it. We delegate the validation to Marathon. We don't do the validation because Marathon is always changes what is a valid Marathon AppDefinition.


Suggest supporting POJO as request parameter

From @wanghongfei on August 12, 2016 4:14
I'm using Feign with Spring Cloud Netflix stack. In SpringMVC we can use POJO as request parameter which is very convenient:
@RequestMapping(value = "/group/list")
    public List<AdvertGroupVO> list(AdvertGroupVO vo) throws AlanException {

        return adGroupService.list(vo);
    }

But in Feign I have to write lots of @RequestParam:
@FeignClient(name = "fooService")
public interface foo {

    @RequestMapping(value = "/group/list")
    public List<AdvertGroupVO> list(@RequestParam Integer id,
                                      @RequestParam String name,
                                      @RequestParam ... ...);
}

I think it good for feign's user. Thanks!
Copied from original issue: OpenFeign/feign#438

In feign's DefaultContract, a parameter without any annotations is assumed to be processed by feign's Encoder, which can do what's been requested here. We can decide if this behavior makes sense or not.

Thanks for @adriancole 's reply. In current feign's implementation it seems feign doesn't encode POJO to HTTP request parameter by default, or there's something I do not know yet

@wanghongfei are you saying that you want something to literally write each field as a query parameter (ex via reflection)? If so, that would be a custom encoder and I don't think it is a high-reuse thing at this point.

closest thing in feign upstream is @QueryMap which explodes a map into query parameters. I'm not sure if that is supported in MVC @RequestParam

@adriancole Thanks, I'll try @QueryMapor define my own encoder.

@wanghongfei 请问这个问题你最后怎么解决的？

@adriancole @wanghongfei My PR https://github.com/spring-cloud/spring-cloud-netflix/pull/1361 allows @RequestParam to be used without a value/name and with a Map.

@wongloong
supporting POJO as request parameter
solution: http://www.itmuch.com/spring-cloud-sum/feign-multiple-params/
Let's talk about how to use Feign to construct a POST request with multiple parameters. Assume that the Service Provider's Controller is written as follows:
@RestController
public class UserController {
  @PostMapping("/post")
  public User post(@RequestBody User user) {
    ...
  }
}

How do we use Feign to ask for it? The answer is very simple, example:
@FeignClient(name = "microservice-provider-user")
public interface UserFeignClient {
  @RequestMapping(value = "/post", method = RequestMethod.POST)
  public User post(@RequestBody User user);
}

tips: method = RequestMethod.POST and @RequestBody
I tested successfully!

Right, this issue is for a GET method, not post.

yml:
feign:
  httpclient:
    enabled: true

MAVEN:
            <!--httpClient-->
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpclient</artifactId>
                <version>4.5.3</version>
            </dependency>

            <dependency>
                <groupId>com.netflix.feign</groupId>
                <artifactId>feign-httpclient</artifactId>
                <version>8.17.0</version>
            </dependency>

SendPoint(get method):
@RequestMapping(value = "/user/list",method = RequestMethod.GET,consumes = "application/json")
    List<User> users(@RequestBody QueryBean queryBean);

ReceivePoint(post method):
@RequestMapping(value = "/user/list",method = RequestMethod.POST,consumes = "application/json")
    List<User> users(@RequestBody QueryBean queryBean){
                      func();
}

I use RequestInterceptor to solve this problem:
public class YryzRequestInterceptor implements RequestInterceptor {
@Autowired
private ObjectMapper objectMapper;
@Override
public void apply(RequestTemplate template) {
    // feign 不支持 GET 方法传 POJO, json body转query
    if (template.method().equals("GET") && template.body() != null) {
        try {
            JsonNode jsonNode = objectMapper.readTree(template.body());
            template.body(null);

            Map<String, Collection<String>> queries = new HashMap<>();
            buildQuery(jsonNode, "", queries);
            template.queries(queries);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

private void buildQuery(JsonNode jsonNode, String path, Map<String, Collection<String>> queries) {
    if (!jsonNode.isContainerNode()) {   // 叶子节点
        if (jsonNode.isNull()) {
            return;
        }
        Collection<String> values = queries.get(path);
        if (null == values) {
            values = new ArrayList<>();
            queries.put(path, values);
        }
        values.add(jsonNode.asText());
    }
    if (jsonNode.isArray()) {   // 数组节点
        Iterator<JsonNode> it = jsonNode.elements();
        while (it.hasNext()) {
            buildQuery(it.next(), path, queries);
        }
    } else {
        Iterator<Map.Entry<String, JsonNode>> it = jsonNode.fields();
        while (it.hasNext()) {
            Map.Entry<String, JsonNode> entry = it.next();
            if (StringUtils.hasText(path)) {
                buildQuery(entry.getValue(), path + "." + entry.getKey(), queries);
            } else {  // 根节点
                buildQuery(entry.getValue(), entry.getKey(), queries);
            }
        }
    }
}

}

@eefnrowe With java1.8 sun.net.www.protocol.http.HttpURLConnection or feign-okhttp 10.4.0, I need to empty requestBody like template.body(Request.Body.empty());  then work fine.

@maketubo  I changed it to
        byte[] emptyBody = Request.Body.empty().asBytes();
        if (template.method().equals("GET") && !Arrays.equals(template.body(), emptyBody)) {
        //....
             template.body(Request.Body.empty());
        }


:ref: target not highlighted in navigation bar

Details

inside a section
create a label on a subsection A and link to it with :ref:, from another subsection B

Expected Result
navigation bar highlights the the target subsection B
Actual Result
navigation bar highlights the the source subsection A, where the :ref: in called
ref documentation:
http://www.sphinx-doc.org/en/master/markup/inline.html#role-ref

Could you provide more information? (rtd project page, build url, etc). Otherwise this seems to me like a sphinx problem no rtd. Thanks!

here is an example of a link to a labeled section:
https://docs.readthedocs.io/en/latest/getting_started.html#in-rst
the navigation tree is not highlight correctly,
but the following link highlights 'in-markdown' section as expected:
https://docs.readthedocs.io/en/latest/getting_started.html#in-markdown
notice that 'in-markdown' label and title are approximately the same, and in-rst and 'in restructuredtext' aren't very close.
maybe a sphinx-doc issue but rtd is the only theme I know that highlights navigation tree, so the mistake might be more obvious here.

I found something here. It seems there is an extra span labeled in-rst but the correct one is in-restructuredtext: https://docs.readthedocs.io/en/latest/getting_started.html#in-restructuredtext

Also, another issue is that clicking twice in the In reStructuredText from the navbar it gets highlighted the first one but the second one looses it.
This probably is an error in the RTD Sphinx Theme (https://github.com/rtfd/sphinx_rtd_theme) instead of in the RTD.org source.

might be.
Is there a GitHub to transfer an issue to another project? :sweat_smile:

What we have done is just open a link in the other project and link it to here. Then close this one.
I'm not very familiarized with the Sphinx them, so I'm pinging @Blendify here since he is our rock star on this topic and maybe can help you in case you want to propose a PR ;)

Yes please open a report for the theme. We have modified the javascript responsible for this since our the last release so I would recommend checking using our master version. Use pip install -e https://github.com/rtfd/sphinx_rtd_theme/archive/master.zip

Closing see  https://github.com/rtfd/sphinx_rtd_theme/issues/583


Call FileUploadWizard.show()

Make sure we call the show() method each time we construct a FileUploadWizard
Change-Id: I324c75e63a4071a710dd01b93868141b5255ecf7

@AppInventorWorkerBee Ok to test


Vertex AI Integration into vscode extension

Hello @saoudrizwan I have installed the extension of vscode and it doesnt have the setting to add a vertexai credentials. Can you update this please? Thank you

@saoudrizwan please!

Hi sorry, vertex support is coming–there's an open PR that you can use locally, but I've been looking into ways to authenticate with google without having to install their CLI first, i.e. oauth on a github hosted site.

Hi, I am a Cursor user, and I'm very excited about Claude Dev. Cursor allows setting a URL in OpenAI API format, which I think is an excellent method for using custom LLMs.

v1.5.16 now has vertex support! Ollama support is on the roadmap, see https://github.com/saoudrizwan/claude-dev/issues/30#issuecomment-2325005847


Installing Project Dependencies

Summary

While the IDE will handle downloading libraries that are added to the project, CLI users also need a way to install any dependencies, for example when they download a project shared by someone. Even if the dynamic loading logic were able to download libraries lazily/on-demand (see #1768), we still definitely want a way to 'preload' before running the program.
We need a way to scan all files in the project to analyse what dependencies it has. This needs to use the parser, to know the imports.
The logic for scanning the imports may also be re-used in the upload command if we decide that a manifest listing the dependencies should be included for more efficient downloads (see the discussion).
Value

CLI users can preinstall any required dependencies.

Specification

[ ] Re-use the component that can parse all project files and extract a list of imported packages without running the project.
[ ] Use the downloader (#1772) to install the dependencies that were found.
[ ] Implement the enso install library <name> --edition=<edition> command.
[ ] Implement the enso install dependencies command which if run inside of a project installs all of its dependencies and the engine that it should use.

Acceptance Criteria & Test Cases

The above specification has been completed.
[ ] Tests were added which test the dependency discovery mechanism.
[ ] If reasonably possible, some tests for the installation mechanism were also added.

How does this interact with the proposal for manifests on upload?


Fix typo in epitope assays template

Fixes 'editor preferred label' for OBI:0003293 (cytometric bead array assay measuring epitope specific perforin release by T cells)
I also noticed that the 'IEDB alternative term' contains pipes in it, but the template header doesn't use SPLIT=|. Is this something we want to add?

all iedb alternative terms have to be in the same format, so the new terms
should conform to the existing terms.
On Sat, Oct 30, 2021 at 1:47 PM Becky Jackson @.***>
wrote:

Fixes 'editor preferred label' for OBI:0003293 (cytometric bead array
assay measuring epitope specific perforin release by T cells)
I also noticed that the 'IEDB alternative term' contains pipes in it, but
the template header doesn't use SPLIT=|. Is this something we want to add?
You can view, comment on, or merge this pull request online at:
https://github.com/obi-ontology/obi/pull/1450
Commit Summary

Fix typo
https://github.com/obi-ontology/obi/pull/1450/commits/9c8e7bc90bb2646cc16e85ad124ac7a9a6b19ed6

File Changes
(2 files https://github.com/obi-ontology/obi/pull/1450/files)

M src/ontology/modules/epitope-assays.owl
https://github.com/obi-ontology/obi/pull/1450/files#diff-966c33168f4b0ab8c5de8ef3b6ff51e380763af3c100b57af95aad5803d189ed
(2)
M src/ontology/templates/epitope-assays.tsv
https://github.com/obi-ontology/obi/pull/1450/files#diff-70225811edb80013e824b20e3bf9f895be89d832d383f635d2eaa4308ce99f81
(2)

Patch Links:

https://github.com/obi-ontology/obi/pull/1450.patch
https://github.com/obi-ontology/obi/pull/1450.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/obi-ontology/obi/pull/1450, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADKDY47ZDV5YL72ARKILQZTUJRKXRANCNFSM5HBOZBBQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

--
Randi Vita, M.D.
Lead Ontology and Quality Manager
Immune Epitope Database and Analysis Project
La Jolla Institute for Allergy & Immunology
9420 Athena Circle
La Jolla, Ca 92037
@.***
www.immuneepitope.org
858-752-6912

No, we don't want to SPLIT this column, that's how they should be.


We should not allow optional, nullish, or nullable on z.coerce schemas

Since z.coerce.* schemas will always return the primitive, even if you pass undefined or null, we should disallow this. Also, things like z.union([z.coerce.string(), z.coerce.number()]) will always return a string since the first schema will just always succeed.

Those methods wrap the existing schema with ZodOptional, ZodNullable, or both. So optionality still worked as intended, and the coercion behavior doesn't "bubble up"
console.log(z.coerce.string().optional().parse(undefined));
// => undefined

Am i missing something?


Code Release

Nice work! When will the code be released?

Thanks for you interest. I'll be releasing the code in a week.


Switch to semantic versioning

Right now, RetroPage versions count like so: "2.0" to "2.1" to "2.3" to "2.4" and so on. The current structure is so the point value increases for any update minor or bugfix. For example, "2.2" could either be a bugfix or a minor feature update. The digit changes are reserved for larger updates, such as 2.0.
It would therefore be best to switch to semantic versioning, preferably on 3.0's release.

Done.


A couple of fixes: SQLite tuning and pings

SQLite tuning:

tune concurrent write performance by disabling the connection pooling (lock contention!) and enabling Write-Ahead Logging

/ping protocol:

Ensure there is a connection to the directory before trying to open a stream
Add a 30s timeout to /ping; one day it may become a request parameter (and be common with other requests that access remote resources)

👍 nice


Release: add static binaries

Fix #7296

Do we need to make any statement about support or limitations of this additional delivery (for example, this doesn't provide a static runc in the other tarballs that are created at release)?

this doesn't provide a static runc in the other tarballs that are created at release

runc isn't included in the existing dynamic containerd-*.tar.gz releases.
runc is included in the cri-containerd-*.tar.gz releases, but cri-containerd-*.tar.gz releases have been deprecated and will be removed in 2.0: https://github.com/containerd/containerd/blob/main/RELEASES.md#deprecated-features
Also documented in https://github.com/containerd/containerd/blob/main/docs/getting-started.md#step-1-installing-containerd

Also planning to append "Which file should I download?" section to the release note toml

https://github.com/containerd/release-tool/pull/39

Do we need to test this change in a fork to make sure that one some architecture pair we aren't missing a dep for make static?

Here: https://github.com/AkihiroSuda/containerd/releases/tag/v1.7.0-beta.0.20221111
https://github.com/AkihiroSuda/containerd/actions/runs/3446264645

Dynamic tar.gz  are now missing from https://github.com/AkihiroSuda/containerd/releases/tag/v1.7.0-beta.0.20221111 😞

Fixed: https://github.com/AkihiroSuda/containerd/releases/tag/v1.7.0-beta.0.20221112
https://github.com/AkihiroSuda/containerd/actions/runs/3446678517


android: Disable getifaddrs call for old NDK versions

getifaddrs and freeifaddrs were added in Android NDK API version 24.
This patch skips that logic, as was being done for WIN32, if that's your
target version.
Signed-off-by: Keith Smiley<EMAIL_ADDRESS>

I think the test failure is unrelated

The CI failures look unrelated here:
$TEST_TMPDIR defined: output root default is '/build/tmp' and max_idle_secs default is '15'.
ls: cannot access '/tmp/tap//tap_*.pb_text': No such file or directory


luci-app-adblock: fix translations

fix runtime & button translations

Signed-off-by: Dirk Brenken<EMAIL_ADDRESS>

@jow- please have a look - thanks.

LGTM, merged!


rgbgfx

manpage
fix palette downsampling
tilemaps

Done in c3c31138ddbd8680d4e67957e387f2816798a71b. Let me know if you have any problems.


Workaround -Wno-error for GCC 14 (upstream Pytorch)

Needed for Ubuntu 24.10, related to #2891 and #2522

Looks good. Please keep the original issue open as a reminder to remove the workaround after ipex is gone.

This is still needed for upstream PyTorch. I will create new one.


libmtp 1.1.19 upgrade breaks GVFS mounting (MTP, Android Devices, etc)

Describe the bug
When setting services.gvfs.enable = true; in a NixOS system based on https://github.com/NixOS/nixpkgs/pull/144290, mounting Android phones via MTP stops working, as GVFS crashes continually.
Steps To Reproduce
Steps to reproduce the behavior:

Ensure your system is being built from 7b0696106d5ab653284d17cd7a070e40e3f3f3cf of Nixpkgs
Set services.gvfs.enable = true; in your NixOS config
Try to mount any android device via MTP, and observe that GVFS in fact crashes outright, even though MTP is only one of its features.

Expected behavior
Being able to use GVFS in any capacity.
Additional context
This breakage happens in any context, regardless of desktop environment. The upstream developer seems confused about the cause of this bug, and as far as I have read is blaming KDE/OpenSuse for the breakage.
https://github.com/libmtp/libmtp/issues/84
Notify maintainers

@lovesegfault
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[pasha@newtoncrosby:~]$ nixos-version --revision
7b0696106d5ab653284d17cd7a070e40e3f3f3cf

[pasha@newtoncrosby:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.14.15, NixOS, 21.11 (Porcupine)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.5pre20211007_844dd90`
 - channels(root): `"nixos-21.11pre327669.b67e752c29f"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:

I noticed that MTP does not work anymore.
The device is not correctly recognized:
[Fri Nov 19 19:47:11 2021] usb 1-7: new high-speed USB device number 6 using xhci_hcd
[Fri Nov 19 19:47:11 2021] usb 1-7: device descriptor read/all, error -71
[Fri Nov 19 19:47:11 2021] usb 1-7: new high-speed USB device number 7 using xhci_hcd
[Fri Nov 19 19:47:11 2021] usb 1-7: device descriptor read/all, error -71
[Fri Nov 19 19:47:11 2021] usb usb1-port7: attempt power cycle
[Fri Nov 19 19:47:12 2021] usb 1-7: new high-speed USB device number 8 using xhci_hcd
[Fri Nov 19 19:47:12 2021] usb 1-7: string descriptor 0 read error: -71
[Fri Nov 19 19:47:12 2021] usb 1-7: New USB device found, idVendor=2717, idProduct=ff40, bcdDevice= 3.18
[Fri Nov 19 19:47:12 2021] usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[Fri Nov 19 19:47:38 2021] usb 1-7: USB disconnect, device number 8
[Fri Nov 19 19:47:39 2021] usb 1-7: new high-speed USB device number 9 using xhci_hcd
[Fri Nov 19 19:47:39 2021] usb 1-7: New USB device found, idVendor=2717, idProduct=ff40, bcdDevice= 3.18
[Fri Nov 19 19:47:39 2021] usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[Fri Nov 19 19:47:39 2021] usb 1-7: Product: Android
[Fri Nov 19 19:47:39 2021] usb 1-7: Manufacturer: Android
[Fri Nov 19 19:47:39 2021] usb 1-7: SerialNumber: ******
[Fri Nov 19 19:47:39 2021] usb 1-7: can't set config #1, error -71

(reconnecting and reboot does not solve this)
Here it looks normal:
[root@gaming:~]# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 019: ID 2717:ff40 Xiaomi Inc. Mi/Redmi series (MTP)
Bus 001 Device 005: ID 046d:c08f Logitech, Inc. G403 HERO Gaming Mouse
Bus 001 Device 004: ID feed:1307 ZSA Ergodox EZ
Bus 001 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 002: ID 046d:08b2 Logitech, Inc. QuickCam Pro 4000
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

And here are also a lot of errors:
[davidak@gaming:~]$ mtp-detect
libmtp version: 1.1.19

Listing raw device(s)
Device 0 (VID=2717 and PID=ff40) is a Xiaomi Mi-2s (id2) (MTP).
   Found 1 device(s):
   Xiaomi: Mi-2s (id2) (MTP) (2717:ff40) @ bus 1, dev 19
Attempting to connect device(s)
Android device detected, assigning default bug flags
LIBMTP PANIC: could not inspect object property description 0x3001!
LIBMTP PANIC: could not inspect object property description 0x3004!
LIBMTP PANIC: could not inspect object property description 0x3005!
LIBMTP PANIC: could not inspect object property description 0x3008!
LIBMTP PANIC: could not inspect object property description 0x3009!
LIBMTP PANIC: could not inspect object property description 0x300b!
LIBMTP PANIC: could not inspect object property description 0x3801!
LIBMTP PANIC: could not inspect object property description 0x3802!
LIBMTP PANIC: could not inspect object property description 0xb902!
LIBMTP PANIC: could not inspect object property description 0xb903!
LIBMTP PANIC: could not inspect object property description 0xb982!
LIBMTP PANIC: could not inspect object property description 0xb983!
Error 7: Unable to read Maximum Battery Level for this device even though the device supposedly supports this functionality
Error 1: Get Storage information failed.

I tried with the old version and also got similar issues:
[davidak@gaming:~]$ nix run -f channel:nixos-21.05 libmtp
[38 copied (86.6 MiB), 36.2 MiB DL]

[davidak@gaming:~]$ mtp-detect
libmtp version: 1.1.18

Listing raw device(s)
Device 0 (VID=2717 and PID=ff40) is a Xiaomi Mi-2s (id2) (MTP).
   Found 1 device(s):
   Xiaomi: Mi-2s (id2) (MTP) (2717:ff40) @ bus 1, dev 19
Attempting to connect device(s)
PTP_ERROR_IO: failed to open session, trying again after resetting USB interface
LIBMTP libusb: Attempt to reset device
LIBMTP PANIC: failed to open session on second attempt
Unable to open raw device 0
OK.

[davidak@gaming:~]$ mtp-detect
libmtp version: 1.1.18

Listing raw device(s)
Device 0 (VID=2717 and PID=ff40) is a Xiaomi Mi-2s (id2) (MTP).
   Found 1 device(s):
   Xiaomi: Mi-2s (id2) (MTP) (2717:ff40) @ bus 1, dev 19
Attempting to connect device(s)
LIBMTP PANIC: Unable to read device information on device 19 on bus 1, trying to continueUnable to open raw device 0
OK.

[davidak@gaming:~]$ mtp-detect
libmtp version: 1.1.18

Listing raw device(s)
Device 0 (VID=2717 and PID=ff40) is a Xiaomi Mi-2s (id2) (MTP).
   Found 1 device(s):
   Xiaomi: Mi-2s (id2) (MTP) (2717:ff40) @ bus 1, dev 20
Attempting to connect device(s)
Android device detected, assigning default bug flags
LIBMTP PANIC: could not inspect object property description 0x3001!
LIBMTP PANIC: could not inspect object property description 0x3004!
LIBMTP PANIC: could not inspect object property description 0x3804!
LIBMTP PANIC: could not inspect object property description 0x3807!
LIBMTP PANIC: could not inspect object property description 0x3808!
LIBMTP PANIC: could not inspect object property description 0xb982!
LIBMTP PANIC: could not inspect object property description 0xb983!
LIBMTP PANIC: could not inspect object property description 0xb984!
LIBMTP PANIC: could not inspect object property description 0xba05!
LIBMTP PANIC: could not inspect object property description 0xba82!
LIBMTP PANIC: could not inspect object property description 0xb906!
LIBMTP PANIC: could not inspect object property description 0x3811!
LIBMTP PANIC: could not inspect object property description 0x3812!
Error 7: Unable to read Maximum Battery Level for this device even though the device supposedly supports this functionality
Error 1: Get Storage information failed.
USB low-level info:
   bcdUSB: 512
   bDeviceClass: 0
   bDeviceSubClass: 0
   bDeviceProtocol: 0
   idVendor: 2717
   idProduct: ff40
   IN endpoint maxpacket: 512 bytes
   OUT endpoint maxpacket: 512 bytes
   Raw device info:
      Bus location: 1
      Device number: 20
      Device entry info:
         Vendor: Xiaomi
         Vendor id: 0x2717
         Product: Mi-2s (id2) (MTP)
         Vendor id: 0xff40
         Device flags: 0x18008106
Configuration 0, interface 0, altsetting 0:
   Interface description contains the string "MTP"
   Device recognized as MTP, no further probing.

Does this work for you with the old version? Maybe my smartphone is broken.

The reason I bumped libmtp to 1.1.19 to begin with was that I tried to get 1.1.18 working and failed, and figured maybe bumping might help.
It didn't.
I'm not sure what the issue is though, I wonder if anyone recalls a nixpkgs revision where it did work

@davidak @lovesegfault I created a NixOS test which proves that the upgrade to libmtp 1.1.19 is not the cause of the regression. https://github.com/NixOS/nixpkgs/pull/146084, if someone uses nix-bisect with my test, we can find the cause of the regression.

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/android-mtp-doesnt-work-with-nixos-21-11/16482/3

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/android-file-transfert-mtp-support-has-always-been-half-broken-in-kde/16694/1

Just to mention a workaround: the android-file-transfer always work way more reliably than libmtp. Including in that scenario. Would be so much better if this library could be integrable inside Dolphin.
Also, am I supposed to install gvfs to get MTP working in KDE/Dolphin? It was not installed in my system before and I was able to connect through MTP as far as I could remember.
Also, I get a similar problem as I reported here, but the errors are not identical (gvfs was not installed, but I also get the same error with gvfs installed). Therefore, I'm not sure if the issue is the same or not.

Possibly fixed by https://github.com/NixOS/nixpkgs/pull/152289

@jtojnar It seems to have successfully fixed the test, after rebasing this test on master where the fix is merged.

Still an issue on NixOS 21.11.335072, despite #152306 being merged.

Turns out that fix was wrong, https://github.com/NixOS/nixpkgs/pull/153501 does fix it but looks like backport failed so someone will need to do it manually.

Hello, I think I have the same issue on NixOS 21.11. Running KDE Plasma, device is LG V20, works on Wind-ws.
nix-shell -p nix-info --run "nix-info -m"

system: "x86_64-linux"
host os: Linux 5.10.96, NixOS, 21.11 (Porcupine)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.5.0pre20211206_d1aaa7e
channels(root): "nixos-21.11.335795.88dcc4ff3ba, unstable-22.05pre334855.29d1f6e1f62"
channels(cirno): ""
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

lsusb
Bus 002 Device 002: ID 05e3:0626 Genesys Logic, Inc. USB3.1 Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 8087:0a2a Intel Corp. Bluetooth wireless interface
Bus 001 Device 003: ID 5986:0670 Acer, Inc Lenovo EasyCamera
Bus 001 Device 013: ID 1004:62ce LG Electronics, Inc. LGE Android Phone   <---- this
Bus 001 Device 007: ID 0763:4005 M-Audio Keystation 49
Bus 001 Device 006: ID 413c:2113 Dell Computer Corp. KB216 Wired Keyboard
Bus 001 Device 004: ID 046d:c050 Logitech, Inc. RX 250 Optical Mouse
Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

mtp-detect (I'm using KDE Plasma)
libmtp version: 1.1.19

Listing raw device(s)
Device 0 (VID=1004 and PID=62ce) is a LG Electronics Inc. LG G5 Phone.
   Found 1 device(s):
   LG Electronics Inc.: LG G5 Phone (1004:62ce) @ bus 1, dev 13
Attempting to connect device(s)
libusb_claim_interface() reports device is busy, likely in use by GVFS or KDE MTP device handling alreadyLIBMTP PANIC: Unable to initialize device
Unable to open raw device 0
OK.

journalctl -xe
░░ A start job for unit UNIT has finished successfully.
░░
░░ The job identifier is 125.
Feb 06 16:35:41 berlin kernel: usb 1-3: new high-speed USB device number 8 using xhci_hcd
Feb 06 16:35:41 berlin kernel: usb 1-3: New USB device found, idVendor=1004, idProduct=62ce, bcdDev>
Feb 06 16:35:41 berlin kernel: usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Feb 06 16:35:41 berlin kernel: usb 1-3: Product: LGE Android Phone
Feb 06 16:35:41 berlin kernel: usb 1-3: Manufacturer: LG Electronics Inc.
Feb 06 16:35:41 berlin kernel: usb 1-3: SerialNumber: LGUS🫑🫑🫑🫑🫑🫑🫑🫑🫑🫑
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequenc>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequenc>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequenc>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequenc>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequenc>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequ>
Feb 06 16:35:43 berlin kernel: usb 1-3: USB disconnect, device number 8
Feb 06 16:35:43 berlin org.kde.kmtpd5[1844]: ERROR: Could not close session!
Feb 06 16:35:43 berlin org.kde.kmtpd5[1844]: inep: usb_get_endpoint_status(): No such device
Feb 06 16:35:43 berlin org.kde.kmtpd5[1844]: outep: usb_get_endpoint_status(): No such device
Feb 06 16:35:44 berlin kernel: usb 1-3: new high-speed USB device number 9 using xhci_hcd
Feb 06 16:35:44 berlin kernel: usb 1-3: New USB device found, idVendor=1004, idProduct=62ce, bcdDev>
Feb 06 16:35:44 berlin kernel: usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Feb 06 16:35:44 berlin kernel: usb 1-3: Product: LGE Android Phone
Feb 06 16:35:44 berlin kernel: usb 1-3: Manufacturer: LG Electronics Inc.
Feb 06 16:35:44 berlin kernel: usb 1-3: SerialNumber: LGUS🫑🫑🫑🫑🫑🫑🫑🫑🫑🫑
lines 2241-2274/2274 (END)
░░ A start job for unit UNIT has finished successfully.
░░
░░ The job identifier is 125.
Feb 06 16:35:41 berlin kernel: usb 1-3: new high-speed USB device number 8 using xhci_hcd
Feb 06 16:35:41 berlin kernel: usb 1-3: New USB device found, idVendor=1004, idProduct=62ce, bcdDevice= 3.18
Feb 06 16:35:41 berlin kernel: usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Feb 06 16:35:41 berlin kernel: usb 1-3: Product: LGE Android Phone
Feb 06 16:35:41 berlin kernel: usb 1-3: Manufacturer: LG Electronics Inc.
Feb 06 16:35:41 berlin kernel: usb 1-3: SerialNumber: LGUS996270e5d
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequence: 4351, resource id: 0, major code: 53 (CreatePixmap), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4352, resource id: 33554621, major code: 55 (CreateGC), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4353, resource id: 33554621, major code: 72 (PutImage), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequence: 4354, resource id: 0, major code: 53 (CreatePixmap), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4355, resource id: 33554623, major code: 55 (CreateGC), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4356, resource id: 33554623, major code: 72 (PutImage), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequence: 4357, resource id: 0, major code: 53 (CreatePixmap), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4358, resource id: 33554625, major code: 55 (CreateGC), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4359, resource id: 33554625, major code: 72 (PutImage), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequence: 4360, resource id: 0, major code: 53 (CreatePixmap), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4361, resource id: 33554627, major code: 55 (CreateGC), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4362, resource id: 33554627, major code: 72 (PutImage), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 2 (BadValue), sequence: 4363, resource id: 0, major code: 53 (CreatePixmap), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4364, resource id: 33554629, major code: 55 (CreateGC), minor code: 0
Feb 06 16:35:42 berlin xsession[1571]: qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 4365, resource id: 33554629, major code: 72 (PutImage), minor code: 0
Feb 06 16:35:43 berlin kernel: usb 1-3: USB disconnect, device number 8
Feb 06 16:35:43 berlin org.kde.kmtpd5[1844]: ERROR: Could not close session!
Feb 06 16:35:43 berlin org.kde.kmtpd5[1844]: inep: usb_get_endpoint_status(): No such device
Feb 06 16:35:43 berlin org.kde.kmtpd5[1844]: outep: usb_get_endpoint_status(): No such device
Feb 06 16:35:44 berlin kernel: usb 1-3: new high-speed USB device number 9 using xhci_hcd
Feb 06 16:35:44 berlin kernel: usb 1-3: New USB device found, idVendor=1004, idProduct=62ce, bcdDevice= 3.18
Feb 06 16:35:44 berlin kernel: usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Feb 06 16:35:44 berlin kernel: usb 1-3: Product: LGE Android Phone
Feb 06 16:35:44 berlin kernel: usb 1-3: Manufacturer: LG Electronics Inc.
Feb 06 16:35:44 berlin kernel: usb 1-3: SerialNumber: LGUS🫑🫑🫑🫑🫑🫑🫑🫑🫑🫑

This issue has been fixed for both gvfs (GNOME & co.) and Plasma and relevant PRs backported to 21.11.

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/mounting-of-camera-not-working-gphoto2-canon-camera/24038/2

Hi I have possible the same issue with Xiaomi Redmi 9T. These are the errors I get in syslog:
May 23 16:56:19 i7 gvfsd[9121]: PTP_ERROR_IO: failed to open session, trying again after resetting USB interface May 23 16:56:19 i7 gvfsd[9121]: LIBMTP libusb: Attempt to reset device May 23 16:56:19 i7 kernel: [ 3011.442049] usb 1-11: reset high-speed USB device number 17 using xhci_hcd May 23 16:56:20 i7 kernel: [ 3011.718190] usb 1-11: reset high-speed USB device number 17 using xhci_hcd May 23 16:56:34 i7 gvfsd[9121]: LIBMTP PANIC: failed to open session on second attempt May 23 16:56:34 i7 kernel: [ 3026.035385] usb 1-11: USB disconnect, device number 17 May 23 16:56:35 i7 gvfsd[9121]: Device 0 (VID=2717 and PID=ff40) is a Xiaomi Mi-2s (id2) (MTP). May 23 16:56:36 i7 kernel: [ 3027.869938] usb 1-11: new high-speed USB device number 19 using xhci_hcd May 23 16:56:36 i7 kernel: [ 3028.018914] usb 1-11: New USB device found, idVendor=2717, idProduct=ff10, bcdDevice= 2.23 May 23 16:56:36 i7 kernel: [ 3028.018927] usb 1-11: New USB device strings: Mfr=1, Product=2, SerialNumber=3 May 23 16:56:36 i7 kernel: [ 3028.018934] usb 1-11: Product: Redmi Note 9T May 23 16:56:36 i7 kernel: [ 3028.018940] usb 1-11: Manufacturer: Xiaomi May 23 16:56:36 i7 kernel: [ 3028.018944] usb 1-11: SerialNumber: cyl7wszpug8tpfj7 May 23 16:56:36 i7 mtp-probe: checking bus 1, device 19: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-11" May 23 16:56:36 i7 mtp-probe: bus: 1, device: 19 was not an MTP device May 23 16:56:36 i7 mtp-probe: checking bus 1, device 19: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-11" May 23 16:56:36 i7 mtp-probe: bus: 1, device: 19 was not an MTP device May 23 17:00:35 i7 kernel: [ 3266.817063] usb 1-11: USB disconnect, device number 19 May 23 17:00:36 i7 kernel: [ 3267.832859] usb 1-11: new full-speed USB device number 20 using xhci_hcd May 23 17:00:36 i7 kernel: [ 3267.992139] usb 1-11: not running at top speed; connect to a high speed hub May 23 17:00:36 i7 kernel: [ 3268.010106] usb 1-11: New USB device found, idVendor=2717, idProduct=ff40, bcdDevice= 2.23 May 23 17:00:36 i7 kernel: [ 3268.010120] usb 1-11: New USB device strings: Mfr=1, Product=2, SerialNumber=3 May 23 17:00:36 i7 kernel: [ 3268.010126] usb 1-11: Product: Redmi Note 9T May 23 17:00:36 i7 kernel: [ 3268.010132] usb 1-11: Manufacturer: Xiaomi May 23 17:00:36 i7 kernel: [ 3268.010136] usb 1-11: SerialNumber: cyl7wszpug8tpfj7 May 23 17:00:41 i7 gvfsd[9266]: PTP_ERROR_IO: failed to open session, trying again after resetting USB interface May 23 17:00:41 i7 gvfsd[9266]: LIBMTP libusb: Attempt to reset device May 23 17:00:41 i7 kernel: [ 3273.213222] usb 1-11: reset full-speed USB device number 20 using xhci_hcd May 23 17:00:42 i7 kernel: [ 3273.509323] usb 1-11: reset full-speed USB device number 20 using xhci_hcd May 23 17:01:42 i7 gvfsd[9266]: LIBMTP PANIC: failed to open session on second attempt May 23 17:01:43 i7 gvfsd[9266]: Device 0 (VID=2717 and PID=ff40) is a Xiaomi Mi-2s (id2) (MTP). May 23 17:02:23 i7 gvfsd[9311]: PTP_ERROR_IO: failed to open session, trying again after resetting USB interface May 23 17:02:23 i7 gvfsd[9311]: LIBMTP libusb: Attempt to reset device May 23 17:02:23 i7 kernel: [ 3375.346410] usb 1-11: reset full-speed USB device number 20 using xhci_hcd May 23 17:02:24 i7 kernel: [ 3375.738435] usb 1-11: reset full-speed USB device number 20 using xhci_hcd
I recently upgraded from LM20.3 to LM21.1 with the hope to solve this but no luck. Any suggestions?

Note that I recently tried again MTP from 2caf4ef5005ecc68141ecb4aac271079f7371c44, and it's still really unstable (first copy/paste fails, and then I just can't access my device anymore). Details are in https://github.com/NixOS/nixpkgs/issues/186158


Enable the prefer-exponentiation-operator ESLint rule

Please see https://eslint.org/docs/rules/prefer-exponentiation-operator for additional information.

/botio test

I also find this easier to read. Thanks!


Update master -> main for url of collect_env.py

Thanks for the ping in https://github.com/pytorch/audio/pull/3271 @nateanl

We could, but the bug report template is already quite long so I'm not sure it adds a ton of value. There's also the rare possibility that the users simply doesn't have torch installed when they submit a report, which is something the collect_env.py script actually handles.


[Bug] InitialzeSecurityContext

Im getting this bug when trying to add my personal key-id (Log attached)
arcdps.log

Duplicate of #9