Thoughts on UIProcedure

I've been looking to migrate some of UI code from Operative to ProcedureKit which has been used across my app in all other parts except UI so far.
One of the most common operations we have is controller presentation which ensures that there are no simultaneous modal presentations including UIAlertControllers which IIRC are exceptional because you can't show anything on top of them.
So here are my thoughts on existing implementation of ProcedureKitMobile:

UIProcedures with modal presentation should be mutually exclusive between each other and should wait until presentation animation completed.
Missing dismissal procedure which needs mutual exclusivity too.
Mutually exclusive with UIAlertControllers. Better wait until they are gone.
Given all of above it's not always possible to pin the presenting view controller if they pile up from different sources. Dynamically detecting top modal controller within operation is safer in my opinion than explicitly providing one and that totally breaks DismissingViewController. You say it's a mess, but we had certain auxiliary controllers modally displayed within current context to request user action. Not very clean but sometimes there is not much choice.

Hi @pronebird - really appreciate your thoughts on this. We're always looking for improvements so, suggestions and contributions are more than welcome.
Not really sure what you're advocating for here - a change in how presentation is performed?

@danthorpe yeah I am advocating for a change where we have more explicit dependencies between UI operations to make sure that UIKit does not throw errors or break when modifying view hierarchy simultaneously using more than one UIProcedure.

And at the moment, AlertProcedure is mutually exclusive with all over AlertProcedure instances, which is restrictive?

Well AlertProcedure is good, it has mutual exclusivity set. However I think if you run AlertOperation and UIProcedure at the same time then things will break.

I see what you're saying, because UIProcedure is un-restricted, then out-of-the-box mixing them together could be un-predicatable.
In general, I'm not really in favour of adding too much mutual exclusivity by default, as I think it can be very easy to introduce dead-locks. Whereas, it is relatively trivial for framework consumers to add their own exclusivity conditions.
Having said that, I can appreciate that typically, your UI code should not have a complete view of all that is going on - so, adding the appropriate conditions is at best - tricky.
hmm.

 However if most of UI operations only restrict presentation for short time such as present/dismiss animations which are in general short then it should be mostly safe to use without deadlocks. I am trying to avoid repetition, I am fine with throwing couple of custom classes to achieve the same, but then I would never use UIProcedure since it wouldn't satisfy my basic needs. :-) Adding conditions manually for frequent ops like this is too much boilerplate..

Hmm, so are you proposing just adding:
add(condition: MutualExclusivity<UIProcedure>())

into the initialiser?

Technically, but we should be careful. It's important that operation is exclusive during animation (i.e present() has completion handler). There is also an issue with "show" operation which for some reason does not have completion handler. I worked around that withCATransaction in my case.
Roughy, I see UIProcedure to be split into smaller operations to modify view hierarchy. UIProcedure in its current state supports a lot of cool stuff, like waiting until dismissed and such.
I really need to play around with that to gather more feedback.

Closing this since UIProcedure is now deprecated.


feat(about): Provide build info

VSCode implementation of https://github.com/KaotoIO/kaoto-ui/pull/2228
Before

After

HI @lordrip , may I ask how I can test locally? because I was trying to build your branch with stable and also main branch of kaoto-ui and I can't still see more build info inside About dialog

ok, I see the PR-2228 is not merged yet.. sorry I missed that

+1 when kaoto-ui will be ready, I like this kind of more information inside About page 🙂

I'm closing this pull request until we figure it out on the kaoto side :)


Tile source changes

Add an osmLayer source method.
This lets multiple tile sources be defined with a set of properties to make it easier to specify or switch between such sources.  For instance, to use Stamen toner-lite, osmLayer.source('stamen-toner-lite') will appropriately set url, subdomains, attribution, minLevel, and maxLevel.  This resolves #60.
This switches the default tile server to stamen-toner-lite.  This resolves #1017.

@manthey not sure where there is a conflict on CHANGELOG but the changes elsewhere looks good.


Can we have multiple statestores for Actors?

Can we have multiple statestores for Actors?
In the Documentation, it is mentioned "Only a single state store component can be used as the statestore for all actors."
Does it mean that there should be only one Database (if I take postgresql as example) in only one region?

@harshithgandham
You can have many state stores deployed via dapr into a single k8s cluster, however only one state store can be enabled to be used as a state store for actors within that cluster.

To specify which state store to use for actors, specify value of property actorStateStore as true in the state store component’s metadata section.

https://docs.dapr.io/developing-applications/building-blocks/state-management/state-management-overview/#actor-state

@olitomlinson Can actors share different state stores?
If an actor(with Remindable) is stopped in a specific region, can it be restarted(with same state) from different region?

@harshithgandham It sounds like you are describing an App failover scenario?
So you have two clusters, and your Actor App is active in one of those clusters, and you want to failover the Actor App to be active in the other cluster (and no longer active in the previous cluster) ?

yes..   Is it possible. The clusters are in different regions.

Sorry @harshithgandham I'm trying to understand your scenario but I can't quite get it.
An Actor Instance can only persist its state in one state store as part of its normal operation.
However you have some kind of database-level redundancy configured where the actor state is copied to a different database, maybe in a different Region, but this Actor App in a different Region would have to offline/passive and not active.


Allow sharing of die-roll presets

To help players cover for other players, expand the currently supported feature to manage server-side die-roll presets to allow users to share them with each other.
With the approval of both players, one player's die-roll presets (or a selected subset) can be pulled over to the other player or pushed to the other player.
Or, an identified shared set of presets can be kept in sync between them.

One proposal:
In the server's password file, add a notation for attributes for named users where a list of die-roll delagates can be named.
Any of those delegates can pop up a "(name)'s Die Roller" window which is the same as the base die roller window, but without the panel where results are reported.
Chat messages and die rolls made in this window will have some notation like "on behalf of" to indicate that the delegate is rolling for the other user.
Buttons will be on that window for the functions to retrieve the other user's stored presets and to push a new set of presets to the other user.

To future-proof the extension, rather than adding a new field to the file for each feature in the future, let's just add a generic third field which is a JSON-marshalled string with the applicable parameters for that user. For example, name:password:{"Delegates":["name1","name2"]}

This is in beta on the develop branch. Implemented a server protocol operation which allows users to designate each others as delegates rather than changing the password file or requiring admins to do anything.

Fixed in 4.22


"Fix PCCI"

This change allows pcci to test on centos. Neither trusty nor centos pcci tests pass, but this is better than it was.
The rspec failures seem really strange... @bmjen can you look at them?

Same as #280's rebase


Add hugo.feedback() to items example code

I had a bit of trouble, getting Hugo to work, until I discovered this method in the alfred-atom package. Unless I am using this the wrong way, I would recommend adding this to the documentation.

Sry, I accidentally polluted the history of my fork with another pull request. I will close this one and make a new one!


feature: IS31FL3733 LED matrix driver

Add support for the ISSI IS31FL3733 matrix LED driver. This LED driver is capable of driving a matrix of up to 12x16 (192) LEDs. The following features of the LED driver IC are enabled:

auto breathe mode: via led_blink API
PWM control: via led_set_brightness and led_write_channels APIs
current limit setting and LED blanking: both supported via custom APIs

The LED open detect and short detect features of this controller are not currently implemented.
This sample was tested on a custom board based on a Kinetis K22, but I have provided an overlay for the FRDM-K22F to demonstrate usage. This sample has not been verified with that board though, as I have no way to connect the controller.
Note- this PR is a contribution as part of a personal project, so I apologize if I'm slow to respond to comments

I'm interested in this driver. I've used the HT1632C/D but it's hard to source so this may be a suitable alternative.
Honest question: would this fit better as a display driver rather than LED? Or maybe character framebuffer (CFB)? Specially knowing that you can cascade up to 8 of them.
Thanks!

Honest question: would this fit better as a display driver rather than LED? Or maybe character framebuffer (CFB)? Especially knowing that you can cascade up to 8 of them.

I did consider the merits of exposing this as a display device versus LED driver. I primarily went with the LED API over the display one because it reduces the number of custom APIs needed.
I wanted to be sure that the auto breathe mode of the driver was available, which fits well in the led_blink API, but would need a custom API if this was a display device. Additionally, as far as I know the MONO display format in Zephyr treats each pixel as a bit, and doesn't account for brightness control of individual pixels. This means another API would be needed for setting LED brightness.
I have not looked at the CFB framework as much, but wouldn't that be more useful for devices that store characters internally? A CFB driver for this device would need to store a font in the driver itself

Hi @danieldegrasse,
Thanks for this driver. It is looking great. Unfortunately I'll be in vacations for the next two weeks. So I am not sure I'll be able to review it sooner.


Java modules no longer import the entire JDK

This makes the Intellij plugin fail to compile because we try to look up ObjectArray and it does not import java.base in the overrides.xml it uses. Pretty sure this used to work before.

I can't really test this anymore since it now compiles without the override. Closing.


Rainwater trapping problem

Before jumping into Pr first comment for assign.
Problem statement :Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining.
Probelm Link : https://practice.geeksforgeeks.org/problems/trapping-rain-water/0
Choose one Cateorgy - Very Easy, Easy, Medium, Hard, Very Hard, Expert
question category :  Medium

Before submitting a PR please Check some details.

[ ] fileName formet should be in camelcase
example- returnTheNextNumber.py
[ ]  Choose label for Problem , example- "good first issue", "easy"
[ ]  In file there should be problem statement and link to problem

/* Problem-Task : This program will add two numbers
 * Problem Link : https://edabit.com/challenge/SFzHtm63XT6EYNHWY
*/
int main() {
    int bla;
    return 0;
}

This repository is vaild for HacktoberFest2020
Read before making PR - How to contribute on Github
Good Luck,

I can solve this problem

Could you please assign me for this task ?


Network operator initial commits

Adding initial files to support for testing the Nvidia Network Operator.
Added new vendor packages:

vendor/github.com/Mellanox/network-operator/LICENSE
vendor/github.com/Mellanox/network-operator/api/v1alpha1/groupversion_info.go
vendor/github.com/Mellanox/network-operator/api/v1alpha1/hostdevicenetwork_types.go
vendor/github.com/Mellanox/network-operator/api/v1alpha1/ipoibnetwork_types.go
vendor/github.com/Mellanox/network-operator/api/v1alpha1/macvlannetwork_types.go
vendor/github.com/Mellanox/network-operator/api/v1alpha1/nicclusterpolicy_types.go
vendor/github.com/Mellanox/network-operator/api/v1alpha1/zz_generated.deepcopy.go

