MM-28474: Custom Sidebar Categories

Summary
This PR allows the user to see their "custom" categories in the sidebar; bringing the mobile app further inline with the web/desktop clients.
It also respects the EnableLegacySidebar setting - when enabled, it displays the existing sidebar. For server versions less than or equal to 5.31.0, the ExperimentalSidebarCategories displays the new sidebar.
Currently UnreadsOnTop is permanently set to true but can now be used to follow user preferences on the mobile app.
To-Do

[x] Unable to create channels in categories via the latest build
[x] "More unreads" banner always visible
[x] Category collapsing multiple triggers
[x] Sort order not respecting user pref on mobile

Ticket Link
Resolves https://mattermost.atlassian.net/browse/MM-28474
Checklist

[x] Added or updated unit tests (required for all new features)
[x] Has UI changes
[x] Includes text changes and localization file updates

Device Information
This PR was tested on:

iPhone 12 (Simulator) / iOS14
Google Nexus 4 (Simulator) / Android 29

Screenshots

https://user-images.githubusercontent.com/456511/126950557-ac732cc1-bece-4562-89fc-a848f9de8cc9.mov
Release Note

App now displays custom categories in the sidebar.

@shazm  I see this and #5462 which one is it? and can this be done in one PR?

@shazm I see this and #5462 which one is it? and can this be done in one PR?

The other one was the typescript rewrite I had spent a bit of time on, closed that one for now.

@enahum Just two main comments;

Category sections now have their own render / build methods which now separates them out to the existing list builders
I've kept a showLegacySidebar prop inside the list mostly to handle the case for the legacy flag in new servers, and experimental flag in the old one; and have used channelsByCategory.length to make sure that there are category-channels available.

@shazm there are some UI differences between Prototype and this PR
Issue# 01:
Issues #02: If I create Channel (Private/Public) using Mobile, these channels does not show up in Mobile but show up in WebUI.
Issue# 03: Categories name should be in Capital

Issue# 04: Only Unread Channel shows up on Favorites Category

Issue# 05: i. In Web UI move unread channel to Favorites Category
ii. In Mobile collaps Favorites Category
iii. Observe that in WebUI unread Channel will be remove from Favorities Category
Should I test against Figma ?

@furqanmlk
Issue(s) 1 / 2: Fixing now
Issue 3: Fixed
Issues 4 / 5: For mobile, the "unread" always remain at the top (outside their category).

@furqanmlk
Issue(s) 1 / 2: Fixing now
Issue 3: Fixed
Issues 4 / 5: For mobile, the "unread" always remain at the top (outside their category).

Thanks @shazm I have verified Issue# 3
According to the ticket https://mattermost.atlassian.net/browse/MM-28474
Should Categories be in following order ?
UNREAD
FAVORITES
CUSTOM
CHANNEL
DIRECT MESSAGE
Currently, except UNREAD, all Categories can be switched around

Should Categories be in following order ?
UNREAD
FAVORITES
CUSTOM
CHANNEL
DIRECT MESSAGE

@furqanmlk confirm with PM, but my 2 cents every category should allow to be re-ordered and follow the webapp order (as currently they can be ordered from the mobile app) other than the unread section that should always be at the top.
FYI @esethna
Also I'm going to reiterate that for a second iterarion we should be able to let the user decide if there is an unread section or if unread channels should remain in their own category.

reiterate

Thanks @enahum ,
Did you mean "Currently they can or Can NOT be ordered from Mobile app" what I see now Categories can NOT be moved up and down from Mobile.
Sure I will double check with PM for confirmation

@furqanmlk sorry let me clarify.
Categories currently Cannot be moved or sorted in the mobile app but they can on the webapp, mobile app should follow exactly the categories order set in the webapp with the addition of the unreads category at the very top which is unmovable.
Hope this clarifies things a bit

Yep, as Elias stated ^

Adding @matthewbirtch for a UX review
Note Shaz discussed one complication with me regarding the animation for expanding and collapsing categories, so we have a follow-up ticket for that

Building app in separate branch.

Issue# 06: New Channel or New DM does now show up in Category until it is collapsed and expend

@shazm looks like the build failed. I can review and test once that's resolved

Updated Issue# 08 above with crash screen shot

Issue 8 is no crash but a warning, @shazm make sure to handle it. Add me as a reviewer after all feedback has been addressed

@shazm
I tested your new changes
here are the existing issues,
Issue# 01: New DM in Web App does not show up in Mobile APP
Issue#02: If DM is removed from Mobile, it does not get deleted from WebApp and Vice versa
Issue#03: After renaming channel in WebApp, channel name does not get updated, until  category is collapsed and expand in Mobile
Issue#04: Adding or Deleting Team from WebApp is crashing Mobile app
https://user-images.githubusercontent.com/6909890/127541802-bf7c379e-6f44-415f-8798-631be75a2272.mp4
Issue#05: Enabling Legacy Sidebar crashing Mobile app
https://user-images.githubusercontent.com/6909890/127543950-2c7bb1cf-f3dc-4238-8b2e-f5ce2517eb3b.mp4

Issue#5: Enabling Legacy Sidebar crashing Mobile app

@shazm you'll need to run  npm run i18n-extract to make sure the localizations get added to the en.json file.
@furqanmlk once the localizations are there  make sure to run npm clean && npm i or just re-generatethe assets by runningnode ./scripts/generate-assets.js`
@shazm There are multiple conflicts here, please make sure to resolve them by merging master into this branch

@shazm I think this might need a merge into master and some conflicts resolutions.

@shazm this has a bad merge.. there is no way this PR has more than a thousand files changed, please look into this or close and re-open another PR

@shazm I think this might need a merge into master and some conflicts resolutions.

@shazm this has a bad merge.. there is no way this PR has more than a thousand files changed, please look into this or close and re-open another PR

Yup I think the merge/rebase from master didn't quite work, will re-do.

I've corrected the merge, rebased and resolved a few of the conflicts.
Items left to address which I'm working through:

Enabling threads throws errors with the new categories sidebar
Adding tests for categories, and updating the existing ones to reflect the new feature flags
ESR "Experiment Categories" flag does not show new sidebar
UX updates for bottom drawer

Items addressed:

Channel (DM, GM, Channel) updates (rename, create, move, archived / unarchived, delete) are now handled appropriately
Switching, adding to and removing oneself from the team no longer results in errors

For future versions:

Animating the show/hide (collapse) of categories
Moving channels between categories
Respecting the unreads always on top flag on mobile

Thanks @shazm!

Building app in separate branch.

@shazm I tried to get a build to test with but it looks like the build failed

@shazm I tried to get a build to test with but it looks like the build failed

@matthewbirtch Yup sorry there's just one last failing test which I'm currently waging a little war with. I think @enahum would be very displeased if I disabled it or put a hacky work-around in 😅

@shazm I tried to get a build to test with but it looks like the build failed

ok, please tag me when it's ready for review

@shazm how is this going? We should get a test build up asap so we can get reviews going

@shazm FYI, I'm off this week. So if this needs to be reviewed this week, @andrewbrown00 will step in to help.

@shazm , as we discussed, I have listed down fixed and not fixed issue

Issue#: Bottom drawer UX 🔴

Issue#: In ESR (5.31) after enabling "experimental channel categories" flag, Mobile app still show old sidebar🔴

Issue#: Enabling Legacy Sidebar crashing Mobile app 🔴

Issue#: New DM in Web App does not show up in Mobile APP ✅
Issue#: New Channel or New DM does not show up in Category until it is collapsed and expend ✅
Issue#: If I create Channel (Private/Public) using Mobile, these channels does not show up in Mobile but show up in WebUI. ✅
Issue#: Categories name should be in Capital ✅
Issue#: WebApp DM does not show up in Mobile ✅
Issue#: Adding or Deleting Team from WebApp is crashing Mobile app ✅
Issue#: After renaming channel in WebApp, channel name does not get updated, until category is collapsed and expand in Mobile ✅
Issue#: Seeing Crash when logging in ESR ✅

Hi @shazm ,
I noticed that you pushed new commits, I rested above test cases. I still see those failed test cases.
Please advise

@shazm , as we discussed, I have listed down fixed and not fixed issue

Issue#: Bottom drawer UX 🔴

Issue#: In ESR (5.31) after enabling "experimental channel categories" flag, Mobile app still show old sidebar🔴

Issue#: Enabling Legacy Sidebar crashing Mobile app 🔴

Issue#: New DM in Web App does not show up in Mobile APP ✅
Issue#: New Channel or New DM does not show up in Category until it is collapsed and expend ✅
Issue#: If I create Channel (Private/Public) using Mobile, these channels does not show up in Mobile but show up in WebUI. ✅
Issue#: Categories name should be in Capital ✅
Issue#: WebApp DM does not show up in Mobile ✅
Issue#: Adding or Deleting Team from WebApp is crashing Mobile app ✅
Issue#: After renaming channel in WebApp, channel name does not get updated, until category is collapsed and expand in Mobile ✅
Issue#: Seeing Crash when logging in ESR ✅

Thanks @shazm
I tested all scenarios
All looks good except following one existing two new issues

Issue#: Bottom drawer UX 🔴. (OLD)

Issue#: In ESR (5.31) after enabling "experimental channel categories" flag, Mobile app still show old sidebar🔴 (OLD)

https://user-images.githubusercontent.com/6909890/130138931-177c4eaa-3534-4c4b-8c4c-8d0d88b7546e.mp4

Issue#: DM can not be deleted from Mobile and still shows when deleting from WebApp 🔴 (NEW)

https://user-images.githubusercontent.com/6909890/130138975-174e9dff-8004-48e6-b15a-67351288c587.mp4

@shazm I'll wait to review this until the above are resolved

Building app in separate branch.

@furqanmlk I've corrected the DMs, and ESR I'm unable to reproduce as it swaps over fine on my machine. My process:
https://user-images.githubusercontent.com/456511/130729793-7b3441b5-2976-4d24-b8f2-a4251a565eb4.mov

@matthewbirtch regarding # 4, that is a known issue with CRT enabled, but I believe it should have been fixed and merged already: https://github.com/mattermost/mattermost-mobile/pull/5622

@esethna / @matthewbirtch - App should be ready for another pass; the only thing I'm still trying to find a good solution for is the collapsing getting triggered a few times; I think I have to resort to putting a delay/disable on the button for a second or two after the first click to give the app some time to complete that sync.

Building app in separate branch.

I tried adding a DM inside one of my custom categories (by tapping the + icon from that category), but it added the DM to my Direct Messages category instead
I tried adding a channel to one of my custom categories (by tapping the + icon from that category), but it added the channel to my Channels category instead

@matthewbirtch @shazm we don't currently have this functionality on webapp, this could be a follow-up ticket in my mind

I tried adding a DM inside one of my custom categories (by tapping the + icon from that category), but it added the DM to my Direct Messages category instead
I tried adding a channel to one of my custom categories (by tapping the + icon from that category), but it added the channel to my Channels category instead

@matthewbirtch @shazm we don't currently have this functionality on webapp, this could be a follow-up ticket in my mind unless it's an easy fix

@esethna Shaz had marked Create channel in category as done, so I was expecting the above to work. I'm fine if we want to move this out of this PR though for now

Building app in separate branch.

@shazm I just tried the latest build you triggered and it definitely seems better. At least I can now see the unreads category and the favorites category is collapsable again.
However, all the other issues still seem to be unresolved.
Plus, one new item:

I can't seem to get rid of the More unreads banner. Even if I tap it or scroll to the top it doesn't go away

I'm digging into this now;

[ ] Unable to create channels in categories via the latest build
[ ] "More unreads" banner always visible
[ ] Category collapsing multiple triggers

@esethna once I've figured out those three I'll have a look to see if it's a quick update to create DM's directly in categories (it might actually be the case).

@shazm I also noticed that the order of the new unreads section is different when comparing mobile to webapp. Can we make sure we are following the same sorting logic across devices so the sidebar unreads will always match?
Note: I might be on an old build if this was already fixed

@shazm I also noticed that the order of the new unreads section is different when comparing mobile to webapp. Can we make sure we are following the same sorting logic as the webapp so the sidebar unreads will always match across devices ?
Note: I might be on an old build if this was already fixed

Yup I'll dig into it - the mobile app uses the order set on the server (manual, alphabetical, recent) - will double check those filters / sorts and preference settings are coming through correctly.

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/17806
https://circleci.com/gh/mattermost/mattermost-mobile/17805

Artifact links:
https://17806-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa
https://17805-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk

@esethna / @matthewbirtch - I've test the latest build on esr.test.mattermost and against an rc build locally from my iphone and android device - I'm able to create channels in categories.
The unreads sorting has also been fixed, and the category collapsing now waits for an OK response from the server before actually collapsing so depending on your connection it might be instant or maybe a second or two for it to kick in.
I'm trying to reproduce the "More Unreads" now - I think you need a lot of channels / unreads for it to kick in, but I'll have that sorted soon.

Why would you wait for an "OK" respinse from the server? That seems wrong to me, I rather have them not sync than have the UI behaving as non-responsive

I'm able to create channels in categories.

I can create channels in categories as well, but if I use the More channels' option or the New conversation` option from the new bottom sheet, the channel or DM I select from the modal does not get added to the category as the title in the bottom sheet suggests that it will

