UI: Add a whitelist in i18next to fix the issue #675

Why for change
To fix https://github.com/pingcap-incubator/tidb-dashboard/issues/675.
The root cause of issue is we declare two languages as zh-CN and en in i18next while some situations browser will return zh (Under my case the browser is Chrome 83 the OS is Windows 10) which is out of our language definition.
What did i do
I added a whitelist only for zh-CN and en in i18next to block other cases. With the whitelist i18next will fallback to en by default if browser return language out of our definition like zh or en-US.
Test
Passed on my environment. Now i18next got en as i18nextLng

@baurine PTAL :)

So by this way, 'zh-HK' / 'zh-TW' / 'zh-SG' (https://www.andiamo.co.uk/resources/iso-language-codes/) will be fallback to 'en' as well, not sure whether i18next has a customized fallback strategy.

Seems no customized fallback provided in i18next but has custom Detector.  I tried it but do not figure it out  :(

According to the document: https://www.i18next.com/principles/fallback

Per default locals containing region or script will take a translation from the pure language file if not found. (https://www.i18next.com/principles/fallback#locals-resolving). It means 'zh-XX' will fallback to 'zh' automatically

We can define an object for fallbackLng (https://www.i18next.com/principles/fallback#fallback-language) like this:
fallbackLng: {
    'zh-HK': ['zh-CN', 'en'],
    'zh-TW': ['zh-CN', 'en'],
    ...
}

I prefer to use the way 1. We can change all places used by 'zh-CN' to 'zh'. (for example, zh-CN.yaml to zh.yaml), this can prevent 'zh' /  'zh-HK' / 'zh-TW' / 'zh-SG' / 'zh-XXX' except 'zh-CN' fallback to 'en' with no more configuration. (need test to confirm)
@breeswish , how do you think about it?

Or I can try the custom detector later.

Yes, I also think solution 1 looks best
https://github.com/pingcap-incubator/tidb-dashboard/pull/677#issuecomment-655906807

Thanks for your contribution! LGTM, I will have a test soon.

/merge

/merge

@all-contributors please add @ericsyh  for code


Different lamda confirguration for some jobs

Hi! Is it possible to have several SQS queues and connections and map them to different lamda instances using bref?
For example, I have regular queue tasks that can be processed on 1gb lambda instance, and a cpu intensive tasks that requires a 5-10gb lamda instance. Currently I have several servers and map tasks between them using different ‘artisan queue:work —connection={name}’ workers.
Is it something that bref/serverless can handle?

Hi, yes that is definitely possible with Bref.
FYI feel free to chat and ask for support in the GitHub discussions of Bref: https://github.com/brefphp/bref/discussions/categories/support

Hi, yes that is definitely possible with Bref.
FYI feel free to chat and ask for support in the GitHub discussions of Bref: https://github.com/brefphp/bref/discussions/categories/support

And sorry for the delay, with the holidays :)

And sorry for the delay, with the holidays :)


MA27 interface

This PR adds a ma27 linear solver interface. I expect that the existing build should already work with this.
A mechanism for resizing the work arrays used by ma27 is provided. A unit test equivalent to the MA57 is also provided and passes.
However, I have observed that when attempting to solve hs15 with the byrd preset the problem is repeatedly rank deficient and eventually the nlp fails due to inertia correction becoming unstable. Unclear, what happens there. The ipopt preset is happy with it and other test problems I tried didn't trigger this behaviour. One cause for this might be that ma27 and ma57 differ in an important aspect: ma27 stores the factors in the array passed with the values of A whereas ma57 has a separate store for it. Hence, in the existing ma57 interface it is possible to pass matrix.data_pointer() directly to the factorisation and solver routine, whereas in ma27 we have to make a copy and keep it for subsequent calls. The documentation states that the solve should not be called with different values of A from the factorisation, but in principle it would be possible to pass different values. Not sure if this is done though.

Thanks @worc4021! I will investigate the issue you described with the byrd preset and hs015. We may have to change some settings to better estimate the inertia.


spotify_search_track limit

I love this provider and had so much fun using it! I am curious if there is a hard limit to the amount of songs I can pull using the spotify_search_track by_artist data block. It seems like that limit might be 50 right now, but I am trying to pull every song from a particular artist. Let me know if I am missing something or if there is a fix. Thanks!

I think there is a limit of 50, enforced by Spotify. I was trying to think of a way to support pagination somehow, but I'm not quite sure if it works within the declarative style of terraform.
Otherwise we could updated the search datasource code to perform batch the requests

Hello @conradludgate,
I will try to take some time to understand your code and see how we could go beyond this limit of 50 tracks per search.
I am a newbie in go, but it could be a good challenge for me 😄
(And I need this feature to automatically add news tracks of multiples artists in a big a playlist of epic style musics 🔥 )


chore(release): Add changelog for 1.2.2

1.2.2 - 2024-07-10
Added

types_spaces: No spaces around union and intersection type operators

K then let's wait for that


MapVirtualKey returns different keycode depending on the language

If I run the program with spanish layout I get key code 220, in english I get 192.

Hello,
When you change your keyboard layout while the app is running the shortcut is still mapped to the old key code, that's why it doesn't work.
AFAIK there is no easy way to detect it, the message WM_INPUTLANGCHANGE is only sent to the active window.
As a workaround, you can restart the app in order to detect the correct key code after changing the keyboard layout.


non-canonical integer (leading zero bytes) for *big.Int, decoding into (types.Transaction)(types.txdata).R

i got a error message "non-canonical integer (leading zero bytes) for *big.Int, decoding into (types.Transaction)(types.txdata).R" while using rpc interface "emerald_signTransaction" .
it happens occasionally.
i have found a similar issue eth.accounts.signTransaction: expected r & s to be treated as quantity, not data #1170.
could you provide some helps?

@caochao, can you provide input values for crashed rpc call?

@r8d8 let me have a try, it happens occasionally

fixed #315


Any tutorial that i can use to selfhost this bot ? :(

I recommend that you just use the official instance. I won't make a self-hosting tutorial, as I don't want to encourage it. If you are experienced with Cloudflare Workers then you can probably set it up yourself.


408-Better-API-to-support-class-and-variables-removal

#408: New API to confirm unused classes and variables

confirmUnusedClasses:
confirmUnusedVariables:
confirmUnusedVariablesInDefiningClass

I don't understand merging sometimes


Run AQL queries as Celery tasks

Related to #43 and intended as a follow-up for PR #71 .
We should leverage Celery when running AQL queries. For large networks, complex queries could take a significant amount of time to run. For this reason, we probably shouldn't run these queries during the HTTP request/response.

I'm not super sure about this. Bringing in Celery means we have to manage the query return asynchronously, which adds quite a bit of both development and UX overhead.
It's possible that we would want to run "large" queries asynchronously, but I think in the moment there are higher impact things we can do to make querying more usable/efficient:

Limit queries to something like 10 seconds so that they can be done in-request without overwhelming the server or the client with too much data.
Look into indexing so that we have a way to ensure that queries do run quickly.

(2) is something Jake and I have really not looked into at all. We should learn about how Arango handles DB indexes, and we should think about whether to expose that feature in the Multinet API, or else do some sort of automatic indexing on the user's behalf.
@AlmightyYakob, I'm interested in your thoughts on this as well.

I'm in favor of this change, @naglepuff and I actually discussed this offline, which is where this issue came from.

Limit queries to something like 10 seconds so that they can be done in-request without overwhelming the server or the client with too much data.

10 seconds really isn't much time. I think most of the queries that are being done on multilink, for example, would take much longer than that. The benefit of using celery for this is that we can vastly widen the max query time, even to just a minute, which is more than we could do in the request. Essentially, since it seems the queries would often run up against the max request time, rather than tying our hands by trying to fit it all into 30 seconds, we could run it asynchronously. Yes it adds some additional overhead in retrieving the response, but that can be abstracted away in the client library, similar to how uploads are.

Look into indexing so that we have a way to ensure that queries do run quickly.
(2) is something Jake and I have really not looked into at all. We should learn about how Arango handles DB indexes, and we should think about whether to expose that feature in the Multinet API, or else do some sort of automatic indexing on the user's behalf.

To me, indexing is an orthogonal issue here. If we can use indexing correctly to reduce query times, then that's great, but I honestly wouldn't rely on that to ensure our queries are running in a short time. Even if indexes improve document retrieval in the general case, it's unclear as to whether these improvements would persist when running arbitrary AQL queries that traverse a graph. To be clear, I'm in favor of using indexing, I just don't think that alone should be a substitute for running AQL queries asynchronously.

I'm in favor of this change, @naglepuff and I actually discussed this offline, which is where this issue came from.

Limit queries to something like 10 seconds so that they can be done in-request without overwhelming the server or the client with too much data.

10 seconds really isn't much time. I think most of the queries that are being done on multilink, for example, would take much longer than that. The benefit of using celery for this is that we can vastly widen the max query time, even to just a minute, which is more than we could do in the request. Essentially, since it seems the queries would often run up against the max request time, rather than tying our hands by trying to fit it all into 30 seconds, we could run it asynchronously. Yes it adds some additional overhead in retrieving the response, but that can be abstracted away in the client library, similar to how uploads are.

Do we have a specific instance where AQL queries have been timing out? If so, this becomes much more of an immediate concern, but I'm not aware of any such demands right now.

Look into indexing so that we have a way to ensure that queries do run quickly.
(2) is something Jake and I have really not looked into at all. We should learn about how Arango handles DB indexes, and we should think about whether to expose that feature in the Multinet API, or else do some sort of automatic indexing on the user's behalf.

To me, indexing is an orthogonal issue here. If we can use indexing correctly to reduce query times, then that's great, but I honestly wouldn't rely on that to ensure our queries are running in a short time. Even if indexes improve document retrieval in the general case, it's unclear as to whether these improvements would persist when running arbitrary AQL queries that traverse a graph. To be clear, I'm in favor of using indexing, I just don't think that alone should be a substitute for running AQL queries asynchronously.

I don't think it's orthogonal, for a simple reason: if properly indexing our own use cases pushes off the time at which we require async querying, then we have that time to develop other things that matter more in the short term. Investigating indexing brings one further benefit: it improves end user UX. The final factor here is that I have a feeling that getting indexing into our workflow would require less time investment than getting async AQL working. I'm happy to be shown otherwise, but to me it's a low cost investment to speed things up, leaving us more time to figure out if and how to do async queries.

Do we have a specific instance where AQL queries have been timing out? If so, this becomes much more of an immediate concern, but I'm not aware of any such demands right now.

I believe it happens with the Marclab work that @gotdairyya is doing. Maybe she can chime in on that.

The final factor here is that I have a feeling that getting indexing into our workflow would require less time investment than getting async AQL working. I'm happy to be shown otherwise, but to me it's a low cost investment to speed things up, leaving us more time to figure out if and how to do async queries.

I actually think the opposite: I think adding indexing would require more time investment than asynchronous AQL. To do so, we need to:

Investigate how we can accomplish indexing in arangodb
Develop a way to automatically create indexes for datasets (which raises questions about when/where we should create these indexes)
Profile the implementation to ensure that the indexing actually does solve the problem

There's also the possibility that creating and using these indexes doesn't actually impact our query performance all that much, or at all, as we really don't know what performance impact they will have. If we have a query that takes 60 seconds, and indexing decreases the running time to 40 seconds, that's great (a 33% improvement!), but it's still over the 30 second threshold. Alternatively, we know that doing this asynchronously will solve our problem, and we already know how celery tasks work, as well as how to implement them. Essentially:

Kick off a celery task and return the task model instance to the endpoint
Run the query in the task method, and store the result on the task instance
The client queries the task until it's done, and retrieves the result

These two approaches also might not be too far apart regarding level of effort, I'm not sure. My main point is that I don't think the indexing approach is trivial, and would take some decent time. I personally think we should eventually do both, if we can, and if they both have a place.
At the end of the day, I'm happy to do either, but I do feel that running the queries asynchronously has a higher chance of success.

I believe it happens with the Marclab work that @gotdairyya is doing. Maybe she can chime in on that.

Yeah honestly anything beyond a 2 hop query starts to get pretty slow, especially if the queries have less parameters defined. I haven't tried to run any queries beyond the 2 hop example because either my browser crashes or my laptop can't handle it. But at the moment, the marclab is not interested in these longer hopped queries.

Going to respond to both @AlmightyYakob and @gotdairyya here:
Jake, you've convinced me that async querying is the better short term solution, but I want to make sure the client applications are able to show progress correctly (meaning, properly show a throbber and/or have UI where you can check on these things) so as not to wreck the UX.
Derya, your complaint about 2 hop querying is exactly why I believe indexing is critical. While async querying will solve your immediate problem in that the queries will work, you're going to be waiting for exponentially longer times for each hop you add. I think we can solve much of that with indexing, though of course I'm not sure until we investigate.
A final note about our approach to engaging with Arango indexes: I don't think we should aim for automatic indexing right off the bat. Instead, we should offer some simple way to create indexes on columns or groups of columns via the UI. But before that, we can simply experiment with manually creating indexes on the Arango instance in order to measure performance.
So let's go ahead and do async AQL queries, but let's also keep indexing in mind as something that requires investigation at the very least.

So let's go ahead and do async AQL queries, but let's also keep indexing in mind as something that requires investigation at the very least.

I've filed #77 to track this

One extra benefit of running AQL queries as celery tasks is that the query and results would be stored in the model used to facilitate the feature. So, after the query has already been run, you're able to view the results again by retrieving the AQL task. This is in contrast to the current implementation, in which AQL queries are ephemeral, and not stored in any permanent way.


Added changes necessary for microbuild v2 (in master branch)

Hi @madeleinefletcher, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Madeleine Fletcher). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

:shipit:


AssertionError: Invalid port format, aborting.

If the host port is not defined in port mapping the above error is generated.
Example:
version: '3.8'

services:

  keycloak:
    image: quay.io/keycloak/keycloak:19.0.1
    environment:
      KC_HOSTNAME: localhost
      KEYCLOAK_ADMIN: admin
      KEYCLOAK_ADMIN_PASSWORD: admin
    ports:
      - ":8080"
    command:
      - "start-dev"

Thanks, we will fix this in the next version!


Own page route

(DO NOT MERGE INTO MASTER!!!!!!!!! If you find this suitable, please merge it into the userPage branch, since this branch was created off of that)
Anyhow, this re-works the ownPage route so that it will just redirect to the user route, albeit with the user owns guid. Any and all other path components will carry over, so as we build out the user pages routes, we never need to also adjust the ownPage route.

closed in liu of: https://github.com/OpenBazaar/openbazaar-desktop/pull/30


Add E2E tests

Use Cypress and write E2E tests
Link E2E tests to test phase in CI pipeline

Added Cypress tests. Cypress tests run at Netlify build phase.
12:34:38 AM: ❯ Loading plugins
12:34:38 AM: -<EMAIL_ADDRESS>from netlify.toml and package.json
|
12:36:50 AM: Test the landing page
12:36:51 AM: ✓ Navigate to landing page (667ms)
12:36:51 AM: ✓ Test blog post on Landing page (83ms)
12:36:51 AM: ✓ Test portfolio post on Landing page (199ms)
12:36:51 AM: ✓ Navigate to About page (164ms)
12:36:51 AM: ✓ Navigate to Blog page (169ms)
12:36:52 AM: ✓ Navigate to Portfolio page (222ms)
12:36:52 AM: ✓ Navigate to Home page (269ms)
12:36:52 AM: 7 passing (2s)


Catchup with Starknet.js

The goal of this issue is to make sure Abiwan is fully compatible with the latest starknet.js versions, basically make sure it supports all the newly added types, for instance:

[ ] core::starknet::secp256k1::Secp256k1Point
[ ] u512

@PhilippeR26 You're welcome to add types I missed in this issue

Seems good.


Create Aeroplan Game

Fixes #256
Created a Aeroplan game using HTML and CSS.
Tried to create the game as same as possible.
Hope this solves the issue.
Screen shot:

Screen Recording:
https://github.com/DhanushNehru/Ultimate-Web-Development-Resources/assets/143169520/610f70c9-d14c-4fb7-86d6-f161bbd89ea3
Looking forward for merging the PR.

Hey @DhanushNehru @Swpn0neel @selemondev if you liked the changes of the PR. Can you please merge it. :)

Hey @Swpn0neel @selemondev can you please merge this PR. :)