Modified:

go.mod
go.sum
vendor/modules.txt

Added following files:

internal/networkparams/const.go
internal/networkparams/networkvars.go
internal/nvidianetworkconfig/config.go
tests/nvidianetwork/deploy-nno-test.go
tests/nvidianetwork/nno_suite_test.go

Updated the following files:

README.md
internal/wait/wait.go
pkg/clients/clients.go
pkg/nvidianetwork/nicclusterpolicy.go
tests/nvidiagpu/deploy-gpu-test.go

/cc @empovit @ggordaniRed @TomerNewman

/approve
Looks got to me, though lets wait also for Vitaliy or Yoni for review


Perfview command trigger being executed incorrectly on threshold

Is there a way to get correct CPU on multi core?
https://stackoverflow.com/questions/69455605/perfview-command-trigger-being-executed-incorrectly-on-threshold?noredirect=1#comment122985250_69455605

Bulk closing old issues.  Please re-open if needed.


kubelet: set node-status-update-frequency=150s

The kubelet node-status-update-frequency is described by the
kubernetes docs as:
Specifies how often kubelet posts node status to master. Note: be
cautious when changing the constant, it must work with
nodeMonitorGracePeriod in nodecontroller. (default 10s)

The reason for the increase is customer demand to reduce kubernetes
related network traffic. A corresponding change will be made to the
kube-controller-manager service in the cloud to reduce its
node-monitor-grace-period.  The value of 150s was chosen because
it is the same ratio (1/4) of the value of the cloud's
node-monitor-grace-period which is being set to 600s because it is
the same value the customer chose for mbed-client lifetime.

Changed to ready because cloud-side PR is live in prod-us.


Added code syntax highlighting to Readme

Completely useless PR, I have the feeling here you're just adding 9 characters to be listed as a contributor to the project.
Try again when you'll have some meaningful things to contribute!

Thanks for the suggestion. I don't want to get listed as contributor. You can add the code syntax highlighting yourself :)


Async tests fix for tests/integration_tests directory

Async tests fix for tests/integration_tests directory

None of these coroutine tests appear to actually run. You can test it by adding self.assertEqual(1, 2) into any of them, and running the suite, and they will still pass.

You defenately right! We have to use unittest.IsolatedAsyncioTestCase instead of unittest.TestCase for making correct async tests based on unittest lib.

Additional context:

real fix tests/integration_tests/test_subtensor_integration.py with async unittest.
commented blocking test in tests/integration_tests/test_cli.py because those tests based on sync cli.py module. Will be fixed later.
test_cli.py and e2e tests marked commented until commands and cli migrated.
TODO: fix after commands and cli are async migrated


Move lint-staged config to .lintstagedrc.json

For consistency with mocha and prettier, and to keep package.json free of clutter, the lint-staged configuration should be defined in .lintstagedrc.json.

Example here: https://github.com/paulrberg/solidity-template/


Fix: Minor fixes on Table, StatusBadge, TextContainer

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Proposal: updated onboarding screens

The new design of the unlock screen feels great!

Avoid adding extra colors to the tailwind setup when unnecessary. Tailwind already has lot's or color classes integrated. So for a gray bg color, we can use bg-gray-50 or for e.g. bg-gray-100. For text gray colors aswel.

@umarrg we should try to split each screen or change into a small PR. that makes it easier to review and then faster to merge and iterate on it.

Ok


New way to deploy showcase application

Motivation
Allow to dynamically load config from assets for client side application.
Remove deprecated SDK's
Move AuthSDK to keycloak
Verification
Each service should be verified separately. I have pinged individual owners to check them

We will need to release and test push end to end to merge that.
Myself and Dara tested datasync and dockit works as expected.
I have tested

Also if we merge we going to invalidate walkthrough and docs.
Holding off until all will me migrated.

I can help to test e2e push notifications on Android, but I don't have an apple user to do the same for iOS

Push notifications verified and working on Android :+1:

SSO and Data-sync verfied on Android :+1:


Version 3.0.0 release

Refer to the readme for breaking changes.
Once again, almost the entirety of this version was done by @Crazy-Duck

@RJacksonm1 when this is merged (maybe an hour from now), please release on NPM.

Oops, forgot to check back after it got tested.

Update docs :+1:

Docs should be up to date.

"reactions", kek

:-1:


Language support to 'Select Language' spinner

#83
The list shows the language name in the respective language.

Told ya the spinner will be removed, therefore closing this pr. Thanks!


Add types

(Documentation taken from the README, except where source code disagrees or adds data.)
These are the types I'm using for a separate project using TypeScript. They're proven to work in dev and prod using a webpack setup.
Thanks for the great library!

Updated for v3.0.0. All changes taken from the README.

Cool - thanks. Is there a way of testing this config so that it doesn't go out of date?

I could add a TS file to cover compiler and runtime checks. Fairly barebones stuff, the worst of which would be testing methods. On the flipside you'd have to add typescript as a devDep, which adds ~25mb of weight to your node_modules.


feat: add headers when loading URLs, closes #816

What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Docs
[ ] New Binding issue #___
[ ] Code style update
[ ] Refactor
[ ] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change?

[ ] Yes, and the changes were approved in issue #___
[x] No

Checklist

[x] When resolving issues, they are referenced in the PR's title (e.g fix: remove a typo, closes #___, #___)
[x] A change file is added if any packages will require a version bump due to this PR per the instructions in the readme.
[ ] I have added a convincing reason for adding this feature, if necessary

Other information

Initially I thought with_headers would apply to all URLs which is not the case, so maybe we chould change the signature to with_url_and_headers.

I've changed the signatures to use the existing methods instead of adding new ones. So now with_url, with_html and load_url takes an Option<http::HeaderMap>. Let me know what you think @amrbashir I think this is less confusing to users.

There is no point in using headers with with_html since it loads local content.
Also, most users won't use headers, so I think it should be a separate function. I like the idea of with_url_and_headers instead.

Cool @amrbashir


Try to reduce ItemTree size further

This was mostly a failed experiment, but still seems like the right thing to do. Memory reduction is mostly negligible.
bors r+

changelog internal


Platform specific Readme

This PR adds a small script to parse the parameters.json file and generate a README.md with some basic information for each platform.
For instance, for qw5q_platinum:
qw5q_platinum
Native Gates
Single Qubit: RX, RX12, MZ
Two Qubit: CZ
Topology
Number of qubits: 5
Qubits: [0, 1, 2, 3, 4]
graph TD;
    0 <--> 2;
    1 <--> 2;
    2 <--> 3;
    2 <--> 4;

I like the simplicity of using Mermaid, and letting it do whatever prefers.
However, I checked the Mermaid docs, and they do not have any actual graph drawing class, so for large chips it may be doing a terrible job... (which is not a big deal right now)
For this PR, just using Mermaid is more than fine.
However, we may consider leaving an issue open to explore alternatives like Graphviz
https://www.graphviz.org/gallery/
which could also be simply integrated passing through Networkx (e.g. just loading the pairs into a networkx class, and asking it to dump the Dot file).
Other solutions are listed here https://networkx.org/documentation/stable/reference/drawing.html
But, as I said, these are ideas for later on. Right now is fine as it is, and incredibly nice in it's minimal implementation. Thanks :)

Yeah indeed for the 11q is not working great:
graph TD;
    A1 <--> A2;
    A1 <--> A3;
    A1 <--> D5;
    A2 <--> A4;
    A2 <--> A6;
    A3 <--> A4;
    A3 <--> D4;
    A4 <--> A5;
    A4 <--> B3;
    A5 <--> B1;
    A6 <--> B3;
    A6 <--> D3;
    B1 <--> B2;
    B1 <--> B3;
    B2 <--> B4;
    B3 <--> B4;
    B4 <--> B5;
    D1 <--> D2;
    D1 <--> D3;
    D2 <--> D4;
    D3 <--> D4;
    D4 <--> D5;

I tried to look for alternative layout algorithm but I couldn't find much information...

Yeah indeed for the 11q is not working great:

Well, it's not ideal, but not even that bad.
It's a bit entangled, but you get all the information you need.
Maybe we can tweak it a bit, e.g. using smaller boxes around names - and in any case you can zoom and pan, which is convenient - but for even larger circuits it may be suboptimal.
In any case, this diagram could even be the default, and even replaced with a manually tuned one, which may better represent the chip features (e.g. putting them on a specific grid, and then drawing some connections - which is most likely what happens even physically on the chip, to some extent...).

@BrunoLiegiBastonLiegi I'd discourage you to go through the workflows' README generation, for two main reasons:

the generated README may be manually edited, and you don't want to overwrite those (nor attempting generating a diff to apply, which is definitely too complex...)
in order to make it work, the workflows should commit to the repo, which is not that great...

Instead, what you could do is to check in the workflow if any platform is lacking a README, and then publish a message on the PR suggesting providing such a README, and a good starting point may be achieved by running the script for that platform.

Ok this should be more or less ready, the only thing I am not completely sure about concerns the native gates.
First of all, what gate is the so called RX12 that you find in the parameters.json is it the GPI2? Secondly, the RZ gate is never explicitely reported in the configuration, but I believe we always have since it's just a virtual phase, should I always add it automatically (the same applies to the Z maybe)?

Could we use this PR to add the installation requirements in the READMEs https://github.com/qiboteam/qibocal/issues/988#issuecomment-2380572810 ?

Could we use this PR to add the installation requirements in the READMEs qiboteam/qibocal#988 (comment) ?

Manually yes (with the script is overly complicated, for little to no advantage...).
Or even a PR on top of this one is also fine.

@BrunoLiegiBastonLiegi could you please fix the test issue?

Not sure the error is related to this PR specifically. Even #180 was failing for the same reason.
By the way, @stavros11 @alecandido, is this not supposed to work with 0.2 due to the parameters.json being changed significantly? If that's the case, should I create the analogous script for 0.2?