The unreads sorting has also been fixed

I'm still seeing a slight discrepancy in order

Web app
Mobile

and the category collapsing now waits for an OK response from the server. before actually collapsing so depending on your connection it might be instant or maybe a second or two for it to kick in.

As much as this works better now, I'm worried that this will cause a delay and the expand/collapse should be immediate without any delay. If there is enough of a delay, this will cause users to tap again thinking that the initial tap didn't work. So, I'm not sure this is the right fix

@matthewbirtch I wonder if the difference in sorting the channels is cause you had set the sort by recency is the legacy sidebar or something like that.
I have not looked at the code, but that could be a reason, how does it look in the current app? And not sure if the new sidebar is taking that setting into account or not

Oh interesting @enahum. The order for the current app and this PR build is different as well.
The current app seems to match the webapp order
Here's the comparison between the current app and this PR

Well, question then is, do we respect the legacy settings applied? can that be changed somehow if I want to sort alphabetically or by recency and how do I go about it? in the meantime, while we figure this questions out, @shazm I think with this you should have enough information to make sure they match for now.

Well, question then is, do we respect the legacy settings applied?

I don't really know how the legacy sidebar settings would apply still to me or how I would change that now - I don't have a way of turning those settings back on from what I can tell.

I'm able to create channels in categories.

I can create channels in categories as well, but if I use the More channels' option or the New conversation` option from the new bottom sheet, the channel or DM I select from the modal does not get added to the category as the title in the bottom sheet suggests that it will

The unreads sorting has also been fixed

I'm still seeing a slight discrepancy in order

Web app
Mobile

and the category collapsing now waits for an OK response from the server. before actually collapsing so depending on your connection it might be instant or maybe a second or two for it to kick in.

As much as this works better now, I'm worried that this will cause a delay and the expand/collapse should be immediate without any delay. If there is enough of a delay, this will cause users to tap again thinking that the initial tap didn't work. So, I'm not sure this is the right fix

Ah! Sorry @matthewbirtch - totally misunderstood the bug the first time, this makes a lot more sense; will work through it.
@enahum Yup yup, I think there is a legacyAutoFilterSort method I can use from earlier, thanks! 🙏
For the collapsing - I believe the app was updating the collapse status locally (dispatching the action), and then sending the update to the server. That was triggering another RecievedCategories action once the server returned true, thus causing multiple renders - and especially when you clicked it a few times in succession. I'll see if I can refactor it a bit for this specific update.

Hey @shazm is this ready for re-review?

Hey @shazm is this ready for re-review?

Almost - I'm just trying to correct the "more unreads" banner, it's proving a bit finicky 😖 - the other things should be good to go.

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/17917
https://circleci.com/gh/mattermost/mattermost-mobile/17916

Artifact links:
https://17917-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17916-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

@shazm @matthewbirtch @furqanmlk Is this in a state where we can merge it in a non-perfect-but-adding-value-and-does-no-harm state? If so I think we should do so and then do the last mile fixes afterwards.

@shazm @matthewbirtch @furqanmlk Is this in a state where we can merge it in a non-perfect-but-adding-value-and-does-no-harm state? If so I think we should do so and then do the last mile fixes afterwards.

@mkraft I'm ok with that approach, however, I'm still seeing some more glaring issues.
For one, I still get this error on first use of the app when I install it.

Also, I still am having the issue with the more unreads banner not going away. This is also too glaring IMO. It is very much in the way of users' being able to see channels in their sidebar.
I am also still seeing the order descrepency between mobile and webapp in the unreads section. I'm less worried about this one, but it should be fixed soon after if we merge this.
The collapsing issues are still there as well, but if we can fix that right after we merg this, I am ok with it.

@shazm @matthewbirtch @furqanmlk Is this in a state where we can merge it in a non-perfect-but-adding-value-and-does-no-harm state? If so I think we should do so and then do the last mile fixes afterwards.

Hi @mkraft
Most of my test cases passed, except two,

After login, no channels are shown until user moves around --> Not Urgent

https://user-images.githubusercontent.com/6909890/133313644-fe48dd8d-e715-4cd2-aafc-acc5ed060747.mp4

Deleting DM from Mobile, does not delete from WebApp --> Not Urgent

I am ok to merge and fix these issues later.

Based in QA I don't think this is ready to merge.
I would encourage @shazm to spend some time figuring the issues highlighted, specially true as this will become the initial screen on v2 and in my opinion it has to be flawless.
For some reason this has taken way too long and it seems that it has a long way to go, and that in itself worries me.
I think it would be good if whoever did the work on the webapp jumps in to help and perhaps with two ppl working on this it moves not only faster but with enough thought on v2 as well so that the port does not take this long.

@enahum didn't QA give the green light to merge given the issues found are not immediate blockers?

I am ok to merge and fix these issues later.

In my mind this feature can't be "flawless" until we get more eyes on it, and to do that we need to get it in the beta app. I agree we need to make sure it's solid and bug free, but iterating forever on the PR is going to put it further behind in my mind. We need a wider audience testing it and using it so we can find, prioritize and fix the bugs with urgency. We're not going to ship it broken, we just need more people testing it.
My 2 cents ^ Happy to chat about it more
cc// @mkraft

@esethna do you really think having an empty sider or the app crashing is good enough? Agree on the "flawless" part but definitely not with the rest.
Just focus on this, make it work as good as possible and then lets merge it.

My problem is that this is removing the legacy sidebar and it will not be eqsy to revert in case we need to

My problem is that this is removing the legacy sidebar and it will not be eqsy to revert in case we need to

@enahum ya understood. Agree we need to make sure a base level of quality is there

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/17917
https://circleci.com/gh/mattermost/mattermost-mobile/17916

Artifact links:
https://17917-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17916-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

I've pushed a few changes up that hopefully resolve:

Sidebar showing blank on initialisation (@furqanmlk)
More unreads banner (@matthewbirtch)
Unreads sort order (@matthewbirtch) - note that this matches what was default on mobile in what is now the legacy sidebar; not what is on the web. Do we want this match the web, or what was the unreads sort order for mobile? I believe web is based on recency, and mobile is alphabetical. (@esethna)

@enahum All the code for the legacy sidebar still exists; we can set shouldShowLegacySidebar to return true to display the old sidebar.
https://user-images.githubusercontent.com/456511/133382805-e9062a1f-4ea0-4bcd-a38a-fa60f31f301c.mp4

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/17941
https://circleci.com/gh/mattermost/mattermost-mobile/17940

Artifact links:
https://17941-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa
https://17940-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/17945
https://circleci.com/gh/mattermost/mattermost-mobile/17944

Thanks @shazm
Sidebar empty issue has been resolved.

@shazm Regarding the expanding and collapsing of categories, I chatted with Elias yesterday and he mentioned you guys spoke about using optimistic actions and always trusting the client. If this is an issue perhaps you two can discuss more or pair program to solve this part?

@shazm Regarding the expanding and collapsing of categories, I chatted with Elias yesterday and he mentioned you guys spoke about using optimistic actions and always trusting the client. If this is an issue perhaps you two can discuss more or pair program to solve this part?

Yup - I updated to be optimistic, and have added a "throttle" to the number of times you can click the header to collapse as well (once a second), and updated the logic that dictates re-renders to be stricter. Other than this - I think all other issues have been resolved?

I updated to be optimistic, and have added a "throttle" to the number of times you can click the header to collapse as well (once a second), and updated the logic that dictates re-renders to be stricter.

Thanks @shazm, just to understand, does the version Matt tested above have this fix for the collapsing/expanding? See his comment:

The expanding collapsing issue is still quite frustrating to use to be honest. Since that's a core piece of this PR, I don't really see why we would merge without fixing that.