Hey @selemondev you can refer to this PR. Hoping forward for merging this PR.

Hi @DevanshKyada27 please update the main readme , list of projects section as well

OK @DhanushNehru will do it soon :)

Done @DhanushNehru can you please just review and merge it. :)


updated percentage text

https://trello.com/c/30yQo1N9/164-text-after-percentage-in-results-page

IBM Cloud toolchain: Delivery Pipeline deployed LRP-web-app to dev, including commit 74ec8cc21061d998355db6c74c0a229a95c764bc

IBM Cloud toolchain: Delivery Pipeline deployed LRP-web-app to test, including commit 74ec8cc21061d998355db6c74c0a229a95c764bc


@conda-forge-admin,please add bot automerge

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I added bot automerge in conda-forge/google-cloud-iam-feedstock#8.


Meta.cpp "publishedid" is incorrect

Update the meta.cpp's "publishid" attribute with the workshop's ID.
ID: "2513044572"
Thanks to Moon Crow for finding and pointing this out.

Will be fixed next update.


Replace Chevron Circle with a Better one

Replace the following sprite with one having a minimal look

Replace the following sprite with one having a minimal look

Which chevron are you talking about ?

Look at the quality of the white circle with arrow in it, compared to the textures of a photo below it..
Replace with a grey one if possible to make it look good for every theme be it light or dark instead of default white

Hi, mate. I've looked into this issue and the one you opened about another icon  ( in the issue #52 ) and I discovered that instagram used an old css technique (sprites) to display those icons you want me to change (See this link : [https://www.instagram.com/static/bundles/es6/sprite_core_2x_bcd90c1d4868.png/bcd90c1d4868.png] ), which unfortunately makes it impossible for us to change them. Sorry


Say

The documentation is missing the specification that after Say or one of its aliases a literal is also valid. However, it's not clear if poetic numbers are allowed or if the rest of the line is parsed as a string. Requiring quotes at this would be useful for numeric output

I have the following idea for say.
Name was Axl Rose
Say "hello " Name 3
would output:
Hello Axl Rose 3\n

Poetic literals are only allowed during assignment - it's a very simple operation that is unlikely ever to involve side-effects, IO or any sort of redirection, so I think they're workable here. My hunch is that in any other context you'll rapidly find examples that can't be correctly parsed without some very weird edge cases.
I had the idea that Say would actually behave like ToString, with the default behaviour being to write to STDOUT if no output variable is specified, but with the ability write statements like
Whisper your dreams to the world
which would take the ToString() representation of whatever's in your dreams and put that value into the world.


not deploying

Does this occur consistently?
Repro steps:

Action: appService.Deploy
Error type: Error
Error Message: fatal: unable to access 'https://testingqw.scm.azurewebsites.net:443/testingqw.git/': The requested URL returned error: 403
Version: 0.19.0
OS: win32
OS Release: 10.0.19041
Product: Visual Studio Code
Product Version: 1.51.0
Language: en