No, you're not supposed to fix that error. But the problem is not 0.2, but rather the OPX1000. The stable workflow is testing with the latest release, and the 0.1 driver for the OPX1000 is yet unreleased (in 0.1, while it has been just released for 0.2). Instead, the driver is merged in the 0.1 branch of Qibolab (the main equivalent for the 0.1 series), and that's what the dev workflow is pulling.
So, the workflows should be fine as they are.

By the way, @stavros11 @alecandido, is this not supposed to work with 0.2 due to the parameters.json being changed significantly? If that's the case, should I create the analogous script for 0.2?

You depend very mildly on the format of parameter.json, but still enough to break, I'm sorry...
https://github.com/qiboteam/qibolab_platforms_qrc/blob/be32893a50f6d7e4d778cfcc84e4238cd13cca0d/generate_readme.py#L21
none of these keys is any longer present.
Now, you should extract the qubits as the keys of the native_gates.single_qubit dictionary
https://github.com/qiboteam/qibolab_platforms_qrc/blob/b2f6b356dccc924bea4a841f954afe644f55b378/qw11q/parameters.json#L183-L185
while the nqubits will be just len(qubits). And analogously with the topology, that is derived from the available two-qubit gates
https://github.com/qiboteam/qibolab_platforms_qrc/blob/b2f6b356dccc924bea4a841f954afe644f55b378/qw11q/parameters.json#L387-L388

This is ready, but it's not going to be merged in main, rather in 0.1.
I will create another PR to implement this for the current main.


Do not scan columns which are not in model features

Closing this since we have included it in #1064


plugins: add willitconnect

Convenience plugin to provide access to https://github.com/krujos/willitconnect
Current version supports using proxies as well as setting a non-default route for the willitconnect application

CLA received @dkoper

@gambtho It looks like for some reason the link for the windows release is broken, looks like some kind of github/s3 issue?
If you also go to your github release and click on the windows upload, it shows the same issue.
How would you like the proceed? Everything else checked out fine, and besides this issue your plugin is ready to be added.

Sorry about that, re-uploaded the windows binary with a shorter name, seems to be all good now.


Test comments

Comments for the first blog post

First comment

Second comment

That's funny

I like how it works

HEADER GOES HERE


v-bind with data attribute

<button :data-title="componentTitle"></button>

Not working now, is it bug?

 Thank for the amazing library!


Add Java get started guide

Signed-off-by: Usha Mandya<EMAIL_ADDRESS>Adding language-specific guide for Java

@glours @StefanScherer Could you PTAL?

Oh it looks like we maybe have a general problem with comments in Dockerfiles.
I tried to repro all steps and copy paste all code snippets, but I cannot select the comment in the Dockerfile. That seems to be a CSS problem maybe making it non-selectable:

@StefanScherer There was an update to the css that was merged after this PR was created. This should work when the updates are live. We can test this on the staging site when we merge the PR to master.


fix : code editor's text size should change at least one each time when you try to change it using shortcuts

Fix:code editor text size should change at least one each time, don't… mind how you setting your display scale
Bugsquad edit: Closes #18575

Sorry to bother again but could you squash the two commit together ?
See the PR workflow. :)

sorry about that, first time to do this

sorry about that, first time to do this

No problem, everybody goes through those first steps ^^

Cherry picked into 3.0.3


Feature: developing a context handler

Due to the way readchar currently handles terminal setup, we cannot control terminal behaviour outside of the two readchar  functions. This leads to issues #62 and #73
We could solve this by externalising terminal setup and teardown and have it run at the beginning and end, ensuring consistent behaviour in between. Under python this calls for a Context Manager
Requirements would be:

[ ] setting up the terminal for readchars needs, this means:

no echoing or other handeling of typed keys. They need to be waiting untill readchar calls read the next time
no interruptions, readchar will read  CTRL+C etc. As normal keystrokesand handle them
whatever else is needet to ensure readchar works consistently

[ ] giving a way to check if a key is waiting to be read
[ ] reading chars and keys as with the current behavior
[ ] ensuring consistent behaviour above both platform's (even if that means limiting one)
[ ] decide on good, intuitive names
[ ] document the new feature

Here is an example of how it could work:
With ReadChar() as read:
    if read.key_iswaiting():
        print(read.key())

    #other stuff in parallel #
    sleep(0.5)

If this is working an properly set up, I could replace the existing functions and they could be simply wrappers for this.

@petereon i opened a new issue to discuss this. Feel free to drop more questions

Perfect, thank you very much for an exhaustive description. I wonder if it doesn't sound like a good opportunity to utilize Queues and reactive paradigm.
That would give us a very good way to check if there is a character waiting for processing with a FIFO Queue's get method. With asyncio, it should also deal with the back pressure, if someone typed faster than it is able to process mentioned in #73 . For some reference, consider this article and specifically this code snippet. Does that sound like something that could fit into the current architecture?

While this would defnetly be a reasonable approach where we to rewrite all of he input gathering yourselfs.
But lukily the operating system already handles most of the heavy lifting. We just need to configure it to match our needs. So don't overcomplicate it.

Yeah, that sounds like a pretty sane approach. I am just unsure how to handle the none-blocking read then. Sounds like there is either going to have to be an async event-loop or separate process/thread in that case.

No, the terminal is already a queue and you can query it for content. On windows its super simple as there is a function for it. msvcrt.kbhit() returns true if there are keypresses waiting to be read.
On linux use this https://gist.github.com/michelbl/efda48b19d3e587685e3441a74457024#file-kbhit-py-L103-L111

Also check out this development version that I made but didn't use
https://github.com/Cube707/python-readchar/blob/c3081ec51581ead9b4db2f60a8f1567ed809d06a/readchar/posix_read.py
https://github.com/Cube707/python-readchar/blob/c3081ec51581ead9b4db2f60a8f1567ed809d06a/readchar/win_read.py

Great, thank you for the information and apologies for how very uninformed I am about tty. I'll take a deep dive in this stuff in coming days 😃

No worry. The reason I never used the development version is that I didn't know enough and thought it would work just like that. Turned out its more complicated 😂

Also keep in mind that on the windows side a lot of stuff doesn't work, so this will mostlikley be the limiting factor. So don't spend to much time (unless you want to 😆)

I will have a proper read into this. Good opportunity to learn how OS's handle this stuff :smile:. It might take a bit of time.

take your time. there is no rush.
I will also have more time in the coming weeks, as my thesis is due tomorrow and no longer eat up my schedule

Good luck with your thesis, mate. So glad I am done with that stuff already
😃
On Sun, Sep 11, 2022, 13:53 Jan Wille @.***> wrote:

take your time. there is no rush.
I will also have more time in the coming weeks, as my thesis is due
tomorrow and no longer eat up my schedule
—
Reply to this email directly, view it on GitHub
https://github.com/magmax/python-readchar/issues/92#issuecomment-1242948146,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALGZGPORQAA37NXTURFU3MLV5XB4LANCNFSM6AAAAAAQJMRZIA
.
You are receiving this because you were assigned.Message ID:
@.***>

I spend some time on this and prepeard  the function definitions withour content. See: https://github.com/magmax/python-readchar/commit/a5cecc3c7276cde73a37dba4422d93551464394f

Thanks, let me have a look.

did some more work, check https://github.com/magmax/python-readchar/tree/contexmanager

That's very cool, also I can see you are already done by the time I got to it. Impressive. Apologies for my inactivity, I was really hard pressed for time with work related stuff.

I would still be happy about feedback. Especially about the intuitivenes of names and the general usability

I have played around with it and had one issue in terms of usability: When there are multiple keys waiting at the same time, once the first is read it behaves as if no more keys were waiting. To replicate this, try the following code, press multiple keys while sleeping and wait for while loop to start running. Only printed the first pressed keys for me. After I pressed another as the while loop was running it dumped all the other ones.
import time
from readchar import ReadChar

with ReadChar() as stream:
    time.sleep(5)
    while True:
        if stream.key_waiting:
            char = stream.key()
            print(char)

In terms of naming conventions, I wondered if this isn't more of a CharStream or CharPipe rather than ReadChar.

I will look into the issue. I assumr you tested on Linux, not Windows?
For the name, my initial idea was something like  KeyReader, but I chose this as it is how other libary tend to name their context managers that have a normal function a counterpart. I also figured that it would be among the first thing people guess, alog the lines of "what was the CM from readchar? Probably just a capital R". But I might be totally off here...

I tested on macOS. But that's still POSIX I guess.
As for the naming, that does sound like a good way to approach it. Would be my first guess also.


Dynamic Member Lookup introduced in Swift 4.2, now we can use dot, instead of brackets

This proposal introduces a new @dynamicMemberLookup attribute. Types that use it provide "dot" syntax for arbitrary names which are resolved at runtime - in a completely type safe way. This provides syntactic sugar that allows the user to write
introduce-user-defined-dynamic-member-lookup-types
i've added a subscript function with dynamic member, so users can use dot instead of [],
 let name = json.name
 //The same as: let name = json["name"]

 let phoneNumber = json.user.contactInfo.phoneNumber
 //The same as: let name = json["user"]["contactInfo"]["phoneNumber"]

[yes ] Does this have tests?
[ yes] Does this have documentation?
[ no] Does this break the public API (Requires major version bump)?
[ no] Is this a new feature (Requires minor version bump)?

unknown attribute 'dynamicMemberLookup'
Types that use it provide "dot" syntax for arbitrary names which are resolved at runtime - in a completely type safe way.
https://github.com/apple/swift-evolution/blob/master/proposals/0195-dynamic-member-lookup.md#introduce-user-defined-dynamic-member-lookup-types
am i doing something wrong?

I would prefer to use another swift file to hold these kinds of test cases -- DynamicMemberLookupTests.swift.
What do you think?
You can add yourself credit name to the file header like this: https://github.com/SwiftyJSON/SwiftyJSON/blob/master/Tests/MutabilityTests.swift#L3

I would prefer to use another swift file to hold these kinds of test cases -- DynamicMemberLookupTests.swift.
What do you think?
Don't forget to add the as-is LICENSE header to the new file.
You can add yourself credit name to the file header like this: https://github.com/SwiftyJSON/SwiftyJSON/blob/master/Tests/MutabilityTests.swift#L3

agree, i have created a new test file for dynamic member lookup

Why is this feature not merged into the main branch