I updated to be optimistic, and have added a "throttle" to the number of times you can click the header to collapse as well (once a second), and updated the logic that dictates re-renders to be stricter.

Thanks @shazm, just to understand, does the version Matt tested above have this fix for the collapsing/expanding? See his comment:

The expanding collapsing issue is still quite frustrating to use to be honest. Since that's a core piece of this PR, I don't really see why we would merge without fixing that.

Yup that's with the aforementioned fixes, I'll see if there's something more I can put in.

@furqanmlk @matthewbirtch, just to summarize, are the only outstanding issues,

Unreads sorting not matching webapp. @shazm note that webapp doesn't simply sort by recency, there is other logic in there (ie mentions first) that we should respect so that mobile matches the webapp exactly. Perhaps take a look at the webapp code so we can recreate it here? Harrison could be a good guide here if needed. This could be filed separately and does not need to block merging.

Expand/Collapse jankiness: Sounds like we should try to solve that before this PR goes in.

Anything else?

@furqanmlk @matthewbirtch, just to summarize, are these the only outstanding issues we know of?

Unreads sorting not matching webapp. @shazm note that webapp doesn't simply sort by recency, there is other logic in there (ie mentions first) that we should respect so that mobile matches the webapp exactly. Perhaps take a look at the webapp code so we can recreate it here? Harrison could be a good guide here if needed. This could be filed separately and does not need to block merging.

Expand/Collapse jankiness: Sounds like we should try to solve that before this PR goes in.

Anything else?

I think that's it, and I Agree that we can fix the order issue in another PR.

@furqanmlk @matthewbirtch, just to summarize, are these the only outstanding issues we know of?

Unreads sorting not matching webapp. @shazm note that webapp doesn't simply sort by recency, there is other logic in there (ie mentions first) that we should respect so that mobile matches the webapp exactly. Perhaps take a look at the webapp code so we can recreate it here? Harrison could be a good guide here if needed. This could be filed separately and does not need to block merging.
Expand/Collapse jankiness: Sounds like we should try to solve that before this PR goes in.

Anything else? Apologies, I cannot test it since I upgraded my phone to the iOS15 beta and PR builds aren't compatible

I re-tested all my scenarios, not found any issue so far.

@mkraft @shazm given there's only one outstanding issue (expand/collapse jankiness) and QA is green light ^, should we start rounding up the dev reviews?

I've just pushed a

@mkraft @shazm given there's only one outstanding issue (expand/collapse jankiness) and QA is green light ^, should we start rounding up the dev reviews?

Yup yup!
I've just pushed a quick change for default unreads order to be based around recency; and it's using the same logic as the webapp (mentions first etc).
I'll keep digging away at the re-rendering issues around collapsing categories.

@mkraft @shazm Note that @enahum is on PTO and I confirmed with him that he doesn't want his review to block merging. We can have other devs complete the reviews. Please help round them up as needed to keep reviews moving as we solve the expand/collapse issue

Building app in separate branch.

@esethna / @matthewbirtch / @furqanmlk - I think I've resolved the jankiness issue with help from @mkraft - could you give it another go when you get a chance?
Turns out there was also websocket event also triggering a re-render; so we've put a check in place for that.

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/17954
https://circleci.com/gh/mattermost/mattermost-mobile/17953

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/17954
https://circleci.com/gh/mattermost/mattermost-mobile/17953

Artifact links:
https://17954-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17953-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

Artifact links:
https://17954-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17953-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

Failed to delete ref. @mattermost/core-build-engineers have been notified. Error
DELETE https://api.github.com/repos/mattermost/mattermost-mobile/git/refs/heads/build-pr-5460-c3e1aec: 422 Reference does not exist []

Looks like a new issue that I haven't seen yet.
On first install, All of my categories are collapsed and not able to expand

If I close the app and restart it appears to be resolved.
The collapsing/expanding might be marginally better, but it's still pretty bad, sorry ☹

Looks like a new issue that I haven't seen yet.
On first install, All of my categories are collapsed and not able to expand
If I close the app and restart it appears to be resolved.
As for the collapsing/expanding, it might be marginally better, but it's still pretty bad, sorry ☹

Yup I can recreate that bug - shall have a dig into it.
Hmm I wonder if it's an odd build again - I can't see any rendering issues anymore on the simulator; will try on various devices.

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/17954
https://circleci.com/gh/mattermost/mattermost-mobile/17953

Artifact links:
https://17954-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17953-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

Artifact links:
https://17954-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17953-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

This didn't generate install links in the QA: Builds channel. How can I install from these links?

Artifact links:
https://17954-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17953-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

This didn't generate install links in the QA: Builds channel. How can I install from these links?

Try this link from your iOS device.

Artifact links:
https://17954-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17953-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

This didn't generate install links in the QA: Builds channel. How can I install from these links?

Try this link from your iOS device.

Thanks @mkraft. I was able to get it installed with that link.
However, the collapse/expand issues still remain with no visible improvement

Artifact links:
https://17954-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17953-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

This didn't generate install links in the QA: Builds channel. How can I install from these links?

Try this link from your iOS device.

Thanks @mkraft. I was able to get it installed with that link.
However, the collapse/expand issues still remain with no visible improvement

Would you be willing to screen record what you're seeing please? I just want to make sure we know what you're seeing.

Artifact links:
https://17954-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17953-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

This didn't generate install links in the QA: Builds channel. How can I install from these links?

Try this link from your iOS device.

Thanks @mkraft. I was able to get it installed with that link.
However, the collapse/expand issues still remain with no visible improvement

Would you be willing to screen record what you're seeing please? I just want to make sure we know what you're seeing.

No problem, it seems to happen worse when I tap to open and close in quicker succession. It might be hard to tell in the video as I can't easily see when I'm tapping and when it's collapsing/expanding on its own.
https://user-images.githubusercontent.com/2040554/133676664-4f67e16c-6594-402f-b422-605247d383aa.MP4
.

Artifact links:
https://17954-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17953-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

This didn't generate install links in the QA: Builds channel. How can I install from these links?

Try this link from your iOS device.

Thanks @mkraft. I was able to get it installed with that link.
However, the collapse/expand issues still remain with no visible improvement

Would you be willing to screen record what you're seeing please? I just want to make sure we know what you're seeing.

No problem, it seems to happen worse when I tap to open and close in quicker succession. It might be hard to tell in the video as I can't easily see when I'm tapping and when it's collapsing/expanding on its own.
RPReplay_Final1631821736.MP4
.

I can't really tell when you're clicking. Are you seeing some slight latency on the clicks or are the headers opening and closing on their own?

@larkox @catalintomai can you guys please help prioritize reviews on this PR? @shazm is still working out an issue with the expanding/collapsing ^, but otherwise we'd like to get dev reviews completed.

I can't really tell when you're clicking. Are you seeing some slight latency on the clicks or are the headers opening and closing on their own?

Ya, sorry I wasn't sure if the video would make it clear. It's not a latency thing. It's opening and closing on its own.
When I tap a category to open it and then close it again quickly after, it then has a kind of its own and opens and closes without me tapping

I can't really tell when you're clicking. Are you seeing some slight latency on the clicks or are the headers opening and closing on their own?

Ya, sorry I wasn't sure if the video would make it clear. It's not a latency thing. It's opening and closing on its own.
When I tap a category to open it and then close it again quickly after, it then has a kind of its own and opens and closes without me tapping

Yup we saw we could reliably reproduce it by clicking at least 3 headers in succession quickly - the last one would open / close on its own. After the re-render fix I was not able to reproduce it; but it does make that first initialise halt - just working through this now

@larkox - I've gone through and updated all the points, and where I didn't I've left a comment to explain why - thanks for the feedback!
@matthewbirtch / @esethna - I ended up adding a "debounce" to the websocket event that made the categories jump, it's not perfect but I think it should be an improvement.
@enahum / @mkraft / @catalintomai  - There's race condition here; when a client sends a category update to the server and gets an OK back, it also gets a websocket event saying that the categories were updated. This is then used to go and fetch the updated categories (as there's no other way to check what was updated); but often the server might be behind the client by the time the fetch completes. It might be worth looking at sending the update in the websocket payload at some point so the client can just use diff from the websocket rather than making a fetch call.

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/17987
https://circleci.com/gh/mattermost/mattermost-mobile/17986

Artifact links:
https://17987-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.apk
https://17986-70265724-gh.circle-artifacts.com/0/tmp/artifacts/Mattermost_Beta.ipa

it's not perfect but I think it should be an improvement.

@shazm Would you be able to describe specifically what you mean by not perfect in terms of the behaviour you're seeing?

@matthewbirtch Would you mind please taking a look at the latest build?

@matthewbirtch Would you mind please taking a look at the latest build?

I just tested on iOS and it seems like the issues are resolved. I'll take a quick look at android as well, but I think we're good

Approving this. The expanding and collapsing is WAY better now. We should probably look at how we can polish a little further as it's not bulletproof yet, but maybe we can do that when we get expanding/collapsing animation in place

Thanks very much @matthewbirtch for looking at this today, really appreciate it.

it's not perfect but I think it should be an improvement.

@shazm Would you be able to describe specifically what you mean by not perfect in terms of the behaviour you're seeing?

As the debounce starts limiting the fetches locally - if I've fired off a few updates locally and made a change in the sidebar for a category at the same time on a different client - the mobile app will become out of sync with the server until the next update comes through that allows fetch (debounce is set to 1000ms - which I think strikes a decent enough balance).
I don't know how often users would be on multiple clients at the same time, but it's a case that I can reliably reproduce.

@furqanmlk: @enahum has said he'll add his change requests after this is merged, which we've agreed to address before the Oct 16th release, so it's in your hands now.

@furqanmlk: @enahum has said he'll add his change requests after this is merged, which we've agreed to address in a new pull request before the Oct 16th release, so it's in your hands now.

running smoke tests, will update shortly

Cherry pick is scheduled.