Call Stack
Object.<anonymous> extension.bundle.js:164:522736
rejected extension.bundle.js:164:522163
processTicksAndRejections task_queues.js:94:5

Please provide detailed repro steps.


HIGH: [Public] [$500] Members disappear after invitation in public rooms

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: <IP_ADDRESS>
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Create a workspace
Create a public room
Invite a new member (without an Expensify account)
Observe the member appearing momentarily and then disappearing
Refresh the page and observe the newly invited member on the member list

Expected Result:
The invited member shouldn't flash and then disappear
Actual Result:
The members disappear
Workaround:
Unknowns
Platforms:

Which of our officially supported platforms is this issue occurring on?

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

Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/38236554/0f83941a-6767-4a47-9702-f6535a0fa6b9
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~016a8e93511c34c648
Upwork Job ID:<PHONE_NUMBER>762093056
Last Price Increase: 2024-02-26

We think that this bug might be related #wave8-collect-admins
CC @zanyrenney

I think this likely fits better with #vip-vsb. I want to test this a little more tomorrow myself to determine priority.

Raised in the #vip-vsb room here

Added this to the #vip-vsb project, and split out the two issues - keeping the members-disappearing sub-issue here, and taking the emails not being delivered to https://github.com/Expensify/App/issues/37067

I believe there is an irregularity with the api InviteToRoom response. When we invite to a non-public room, the response is complete:

'InviteToRoom' response to a non-public room

However, when we invite to a public room, the backend response seems incomplete to me:

'InviteToRoom' response to a public room

Offline works normally.

@marcochavezf do you have some context on this? Looks like you were working on some InviteToRoom items in https://github.com/Expensify/App/issues/30919

Hi, I have a proposal posted here. It's about personalDetails filtering. Currently, we do not display members with no personal details. If we want to show them, we should consider my alternative proposal to remove the personalDetails null check in RoomMembersPage.

Thanks for checking @fedirjh - added the internal label

Waiting for a volunteer on this one

Issue not reproducible during KI retests. (First week)

I'm still able to reproduce so I think this is still a valid issue:
https://github.com/Expensify/App/assets/38236554/05939612-1ef6-4fb4-a387-c994a198ad4b

Still waiting for a volunteer

Same status - assigned to a project and with the appropriate status, we're just waiting for a volunteer.

Same update

Am I correct in understanding this is a real reproducible issue, and it's front-end so should be doable with contributors, but there are no proposals?  What are we doing to get proposals?

@quinthar ideally it should be fixed in backend, but if you're looking for a frontend fix, you might want to consider my proposal.
https://github.com/Expensify/App/issues/36378#issuecomment-1963408169

Yes, @wildan-m is right - the ideal fix here is BE, which is why it's labelled as Internal and we're not actively looking for external proposals.

Still awaiting an internal volunteer. Shared in the #vip-vsb update so it's visible for someone looking for something.

Same update, still waiting on a volunteer.

Same update

Still awaiting an internal volunteer

Same status - awaiting internal engineering. This issue is still being highlighted in the #vip-vsb Spring 24 items that need to be completed, so it's not going unnoticed.

Still awaiting an internal volunteer

Same status - awaiting internal engineering.

No change here.

Closing in favour of https://github.com/Expensify/App/issues/40459, which Youssef is assigned to. I added the details of reproduction and the likely cause from this issue into that issue.


Wrong type for IMonthOptions.visibleWeeksCount

Version
1.11.2
Development Environment
Angular 7.2.9, Typescript v3.2.4
Current Behavior
IMonthOptions.visibleWeeksCount is supposed to be a number but it's defined as boolean in https://github.com/nhn/tui.calendar/blob/8ba786a69143c01c14daa614be6b396478117198/index.d.ts#L169

@mklenk
Our team modified it and merged it into the master branch.
It will be included in the next patch release.
Thanks.


MacOS and tvOS support

 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.Adam Share seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

I tested this, and found two issues:

the mac version doesn't support setting the drawable after it's been laid out. The fix seems to be needsLayout = true in drawableLayers or drawable
It seems that MacOS is far less liberal than iOS about calling getRed:blue:green:alpha: on colors which use different color spaces, and will throw an exception if this is called on a color that isn't in sRGB.

I'm okay landing with these still in, I can clean them up later. Just a heads up in case you're using this code.

I tested this, and found two issues:

the mac version doesn't support setting the drawable after it's been laid out. The fix seems to be needsLayout = true in drawableLayers or drawable
It seems that MacOS is far less liberal than iOS about calling getRed:blue:green:alpha: on colors which use different color spaces, and will throw an exception if this is called on a color that isn't in sRGB.

I'm okay landing with these still in, I can clean them up later. Just a heads up in case you're using this code.

Cool yeah I didn't really test yet, main goal was just trying to get it to at least import nicely with a macOS/iOS SwiftUI app. I guess technically with the NSView being used the min macOS version could be lower, just not sure how low.


Removed HealthKit.framework dependency from ResearchKit

Description
Referring Issues

Major changes

Ran the workflow manually on JS-53, instead of waiting for swiftlint to be automatically triggered


Jenkins slave docker image out of date

I'm experiencing the following error since my cluster update.
error: group map[componentconfig:0xc820376e70 extensions:0xc820376ee0 policy:0xc820376f50 authentication.k8s.io:0xc8203770a0 :0xc820376c40 authorization.k8s.io:0xc820376d20 autoscaling:0xc820376d90 batch:0xc820376e00 federation:0xc820376bd0 apps:0xc820376cb0 rbac.authorization.k8s.io:0xc820376fc0] is already registered

I've been able to trace it to a most likely problematic kubectl version. The docker slave image must be cached on the "latest" version. Because the latest version is installing a "then latest version" of kubectl, it's now out of date.
What's the proper way across all the machines to update or remove this container?

I was able to remote the image on the machine that it was spun up on. The next issue I ran into was that it seems to be using:
Client Version: version.Info{Major:"1", Minor:"3", GitVersion:"v1.3.4", GitCommit:"dd6b458ef8dbf24aff55795baa68f83383c9b3a9", GitTreeState:"clean", BuildDate:"2016-08-01T16:45:16Z", GoVersion:"go1.6.2", Compiler:"gc", Platform:"linux/amd64"}

Which 1.3.4 is old. The actual docker image seems to pull from the latest version, but this always loads an older version. I checked the image is tagged latest.

Indeed. I rebuilt myself copying the Dockerfile, pushed to a private repository and used it in my Jenkins configuration. It works well as a temporary workaround before the next official build.

I am new to this stuff. How would I go about resolving this exactly? What Jenkins configuration should I change after pushing the image to a private repository?

@abhishekShukla After you compile your image to a private repository, go to Jenkins -> Configure -> Images, Containers, Docker image. You should see the image that you can swap out for your own here.

I did that and now my job gets stuck here:
.
.
.
Still waiting to schedule task
Waiting for next available executor

Hey @abhishekShukla give it a little time to process. It might need to pull the container the first time and actually spin up an executor. This takes a few minutes for me sometimes.
I would also double check the setting Manage Jenkins -> Manage Nodes -> Click the cog on the right of Master. Make sure that # of executors is set to "0". Additionally, make sure you have enough resources on your cluster to perform the actions.

It seems like I had to name the slave image: "jenkins-k8s-slave" specifically. This solution works now. Thank you @clanstyles and @pdoreau

@abhishekShukla Thank you for the tip! I found the Dockerfile and built my version of jnlp-slave image but keep fail and get error java.nio.channels.ClosedChannelException. I succeeded after change the image name to "jenkins-k8s-slave". Thank you so much!
But I am so curious about this: Is the docker image with name other than "jenkins-k8s-slave" would be blocked by jenkins master?

@ichiaohsu I can't seem to figure out where that dependency comes from. As I mentioned, I am new at this.

This has been fixed in the latest build of the jenkins-slave-image image. There should be no dependency by the kubernetes plugin on the name of the image it uses.

@viglesiasce
I follow this tutorial https://cloud.google.com/solutions/configuring-jenkins-kubernetes-engine
and use gcr.io/cloud-solutions-images/jenkins-k8s-slave, but it still doesn't work.
Finally, I change the image name to "jenkins-k8s-slave" and it works.
It seems that this bug is not fixed in the latest image?


Remove bar from wrapped lines

As you can see in the screenshot, miette puts a | after wrapping long lines. Looks like a bug

I don't think it's a bug, it makes more sense when there are more lines, but I can see why it looks odd when there's only one. Maybe it should be displayed only if there are more than two lines?

Clearly the pipe offset could be fixed. I'll give it a try.


Fix: ModelInstanceState name_ property should not set #2457

fix https://github.com/triton-inference-server/server/issues/2457

Thanks for this PR. It is addressed in #33.

Thanks for this PR. It is addressed in #33.


MacBook Pro gets hot after a few mins of running the emulator

Hi,
great work with the Agon emulator, it looks great for now and I was able to build it without problems on my MacBook Pro M1.
I noticed that after a few minutes of usage my Mac gets super hot and I have to stop the emulator. Any idea what could cause this problem ? (BTW, same problem with the emulator built in debug and release mode)
Thanks,
Jean

Thanks for your feedback. Unfortunately this behaviour is to be expected at the moment. The emulator uses two cores at 100% while running at maximum speed. We already have ideas how to limit the speed to the real agon and then cpu load will decrease, too. But our current scope is feature completeness at VDP 1.03 level. After we have achieved this, we will add more QOL features like this.

OK ;) I will aso wait for the net release - got the emulator running under Linux Mint 21.1 on a HP Chromebox Celeron DualCore 2955U at 1.4Ghz and also got the 2 Cores at 100%
Is there for another keyboard-layout (de/german)?