Support for compression configs (#44)

Support for compression configs for kafka exporter
Co-authored-by: Apoorv Jain
Backporting the following to 0.29.x
https://github.com/open-telemetry/opentelemetry-collector/pull/3295

Why is PR needed?

Why is PR needed?

So basically we need to add the changes to the latest+patches branch so that we could refer this in the hypertrace-collector.
We are not merging changes in main branch so that it remains in sync  with the upstream code.

Why is PR needed?

So basically we need to add the changes to the latest+patches branch so that we could refer this in the hypertrace-collector.
We are not merging changes in main branch so that it remains in sync with the upstream code.

ok. got it


feat: upload and get profile pic

This pull request adds an endpoint for authentiated users to upload their profile picture while accessing any profile picture they wish to see.
Endpoint:  POST /api/v1/profile/pic
Description: Upload or change the profile picture.
Body: multipart/form-data (file upload)
Response
Successful Response
{
  "status": 201,
  "message": "Profile picture updated successfully",
  "data": {
    "profile_picture_url": "https://example.com/images/user123_profile.jpg"
  }
}

Error(Invalid File Type or Size)
{
  "status": 422,
  "message": "The uploaded file type is not supported.",
  "data": {
    "supported_types": ["image/jpeg", "image/png", "image/gif"],
    "provided_type": "image/tiff"
   }
}

Error(Authentication Required)
{
  "status": 401,
  "message": "You must be logged in to perform this action."
}

Error (Internal Server Error)
{
  "status": 500,
  "message": "An unexpected error occurred while processing your request."
}

Expected Outcome

Users can successfully upload and update their profile picture.
The new profile picture is displayed correctly across all relevant sections of the application.
The system handles errors gracefully, providing clear messages to the user.
The feature performs well, with quick upload and processing times.

Testing

[x] Write unit test to ensure new profile picture is created upon successful response
[x] Perform a manual test and test API endpoint response structure

Uploaded images to local storage at first and could not continue because no upload servie was provided


Fix/10868 improve grouping standardized name

Description
Improvement in grouping name to reflect change in tech spec:
https://github.com/corona-warn-app/cwa-app-tech-spec/pull/146/files
Link to Jira
https://jira-ibs.wbs.net.sap/browse/EXPOSUREAPP-10868

Just wondering.. why is the tech spec repo not public?


v1.0.0-Preview2 Changes

This PR contains all of the changes between v1.0.0-Preview1 and v1.0.0-Preview2.

Hi, I'd like to ask when will 1.0.0 support callbacks? (e.g. Run a command when the notification is clicked)
The 0.8.5 doesn't work on the latest PowerShell 7.3.4 (Windows 11 22H2 10.0.22624.1690)

Hi, I'd like to ask when will 1.0.0 support callbacks? (e.g. Run a command when the notification is clicked) The 0.8.5 doesn't work on the latest PowerShell 7.3.4 (Windows 11 22H2 10.0.22624.1690); nothing comes out when running New-BurntToastNotification

@CarlGao4 that'll be the focus of the next preview, most likely.
I will say that there's no reason the older version wouldn't work on Windows 11 (in fact it works fine for me). Chances are either notifications are disabled outright, or just for PowerShell. There's some discussion here that may help: https://github.com/Windos/BurntToast/discussions/203
If it's still an issue, feel free to open a new discussion


how can use extra in view

when run
dd(Auth::user()->getNotifications()->first()->extra);

i get this
"{"questionName":"Dolores dolor assumenda."}"

how can show only this
Dolores dolor assumenda

yes, that is a json string representation of the extra parameter. What you can do it's to json_decode() extra parameter so you will receive either an object or an array.
But i would rather add this in the model with a decorator, or with Laravel 5 with the $casts property.
For the short term fix you can json_decode the extra param. I will send a PR to make it happen automatically thanks for reporting.

thanks fenos

you can now access to the params:
Auth::user()->getNotifications()->first()->extra->questionName;
Auth::user()->getNotifications()->first()->extra['questionName'];


Updated the redux actions file .env variable

Description
This PR will be to utilize a env variable for the Development/production database url
Type of change
Please delete options that are not relevant.

[X] New feature (non-breaking change which adds functionality)

Change Status

[X] Complete, tested, ready to review and merge

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] My code has been reviewed by at least one peer
[x] There are no merge conflicts

.env change good to go.


Docs increment

Next increment.
Added a "Pardon our dust" admonition in the Whirlwind Tour, because it's in a kind of half-baked state right now. Not a good look, but no-one said master was stable. This is temporary.

Haha, Sybil doctests don't like broken docs. Well, that's what they're there for. Looks like I moved a dependency I shouldn't have. It's probably good to keep an example usage of alias. I'll fix it tomorrow.


Fix DesktopPromptForm text area resize bug

One of my daughters has already found a bug in my new DesktopPromptForm :( , where multi-line content pushes the content down vs. up:

This fixes it so the prompt container flexes upward instead, when the textarea resizes.

r+=my daughter :)


Fix some issues identified by SonarCloud

Use nonroot users
Use --ignore-scripts when installing node packages
Chain RUN instructions
Use ADD for remote files rather than curling
Simplify some JS code

#patch

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

Project coverage is 73.77%. Comparing base (7b43d29) to head (857bddc).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #577   +/-   ##
=======================================
  Coverage   73.77%   73.77%
=======================================
  Files         115      115
  Lines        4027     4027
=======================================
  Hits         2971     2971
  Misses        739      739
  Partials      317      317

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


[Notice] lodash deprecation warning

We are aware of the lodash deprecation warning upon install of gulp 3.x.  This is due to a dependency deep in our dependency tree that we are unable to upgrade due to API breaking changes and stability issues with newer versions.  There is nothing wrong with the dependency or that version of lodash for our use cases.  We will be updating to a different library altogether in gulp 4 and the message will go away.
Please do not open issues about this topic.
Thank you,
-The gulp team

This looks to no longer be happening.


I have created a LinkedIn post for this repo.

I found the work done under this repo is very much ground breaking , and that's why I though to create a Linkedin post to bring it to public eyes.
Here is the link to my original post : https://www.linkedin.com/posts/hemang-joshi-046746aa_home-activity-7061716941949796352-ztHP?utm_source=share&utm_medium=member_desktop
Please if you like the post then please help me by sharing by profile or my website with your friends.
Thanks,
Have a nice day
Hemang Joshi
Https://hjlabs.in

Hi @hemangjoshi37a ,
Thank you for your interest in our work and publicizing it!
I sent you a connection request on LinkedIn!
Best,
Uri

@urialon
@DanielShemesh is one of my customers that is from Technion University. You might know him as you also have studied from Technion.


Sending form data via fetch or axios leaks memory

Description
Sending files via form data with fetch or axios allocates memory 2-3 times the size of the file. The memory is not freed even after getting a response.
This is how memory usage spikes and stays the same until you kill the app.

When uploading a 15.8MB file, the usage spikes by 42MB and only gets reduced by 5MB after upload finishes.
When uploading a 47.9MB file, the usage spikes by 115MB and gets reduced by 15MB after upload finishes.
This leads to crashes after uploading a few decently sized files.
Version
0.68.2
Output of npx react-native info
info Fetching system and libraries information...
System:
OS: macOS 12.3
CPU: (8) arm64 Apple M1
Memory: 99.58 MB / 16.00 GB
Shell: 5.8.1 - /opt/homebrew/bin/zsh
Binaries:
Node: 18.0.0 - /opt/homebrew/bin/node
Yarn: 1.22.18 - ~/.nvm/versions/node/v16.14.2/bin/yarn
npm: 8.6.0 - /opt/homebrew/bin/npm
Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.11.3 - /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.4, iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5
Android SDK: Not Found
IDEs:
Android Studio: 2021.2 AI-212.5712.43.2112.8609683
Xcode: 13.3.1/13E500a - /usr/bin/xcodebuild
Languages:
Java: 11.0.15 - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 17.0.2 => 17.0.2
react-native: 0.68.2 => 0.68.2
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Steps to reproduce

Create a form data object with a file attached to it
POST it via fetch or axios
Observe the app's memory usage

Snack, code example, screenshot, or link to a repository
I have prepared a small demo project where you can upload 2 files of different sizes via fetch or axios to easily reproduce the issue.
https://github.com/dklymenk/rn-formdata-memory-leaks

I am not entirely sure if this issue is iOS-only since I wasn't able to measure the RAM usage on android because android studio profiler makes it so all the requests get aborted with Network Error, but I haven't experienced any crashes related to this issue on android, so if there is a memory leak on android, it's not as bad as on iOS.

Do you use Hermes or JSC ?
I don't use IOS so the following question might be irrelevant but do you think memory is used by JS runtime or native side ?
For instance on Android I monitor PSS usage and I can "guess" memory is used on Java side or JavaScript side based on where I allocate objects.
I had similar memory leak issues in the past: https://github.com/facebook/react-native/issues/26407.
I have fixed these issues by using hermes instead of JSC.

Thank you for the great tip.
Both the app I originally encountered the issue with and the demo app I created for this issue use the default JSC.
I tried Hermes on the demo app in iOS, but I encountered the issue there too.
I couldn't reliably determine if the issue occurs on android since attaching the android studio profiler to the app leads to all the requests being resulting in network error and none of my android users reported any crashes, but I can share the some additional data from xcode charts.
I am not exactly familiar with these tools but in xcode it seems like there are 2 main categories for the memory consumers: "All heap allocations" and "All anonymous VM". I can't tell which one represents JS runtime, but this is how it goes (in hermes):

There is an initial spike(at 37 sec) in "All heap allocations" about 2 times the file size. Eventually(at 42 sec) it grows up to 3 times the file size, about half way into the upload (at 57 sec) a third of that allocated memory switches to "All anonymous VM", and after that it stays like this forever. So in the end the "leaked" memory is allocated with a 2 to 1 split between "All heap allocations", "All anonymous VM".
As far as JSC goes, I think the picture is exactly the same. (Upload starts at 12 seconds mark).

I have monitored PSS memory usage while uploading a 15 MB file multiple times with my application.
I have made some tests on both React Native 0.65.1 and 0.68.2.
I did not notice any significant memory increase (less than 1 MB).

This means the issue is indeed iOS only, right?