Error trying doing the automated Cherry picking. Please do this manually
+++ Updating remotes...
Fetching upstream
Failed to add the RSA host key for IP address '<IP_ADDRESS>' to the list of known hosts (/app/.ssh/known_hosts).
From github.com:mattermost/mattermost-mobile
 * [new branch]          MM-31389               -> upstream/MM-31389
   7c6d7880f..96323eaa0  MM-34842-Global_threads_options -> upstream/MM-34842-Global_threads_options
 * [new branch]          MM-36687_push_notifications -> upstream/MM-36687_push_notifications
 * [new branch]          MM-38102-selctor-field-value -> upstream/MM-38102-selctor-field-value
   6d9ca008b..9f4c77d13  apps-form-clear-select -> upstream/apps-form-clear-select
 * [new branch]          apps-plugin-enable-websocket -> upstream/apps-plugin-enable-websocket
 * [new branch]          build-368              -> upstream/build-368
 * [new branch]          build-pr-5395-4c99b07  -> upstream/build-pr-5395-4c99b07
 * [new branch]          build-pr-5460-eb1c81e  -> upstream/build-pr-5460-eb1c81e
   65c3e05fd..1c26f14fd  gekidou                -> upstream/gekidou
   0266ff7b3..8aa9303e9  gekidou-channel-entry  -> upstream/gekidou-channel-entry
 * [new branch]          gekidou-native         -> upstream/gekidou-native
 * [new branch]          gekidou-server-screen  -> upstream/gekidou-server-screen
 * [new branch]          gekidou_account_screen -> upstream/gekidou_account_screen
 * [new branch]          larkox-FetchPostOptionsIfNeeded -> upstream/larkox-FetchPostOptionsIfNeeded
   f7eecaccc..64223efaf  master                 -> upstream/master
   c0fb9aa4b..2cf737315  release-1.46           -> upstream/release-1.46
 * [new tag]             v1.46.0                -> v1.46.0
Fetching origin
Failed to add the RSA host key for IP address '<IP_ADDRESS>' to the list of known hosts (/app/.ssh/known_hosts).
+++ Updating remotes done...
!!! 'upstream/release-1.47' not found. The second argument should be something like upstream/release-0.21.
    (In particular, it needs to be a valid, existing remote branch that I can 'git checkout'.)

+++ Returning you to the master branch and cleaning up.

v1.47 branch wasn't created yet - no need to cherry-pick.

Created a ticket for follow-up fixes: https://mattermost.atlassian.net/browse/MM-38677


[rewrite: router] Racing two onmatch w/ delayed resolution, the second one should win

... but it doesn't. The test also fails pre #1471, but differently (the second route is finalised too soon, because of the line I pointed to in one of the comments).
WIP, working on a fix.

Could make it so updatePending is a counter and increment/decrement as necessary, then only call update if it's equal to 0.

Needs testing, but I don't think that that scheme would work if routeB resolves before routeA.
The closure-based scheme introduced in #1290 can be backported here, or alternatively a forever increasing counter.
We discussed this already and it was deemed that, even though the 2^53 integers would enable route events at 60 fps for 4.7 million years, relying on the uniqueness of closure/objects was even more reliable and that's what we picked.

Yes!


Re-enables partial regex support for octal digits on the GPU

Fixes #4409.
Since a couple of underlying libcudf issues with octal digit support in regular expression have now been resolved, this code re-enables octal digit support with the appropriate transpiling from Java Pattern support to libcudf regular expression format.  A couple of known limitations:

octal digits from \200 to \377 are not supported by libcudf, so this will still fallback to CPU
octal digits are not currently supported in character classes (e.g. [\022]) in libcudf, so this will also fallback to CPU

Documentation has been updated to reflect these limitations.

Just a small question. If we can parse them properly why not switch them over to something that CUDF does support? like hex digits?

Just a small question. If we can parse them properly why not switch them over to something that CUDF does support? like hex digits?

CUDF actually also doesn't support hex digits in the range that corresponds to 128-255

build

build


Issue lag turning on LG OLED 65B6P

Hello I have an issue with the plugin where it takes a long time for it to turn the TV on. To turn off the TV is instant 100% of the time.  When I turn on it seems like it takes about 2-5 minutes until I can turn it on again. Do you know why this is happening?

Sorry, not sure what you exactly mean. Turning on the TV sends a magic packet in your local network, if you have a huge network then it might takes some time. In that case you could use the broadcastAdr property to limit the ip range to which the magic packet gets send.

Thx for the quick response.  How would I do that? I am fairly new to this home bridge stuff.
Binh T. Nguyen
IT QA Analyst
Management Information Systems
Company NMLS # 3274
Equal Housing Lender

From: Marcin<EMAIL_ADDRESS>Sent: Tuesday, September 1, 2020 10:55 AM
To: merdok/homebridge-webos-tv<EMAIL_ADDRESS>Cc: BinhM3<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [merdok/homebridge-webos-tv] Issue lag turning on LG OLED 65B6P (#278)
Sorry, not sure what you exactly mean. Turning on the TV sends a magic packet in your local network, if you have a huge network then it might takes some time. In that case you could use the broadcastAdr property to limit the ip range to which the magic packet gets send.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/merdok/homebridge-webos-tv/issues/278#issuecomment-685033272, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOOQUW45FXKZUS5GX57WXC3SDUYR3ANCNFSM4QR7S53A.

Just add that property to your config.json with your desired subnet. But this is just my guess and i am not sure if this is exactly your issue. You need to investigate this issue and find the root cause.

Hi BinhM3: I had a similar issue with my LG 65un73 until I performed a firmware update on the device. Now responsive. YMMV …

Closing due to inactivity


[WIP] Report Migration progress to Step Phase

Updating migration Steps with Phase names providing migration progress
in Forklift UI.
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2047460

Example screencast from Forklift UI with changes in this PR:

back-ported to 2.3.


Investigate Warning Expected subscription, but received an id response instead

See comment: https://github.com/scs/substrate-api-client/issues/620#issuecomment-1643844636:
Example hangs if an error should be returned.
Steps to reproduce:
run integritee-node 1.0.36 (polkadot-0.9.42 deps)
wget https://github.com/integritee-network/integritee-node/releases/download/1.0.36/integritee-node-dev
chmod +x integritee-node-dev
./integritee-node-dev --dev

run substrate api client example:
git checkout polkadot-v0.9.42
export RUST_LOG=warn
cargo run -p ac-examples --example transfer_with_ws_client

Just logs the warning and keeps on waiting for a response.
[2023-07-24T13:25:21Z DEBUG substrate_api_client::rpc::tungstenite_client::client] got on_subscription_msg {"jsonrpc":"2.0","error":{"code":1002,"message":"Verification Error: Runtime error: Execution failed: Runtime panicked: Bad input data provided to validate_transaction: Could not decode `RuntimeCall::System.0`:\n\tCould not decode `Call`, variant doesn't exist\n","data":"RuntimeApi(\"Execution failed: Runtime panicked: Bad input data provided to validate_transaction: Could not decode `RuntimeCall::System.0`:\\n\\tCould not decode `Call`, variant doesn't exist\\n\")"},"id":"1"}
[2023-07-24T13:25:21Z WARN  substrate_api_client::rpc::tungstenite_client::client] Expected subscription, but received an id response instead: Object {"error": Object {"code": Number(1002), "data": String("RuntimeApi(\"Execution failed: Runtime panicked: Bad input data provided to validate_transaction: Could not decode `RuntimeCall::System.0`:\\n\\tCould not decode `Call`, variant doesn't exist\\n\")"), "message": String("Verification Error: Runtime error: Execution failed: Runtime panicked: Bad input data provided to validate_transaction: Could not decode `RuntimeCall::System.0`:\n\tCould not decode `Call`, variant doesn't exist\n")}, "id": String("1"), "jsonrpc": String("2.0")}

To be looked into: Is this a problem of ws-client/ tungstenite client only, but also jsonrpsee?

Update: Jsonrpsee does not hang:
Tested with  cargo run -p ac-examples --example event_error_details:
[+] Composed extrinsic: UncheckedExtrinsic(Some((MultiAddress::Id(d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d (5GrwvaEF...)), GenericSignedExtra { era: Era::Immortal, nonce: 0, tip: AssetTip { tip: 0, asset: None } })), ([10, 0], MultiAddress::Id(8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48 (5FHneW46...)),<PHONE_NUMBER>000000))
[+] Transaction got included into the TxPool.
[+] Couldn't execute the extrinsic due to RpcClient(Client(Call(Custom(ErrorObject { code: ServerError(1002), message: "Verification Error: Runtime error: Execution failed: Runtime panicked: Bad input data provided to validate_transaction: Could not decode `RuntimeCall::System.0`:\n\tCould not decode `Call`, variant doesn't exist\n", data: Some(RawValue("RuntimeApi(\"Execution failed: Runtime panicked: Bad input data provided to validate_transaction: Could not decode `RuntimeCall::System.0`:\\n\\tCould not decode `Call`, variant doesn't exist\\n\")")) }))))

It is therefore an issue of ws-client and tungstenite rpc-client (tested with cargo run -p ac-examples --example transfer_with_tungstenite_client)

