Update to<EMAIL_ADDRESS>

As<EMAIL_ADDRESS>changed the verify method signature to be jws.verify(signature, algorithm, secretOrKey), the token header must be decoded first in order to make sure that the alg field matches one of the allowed options.algorithms. After that, the now validated header.alg is passed to jws.verify
As the order of steps has changed, the error that was thrown when the JWT was invalid is no longer the jws one:
{ [Error: Invalid token: no header in signature 'a.b.c'] code: 'MISSING_HEADER', signature: 'a.b.c' }

That old error (removed from jws) has been replaced by a JsonWebTokenError with message invalid token. That's why this change will bump be a major.

@pose couple of questions:

Do we need more tests for this change?
Are there any other things we would like to get in for the next major that would also break the API?

Do we need more tests for this change?
We have a couple of tests of invalid tokens: https://github.com/auth0/node-jsonwebtoken/blob/update-to-jws-3/test/jwt.rs.tests.js#L239-L278 Do you have any additional test in mind?

Are there any other things we would like to get in for the next major that would also break the API?
No that I'm aware of. I've taken a look at the PRs and issues.


Change some posters to be rules-compliant

About the PR

This PR changes 4 of the posters in the game that had references or implications related to sexual content.
They are replaced with new posters:

They have the following descriptions:

"Beach Star Yamamoto!"
 You feel more weebish the longer you look at it."

"Fear! Exomorph"
"A poster meant to teach the viewer common sense."

"Space Sleep Disorder"
"A poster informing the viewer about Space Sleep Disorder, or SSD, a condition where someone stops reacting to things around them. Treat SSD crew with care!"

"Have you seen him?"
"An old poster for a missing alien. Where has he run off to?"

Why / Balance

Each poster was changed for the following reason:

PosterContrabandBeachStarYamamoto: Description references "girls in small swimming suits", and the visuals are similar.
PosterContrabandLustyExomorph: Description and design is meant to evoke sexualization. The alien in the poster does not match the SS14 Exomorph design and instead imitates the Alien franchise Xenomorph, raising copyright concerns.
PosterContrabandBustyBackdoorExoBabes6: Description is overtly sexual, and the design is similarly so. Same issue with copyright as above.
PosterLegitNoERP: While the message is good, unlike "graytide", "shitsec" or "nukies", ERP is not a term that is actively used by players in-game and is instead a meta rules term.

These posters existing cause a strange inconsistency with upstream server rules and the items in the game. While they are in the game they can also be used to introduce further sexualized content as a point of reference for what's allowed.
Technical details

PosterContrabandBeachStarYamamoto isn't migrated since it keeps its prototype name, while the other 3 are.
Media

New:

Old:

Requirements

[x] I have read and am following the Pull Request and Changelog Guidelines.
[x] I have added media to this PR or it does not require an ingame showcase.

Breaking changes

Changelog

:cl:

tweak: Changed 4 posters to be rules-compliant.

ssd means space sleep disorder

Updated SSD poster (it's very hard to fit disorder, make the obligatory "diodsrer" joke)

I will fap to a Xenomorph poster, and you won't stop me from doing it!

Finally, ERP allowed.

PosterContrabandBeachStarYamamoto: Description references "girls in small swimming suits", and the visuals are similar.

I don't think this change is necessary. It's a beach, so beachwear makes sense.

PosterContrabandLustyExomorph: Description and design is meant to evoke sexualization. The alien in the poster does not match the SS14 Exomorph design and instead imitates the Alien franchise Xenomorph, raising copyright concerns.

Your change completely guts the humor element. I also don't think this counts as sexual content under the current rules? Maybe an admin could weigh in on that.

PosterLegitNoERP: While the message is good, unlike "graytide", "shitsec" or "nukies", ERP is not a term that is actively used by players in-game and is instead a meta rules term.

Yeah, that's called "breaking the 4th wall" which is fine to do for humor purposes.

PosterLegitNoERP: While the message is good, unlike "graytide", "shitsec" or "nukies", ERP is not a term that is actively used by players in-game and is instead a meta rules term.

Yeah, that's called "breaking the 4th wall" which is fine to do for humor purposes.

I would put more stock into the "breaking the 4th wall for humor" argument if this poster wasn't the only one out of like a 100 that is referencing a meta rules term. There are posters that reference meta humor (like the gas giant one) but those could fairly conceivably be made in-character.
To me (and feel free to disagree) the "No ERP" sign is equivalent to having an "Ahelp self-antags" sign.

No opinion on the anime and ssd posters (I think the old ones were fine but the new ones are also fine as well) but the old Exomorph ones are just like.. Not good? The new ones look a lot nicer and the missing red guy poster (I forget the name) is fun!

PosterLegitNoERP: While the message is good, unlike "graytide", "shitsec" or "nukies", ERP is not a term that is actively used by players in-game and is instead a meta rules term.

Yeah, that's called "breaking the 4th wall" which is fine to do for humor purposes.

I would put more stock into the "breaking the 4th wall for humor" argument if this poster wasn't the only one out of like a 100 that is referencing a meta rules term. There are posters that reference meta humor (like the gas giant one) but those could fairly conceivably be made in-character.
To me (and feel free to disagree) the "No ERP" sign is equivalent to having an "Ahelp self-antags" sign.

I think the sprite for the SSD poster does not look good all squished together personally. I also feel that the No ERP sign is fine as technically it is a meta rule. It stands for "No Erotic Roleplaying" while it is also a server rule, it doubles as a rule on the station since you could technically roleplay as whatever in this roleplaying game. Like an in character roleplay. BUT a "Ahelp self-antags" sign would 100% be meta and couldn't be done in character on the station. I hope this makes sense.

i like them all, good reasons + talking about any of these in game would prob get you bwoinked anyways so this has my skarletTM stamp of approval
arguments i brought up in gen chat imma just copy paste them
"The rules are there and its just weird to have around imo like ok sure it’s ‘vintage’ or ‘culture’ but who really cares that much its a poster that gets exploded if you hit it twice"
"If someone mentions erp ic theyre getting bwoinked, so why have a poster of that"
"the SSD replacement for ERP is informative"
the girl being in a dress vs a swimsuit is such a minor detail theres no issue with it
idk what exactly its referencing but that looks like pinup to me and we dont need it, the replacement is fine and the dress is cute

Yeah just my preference personally, at the end of the day I don't really care about the beach poster one or the "No ERP" being removed, but the SSD one NEEDS to at least be reworked lol. that sprite is skrungly and needs a fixin.

Updated SSD poster (it's very hard to fit disorder, make the obligatory "diodsrer" joke)

Definitely keep the original, even if the name is slightly off. This is a very skrunkly sprite.

"NO ERP" poster is good, the others idgaf about they can go

 Updated SSD poster (it's very hard to fit disorder, make the obligatory "diodsrer" joke)

would it be easier to fit the text vertically ?

Based on the discussion here as well as an internal project discussion, I've reverted the No ERP poster removal. I will still make an informational SSD poster, but that will be made in a separate PR.

I’m struggling to describe how these changes make me feel without being rude.  The only thing that I can think of would be “wet blanket”
these sorts of changes are never bad enough to actually protest, but god if my eyes could roll out of my head they would.

I’m struggling to describe how these changes make me feel without being rude. The only thing that I can think of would be “wet blanket”
these sorts of changes are never bad enough to actually protest, but god if my eyes could roll out of my head they would.

I see what your saying but the new posters (especially for the aliens) are just better than the old ones. They look better (Especially the wanted poster) and avoid any copyright issues. If it was just removing them? Sure, but this PR isn't low effort and the replacement posters are obviously are much more thought-out than the original ones.

Why not leave both options? and make the second one like old (something like ancient) posters, for technical rooms?

Personally, I like both options and would like to see them in the game. Without any replacement. And to be honest, the reasons for replacing the posters seem bloated and empty.

today, history will be erased, I might have to start cherry-picking from upstream :finnadie:

This PR reminds me of opening a book in a library to find out one of the local puritan crusaders has used a razor blade to cut out any images of women, men dressed in anything short of businesswear, and particularly shapely pieces of furniture.
The new ones are well done so no reason not to add them... But full replacement on the grounds listed? FFS...

i love the rouny wanted poster but all the rest just seem like baseless censorship

I understand upstream is supposed to be the gold standard but this is really silly. These sprites have been in play (both 13 and 14) for so long I dont understand why we would remove them.

I understand upstream is supposed to be the gold standard but this is really silly. These sprites have been in play (both 13 and 14) for so long I dont understand why we would remove them.

If someone would get banned for ERP if they said or did something that is in-game, it should be removed. Not to mention, Wizden is only 16+ instead of 18+ for some reason. Any overtly sexual references should be heavily scrutinized or outright removed. While I personally don’t care and don’t really like the overly strict wizden ERP rules, items in-game should definitely stay within those rules.

Since there's some arguments being made here that this is some sort of moral crusade (which is very funny to read) I want to re-highlight the key reason why I made this PR:

These posters existing cause a strange inconsistency with upstream server rules and the items in the game.

I don't really care what the posters show personally, and were the upstream server rules more permissible with explicit content I would not have made this PR. But I do care about consistency, and the issue is that these items exist in the game while being basically forbidden to talk about. As one admin very succinctly put it: "We should not have banbait."
You could go the other way and change the rules (some pros and cons with that too), either way works fine for me. I just want consistency.

I understand upstream is supposed to be the gold standard but this is really silly. These sprites have been in play (both 13 and 14) for so long I dont understand why we would remove them.

If someone would get banned for ERP if they said or did something that is in-game, it should be removed. Not to mention, Wizden is only 16+ instead of 18+ for some reason. Any overtly sexual references should be heavily scrutinized or outright removed. While I personally don’t care about the posters and don’t really like the overly strict wizden ERP rules, items in-game should definitely stay within those rules.

This falls completely flat when the character creation screen allows fully nude character models.
Woman in swimsuit? Too sexual!!!!
Woman completely nude in character creator? Totally fine 👍

I like the new posters, don't like the removal of the old posters (mostly, exobabes6 is an ugly sprite and it being completely removed is fine imo)

16 year olds will combust if they see anything not safe for Pepsi sponsors or descended from things that might be controversial to the deepest delves of the internet

This falls completely flat when the character creation screen allows fully nude character models.
Woman in swimsuit? Too sexual!!!!
Woman completely nude in character creator? Totally fine 👍
I can't even do High job preference on AI without my character's muff and/or schlong in my face but got forbid some poor innocent 16 year old from the internet see a pixilated bikini

I just wanna add that if you follow the PEGI ratings, the old "bad" posters would fall perfectly well within PEGI 16 and very likely PEGI 12 as well.

Sidenote: Do you know where parents often bring their kids (as young as babies) during the summer holidays?
The beach.
Do you know what you will always see in beaches?
Women in bikinis.
THE HORROR

Replace the xenobabes6 with rouny, keep the rest

keep the new rouny one and leave all the others.  The ERP one specifically is fine as well because its funny although also adding a poster about ssd would also be funny.


addOptions doesn't recognize the github.RepositoryContentGetOptions

Hi,
It could be I am missing something but by reading the code and trying out myself it seems to me something is wrong in the library. I am using the go-github client<EMAIL_ADDRESS>and the code is simple:
// v0.0.1 is a tag name. The below code checks if the given path in the GitHub repo exists in the specified Ref.
opt := &github.RepositoryContentGetOptions{Ref: v0.0.1}
fileContent, dirContent, _, err := c.Repositories.GetContents(ctx, repo.Owner, repo.Name, pathInRemoteRepo, opt)

But it seems to me the whatever the Ref value (e.g. v0.0.1) I specify, the GetContents() always use "master". Below is the real response I got when I specified Ref = v0.0.2 (I removed the real file path):
dirContent: [github.RepositoryContent{Type:"file", Size:0, Name:"xxx.tf", Path:"xxx.tf", SHA:"xxx", URL:"https://api.github.com/repos/xxx/xxx/contents/xxx.tf?ref=master", GitURL:"xxx", HTMLURL:"xxx", DownloadURL:"xxx?token=xxx"}]

Notice the ?ref=master is used as the URL instead of ?ref=v0.0.2 as I'd expect. By reading at the code the opt field is used as quer parameters in the URL so I am not sure if I am missing something silly here.
Thanks!

OK this issue is gone after I make sure pathInRemoteRepo doesn't have a trailing '/'.


⚠ Bofrost.be has degraded performance

In 0d3849f, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 953 ms

Resolved: Bofrost.be performance has improved in f3bfd34.


v2: AlgoliaSearchHelper events not handled from widget methods

Do you want to request a feature or report a bug?
bug
Bug: What is the current behavior?
Listening for events (helper.on) within a widget's init method does not work. Worked in v1.

jsFiddle with 2.0.0.beta.5: https://jsfiddle.net/timkelty/ufaycett
same jsFiddle, but with 1.x latest: https://jsfiddle.net/timkelty/4s70qkq0/

What is the version you are using? Always use the latest one before opening a bug issue.
2.0.0.beta.5

I can even add that this happens when the search function is implemented. This was introduced with ba27df3bf3bc99efb5080a0dd1c9484236755214 because we now rely on prototypal inheritance to implement the searchFunction mechanics.

fixed in v2.0.0


Def.sequential doesn't honour aggregates

[x] I've read the CONTRIBUTING guidelines

steps
val foo = taskKey[Unit]("")
val bar = taskKey[Unit]("")

val root = project in file(".")
aggregateProjects(prj1, prj2)

foo := println("foo root")
bar := Def.sequential(foo).value

val prj1 = project settings (foo := println("foo 1"))
val prj2 = project settings (foo := println("foo 2"))

problem
> foo
foo root
foo 2
foo 1
[success] Total time: 0 s, completed 09-Aug-2018 14:11:56
> bar
foo root
[success] Total time: 0 s, completed 09-Aug-2018 14:11:57

expectation
I expect Def.sequential to execute the given task with the same semantics as executing it in the shell.
notes
sbt version: 1.2.1, also *0.13.17.
Here are two workarounds:
bar := Def.sequential(foo all aggregatesFilter).value
val aggregatesFilter = ScopeFilter(inAggregates(ThisProject))

val aggregatesFilter = ScopeFilter(inAggregates(ThisProject, includeRoot = false))
foo := {
  foo.all(aggregatesFilter).value
  foo.value
}

I disagree on the expectation here.
Aggregation is a command broadcasting tool, which is equivalent of saying all root/bar prj1/bar prj2/bar.
Calling compile.value has never been aware of the project.aggregate(...), and thus the same applies to sequential tasks. If you want the same thing as typing things into the shell, you should define a command alias instead. A close emulation would be defining a AutoPlugin that defines the sequential task in all subprojects. (Sort of related to recent Q&A I did  https://stackoverflow.com/a/51688744/3827)

I see what you mean, but I think it's too subtle. If you define a top-level doCI := Def.sequential(compile.value, doc.value) you want the compile to aggregate, just like compile aggregates in the shell. Shouldn't need to give up on the task abstraction and using static strings like ";testNoFail;testQuick".

Then you need an automatic scope filtering + sequential task.

What about introducing a new Def.sequentialWithAggregates that would do the default behaviour that Dale wants? There's not much we can do, changing the semantics of this in sbt 1.x is a breaking change and people may end up over-testing or over-running tasks in their CI.

Sometimes we change semantics and call it a bug fix 🙂
I think most aggregating projects are empty projects, and so any invocation of their tasks with .value are currently nooping (bug) instead of aggregating.
I'm happy to go the sbt-doge route on this: iterate in a plugin, and fold it in for the next major version.


iosevka: 24.1.4 -> 25.0.0

Description of changes
Diff: https://github.com/be5invis/iosevka/compare/v24.1.4...v25.0.0

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

#243360


Add eaas-provision-space task

This task is meant to be used before all other EaaS tasks/stepactions in a pipeline (such as #1058).

@oamsalem @yftacherzog please review.

/retest

@konflux-ci/build-maintainers can I please get your approval on this PR?

@chmeliik, if you have the permission, can you please merge this?


Initial commit

Gui updates are not visible ... are you able to visualize?

I had to revert the commit due to stability issues. I'll commit it again once most of the code starts working again.

ok sure....


Show a list of drawables in the runtime inspector

This has been mostly done with a couple of remaining pieces of work:

[ ] Dynamic updating when the list of drawables changes
[ ] Display the drawable mode (2bpp, 8bpp, etc)

This seems to be working reasonably well as-is and, since it's a developer / debug option, I don't think it's required for a v1 ship. Pushing to Future.

Smuggers causes a crash when scrolling the drawables list so it's a good way to test the framework.

Closing this as done.


Broken for XML declaration and stuffs

I am using Brackets 1.6 on Windows 10 64-bit, htmlhint version is the latest.
A normal, standard XML document opening should begin like this:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE myMessage [
    <!ELEMENT myMessage (#PCDATA)>
]>
...

However, it happens that I got all these error:
Special characters must be escaped : [ < ]. <?xml version="1.0" encoding="UTF-8"?>
Special characters must be escaped : [ > ]. <?xml version="1.0" encoding="UTF-8"?>
Special characters must be escaped : [ > ]. ]>

Makes me wonder if I declared my document wrongly myself or it's the linter that is :frowning:
Please fix.
Meanwhile, I'll have to disable the plugin myself. :dash:

Why are you using HTMLHint to lint an XML doc?


Inconsistent mining speed for pattern mining

Sometimes when blocks like grass and other stuff is being mined in the pattern mining, the hardness calculation turns very inconsistent.

Should be fixed now?


Bug: The icon on the Statistical Button may extend beyond the borders of the button itself

Fixed by a10cd87 commit


IOptionsSnapshot does not provide newest value when running in docker environment

Hey there,
I wanted to implement what is described here, but it seems to me that this is not working as intended.
I have setup a new asp.net core project (2.1.3) with docker-support (Linux container) in Visual Studio 2017 15.8.1 to demonstrate that.
Running the project using the Docker profile, the ValuesController will always return the old value, even when I change the appsettings during runtime.
Running the project using IIS Express profile, the ValuesController returns the changed value, from the appsettings.
I have read that we should set DOTNET_USE_POLLING_FILE_WATCHER to 1 or true, when running in a docker environment to watch for changes, but even this does not help. also VS does this automatically, when debugging.

I have checked when running with Docker profile, what the PhysicalFilesProvider looks like and its set to _pollForChanges=true

So I´m stuck and I am running out of options. How to use this feature? We want to change some configurations of our services during runtime without restarting them.
WebApplication12.zip

Is https://github.com/aspnet/FileSystem/pull/333 related to my problem

and this https://github.com/aspnet/Home/issues/3341?


unpack() function deals 1-bit data differently with ewanbarr/sigpyproc

Hi,
I found that this repository unpacks 1-bit data in big endian order, however ewanbarr/sigpyproc reacts differently in this case:
https://github.com/ewanbarr/sigpyproc/blob/54a804200723d30601026be5bfa37ec90c8266c1/c_src/libSigPyProc.c#L23-L27
I wonder if this is meant to be?

It is unclear if this is a bug or a convention. The implementation in the original sigpyproc was a direct port of the implementation in sigproc (see https://github.com/SixByNine/sigproc/blob/master/src/readchunk.c).
There the 1-bit unpacker explicitly unpacks in little-endian order.
    /* unpack the sample(s) if necessary */
    switch (nbits) {
    case 1:
      fread(&c,1,1,input);
      for (i=0;i<8;i++) {
	f[i]=c&1;
	c>>=1;
      }
      ns=8;
      break;

The sigproc documentation states:

Multi-byte precision data are written in different orders depending on your machine’s operating system. The original WAPP data, for example, was written on a PC (little endian format). The filterbank program knows about this and automatically does any byte swapping required while reading. When it comes to writing the data out, however, the program will always write data in the native order of the processing machine. To swap the bytes around before writing for use on other machines, use the-swapout option.

The endianness of the data depends on the recording instrument and it should probably be more explicitly set when reading the files.

This is a convention so that we have the same bitorder for low-bit data. Looks like this need not be true.
So, the sigproc codebase follow different bitorder convention for 1-bit data? There is no header keyword defined to infer the bitorder from the filterbank file. The -swapout option only controls the writing convention.
I think using endianness as a parameter flag (bitorder) for these read/write functions and having both kind of unpacking implementation can be a good strategy. The flag would then be irrelevant if nbits > 8.
FilReader.read_block(), FilReader.read_plan(), Header.prep_outfile()

Ideally, it should have been a header flag.
Need to reverse/make changes in https://github.com/telegraphic/numbits/issues/6 and https://github.com/telegraphic/numbits/pull/7

bitorder is more correct than endianness here so it makes sense to use that terminology.
As a note, the previous discussion about unpack1_8 vs np.unpackbits is no longer valid after PR #34. The previous performance discrepancy was due to the intermediate buffer allocation.
In [72]: %timeit kernels.unpack1_8(in_ar, out_ar)
563 µs ± 2.26 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)

In [73]: %timeit np.unpackbits(in_ar)
646 µs ± 9.54 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)


Update Docker image for linux device layer BlueZ compilation

Update Docker image for linux device layer BlueZ compilation
Add BlueZ in CHIP #1608 depends on this PR
fixes #741

@yunhanw-google sorry there's a conflict now :(

@woody-apple  thanks, just resolve the conflict.


Help us translate the website

[ ] https://kcl-lang.io/docs/user_docs/guides/working-with-konfig/practice en -> zh

https://github.com/KusionStack/kcl-lang.io/issues/44 en -> zh

Hi, I just joined the Kusion community and would like to try and take on this translation task.It seems that this document docs/user_docs/guides/working-with-konfig/practice should be translated from Chinese to English, rather than from English to Chinese. Here is the website: kcl-lang.io/next

Welcome! Thank you for your contribution. I have polished the task list.

Hi, I just joined the Kusion community and would like to try and take on this translation task.It seems that this document docs/user_docs/guides/working-with-konfig/practice should be translated from Chinese to English, rather than from English to Chinese. Here is the website: kcl-lang.io/next

@niconical Kind reminder: If you have completed any document translation, you can gradually open the PRs. Thank you ❤.

Hi, I just joined the Kusion community and would like to try and take on this translation task.It seems that this document docs/user_docs/guides/working-with-konfig/practice should be translated from Chinese to English, rather than from English to Chinese. Here is the website: kcl-lang.io/next

@niconical Kind reminder: If you have completed any document translation, you can gradually open the PRs. Thank you ❤.

Thanks for your reminder, I have translated most of the documents, but I haven't uploaded them yet, I will test these changes and submit PR within next two days.


SDN One-Way Firewall

Write a pox program to act as a simple firewall protecting Host A (specified by command line argument as a MAC address or ethernet port).  Initially, all traffic to A is dropped.  However, if Host A send traffic out to some host B, then return traffic from B to A should be permitted.

@Chryel and I will do this as well

no immediate due date for this, but you may find it useful practice for your geni competition entry.


About function" get_consistent_masks"

hello,  i have a qustion about your function "get_consistent_masks",
# flow consistency condition             bwd_consist_bound = torch.max(self.flow_consist_beta * self.get_flow_norm(optical_flow_rev), torch.from_numpy(np.array([self.flow_consist_alpha])).float().to(optical_flow_rev.get_device()))             fwd_consist_bound = torch.max(self.flow_consist_beta * self.get_flow_norm(optical_flow), torch.from_numpy(np.array([self.flow_consist_alpha])).float().to(optical_flow.get_device()))
, however in the referenced paper"UnFlow: Unsupervised Learning of Optical Flow
with a Bidirectional Census Loss" the  occclusion mask is defined as follows:

I wonder the flow consistency condition should be
 bwd_consist_bound = self.flow_consist_beta * (self.get_flow_norm(optical_flow_rev)+self.get_flow_norm(fwd2bwd_flow))+torch.from_numpy(np.array([self.flow_consist_alpha])).float().to(optical_flow_rev.get_device())             fwd_consist_bound = self.flow_consist_beta * (self.get_flow_norm(optical_flow)+self.get_flow_norm(fwd2bwd_flow))+torch.from_numpy(np.array([self.flow_consist_alpha])).float().to(optical_flow.get_device())
Waiting for your reply.
Thank you

We followed the GeoNet [61] for the formulation of flow forward-backward consistency, as mentioned in section 3.1 of our paper. The ideas about flow consistency of UnFlow and GeoNet are quite similar, while they differ in the implementation.

We followed the GeoNet [61] for the formulation of flow forward-backward consistency, as mentioned in section 3.1 of our paper. The ideas about flow consistency of UnFlow and GeoNet are quite similar, while they differ in the implementation.


Swift 4 support available? I need to incorporate it in swift 4 project

I need to incorporate it in swift 4 project. Does it support latest swift version

@Constantine-Fry You could migrate your code with fvonk/rebekka. I've created a pullrequest for this


azure-developer-devcenter needs docstring updates for sphinx

ACTION NEEDED: All sphinx errors and warnings must be fixed by 2024-04-15. The build will begin to fail for this library if errors are not fixed.
This issue indicates that your library reference documentation is rendering with errors. To avoid customer issues, please ensure you take care of these errors and warnings ASAP.
Library name: azure-developer-devcenter
Sphinx build: Link to build (2024-06-01)
How to fix: Run the strict-sphinx tox command at the library package-level and resolve the docstring errors and warnings.

../azure-developer-devcenter>pip install "tox<5"

../azure-developer-devcenter>tox run -e strict-sphinx -c ../../../eng/tox/tox.ini --root .

Once resolved, set strict_sphinx = true in the package's pyproject.toml file.

See Sphinx and docstring checker for more information.

Failed due to a transient error in the pipeline: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=3838009&view=logs&j=e5b925a9-9650-5321-24fd-5d9499fe02b8&t=0d206e13-b346-5d3f-79e6-d5bfba9e089e&l=166
No actual sphinx errors so closing.


Fix Click Mask "Load" button in UX

Follwing #14828 and fix in 50b975548dcd65a9506e7fb449d40404320c0983, several bugs remain so Click Mask can be used again.
Issue description:
On Antergos Linux 64b at least:

Load button do no allow to load a click mask (remain <null> after the file selection)
Using the import dock, it's mostly working, but dimensions are flipped (rotated 90°)
Using the  "plus" button "Create a new resource in memory and edit it" in the Inspector dock, then select Bitmap, then provide a path and a name, then load in the click mask button, the click mask is not working: I can click everywhere in the texture surface and click respond, even in the black parts of the click mask...

Minimal reproduction project:
A minimal example to test
Thanks a lot for your great work !

Also unable to set click mask from editor even after reimporting to bitmap (3.0.4).  Just remains  and says no error/warning, only this in console:
"Set texture_click_mask"

It works for me. I suggest showing your workflow on why it does not work so we can come up with a better way to improve usability. Also not a bug, changing to ehnahcement

Hi,
I just tested again today with Ubuntu 18.04 64b and Godot freshly compiled (cb5a62903f9798da8b12f625cbd5a493f14e41d3), point 1 in my initial description (use Load button) is still not fixed. I'm sorry, this is not an enhancement but just a bug: this editor button is not working.
And this is blocking for the Escoria sub-project...
Thanks again !

Chiming in, using a relatively fresh build (https://github.com/godotengine/godot/commit/c1779b1) I couldn't get click masks to work using either alpha pngs or black and white pngs. Dragging and dropping lead to the inspector field reverting to  in both cases, as did loading using the "Load" button.
Importing the png as a BitMap worked if I re-imported in black & white mode, but only after restarting the editor - the first attempt for each file spits out an error about invalid header / corrupt file at https://github.com/godotengine/godot/blob/0f4c30fb7166e84d93f0b2cb20d726f869155d98/scene/resources/texture.cpp#L488

Yeah, I have reproduced the bug in Godot v3.2.1.
I receive a error in the debugger.

Project: click_masks.zip

Never mind. It does work if I import the image as BitMap. I misread something.
Is there a way to automatically generate a BitMap from an existing image in code though? The transparent pixels black and the others white?
Keeping two images of the same thing is kinda annoying, especially since I have many sprites in my project.

Fixed in 4.0 (or probably earlier)
As mentioned many times, the image must be imported as BitMap. Then even using Load will work.
btw create_from_image_alpha() takes Image, so you need to import the texture as Image if you want to use it.


Consider adding options menu to the extension

Suppress (Select ?) item of questions.
Add read button to input text boxes and text areas?
Choice of voices?

Added menu to the page itself.


Points x color issue

Points

Events

Problem
The text color is not changed when the point has a color.
Maybe the point only should change color ???

Thanks! Fixed in 1.0.7

I also find implemented solution weird and expected the circle itself to be colored instead.
The only remaining differentiating factor from events is the lack of the drop line.
Points with and without color are more different than points and events with the same color.


Add support for destructured variable declarations

                class Test {
                    val (a, b) = kotlin.Pair(1, 2)
                }

Closing issue as duplicate in favor of user report: https://github.com/openrewrite/rewrite-kotlin/issues/58


There's no mention of what {id} should be (including in the example, which makes it not an example ;-)

[Enter feedback here]

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 4282383c-a227-31ab-4147-b46cef3b321e
Version Independent ID: db5207fb-1ba1-09d7-3d8f-c7ab276a104d
Content: Get secureScore - Microsoft Graph v1.0
Content Source: api-reference/v1.0/api/securescore-get.md
Product: security
Technology: microsoft-graph
GitHub Login: @preetikr
Microsoft Alias: MSGraphDocsVteam

As the mentioned article belongs to the secureScore resource type's section of the documentation, {id} quite probably refers to the secureScore resource type's property of the same name, which would match the introductory sentence of the article


corner profile picture doesn't load initially

The picture doesn't load initially (I'm guessing this is because the image path isn't in the store yet).
I think it's simplest just to have it say "profile" all the time (current behavior)

I fixed this with my merge, it will show a 'profile' button if their data hasn't been retrieved, and it will show their picture if it has. This is easy to swap around if we don't like the picture though.


Higher resolution (NSIDE=1024) scans

It appears to me that scans with 24 or 48 pixels refined from NSIDE = 512 to NSIDE = 1024 are still plotted with the resolution equivalent to NSIDE = 512.
Honestly I am not sure whether this is an issue of skyreader (it seems there is no hardcoded upper limit to plotting resolution?) or Skymap Scanner (maybe it refines the wrong pixels?)
Two events where I tried to produce scans with different final NSIDE:<PHONE_NUMBER>1116 and<PHONE_NUMBER>1607

I believe this was a false alarm.
It seems create_plot_zoomed() works as intended, although by default it has too wide plot boundaries to be able to appreciate the increase in resolution.
On the other hand create_plot(dozoom=True) seems does not seem to behave in the same way.
(With the occasion I have checked that on-the-fly whether the angular range of nside-1024 pixels was matching the best fit region and it was.)

Alright, the issue is that create_plot() creates a meshgrid with fixed resolution (in dpi!?) while create_plot_zoomed() uses healpy.cartview().
It should be noted that create_plot() always creates a full sky meshgrid even when do_zoomed is True and arbitrarily increasing the resolution will eat enormous amounts of memory just to draw a small patch.
create_plot_zoomed() on the other hand should be made a bit more adaptive to the actual size of the contour.

yes, create_plot was a legacy plotter while create_plot_zoomed is an updated version that adapts healpy's plotting routines and hence proper spherical projections. At this point I'm not sure it's worth keeping the do_zoomed option as it just adds confusion.

yes, create_plot was a legacy plotter while create_plot_zoomed is an updated version that adapts healpy's plotting routines and hence proper spherical projections. At this point I'm not sure it's worth keeping the do_zoomed option as it just adds confusion.

Since it was there, I started routinely testing it in SkyMist. Surely it is hugely inefficient and not sustainable in the current implementation.
Probably we can also convert the full-sky plotting to healpy routines at some point. I wonder if there's any drawback with respect to the current implementation (I remember healpy having a somewhat bad to non-existent object-based interface).


[Feature Request] Classic Macintosh style "toggle" pen

Request

if you start the stroke on the 2nd colour, or no colour, then the 1st colour is drawn
if you start the stroke on the 1st colour the 2nd colour is drawn

So, this is a pen that operates with XOR function.
Benefits

reduce need to swap between selected colours
reduce need to swap between pen and eraser
for drawing in only black and white you never have to swap colours or tools at all!

Example

ResEdit https://twitter.com/gingerbeardman/status/1786504929730838958

Try it yourself
I added this as the default tool in my build of Piskel: https://github.com/gingerbeardman/piskel-playdate

Thank you for your feature request.
This feature sounds useful. However, the current version of Pixcil does not have a concept of a "2nd colour."
Implementing this feature could require considerable work, especially in terms of UI design.
(I want to design this tool with minimal features and UI, while maintaining maximum convenience.)
I will review this feature in more detail when I have the time, possibly within this month.

No worries, it would work as well (at least for me) if it was a toggle pen that one colour and transparent.

Maybe not as old a resEdit, but I remember pencil tools that defaulted to erase if you started on a drawn pixel.  That might catch me off guard sometimes, but a hotkey toggle would be good.  Are there hotkeys for the tools now?  I noticed that the line and shape tools got removed.  It'd be nice if holding shift toggled the line mode back in.

Are there hotkeys for the tools now?

No, but I'm not negative to implementing a hotkey feature.
Are there any references for well-known hotkey mappings?

I noticed that the line and shape tools got removed. It'd be nice if holding shift toggled the line mode back in.

Okay.
I feel that the previous UI wasn’t very intuitive, so I plan to redesign the interface to better support multiple drawing modes before reintroducing the tools.

I'm not sure if there is a standard for hotkeys, but it's often like (p)encil or (b)rush, (e)raser, (s)elect, (f)ill or (b)ucket, but I've never loved those because they're spread all over the place.  My preference would be to have them all on the left side of the keyboard, but not everyone uses the same layout, so I'd think the way to go would be:

defaults with mnemonics like above
but user configurable

I see. Thank you. Making it configurable seems like a good idea.

Photoshop keys are what I would expect (even though it's decades since I used it, they keys are prevalent)
zoom = z
zoom in = cmd +
zoom out = cmd -
eye dropper =
pencil = b
fill = g
eraser = e
wand = w
move/hand = h (or space)
https://helpx.adobe.com/uk/photoshop-elements/using/keys-selecting-tools.html

@gingerbeardman Sorry for the very late response.
I've been extremely busy this year, but I plan to dedicate some time to this issue next month.
In that regard, let me ask: do you still need this feature? (If not, I'll deprioritize this task.)

Feel free to adjust priority.
I'm now using an app called Piskel which I forked and added a new alternative pen tool with this capability.

I see. Thank you for your reply.


Error on setup typescript example

when i try build typescript example i get this error :
><EMAIL_ADDRESS>sam:deploy
> cross-var sam deploy --stack-name $npm_package_config_cloudFormationStackName --capabilities CAPABILITY_IAM --s3-bucket $npm_package_config_s3BucketName --s3-prefix $npm_package_name --parameter-overrides DomainName=$npm_package_config_domain --region $npm_package_config_region --no-fail-on-empty-changeset

Error: Invalid value for '--parameter-overrides':  DomainName= is not in valid format. It must look something like 'ParameterKey=KeyPairName,ParameterValue=MyKey ParameterKey=InstanceType,ParameterValue=t1.micro' or 'KeyPairName=MyKey InstanceType=t1.micro'

my config :
  "config": {
    "s3BucketName": "my-app-sls",
    "region": "us-east-1",
    "cloudFormationStackName": "ServerlessExpressTypeScriptStack",
    "functionName": "",
    "domain": ""
  }

You can't deploy the sam stack without passing valid domain and functionName.

You can't deploy the sam stack without passing valid domain and functionName.

I used the same config for normal javascript one (without typescript) and it worked fine I only have this problem when I use typescript also I want use the default AWS API link for now and get domain later

Try with this command: cross-var sam deploy --stack-name $npm_package_config_cloudFormationStackName --capabilities CAPABILITY_IAM --s3-bucket $npm_package_config_s3BucketName --s3-prefix $npm_package_name --region $npm_package_config_region --no-fail-on-empty-changeset --parameter-overrides DomainName=$npm_package_config_domain
I put the --parameter-overrides at the end, maybe it recognizing the other parameters as input.
You can try too putting single quotes in the 'DomainName=$npm_package_config_domain'

fixed thank you

Hi, I am also encountering the same situation.

You can try too putting single quotes in the 'DomainName=$npm_package_config_domain'

I solved it with this.


Hikari connection pool creates two connection after start

I use Hikary connection pool with following settings:
  HikariDataSource dataSource = new HikariDataSource();
        dataSource.setMinimumIdle(0);
        dataSource.setMaximumPoolSize(Integer.MAX_VALUE);
        dataSource.setJdbcUrl(jdbcConnectionString);
        dataSource.setConnectionTestQuery("select 1");
        dataSource.setIdleTimeout(TimeUnit.SECONDS.toMillis(60));
    dataSource.getConnection();

After getConnection() hikari try to get 2 connections to instance, but put in connection pool just one connection. How can I fix it? The hikari version is 3.4.0 jdbc hikaricp

@Pryanic When HikariCP starts, it creates a Connection in order to validate that connectivity to the database is available.
If minimumIdle is greater than zero, this "test connection" is just added to the pool.  If minimumIdle is zero, the "test connection" is closed, instead of adding to the pool.
However, what you are likely observing is that connection closure is asynchronous.  So the "test connection" is queued for closure.  Therefore, if you call getConnection() immediately there is likely a several millisecond overlap between the asynchronous creation of a new connection and the asynchronous closure of an old one.  During this window of time two connections may exist to the database.
If you cannot tolerate even a several millisecond condition in which two connections exist, the only workaround I can think of is to pass a ThreadFactory to dataSource.setThreadFactory() that always returns a single identical (not new) thread.  By doing so, you ensure that the connection adder thread and the connection closer thread are actually the same, and therefore those two actions can never overlap.

Thank you for your answer. I found easier  solution https://stackoverflow.com/questions/58027582/hikari-connection-pool-creates-two-connection-after-starting


"keep going" even if the "panic" test fails

@homunkulus try

:hourglass: Trying commit 6066431 with merge 6066431...

Pay attention to the changes in these targets:

powerpc-unknown-linux-gnu
s390x-unknown-linux-gnu

They used to stop testing after the "panic" test failed.

:broken_heart: Test failed - status-travis


Disablind sorting is not respected when dragging between lists

Sorting is enabled when dragging between lists that have sorting disabled.
Problem
If I initialize three lists with sort: false-option, then sorting inside the list is disabled, but when dragging between lists I can sort the items however I please.
Solution
The behaviour I would expect is more like a drag and drop between "buckets", not "take item from list A and sort it to the position desired in list B".
JSbin

For clarification, you mean you'd like to see it where any new item was ONLY added to the end of the list?

I happen to have a use case where sometimes I want to disable sorting altogether. Then it's really awkward to allow sorting when moving items between lists, because the sorting order will not be respected.
Generally I find it a bit weird to allow sorting (in case of moving from list to another) when sorting is disabled in both lists.
I can of course overcome this issue by implementing an alternate way of dragging and dropping between lists when sorting is disabled, but...

Alas, I cannot help, sort is responsible only sorting into the list, but does not affect the movement between the lists.

I'd find this feature really useful. My users are allowed to move items only between lists and not in the list itself. Since they can position the element wherever they want this confuses them (since they are not allowed to reposition the element). Would be nice to see only one position available in the list and allow them to drop only in that position.


what is the diffrence between  and <T, _>

i can't understand

Hi @luckydog12, you can identify an example so your question can be answered precisely !

const clone = <T, _>(arr: T[]): T[] => [...arr]
const clone = (arr: T[]): T[] => [...arr]
can u understand what i mean ?

@luckydog12 <T, > 相当于是2个参数类型的泛型约束，就像 <T, U> 写法一样，只是这里第二个参数类型约束没用上，因为你的示例代码只有一个参数，如果把你的示例改改，可能就好理解了。
比如：const clone = <T, >(arr:T[], arr2:[]):(T|)[] => [...arr, ...arr2]
等同于：const clone = <T, U>(arr:T[], arr2:U[]):(T|U)[] => [...arr, ...arr2]


This fixes the core compilation issues with MSVC12

Something got really messed up here... Will fix it in a new pr


Can't launch on macOS

Hi,
I run macOS 10.12.4 (latest), and when I try to run EzGraver's last release (2.3.0), here's what I get:
dyld: Library not loaded: @executable_path/../Frameworks/libEzGraverCore.1.dylib
  Referenced from: /Applications/EzGraverUi.app/Contents/MacOS/EzGraverUi
  Reason: image not found

Any idea on how to solve this? I also tried to build it from source following the instructions with no luck.
Thanks!

Hi
Thanks a lot for your report. I've investigated this issue and was able to resolve its cause. It appears that since version 2.1.0 the build server responsible for the OSX builds no longer packages the necessary libraries.
Therefore, please fallback to v2.0.0 until I have fixed it.

Yeah version 2.0.0 launches. Thanks a lot!

The build should be fixed by now, and the newly released v2.3.1 should now work on OS X as well.

Still cannot launch…
Dyld Error Message:
  Library not loaded<EMAIL_ADDRESS>  Referenced from: /Applications/EzGraverUi.app/Contents/Frameworks/QtGui.framework/Versions/5/QtGui
  Reason: image not found

Binary Images:
       0x10faf3000 -        0x10fb05ff7 +test.EzGraverUi (0) <4F57D6D5-3FDA-3911-9453-5913FF49A87F> /Applications/EzGraverUi.app/Contents/MacOS/EzGraverUi
       0x10fb17000 -        0x10fb1efff +libEzGraverCore.1.dylib (0) <5B05D689-AE83-3566-BBEB-0BD13413FE6E> /Applications/EzGraverUi.app/Contents/Frameworks/libEzGraverCore.1.dylib
       0x10fb28000 -        0x110026ff7 +org.qt-project.QtWidgets (5.7 - 5.7.1) <07745F14-81CC-3129-BD1B-8BCD45CA26AC> /Applications/EzGraverUi.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets
       0x110183000 -        0x1105d5fff +org.qt-project.QtGui (5.7 - 5.7.1) <BCD35856-390B-361F-9806-442DB90E8280> /Applications/EzGraverUi.app/Contents/Frameworks/QtGui.framework/Versions/5/QtGui
       0x1106c4000 -        0x110be3ff7 +org.qt-project.QtCore (5.7 - 5.7.1) <5E9BC277-7BA8-396A-B832-3008C55F8A89> /Applications/EzGraverUi.app/Contents/Frameworks/QtCore.framework/Versions/5/QtCore
       0x110c91000 -        0x110c9fff7 +org.qt-project.QtSerialPort (5.7 - 5.7.1) <39E65C37-EF4A-371A-8F34-590796086241> /Applications/EzGraverUi.app/Contents/Frameworks/QtSerialPort.framework/Versions/5/QtSerialPort
       0x118cf0000 -        0x118d2ddc7  dyld (433.5) <8239D0D7-66F6-3C44-A77F-586F74525DA3> /usr/lib/dyld
    0x7fff7934d000 -     0x7fff79351ffb  com.apple.agl (3.3.1 - AGL-3.3.1) <EEB77D74-9B6B-331F-B103-5A62A029BCE2> /System/Library/Frameworks/AGL.framework/Versions/A/AGL
    0x7fff7e580000 -     0x7fff7e585fff  com.apple.DiskArbitration (2.7 - 2.7) <A4DCD470-D8EA-37E9-BDCA-A2B469754C12> /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
    0x7fff7ec7e000 -     0x7fff7ed13fff  com.apple.framework.IOKit (2.0.2 - 1324.50.21) <BA7DC917-35A9-3D1B-BBEC-ADF4495A166D> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
    0x7fff81eaa000 -     0x7fff81eb8fff  com.apple.opengl (14.0.16 - 14.0.16) <2970D284-D6BD-3727-AA74-2697AE676952> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
    0x7fff91293000 -     0x7fff91294ffb  libSystem.B.dylib (1238.51.1) <D9B20A4F-87BC-36CB-9405-80E105666725> /usr/lib/libSystem.B.dylib
    0x7fff91446000 -     0x7fff9149cff7  libc++.1.dylib (307.5) <0B43BB5D-E6EB-3464-8DE9-B41AC8ED9D1C> /usr/lib/libc++.1.dylib

Thanks a lot for the prompt reply. It appears it no longer references the QT libraries correctly. This will need further investigations. However, this might taken a little bit more time as I do not have an OSX machine nearby.

Well that's too bad, but thanks a lot for the support!
If you need macOS testing, just reply here or contact me elsewhere, I'll be happy to test within 24 hours. =)

I am grateful for any support. Feel free to give v2.3.2 a try.

Yay, it works! =) I can't test right now the connection and controls of the engraver. Will do soon.
Feel free to ask anything you need about macOS, I have plenty of devices to test.

Great, thanks a lot for the quick review.

Hi all.i have a small neje  engraver.  I have been trying to get it to work on my macbool pro running do captain but cant get it to work.
I like the look of your software.
Any chance of of giving me instructions on how to install it and the drivers please?
I'm not a technical guy so an easy step by step way would be really appreciated.
Cheers heaps.


Chore(repo): Cachable Yarn installs

Description

Enabling cache while setting up Node environment. The setup-node action added new feature with Yarn caching.
Bahmutovs/npm-install still lacks the support for Yarn Modern.
Additional context

Issue reference

https://jira.almacareer.tech/browse/DS-1402

With the cache only about 30s of the installation time.


⚠ Hartman Foundation has degraded performance

In e7fc730, Hartman Foundation (https://gordonhartman.com/) experienced degraded performance:

HTTP code: 200
Response time: 2837 ms

Resolved: Hartman Foundation performance has improved in 694ec53.

Resolved: Hartman Foundation performance has improved in 694ec53.


how to encrypt and decrypt db in swift

i am not getting how to encrypt and decrypt database file...

Are you using the SEE extension (https://www.sqlite.org/see) or some other technique? We're using SEE but that requires linking your own version of the sqlite library.

Try SQLCipher.


XM Cloud Tutorial - Setup XMC: Fixing steps that are not actually steps

Description / Motivation
Reported by Documentation team:

Here are two instances of steps that shouldn't be steps on this page https://developers.sitecore.com/learn/getting-started/xm-cloud/tutorials/setup-xm-cloud:

The deployment starts, and provisioning and build run in parallel.
Your changes are autosaved.

How Has This Been Tested?
On Vercel preview environment
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[X] Documentation update (non-breaking change; modified files are limited to the /data directory or other markdown files)

Checklist:

[X] I have read the Contributing guide.
[X] My code/comments/docs fully adhere to the Code of Conduct.
[ ] My change is a code change.
[X] My change is a documentation change and there are NO other updates required.
[ ] My change has new or updated images which are stored in the /public/images folder that need to be migrated to Sitecore DAM

Bypassing the review on this one as its minor and is blocking other PRs


36 - Implement read-only mode

Hi @juanhurtado10, @MarioRodriguezS, and @jcamilocp. This PR closes #36.
The support for the read-only mode was implemented. Also, two found bugs were solved:

In the rendering when a toggle block is the first element in the editor.
In the rendering when there’s a block between two toggle blocks.

@juliansg022 some comments were added. What about the tests?

@juanhurtado10 For this feature I think isn't necessary to add additional tests because the read-only mode establishes the contentEditable attribute in false (or deletes it) to the fields, preventing their editing, i.e., all work exactly equal, including the rendering, the only difference is that the containers won't have the contentEditable attribute. What do you think?

@juliansg022 some comments were added. What about the tests?

@juanhurtado10 For this feature I think isn't necessary to add additional tests because the read-only mode establishes the contentEditable attribute in false (or deletes it) to the fields, preventing their editing, i.e., all work exactly equal, including the rendering, the only difference is that the containers won't have the contentEditable attribute. What do you think?

@juliansg022 actually the Read-Only method modifies the editor behavior IMO, there should be a test scenario for it.
Take a look at https://github.com/kommitters/editorjs-undo/blob/master/test/undo.test.js
Best!

@juliansg022 some comments were added. What about the tests?

@juanhurtado10 For this feature I think isn't necessary to add additional tests because the read-only mode establishes the contentEditable attribute in false (or deletes it) to the fields, preventing their editing, i.e., all work exactly equal, including the rendering, the only difference is that the containers won't have the contentEditable attribute. What do you think?

@juliansg022 actually the Read-Only method modifies the editor behavior IMO, there should be a test scenario for it. Take a look at https://github.com/kommitters/editorjs-undo/blob/master/test/undo.test.js
Best!

Thanks for the info. I'll check it out 😃


[RFC] Add each X item discount reward option in promotion rules

Problem
Allow providing a discount on each X item on checkout and orders.

Blocked by: https://github.com/saleor/saleor/issues/12889
Should be also done after: https://github.com/saleor/saleor/issues/12911, but not required, otherwise the reward_predicate must be added here
1. General Assumptions

Introduce a newEACH_X_ITEM reward type
Introduce the everyXItem field that will keep the info on which item the discount should be applied
Require providing the rewardPredicate (if not implemented yet, follow the steps from here this https://github.com/saleor/saleor/
Require providing rewardValueType, rewardValue and eachXItem
Update checkout and draft order calculations to apply the proper discount. Ensure the taxes are correctly calculated.

Examples
Buy 2 shirts get 1 free

💡 everyXItem is required when EACH_X_ITEM reward type is chosen

{
"promotionRule": {
  "rewardPredicate": {
    "__typename": "CategoryPredicate",
    "name": {
      "eq": "Shirt"
    }
  },
  "rewardType": "EACH_X_ITEM",
  "rewardValueType": "PERCENTAGE",
  "rewardValue": 100,
  "everyXItem": 3,
  }
}

Acceptance Criteria

[ ] The taxes should be correctly calculated

2. API changes
Mutations

Update the promotion inputs with everyXItem field
Update the following mutations: promotionCreate, PromotionRuleCreate, promotionRuleUpdate

The eachXItem must be positive value above 0
When EACH_X_ITEM reward type is chosen require: rewardPredicate, rewardValueType, rewardValue and eachXItem

input PromotionRuleInput @doc(category: "Discounts") {
  ...
  everyXItem: Int
}

input PromotionRuleCreateInput @doc(category: "Discounts") {
  ...
  everyXItem: Int
}

input PromotionRuleUpdateInput @doc(category: "Discounts") {
  ...
  everyXItem: Int
}

Types

Extend PromotionRule with everyXItem
Extend RewardTypeEnum with EACH_X_ITEM

type PromotionRule implements Node @doc(category: "Discounts"){
  ...
  everyXItem: Int
}

enum RewardTypeEnum @doc(category: "Discounts") {
  ...
  EACH_X_ITEM
}

3. Database changes

Extend PromotionRule with  every_x_item

class PromotionRule:
    ...
    every_x_item: IntField

4. To Do list

[ ]  Extend the rewardType enum
[ ]  Introduce the eachXItem field
[ ]  Update the mutations with proper validation
[ ]  Update the order and checkout price recalculations
[ ]  Ensure tax for flat rates and Avatax are properly calculated

5. To Test

[ ] Ensure the discount working correctly with fixed and percentage values
[ ] Check with price ovverride

Postponed for now.


Possibility to assign an IPv4 and IPv6 address to ansible_host

Proposal: Possibility to assign an IPv4 and IPv6 address to ansible_host
Author: Josef Stautner <@vlcty>
Date: 2019-06-01

Status: New
Proposal type: core design
Targeted release: future release
Estimated time to implement: unknown

Motivation
The support and deployment of IPv6 enabled networks and hosts is growing. My hosts are also using IPv6 whenever possible. Yet most of the setups needs some sort if IPv4 connectivity. To smooth the transition I'd like to tell ansible an IPv4 and IPv6 address for each host. Currently you can only set an IPv4 or an IPv6 address.
Problems
You have to choose which IP version you want to support in your network. If you choose IPv4 you will have a hard time in the near future moving on to IPv6.
Solution proposal

Allow ansible_host to be a list of IP adresses like this:

---
ansible_host:
   - 2001:0db8:037f:b000:5054:ff:fe22:c14e
   - <IP_ADDRESS>

Introduce a new variable like ansible_host6:

ansible_host: <IP_ADDRESS>
ansible_host6: "2001:0db8:037f:b000:5054:ff:fe22:c14e"

I tend to solution proposal number 2. It should be ensured that IPv6 is preferred over IPv4 but a fallback should be possible.
Dependencies (optional)
None that I know of.
Testing (optional)
Test cases would be:

Prefer IPv6 over IPv4
Fallback to IPv4 if IPv6 fails
Fallback to IPv4 if IPv4 fails

Documentation (optional)
This feature should be documented: https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html
Anything else?
I've not tested what happens when I set a hostname instead of the IP. I assume that the mechanism would already work. However I don't like the idea of hostnames in ansible. I configure the DNS servers I query with ansible. If something fails or I've to recover from a desaster I can't rely on DNS.

The ansible_host value is blindly passed to whatever connection method is being used. Each individual connection method would need to have support for specifying multiple possible IP addresses, which isn't really practical. An alternate method would be to have ansible test a connection using each address in the list, but there's no good way to know whether a connection failed because of the IP provided or something like an auth failure or sunspots.

Pure IPv6 it will be then.


Introduce distinguished GenesisPoint :: Point

This is an alternative starting point for the same goal as #635. It is based on the complain in https://github.com/input-output-hk/ouroboros-network/pull/635#pullrequestreview-256044624 that there's too much all changing at once. This PR attempts to do just the first step, but one that's a lot less disruptive. The goal would be to then consider doing the second step of distinguishing a block point from a point that may also refer to the genesis point.
This patch does leave a couple TODOs where there are dubious uses of genesisSlot / Slot 0 or genesisBlockNo.
This changes the Point type from this:
data Point block = Point {
       pointSlot :: SlotNo,
       pointHash :: ChainHash block
     }

which relies on:
data ChainHash b = GenesisHash | BlockHash (HeaderHash b)

To this:
data Point block = GenesisPoint | Point !SlotNo !(HeaderHash block)

Everything else in the patch is just knock-on changes.
The motivation is to avoid having to say that a genesis point has a slot
number. Nevertheless, to avoid excessive disruption, this patch keeps
the old field names as functions
pointSlot :: Point block -> SlotNo
pointHash :: Point block -> ChainHash block

which are defined for the GenesisPoint following the previous convention:
pointSlot GenesisPoint   = SlotNo 0
pointHash GenesisPoint   = GenesisHash

To abolish even talking about the slot number for the genesis point will require a further, more disruptive, change: distinguishing between a point that can only refer to a block, and a point that may also be the genesis point. This patch is a possible step towards that.

In the original pull request, @mrBliss suggests a nice improvement https://github.com/input-output-hk/ouroboros-network/pull/635#issuecomment-507139827
Turns out that's exactly what I've done in that very patch https://github.com/input-output-hk/ouroboros-network/pull/635#issuecomment-507139827
Why don't we use that?

@dcoutts If you insist upon re-doing the work I've already done in #635, fine. But I require a separate BlockPoint slot hash type which does not include the origin point. data Point block = GenesisPoint | Point !SlotNo !(HeaderHash block) is not good enough. First: it should not use HeaderHash block, it should be parameterized on the hash instead (and ideally the slot as well). Second: the GenesisPoint should be added-on as necessary by a type isomorphic to Maybe. This type should be a functor, as it's often useful to fmap it.

@dcoutts I think we can delete this branch, this has been solved in #706


adds "Principles of Antifragile Software"

"Principles of Antifragile Software" is a position paper that discusses many facets of antifragility, incl. chaos engineering.
--Martin

Thanks for the contribution!

Thanks for this awesome list.


Message queue dies and consumes same message several times

We noticed that a process like datagrid export with large amount of data (> 1MM records) was not completing event after waiting days with php process running.
Test prerequisites:

2MM contacts loaded in db with phones, address, etc
4 consumers listening for messages on MQ

Steps to reproduce:

Click on export button from contact datagrid
Wait (> 2 hours) and check cache import_export folder to see what files process is writing

After process runs for some time, another php process start and after some more time other process starts, until all 4 consumers are busy with same export job. We came to this conclusion by checking on cache folder that shows 4 files for the same export being written at the same time, but all 4 started with similar time difference. With 4 processes running system hangs due to overload and hard drive got filled with this 4 large files.
Only way to complete this export was to leave only one consumer in MQ, but this left MQ busy with that export for 6 hours preventing users to perform other MQ related tasks.
Our conclusion is that message consumer disconnects from php process that is running, and assumes that has to start it again even if other instance is running.
A locking technique should be placed to ensure same process does not run more than once concurrently and also check why MQ ignores a process is still running and try to start job again.

Somewhat related to https://github.com/orocrm/platform/issues/679

@sadortun might be, but still this is not returning any log so we're not sure if its related


chore: fix husky git hooks

Husky hooks were moved from package.json and .huskyrc.json to .husky directory in Husky v6.
See https://typicode.github.io/husky/#/?id=migrate-from-v4-to-v8

Checklist

[x] commit message and code follows the Developer's Certification of Origin
and the Code of conduct

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 99.716%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
425

Relevant Lines:
425

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 99.716%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
425

Relevant Lines:
425

💛  - Coveralls

shouldnt we use @fastify/pre-commit?

shouldnt we use @fastify/pre-commit?

Up to @aboutlo


SAK-33399 Search service decimal fix

So... you are not maintaining the current released sakai with bug fixes?

The Sakai community maintains 11.x via a maintenance branch strategy. A JIRA must be created for every issue. The PR should be submitted against the JIRA. Once the PR is accepted, the JIRA will transition to Resolved status. The QA team then verifies the bug was fixed. Then, if the "11.x Status" on the JIRA is set to "Merge", the maintenance branch maintainer will merge the fix into the maintenance branch.

Hi Sam, I still don't get it. In this case the code has been rewritten so the original (11.x) problem is not in the master. You are saying you won't fix bugs in maintenance unless they are in master too?

If it's a special 11.x that does not apply to master, then yes, submit it as a PR and make it clear why it is a special PR against 11.x

Also this should be using the utility method
FormattedText.getNumberFormat(dec);

My fault I missed the problem in master too. I did not search for the bug thoroughly enough.
For this case I think it's overkill to use FormattedText and juggling with decimal format. It is a double representing a size in GB that should be output in the statistics view for a search admin.


Test add fail on stderr to scan

I will merge this as well as the template changes, to ensure we don't start logging things to stderr on a regular scan :blush:


Fix broken link in packages/eslint-plugin/README.md

Merging this without a CLA as it's just a docs tweak.

Thanks @chalkygames123!


LAB 10 review security role, is not reflecting Michael Blythe's info as requested

Which lab or demo?
Lab Enforce Row-Level Security PL 300 github (12)
Is your feature request related to a problem? Please describe.
Task 2: Enforce row-level security (step 13 result is not what I get despite following the labs multiple times.)

Describe the solution you'd like
Expression userprincipalname is not returning with the user role suggested in the lab.
Describe alternatives you've considered
I tried creating a different role, replaced the reps name changed the filter. Please assist... Trainee is facing a lot of issues due to this.
Additional context
Add any other context or screenshots about the feature request here.
Note: To share feedback for the slides, please use the MCT Courseware Forum.

userprincipalname() function is used only when you publish to Power BI Service. Inside Power BI Desktop when you test you provide user's email and Power BI emulate a call of this function with entered by you email value. if this user exist in the table the table will get filtered only to the rows having that email value. You need to select the role you created and Other when testing. Also make sure you created role filter on the right table

Hey Angie,
The lab was practiced by my trainee while i observed.
Steps were exact... This has happened a couple of times in the past too
wherein the results aren't exact.
Hope this helps!
Regards,
Yash
On Wed, Feb 22, 2023, 19:38 Angie Rudduck @.***> wrote:

@Yash-malhi https://github.com/Yash-malhi can you confirm the steps
were followed exactly? I am able to reproduce the expected behavior
following the instructions.

As @ed7257 https://github.com/ed7257 stated, you need to select both
salesperson role that was just created AND select the other user to enter
@.** @.**>".
Also make sure that you are on the correct table that you created
the filter for. The lab instructs you to do it on Salesperson (Performance)
but there is also a Salesperson table, which it doesn't work on without a
filter.

[image: image]
https://user-images.githubusercontent.com/34583336/220369745-32c5db68-2a13-4751-b72e-f1aa84d9e869.png
—
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftLearning/PL-300-Microsoft-Power-BI-Data-Analyst/issues/165#issuecomment-1440074598,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVALH4BHMLMRPUAATXC6JPTWYYMVJANCNFSM6AAAAAAUYSFJZE
.
You are receiving this because you were mentioned.Message ID:
<MicrosoftLearning/PL-300-Microsoft-Power-BI-Data-Analyst/issues/165/1440074598
@github.com>

@Yash-malhi Thanks for the additional information. Without seeing it firsthand, I can't say for certain what happened. I'm not able to reproduce it, and it's easy to miss one of the steps leading to wrong behavior.


Return the cluster that was used in the query execution as response metadata

We run several Trino clusters behind the gateway and would like the ability to store which cluster was used in query execution for each specific request on the client side.
Our client side stores a whole bunch of more useful metadata about each query executed within our application, so it makes sense for us to store all the metadata in one place.
We're planning on exposing this information back to the client using HTTP response headers. I see that the Gateway code already unpacks the response header from the downstream requests and sends them back to the client; I presume that we'll just have to modify the code to also add the cluster name to the header

That sounds good. But, there are cases that system administrators would like to conceal cluster names, I think.
So, it's good to configurable whether we can expose cluster names or not.

Thanks. It looks good to me. ✅

@yuokada - can you approve the PR please?

I'm just a user of Trino. Sorry, I have no power to approve your PR.

I'm not convinced that using the HTTP headers and just add the cluster name for now is the right approach. If we add that now we probably end up with more and more requests to add all sorts of other data as HTTPS headers. I'm wondering if it would be better to find an encapsulating entity, maybe a session cookie or something else to just passed back and then individual users can stuff whatever they want into that without us having to adjust code. In fact I think this already might work as desired with the cookie based routing or it would be possible to adjust at least. wdyt @willmostly

@mosabua - Not sure if I followed completely. Can you please point me the code on where the destination cluster info stuffed in the cookie today? Thanks!


help me pls

Describe your problem here.
i have a problem with hmm.json file
when I run the command haxelib run hmm install I get this result:
Validation error: hmm.json not found in current working directory
Use "hmm help" to see usage
and when I run hmm help then I get this:
"hmm" is not an internal or external
command, executable program, or batch file.
help me pls
Are you modding a build from source or with Lua?
Source
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
no

basically you need to install hmm inside psych engine source code like this:

thanks it works

basically you need to install hmm inside psych engine source code like this:

hey there i'm having the same problem and kinda not getting what you mean installing hmm inside the source code mind explainig it if you can? thanks


HV-1793 Upgrade to JavaMoney 1.1 and Moneta 1.4.2

In passing drop OSGi support for Java Money as I got some issues and I'm
leaning towards giving up on OSGi.

We can probably close this one since all OSGi stuff is disabled in the recent versions of HV... But if you'd want to keep it - please reopen it back. Thanks 😃


Make dpath configurable

truffle-hdwallet-provider is hardcoded to derive only Ethereum addresses. Other networks, RSK for example, derive their addresses using different dpaths.
This PR adds a new parameter networkId to the provider constructor (with ethereum 60 as default) and uses it to make dpath configurable.

Hi @alepc253 unfortunately the term networkId has significance in the context of multi-network Ethereum and it would be very easy for users to mistake this field as the ID of the network to which they're connecting (as returned by the net_version RPC call). Instead I think it's a better approach to let the user define the entire HD path rather than this portion of it.
#64 achieves that goal, so I think I'll merge that one instead.
That said, thanks so much for contributing!


[TypeError]   can't intern String when building project

[x] I am on the latest Poetry version.
[x] I have searched the issues of this repo and believe that this is not a duplicate.
[x] If an exception occurs when executing a command, I executed it again in debug mode (-vvv option).

OS version and name: archlinux
Poetry version: 0.12.8
Link of a Gist with the contents of your pyproject.toml file: https://gist.github.com/DrPyser/4a0e7109057d181b5c84455247ca2631

Issue

When running command poetry build, it fails building the sdist.
$ poetry build -vvv
Using virtualenv: /home/drpyser/.cache/pypoetry/virtualenvs/kafka-utils-py3.7
Building kafka-utils (0.1.0)
 - Building sdist

[TypeError]
can't intern String

Exception trace:
 /home/drpyser/.poetry/lib/poetry/_vendor/py3.7/cleo/application.py in run() at line 94
   status_code = self.do_run(input_, output_)
 /home/drpyser/.poetry/lib/poetry/console/application.py in do_run() at line 88
   return super(Application, self).do_run(i, o)
 /home/drpyser/.poetry/lib/poetry/_vendor/py3.7/cleo/application.py in do_run() at line 197
   status_code = command.run(input_, output_)
 /home/drpyser/.poetry/lib/poetry/console/commands/command.py in run() at line 77
   return super(BaseCommand, self).run(i, o)
 /home/drpyser/.poetry/lib/poetry/_vendor/py3.7/cleo/commands/base_command.py in run() at line 146
   status_code = self.execute(input_, output_)
 /home/drpyser/.poetry/lib/poetry/_vendor/py3.7/cleo/commands/command.py in execute() at line 107
   return self.handle()
 /home/drpyser/.poetry/lib/poetry/console/commands/build.py in handle() at line 27
   builder.build(fmt)
 /home/drpyser/.poetry/lib/poetry/masonry/builder.py in build() at line 21
   return builder.build()
 /home/drpyser/.poetry/lib/poetry/masonry/builders/complete.py in build() at line 18
   sdist_file = sdist_builder.build()
 /home/drpyser/.poetry/lib/poetry/masonry/builders/sdist.py in build() at line 75
   files_to_add = self.find_files_to_add(exclude_build=False)
 /home/drpyser/.poetry/lib/poetry/masonry/builders/builder.py in find_files_to_add() at line 91
   if self.is_excluded(file) and isinstance(include, PackageInclude):
 /home/drpyser/.poetry/lib/poetry/masonry/builders/builder.py in is_excluded() at line 73
   return filepath in self.find_excluded_files()
 /home/drpyser/.poetry/lib/poetry/masonry/builders/builder.py in find_excluded_files() at line 56
   for excluded in self._path.glob(excluded_glob):
 /usr/lib/python3.7/pathlib.py in glob() at line 1089
   drv, root, pattern_parts = self._flavour.parse_parts((pattern,))
 /usr/lib/python3.7/pathlib.py in parse_parts() at line 71
   parsed.append(sys.intern(rel))

build [-f|--format FORMAT]

Apparently, the problem is related to the "exclude" line in my pyproject.toml. Removing it solves the issue.

Commit 417d01d should fix the issue, it will land in the next bugfix release.

Release 0.12.9 is out.


Fix logic for fixing links in archives

Without this PR, running the sed statements in the Dockerfile would result in doubled archive version prefixes on the rel=canonical link, like:
cat target/v1.12/docker-cloud/faq/how-ssh-nodes/index.html

<!DOCTYPE html>

<meta charset="utf-8">
<title>Redirecting…</title>
<link rel="canonical" href="/v1.12/v1.12/docker-cloud/infrastructure/ssh-into-a-node/">
<meta http-equiv="refresh" content="0; url=https://docs.docker.com/v1.12/docker-cloud/infrastructure/ssh-into-a-node/">

Redirecting…

Click here if you are not redirected.

With this PR applied, that does not seem to happen. The resulting URLs are like:
cat target/v1.12/docker-cloud/faq/how-ssh-nodes/index.html

<!DOCTYPE html>

<meta charset="utf-8">
<title>Redirecting…</title>
<link rel="canonical" href="/v1.12/docker-cloud/infrastructure/ssh-into-a-node/">
<meta http-equiv="refresh" content="0; url=https://docs.docker.com/v1.12/docker-cloud/infrastructure/ssh-into-a-node/">

Redirecting…

Click here if you are not redirected.

Those two results are for local builds.

Netlify is a red herring, it thinks I am running against vnext-compose rather than docs-base...

The best way to test this is to merge it and then run the link checker against the latest container when it deploys with this docs-base. We can always revert.


EscPos.connect got 4 arguments, expected 3

I try to connect thermal printer to my react-native app via wifi network.
I call  await EscPos.connect("<IP_ADDRESS>", 9100) and receive an error EscPos.connect got 4 arguments, expected 3 .

Thank you for reporting, I have applied a fix and published a new version, please update and try again.


incorrect handling of namespace renamed export

The program searches for import with the candidate name first, then if not found, it will look for re-export.
This logic has a problem:  for example,
testmodule/index.js
import myFunc from './myFunc';
import { myOtherOtherFunc } from './reexport';
import * as things from './constants';
export {
  myFunc,
  myOtherOtherFunc as myOtherFunc,
  things as thangs,
  myFunc as things,
};
When the program searches for import of things, it will convert a import string

import { things } from 'testmodule',

into

import * as  things  from './tests/testmodule/constants',

while infact, it should be

import  things from './tests/testmodule/myFunc'

Another problem of this logic is:
It does not handle export from syntax
If testmodule/index.js contains
export {Foo2} from '/Foo.js';
The program could not find it because the re-export it handles must be separate import and export.
PR #7

This does not indicate breakage. The import gets transformed to that because you're exporting two things with the same name. It exports myFunc twice.


Issue with RelaxedPrecision and OpCompositeConstruct

I have the following shader:
                              Capability Shader
                              Capability Sampled1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 9
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 430
                              SourceExtension  "GL_EXT_nonuniform_qualifier"
                              SourceExtension  "GL_GOOGLE_cpp_style_line_directive"
                              SourceExtension  "GL_GOOGLE_include_directive"
                              Name 4  "main"
                              Name 9  "fragColor"
                              Name 11  "gl_DefaultUniformBlock"
                              MemberName 11(gl_DefaultUniformBlock) 0  "uTDPass"
                              MemberName 11(gl_DefaultUniformBlock) 1  "uTDCurrentDepth"
                              MemberName 11(gl_DefaultUniformBlock) 2  "exampleUniform"
                              Name 13  ""
                              Decorate 9(fragColor) RelaxedPrecision
                              Decorate 9(fragColor) Location 0
                              MemberDecorate 11(gl_DefaultUniformBlock) 0 Offset 0
                              MemberDecorate 11(gl_DefaultUniformBlock) 1 Offset 4
                              MemberDecorate 11(gl_DefaultUniformBlock) 2 RelaxedPrecision
                              MemberDecorate 11(gl_DefaultUniformBlock) 2 Offset 8
                              Decorate 11(gl_DefaultUniformBlock) Block
                              Decorate 17 RelaxedPrecision
                              Decorate 18 RelaxedPrecision
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypePointer Output 7(fvec4)
    9(fragColor):      8(ptr) Variable Output
              10:             TypeInt 32 1
11(gl_DefaultUniformBlock):             TypeStruct 10(int) 10(int) 6(float)
              12:             TypePointer PushConstant 11(gl_DefaultUniformBlock)
              13:     12(ptr) Variable PushConstant
              14:     10(int) Constant 2
              15:             TypePointer PushConstant 6(float)
         4(main):           2 Function None 3
               5:             Label
              16:     15(ptr) AccessChain 13 14
              17:    6(float) Load 16
              18:    7(fvec4) CompositeConstruct 17 17 17 17
                              Store 9(fragColor) 18
                              Return
                              FunctionEnd

Reflection fails since it's trying to reflect the RelaxedPrecision on result_id 18, however ParseNodes() does not assign the result_id to OpCompositeConstruct nodes. Isn't OpCompositeConstruct a load/store operation, and should be treated as such? The SPIR-V is coming out of GLSLang, and passes the SPIR-V validator.
Thanks

Also, shouldn't it also be handled for the arithmetic operators such as FSub?

Sorry for the bump on this, any thoughts? I'd be happy to submit a patch if my understanding is correct.

Sorry for the bump on this, any thoughts? I'd be happy to submit a patch if my understanding is correct.

It seems spirv-reflect doesn't recognize the OpCompositeConstruct op code, and falls through to default, skipping the instruction. Decoration parsing seems to already have relaxed precision flag in the node.
My understanding is that you are right.

Sorry for the late response. Support for RelaxPrecision initially wasn't prioritized because there wasn't a production case. I'll take a look using your shader as an example. If you're able to share more complex cases, it would be helpful.

Thanks for taking a look, I don't have a more complex example right now. I think the tricky part would be covering all of the possible cases. I wonder if anything that be pulled from the SPIR-V validator, since it knows to check for instructions where Relaxed Precision is legal and not.

Sorry again for the late response. It looks likeI had missed something you said earlier. If you're still willing to submit a patch - I'd love to take a look.


chore(integration-test): Update algorand snapshots

📝 Description
Update Algorand integration test snapshot
❓ Context

Impacted projects: LLC
Linked resource(s): N/A

✅ Checklist

[x] Test coverage
[x] Atomic delivery
[x] No breaking changes

🚀 Expectations to reach
Please make sure you follow these Important Steps.
Pull Requests must pass the CI and be internally validated in order to be merged.

Replaced with https://github.com/LedgerHQ/ledger-live/pull/3452


Control/Observe exit code based on logging level?

Hi Örjan,
I observe that if my application (which uses op/go-logging) ever issues a log message at level WARNING or higher, then when the application exits it exits with a non-zero exit code. So far I have not been able to figure out how this happens. Is this behavior controllable? Can it be observed? By that I mean if my main() is about to return (exit) how can I check if any part of the application has logged at WARNING or above and the program will return a on-0 code?
Thanks - Bishop Brock

Panic and Fatal functions do this. Does this explain your observation? Maybe you can provide us with a minimised example program.

Thank you for your reply, it was very helpful to know that go-logging was not causing this. It turns out that I was exec-ing the application (which logs to stderr) from a Tcl script, and I just learned that Tcl has the strange default behavior that if an exec-ed application writes anything to stderr it is considered a failure. Thanks again.


Update avalon core module name for upcoming new era

Fix loader action, for PR in getavalon/core#388

Since getavalon/core#418 (continuing from getavalon/core#388) has been merged, merging this as well :)

Thanks David


client.send([{payload1},{payload2}],...) seems that it could not possibly work

I dont understand at all what Client.send is doing by checking
    //client.js#377
    if (payloads[0].length && !payloads[1].length) {
    ...
    if (payloads[1].length) {
    ...

If payloads is an array of a "ProduceRequest is a JSON object" what does it mean to check the length of its elements? And what would be special about the first and second payload in this array? This code does not really make any sense at all.
I also see that there is no test for invoking send with an array of payloads. I wonder if this code had some plan that got forgotten about and with no tests it was noticed.
The actual behavior I see is that if you invoke send with an array of payloads only the last gets sent to kafka. (Because only the second if statement is true.)

Ok, I see. checkMetadatas() returns an array. But I still am only getting the last payload sent to kafka. Will continue digging.

Seems that protocol#groupByTopic eats payloads of the same topic:
function groupByTopic(payloads) {
    var r = payloads.reduce(function (out, p) {
        out[p.topic] = out[p.topic] || {};
        out[p.topic][p.partition] = p;
        return out;
    }, {});
    console.log("++++ ++++ protocol#groupByTopic: payloads=", payloads)
    console.log("++++ ++++ protocol#groupByTopic: r=", r)
    return r;
}

++++ ++++ protocol#groupByTopic: payloads= [ { topic: 'mtcagent-probes',
    partition: 0,
    messages: [ [Object] ],
    attributes: 0 },
  { topic: 'mtcagent-probes',
    partition: 0,
    messages: [ [Object] ],
    attributes: 0 } ]
++++ ++++ protocol#groupByTopic: r= { 'mtcagent-probes':
   { '0':
      { topic: 'mtcagent-probes',
        partition: 0,
        messages: [Object],
        attributes: 0 } } }

    var r = payloads.reduce(function (out, p) {
        out[p.topic] = out[p.topic] || {};
        out[p.topic][p.partition] = p;           // OVERWRITE

If there multiple payloads for the same topic and the same partition (like in my example) there will be data loss, no?

Guys this is a confirmed bug.  Can you label it as such.  This one just got us pretty bad.  Your documentation makes no distinction between when array you can include in payloads.

Looks like this is the same issue as #288. I will update the docs for the next release.


Readd locales after they were fixed with https://github.com/brave/ele…

Readd locales after they were fixed with https://github.com/brave/electron/commit/a1ef630bbf055e170d8d5e2b70f3ba36e993356d
rename electron => muon in package.json and readme.md
Bump to version 2.4.1

cc: @bbondy @bridiver
If this is accepted, do we need to publish to NPM?  browser-laptop doesn't reference this package by the git repo:
https://github.com/brave/browser-laptop/blob/chromium54/package.json#L156

++

I published 2.4.2 by the way

https://www.npmjs.com/package/muon-winstaller :lion:


Having trouble creating a functions project

Hi there, first of all thanks for creating this plugin!
I have already set up firebase manually in my current nx project (let's call it nx-project) but now i want to add a functions project. Somehow i can't get it to work though.
I tried initiating a firebase project like this nx g @simondotm/nx-firebase:app firebase-app, which worked fine. Although I don't know if that is neccessary in my case. But when I then tried adding a functions project I get different error messages depending on what i tried:
nx g @simondotm/nx-firebase:function fb_functions --app=nx-project => Cannot read properties of undefined (reading 'options')
nx g @simondotm/nx-firebase:function fb_functions --app=firebase-app =>  The "path" argument must be of type string. Received null
Hope you can help me out here.
I'm using nx 16.6.0 and nx-firebase 2.0.0-beta.1

Are you 100% sure that this firebase app was generated in the same version as the functions app?

I haven't updated any dependencies in between if that's what you're asking. However for now I helped myself by not using this plugin and integrating functions manually.

ok thanks for reporting this, I'm hoping to get time to take a look at this over next couple of weeks.
its true that this plugin is really only adding value around scaffolding firebase function & app via the generators, and if anyone wants to just setup their Nx workspace manually using esbuild etc. its perfectly valid to do that.
for my own workflow uses, the real benefit from the plugin is in the sync generator to help manage the various configs when renaming or refactoring.

@DieTapete I'm unfortunately not able to reproduce this. I created a 16.6.0 nx workspace and generated a firebase-app project, followed by:
simon@m1 testnx % npx nx g @simondotm/nx-firebase:function fb_functions --app=nx-project

>  NX  Generating @simondotm/nx-firebase:function

 >  NX   A firebase application project called 'nx-project' was not found in this workspace.

   Pass --verbose to see the stacktrace.

simon@m1 testnx % npx nx g @simondotm/nx-firebase:function fb_functions --app=firebase-app

>  NX  Generating @simondotm/nx-firebase:function

UPDATE package.json
CREATE packages/fb-functions/src/assets/.gitkeep
CREATE packages/fb-functions/src/main.ts
CREATE packages/fb-functions/tsconfig.app.json
CREATE packages/fb-functions/tsconfig.json
CREATE packages/fb-functions/project.json
CREATE .eslintrc.json
CREATE .eslintignore
UPDATE nx.json
UPDATE .vscode/extensions.json
CREATE packages/fb-functions/.eslintrc.json
CREATE packages/fb-functions/jest.config.ts
CREATE packages/fb-functions/tsconfig.spec.json
CREATE packages/fb-functions/package.json
CREATE packages/fb-functions/readme.md
UPDATE packages/firebase-app/project.json
UPDATE firebase.json

I also made a PR with an update of the plugin to Nx 16.6.0 also, and all tests & e2e checks are passing.
https://github.com/simondotm/nx-firebase/pull/135


Fix build documentation

The last changes in the documentation were not taken by the readthedoc webpage, build failed due to non-existent requirements_prod.txt file in the main directory of the repository. The error can be seen in the build history, e.g. https://readthedocs.org/projects/columnflow/builds/22342073/ and it seems that this specific requirement file is required by the docs/requirements.txt file. At some point in time (https://github.com/columnflow/columnflow/tree/e6ce4a31115b7b7ec9e3f949c4f70e336c443f06), the requirements_prod.txt file did contain dependencies like luigi, scinum, six, and pyyaml. Where are they from in the current workflow, such that the path can be adjusted? Or was this a requirement file created only for the documentation and needs to be recreated?

solved in https://github.com/columnflow/columnflow/commit/1b66136bdb6ec36b95559bcd0bebd9baf4693217 for the feature/docs_best_pratices branch

Fixed in #332


undefined method `get?' for 302:Integer

This issue has been reported on stackoverflow and I see that it has not yet been addressed:
https://stackoverflow.com/questions/49294119/undefined-method-get-for-302integer
From SO:
describe 'DELETE /salesman/:id' do
  let!(:salesman) { create :salesman }
  subject(:request) do
    delete salesman_path(salesman), headers: auth_headers
  end

  it 'redirects to index' do
    expect(request).to redirect_to company_salesmen_path(salesman.company)
  end
end

Failure/Error: expect(request).to redirect_to company_salesmen_path(salesman.company)

NoMethodError:
    undefined method `get?' for 302:Integer
  # /Users/dennish/.rvm/gems/ruby-2.5.0/gems/turbolinks-5.1.0/lib/turbolinks/assertions.rb:37:in `turbolinks_request?'
  # /Users/dennish/.rvm/gems/ruby-2.5.0/gems/turbolinks-5.1.0/lib/turbolinks/assertions.rb:6:in `assert_redirected_to'
  # ./spec/requests/salesmen_spec.rb:206:in `block (3 levels) in <top (required)>'

Could you please open an issue in the turbolinks-rails repository? This repo is for the JavaScript library. Thanks!

my bad: https://github.com/turbolinks/turbolinks-rails/issues/38


[BugFix] fix clound native primary key table file gc

In current implementation, we don't do data file gc by tabletMeta reference any more, we need to add  orphan data files to TabletMeta's orphan_files instead.

Add .del files to TabletMeta's orphan_files when transaction rollback or commit.
Add rewrite segment file to TabletMeta's orphan_files when doing partial update after transaction commit.

What type of PR is this:

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.1
[ ] 3.0
[ ] 2.5
[ ] 2.4

[FE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[BE Incremental Coverage Report]
:heart_eyes: pass : 34 / 34 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
src/storage/lake/meta_file.cpp
7
7
100.00%
[]

:large_blue_circle:
src/storage/lake/tablet_manager.cpp
21
21
100.00%
[]

:large_blue_circle:
src/storage/lake/rowset_update_state.cpp
1
1
100.00%
[]

:large_blue_circle:
src/storage/lake/update_manager.cpp
2
2
100.00%
[]

:large_blue_circle:
src/storage/lake/txn_log_applier.cpp
3
3
100.00%
[]

[FE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[BE Incremental Coverage Report]
:disappointed: fail : 24 / 34 (70.59%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
src/storage/lake/tablet_manager.cpp
9
18
50.00%
[589, 590, 591, 592, 825, 826, 827, 882, 883]

:large_blue_circle:
src/storage/lake/meta_file.cpp
8
9
88.89%
[70]

:large_blue_circle:
src/storage/lake/rowset_update_state.cpp
1
1
100.00%
[]

:large_blue_circle:
src/storage/lake/update_manager.cpp
3
3
100.00%
[]

:large_blue_circle:
src/storage/lake/meta_file.h
1
1
100.00%
[]

:large_blue_circle:
src/storage/lake/txn_log_applier.cpp
2
2
100.00%
[]

[FE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[BE Incremental Coverage Report]
:disappointed: fail : 24 / 35 (68.57%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
src/storage/lake/tablet_manager.cpp
9
19
47.37%
[589, 590, 591, 592, 825, 826, 827, 833, 884, 885]

:large_blue_circle:
src/storage/lake/meta_file.cpp
8
9
88.89%
[70]

:large_blue_circle:
src/storage/lake/rowset_update_state.cpp
1
1
100.00%
[]

:large_blue_circle:
src/storage/lake/update_manager.cpp
3
3
100.00%
[]

:large_blue_circle:
src/storage/lake/meta_file.h
1
1
100.00%
[]

:large_blue_circle:
src/storage/lake/txn_log_applier.cpp
2
2
100.00%
[]

@Mergifyio backport branch-3.1


Multiple selection with check boxes to massive destroy

It's near to that request : https://github.com/gregbell/active_admin/issues/247
but just adding a checkbox in front of each entry in order to massive delete.
As in https://github.com/gregbell/active_admin/issues/247, massive edit would be also realy nice but need more modification than massive destroy.
Any idea to implement this quickly?

I'm still working on implementing #247 and it has been a challenge to get the UI work integrated tightly and appropriately.
You can hack this together in your own project in the mean time with checkboxes, by taking the following approach:

make the leftmost column in your table contain a checkbox
wrap the table_for call in a form, with the Rails helper form_for (Formtastic will not work since there is no underlying model for it to wrap)
point the form to the url helper generated from a call to collection_action
create a collection action on the controller, such as:

ActiveAdmin.register Post do
  collection_action :flag, :method => :post do
    Post.find( params[:selection] ).each do |post|
      post.flag! :ok
    end
  end
end

You should be able to get this working fairly quickly, if you just have a button on your view that submits the form and the user can have whatever checkboxes checked that he wants to perform the predefined action on.
#247 aims to implement a framework to allow you to define batch_actions that generate all of this for you, and provide a nice UI for the user to possibly have multiple batch actions to perform on the selection.

wrap the table_for call in a form, with the Rails helper form_for (Formtastic will not work since there is no underlying model for it to wrap)

I wonder if there is a way to do this without monkeypatching active_admin?
p.s.: batch_actions sound great!

@canapif the idea with batch_actions is that you can do something (delete, edit, favourite, mark as spam, whatever) to a bunch of different records, this isn't specific to just edit.
This seems to be a duplicate of #247 so I hope you don't mind if I close this.