I have run your rn-formdata-memory-leaks project.
I have used a standalone debug apk with hermes enabled to get a very stable memory usage.
I do notice some memory increase corresponding to file size (15 MB or 50 MB) during total upload process.
I suspect this is due to the download of the file because you are creating a form data based on url.
In my test on my application, I upload a local file and I don't notice such memory increase.
Besides, after something like 20 attempts, I can see something like 30 MB of memory increase.
PSS usage was 91 MB at start then after my tests, usage was 122 MB.
I don't know if such memory will be released later (30 MB is not much).


EFR32'a vRaiseEventFlagBasedOnContext does weird things inside an interrupt

Problem
In src/platform/EFR32/freertos_bluetooth.c there's a function called vRaiseEventFlagBasedOnContext that has this code:
    EventBits_t eventBits;
    if (xPortIsInsideInterrupt())
    {
        eventBits = xEventGroupSetBitsFromISR(xEventGroup, uxBitsToWaitFor, &higherPrioTaskWoken);

But according to https://www.freertos.org/xEventGroupSetBitsFromISR.html (and the compiler, when compiling with -Wconversion!) xEventGroupSetBitsFromISR returns BaseType_t (aka long), not EventsBits_t (aka unsigned long).  The documentation moreover says that only one of two values is returned pdPASS or pdFAIL.  This does not seem like a useful thing to assign to an EventBits_t.
Proposed Solution
If this function really wants to return the new value of the event group, as it seems to, maybe we should call xEventGroupGetBitsFromISR to do that?
That said, while I am here...  The documentation says to call portYIELD_FROM_ISR or portEND_SWITCHING_ISR if pdPASS is returned, and we're not doing that either, either in this function or at its callsites.  So I have no idea whether any of this ever works as intended.
@sagar-apple @vivien-apple @shana-apple though I don't know that anyone really knows much about this code... Where did it come from originally?

For my future reference: This code comes from OpenWeave and was added in https://github.com/openweave/openweave-core/commit/71185e312cfd1c79baa9b0f54a4cc2ef7179871b and not modified since.


Update 60-env-vars.md

Vite doesn't use process. it's import.meta
Fixes process not defined errors when using environment variables
@bluwy edit: Explain that import.meta.env. is used for build time.
Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[x] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[ ] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[ ] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpx changeset and following the prompts. All changesets should be patch until SvelteKit 1.0

import.meta.env is for build time, not run time — I think the existing docs are correct? (Notwithstanding the fact that not every environment exposes process, of course)

This is code that, on the server side, isn't changed by Vite at all. It's just process.env.whatever which Vite leaves alone and Node then interprets as it normally would, at runtime.

Whoops, I'm on the mobile app and I missed Rich's comment. Yes the import.meta thing is replaced at build time but only for env vars beginning with VITE_. If you want runtime stuff, Vite is not involved.

Interesting. The FAQ is a bit confusing then... If I'm using an environment variable in a .js file, process isn't defined:
/* supabaseClient.js */
import { createClient } from '@supabase/supabase-js';

const supabaseUrl = process.env.VITE_SUPABASE_URL;
const supabaseAnonKey = process.env.VITE_SUPABASE_ANON_KEY;

export const supabase = createClient(supabaseUrl, supabaseAnonKey);

/* src/routes/auth/index.js */
<script>
	import { supabase } from '$lib/supabaseClient';

	let loading = false;
	let email;

	console.log(supabase);
</script>

But if I change process to import.meta, it runs successfully. I'm assuming this means I can only access process from a .svelte file?

Yeah I think the above paragraph "Vite uses dotenv..." could have mention the import.meta.env.* syntax as that's for build-time replacements. The paragraph later explains for runtime replacements.

I'm assuming this means I can only access process from a .svelte file?

You should be using import.meta.env in your example code. process.env should only be used in server code as that's determined in runtime, as in the browser runtime there's no process.

Ohhh I see! That makes sense. Appreciate the help.
On Feb 19, 2022, 20:47 -0700, Bjorn Lu @.***>, wrote:

Yeah I think the above paragraph "Vite uses dotenv..." could have mention the import.meta.env.* syntax as that's for build-time replacements. The paragraph later explains for runtime replacements.

I'm assuming this means I can only access process from a .svelte file?
You should be using import.meta.env in your example code. process.env should only be used in server code as that's determined in runtime, as in the browser runtime there's no process.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

Updated the docs to cover the discussion we had. Ready for a quick review.

much better than what we had before 👍


Error when using learn_bpe

Hi all
I am trying to learn a BPE from a tokenized text.
I am using the docker. When I run 'th tools/learn_bpe.lua -save_bpe codes < file.tok'
I get the following error:
[12/11/17 15:52:28 INFO] Using on-the-fly 'space' tokenization for input	 [12/11/17 15:52:28 INFO] Building vocabulary from STDIN	 /root/torch/install/bin/luajit: ./tools/utils/tokenizer.lua:340: attempt to index field 'hookManager' (a nil value) stack traceback: 	./tools/utils/tokenizer.lua:340: in function 'segmentor' 	tools/learn_bpe.lua:145: in function 'get_vocabulary' 	tools/learn_bpe.lua:297: in function 'main' 	tools/learn_bpe.lua:351: in main chunk 	[C]: in function 'dofile' 	/root/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:150: in main chunk 	[C]: at 0x00406670
Could you please help me to fix it? Thanks

Hello,
There are some ongoing changes that concern input preprocessing. It will be fixed soon.
We recommend using the latest tagged version for now (v0.9.5 as of now).

Thank you. It works.

same problem. I used v0.96. What should I do?


Update iOS run script to fix the build launch in the simulator

If the scheme of the project is different from the project name the iOS run script will not work for the iOS Simulator, since to launch the app the script is looking for ..\${inferredSchemeName} that can be different from the real scheme name that can be passed by argument.
For this sample, if the name of the project is different from the name of the scheme, this will not work, this PR will fix that issue.
react-native run-ios --scheme Sandbox

Already fixed in https://github.com/facebook/react-native/pull/10178, which has been marked for shipping

@StevePotter thanks!


Possible to change form post URL for the login page - potential leak of admin credentials

By adding an extra / after the beginning of that path the login form will submitted to a third party web site.
Example:
http://<IP_ADDRESS>//httpbin.org/anything/..%2f..%2f/cgi-bin/luci/
Resulting HTML:
<form method="post" action="//httpbin.org/anything/..%2f..%2f/cgi-bin/luci/">
The URL is reflected in the response. An attacker can use this to trick an admin to submitting the username and password to an attacker-controlled website. Modern browsers will likely make this hard to exploit especially since #1343 was introduced.
A possible solution should be to make sure the form action URL always starts with a leading . before the first /.
Side note:
Another attack (XSS) that only works in Internet Explorer.
http://<IP_ADDRESS>//<IP_ADDRESS>/..%2f/cgi-bin/luci/?iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii<script>alert(1)</script>
IE does not encode < and > in the query string (as opposed to FF/Chrome) and because the form is submitted from the same domain, the XSS filter in IE doesn't block the XSS attack.
Verified on:

Powered by LuCI Master (git-18.088.49307-90ed423) / OpenWrt SNAPSHOT r6567-db893ec

Let me know if there is another preferred method of reporting security issues.

Seems to working now. I'm closing.


Process crash when selecting a value in ManyToMany field

Hi,
First thank you for this amazing library 🙏 🙏 🙏
I'm having an issue creating a ManyToMany field.
Whenever I try to select a value (in this case a Label for a Sample) the process crashes.
Here is the trace:
[error] GenServer #PID<0.4326.0> terminating
** (BadMapError) expected a map, got: nil
    (elixir 1.17.1) lib/map.ex:535: Map.get(nil, :name, nil)
    (backpex 0.5.1) lib/backpex/fields/many_to_many.ex:386: Backpex.Fields.ManyToMany.to_form_option/2
    (elixir 1.17.1) lib/enum.ex:1703: Enum."-map/2-lists^map/1-1-"/2
    (backpex 0.5.1) lib/backpex/fields/many_to_many.ex:210: Backpex.Fields.ManyToMany.render_form/1
    (phoenix_live_view 1.0.0-rc.6) lib/phoenix_live_view/renderer.ex:79: Phoenix.LiveView.Renderer.to_rendered/2
    (phoenix_live_view 1.0.0-rc.6) lib/phoenix_live_view/diff.ex:335: Phoenix.LiveView.Diff.component_to_rendered/3
    (phoenix_live_view 1.0.0-rc.6) lib/phoenix_live_view/diff.ex:753: Phoenix.LiveView.Diff.render_component/8
    (phoenix_live_view 1.0.0-rc.6) lib/phoenix_live_view/diff.ex:214: Phoenix.LiveView.Diff.write_component/4
    (phoenix_live_view 1.0.0-rc.6) lib/phoenix_live_view/channel.ex:662: Phoenix.LiveView.Channel.component_handle/4
    (stdlib 6.0) gen_server.erl:2173: :gen_server.try_handle_info/3
    (stdlib 6.0) gen_server.erl:2261: :gen_server.handle_msg/6
    (stdlib 6.0) proc_lib.erl:329: :proc_lib.init_p_do_apply/3

I'd appreciate your help in finding what am I doing wrong.
❤

Hi @neerfri
From the error, (and this is guessing only), you might have some null data in your database causing this error. However, it would be pretty impossible to really help without some additional information on your end?
Share your LiveResource & Schema (model) code. Or at a minimum - the code snippet showing how you can configuring the fields.

Probably it is the same issue that I'm having right now, and it is because backpex doesn't work that well with serial values and I tracked the issue to the Enum.find at: https://github.com/naymspace/backpex/blob/50b47c9c1e35a5bc524836db3283a0acc3c9adf6/lib/backpex/fields/has_many.ex#L247-L257
The id field is passed as an string, but it is an integer in the struct, so we don't find anything ever, the ideal solution would be support for serial numbers, but for now I fixed it copying the field to my project and replacing both the Enum.find for Enum.find(selected, fn option -> option.id == String.to_integer(id)).
If the project is new I recommend using bigserial or uuids for your ids, if don't this is a temporary fix.

[...] I fixed it copying the field to my project and replacing both the Enum.finds for Enum.find(selected, fn option -> option.id == String.to_integer(id) end) and the Enum.reject for Enum.reject(selected, fn option -> option.id == String.to_integer(id) end)

If I understand correctly, this will fix the problem? Do you want to provide a PR for it?


DEBUGGER:: Show mouse event stack

Color code areas of mouse event control

RED -> Only click
BLUE -> Only hover
MAGENTA -> Both

works


runtime.tty.print(): little problem

This is an issue I discovered while working with runtime-node-net. runtime's runtime.tty.print() function only accepts strings. You'd at least expect an error when given something else, but no. I tried printing an integer an nothing happened, no errors, nothing. Calling toString() on the number printed it. So I propose that the function should call toString() on the argument, which i'm believe is what console.log() does.

:+1: ah yeah, sorry, you're right, it needs to call String(text) internally. I can fix this now or would you like to open a PR?

PR? Yeah.

Ok, Pull Request submitted.

it needs to call String(text) internally

Really? I think it's a waste of resources to create a String object instead of calling the .toString() method to get the string literal representation...

@piranna String(obj) is the same as obj.toString(), but also converts primitive values like null and undefined

:+1:


Add tie UI

Description
This pull request introduces support for outcomes resulting in a tie. This applies in scenarios where two or three votes for mascots are found to be identical.
Resources
https://www.loom.com/share/13d31bc337894d76b2a3a41e1234d05e

In order to test this, please use matching .env.
Closed poll, with singe winning mascot:
VITE_NETWORK=23295
VITE_WEB3_GATEWAY=https://testnet.sapphire.oasis.dev
VITE_PROPOSAL_START_TIME=1710946800
VITE_CONTRACT_ACL_ALLOWALL=0x90809570b1e4475b6629DEb6d24B5FD40A6d659f
VITE_CONTRACT_ACL_NATIVEBALANCE=0x40FE1D9fA49FaF664cBdb866e0EcEdB11dc48Df5
VITE_CONTRACT_POLLMANAGER=0xf1F0Cb29ac1014738f53bfdBa973a5192afF4812
VITE_CONTRACT_POLLMANAGER_ACL=0x90809570b1e4475b6629DEb6d24B5FD40A6d659f
VITE_PROPOSAL_ID=0xdac630e472b172e19de762490dfc3c11dde63f77c6126064e6e024770874ff0d

Closed poll, with 2 tie winning mascots:
VITE_NETWORK=23295
VITE_WEB3_GATEWAY=https://testnet.sapphire.oasis.dev
VITE_PROPOSAL_START_TIME=0
VITE_CONTRACT_ACL_ALLOWALL=0x8e29375FE5Db7eBb1b5eF24B7D397bBF0B01De09
VITE_CONTRACT_ACL_NATIVEBALANCE=0x38FF18441b182ac603aADCA8ADDb257c6F5d103d
VITE_CONTRACT_POLLMANAGER=0xdAB5845136b3102E63023BB2A2405cb71608605d
VITE_CONTRACT_POLLMANAGER_ACL=0x8e29375FE5Db7eBb1b5eF24B7D397bBF0B01De09
VITE_PROPOSAL_ID=0xe24547804e0361bbc2eea24edac132407332e60c32d6795637f9511902a7df6b

Closed poll, with 3 tie winning mascots:
VITE_NETWORK=23295
VITE_WEB3_GATEWAY=https://testnet.sapphire.oasis.dev
VITE_PROPOSAL_START_TIME=0
VITE_CONTRACT_ACL_ALLOWALL=0x8e29375FE5Db7eBb1b5eF24B7D397bBF0B01De09
VITE_CONTRACT_ACL_NATIVEBALANCE=0x38FF18441b182ac603aADCA8ADDb257c6F5d103d
VITE_CONTRACT_POLLMANAGER=0xdAB5845136b3102E63023BB2A2405cb71608605d
VITE_CONTRACT_POLLMANAGER_ACL=0x8e29375FE5Db7eBb1b5eF24B7D397bBF0B01De09
VITE_PROPOSAL_ID=0x9a2f1cc607cd110332bc1832c74c7fc798c0d0516e56ff81888c55da1c051a8e


Unexpected output for cwd in repl on windows when no workspace open

Testing #23994

On windows
With no workspace open
In the repl, run:

import os
print(os.getcwd())

Expected
This should be /
Actual
The cwd seems to be the VS Code data folder

dup https://github.com/microsoft/vscode-python/issues/24005


Helm supports extra env, volumes and volume mounts for externaldns

Externaldns requires internet access to configure DNS records. In order to run it behind a proxy one needs to configure the proxy address using environment variables and to mount a volume containing the proxy CA certificate.
This can now be configured using the externaldns.extraEnv, externaldns.extraVolumes and externaldns.extraVolumeMounts variables. Here is an example:
externaldns:
  extraEnv:
  - name: HTTPS_PROXY
    value: http://proxy.example.com:8080
  extraVolumes:
  - name: ca-bundle
    secret:
      secretName: ca-proxy
  extraVolumeMounts:
  - name: ca-bundle
    mountPath: /etc/ssl/certs
    readOnly: true

@abaguas that is great, thank you so much for this contribution!
I find your example for PR description extremely useful:
externaldns:
  extraEnv:
  - name: HTTPS_PROXY
    value: http://proxy.example.com:8080
  extraVolumes:
  - name: ca-bundle
    secret:
      secretName: ca-proxy
  extraVolumeMounts:
  - name: ca-bundle
    mountPath: /etc/ssl/certs
    readOnly: true

Can you please add this example to documentation?
It can be a simple proxy.md file to add too docs just mentioning this example with title Running k8gb behind a proxy or similar.
Thanks!

Thank you @ytsarev. Done!


Check Homework

Oh, I just saw this PR. Please do not add PRs to this repository. You should create your own repository from the template in this repository (see readme) and create a PR into your own repository.


Adding UserBit and Reframer to User Research category

Checklist

[x] I made something good today 💐.
[x] I put links in the correct format: [Tool](link) — description.
[x] My description starts with the lower-case letter and ends with the full stop.
[x] I put the tool in the alphabetical order.

Optional

[ ] I added the appropriate labels: free, open-source or mac.
[x] I put the tool only to one category.
[x] I followed Contribution Guidelines.

@xaksis thank you so much for adding great tools :)

of course! @valianka thank you for creating this awesome list. :)


Add time period to shared component params

Currently in the Trends section, when the user selects a non-default time period and click share, the share link will save the selected metric and location/s, but not time period. This PR adds time period to shared parameters so the shared link will "remember" the selected time period too.
Addresses this card.

 Trends sharing doesn't respect "Past # of days" setting.


Document bridge interfaces on-device

Copied from: https://github.com/balena-os/meta-balena/issues/1578
eth0 / wlan0
resin-dns
resin-vpn
balena0
supervisor0
br-xxxxxxxxx
Documentation would cover:
how interface is created (links to source if possible)
what services use the interface for what purposes
User also asks for documentation around the IP ranges used internally in order to avoid conflicts, e.g. in the case that the address range <IP_ADDRESS>/16 as used internally is also used externally on the LAN. https://jel.ly.fish/inbox/2680eacb-60fb-4406-b1ec-cd7b0521e67e

@chrisys is there already some documentation on this topic?

I don't think any progress has been made on this one, @vipulgupta2048 may know more.

Compiled from a couple of sources (restricted access: FD, JF)

resin-dns - A bridge network interface used to provide DNS resolution to service containers. It is created by balenaOS in the balena-net-config script with a hardcoded IP address/subnet of <IP_ADDRESS>/24.
balena0 (renamed from docker0) - A bridge network interface used for connecting the virtual Ethernet interfaces of service containers to the host networking namespace. It is created by balenaEngine (balena's IoT-optimized derivative of Moby/Docker). Its IP address and subnet are configured with --bip=<IP_ADDRESS>/24 --fixed-cidr=<IP_ADDRESS>/25 when the balenaEngine service starts.
supervisor0 - A bridge network interface with the same purpose as balena0, but used only by the balena_supervisor container. It is created by the balenaSupervisor (the on-device manager of service containers) with IP address/subnet <IP_ADDRESS>/25 in network-manager.ts.


Fire Colors! + Others (Desc)

Made it so Fire renders its correct fire on the player and entities.
Renamed classes to better suit its purpose.
Removed need for SurfaceBuilder Dummy Mixin
Renamed all mixin methods to prevent mod conflict
Added priority value to MixinIBlockReader to prevent mod conflict (Its an interface meaning you cant Inject (which is dumb) so when you override, a lower priority value means it choses this over others (technically you could just mixin on its only (Client-Side) use in BlockLightEngine (line 28) but someone else can do that))

Im gonna make sure the mixins work with the new mappings before merging


MSA tool doesn't work

I've been waiting several minutes on an alignment of 2 proteins.

I just tried it with 6 features and it seemed to work.  Maybe something temporary with the website?
https://www.beta.patricbrc.org/view/MSA/?in(feature_id,(PATRIC.208435.3.NC_004116.CDS.54.1463.fwd,PATRIC.208435.3.NC_004116.CDS.1618.2754.fwd,PATRIC.208435.3.NC_004116.CDS.2824.3705.fwd,PATRIC.208435.3.NC_004116.CDS.3715.3912.fwd,PATRIC.208435.3.NC_004116.CDS.4150.4317.fwd,PATRIC.208435.3.NC_004116.CDS.4477.5592.fwd))

It's still not working. My proteins are from private genomes.  Maybe that's the reason? I've tried in safari and firefox.

@jimdavis1 Try it again. Should be fixed now.

@jimdavis1 would you double check whether this works for you?

closing since i cannot reproduce the problem and had no other response.


Ruby errors on all brew commands

brew config output
Fetching gem metadata from https://rubygems.org/.........
Using concurrent-ruby 1.1.8
Using minitest 5.14.3
Using zeitwerk 2.4.2
Using ast 2.4.2
Using bindata 2.4.8
Using bundler 1.17.3
Fetching byebug 11.1.3
Fetching msgpack 1.4.2
Using docile 1.3.5
Using simplecov-html 0.12.3
Using simplecov_json_formatter 0.1.2
Using coderay 1.1.3
Using colorize 0.8.1
Using highline 2.0.3
Using connection_pool 2.2.3
Using diff-lcs 1.4.4
Fetching unf_ext <IP_ADDRESS>
Installing msgpack 1.4.2 with native extensions
Installing byebug 11.1.3 with native extensions
Installing unf_ext <IP_ADDRESS> with native extensions
Fetching hpricot 0.8.6
Installing hpricot 0.8.6 with native extensions
Using mime-types-data 3.2021.0212
Using net-http-digest_auth 1.4.1
Using mini_portile2 2.5.0
Fetching racc 1.5.2
Installing racc 1.5.2 with native extensions
Using ntlm-http 0.1.1
Using webrick 1.7.0
Using webrobots 0.1.2
Using method_source 1.0.0
Using mustache 1.1.1
Using parallel 1.20.1
Using rainbow 3.0.0
Using sorbet-runtime 0.5.6274
Using plist 3.6.0
Using rack 2.2.3
Fetching rdiscount <IP_ADDRESS>
Installing rdiscount <IP_ADDRESS> with native extensions
Using regexp_parser 2.0.3
Using rexml 3.2.4
Using rspec-support 3.10.2
Using sorbet-static 0.5.6274 (universal-darwin-20)
Using ruby-progressbar 1.11.0
Using unicode-display_width 2.0.0
Using ruby-macho 2.5.0
Using sorbet-runtime-stub 0.2.0
Using thor 1.1.0
Using warning 1.2.0
Using i18n 1.8.9
Using tzinfo 2.0.4
Using elftools 1.1.3
Using parser <IP_ADDRESS>
Using simplecov 0.21.2
Using commander 4.5.2
Using net-http-persistent 4.0.1
Using mime-types 3.3.1
Using pry 0.14.0
Using parallel_tests 3.4.0
Using rspec-core 3.10.1
Using rspec-expectations 3.10.1
Using rspec-mocks 3.10.2
Using sorbet 0.5.6274
Using activesupport 6.1.3
Using patchelf 1.3.0
Using rubocop-ast 1.4.1
Using codecov 0.4.3
Using parlour 5.0.0
Using rspec-github 2.3.1
Using rspec-retry 0.6.2
Using rspec-its 1.3.0
Using rspec 3.10.0
Using rspec-sorbet 1.8.0
Using spoom 1.0.9
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/msgpack-1.4.2/ext/msgpack

/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20210225-9550-1swct6i.rb extconf.rb
checking for ruby/st.h... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/$(RUBY_BASE_NAME)
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:467:in try_do': The compiler failed to generate an executable file. (RuntimeError) You have to install development tools first. 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:585:in block in try_compile'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:534:in with_werror' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:585:in try_compile'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1109:in block in have_header' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:959:in block in checking_for'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in block (2 levels) in postpone' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in open'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in block in postpone' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in open'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:357:in postpone' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:958:in checking_for'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1108:in have_header' 	from extconf.rb:3:in '
To see why this extension failed to compile, please check the mkmf.log which can be found here:
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/extensions/universal-darwin-20/2.6.0/msgpack-1.4.2/mkmf.log
extconf failed, exit code 1
Gem files will remain installed in /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/msgpack-1.4.2 for inspection.
Results logged to /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/extensions/universal-darwin-20/2.6.0/msgpack-1.4.2/gem_make.out
An error occurred while installing msgpack (1.4.2), and Bundler cannot continue.
Make sure that gem install msgpack -v '1.4.2' --source 'https://rubygems.org/' succeeds before bundling.
In Gemfile:
bootsnap was resolved to 1.7.2, which depends on
msgpack
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/byebug-11.1.3/ext/byebug

/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20210225-9550-zcrtol.rb extconf.rb
creating Makefile
current directory: /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/byebug-11.1.3/ext/byebug
make "DESTDIR=" clean
current directory: /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/byebug-11.1.3/ext/byebug
make "DESTDIR="
make: *** No rule to make target /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/universal-darwin20/ruby/config.h', needed by breakpoint.o'.  Stop.
make failed, exit code 2
Gem files will remain installed in /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/byebug-11.1.3 for inspection.
Results logged to /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/extensions/universal-darwin-20/2.6.0/byebug-11.1.3/gem_make.out
An error occurred while installing byebug (11.1.3), and Bundler cannot continue.
Make sure that gem install byebug -v '11.1.3' --source 'https://rubygems.org/' succeeds before bundling.
In Gemfile:
byebug
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/unf_ext-<IP_ADDRESS>/ext/unf_ext

/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20210225-9550-e0gbei.rb extconf.rb
checking for -lstdc++... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/$(RUBY_BASE_NAME)
--with-static-libstdc++
--without-static-libstdc++
--with-stdc++lib
--without-stdc++lib
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:467:in try_do': The compiler failed to generate an executable file. (RuntimeError) You have to install development tools first. 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:546:in block in try_link0'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/tmpdir.rb:93:in mktmpdir' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:543:in try_link0'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:570:in try_link' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:789:in try_func'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1016:in block in have_library' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:959:in block in checking_for'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in block (2 levels) in postpone' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in open'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in block in postpone' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in open'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:357:in postpone' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:958:in checking_for'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1011:in have_library' 	from extconf.rb:6:in '
To see why this extension failed to compile, please check the mkmf.log which can be found here:
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/extensions/universal-darwin-20/2.6.0/unf_ext-<IP_ADDRESS>/mkmf.log
extconf failed, exit code 1
Gem files will remain installed in /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/unf_ext-<IP_ADDRESS> for inspection.
Results logged to /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/extensions/universal-darwin-20/2.6.0/unf_ext-<IP_ADDRESS>/gem_make.out
An error occurred while installing unf_ext (<IP_ADDRESS>), and Bundler cannot continue.
Make sure that gem install unf_ext -v '<IP_ADDRESS>' --source 'https://rubygems.org/' succeeds before bundling.
In Gemfile:
mechanize was resolved to 2.7.7, which depends on
http-cookie was resolved to 1.0.3, which depends on
domain_name was resolved to 0.5.20190701, which depends on
unf was resolved to 0.1.4, which depends on
unf_ext
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/hpricot-0.8.6/ext/fast_xs

/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20210225-9550-x9cc29.rb extconf.rb
checking for stdio.h... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/$(RUBY_BASE_NAME)
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:467:in try_do': The compiler failed to generate an executable file. (RuntimeError) You have to install development tools first. 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:585:in block in try_compile'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:534:in with_werror' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:585:in try_compile'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1109:in block in have_header' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:959:in block in checking_for'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in block (2 levels) in postpone' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in open'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in block in postpone' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in open'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:357:in postpone' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:958:in checking_for'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1108:in have_header' 	from extconf.rb:2:in '
To see why this extension failed to compile, please check the mkmf.log which can be found here:
/usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/extensions/universal-darwin-20/2.6.0/hpricot-0.8.6/mkmf.log
extconf failed, exit code 1
Gem files will remain installed in /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/hpricot-0.8.6 for inspection.
Results logged to /usr/local/Homebrew/Library/Homebrew/vendor/bundle/ruby/2.6.0/extensions/universal-darwin-20/2.6.0/hpricot-0.8.6/gem_make.out
An error occurred while installing hpricot (0.8.6), and Bundler cannot continue.
Make sure that gem install hpricot -v '0.8.6' --source 'https://rubygems.org/' succeeds before bundling.
In Gemfile:
ronn was resolved to 0.7.3, which depends on
hpricot
Error: failed to run /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/bundle install!
brew doctor output
(same as above)

[X] The brew doctor above contains no "Warning" lines.

What were you trying to do (and why)?
I regularly run brew upgrade to keep my system up to date. Recently started getting these errors.
What happened (include all command output)?
see brew config/doctor output
What did you expect to happen?
Upgrade to run successfully as usual
Step-by-step reproduction instructions (by running brew commands)
Run any brew command such as brew doctor or brew upgrade.

Was able to resolve the issue by re-installing the CommandLineTools with
sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install


Refactor the styled EDCT data grid into its own class

To get all the CSS styling stuff out of the EDCT file

Done in the other project.


Add RabbitMQ examples to the json file

Purpose

$title

Fixes #19786
Check List

[x] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #19787 into ballerina-1.0.x will not change coverage.
The diff coverage is n/a.

@@               Coverage Diff                @@
##           ballerina-1.0.x   #19787   +/-   ##
================================================
  Coverage            20.51%   20.51%
================================================
  Files                   52       52
  Lines                 1394     1394
  Branches               216      216
================================================
  Hits                   286      286
  Misses                1095     1095
  Partials                13       13

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 c96940b...d6b7d1a. Read the comment docs.


Spelling mistake in ORCA

It says

Expot to CSV and Expot to Excel

It should be

Export to CSV and Export to Excel

will be fix asap


[Bug Report] Cascader has no effect when it sets props value to'label'

Element UI version
2.4.11
OS/Browsers version
win10/chrome70.0正式版本
Vue version
2.5.18-beta.0
Reproduction Link
https://jsfiddle.net/zvL59pds/2/
Steps to reproduce
https://jsfiddle.net/zvL59pds/2/
What is Expected?
change改变返回值应该是label的值
What is actually happening?
change改变返回值还是value的值

原来需要放载 props里在传下去


Report for Instagram users

There is a cache of Instagram at /Documents/recent-users.coded.
I guess it's not top priority for you, so we could implement report for instagram_users.

Hmm, I haven't given much thought to other apps yet. It may be something for the future but I'm going to need to give some thought to scope and what should be included in the main project.

You could have another repo for user created reports. So they don't mix to much, but collaborative work could still happen. Kind of a plugin system.

That's a good idea, a plugin system may be the best approach

for #41


Add spacing variables

Description of the Change
This PR adds CSS spacing variables.

Benefits
Have consistent spacing and improve maintainability.
Verification Process
Add CSS selector and use any of the variables, for example:
section {
  margin-bottom: var(--s-large);
  margin-top: var(--s-xsmall);
}

Checklist:

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

Changelog Entry

ADDED: CSS Spacing Variables

@AlejandroPerezMartin Can we use more verbose var naming? Prefer --spacing-large
cc @joesnellpdx

Totally agree @barneyjeffries, pushed a commit renaming those variables

@AlejandroPerezMartin This looks good to me now!

@AlejandroPerezMartin I'm wondering how you would feel about using an 8pt system, rather than 10? I'm not opposed either way, I've just had a good deal of success working with designers in an 8pt grid.
@joesnellpdx what do you think?
:root { 	--spacing-xxsmall: 0.5rem; /* 8px */ 	--spacing-xsmall: 1rem; /* 16px */ 	--spacing-small: 2rem; /* 32px */ 	--spacing-medium: 3rem; /* 48px */ 	--spacing-xmedium: 4rem; /* 64px */ 	--spacing-xxmedium: 5rem; /* 80px */ 	--spacing-large: 6rem; /* 96px */ 	--spacing-xlarge: 7rem; /* 112px */ 	--spacing-xxlarge: 8rem; /* 128px */ }

@AlejandroPerezMartin I'm wondering how you would feel about using an 8pt system, rather than 10? I'm not opposed either way, I've just had a good deal of success working with designers in an 8pt grid.
@joesnellpdx what do you think?
:root { --spacing-xxsmall: 0.5rem; /* 8px */ --spacing-xsmall: 1rem; /* 16px */ --spacing-small: 2rem; /* 32px */ --spacing-medium: 3rem; /* 48px */ --spacing-xmedium: 4rem; /* 64px */ --spacing-xxmedium: 5rem; /* 80px */ --spacing-large: 6rem; /* 96px */ --spacing-xlarge: 7rem; /* 112px */ --spacing-xxlarge: 8rem; /* 128px */ }

@AlejandroPerezMartin @devinle
First, I'd run it by Lea - to see if VisD has a preference if they had to pick.
I'd go with 8px for general spacing, but use a default VAR to set it.
So, have a default var like this:
:root {
   --spacing-base: .5rem; // 8px
}

:roo {
--spacing-dot-half-x: calc(var(--spacing-bas) * .5); // 4px
--spacing-2-x: calc(var(--spacing-base) * 2); // 16px
--spacing-3-x: calc(var(--spacing-base) * 3); // 24px
--spacing-4-x: calc(var(--spacing-base) * 4); // 32px
...
}

For font scale - we may want to default with something based on a type scale - but, again, I'd see what Lea says.

These variables should probably be added to theme.json, yeah? If so, I opened a PR for it here — #93, if not I'll close it out.

These variables should probably be added to theme.json, yeah? If so, I opened a PR for it here — #93, if not I'll close it out.

@devinle Per @rdimascio comment / pr above - we should determine our next steps and dovetail with our UI Plugin approach.
Once we get that in place, we should get reviews from those here and close the other issues / PRs.


--rm=false documented incorrectly

File: engine/reference/run.md
The Docker v19.03 run reference documentation indicates:

--rm=false: Automatically remove the container when it exits

I believe that it should indicate:

--rm=true: Automatically remove the container when it exits

Justification:
Version: Docker version 19.03.8, build afacb8b
OS: macOS Catalina v10.15.4

Run a docker container w/ the option: --rm=false
Exit the container w/ <ctrl>d
Repeat the original run command

Result: Error message indicating that the container is already in use - i.e. it was not removed.

Thanks for sharing the issue. This particular content is maintained in an upstream repo. If the issue is still applicable, please help create an issue or PR in the source repo at https://github.com/docker/cli/tree/master/docs/reference


运行mdlTest抛出异常

系统是CentOS 7.4，修改build.sh后编译成功，但运行mdlTest时抛出异常：
start running cycle : 0
terminate called after throwing an instance of 'mdl::MDLException'
  what():  MDL C++ Exception: -Custom Exception- | [in file] -:- [/home/zhb/mobile-deep-learning/src/loader/loader.cpp] | [on line] -:- [139] | [detail] -:- [model sign is not expected].
Aborted

Try regenerate the model.min.json on CentOS, the current json file you use is generated on mac, I guess the sign result differs between mac and CentOS.

重新生成json文件后运行成功了，谢谢！

@xjtucyzhb To support linux is in our todoList #40 , we are plan to add a new target named 'linux',hope you can commit your modifications to build.sh to our repo


Fix broken links

./packages/rule/no/p3p/README.md

[ ] [https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/compatibility/mt146424(v=vs.85](https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/compatibility/mt146424(v=vs.85) => 404

See also: https://travis-ci.org/sonarwhal/sonarwhal/jobs/396384126

Things look fine now:
curl -sSLI "https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/compatibility/mt146424(v=vs.85)"

HTTP/1.1 200 OK
Last-Modified: Wed, 20 Jun 2018 00:23:16 GMT
Content-Type: text/html
Request-Context: appId=cid-v1:21aee9e4-1cf5-4750-b2bd-78b2747f4211
X-Datacenter: wus
X-Frame-Options: DENY
x-content-type-options: nosniff
X-UA-Compatible: IE=edge
X-XSS-Protection: 1; mode=block
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Rendering-Stack: Dynamic
Cache-Control: public, max-age=461
Expires: Mon, 25 Jun 2018 16:36:50 GMT
Date: Mon, 25 Jun 2018 16:29:09 GMT
Connection: keep-alive
x-cache-hit: true

But it seem this URL often returns a 404.

Maybe we should use: https://msdn.microsoft.com/en-us/library/dn904497.aspx#Platform_for_Privacy_Preferences_1.0__P3P_1.0__removal?

Maybe we should use: https://msdn.microsoft.com/en-us/library/dn904497.aspx#Platform_for_Privacy_Preferences_1.0__P3P_1.0__removal?

Done in https://github.com/sonarwhal/sonarwhal/commit/22d6f503dc59f1b7f1fe78951d31238679208b66.


Add script to automatically classify sources near GCN candidates

This PR adds a script (gcn_cronjob.py) that automatically classifies light curves within 0.5 arcsec (by default) of candidates for GCN events. The script queries all GCN events within the last 14 days, identifies any new sources, runs feature generation on Expanse, pulls those results and runs inference locally, consolidates predictions, and uploads DNN/XGB classifications above a mean probability threshold of 0.7. A metadata file for each event lists sources and their classifications passing the threshold.
This script can be run as a cron job, e.g. on the hour:
0 * * * * ~/miniforge3/envs/scope-env/bin/python ~/scope/gcn_cronjob.py > ~/scope/log_gcn_cronjob.txt 2>&1

A future PR will allow light curve plots associated with the classifications to be posted as comments.

Thanks, I agree!


glfwPollEvents aborts program (BadWindow/X_TranslateCoords)

Release 3.3.1 throws the following error from glfwPollEvents() on my wayland+sway system:
X Error of failed request:  BadWindow (invalid Window parameter)
  Major opcode of failed request:  40 (X_TranslateCoords)
  Resource id in failed request:  0x0
  Serial number of failed request:  132
  Current serial number in output stream:  132

I've narrowed down the problem to commit fe57e3c (2020-01-01).  The previous commit, 6b01aff (2020-01-01), works fine.  Both commits work okay under gnome3 though.
I read somewhere that this problem might be related to running a tiling window manager with no window decorations, but I tested both with and without window decorations and in my case fe57e3c doesn't work either way.
Here's my test code:
#include <stdio.h>
#include <GLFW/glfw3.h>

void quit(GLFWwindow *window, int key, int scancode, int action, int mods)
{
    if (key == GLFW_KEY_ESCAPE && action == GLFW_PRESS) {
        glfwSetWindowShouldClose(window, GLFW_TRUE);
    }
}

void error_callback(int code, const char* description)
{
    printf("error: %s\n", description);
}

int main()
{
    glfwInit();

    glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
    glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
    glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
    glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
    GLFWwindow *window = glfwCreateWindow(1280, 720, "GLFW OpenGL", NULL, NULL);
    glfwMakeContextCurrent(window);

    glfwSetErrorCallback(error_callback);
    glfwSetKeyCallback(window, quit);

    while (!glfwWindowShouldClose(window)) {

	printf("polling events...\n");

        glfwPollEvents();

	printf("polled events\n");

        glfwSwapBuffers(window);
    }

    glfwDestroyWindow(window);
    glfwTerminate();
}

Note that error_callback isn't invoked, and glfwPollEvent() doesn't return; the program just aborts.
os: NixOS, kernel 4.19.98, sway 1.4

Am also getting this on xmonad (i.e. tiling wm w/o decorations).
os: NixOS, kernel 5.4.15, xmonad 0.15, xorg 1.20.5, amdgpu driver

Thank you for reporting this. It was fixed with 9372ba95faabd1bb45280d201d6ccdae77bf872e in #1620, which was included in the recent 3.3.2 release.

Thanks @elmindreda.  I can confirm that 9372ba9 works for me.

I'm on Arch Linux with X11 - using 3.3.2 and still have the same issue - same error with glfwPollEvents(). Any hint how to debug that it seems to crash deep inside of X11?

@seichter Have you checked the version string in case it's an older binary interfering somewhere?

Yes. It's same and I made sure its not interfering with the system installed GLFW. Basically I am rewriting one of my old 3D engines and use GLFW as input and window handler. Source in in-tree for the code, the library is built as subproject with CMake and linked statically. If I leave out glfwPollEvents() things work but obviously I have no input handling and the like.

@seichter I cannot reproduce this with 3.3.2. What window related hints do you set? Does the bundled GLFW test windows have the same issue on your machine?

I drilled it down to this line but couldn't figure out what might caused it.

@seichter What window manager are you using?
It could happen if the window was reparented and the parent window destroyed before GLFW processed the configure event. I'll add an Xlib error handler grab around using the cached parent handle.

I'm on ArchLinux with latest Gnome/Mutter in a gnome-session - the problem appeared already with the old 3.34.x series. Both machines are using the proprietary NVidia driver (if enabled). One machine is using a patched gdm from AUR for optimus-manager and is usually running with the Intel driver - problem persists independently of driver.
$ pacman -Q mutter gnome-session gnome-shell
mutter 3.36.0-1
gnome-session 3.36.0-1
gnome-shell 1:3.36.0-3

@seichter Does this happen when you poll right after window creation or when you do something with the window via input or code or something else?

@elmindreda I was just digging a bit deeper in my code. The engine code was after window initialization and setting up callbacks hiding the window (with glfwHideWindow) and shortly before starting the update loop showing it again (with glfwShowWindow). If I disable this, the update loop works as expected. In glfw 3.2.1 there was no problem here.

@seichter Oh, that makes perfect sense. Thank you!

This should be fixed now with e65de2941c056ee5833b4dab3db36b297b53aa14. Thank you @lodi and @mmilata for reporting it and @seichter for all the patient debugging help.