@guidol70 More keyboard layouts will follow. Currently only us keyboard layout is available.


Fix opkg download urls

The opkg URLs have changed

Please accept this pr. Without this image is useless.


Now AKS on HCI supports up to 8 physical servers

The following blog post mentioned that AKS on HCI supports up to 8 physical servers.
https://techcommunity.microsoft.com/t5/azure-stack-blog/aks-on-azure-stack-hci-november-2021-update/ba-p/2995180

Increasing physical node support from 4 nodes to 8 nodes
AKS on AzureStack HCI supports deployments on up to 8 physical nodes which makes it easier to run AKS on AzureStack deployments with a wider variety of Azure Stack HCI hardware and to scale up your deployment with confidence.

@tksh164 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#label:"aq-pr-triaged"

@tksh164
Thanks for your feedback. We've updated the content.
https://docs.microsoft.com/en-us/azure-stack/aks-hci/concepts-support

#please-close


IE11 does not identify itself as IE (Prototype.Browser.IE is false)

previous lighthouse ticket #3508
by Arnaud Dvl

Actually, the 1.7 version of prototype thinks that IE11 is a Mozilla browser.
You can have a look at this link to see all the removed API:
http://msdn.microsoft.com/en-us/library/ie/bg182625(v=vs.85).aspx
In particular, document.all and attachEvent have been removed.

I think the importance of this issue depends on whether this flag is meant to be internal to PrototypeJS, or public for PrototypeJS-using applications to use.  I just tried to use this flag in my application, and had to add in jwestbrook's additional test for IE 11.  The documentation at http://api.prototypejs.org/Prototype/Browser/ makes it look like the IE flag is meant to be public.

Yeah, I wanted this to let me detect IE but it didn't, reliably. I got Gecko on IE12/Win10.
There's also Edge to consider, which is detected as WebKit.

These flags are used internally to replace normal code with work-arounds, so you don't try to do something on Firefox that you need to do on IE 9, since that might cause Firefox to stop working. If IE 11 passes all the tests, then the only reason to test for IE is if you want to know for some reason, not because ordinary Prototype standard code won't work in that browser, and something needs to be worked around.
Walter
On Nov 10, 2015, at 7:46 AM, GreenReaper<EMAIL_ADDRESS>wrote:

Yeah, I wanted this to let me detect IE but it didn't, reliably. I got Gecko on IE12/Win10.
There's also Edge to consider, which is detected as WebKit.
�
Reply to this email directly or view it on GitHub.


Automated conversations

Requirements