Update: A warning is also produced if everything runs through okay (see https://github.com/scs/substrate-api-client/issues/620#issuecomment-1643844636).
[2023-07-24T13:20:33Z INFO  substrate_api_client::rpc::ws_client] got on_subscription_msg {"jsonrpc":"2.0","result":"DaTgmIttoXLra0b1","id":"1"}
[2023-07-24T13:20:33Z WARN  substrate_api_client::rpc::ws_client] Expected subscription, but received an id response instead: Object {"id": String("1"), "jsonrpc": String("2.0"), "result": String("DaTgmIttoXLra0b1")}
[2023-07-24T13:20:33Z DEBUG ws::handler] Handler received:
    <FRAME>
    final: true
    reserved: false false false
    opcode: TEXT
    length: 115
    payload length: 113
    payload: 0x7b226a736f6e727063223a22322e30222c226d6574686f64223a22617574686f725f65787472696e736963557064617465222c22706172616d73223a7b22737562736372697074696f6e223a22446154676d4974746f584c7261306231222c22726573756c74223a227265616479227d7d

[2023-07-24T13:20:33Z INFO  substrate_api_client::rpc::ws_client] got on_subscription_msg {"jsonrpc":"2.0","method":"author_extrinsicUpdate","params":{"subscription":"DaTgmIttoXLra0b1","result":"ready"}}

So I suppose the warning is wrong, but should not result in an error, but instead be accepted without warning: The answer seems to be the Susbcription ID.
About the hanging of the

Still there on https://github.com/scs/substrate-api-client/tree/polkadot-v0.9.42-tag-v0.14.0


Support for OMP

Could you do a version that could run on OMP Beta Server just released? That would be awesome

No, I'm not planning to do this. I'm almost out of development for SA-MP. For now I'm writing on TypeScript for one RAGEMP project.
The FCNPC requires internal server structures and functions, for SA-MP it uses memory hacking. If you want to make FCNPC working on OMP you should do all memory hacking work again because OMP has closed source code. If the OMP team doesn't provide an extended SDK (with full server structures access), I'm not sure anyone should do the job at all.
But maybe somewhere there will be a young hot crazy guy ready to get this work done.

@Abyss-z94 Hey, I tried to contact you on discord but seems like you are a but inactive
But yes you are completely right, only to the point you mentioned people should do memory hacking for open.mp, which is wrong, we have an SDK for that, other plugins started adopting and FCNPC is not hard to do (only takes time, everything is available through SDK), needless to say it will be open source on release after beta testing  os over
I know you are not into SAMP development anymore, hence I wanted to talk to you on Discord
Just sent you a friend request
iAmir#8100
Would appreciate if you drop me a message or accept my friend request

@ziggi @AmyrAhmady guys, did you agree on anything?

@ziggi @AmyrAhmady guys, did you agree on anything?

Guess not

@eakwarp @ReshiramZekrom1 I gave access to the repository to Amir some time ago, all questions to him


Please merge "Defer freeing the old class table until the next safepoint" into dev channel

git checkout 2.1.0-dev.9.1
git cherry-pick<PHONE_NUMBER>bb91d488edb6e6e55552ba7116dd72  # Merges cleanly
./tools/build.py runtime
./tools/test.py vm/cc/IsolateReload
./tools/test.py --hot-reload
Fixes crashes due to use-after-free race between the mutator and the concurrent marker or sweeper when a reload does not involve a shape change.
/cc @dgrove @kevmoo @mit-mit @whesse @athomas

Merged in version 2.1.0-dev.9.2


[styled-engine] Fix props inference in styled-engine

Fixes https://github.com/mui-org/material-ui/issues/29736
Explanation: https://github.com/emotion-js/emotion/pull/1664/files#r353487626

I can confirm that this fix the issue.
Before: https://codesandbox.io/s/eloquent-butterfly-ym8x1?file=/src/Demo.tsx
After: https://codesandbox.io/s/create-react-app-with-typescript-forked-e3yg7?file=/src/App.tsx:336-414

@Janpot From your emotion link, I guess we need to remove the default type {}.
-<AdditionalProps extends {} = {}>(
+<AdditionalProps extends {}>(
  ...styles: Array<
    Interpolation<ComponentProps & SpecificComponentProps & AdditionalProps & { theme: T }>
  >
): StyledComponent<ComponentProps & AdditionalProps, SpecificComponentProps, JSXProps>;

Great, I didn't have time to look into it. Thanks! :)


wrong highlighting

what's wrong...

That's just the old syntax on the current version "You may notice some illegal markers on #elseifs and other preprocessor definitions, ignore these for now." new release coming shortly.


Latest Android Studio New C++ Project fails to build

Just installed android studio, latest version on everything. Created a new native C++ project, and modified absolutely nothing. Yesterday the build worked properly. Today I have this errors and I can't figure out why. Maybe an update happened today and broken everything ?
Build command failed.
Error while executing process D:\AndroidTools\android-sdk\cmake\3.6.4111459\bin\cmake.exe with arguments {-HD:\Work\Test3\app\src\main\cpp -BD:\Work\Test3\app.externalNativeBuild\cmake\debug\x86_64 -DANDROID_ABI=x86_64 -DANDROID_PLATFORM=android-21 -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=D:\Work\Test3\app\build\intermediates\cmake\debug\obj\x86_64 -DCMAKE_BUILD_TYPE=Debug -DANDROID_NDK=D:\AndroidTools\android-sdk\ndk-bundle -DCMAKE_CXX_FLAGS= -DCMAKE_TOOLCHAIN_FILE=D:\AndroidTools\android-sdk\ndk-bundle\build\cmake\android.toolchain.cmake -DCMAKE_MAKE_PROGRAM=D:\AndroidTools\android-sdk\cmake\3.6.4111459\bin\ninja.exe -GAndroid Gradle - Ninja}
-- Check for working C compiler: D:/AndroidTools/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe
-- Check for working C compiler: D:/AndroidTools/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe -- broken
-- Configuring incomplete, errors occurred!
See also "D:/Work/Test3/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/CMakeOutput.log".
See also "D:/Work/Test3/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/CMakeError.log".
CMake Error at D:/AndroidTools/android-sdk/cmake/3.6.4111459/share/cmake-3.6/Modules/CMakeTestCCompiler.cmake:61 (message):
The C compiler
"D:/AndroidTools/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe"
is not able to compile a simple test program.
It fails with the following output:
Change Dir: D:/Work/Test3/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/CMakeTmp
Run Build
Command:"D:\AndroidTools\android-sdk\cmake\3.6.4111459\bin\ninja.exe"
"cmTC_b514a"
[1/2] Building C object CMakeFiles/cmTC_b514a.dir/testCCompiler.c.o
[2/2] Linking C executable cmTC_b514a
FAILED: cmd.exe /C "cd .  &&
D:\AndroidTools\android-sdk\ndk-bundle\toolchains\llvm\prebuilt\windows-x86_64\bin\clang.exe
--target=x86_64-none-linux-android21
--gcc-toolchain=D:/AndroidTools/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64
--sysroot
D:/AndroidTools/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/sysroot
-g -DANDROID -fdata-sections -ffunction-sections -funwind-tables
-fstack-protector-strong -no-canonical-prefixes -fno-addrsig
-Wa,--noexecstack -Wformat -Werror=format-security
-Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libatomic.a
-static-libstdc++ -Wl,--build-id -Wl,--warn-shared-textrel
-Wl,--fatal-warnings -Wl,--no-undefined -Qunused-arguments
-Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--gc-sections
CMakeFiles/cmTC_b514a.dir/testCCompiler.c.o -o cmTC_b514a -latomic -lm &&
cd ."
clang.exe: error: unable to execute command: Couldn't execute program
'D:/AndroidTools/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/lib/gcc/x86_64-linux-android/4.9.x/../../../../x86_64-linux-android/bin\ld':
Unknown error (0xC1)
clang.exe: error: linker command failed with exit code 1 (use -v to see
invocation)
ninja: build stopped: subcommand failed.
CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
CMakeLists.txt

Not aware there is any update last night.  you reopened the project today with the same android studio version, correct?  ( not like that: Android studio was open all of the time from previous day and today )

Yes, I just did nothing. Reopened the same project as yesterday. I also created a new project in a different directory (so everything goes from scratch, project creation etc...) and same error.

Can you create a new native C++ project from android studio, and just try to build it ? But first check for updates, maybe ?

I will check it out.  IDE does have some abnormal with this version(3.3):
https://developer.android.com/studio/known-issues
however, I am not sure what you saw is the same as the one stated above.

The wierd thing, is that even if the simple project runs... the cmake and ninja logs are full of errors from the above screenshot.

Error 0xC1 on Windows is ERROR_BAD_EXE_FORMAT. Could indicate mismatch
between 32-bits and 64-bits or something like that
On Mon, Feb 4, 2019 at 1:36 PM Alin Lipan<EMAIL_ADDRESS>wrote:

The wierd thing, is that even if the simple project runs... the cmake and
ninja logs are full of errors from the above screenshot.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/googlesamples/android-ndk/issues/619#issuecomment-460422500,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE6z9Gh-axVNtMtZG0MMKOMqKd1L2bALks5vKKfqgaJpZM4aiAn2
.

Hmm, but how would you explain that it worked yesterday, and today it doesn't anymore ? I haven't altered the ndk files.

What's the content of and Last Modified date of
D:\AndroidTools\android-sdk\ndk-bundle\source.properties?
On Mon, Feb 4, 2019 at 2:08 PM Alin Lipan<EMAIL_ADDRESS>wrote:

Hmm, but how would you explain that it worked yesterday, and today it
doesn't anymore ? I haven't altered the ndk files.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/googlesamples/android-ndk/issues/619#issuecomment-460432692,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE6z9CURd1DNABgtwvRLtRplZzEcnCFBks5vKK9GgaJpZM4aiAn2
.

Last modified 3 days ago.
Pkg.Desc = Android NDK
Pkg.Revision = 19.0.5232133

After a closer inspection on logs on all 4 architectures I found out that it fails to compile only for x86_64... hence the output thrown in android studio. For the other 3 platforms, it compiles ok. But I still can't figure out why, yesterday it compiled ok for all 4 platforms.

Yeah, something is fishy with X86_64... I will take a close inspection in the logs... I have both the logs when it compiled ok, and from today. For example... this is a difference.
File: android_gradle_build_native-lib_x86_64.command.txt
Ok:Executable : D:\AndroidTools\android-sdk\cmake\3.6.4111459\bin\cmake.exe
arguments :
--build
D:\Work\Test\app.externalNativeBuild\cmake\debug\x86_64
--target
native-lib
jvmArgs :
NotOk:Executable : D:\AndroidTools\android-sdk\cmake\3.6.4111459\bin\cmake.exe
arguments :
-HD:\Work\Test3\app\src\main\cpp
-BD:\Work\Test3\app.externalNativeBuild\cmake\debug\x86_64
-DANDROID_ABI=x86_64
-DANDROID_PLATFORM=android-21
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=D:\Work\Test3\app\build\intermediates\cmake\debug\obj\x86_64
-DCMAKE_BUILD_TYPE=Debug
-DANDROID_NDK=D:\AndroidTools\android-sdk\ndk-bundle
-DCMAKE_CXX_FLAGS=
-DCMAKE_TOOLCHAIN_FILE=D:\AndroidTools\android-sdk\ndk-bundle\build\cmake\android.toolchain.cmake
-DCMAKE_MAKE_PROGRAM=D:\AndroidTools\android-sdk\cmake\3.6.4111459\bin\ninja.exe
-GAndroid Gradle - Ninja
jvmArgs :

That actual .exe that is having the problem is:
D:/AndroidTools/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/lib/gcc/x86_64-linux-android/4.9.x/../../../../x86_64-linux-android/bin\ld.exe
On Mon, Feb 4, 2019 at 2:19 PM Alin Lipan<EMAIL_ADDRESS>wrote:

Yeah, something is fishy with X86_64... I will take a close inspection in
the logs... I have both the logs when it compiled ok, and from today. For
example... this is a difference.
File: android_gradle_build_native-lib_x86_64.command.txt
Ok:Executable : D:\AndroidTools\android-sdk\cmake\3.6.4111459\bin\cmake.exe
arguments :
--build
D:\Work\Test\app.externalNativeBuild\cmake\debug\x86_64
--target
native-lib
jvmArgs :
NotOk:Executable :
D:\AndroidTools\android-sdk\cmake\3.6.4111459\bin\cmake.exe
arguments :
-HD:\Work\Test3\app\src\main\cpp
-BD:\Work\Test3\app.externalNativeBuild\cmake\debug\x86_64
-DANDROID_ABI=x86_64
-DANDROID_PLATFORM=android-21
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=D:\Work\Test3\app\build\intermediates\cmake\debug\obj\x86_64
-DCMAKE_BUILD_TYPE=Debug
-DANDROID_NDK=D:\AndroidTools\android-sdk\ndk-bundle
-DCMAKE_CXX_FLAGS=
-DCMAKE_TOOLCHAIN_FILE=D:\AndroidTools\android-sdk\ndk-bundle\build\cmake\android.toolchain.cmake
-DCMAKE_MAKE_PROGRAM=D:\AndroidTools\android-sdk\cmake\3.6.4111459\bin\ninja.exe
-GAndroid Gradle - Ninja
jvmArgs :
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/googlesamples/android-ndk/issues/619#issuecomment-460435910,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE6z9CrDZJiG1ool0p4AE8KzDh__teczks5vKLHjgaJpZM4aiAn2
.

I just created a new project on windows 10, it builds and runs fine. Did try to the close the project and re-open the project, also ok.
But it does not mean there is no issue with Studio, maybe some environment setting is different so prevent me from seeing it.
probably you could try to clean the project and rebuild it; maybe also try to remove all of those .externativeBuild, build directories under your $project/,  then build it from command line to see how it goes (gradlew.bat assembleDebug ): they seem to be fine for me.

I've tried literally everything, including restarting windows. Yes jomof, I know that ld.exe is the problem, but who changed it ? I never did anything on my own... I think the last thing to try is to actually delete and re-download the whole ndk.

At a closer inspection it seems that the .exe is actually unaltered... I have downloaded a seperate standalone NDK, before  I even installed android studio, then I installed it with SDK manager... I compared the 2 .exes and they are identical. I guess it's probably something to do with android studio or graddle. I will dig more and see how can I fix this.

what is your windows OS info?  mine is:

windows 10, 64 bit OS, 192G memory
if you could, upload your proj as-is to somewhere?
("gradlew.bat clean assembleDebug" would get more detailed error info? )

Nothing specific here excepting guessing around, TBH


0.5.24 Version bump reason: [Cirque] Bump version for virtual android chip-tool test

Problem
Bump cirque build version to 0.5.24 and prepare to enable android chip-tool test.
Change overview
See above
Testing
Local run

Fast track: dockerfile change


Extension using the Reservation System is Impossible

I'm trying to make an extension where I have a Journal Line and other standard functionality where i want to use the reservation system, however, it's impossible to use the existing reservation system because the functions are either hidden, not available in extension development or used in a codeunit that I can't extend. I basically have to re-write all reservation codeunits to be able to do this.

Reservation system is complex module and cannot be enabled for extensions at once. Please provide more detailed information about missing external procedures, events or anything else needed for you.

Hi johndcollins.
Any update from your side?

Hi johndcollins.
I suggest to close this issue for now. Feel free to re-open it when you will have enough information to provide for your requirements.


Save button functionality to change/reset user’s password

User must be able to change or reset password his/her password. He/she must be able to login with the updated password.

I would like to work on this @aastha9199


Fixes #2033: Shows warning when binding a triple curly on a textarea

Description of the pull request:
Logs a warning when a triple-curly is used to bind to a textarea.
Fixes the following issues:
#2033
Is breaking:
No... at least according to the tests. 😄
Reviewers:
Anyone who knows how binding works.

Would it make sense to just warn on any bindable attribute that has a single triple rather than an interpolator? That could simplify the check a bit and have it apply to everything, so you could catch stuff like <input value="{{{foo}}}" /> and <checkbox name="{{{list}}}" />, which are also probably mistakes. You could add a parameter for the element name to isBindable and split the giant conditional into three branches (intial - single content not an expression, is an interpolator, and is a triple) to bail early, return true, or warn and return false?

Yup. That makes sense. 😄
Still trying to wrap my head around how triples differ from doubles internally.

There's really not a whole lot of difference to ractive's guts. The main difference is conceptual: that triples hold html where plain interpolators hold strings/numbers/not-html :smile:. Ractive could bind using triples, as the interpolator is really just a container for a reference, as is a triple. It's just the presumed output that goes along with a triple doesn't work with attributes.

@evs-chris Just to verify, a Binding can only happen on an attribute?

That's correct. The only one that allows a non-attribute binding is textarea, and it just swizzles its template around to make it an attribute binding.

@evs-chris is it ok now? 😄

Yep, LGTM! :+1:


Remove dead test output lines causing build failures on aarch64

Fixes https://github.com/quantumlib/Stim/issues/293

Merged into https://github.com/quantumlib/Stim/pull/298


Dependabot does not update private packages

Is there an existing issue for this?

[X] I have searched the existing issues

Package ecosystem
Nuget
Package manager version
No response
Language version
No response
Manifest location and content before the Dependabot update
No response
dependabot.yml content
version: 2
registries:
  nuget-github:
    type: nuget-feed
    url: https://nuget.pkg.github.com/Affinity-IT/index.json/
    token: ${{secrets.NUGET_FEED_WRITE}}
  public:
    type: nuget-feed
    url: https://api.nuget.org/v3/index.json
updates:
  # Enable version updates for nuget
  - package-ecosystem: "nuget"
    directory: "/"
    # Check private registry
    registries:
      - "nuget-github"
      - "public"
    # Check the registry for updates every day
    schedule:
      interval: "daily"
      time: "01:00"
      timezone: "Europe/Copenhagen"
    open-pull-requests-limit: 5

Updated dependency
affinityit.core
What you expected to see, versus what you actually saw
Expected:
Dependabot to update my private package
Actually:
Got 200 ok response:
  proxy | 2024/01/24 09:37:09 [012] 200 https://nuget.pkg.github.com:443/Affinity-IT/affinityit.core/index.json

Dependency is hereafter not processed and nothing happens.
I can see in the logs that it authenticates ok and can find the package. I have about 20 new patch versions on this package.
We have recently switched from storing our credentials as a PAT in the nuget.config file, to storing it as a secret in github. Before the switch this worked just fine, now im seeing this error.
Native package manager behavior
No response
Images of the diff or a link to the PR, issue, or logs
proxy | 2024/01/24 09:36:47 proxy starting, commit: 07d59135734a484cdcd1b34f737c7bca281bcf94
proxy | 2024/01/24 09:36:47 * authenticating nuget feed request (host: nuget.pkg.github.com, bearer auth)
proxy | 2024/01/24 09:36:47 * authenticating nuget feed request (host: api.nuget.org, bearer auth)
proxy | 2024/01/24 09:36:47 Listening (:1080)
updater | 2024-01-24T09:36:49.499834988 [778171328:main:WARN:src/devices/src/legacy/serial.rs:222] Detached the serial input due to peer close/error.
updater | time="2024-01-24T09:36:52Z" level=info msg="guest starting" commit=5265bc7c42825390c331713cef4ed23c69721bbb
updater | time="2024-01-24T09:36:52Z" level=info msg="starting job..." fetcher_timeout=10m0s job_id=778171328 updater_timeout=45m0s updater_version=361c994a0de63657c9ff97f6358c13ccf382232d-nuget
updater | 2024/01/24 09:36:56 INFO Raven 3.1.2 ready to catch errors
updater | 2024/01/24 09:37:01 INFO <job_778171328> Starting job processing
proxy | 2024/01/24 09:37:01 [002] GET https://github.com:443/Affinity-IT/services-blob/info/refs?service=git-upload-pack
proxy | 2024/01/24 09:37:01 [002] * authenticating git server request (host: github.com)
proxy | 2024/01/24 09:37:02 [002] 200 https://github.com:443/Affinity-IT/services-blob/info/refs?service=git-upload-pack
proxy | 2024/01/24 09:37:02 [004] POST https://github.com:443/Affinity-IT/services-blob/git-upload-pack
proxy | 2024/01/24 09:37:02 [004] * authenticating git server request (host: github.com)
proxy | 2024/01/24 09:37:02 [004] 200 https://github.com:443/Affinity-IT/services-blob/git-upload-pack
proxy | 2024/01/24 09:37:02 [006] POST https://github.com:443/Affinity-IT/services-blob/git-upload-pack
proxy | 2024/01/24 09:37:02 [006] * authenticating git server request (host: github.com)
proxy | 2024/01/24 09:37:02 [006] 200 https://github.com:443/Affinity-IT/services-blob/git-upload-pack
updater | 2024/01/24 09:37:02 INFO <job_778171328> Finished job processing
updater | time="2024-01-24T09:37:02Z" level=info msg="task complete" container_id=job-778171328-file-fetcher exit_code=0 job_id=778171328 step=fetcher
updater | 2024/01/24 09:37:05 INFO Raven 3.1.2 ready to catch errors
updater | 2024/01/24 09:37:07 INFO <job_778171328> Starting job processing
updater | 2024/01/24 09:37:07 WARN <job_778171328> The variable '%Nuget_AffinityITUsername%' could not be expanded in NuGet.Config
updater |
updater | 2024/01/24 09:37:07 WARN <job_778171328> The variable '%Nuget_AffinityITPassword%' could not be expanded in NuGet.Config
updater |
proxy | 2024/01/24 09:37:08 [008] GET https://nuget.pkg.github.com:443/Affinity-IT/index.json/
proxy | 2024/01/24 09:37:08 [008] * authenticating nuget feed request (host: nuget.pkg.github.com, bearer auth)
proxy | 2024/01/24 09:37:08 [008] 200 https://nuget.pkg.github.com:443/Affinity-IT/index.json/
proxy | 2024/01/24 09:37:08 [010] GET https://nuget.pkg.github.com:443/Affinity-IT/index.json
proxy | 2024/01/24 09:37:08 [010] * authenticating nuget feed request (host: nuget.pkg.github.com, bearer auth)
proxy | 2024/01/24 09:37:08 [010] 200 https://nuget.pkg.github.com:443/Affinity-IT/index.json
proxy | 2024/01/24 09:37:08 [012] GET https://nuget.pkg.github.com:443/Affinity-IT/affinityit.core/index.json
proxy | 2024/01/24 09:37:08 [012] * authenticating nuget feed request (host: nuget.pkg.github.com, bearer auth)
proxy | 2024/01/24 09:37:09 [012] 200 https://nuget.pkg.github.com:443/Affinity-IT/affinityit.core/index.json
proxy | 2024/01/24 09:37:10 [014] GET https://api.nuget.org:443/v3/registration5-gz-semver2/affinityit.core/index.json
proxy | 2024/01/24 09:37:10 [014] 404 https://api.nuget.org:443/v3/registration5-gz-semver2/affinityit.core/index.json
updater | 2024/01/24 09:37:10 WARN <job_778171328> The variable '%Nuget_AffinityITUsername%' could not be expanded in NuGet.Config
updater |
updater | 2024/01/24 09:37:10 WARN <job_778171328> The variable '%Nuget_AffinityITPassword%' could not be expanded in NuGet.Config
updater |
proxy | 2024/01/24 09:37:10 [016] GET https://nuget.pkg.github.com:443/Affinity-IT/automapper/index.json
proxy | 2024/01/24 09:37:10 [016] * authenticating nuget feed request (host: nuget.pkg.github.com, bearer auth)
proxy | 2024/01/24 09:37:10 [016] 404 https://nuget.pkg.github.com:443/Affinity-IT/automapper/index.json
proxy | 2024/01/24 09:37:10 [018] GET https://api.nuget.org:443/v3/registration5-gz-semver2/automapper/index.json
proxy | 2024/01/24 09:37:10 [018] 200 https://api.nuget.org:443/v3/registration5-gz-semver2/automapper/index.json
proxy | 2024/01/24 09:37:10 [020] GET https://api.nuget.org:443/v3/registration5-gz-semver2/automapper/page/<IP_ADDRESS>/3.1.0-ci1033.json
Smallest manifest that reproduces the issue
No response

If I run "@dependabot recreate" on an old PR I get the following:
Looks like AffinityIT.Core is no longer a dependency, so this is no longer needed.

is this resolved now @benjaminoerskov ?

@abdulapopoola Its still not working for me. However I found out that there is a difference from triggering dependabot manually and when its triggered automaticly. Last night I got the following log instead:
updater | 2024/01/25 00:38:58 INFO <job_778493153> Checking if AffinityIT.Core 8.0.49-rc05-feature-newtonsoft needs updating
  proxy | 2024/01/25 00:38:58 [780] GET https://api.nuget.org:443/v3/registration5-gz-semver2/affinityit.core/index.json
  proxy | 2024/01/25 00:38:58 [780] 404 https://api.nuget.org:443/v3/registration5-gz-semver2/affinityit.core/index.json
  proxy | 2024/01/25 00:38:58 [782] GET https://api.nuget.org:443/v3-flatcontainer/affinityit.core/8.0.49-rc05-feature-newtonsoft/affinityit.core.nuspec
  proxy | 2024/01/25 00:38:58 [782] 404 https://api.nuget.org:443/v3-flatcontainer/affinityit.core/8.0.49-rc05-feature-newtonsoft/affinityit.core.nuspec
  proxy | 2024/01/25 00:38:58 [784] GET https://nuget.pkg.github.com:443/Affinity-IT/download/affinityit.core/8.0.49-rc05-feature-newtonsoft/affinityit.core.8.0.49-rc05-feature-newtonsoft.nupkg
  proxy | 2024/01/25 00:38:58 [784] * authenticating nuget feed request (host: nuget.pkg.github.com, bearer auth)
  proxy | 2024/01/25 00:38:59 [784] 302 https://nuget.pkg.github.com:443/Affinity-IT/download/affinityit.core/8.0.49-rc05-feature-newtonsoft/affinityit.core.8.0.49-rc05-feature-newtonsoft.nupkg
updater | 2024/01/25 00:38:59 INFO <job_778493153> Latest version is 8.0.53
updater | 2024/01/25 00:38:59 INFO <job_778493153> Requirements to unlock all
updater | 2024/01/25 00:38:59 INFO <job_778493153> Requirements update strategy
updater | Finding updated dependencies for AffinityIT.Core.
  proxy | 2024/01/25 00:38:59 [786] GET https://api.nuget.org:443/v3-flatcontainer/affinityit.core/8.0.53/affinityit.core.nuspec
  proxy | 2024/01/25 00:38:59 [786] 404 https://api.nuget.org:443/v3-flatcontainer/affinityit.core/8.0.53/affinityit.core.nuspec
  proxy | 2024/01/25 00:38:59 [788] GET https://nuget.pkg.github.com:443/Affinity-IT/download/affinityit.core/8.0.53/affinityit.core.8.0.53.nupkg
  proxy | 2024/01/25 00:38:59 [788] * authenticating nuget feed request (host: nuget.pkg.github.com, bearer auth)
  proxy | 2024/01/25 00:38:59 [788] 302 https://nuget.pkg.github.com:443/Affinity-IT/download/affinityit.core/8.0.53/affinityit.core.8.0.53.nupkg
updater | 2024/01/25 00:38:59 INFO <job_778493153> Updating AffinityIT.Core from 8.0.49-rc05-feature-newtonsoft to 8.0.53
updater | running NuGet updater:
updater | /opt/nuget/NuGetUpdater/NuGetUpdater.Cli update --repo-root /home/dependabot/dependabot-updater/repo --solution-or-project /home/dependabot/dependabot-updater/repo/Ajour.Services.Authentication/Ajour.Services.Authentication.csproj --dependency AffinityIT.Core --new-version 8.0.53 --previous-version 8.0.49-rc05-feature-newtonsoft  --verbose

Then for some reason I get an error anyway:
updater | 2024/01/25 00:39:27 ERROR <job_778493153> Error processing AffinityIT.Core (Dependabot::DependabotError)
updater | 2024/01/25 00:39:27 ERROR <job_778493153> FileUpdater failed
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/dependency_change_builder.rb:38:in `run'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/dependency_change_builder.rb:26:in `create_from'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/update_all_versions.rb:128:in `check_and_create_pull_request'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/update_all_versions.rb:60:in `check_and_create_pr_with_error_handling'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/update_all_versions.rb:35:in `block in perform'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/update_all_versions.rb:35:in `each'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/update_all_versions.rb:35:in `perform'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/updater.rb:45:in `run'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/update_files_command.rb:43:in `perform_job'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> /home/dependabot/dependabot-updater/lib/dependabot/base_command.rb:37:in `run'
updater | 2024/01/25 00:39:27 ERROR <job_778493153> bin/update_files.rb:24:in `<main>'

And then it recaps:
updater | 2024/01/25 00:39:29 INFO <job_778493153> Finished job processing
updater | 2024/01/25 00:39:29 INFO Results:
updater | Dependabot encountered '2' error(s) during execution, please check the logs for more details.
updater | +-----------------------------------------+
updater | |      Dependencies failed to update      |
updater | +-------------------------+---------------+
updater | | AffinityIT.Core         | unknown_error |
updater | +-------------------------+---------------+
updater | time="2024-01-25T00:39:29Z" level=info msg="task complete" container_id=job-778493153-updater exit_code=0 job_id=778493153 step=updater

Hey, also got the same issue with Github Private registry yesterday based on Dependabot jobs run history (related to this Github issue). But today after manual re-run it seems like it works for me 😸

In my case the problem was that I didnt have the index.json in the end if the url, even though the guide (here) doesnt mention this.
Updated dependabot.yml file:
version: 2
registries:
  nuget-github:
    type: nuget-feed
    url: https://nuget.pkg.github.com/Affinity-IT/index.json
    token: ${{secrets.NUGET_FEED_WRITE}}

updates:
  # Enable version updates for nuget
  - package-ecosystem: "nuget"
    directory: "/"
    # Check private registry
    registries: '*'
    # Check the registry for updates every day
    schedule:
      interval: "daily"
      time: "01:00"
      timezone: "Europe/Copenhagen"
    open-pull-requests-limit: 5

Great find @benjaminoerskov ; I can take a note to ensure that our guidelines are updated. Closing this out.

Thanks for spotting the issue @benjaminoerskov ; our docs have also been updated.


Password

Password adminnya apa gan

Password adminnya apa gan

Role Admin
username : admin
password : admin
Role Owner
username : owner
password : owner


Ignore "InvalidGroup.Duplicate" AWS error

This is returned from CreateSecurityGroup if the SG already exists.

Do we have a bug reported for this, or is it some preemptive measure?

This was seen while testing https://github.com/stolostron/submariner-addon/pull/640. Cloud prepare was initially successful but a subsequent update caused the controller to reconcile again resulting in a degraded condition. This change fixed it but it's better to ignore such errors here as we do in other cases here and here to make it idempotent.


fix typo, conbined -> combined

Found via codespell -H

:partying_face: :partying_face: :partying_face: :partying_face: :partying_face:


#192 Update required version of ObjectMapper.

I believe ~> 2.0 should automatically take the greatest available version up until 3.0

Yes but I also have ObjectMapper in my Cartfile with an =2.0, I think because of a bug in 2.1. Carthage installed and built just fine because 2.0 is valid for my Cartfile as well as yours. However, the app immediately crashed. This change would cause a Carthage error in my case that no matching versions could be found.

The bug in ObjectMapper 2.1 has been resolved. You should be able to remove that dependency now.

Ah i see. That should no longer happen to people however, as Cocoapods and Carthage will automatically grab ObjectMapper 2.2.2. Thanks though!

On second thought, it doesn't hurt to add this extra protection 👍


Update comorian currency from.  CA to KMF

hello, i have been using the library it just perfect thanks , but i noticed that comorian. currency. is not CF but KMF

Updated in the latest release (4ffb9ac).


Generate app.yaml and Dockerfile on add Flexible framework support

This will allow us to make the assumption that these files should always exist.
We could also remove the Generate buttons from the facet?

If, when adding a file, it already exists (e.g., by adding and removing framework support), I'll open a dialog and ask the user if they want to replace the existing file.


(SUP-2904) Customisable certificate based auth function for any PE API

Prior to this, one will have to hard code any cert based auth API calls in their calls
Post this, one will be able to specify the relevant variables to call specific API with whatever required variable
Please check off the steps below as you complete each step

[x] Put the Jira ticket number in parentheses in the Title e.g. (SUP-XXXX) Add Super Duper State Check
[ ] Update the Jira ticket status to Ready for Review
[x] Update the Scoring Spreadsheet
[ ] Get a review from someone on the support team
[x] Get a review from @misseuropa, @davidbastedo, or @deleon365

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

This is a draft PR as the related SUP is not possible and has been closed. However, in the process of working the SUP-2904, we now have a flexible function to call any cert auth PE API with relevant parameters.

Thank @jordi-garcia we cna keep this one on the burner if we need it. For now the Ruby based function @coreymbe put in seems to be working


Remove jQuery

 This is an automated PR from: https://github.com/NullVoxPopuli/ember-jSquirrels

 In an effort to better ready the Ember ecosystem for the modern web, jQuery must be removed.

 There have been native replacements for jQuery APIs for quite a few years.

 Removing jQuery will reduce everyone's app vendor size by 30-80kb after min+gzip, depending on the jQuery version.

jQuery is only used in test code for ember redux ($.ajax) and none of the changes here are related so what is the migration plan to drop jQuery for this situation and how costly is it assuming test assets won’t ship to production?

ajax

Hmm, I guess the codemods didn't catch it, or don't know how to deal with ajax yet.

migration plan

fetch is the native alternative for requests and such

How costly?

Converting to fetch is usually pretty straightforward

@NullVoxPopuli if you can get this file migrated from ajax to fetch I will certainly thank you ;)
https://github.com/ember-redux/ember-redux/blob/master/tests/helpers/ajax.js

I did some things to help get migrated -- but it looks like I'm mostly running in to some ember-integration related issues now :(

@NullVoxPopuli can we close out this PR at some point? This addon doesn't use jQuery for anything but the test build and I'm fine with that for the moment. No hard feelings here btw - just looking to cleanup stale pull requests that aren't moving forward


Collect prometheus metrics

This collects a couple of prometheus metrics from coiled after the run to expand our measurements to scheduler metrics (CPU + memory) and event loop health metrics (scheduler and workers)
cc @ntabris for a sanity check of the queries
cc @hendrikmakait @crusaderky @phofl
This is based on https://github.com/coiled/platform/pull/3023

A follow up is obviously to integrate this to the dashboards

it seems like the new metrics are being collected exclusively for tpch/test_dask.py:

see https://github.com/coiled/benchmarks/pull/1101

Regarding the data itself, I guess we'll have to wait for @ntabris I'm having a little bit of a hard time with the query syntax

I had another look at the queries and responding to @crusaderky comments above in https://github.com/coiled/benchmarks/pull/980#pullrequestreview-1680827281

We were only running TPCH. Has been fixed a long time ago
CPU query was wrong and this was basically showing randomly the different CPU types (see https://github.com/coiled/platform/issues/3665)
The tick duration returned by coiled is in seconds and the normalization is wrong. I edited it now to show in ms which is the desired scale although realistically we'll probably still see seconds. I don't have a strong preference but the chart should now show correct numbers

The tick duration returned by coiled is in seconds and the normalization is wrong. I edited it now to show in ms which is the desired scale although realistically we'll probably still see seconds. I don't have a strong preference but the chart should now show correct numbers

I don't have a strong preference either as long as the numbers match the visualized scale :)

Yeah, I think I like those metrics. The scheduler CPU charts, for instance already point to a couple of scheduler CPU bound workloads

which I can indeed confirm are using way too much scheduler CPU

There also seems to be something off with the  read_hive_partitions test. The event loop on the worker is blocked for more than a minute

With this we could also consider dropping the memory sampler but I suggest to do so in a follow up

There also seems to be something off with the read_hive_partitions test. The event loop on the worker is blocked for more than a minute

I'm not seeing anything remotely like that in the latest CI run. I'm reading 20ms.
Could it be an instance that just didn't receive any CPU time from the hypervisor for one minute? @ntabris

Could it be an instance that just didn't receive any CPU time from the hypervisor for one minute?

That sounds extremely unlikely.


Upgrade storybook to use Webpack 5

Fixes local storybook builds

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Execution of unprepared SQL statements

Some queries seems to not being sanitised before it's execution.
 Those are some examples:
$query = "SELECT YEAR(post_date) AS `year`, count(ID) as posts FROM $wpdb->posts $join $where GROUP BY YEAR(post_date) ORDER BY post_date $order $limit";
// [...]
$results = $wpdb->get_results($query);

$query = "SELECT YEAR(post_date) AS `year`, MONTH(post_date) AS `month`, count(ID) as posts "
. "FROM $wpdb->posts $join $where GROUP BY YEAR(post_date), MONTH(post_date) "
. "ORDER BY post_date $order $limit";
// [...]
$results = $wpdb->get_results($query);

$query = "SELECT YEAR(post_date) AS `year`, MONTH(post_date) AS `month`, DAYOFMONTH(post_date) AS `dayofmonth`, count(ID) as posts FROM $wpdb->posts $join $where GROUP BY YEAR(post_date), MONTH(post_date), DAYOFMONTH(post_date) ORDER BY post_date $order $limit";
// [...]
$results = $wpdb->get_results($query);

Hey @arall thanks for the heads-up on this. For the most part this is taken directly from WP Core's wp_get_archives function. As you can see, they've got some other stuff going on for caching, etc. too -- but the same non-sanitized queries exist.
Can you show an example (or a PR!) of what these should look like instead?

@jarednova In the get_items method, query arguments seems to be correctly sanitised, but in get_items_monthly and get_items_yearly, the parameters go directly to the query. However, those methods are only called from get_items method, after the sanitisation, so everything looks fine on those.
The $join and $where variables are generated using the apply_filters WP method, which is using $post_type and $args non-sanitised parameters, that come from outside.
I'm not sure how safe is this. I will try to reproduce it later.

Ok, this is actually injecting SQL:
$args = ['post_type' => '" OR 1="1'];
$defaults = [
	'post_type' => 'post',
];
$args = wp_parse_args($args, $defaults);
$post_type = $args['post_type'];
$where = apply_filters('getarchives_where', 'WHERE post_type = "' . $post_type . '" AND post_status = "publish"', $args);
print_r($where);

@jarednova Any news on this issue? To me, this issue seems more important than threaded comments...

Any news on this guys?
@rpkoller you were doing a PR for this. Can I help you with that?

Hi @arall . Yep I've worked a little on a PR. Simply wraped the queries into prepare statements. My main problem so far is that i was unable to get PHPUnit running to test if my changes would break anything cuz i don't really use the archive functionality in projects so nothing to test against on my local setup. Anyway I put some possible changes in here for discussion instead of place just a pull request. There are basically three areas:

the queries inside the functions get_itmes_monthlyand get_items_yearly

get_items_yearly in line 97
the initial query
$query = "SELECT YEAR(post_date) AS `year`, count(ID) as posts FROM $wpdb->posts $join $where GROUP BY YEAR(post_date) ORDER BY post_date $order $limit";

getting wrapped into prepare
$query = $wpdb->prepare("SELECT YEAR(post_date) AS `year`, count(ID) as posts FROM {$wpdb->posts} %s %s GROUP BY YEAR(post_date) ORDER BY post_date %s %s", $join, $where, $order, $limit);

get_items_monthly in line 135
the initial query
$query = "SELECT YEAR(post_date) AS `year`, MONTH(post_date) AS `month`, count(ID) as posts "
			. "FROM $wpdb->posts $join $where GROUP BY YEAR(post_date), MONTH(post_date) "
			. "ORDER BY post_date $order $limit";

getting wrapped into prepare
$query = $wpdb->prepare( "SELECT YEAR(post_date) AS `year`, MONTH(post_date) AS `month`, count(ID) as posts
			FROM {$wpdb->posts} %s %s GROUP BY YEAR(post_date), MONTH(post_date)
			ORDER BY post_date %s %d", $join, $where, $order, $limit );

the queries inside the get_items function

The queries inside the get_items function you have mentioned are already properly sanatized. but maybe it would make sense to wrap them inside the prepare function anyway. the only problem is the type for each parameter isn't listed for the get_items function ( like string or int )

the queries inside apply_filters
The last one is the query inside the apply_filters function you have pointed out in one of your comments. Unsure if that would be the proper way and syntax but i would go like that:

$where_query = $wpdb->prepare("WHERE post_type = %s AND post_status = `publish`", $post_type )
$where = apply_filters('getarchives_where', $where_query, $args);

Hi @rpkoller.
Basically, $wpdb->prepare method will wrap with quotes all the parameters. So, for example, the $join and $where must be previously properly sanatized on it's creation process.
An example:
$query = $wpdb->prepare("SELECT YEAR(post_date) AS `year`, count(ID) as posts FROM {$wpdb->posts} %s %s GROUP BY YEAR(post_date) ORDER BY post_date %s %s", 'LEFT JOIN ...', 'WHERE 1=1', 'DESC', 'LIMIT 10');

This will break the query, since will try to execute the following:
SELECT YEAR(post_date) AS `year`, count(ID) as posts FROM table 'LEFT JOIN ...' 'WHERE 1=1' GROUP BY YEAR(post_date) ORDER BY post_date 'DESC' 'LIMIT 10'

So the use of $wpdb->prepare doesn't fit in some cases.

@arall check-out https://github.com/jarednova/timber/commit/a171a96fd3d4dde1618a26bfd3710e64db9761fa#diff-c7a63effa418bf82b4ced9467a5d6c26R229 and let me know if you think that resolves the issue. As both you and @rpkoller note, the $join, $where, etc. vars can't be prepared as this escapes the SQL. @Otto42 has more info on this WP Exchange post: http://wordpress.stackexchange.com/a/140318/71076

It may work with the $post_type, but I don't see a proper fix for the $joinand $where vars at https://github.com/jarednova/timber/commit/a171a96fd3d4dde1618a26bfd3710e64db9761fa#diff-c7a63effa418bf82b4ced9467a5d6c26R97

That is not how prepare() works, and the suggested "fixes" above are totally incorrect.
Running an query directly is not dangerous unless there is a means for the query to be modified in an unsafe way.

@Otto42 thanks so much for chiming-in and clearing that up. I'll confirm that the $where etc., are safely handled before closing this

Any updates on this? This plugin is still considered unsafe to use in our PEN tests because of this issue.

Hi @kvdnberg thanks for the nudge. After looking into this and the input we got from Otto42, I'm confident that there's no issue here.
Just because there's unprepared SQL does not mean it's inherently unsafe. The potential vulnerability exists if a user were to have access to PHP where they could somehow apply a filter to getarchives_where — which is something they can do WITHOUT Timber (this is a filter in WP Core). Besides, if someone has full PHP access they could call the ole' global $wpdb and wreck havoc anyway.


⚠ Fetchers has degraded performance

In 2f20832, Fetchers ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 308 ms

Resolved: Fetchers performance has improved in 22de4ec.