The Dev Phone should be able to remember repetitive conversations from the development loop and automatically have those conversations
Needs to be able to understand which messages belong to which actor (in the event that an application sends multiple messages, for example)
Needs to have a sense of an acceptable/sensible wait time for a message to appear
On failure states (where the expected conversation doesn't match the actual) it should log as much information as possible (which message it failed on, whether it failed due to delay or mismatch data, etc.)
Needs some sort of syntax for saving messages in a sensible way

First thought is an array of objects. Array to show the order of the interaction, objects to hold message + useful metadata (actor, etc)

Considerations

Should there be an option for fuzzy matching, in the event that a developer is making small changes to copy but still wants to test? Alternately, there should just be a way to quickly edit the conversation script, rather than having to re-record again.

From a "this is a potential testing tool for Twilio users" point of view: Have we considered exposing most of this via a module that can be integrated into existing testing tooling?
i.e. rather than having to build a bunch of UI, data storage, and the rest for this up front, exposing something like an uncomplicated module that can be the client that's sending/receiving messages, and just letting that be called as you would any other module in JavaScript? That might also allow us to figure out the needed interactions and then build the other UX for this on top of that as an additive step rather than doing 100% of it upfront.
The basic parts that I can think of that'd need to be built:

ability to do phone calls

perhaps enable an audio file to be played as the developer's input?

ability to do SMS

ideally probably not super different than the current implementation of how we send a message, just... relatively headless?

ability to do MMS (once this lands in dev phone)

probably same as above?

Maybe my understanding of the offering here is too shallow and this is all not possible, but in general I'd expect that we'd be able to capture responses and do deep assertion checks to make sure that they're what the user would expect back and then allow their test suite to pass/fail if that is/isn't true?


Set up log removal on buildbot master

The buildbot manual (http://docs.buildbot.net/0.8.1/full.html) recommends rules like:
     @weekly cd BASEDIR && find . -mindepth 2 i-path './public_html/*' -prune -o -type f -mtime +14 -exec rm {} \;
     @weekly cd BASEDIR && find twistd.log* -mtime +14 -exec rm {} \;

I couldn't quite make this work (the i-path thing to exclude public_html kept giving me errors). I also think we should do 5 days instead of 2 weeks, as we don't have that much disk space :-)
We ran out of disk again today, though luckily it was during normal working hours, so nobody had to do a late-night recovery.
CC @edunham

owait, there's already a PR; will comment there...


Secret not being coerced when using .model_copy(update=...)

Initial Checks

[X] I confirm that I'm using Pydantic V2

Description
If you use .model_copy(update=...) on a model with a SecretStr attribute and try to update the secret attribute, the updated secret is not coerced into a SecretStr.
Given that when you initially create the model and the string is coerced into a SecretStr, I'd expect the same to happen when using .model_copy(update=...).
Example Code
In [20]: from pydantic import BaseModel, SecretStr

In [21]: class Model(BaseModel):
    ...:     secret: SecretStr
    ...:

In [22]: m = Model(secret="test")

In [23]: m
Out[23]: Model(secret=SecretStr('**********'))

In [24]: m.model_copy()
Out[24]: Model(secret=SecretStr('**********'))

In [25]: m.model_copy(update={"secret": "test"})
Out[25]: Model(secret='test')

### Python, Pydantic & OS Version

```Text
pydantic version: 2.6.4
        pydantic-core version: 2.16.3
          pydantic-core build: profile=release pgo=false
                 install path: /Users/alexdashly/Projects/dashlyhr_core/.venv/lib/python3.12/site-packages/pydantic
               python version: 3.12.3 (main, Apr  9 2024, 08:09:14) [Clang 15.0.0 (clang-15<IP_ADDRESS>)]
                     platform: macOS-14.4.1-x86_64-i386-64bit
             related packages: fastapi-0.110.0 mypy-1.9.0 typing_extensions-4.10.0 pydantic-settings-2.2.1
                       commit: unknown

RTM: https://docs.pydantic.dev/latest/api/base_model/#pydantic.BaseModel.model_copy

Values to change/add in the new model. Note: the data is not validated before creating the new model. You should trust this data.


Add Internet Computer

https://github.com/dfinity/awesome-internet-computer#readme
This list relates to the Internet Computer (IC), a horizontally scalable blockchain that runs at web speed. The IC has a thriving community of developers with a growing toolset and adding it to this list would help support these developers in discovering the tools that they need to build decentralized applications on the IC.
This PR supersedes #2930 and accounts for everything requested in the initial review. I read through all the guidelines several times, but definitely let me know if there's anything else we need to change. Thank you!
By submitting this pull request I confirm I've read and complied with the below requirements 🖖
Please read it multiple times. I spent a lot of time on these guidelines and most people miss a lot.
Requirements for your pull request

Don't waste my time. Do a good job, adhere to all the guidelines, and be responsive.
You have to review at least 2 other open pull requests.
Try to prioritize unreviewed PRs, but you can also add more comments to reviewed PRs. Go through the below list when reviewing. This requirement is meant to help make the Awesome project self-sustaining. Comment here which PRs you reviewed. You're expected to put a good effort into this and to be thorough. Look at previous PR reviews for inspiration. Just commenting “looks good” or simply marking the pull request as approved does not count! You have to actually point out mistakes or improvement suggestions.
You have read and understood the instructions for creating a list.
This pull request has a title in the format Add Name of List.

✅ Add Swift
✅ Add Software Architecture
❌ Update readme.md
❌ Add Awesome Swift
❌ Add swift
❌ add Swift
❌ Adding Swift
❌ Added Swift

Your entry here should include a short description about the project/theme of the list. It should not describe the list itself. The first character should be uppercase and the description should end in a dot. It should be an objective description and not a tagline or marketing blurb.

✅ - [iOS](…) - Mobile operating system for Apple phones and tablets.
✅ - [Framer](…) - Prototyping interactive UI designs.
❌ - [iOS](…) - Resources and tools for iOS development.
❌ - [Framer](…)
❌ - [Framer](…) - prototyping interactive UI designs

Your entry should be added at the bottom of the appropriate category.
The title of your entry should be title-cased and the URL to your list should end in #readme.

Example: - [Software Architecture](https://github.com/simskij/awesome-software-architecture#readme) - The discipline of designing and building software.

The suggested Awesome list complies with the below requirements.

Requirements for your Awesome list

Has been around for at least 30 days.That means 30 days from either the first real commit or when it was open-sourced. Whatever is most recent.
Don't open a Draft / WIP pull request while you work on the guidelines. A pull request should be 100% ready and should adhere to all the guidelines when you open it. Instead use #2242 for incubation visibility.
Run awesome-lint on your list and fix the reported issues. If there are false-positives or things that cannot/shouldn't be fixed, please report it.
The default branch should be named main, not master.
Includes a succinct description of the project/theme at the top of the readme. (Example)

✅ Mobile operating system for Apple phones and tablets.
✅ Prototyping interactive UI designs.
❌ Resources and tools for iOS development.
❌ Awesome Framer packages and tools.

It's the result of hard work and the best I could possibly produce.
If you have not put in considerable effort into your list, your pull request will be immediately closed.
The repo name of your list should be in lowercase slug format: awesome-name-of-list.

✅ awesome-swift
✅ awesome-web-typography
❌ awesome-Swift
❌ AwesomeWebTypography

The heading title of your list should be in title case format: # Awesome Name of List.

✅ # Awesome Swift
✅ # Awesome Web Typography
❌ # awesome-swift
❌ # AwesomeSwift

Non-generated Markdown file in a GitHub repo.
The repo should have awesome-list & awesome as GitHub topics. I encourage you to add more relevant topics.
Not a duplicate. Please search for existing submissions.
Only has awesome items. Awesome lists are curations of the best, not everything.
Does not contain items that are unmaintained, has archived repo, deprecated, or missing docs. If you really need to include such items, they should be in a separate Markdown file.
Includes a project logo/illustration whenever possible.

Either centered, fullwidth, or placed at the top-right of the readme. (Example)
The image should link to the project website or any relevant website.
The image should be high-DPI. Set it to maximum half the width of the original image.

Entries have a description, unless the title is descriptive enough by itself. It rarely is though.
Includes the Awesome badge.

Should be placed on the right side of the readme heading.

Can be placed centered if the list has a centered graphics header.

Should link back to this list.

Has a Table of Contents section.

Should be named Contents, not Table of Contents.
Should be the first section in the list.
Should only have one level of nested lists, preferably none.
Must not feature Contributing or Footnotes sections.

Has an appropriate license.

We strongly recommend the CC0 license, but any Creative Commons license will work.

Tip: You can quickly add it to your repo by going to this URL: https://github.com/<user>/<repo>/community/license/new?branch=main&template=cc0-1.0 (replace <user> and <repo> accordingly).

A code license like MIT, BSD, Apache, GPL, etc, is not acceptable. Neither are WTFPL and Unlicense.
Place a file named license or LICENSE in the repo root with the license text.
Do not add the license name, text, or a Licence section to the readme. GitHub already shows the license name and link to the full text at the top of the repo.
To verify that you've read all the guidelines, please comment on your pull request with just the word unicorn.

Has contribution guidelines.

The file should be named contributing.md. Casing is up to you.
It can optionally be linked from the readme in a dedicated section titled Contributing, positioned at the top or bottom of the main content.
The section should not appear in the Table of Contents.

All non-important but necessary content (like extra copyright notices, hyperlinks to sources, pointers to expansive content, etc) should be grouped in a Footnotes section at the bottom of the readme. The section should not be present in the Table of Contents.
Has consistent formatting and proper spelling/grammar.

The link and description are separated by a dash. Example: - [AVA](…) - JavaScript test runner.
The description starts with an uppercase character and ends with a period.
Consistent and correct naming. For example, Node.js, not NodeJS or node.js.

Doesn't use hard-wrapping.
Doesn't include a Travis badge.You can still use Travis for list linting, but the badge has no value in the readme.
Doesn't include an Inspired by awesome-foo or Inspired by the Awesome project kinda link at the top of the readme. The Awesome badge is enough.

Go to the top and read it again.

unicorn
I also reviewed the following PRs:

#2517
#2524
#2449

I also reviewed the following PRs:

#2517
#2524
#2449

@eric-hc, thank you for the review! I see what you're saying about the nested header requirement, and it appears to be specific to the Table of Contents section. Plenty of popular Awesome lists also use nested headers in the same way (example). Thanks for the feedback and for taking the time to comb through the rules in case we ended up missing anything.

Closing in light of a recent update to dfinity/awesome-internet-computer which is unlikely to meet the requirements for this approval process.


skip the beforeEach for the particular it function

It would be better if we have function to skip the beforeEach for a particular it function

How about something like this?
beforeEach(...);

it('do something', ...);
it('do something else', ...);

it.skipBeforeEach('do something special');

However, this leaves ambiguity as far as control over which beforeEach block to skip is concerned. In cases where there are nested describe blocks, with each describe block having it's own beforeEach, a naive behaviour would be to skip all applicable beforeEach sequences. Another alternative way to handle this would be to skip the most immediately applicable beforeEach, as in the example above, but that can lead to hard to debug test failures.

You can check for this.currentTest.title and abort the beforeEach execution with a returnstatement.
const ok = require('assert').ok;

describe('Skip second beforeEach', function() {
  beforeEach(function() {
    if (this.currentTest.title === 'test 2') return

    console.log('inside beforeEach:', this.currentTest.title);
  })
  it('test 1', function() {
    ok(true);
  });
  it('test 2', function() {
    ok(true);
  });
  it('test 3', function() {
    ok(true);
  });
});


[BUG] no version attribute ?

Describe the bug
Not really a bug (but I don't think this qualifies as a feature request either):
rich has no version attribute, and the relevant info is rather stored in pyproject.toml
I have no experience with packaging with poetry. Would it make sense to you to use the python accessible  version attribute in rich.__init__.py instead of pyproject.toml[tool.poetry] ? Thanks !

poetry doesn't create __version__ attributes. They recommend using importlib.metadata to get the version. Details here https://github.com/python-poetry/poetry/issues/144
Personally, I think its a step backwards.

I see !
Personally I'd be happy to have a way to get the version number from outside rich, so importlib.metadata.version is a satisfactory solution to me, and I don't need it to be done internally. Thank you for your answer !


Source code PDF generator

We need a script to generate a resume of the library. So it could be easily printed to compete.

I have an a simple idea that might work, why we don't just use Markdown with a simple keywords, maybe we can use the same as doxygen. The idea it's simple, this is an example: (only function with @functionkeyword goes to the generated file)

/// @function foo
/// @brief foo evaluates a in bar.
/// @details Here we can use normal markdown :)
/// `bar` must follow the next signature:
//// ````c++
//// int f(float);
//// ````
//// @returns `bar(a)`
template<Func fn>
int foo(float a, Func &&bar) { return bar(a); }

This its easily transform to
# foo
**Brief** foo evaluates a in bar.
**Details** here we can use normal markdown :)
`bar` must follow the next signature:
````c++
 int f(float);
 ````
**Returns** `bar(a)`
````c++
template<Func fn>
int foo(float a, Func &&bar) { return bar(a); }
````

And that looks like this:
foo
Brief foo evaluates a in bar.
Details here we can use normal markdown :)
bar must follow the next signature:
 int f(float);

Returns bar(a)
template<Func fn>
int foo(float a, Func &&bar) { return bar(a); }

And then just use pandoc to generate the pdffile.

mm it's fine but... would we have to write documentation in a mix of markdown and doxygen?

mmm yes, but doxygen has some markdown support

that's the other thing maybe we don't need doxygen at all, given the purpose of the library. Whats would be the benefit to expose the API, hiding the implementation of the algorithms? I think the implementation it's what someone wants to see, so the format proposed above might be the correct approach of documentation.

Ok, you're right. Let's do it that.

This problem is solved. But can be improved...


Inner hits as models

Is there right now a way to directly fetch inner hits as models?
I have a ProductVariant model which has a product_id and a type_id. Those are note enforced for uniqueness in the DB.
I want to fetch all Variants, but don't have two variants with the same product_id and type_id.
So I did a:
   $products = ProductVariant::searchQuery($query)->collapseRaw(
            ['field' => 'product_id',
                'inner_hits' => [
                    'name' => 'by_color',
                    'collapse' => [
                        'field'=> 'color_id',

                    ],
                ],
            ]
        )->sort('product_id', 'asc')->paginate(50);

And that works the same as the Kibana query.
The thing is I end up with a list of models collapsed only by product_id.
To get to the inner hits, I can do
  foreach ($products as $product) {
            foreach ($product->innerHits()['by_color'] as $hit) {
                dd($hit);
            }
}

But that dd is a ElasticAdapter\Search\Hit class, which has no built in way of converting back to an Eloquent method. Even if that method existed, I'd be hammering my DB twice (once in the original request, which returns the Models by default, and then once more for each inner hit.
Is there a built in better way of doing this?

Hey @souljacker, I've just published a new version v4.1.0, which adds model method support for inner hits:
$innerHitModels = $product->innerHits()['by_color']->map->model();

It should only make one request to the database. Please reopen the issue if you face any troubles.


Suggestion: The order of observed grids should be changed considering the agent's yaw

The order of observed grids given by malmo is independent of the agent's yaw. It's inconsistent with the fact that the taken images depend on the yaw.
Now I am re-ordering the grids by using a lookup table. It's annoying.

I think the current design, while annoying, is cleaner. What does it mean if the agent's yaw is set to 45, for example? I don't consider this to be inconsistent with the POV images, since they are two very different representations of the world data. And it is entirely consistent with the DrawingDecorator co-ordinate system.
If you're using python, numpy apparently has methods for easily reordering the grids - @katja-hofmann can give you more information on this.


Update test coverage to codecov.io

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@d616896). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #35   +/-   ##
=======================================
  Coverage        ?   93.91%
=======================================
  Files           ?       17
  Lines           ?     1003
  Branches        ?      122
=======================================
  Hits            ?      942
  Misses          ?       41
  Partials        ?       20

Flag
Coverage Δ

unittests
93.91% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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


Should use declared package name

For projects that don't care about the Java bindings, it should be possible to get ScalaPB to use the declared package instead of generating a different one.

I am concerned about supporting two output modes (and duplicating the tests, and edge cases that this can create), and my preference here would be to stay close to the naming conventions made by the official Java protocol buffere generator.
The official Java protocol buffer generator does a similar thing: it wraps the classes generated from each proto file inside a public static class with a name that is derived from the proto file name. So although your messages are technically inside the declared Java package, their fully qualified class name contains the proto file name.
I am not completely sure why this is done this way in the Java generator, perhaps for being able to have few the same message names in two proto files and in the same package (which is not necessarily a good thing, but some projects are probably already be in this situation).
In ScalaPB, I wanted to avoid the outer class approach since it will force us to have one big Scala class for each protocol buffer. Breaking it to smaller files in sub-packages allows the namespace to look similar to Java, but also enjoy better support for incremental compilation in SBT.

It has more to do with how protoc behaves in general.
The protobuf syntax has package declaration that serves 2 purposes: namespace within .proto files and namespace for generated code.
They support overriding the package name for Java (through option java_package) because typical proto package names don't "look" like Java package names, as described here.
The outer class in Java is required because extensions generate simple values that can't live at top-level in Java.
Based on this, I would expect ScalaPB to behave similarly, which is to say that the package declaration within the proto files is respected (either through the package keyword or java_package option).
ScalaPB can still generate classes in their own file within that package (to get incremental compile goodness). Problems would only happen if someone has created a name collision in 2 separate .proto files that declare the same package AND that are compiled separately (because protoc would choke otherwise).
My situation is that I'd like to move from ScalaBuff to ScalaPB, but it requires that I import n new packages everywhere in my codebase (n being the number of .proto files I have). I could "trick" ScalaPB into generating the package I want, but I would need to merge files together and change their package declaration. I can see this being a much bigger problem for large projects and will definitely hurt ScalaPB's adoption.
One way to support this without breaking the whole ScalaPB world would be to declare an option for either scala_package or scala_package_per_file = true/false.

Oh - I didn't consider file-level custom options for this (I thought only setting this through compiler plugin parameters). In this case, overriding the default settings would require the user to add an import for a "scalapb.proto" and adding something that looks like this in all their protos:
option (scala_pb.scala_package_per_file) = false;

Is this something that will be acceptable for your use case? Then maybe the protoc plugin can have a setting to override the settings for projects who do not want to add the custom option to every file.

Yes, that's what I had in mind.
I think ScalaPB could expose several other options to control how it generates Scala case classes as well. So I'd be for using option for this. A top-level setting would be nice as well since you probably don't want to do this on a subset of your .proto files. Finally, I'd suggest scala_package option which more closely matches the java generator and makes more sense as a per-file setting.

Cool! I'll give this a try. Thanks for considering and implementing this!

You're welcome. This feature has been shipped in v0.4.2


empty ps -a -oppid,command results in crash

Hey there,
I noticed behaviour where if I have a tmux session with multiple windows and just zsh running (no programs) -- when switching windows repeatedly I'd receive errors from tmux that the script exited with code 1
it was difficult to replicate invoking the script directly
I added some logging and noticed these exceptions were getting fired
Command '['ps', '-a', '-oppid,command']' returned non-zero exit status 1.{'returncode': 1, 'cmd': ['ps', '-a', '-oppid,command'], 'output': b'   PPID COMMAND\n', 'stderr': None
After applying the following change everything seems OK :) -- but may want something cleaner?
diff --git a/scripts/rename_session_windows.py b/scripts/rename_session_windows.py
index 30789d5..77951e9 100755
--- a/scripts/rename_session_windows.py
+++ b/scripts/rename_session_windows.py
@@ -194,7 +194,10 @@ def rename_window(server: libtmux.Server, window_id: str, window_name: str, max_

 def get_panes_programs(session: libtmux.Session, options: Options):
     session_active_panes = get_session_active_panes(session)
-    running_programs = subprocess.check_output(['ps', '-a', '-oppid,command']).splitlines()[1:]
+    try:
+        running_programs = subprocess.check_output(['ps', '-a', '-oppid,command']).splitlines()[1:]
+    except subprocess.CalledProcessError:
+        running_programs = []

     return [Pane(p, get_current_program(running_programs, int(p['pane_pid']), options)) for p in session_active_panes]

and even minorer issue
run-shell ~/clone/path/tmux-window-name.tmux in README.md should be tmux_window_name.tmux

The solution is fine by me, can you open a PR?


How do I disable navbar back button from react-native-router-flux

I have a scene where in I have a back button. But I want it to be disabled when the Dialog is shown.
Can that be done?
I already have these:
      dismissOnTouchOutside={false}
      dismissOnHardwareBackPress={false}

@princenaman I think you need to study the react-native-router-flux API


Improve code coverage

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (e2c3a80) 82.27% compared to head (f3579bb) 98.66%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##             main       #8       +/-   ##
===========================================
+ Coverage   82.27%   98.66%   +16.38%
===========================================
  Files          11       11
  Lines          79       75        -4
===========================================
+ Hits           65       74        +9
+ Misses         14        1       -13

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


New Source For Paintings

Hey, I don't know where you get the sources for the classical art that comes default with the app, but the Van Gogh Museum in the Netherlands have recently digitized thousands of Van Gogh's art here, and I thought you might want to add them to your collection.
Cheers!

Thanks for letting us know. Muzei's Featured Art is sourced primarily from wikiarg.org


Trying to deploy postgres on k8s and expose it via istio

Is this the right place to submit this?

[X] This is not a security vulnerability or a crashing bug
[X] This is not a question about how to use Istio

Bug Description
Issue1:
Consider this postgres is in default namesapce
The below sample works good if i use 5432 tcp port through the call like gateway->virtualservice->service->po.
If i try to change the port from 5432 to 31405(or any TCP port) only at the gateway level and tcp match in virtual service level. kubernetes service and deployment level the port will be 5432 default.  it doesnt work.
apiVersion: apps/v1
kind: Deployment
metadata:
name: postgresql-deployment
namespace: default
spec:
selector:
matchLabels:
app: postgresql
template:
metadata:
labels:
app: postgresql
spec:
containers:
- image: postgres:12.3
name: postgresql
env:
- name: POSTGRES_PASSWORD
value: pgsql@123
ports:
- containerPort: 5432
# name: postgresql
protocol: TCP
name: tcp-p1

apiVersion: v1
kind: Service
metadata:
name: postgresql-service
namespace: default
spec:
ports:

name: tcp
port: 5432
protocol: TCP
targetPort: 5432
selector:
app: postgresql
type: ClusterIP

apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: pgsql-gateway
namespace: istio-system
spec:
selector:
istio: gateway
servers:

port:
number: 5432 # -> 31405
name: tcp-new
protocol: TCP
hosts:

"*"

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: pgsql-vs
namespace: default
spec:
hosts:

"dev-ubi-postgres-testing.example.in"
gateways:
istio-system/pgsql-gateway
tcp:
match:

port: 5432 # -> 31405
route:
destination:
host: postgresql-service
port:
number: 5432
subset: postgres

apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: pgsql-dr
namespace: default
spec:
host: postgresql-service
subsets:

labels:
app: postgresql
name: postgres

Issue2:
Conside second postgres is in postgres-tenant2
My aim is to deploy another postgres deployment and istio to expose outside like 31406 tcp gateway port and 3406 virtual service tcp match and kubernetes service and deployment level the port will be 5432.
any solution related to this.
Version
Client Version: v1.26.1
Kustomize Version: v4.5.7
Server Version: v1.23.17-eks-0a21954

istio version : 17.2

Additional Information
No response
Affected product area

[ ] Ambient
[ ] Docs
[ ] Installation
[X] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
[ ] Upgrade
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Control Plane Revisions

@howardjohn could you help me to clarify this.

@howardjohn can you look at it. i need to deploy two postgres service on the same cluster with istio and access it via single nlb loadbalancer.


modules: Updated WiSeConnect module

Updated WiSeConnect module for compatibility with newer Zephyr.
Signed-off-by: Jared Baumann<EMAIL_ADDRESS>

The following west manifest projects have been modified in this Pull Request:

Name
Old Revision
New Revision
Diff

wiseconnect
b5826aa21a3e087d7fbb5cad1e47ebb86f6409ee
17f1596d54ab16cb86225f11f1c6204f33ffcd05
N/A

Note: This message is automatically posted and updated by the Manifest GitHub Action.


tileSprite scaling the tiled image in Y axis

Version: 3.3.0
For some reason tileSprite will sometimes scale the background image in the Y direction.  This consistantly happens with some sprites and not others.
Here is the sprite sheet file:

The sprite sheet json is:
{
	"textures": [
		{
			"image": "Sprites.png",
			"format": "RGBA8888",
			"size": {
				"w": 1780,
				"h": 657
			},
			"scale": 1,
			"frames": [
				{
					"filename": "midground2",
					"frame": {
						"x": 1,
						"y": 1,
						"w": 1024,
						"h": 259
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 1024,
						"h": 259
					},
					"sourceSize": {
						"w": 1024,
						"h": 259
					}
				},
				{
					"filename": "bgPlanet1",
					"frame": {
						"x": 1027,
						"y": 1,
						"w": 752,
						"h": 415
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 752,
						"h": 415
					},
					"sourceSize": {
						"w": 752,
						"h": 415
					}
				},
				{
					"filename": "midground1",
					"frame": {
						"x": 1,
						"y": 262,
						"w": 1024,
						"h": 212
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 1024,
						"h": 212
					},
					"sourceSize": {
						"w": 1024,
						"h": 212
					}
				},
				{
					"filename": "bgPlanet3",
					"frame": {
						"x": 1027,
						"y": 418,
						"w": 237,
						"h": 238
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 237,
						"h": 238
					},
					"sourceSize": {
						"w": 237,
						"h": 238
					}
				},
				{
					"filename": "foreground",
					"frame": {
						"x": 1,
						"y": 476,
						"w": 1024,
						"h": 156
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 1024,
						"h": 156
					},
					"sourceSize": {
						"w": 1024,
						"h": 156
					}
				},
				{
					"filename": "planet1",
					"frame": {
						"x": 1266,
						"y": 418,
						"w": 154,
						"h": 117
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 154,
						"h": 117
					},
					"sourceSize": {
						"w": 154,
						"h": 117
					}
				},
				{
					"filename": "planet5",
					"frame": {
						"x": 1422,
						"y": 418,
						"w": 114,
						"h": 77
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 114,
						"h": 77
					},
					"sourceSize": {
						"w": 114,
						"h": 77
					}
				},
				{
					"filename": "planet3",
					"frame": {
						"x": 1538,
						"y": 418,
						"w": 112,
						"h": 114
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 112,
						"h": 114
					},
					"sourceSize": {
						"w": 112,
						"h": 114
					}
				},
				{
					"filename": "bgPlanet2",
					"frame": {
						"x": 1422,
						"y": 497,
						"w": 106,
						"h": 106
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 106,
						"h": 106
					},
					"sourceSize": {
						"w": 106,
						"h": 106
					}
				},
				{
					"filename": "saucer1",
					"frame": {
						"x": 1266,
						"y": 537,
						"w": 100,
						"h": 60
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 100,
						"h": 60
					},
					"sourceSize": {
						"w": 100,
						"h": 60
					}
				},
				{
					"filename": "saucer2",
					"frame": {
						"x": 1266,
						"y": 599,
						"w": 105,
						"h": 53
					},
					"rotated": false,
					"trimmed": true,
					"spriteSourceSize": {
						"x": 1,
						"y": 0,
						"w": 105,
						"h": 53
					},
					"sourceSize": {
						"w": 106,
						"h": 53
					}
				},
				{
					"filename": "planet2",
					"frame": {
						"x": 1652,
						"y": 418,
						"w": 78,
						"h": 91
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 78,
						"h": 91
					},
					"sourceSize": {
						"w": 78,
						"h": 91
					}
				},
				{
					"filename": "planet4",
					"frame": {
						"x": 1652,
						"y": 511,
						"w": 82,
						"h": 82
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 82,
						"h": 82
					},
					"sourceSize": {
						"w": 82,
						"h": 82
					}
				},
				{
					"filename": "saucer3",
					"frame": {
						"x": 1530,
						"y": 534,
						"w": 81,
						"h": 76
					},
					"rotated": false,
					"trimmed": true,
					"spriteSourceSize": {
						"x": 0,
						"y": 1,
						"w": 81,
						"h": 76
					},
					"sourceSize": {
						"w": 81,
						"h": 77
					}
				},
				{
					"filename": "ship",
					"frame": {
						"x": 1373,
						"y": 605,
						"w": 101,
						"h": 45
					},
					"rotated": false,
					"trimmed": false,
					"spriteSourceSize": {
						"x": 0,
						"y": 0,
						"w": 101,
						"h": 45
					},
					"sourceSize": {
						"w": 101,
						"h": 45
					}
				},
				{
					"filename": "saucer4",
					"frame": {
						"x": 1613,
						"y": 595,
						"w": 98,
						"h": 51
					},
					"rotated": false,
					"trimmed": true,
					"spriteSourceSize": {
						"x": 0,
						"y": 1,
						"w": 98,
						"h": 51
					},
					"sourceSize": {
						"w": 98,
						"h": 52
					}
				}
			]
		}
	],
	"meta": {
		"app": "https://www.codeandweb.com/texturepacker",
		"version": "3.0",
		"smartupdate": "$TexturePacker:SmartUpdate:941657f57b8cdfa4193612e148e4877c:7b4bff490df08a9b5c9f6d21aaedff88:3cdb13131f548fed5fbd9288201b06ea$"
	}
}

In the preload function I have:
    this.load.atlas('sprites', this.p('Sprites.png'), this.p('Sprites.json'));

In the create function I have:
    this.midground2 = this.add.tileSprite(this.gameWidth/2, this.gameHeight/2, 1024, 259, 'sprites', 'midground2').setDepth(10);
    this.midground1 = this.add.tileSprite(this.gameWidth/2, this.gameHeight - 105, 1024, 212, 'sprites', 'midground1').setDepth(20);

I get the following displayed:

You can see that the top image has been scaled in the Y direction.
I had this on another game I was working on a week or so back with a previous version of Phaser as well, although I don't remember which build it was.
Thanks!

Just a quick follow up to this.  This morning I opened the project again and the scaling is correct.  I didn't restart the computer or anything (it was on over night).  Nothing in the project has changed since last running it.  So this is clearly a bit more random than it seemed.  The times that I've had this issue it has been consistently the same sprites causing the issues (I've seen this issue on three separate occasions of the last couple of weeks).  So I am surprised that the background that was failing yesterday is now suddenly working.

Another follow up.  I also just opened a different game that was having the same issue and that too is now working perfectly.  I am wondering if it might be something to do with Angular 4 (which I am using).  I have sometimes seen it require a full recompile rather than a reload for newly updated assets to be properly included.  The only difference I can see this morning is that I recompiled the Angular app rather than just letting it live reload.


Fix container image promotion (hopefully)

This change modifies the way in which we promote container image tags.
Previously, the stackhpc-dev container repository was configured as a
remote, and the stackhpc repository synced with it, using include_tags
to limit to a specific tag.
Now, we use the "Add content" [1] API to add container tags from
stackhpc-dev to stackhpc. Currently we're still promoting a single tag
across all repositories, so a non-existent tag is not an error. This
will change in future.
[1] https://docs.pulpproject.org/pulp_container/restapi.html#tag/Repositories:-Container/operation/repositories_container_container_add

The uri tasks may need to be rewritten in python if we find this is too slow.

Now rewritten in Python. Seems to save about 30s for a single image promotion. Extrapolating to all images this could be significant.
https://github.com/stackhpc/stackhpc-release-train/actions/runs/4630657493/jobs/8192517775

Moving the role to the collection: https://github.com/stackhpc/ansible-collection-pulp/pull/59


Adding subworld(s)

adding this for myself
ill have to learn how to do this
marked as [nah] for now because we are not ready to do it

Added Layer1. More to come.


Uge/wip/upstream rebase

Updates to 0.6 but will require python3 to run. Tested for the kernels that are currently in tree for batch size of 256.

LGTM


Support for sws_scale

Hello there.

Using one of your examples as base, and the conversion function snippet by chmgr here https://github.com/asticode/go-astiav/issues/4#issuecomment-1103204084, I've succeeded in putting each frame in a image.Image.
I have multiple issues with this, the first being that the images seem to have the wrong color (like some green overlay), and the second being that there are a lot more pixel formats than YUV, so my code is essentially limited unless I'm willing to implement such a function for each format.
I've been looking at other examples of how to do this (searching google for anything libav-related seem to always yield ffmpeg or avconv command lines, sic), and finally found out this from the libav-user mailing list https://ffmpeg.org/pipermail/libav-user/2015-September/008473.html.
So, I'm thinking for a first implementation of using sws_scale to convert the frame into RGB and using the result to init an image.RGB, which would have the advantage of supporting all formats, albeit at a performance cost (not necessarily and issue at first).
Does this approach seems correct to you? If so, I didn't see sws functions in your repository, would you be open to a PR implementing the binding?

This approach seems pretty good to me if you're aware of the performance cost. An alternative would be to use this filter which can convert pixel format as well.
SWS are not in this repository for now indeed, and I'd be open for a PR. In your case you'd need to add

a SWSContext struct in a sws_context.go file
a NewSWSContext() *SWSContext function
a func (sc *SWSContext) Scale(...) function
tests in a sws_context_test.go file

Check out this context so that you can match variable naming, doc and comments.

What I was thinking was to convert to RGB at first, then implement more constructors for other pixel formats as needed and only use the conversion as a fallback for unsupported formats. That way, exotic formats are slower but I can implement them if needed.
I was also thinking, do you think a custom implementation of image.Image that map directly to the frame data could be pertinent? For the supported formats that would alleviate even more the performance penalty of reading from the frames.

What I was thinking was to convert to RGB at first, then implement more constructors for other pixel formats as needed and only use the conversion as a fallback for unsupported formats. That way, exotic formats are slower but I can implement them if needed.

That makes total sense 👍

I was also thinking, do you think a custom implementation of image.Image that map directly to the frame data could be pertinent? For the supported formats that would alleviate even more the performance penalty of reading from the frames.

I think that could be quite difficult to do so, and quite tedious since you would need to create a custom implementation for all custom pixel format if I understand correctly. I don't know how much performance is important in your project, but from a maintainability standpoint, I'd convert all input images to the same pixel format (RGBA would be my choice with Golang) and then have the same treatment for all images.

Performance is important but the whole node is dedicated to it, so I can parallelize like a dummy at first, and optimize after to have a bigger throughput.
I'll try for an implementation today, maybe tomorrow.

I've started looking at it, and I'm starting to see issues everywhere :D .
The examples I've found use sws_getContext to initialize the SWSContext, but the documentation of sws_getContext says it's deprecated. I've found sws_alloc_context which seems to be more in line with what I've seen in the other parts of the API, but I'm not sure how to have the same result with it. I think that sws_setColorspaceDetails is supposed to be what I want, but I'm lost in the options (I've not yet searched for examples using it tho).
I'll try to finish the binding for the deprecated function and see from there if there is a "saner alternative" as the doc suggest, unless you think it's better the other way around.

Check out the implementation of sws_getContext here and sws_alloc_set_opts here.
I'd rather you implement :

sws_alloc_context
sws_init_context
sws_freeContext
and all context setters + getters as listed in sws_alloc_set_opts

OK, will do. For the Scale function itself, most of it's parameters are Frame attributes (either the source or the destination one.) Do you prefer to take the parameters as in the original function or should I just pass two frames?

So. I've had a few hours at this, and came up with this commit mainly to get to grips with CGo itself, which I've never used before.
I've stumbled on a few issues that I don't know what to do about, the main being that CGo doesn't seem to find the SwsContext fields. With the commit linked above, and the following snippet:
  package main

  import "github.com/asticode/go-astiav"

  func main() {
    var swsContext = astiav.AllocSWSContext()
    swsContext.SetSrcFormat(f.PixelFormat())
    swsContext.SetSrcH(f.Height())
    swsContext.SetSrcW(f.Width())
    swsContext.SetDstFormat(dst.PixelFormat())
    swsContext.SetDstH(dst.Height())
    swsContext.SetDstW(dst.Width())
    swsContext.Free()
  }

I'm getting some weird error:
~/d/v/ff $ make bin/thumber
go build -o bin/thumber ./thumber
# github.com/asticode/go-astiav
astiav/sws_context.go:27:18: sc.c.srcW undefined (type *_Ctype_struct_SwsContext has no field or method srcW)
astiav/sws_context.go:31:7: sc.c.srcW undefined (type *_Ctype_struct_SwsContext has no field or method srcW)
astiav/sws_context.go:35:18: sc.c.srcH undefined (type *_Ctype_struct_SwsContext has no field or method srcH)
astiav/sws_context.go:39:7: sc.c.srcH undefined (type *_Ctype_struct_SwsContext has no field or method srcH)
astiav/sws_context.go:43:26: sc.c.srcFormat undefined (type *_Ctype_struct_SwsContext has no field or method srcFormat)
astiav/sws_context.go:47:7: sc.c.srcFormat undefined (type *_Ctype_struct_SwsContext has no field or method srcFormat)
astiav/sws_context.go:51:18: sc.c.dstW undefined (type *_Ctype_struct_SwsContext has no field or method dstW)
astiav/sws_context.go:55:7: sc.c.dstW undefined (type *_Ctype_struct_SwsContext has no field or method dstW)
astiav/sws_context.go:59:18: sc.c.dstH undefined (type *_Ctype_struct_SwsContext has no field or method dstH)
astiav/sws_context.go:63:7: sc.c.dstH undefined (type *_Ctype_struct_SwsContext has no field or method dstH)
astiav/sws_context.go:63:7: too many errors
make: *** [Makefile:3: bin/thumber] Error 2

The only reason I've found out for this is that the struct declared here is somehow misaligned. I don't see pragma packed anywhere near the said struct and I don't think you can misalign a struct without this or compiler parameters.
Do you have any idea about this?

Here's what I think : what you've linked is an internal struct that shouldn't be handled. I'd say the "exported" struct is here and has no fields. I think the purpose of this is to avoid developers updating manually options (like we want to do).
Therefore I think there are 2 options :

use sws_getContext to set options directly, but I don't really like that since it's marked as deprecated
use av_opt_set_dict to set options on the SwsContext. The Dictionary GO struct already exists therefore what you'd need to do is :

add a class.go file with

type Class struct {
  c *C.struct_AVClass
}

func (c Class) Name() string {
  return C.GoString(c.class_name)
}

type Classer interface {
    Class() Class
}

implement the Classer interface on SwsContext
add an options.go file with

func SetOptionsFromDictionary(o Classer, d *Dictionary) error {
  // TODO Call av_opt_set_dict
}

That way you could create a dictionary with "srcW=1280:srcH=720" for instance, and update SwsContext options with SetOptionsFromDictionary.

I think adding a func(c *SwsContext) SetOptionsFromString(s string) error would be nice too. It would create the dictionary and then call SetOptionsFromDictionary

Hey. I'm sorry I haven't kept you updated, I've been a bit busy lately.
Short version is: I haven't had the time to work on this this past month due to personal matters (mainly moving to my new house, work ramping up, etc), so this got left out. I'll pick it up as soon as I'm able tho, I did not forget.


Fix dotted lines not appearing in flowcharts when HTML labels disabled

For some reason, edgeData.style was being overwritten when it
was already set earlier in the method.

Pull Request Test Coverage Report for Build 750

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.008%) to 54.247%

Totals

Change from base Build 716:
-0.008%

Covered Lines:
2050

Relevant Lines:
3754

💛  - Coveralls

Ping!

Thanks! Merging!


fioctl: 0.27 -> 0.28

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/foundriesio/fioctl/releases.
meta.description for fioctl is: "A simple CLI to manage your Foundries Factory"
meta.homepage for fioctl is: "https://github.com/foundriesio/fioctl"
meta.changelog for fioctl is: ""
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.28 with grep in /nix/store/lry7dbd400wb3q5g1krca5y4js1qkrh0-fioctl-0.28
found 0.28 in filename of file in /nix/store/lry7dbd400wb3q5g1krca5y4js1qkrh0-fioctl-0.28

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
fioctl

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/lry7dbd400wb3q5g1krca5y4js1qkrh0-fioctl-0.28 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A fioctl https://github.com/r-ryantm/nixpkgs/archive/7eae589178859e7d2fb0e4a79152a9a0954d9223.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/lry7dbd400wb3q5g1krca5y4js1qkrh0-fioctl-0.28
ls -la /nix/store/lry7dbd400wb3q5g1krca5y4js1qkrh0-fioctl-0.28/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

fioctl

Maintainer pings
cc @nixinator @MatthewCroughan for testing.

Result of nixpkgs-review pr 190534 run on x86_64-linux 1

1 package built:

fioctl


feat: retrieve mac addresses

Provide support on retrieving MAC Addresses as suggested on #7.

Closing this given that the approach is not actually right


httpd: Added server and client addresses to request structure

There is a need to know where an HTTP request originated from and what local address it arrived on.  This PR addresses this by adding client_address and server_address fields to the http::request structure.  This also adds in the infrastructure necessary to get the client address from the underlying connection.

LGTM awesome, can you paste the link of the remote PR to seastar here?

will do once it's created (latest by tomorrow morning)

https://github.com/scylladb/seastar/pull/1851


Comments on paper

Why is the axis arbitrary in fig. 4 of the paper?

It's not clear what you mean by a "fully integrated workflow".

Why is the axis arbitrary in fig. 4 of the paper?

It's because the field solver works over arbitrary axes. It's effectively just a Poisson solve in the spectral domain, so the physical dimension does not matter. This was also raised by @TomGoffrey , so I'm happy to change the label to be more specific to this application if that's better. I've just left it this way because it is still technically correct.

OK thanks. (Added another comment in the list)

It's not clear what you mean by a "fully integrated workflow".

I meant
the fully integrated workflow of running a simulation on a local machine and sending the results to the MLFlow-driven logging mechanism.
Does that make sense? I've added that line to the paper as well.

Thanks, that makes more sense.


Add handle developerayo

@developerayo

DevRelChat (podcast)
unStack Africa (community)
Lazy Loading images progressively and bundle analyzing in Webpack (video)

@Developerayo do you have blog posts that share your experience as a developer?

nvm, your video is great. I also edited the issue a bit to work with the GitHub Action. It didn't need the link or the @


cert-manager has deprecated v1alpha3 API in v1.4+, disabled it in v1.6+ and removed it in v1.7+

As per https://cert-manager.io/docs/installation/upgrading/remove-deprecated-apis/
the v1alpha3 api is deprecated in 1.4, disabled in 1.6 and removed in 1.7 of cert-manager.
In addition it looks like there migh be a number of updates that could be merged-in. Is this being actively maintained? Happy to help out (although my GO clue is low).
e.g. I could submit a PR for the api change :
sed -i 's/v1alpha3/v1/g' examples/deploy/desec-webhook.yaml
looks like it would cover the change.

Hi waxling, sorry for the late reply.  As far as actively maintained goes, I originally put this together to solve a task at hand and have basically left it alone since.   I had intended to look at this again as time allowed, but it was probably going to take something breaking in my particular use case for me to revisit this.  I haven't updated cert-manager in my cluster since I did this so I'm still sitting at v1.1.0.  So yes, I'm overdue on this.
With that said, I certainly won't turn down any help offered and it would be much appreciated.   To be honest, I haven't done any real collaborative development on github before.   If you'd like to submit the PR for this issue, that would be great as I'd like to go through the process.

I've updated the APIs in the example desec-webhook.yaml and have tested it with cert-manager 1.9.1.


Server won't start (process is stuck)

I compiled & ran the mod on a backup of my 1.17 server, and while it does seem to upgrade some chunks, eventually the process just gets stuck.

The logs don't really say anything useful, is there some other info that might shine some light on this?

I added some extra logs, but I also figured the server thread error is probably causing the hang:
[16:36:12] [Server thread/INFO]: [STDOUT]: Chunk BeforeUpdate...
[16:36:12] [Server thread/INFO]: [STDOUT]:  » Chunk version: 2730
[16:36:12] [Server thread/INFO]: [STDOUT]:  » Upgraded to 2841
[16:36:12] [Server thread/INFO]: [STDOUT]:  » BeforeUpdate is done
[16:36:12] [Server thread/INFO]: [STDOUT]:    »» Doing afterUpdate
[16:36:12] [Server thread/INFO]: [STDOUT]:    »» Found 1 BlockEntities...
[16:36:12] [Server thread/INFO]: Updating 1 block entities
[16:36:12] [Server thread/INFO]: [STDOUT]:     »»» Updating BlockEntity 0
[16:36:12] [Server thread/ERROR]: Input does not contain a key [id]: MapLike[{CarvingMasks:{},DataVersion:2860,Heightmaps:{MOTION_BLOCKING:
<SNIP>
,xPos:-121,zPos:128}]
[16:36:12] [Server thread/INFO]: [STDOUT]:     »»» Done Updating BlockEntity 0
[16:36:12] [Server thread/INFO]: [STDOUT]:    »» Updated all BlockEntitiesin this chunk!
[16:36:12] [Server thread/INFO]: [STDOUT]:  » AfterUpdate is done!
[16:36:12] [Server thread/INFO]: [STDOUT]: