how about webstorm support?

I personally never use webstorm, feel free to contribute...

+1

+1

You should be able to use this with WebStorm's import TextMate Bundle functionality, since the main file is a .tmLanguage file.

In webstorm, this works fine for me:
Open Settings => File Types find HTML in Recognized File Types, then add *.vue as a new Registered Patterns.

I use PHPStorm, and while this works, it doesn't recognize ES6 syntax so it throw faux syntax warnings :/

This works in webstorm
<script type="text/babel">
     // your code here...
</script>

Just make sure to add *.vue to the HTML file type as described by @weilao

@ifyio Any idea how to enable something similar for the style, so that

@duebbert Open Settings => Editor => Language Injections and create a new injection of type XML Attribute Injection using the following parameters:
Name: SCSS
ID: SCSS (SCSS files) (SASS plugin has to be enabled, otherwise it's not gonna be listed)
Local name: style
XPath condition: lower-case(@lang)='sass'
Worked for me.

@mmieluch Thanks, but unfortunately this didn't work for me (using PyCharm which might be the reason)

Thanks @ifyio . It worked

@mmieluch This didn't work for me either. I played a round with the XML Attribute Language injections quite a bit, trying to get them to work. This is the only thing keeping from from switching to vueify :(
Any chance you could export the Language Injection entry you made and share it with us? Maybe we're doing something wrong.

@textbookcharlie Yea, I got all excited and posted here immediately, but now it's not working for me either. I use PhpStorm EAP versions and at that time I was playing around with other highlighting packages. Now I have a new version of the IDE and I haven't the slightest idea how to set it up again. Sorry to disappoint, but I'm as stuck as you guys... I'll edit my previous comment and strike out the solution as a no-go.

There's a feature request for inline LESS/SASS support in JetBrains bugtracker:
https://youtrack.jetbrains.com/issue/WEB-14762
I suppose upvotes are quite welcome :)

@dcorb Does it work for you when you use the @click shorthand for v-on:click ?

Thanks. It worked

Please upvote this one:
https://youtrack.jetbrains.com/issue/WEB-19082
I downloaded latest PHPstorm 10.0.3, still the previous screenshot I did with v-on-click  in red is the same. Nothing has changed. Has anyone tried PHPstorm 11 EAP ?
@mmieluch in this issue said that the LESS/SASS support feature request, quoting:  "are planning to fix in the next release cycle"
@noleafclover614
@click syntax in the screenshot doesn't show like an error.

Vue syntax highlight for IDEA: https://github.com/henjue/vue-for-idea

Hi all,
In the next PhpStorm/Webstorm EAP it will be possible to inject sass/scss/less/stylus languages in style tag using rel attribute. E.g.:
<style rel="stylesheet/less">
  @var: red;
  div { color: @var }
</style>
<style rel="stylesheet/scss">
  $var: red;
  div { color: $var }
</style>

Is this ok for you or something else is needed for style tag? Just in case, the question is only about stylesheet-part, I have nothing to do with html and js parts.

@zolotov Well, we could always do something like
<style lang="less" rel="stylesheet/less">
  @var: red;
  div { color: @var }
</style>

<style lang="sass" rel="stylesheet/scss">
$var: red;
div { color: $var }
</style>

I personally would have absolutely no problem with additional attribute, since I use live templates/snippets for blocks like those anyway.
So yea, for me sounds great, nice one! :+1:

@mmieluch Thanks for reply. I didn't know about lang attribute and its possible values in vuejs. Could you point me where I can read about it please?
rel attribute is used because of documentation at http://lesscss.org/#using-less. If vuejs uses lang attribute I can support it as well, but I need any doc about this and also I should know which attribute is more important, e.g. what language should be injected in case of:
<style lang="sass" rel="stylesheet/less">
</style>

@zolotov you can read about lang attribute in the official vue-loader documentation: http://vuejs.github.io/vue-loader/configurations/pre-processors.html
In Vue components rel attribute hasn't got any special meaning so it would be great to have support based only on lang attribute.

@zolotov Sure, mate. So Vue allows to create components in a single file, like so: http://vuejs.org/guide/application.html#Single_File_Components Then, single file components are being transformed using vue-loader: http://vuejs.github.io/vue-loader/configurations/pre-processors.html
In your example, vue-loader would transform it as a SASS file, but WebStorm would apply formatting for Less.
However, looking at the semantics of both rel and lang attributes, I believe lang is a far better option. As far as I'm aware style tag does not even have a rel attribute in the specification, but it does have lang, as a global one: https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang And, if you look again at the Less documentation you linked, you can see they use it not in a local context of a style tag, but in a link, which makes sense in that case, but not when you define your Less/SASS/whatever locally, in-file. Please feel free to correct me if I'm wrong.
It would be nice to get some more input from other community members interested in this.

@mmieluch @piotros Thanks for the links, will investigate.
As for attributes, rel is presented in spec of (style tag](https://www.w3.org/TR/html401/present/styles.html). However lang attribute is about natural language, not programming language, so both approaches are lame in semantic perspective :)

@zolotov As for the spec: take a closer look ;) rel is used always in context of link tag, not style. rel symbolises another file in relation to the current document.
I do agree about lang though, it's for natural language... But, since I still believe rel is not a part of the spec for style tag, it would be a better option.
Semantics aside, would it be a lot of hassle to base the formatting on lang -- Seeing as all the other formatting plugins (including this one) already use it? I'm thinking about compatibility here.

@mmieluch you're right, indeed. Anyway both variants have nothing to do with semantics and specs.
I'm not sure that I understood your question about compatibility

@zolotov I meant it would be the best of both worlds if we could have proper highlighting based on lang attribute, because plenty of other plugins, like vue-syntax-highlight, are already using it to determine the underlying language within the script tag. Would be lovely if Web/PhpStorm could do it too, so we'd be in line with Sublime/Atom users.

Agree with @mmieluch.
IMHO there is no need to strictly follow specs delivered by W3C in this case. Top level HTML tags inside Vue components (template, style and script) aren't appended directly into DOM.
In this case we should treat Vue/vue-loader documentations as a main specs for single file vue components.

I end up switching between PHPStorm and sublime in order to work on a laravel/vue project, I hope PHPStorm supports the .vue format soon.

+1

Thanks @zolotov for implementing the rel. You made my PhpSorm usable with Vue again :) Yes, it's a workaround and not fully Vue-compatible solution, but it works and I'm quite happy with it. Of course, it still would be lovely to get the IDE support we discussed earlier .
To sum up for other struggling developers, this how you can currently set up Vue components (I'll use PhpStorm for reference, since this is my platform):

use PhpStorm 11 EAP - my current version is 144.4199, I don't know if it worked in earlier versions;
for ES6 recognition within script tag use additional type="text/babel" attribute:

<script type="text/babel">
...
</script>

for SASS recognition within style tag I use additional `rel="stylesheet/scss" attribue:<style lang="sass" rel="stylesheet/scss">
...
</style>

Here's a screenshot with a test component and no errors thrown by the IDE:

Happy coding!

Dammit, we're almost there... Everything seems to be working fine using the setup above, even in the latest EAP version, EXCEPT... commenting. Right now there's a bug in PhpStorm (I would assume in all IDEA-based products) where it applies HTML-style comments instead of LESS/SASS-style ones.
I reported a bug, we'll see if and when it gets resolved.

*.vue do not support lang='jade', lang='sass' code style auto formate in webstorm

Okay, <style lang="scss" rel="stylesheet/scss" type="text/css"> works fine
But how about .jade syntax hightlight?
I mean in templates: <template lang="jade">?

https://youtrack.jetbrains.com/issue/IDEA-106449#tab=Comments
Webstorm doesn't support template language injection... Issue has been up since 2013 with no official word.

@dddomin3 Thanks, I've knew it, but hope to find a workaround.
Btw, did you know, you also can import TypeScript tables for vue:
Settings(Preferences) => Language & Frameworks =>  JavaScript => Libraries. Click Download, Switch to TypeScript community stubs. And download all tabs with vue word.
I'm not sure how it's helps, but anyway it helps for other libs (like chai, etc)
Example: https://youtu.be/4mKiGkokyx8?t=84 (from 1:24)
Besides of all I've shared all the tricks above at stackoverflow: http://stackoverflow.com/questions/36929395/how-to-integrate-webstorm-with-vue-js/36929396#36929396

Using <script lang="babel"> worked for me.

Anyone fighting scss support, due to close of https://youtrack.jetbrains.com/issue/WEB-14762 this syntax for scss styles worked for me: <style lang="scss" type="text/scss" scoped></style> (scoped is optional) with latest PhpStorm.
Plus, instead of configuring HTML File Type for *.vue I used plugin https://github.com/henjue/vue-for-idea because it seems to recognize some directives.

@Namek I followed the solution you provided. The IDE can succesfully recognize the SCSS syntax without errors BUT now I am not able to build the Vue module using gulp+laravel-elixir-vue-2+laravel-elixir-webpack-official. Please see also this issue here https://github.com/vuejs/laravel-elixir-vue-2/issues/15

@iraklisg Just use lang="sass" like you described in the related issue. Nothing wrong with that. Works for me.

@mmieluch I do confirm that using lang="sass" works fine in terms of compiling the module.
However, in terms of syntax highlighting, this will not work as expected because the IDE is expecting that we'll use the old indented SASS  syntax and thus it shows synatx errors when using Sassy SCSS syntax.
PS: I use the PHPSrorm 2016.2.2 IDE with vue-for-idea plugin

@iraklisg Unfortunately the plugin you mention is broken, outdated and removed from the official JetBrains plugins repository. Using it is NOT recommended. It's not a problem with this package.

@iraklisg As a workaround you can use this syntax:
<style lang="sass" rel="stylesheet/scss">

</style>

See the screenshot: https://github.com/vuejs/vue-syntax-highlight/issues/3#issuecomment-188223377
It's been already mentioned in this issue several times.

@mmieluch thank you for pointing out this. I open a new issue in the right place this time https://github.com/henjue/vue-for-idea/issues/69

Leaving a notice that rel="stylesheet/scss" doesn't work for EAP webstorm. Plugin or not won't matter.
Solution wanted. : 3

Guys, just FYI:
WebStorm started supporting VueJS officially (from 2017.1 [blog])

@se-panfilov, I am using webstorm 2017.1, but it still can't support sass in .vue file.

@ibufu Try:
<style lang="scss" rel="stylesheet/scss"></style>
The lang and rel attributes have to match.

@ibufu @janekkkk rel attribute is not needed anymore.

{
  test: /\.vue$/,
  loader: 'vue-loader',
  options: {
    loaders: {
      scss: 'vue-style-loader!css-loader!sass-loader', // <style lang="scss">
      sass: 'vue-style-loader!css-loader!sass-loader?indentedSyntax' // <style lang="sass">
    }
  }
}

<style lang="scss>"
and make sure Vue.js Templates is associated with *.vue in Editor > File Types. It works for me.

Thought I would leave this here: https://www.jetbrains.com/help/webstorm/2017.1/vue-js.html?search=vue

I believe vue files are now supported in webstorm natively. Closing this issue for now. Thank you.


Remove repeated parts from the remaining chapters (the original book chapters)

Description:
After adding the training notebooks 01 to 04 at the beginning of the CUQI-Book, we need to identify and remove parts of the original chapters that were used for the course that are repeated in the training material (01 to 04) and remove them.
Definition of done:

[ ] Repeated parts are identified
[ ] Removing the repeated parts is implemented, reviewed and merged

@chaozg, fyi, I am assigning this to myself :)


Add EVP_DigestSqueeze() API.

Fixes #7894
This allows SHAKE to squeeze multiple times with different output sizes.
The existing EVP_DigestFinalXOF() API has been left as a one shot
operation. A similar interface is used by another toolkit.
The low level SHA3_Squeeze() function needed to change slightly so
that it can handle multiple squeezes. This involves changing the
assembler code so that it passes a boolean to indicate whether
the Keccak function should be called on entry.
At the provider level, the squeeze is buffered, so that it only requests
a multiple of the blocksize when SHA3_Squeeze() is called. On the first
call the value is zero, on subsequent calls the value passed is 1.
This PR is derived from the excellent work done by @nmathewson in
https://github.com/openssl/openssl/pull/7921
See also PR https://github.com/openssl/openssl/pull/21443

Checklist

[x] documentation is added or updated
[x] tests are added or updated

I will readily admit that my assembler skills are very limited for all these platforms..
If people are good at particular assembler, then please be critical.
The code just needs to pass an extra value, then do a test and branch based on this value.. How hard can it be ? :)

$$\left( \sum_{k=1}^n a_k b_k \right)^2 \leq \left( \sum_{k=1}^n a_k^2 \right) \left( \sum_{k=1}^n b_k^2 \right)$$

@tom-cosgrove-arm Any chance you could run this locally and see if it has issues on ARM.. AFAIKT the code is ok.

On aarch64 Linux, with clang
$ uname -m
aarch64

$ cat /etc/os-release | grep PRETTY
PRETTY_NAME="Ubuntu 20.04.5 LTS"

$ clang --version
Ubuntu clang version 14.0.6
Target: aarch64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm-14/bin

$ perl Configure linux-aarch64 CC=clang -Wall -Wextra -Werror -Wno-unused-parameter -Wno-missing-field-initializer
Configuring OpenSSL version 3.2.0-dev for target linux-aarch64
Using os-specific seed configuration
Created configdata.pm
Running configdata.pm
Created Makefile.in
Created Makefile
Created include/openssl/configuration.h

**********************************************************************
***                                                                ***
***   OpenSSL has been successfully configured                     ***
***                                                                ***
***   If you encounter a problem while building, please open an    ***
***   issue on GitHub <https://github.com/openssl/openssl/issues>  ***
***   and include the output from the following command:           ***
***                                                                ***
***       perl configdata.pm --dump                                ***
***                                                                ***
***   (If you are new to OpenSSL, you might want to consult the    ***
***   'Troubleshooting' section in the INSTALL.md file first)      ***
***                                                                ***
**********************************************************************

clang-14 $ make -j3
/usr/bin/perl "-I." "-Iutil/perl" "-Mconfigdata" "-MOpenSSL::paramnames" "util/dofile.pl" "-oMakefile" crypto/params_idx.c.in > crypto/params_idx.c
:
:
clang  -I. -Iinclude -Iproviders/common/include -Iproviders/implementations/include  -DBSAES_ASM -DECP_NISTZ256_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DOPENSSL_SM3_ASM -DPOLY1305_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DSM4_ASM -DVPAES_ASM -DVPSM4_ASM -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -Wall -O3 -Wall -Wextra -Werror -Wno-unused-parameter -Wno-missing-field-initializers -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-3\"" -DMODULESDIR="\"/usr/local/lib/ossl-modules\"" -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -MMD -MF crypto/aes/libcrypto-shlib-aes_wrap.d.tmp -MT crypto/aes/libcrypto-shlib-aes_wrap.o -c -o crypto/aes/libcrypto-shlib-aes_wrap.o crypto/aes/aes_wrap.c
clang  -Icrypto -I. -Iinclude -Iproviders/common/include -Iproviders/implementations/include  -DBSAES_ASM -DECP_NISTZ256_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DOPENSSL_SM3_ASM -DPOLY1305_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DSM4_ASM -DVPAES_ASM -DVPSM4_ASM -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -Wall -O3 -Wall -Wextra -Werror -Wno-unused-parameter -Wno-missing-field-initializers -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-3\"" -DMODULESDIR="\"/usr/local/lib/ossl-modules\"" -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -c -o crypto/aes/libcrypto-shlib-aesv8-armx.o crypto/aes/aesv8-armx.S
clang  -I. -Iinclude -Iproviders/common/include -Iproviders/implementations/include  -DBSAES_ASM -DECP_NISTZ256_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DOPENSSL_SM3_ASM -DPOLY1305_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DSM4_ASM -DVPAES_ASM -DVPSM4_ASM -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -Wall -O3 -Wall -Wextra -Werror -Wno-unused-parameter -Wno-missing-field-initializers -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-3\"" -DMODULESDIR="\"/usr/local/lib/ossl-modules\"" -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -c -o crypto/aes/libcrypto-shlib-bsaes-armv8.o crypto/aes/bsaes-armv8.S
crypto/aes/aesv8-armx.S:51:2: error: instruction requires: aes
 aese v6.16b,v0.16b
 ^
crypto/aes/aesv8-armx.S:69:2: error: instruction requires: aes
 aese v6.16b,v0.16b
 ^

... and many more

The more I think about this the more I'm coming to the conclusion that a completely separate API is the way to go.
This is effectively implementing a separate parallel API.

The more I think about this the more I'm coming to the conclusion that a completely separate API is the way to go.
This is effectively implementing a separate parallel API.

Why? The DigestInit and DigestUpdate do not need any new names or calls. It would be silly to require providers to implement another set of identical calls.

Why? The DigestInit and DigestUpdate do not need any new names or calls. It would be silly to require providers to implement another set of identical calls.

Exactly the same could be said about AEAD ciphers and they are quite the mess.
I think that this is sufficiently different from non-XOF digests to justify a new API.

I disagree.  Not exactly the same..
What do you see as a mess with what has been done currently?
The AEAD API has more issues as it is better to specify all the parameters in the one call. With the XOF this is not really an issue..
Everything is the same except for the final, and that is nearly the same also.. It is a digest with variable output, so I dont see that as drastically different enough to warrant a separate API.
The crappy thing with the XOF currently is how the OSSL_DIGEST_PARAM_XOFLEN is used.. (I think this could be scrapped with a rework of the low level provider code for keccak).
Some poor dev tried to add this squeeze functionality at the end of 2018, so this has been going on for 5+ years now :)

On aarch64 Linux, with clang
$ uname -m
aarch64

$ cat /etc/os-release | grep PRETTY
PRETTY_NAME="Ubuntu 20.04.5 LTS"

$ clang --version
Ubuntu clang version 14.0.6
Target: aarch64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm-14/bin

$ perl Configure linux-aarch64 CC=clang -Wall -Wextra -Werror -Wno-unused-parameter -Wno-missing-field-initializer
Configuring OpenSSL version 3.2.0-dev for target linux-aarch64
Using os-specific seed configuration
Created configdata.pm
Running configdata.pm
Created Makefile.in
Created Makefile
Created include/openssl/configuration.h

**********************************************************************
***                                                                ***
***   OpenSSL has been successfully configured                     ***
***                                                                ***
***   If you encounter a problem while building, please open an    ***
***   issue on GitHub <https://github.com/openssl/openssl/issues>  ***
***   and include the output from the following command:           ***
***                                                                ***
***       perl configdata.pm --dump                                ***
***                                                                ***
***   (If you are new to OpenSSL, you might want to consult the    ***
***   'Troubleshooting' section in the INSTALL.md file first)      ***
***                                                                ***
**********************************************************************

clang-14 $ make -j3
/usr/bin/perl "-I." "-Iutil/perl" "-Mconfigdata" "-MOpenSSL::paramnames" "util/dofile.pl" "-oMakefile" crypto/params_idx.c.in > crypto/params_idx.c
:
:
clang  -I. -Iinclude -Iproviders/common/include -Iproviders/implementations/include  -DBSAES_ASM -DECP_NISTZ256_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DOPENSSL_SM3_ASM -DPOLY1305_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DSM4_ASM -DVPAES_ASM -DVPSM4_ASM -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -Wall -O3 -Wall -Wextra -Werror -Wno-unused-parameter -Wno-missing-field-initializers -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-3\"" -DMODULESDIR="\"/usr/local/lib/ossl-modules\"" -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -MMD -MF crypto/aes/libcrypto-shlib-aes_wrap.d.tmp -MT crypto/aes/libcrypto-shlib-aes_wrap.o -c -o crypto/aes/libcrypto-shlib-aes_wrap.o crypto/aes/aes_wrap.c
clang  -Icrypto -I. -Iinclude -Iproviders/common/include -Iproviders/implementations/include  -DBSAES_ASM -DECP_NISTZ256_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DOPENSSL_SM3_ASM -DPOLY1305_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DSM4_ASM -DVPAES_ASM -DVPSM4_ASM -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -Wall -O3 -Wall -Wextra -Werror -Wno-unused-parameter -Wno-missing-field-initializers -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-3\"" -DMODULESDIR="\"/usr/local/lib/ossl-modules\"" -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -c -o crypto/aes/libcrypto-shlib-aesv8-armx.o crypto/aes/aesv8-armx.S
clang  -I. -Iinclude -Iproviders/common/include -Iproviders/implementations/include  -DBSAES_ASM -DECP_NISTZ256_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_CPUID_OBJ -DOPENSSL_SM3_ASM -DPOLY1305_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DSM4_ASM -DVPAES_ASM -DVPSM4_ASM -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -Wall -O3 -Wall -Wextra -Werror -Wno-unused-parameter -Wno-missing-field-initializers -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/usr/local/lib/engines-3\"" -DMODULESDIR="\"/usr/local/lib/ossl-modules\"" -DOPENSSL_BUILDING_OPENSSL -DNDEBUG  -c -o crypto/aes/libcrypto-shlib-bsaes-armv8.o crypto/aes/bsaes-armv8.S
crypto/aes/aesv8-armx.S:51:2: error: instruction requires: aes
 aese v6.16b,v0.16b
 ^
crypto/aes/aesv8-armx.S:69:2: error: instruction requires: aes
 aese v6.16b,v0.16b
 ^

... and many more

PR https://github.com/openssl/openssl/pull/21443 has been updated with notes related to having a separate object/API for XOF Digests,

Assembler related issues have been addressed

Rebased to fixup libcrypto.num

ping @openssl/committers

Comments updated + Rebase.

Are we targeting this for 3.2 or 3.3?

@mattcaswell IMO 3.3 unless it's rapidly approved with minimal changes.

@t8m - I have no way of building or testing S390 so I have left the entry for S390 squeeze method as NULL.. That will need to be done by IBM at some point.

OSSL_DIGEST_PARAM_XOFLEN has made a mess of things.. I will have to think about it..

I still don't undestand that reason for having both digest.dot and digestxof.dot but only having digest.png. Either they should be combined into one file and digestxof.dot removed or there should also be a digestxof.png image and a life_cycle-digestxof.pod.

Forgot to remove the file..

A bit of an aside but KMAC also has the output length specified as a param and as an argument to the final call.

OSSL_DIGEST_PARAM_XOFLEN has made a mess of things.. I will have to think about it.. If you use OSSL_DIGEST_PARAM_XOFLEN for EVP_DigestFinal() and also set it internally in EVP_DigestFinalXOF() then there is still a problem since both those functions use the same final dispatch call. So something has to break somewhere.. I am not sure adding another new dispatch function (xoffinal) is a great idea?

I do not understand what is the problem - I would basically not change anything in regards to EVP_DigestFinal And EVP_DigestFinalXOF. But in EVP_DigestSqueeze I would not set the xoflen param implicitly and the shake implementation should not depend on xoflen being set when DigestSqueeze is called but instead take the length from the outlen argument.

The missing s390x code IMO makes this definitely not a 3.2 material. We need to give IBM chance to fill in the missing bits.

I'm sorry, but due to internal changes I have to defer this to @holger-dengler.  I am not working on crypto anymore.

Sorry that I missed this topic... I'll have a look at it.

I've a first working patch for the asm implementation in crypto/sha/asm/keccak1600-s390x.pl. A testrun with disabled CPACF instructions (OPENSSL_s390xcap=stfle:0:0:0) seems to work properly. The provider implementation is still under construction.

I do not understand what is the problem - I would basically not change anything in regards to EVP_DigestFinal And EVP_DigestFinalXOF. But in EVP_DigestSqueeze I would not set the xoflen param implicitly and the shake implementation should not depend on xoflen being set when DigestSqueeze is called but instead take the length from the outlen argument.

Updated, I guess I was trying to get rid of the xoflen setting in the DigestFinalXOF (But it would need another dispatch function to do that).

Also noticed that passing a NULL to the final to get the length crashes (but that is another issue, that may have been there for a very long time).

I've a first working series for the s390x part. My branch make some changes on top of this PR.
https://github.com/holger-dengler/openssl/tree/xof_multi_squeeze
How should we handle this? Should I make a separate PR from this branch or will @slontis pick my commits?
I have also some questions about the states. I added state tracking to the s390x provider functions. In my first trial I did it according to the digest life-cycle document. But I found out, that some of the transitions are missing in the diagram, e.g. EVP_Final can be called in state XOF_STATE_INIT. So I changed the state tracking according to the calls of testsuite (test_evp and test_evp_extra). We assume, that also the squeeze functions can be called in state XOF_STATE_INIT and did the checking accordingly. Maybe you can add this information to the life-cycle diagram.
I also miss the state tracking in the generic code. Is this intentionally missing or will it be added before the release?

Here are some test results.
$ uname -m
s390x

$ make VERBOSE=1 TESTS=test_evp_xof test
make depend && make _tests
make[1]: Entering directory '/home/dengler/git/openssl'
make[1]: Leaving directory '/home/dengler/git/openssl'
make[1]: Entering directory '/home/dengler/git/openssl'
( SRCTOP=. \
  BLDTOP=. \
  PERL="/usr/bin/perl" \
  FIPSKEY="f4556650ac31d35461610bac4ed81b1a181b2d8a43ea2854cbae22ca74560813" \
  EXE_EXT= \
  /usr/bin/perl ./test/run_tests.pl test_evp_xof )
00-prep_fipsmodule_cnf.t ..
# The results of this test will end up in test-runs/prep_fipsmodule
1..0 # SKIP FIPS module config file only supported in a fips build
skipped: FIPS module config file only supported in a fips build
Files=1, Tests=0,  0 wallclock secs ( 0.01 usr  0.00 sys +  0.12 cusr  0.00 csys =  0.13 CPU)
Result: NOTESTS
30-test_evp_xof.t ..
# The results of this test will end up in test-runs/test_evp_xof
1..1
    # Subtest: ../../test/evp_xof_test
    1..7
    ok 1 - shake_kat_test
    ok 2 - shake_kat_digestfinal_test
    ok 3 - shake_kat_digestfinal_xoflen_test
    ok 4 - shake_absorb_test
        # Subtest: shake_squeeze_kat_test
        1..32
        ok 1 - iteration 1
        ok 2 - iteration 2
        ok 3 - iteration 3
        ok 4 - iteration 4
        ok 5 - iteration 5
        ok 6 - iteration 6
        ok 7 - iteration 7
        ok 8 - iteration 8
        ok 9 - iteration 9
        ok 10 - iteration 10
        ok 11 - iteration 11
        ok 12 - iteration 12
        ok 13 - iteration 13
        ok 14 - iteration 14
        ok 15 - iteration 15
        ok 16 - iteration 16
        ok 17 - iteration 17
        ok 18 - iteration 18
        ok 19 - iteration 19
        ok 20 - iteration 20
        ok 21 - iteration 21
        ok 22 - iteration 22
        ok 23 - iteration 23
        ok 24 - iteration 24
        ok 25 - iteration 25
        ok 26 - iteration 26
        ok 27 - iteration 27
        ok 28 - iteration 28
        ok 29 - iteration 29
        ok 30 - iteration 30
        ok 31 - iteration 31
        ok 32 - iteration 32
    ok 5 - shake_squeeze_kat_test
        # Subtest: shake_squeeze_large_test
        1..32
        ok 33 - iteration 1
        ok 34 - iteration 2
        ok 35 - iteration 3
        ok 36 - iteration 4
        ok 37 - iteration 5
        ok 38 - iteration 6
        ok 39 - iteration 7
        ok 40 - iteration 8
        ok 41 - iteration 9
        ok 42 - iteration 10
        ok 43 - iteration 11
        ok 44 - iteration 12
        ok 45 - iteration 13
        ok 46 - iteration 14
        ok 47 - iteration 15
        ok 48 - iteration 16
        ok 49 - iteration 17
        ok 50 - iteration 18
        ok 51 - iteration 19
        ok 52 - iteration 20
        ok 53 - iteration 21
        ok 54 - iteration 22
        ok 55 - iteration 23
        ok 56 - iteration 24
        ok 57 - iteration 25
        ok 58 - iteration 26
        ok 59 - iteration 27
        ok 60 - iteration 28
        ok 61 - iteration 29
        ok 62 - iteration 30
        ok 63 - iteration 31
        ok 64 - iteration 32
    ok 6 - shake_squeeze_large_test
        # Subtest: shake_squeeze_dup_test
        1..7
        ok 65 - iteration 1
        ok 66 - iteration 2
        ok 67 - iteration 3
        ok 68 - iteration 4
        ok 69 - iteration 5
        ok 70 - iteration 6
        ok 71 - iteration 7
    ok 7 - shake_squeeze_dup_test
../../util/wrap.pl ../../test/evp_xof_test => 0
ok 1 - running evp_xof_test
ok
All tests successful.
Files=1, Tests=1,  0 wallclock secs ( 0.01 usr  0.00 sys +  0.11 cusr  0.02 csys =  0.14 CPU)
Result: PASS
make[1]: Leaving directory '/home/dengler/git/openssl'

I also miss the state tracking in the generic code. Is this intentionally missing or will it be added before the release?

State transition enforcement doesn't exist for most algorithms.  It's something we want to add but we don't know when we'll get to it.

State transition enforcement doesn't exist for most algorithms. It's something we want to add but we don't know when we'll get to it.

It is not only the transition enforcement. e.g. generic_sha3_absorb does not change the xof_state at all (as far as I can see). I add another commit to my branch [1], which adds the state checking and change. In my opinion, the state change should be the absolute minimum. The state transition enforcement is another game, but I personally would find it valuable.
[1] https://github.com/holger-dengler/openssl/commit/48d03df9db144e64699a0bdc7d2ceac50f1652de

I think state enforcement is something that should be done at the EVP level -- i.e. outside of providers.
This way it is implemented once rather than many times (every algorithm in every provider will be a lot).

I think state enforcement is something that should be done at the EVP level -- i.e. outside of providers. This way it is implemented once rather than many times (every algorithm in every provider will be a lot).

I'm of two minds on this, as any enforcement may also be limiting, due to the limits of our collective imagination I guess.  Like, years ago, I wouldn't have imagined interleaving input accumulation and output extraction, but now there's that sponge construction telling me another story...

Back to my question: how to continue with my branch: the commits are separate at the moment for better readability, but some of them can be folded.
Should I create a separate PR for the branch (on-top of Shanes branch)?

Should I create a separate PR for the branch (on-top of Shanes branch)?

Yes, please

I'm not that fussed either way, but as mentioned on the OTC call, this might be better waiting until after 3.2.

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

Merged to the master branch. Thank you for your contribution.

Thanks @davidben, I dont write a lot of assembler. And yes it is harder to do testing if it only happens on merge.


[BUG] Rich Text Box

Version information

Laravel: v5.8.10
Voyager: v1.2.3
PHP: 7.2
Database: MariaDB 10.3

Description

After upgrade from version 1.2.2 to 1.2.3
Multilang at where using Rich Text Box have problem and unable to add or edit
Steps To Reproduce
Steps to reproduce the behavior:

Laravel new voyager
composer require tcg/voyager
php artisan voyager:install --with-dummy
config/voyager.php using DOC https://docs.laravelvoyager.com/core-concepts/multilanguage
create new table with model and a field that named 'body'
Add     use Translatable;  protected $translatable = ['body']; to model
add bread (one field with Rich text box)
add new row to table using bread

ErrorException (E_NOTICE)
Undefined index: en

$transFields = $this->getTranslatableAttributes();

        foreach ($transFields as $field) {
            if (!$request->input($field.'_i18n')) {
                throw new Exception('Invalid Translatable field'.$field);
            }

            $trans = json_decode($request->input($field.'_i18n'), true);

            // Set the default local value
            $request->merge([$field => $trans[config('voyager.multilingual.default', 'en')]]);

            $translations[$field] = $this->setAttributeTranslations(
                $field,
                $trans
            );

            // Remove field hidden input
            unset($request[$field.'_i18n']);
        }

        // Remove language selector input
        unset($request['i18n_selector']);

        return $translations;

Same here.  New installation of 1.2.3 version still same error.

Same here, post data of _i18n-field is empty.
https://ibb.co/k1rctsZ

Same problem solved after delleting folders
public/vendor/tcg/voyager/
and update
config/voyager.php
as indicated in the documentation
https://docs.laravelvoyager.com/getting-started/upgrading

@cotiga
I just tried a fresh installation, translations of simple Text and Textboxes work, Rich-Text-translations don't.

Just tested and faced the same issue.
On initial page load the hidden field for "_i18n" is providing the correct value format: {"zn":"","cn":""}
However, when you are selecting different language the value for the hidden "_i18n" changed to: {"cn":""} instead.
Anyone knows which file trigger this action? I wish to take a look.

I managed to resolve the issue by changing 1 line at resources/assets/js/multilingual.js file. Upon changing you will need to run the command "npm run dev" to generate a new app.js file at voyager vendor folder itself.
I have created a pull request for this at #4077 so please do verify if it does fix your issues as well.

@ohmygod8 works for me, made my day!

@jannescb I noticed that there is one more issue to fix.
If you purposely let the form to return error, and then you switch the language the old values of the default value will be replaced with the second language.
I am looking at it now.

Works for me too!!! Thanks!

any fix ? this problem with me from 4days ago

I've changed this file, run npm run dev but same bug. Any suggestions?

I made a little node script that fixes this by using _inp.siblings instead of _inp.next.
The script checks the version of voyager in composer.lock and exits if the version is different from 'v1.2.3' therefore it could theoretically be integrated in CI.
It also offers options for using yarn and restoring the original file.
https://gist.githubusercontent.com/mentAl-maZe/dbd7b3aa8b28679e22b37573fedc7f5f/raw/954d6833e4b3269932a53f95def5785b7144be91/voyager-fix.js
There is a short description in the comment of the gist
https://gist.github.com/mentAl-maZe/dbd7b3aa8b28679e22b37573fedc7f5f#gistcomment-2922836

Fixed in https://github.com/the-control-group/voyager/pull/4157


Move generator steps to internal

Now the whole code of the generator component (step) is located inside pkg directory. The right way will be to move the generation logic of components inside the internal dir. If there is any part that is used outside (such as mify config path), it should be located inside pkg directory, and the component implementation (the code which is located inside the internal dir) should import it.

Also, the current gen context object has to know about each step. Maybe it will be better to export some state from each step as some kind of function/struct, which can be imported directly in another step (which requires it). The data for this state could be stored inside gen context in some generic way


fix(searchbar): Pagination buttons on explorer is off

Thank you for your contribution to the KodaDot NFT gallery.
👇 _ Let's make a quick check before the contribution.
PR type

[x] Bugfix
[ ] Feature
[ ] Refactoring

What's new?

[x] PR closes #3807
[ ] Requires deployment <rubick/magick_issue>
[ ] <brief_description_of_what_I've_added>

Before submitting Pull Request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've tried to respect high code quality standards
[x] I've didn't break any original functionality
[x] I've posted a screenshot of demonstrated change in this PR

Optional

[ ] I've tested it at </rmrk/collection/26902bc2f7c20c546a-1FVG7>
[ ] I've tested PR on mobile and everything seems works
[ ] I found edge cases
[ ] I've written some unit tests 🧪

Had issue bounty label?

[x] Fill up your KSM address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot

[x] My fix has changed something on UI; a screenshot is best to understand changes for others.

#3360 is starting to be more than necessary

#3360 is starting to be more than necessary

something is being done in #3763  👀

#3360 is starting to be more than necessary

something is being done in #3763 👀

This bug is introduced from PR https://github.com/kodadot/nft-gallery/pull/3794

#3360 is starting to be more than necessary

Yup, it's almost done : )

pay 50

😍 Perfect, I’ve sent the payout
💵 $50 @ 50.07 USD/KSM ~ 0.999 $KSM
🧗 Caiv9TbPz68q5dC8EcHu5xKYPRnremimGzqmEejDFNpWWLG
🔗 0xc14342c5f597757b32d533b548af36c5dad441c51fccdda6f0cb33193a82ba1c
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues

let's merge if tests pass 👀

#3812 hmmm


Release 1.2.5

Signed-off-by: David Ko<EMAIL_ADDRESS>

I have verified chart installation here for reference

Thanks @chrisc1981 👍
cc @longhorn/qa


Error connecting and handling sessions in the WalletConnect SDK

After I use the mobile device to scan the QR code, it only closes the modal but does not execute the OnAfterConnect function
Expected behavior
after scan QR Code, the WalletConnect.Instance.ActiveSessionChanged function will be executed
note*: i unchecked ResumeSessionOnInit boolean
Screenshots

My Code
private void Start()
        {
            //Application.targetFrameRate = Screen.currentResolution.refreshRate;

            // When WalletConnectModal is ready, enable buttons and subscribe to other events.
            // WalletConnectModal.SignClient can be null if WalletConnectModal is not ready.
            WalletConnectModal.Ready += (sender, args) =>
            {
                //// SessionResumed is true if Modal resumed session from storage
                if (args.SessionResumed)
                {
                    OnAfterConnect();
                    Debug.Log(1);
                }
                else
                {
                    OnAfterDisconnect();
                    Debug.Log(2);
                }

                // Invoked after wallet connected
                WalletConnect.Instance.ActiveSessionChanged += (_, @struct) =>
                {
                    if (string.IsNullOrEmpty(@struct.Topic))
                        return;

                    Debug.Log($"[WalletConnectModalSample] Session connected. Topic: {@struct.Topic}");
                    OnAfterConnect();
                    Debug.Log(3);
                };

                // Invoked after wallet disconnected
                WalletConnect.Instance.SessionDisconnected += (_, _) =>
                {

                Debug.Log($"[WalletConnectModalSample] Session deleted.");
                OnAfterDisconnect();
                Debug.Log(4);
            };
        };
    }

    private void OnAfterConnect()
    {
        var UWM = UIWalletManager.Instance;
        var address = GetAddress();
        UWM.web3Manager.userAddress = address;
        UWM.screenManager.ShowScreen("HOME");
        UWM.web3Manager.loginWith = LoginWith.WCModal;
        Debug.Log(address);
    }

    private void OnAfterDisconnect()
    {
        WalletConnectModal.Disconnect();
    }

Environment

OS: Android
Unity version 2022.3.5f1
Package name and version: WalletConnectUnity Modal v1.0.6

Hello @tieugame2110,
Does it log any errors? What mobile wallets did you use test it with?

Hi @skibitsky,
Action does not provide any feedback on errors, i test with MetaMask, Spot OnChain wallet (Goerli testnet)
The notable point is that the wallet is okay the first time it connects, but after disconnecting or even deleting the session on the device, this error occurs

@tieugame2110
Can you please describe exact steps to reproduce it?

or even deleting the session on the device

How exactly did you delete the session?

@skibitsky
delete the session on MetaMask:

delete the session on Spot OnChain:

Could you check if any of these fields in the WalletConnectProjectConfig scriptable asset are empty?

Id
Name
Description
Url
Icon (at least one item should be present)

@skibitsky
I ensure that all fields have been filled in.

@tieugame2110 can you access https://walletconnect.com website without VPN or any other proxy from your network?

@skibitsky Yes, i can. I think the issue is related to the WalletConnect session, because any wallet when first connected executes the correct code, but from the second time onwards encounters this error.


Padding for whole text area or line number area

I tried to add border via CSS, based on this https://stackoverflow.com/questions/37808715/how-to-make-look-and-feel-of-richtextfx-similar-to-textarea and issue #394.
It works, but line numbers cover part of the border, which doesn't look very nice.

I tried to add padding for .virtualized-scroll-pane, .styled-text-area, .virtual-flow and .virtualized-scroll-pane .styled-text-area .paragraph-box but it didn't work.
With the last one there is also a strange issue, see #508
CSS:
/* Border for RichTextFX, similar to normal JavaFX text area: focused color, etc.
*/

.virtualized-scroll-pane {
    -fx-background-color: linear-gradient(to bottom, derive(-fx-text-box-border, -10%), -fx-text-box-border),
    linear-gradient(from 0px 0px to 0px 5px, derive(-fx-control-inner-background, -9%), -fx-control-inner-background);
    -fx-background-insets: 0, 1;
    -fx-background-radius: 3, 2;
}

.virtualized-scroll-pane:focused {
    -fx-background-color:
            -fx-focus-color,
            -fx-control-inner-background,
            -fx-faint-focus-color,
            linear-gradient(from 0px 0px to 0px 5px, derive(-fx-control-inner-background, -9%), -fx-control-inner-background);
    -fx-background-insets: -0.2, 1, -1.4, 3;
    -fx-background-radius: 3, 2, 4, 0;
}

.virtualized-scroll-pane .styled-text-area {
    -fx-background-insets: 0px;
}

.virtualized-scroll-pane .styled-text-area .paragraph-box:first-paragraph .paragraph-text {
    -fx-padding: 5px 2px 0 2px;
}

.virtualized-scroll-pane .styled-text-area .paragraph-box:first-paragraph .lineno {
    -fx-padding: 5px 5px 0 5px;
}

.virtualized-scroll-pane .scroll-bar:horizontal {
    -fx-background-radius: 0 0 2 2;

    -fx-padding: 0 0.08333325em 0.08333325em 0.08333325em;
    -fx-border-insets: 0 0.08333325em 0.08333325em 0.08333325em;
    -fx-background-insets: 0 0.08333325em 0.08333325em 0.08333325em;
}

.virtualized-scroll-pane .scroll-bar:vertical {
    -fx-background-radius: 0 2 2 0;

    -fx-padding: 0.08333325em 0.08333325em 0.08333325em 0;
    -fx-border-insets: 0.08333325em 0.08333325em 0.08333325em 0;
    -fx-background-insets: 0.08333325em 0.08333325em 0.08333325em 0;
}

import javafx.scene.Node;
import org.fxmisc.flowless.Virtualized;
import org.fxmisc.flowless.VirtualizedScrollPane;

public class VirtualizedScrollPaneExt<T extends Node & Virtualized> extends VirtualizedScrollPane<T> {
    private PseudoClass FOCUSED = PseudoClass.getPseudoClass("focused");

    public VirtualizedScrollPaneExt(T content) {
        super(content);

        content.focusedProperty().addListener((obs, oldVal, newVal) -> {
            pseudoClassStateChanged(FOCUSED, newVal);
        });
    }
}

Yeah, the second issue probably should have been created as a separate issue.

Yeah, the second issue probably should have been created as a separate issue.

Please do so next time.
Correct me if I'm wrong but.... doesn't this line mean that padding should only be added to the bottom?
.virtualized-scroll-pane .styled-text-area .paragraph-box {
    -fx-padding: 15px 0 0 0;
}

Shouldn't it be -fx-padding: 15px 0 15px 0; ?

Created separate issue about that with more information.

About border issue, I am not sure if everything is ok with my CSS, but I think it would work fine if it was possible to add padding for .virtual-flow (or .paragraph-box).
Wiki says that .virtual-flow padding should work, but it is not.
.virtual-flow {
    -fx-padding: 15px;
}

Scenic View shows padding values, but nothing is affected.

See Tomas' comment's comment section. I'd guess VirtualFlow doesn't handle padding in its layoutChildren() method. Since you're already have a VirtualizedScrollPaneExt, could you handle the padding there?

Yeah, looks like this works. :)
public class VirtualizedScrollPaneExt<T extends Node & Virtualized> extends VirtualizedScrollPane<T> {
    private PseudoClass FOCUSED = PseudoClass.getPseudoClass("focused");

    public VirtualizedScrollPaneExt(T content) {
        super(content);

        content.focusedProperty().addListener((obs, oldVal, newVal) -> {
            pseudoClassStateChanged(FOCUSED, newVal);
        });
    }

    @Override
    protected void layoutChildren() {
        super.layoutChildren();

        Insets ins = getInsets();
        getContent().resizeRelocate(ins.getLeft(), ins.getTop(), getWidth() - ins.getLeft() - ins.getRight(), getHeight() - ins.getTop() - ins.getBottom());
    }
}

.virtualized-scroll-pane {
    -fx-padding: 0.08333325em;
}

btw why the virtual-flow fix mentioned in that comment was not applied?

Great!

why was the virtual-flow fix mentioned in that comment not applied?

I'm not sure. Perhaps we forgot to do so? Maybe @TomasMikula could explain.

#510 may have revealed a bug in Flowless where VirtualFlow#hit does not account for insets. One can see this with the following code:
import javafx.geometry.Bounds;
import javafx.geometry.Insets;
import javafx.scene.input.MouseEvent;
import javafx.stage.Stage;
import org.junit.Test;

import java.util.function.Consumer;

import static javafx.scene.input.MouseButton.PRIMARY;
import static org.junit.Assert.assertEquals;

public class TestGUI extends InlineCssTextAreaAppTest {

    @Override
    public void start(Stage stage) throws Exception {
        super.start(stage);
        stage.show();

        String text = "abcdefghijklmnopqrstuvwxyz";
        String fullText;

        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < 19; i++) {
            sb.append(text).append("\n");
        }
        sb.append(text);
        fullText = sb.toString();
        area.replaceText(fullText);
        area.setPadding(new Insets(20));
        area.setStyle("-fx-font-family: monospace; -fx-font-size: 12pt;");
    }

    @Test
    public void test() {
        interact(() -> {
            int start = area.getAbsolutePosition(3, 8);
            area.selectRange(start, start + 1);
            Bounds b = area.getCharacterBoundsOnScreen(start, start + 1).get();

            StringBuilder sb = new StringBuilder();
            sb.append("Bounds: ").append(b).append("\n");
            Consumer<MouseEvent> press = area.getOnOutsideSelectionMousePress();
            area.setOnOutsideSelectionMousePress(e -> {
                sb.append("Mouse screen x/y: ").append(e.getScreenX()).append(" / ").append(e.getScreenY());
                press.accept(e);
            });
            moveTo(b).clickOn(PRIMARY);

            sleep(2000); // Here, one sees that the caret is moved a few chars to the right and one line under the mouse
            System.out.println(sb.toString());
            assertEquals(start, area.getCaretPosition());
        });
    }

}


Ametsuchi: fixed prepared block rollback at init

Signed-off-by: Mikhail Boldyrev<EMAIL_ADDRESS>

Description of the Change
Fixed erroneous prepared block rollback here:

Also renamed the member variable to fit the codestyle.

Benefits
Fixed the error when rolling back nonexistent prepared transaction. Refactoring.

Possible Drawbacks

Usage Examples or Tests [optional]

Alternate Designs [optional]

thanks @lebdron, now I know it is a feature =)


Error when I launch command 'flutter'

Hi,
When I try to launch the command 'flutter' or 'flutter start' I have this error :
/bin/flutter: ligne 20: pub : commande introuvable
Any idea ?
Ty

Can you try to see if pub is in your path? e.g. please run which pub or pub --version

Hi,
pub is not in my path

So I


Export CSV button should not launch dialogue

It should create the CSV in the ScanAGator folder already created by the "save settings" button

wait, it already does that when you click save...
make this more obvious

The "Export CSV" button exports the JSON metadata, but the "save settings" button does not save metadata.
Collapse these into a single button.


chore(main): release 0.2.0

:robot: I have created a release beep boop
0.2.0 (2023-11-17)
Features

add sdk errors (#14) (5c361a8)
protos (4b878a3)
topic client and first test (fb206da)
topics configurations classes (#9) (41e1e0b)
topics subscribe (#34) (00d8037)

Bug Fixes

add missing signature to protocol (#49) (c13f86e)
update project namespace to momento (#33) (1d7dbe1)

Miscellaneous

add pattern ex for binary as well as text messages (#48) (cde72b6)
add publish response class and polish publish methods (#23) (1ec3d53)
add reusable validation methods (#43) (3d67278)
add safeguard to example (#45) (d71e3a9)
add support for publishing binary data (#41) (ef0558e)
adding credential providers (cc62288)
finishing initial credential provider impl (2f4f72b)
hook up client timeout and add agent header (#35) (8a40df4)
readme and contrib (#44) (1b98eb8)
remove base class; add custom exception (405b633)
reorganize protocols and classes into same files to be more idiomatic (#16) (d5eb625)
take cred provider out of interceptor factories (#37) (0f95bd5)
tweaking access protection (d165146)
use enums to namespace prebuilt configurations (0617ec0)
use logger that prints to stderr (#42) (884a24a)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/momentohq/client-sdk-swift/releases/tag/v0.2.0 :sunflower:


Implement a SafeDecoder

This is a workaround for the lack of support of exceptions in Assemblyscript. I'm adding a SafeDecoder that returns a Result<T, Error> instead of throwing errors. This is especially useful to us to build hierarchical error (e.g. key foo doesn't exist in toto.bar) within deeply nested structures.
I've made sure to preserve compatibility with the previous API by exposing a Decoder that internally uses the SafeDecoder, but unwrap every errors.
I've also added a few missing test cases and fixed a bug revealed by the added tests for Sizer.writeArray.
Let me know what you think!

Thanks for submitting this. Working around the lack of exceptions in AS was added a while back (kinda sorta like this) and I believe is incorporated in the latest @wapc/codegen.


How to avoid big state config function in large applications

I'm writing a large app, up to  4 level deep navigation with URL routing.
I've declared all states in the main app module. That means I've something like :
angular.module('myApp').config(function ($stateProvider) {
$stateProvider
.state("toplevelfeature", { url : '/topleavelFeature'...})
.state("toplevelfeature2", { url : '/topleavelFeature2'...})
.state("toplevelfeature.midfeature", { url : '/midFeature'...})
.state("toplevelfeature.midfeature2", { url: '/midFeature2...})
.state("toplevelfeature.midfeature.anothernestedfeature", { url: '/anothernestedfeature...})
});

I've already defined a dozen of states and I know I will have to handle at least 50 other ones. Obviously, I'd like to split state definitions to avoid a giant config method!
For now, each feature get its own module so I thought I would be able to do something like this :
angular.module('anothernestedfeature').config(function ($stateProvider) {
$stateProvider
.state("toplevelfeature.midfeature.anothernestedfeature.home", {...})
.state("toplevelfeature.midfeature.anothernestedfeature.detail", {...})
.state("toplevelfeature.midfeature.anothernestedfeature.other", {...})
});

Unfortunately, when I do that, there is an error saying parent state (here: toplevelfeature.midfeature) can't be found.
Any idea about this? (Sorry If I'm not on the right place to ask this but I didn't find any information about where to ask these kind of questions)

Here you could find my proposal. It's based od es6 modules
https://github.com/lucassus/angular-webpack-seed/blob/ce4e9b91ce9ed47ca74073d754b0cbacff8cb65f/src/app/contacts/contacts.config.js

I believe states don't have to be declared in order anymore as long as the entire ancestry exists before entering the state. Or linking to it?
I add states to every module, I don't declare them in one place in any capacity. I also further attempt to decouple the ancestry by mixing in the use of a parent property. Children within a module use dot notation and the top route of the module uses a parent property. This way you can easily refactor your modules without having to update many different places. I have nesting modules and parent modules import child modules.
I also don't think I see a big benefit to exporting just the state definition because you shouldn't be importing the file if you don't want the state defined.


App Testers Functionality

@mdmohsin7 close pls sir

@beastoin #1402 is pending to close this

merged

Closing as it is on main


JBPM-5030: Security Management Chapter

This PR mixes together the former user&group management chapter and the ACL features into a single  security management chapter explaining in detail all the features around role, group, user and permission management.
@manstis @romartin Can any of you review please?

@dgutierr A few grammatical corrections and a couple of cases where words have been duplicated.

@manstis All the suggested corrections done. Thanks a lot for reviewing.

+1 to merge.


Update paths to point to Github repo

Since it was moved to the jazzband GitHub org, not all the paths were correctly updated.

This appears to be fixed via other commits. Closing.


#182 - Enable Multi-column sorting in DataTable

Basic information

Tiller version: 1.7.4
Module: data-display

Description
Enable multi-column sorting functionality in the DataTable component.
Related issue
Closes #182
Types of changes

Enhancement (non-breaking change which enhances existing functionality)
New feature (non-breaking change which adds functionality)
Docs change

Checklist

[x] I have read the project's CONTRIBUTING document
[x] I have checked my code with the project's static analysis tooling
[x] I have formatted my code with the project's Prettier code-style configuration
[x] I have checked my code for misspellings
[x] I have organized my changes in easy-to-follow commits
[x] My change requires a change to the documentation
[x] I have updated the documentation accordingly
[x] I have added a story to cover my changes
[x] All new and existing story tests pass

@ivam5 Please resolve conflicts and we can merge this


Fix packaging

With the recent update to slicer 4.4, packaging is broken

Also, update CMake minimum version

Fixed as of 9ad8233db9fd3e7c4d259133c9c0c8679d476987


fix(angular): vertical align icon in dropdown button

Signed-off-by: Steve Haar<EMAIL_ADDRESS>PR Checklist
Please check if your PR fulfills the following requirements:

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)
[ ] If applicable, have a visual design approval

PR Type
What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] clarity.design website / infrastructure changes
[ ] Other... Please describe:

What is the current behavior?
cds-icon inside of a clrDropdownTrigger was not vertically centered.

fixes https://github.com/vmware/clarity/issues/6448
What is the new behavior?
The cds-icon will now be vertically centered
Does this PR introduce a breaking change?

[ ] Yes
[x] No

We fixed this yesterday with 0cb5c3b

The fix in https://github.com/vmware/clarity/commit/0cb5c3b6d1c41cb1fd57f84088db47481d15d698 is a specific change to the angle icon in the dropdown trigger, this is something different. This addresses an alignment issue that affects any non angle icons placed inside of a dropdown trigger.

@mathisscott, the fix in 0cb5c3b is a specific change to the angle icon in the dropdown trigger, this is something different. This addresses an alignment issue that affects any non angle icons placed inside of a dropdown trigger.

My bad. I thought this was addressing the same issue as that commit.


Add more description to failed validation messages

While the doc and example depths are still being built out, it would be helpful to return as much information in error messages as possible, for instance:
In the oslo spec project there isn't much depth around what options there are for fields like the SLO.Spec.TimeWindows[].Unit field, though the validator code does a nice job of validating those items here.
It would be useful in this area and others to return useful information like what options must be specified in the error messages, so that sorry suckers like yours truly don't have to slap on the diving equipment and find the answer for ourselves :)
Current behavior: Error: Key: 'SLO.Spec.TimeWindows[0].Unit' Error:Field validation for 'Unit' failed on the 'oneof' tag
Expected behavior: Error: Key: 'SLO.Spec.TimeWindows[0].Unit' Error:Field validation for 'Unit' failed on the 'oneof' tag [Second Quarter Month Week Day]

I am going to open an issue on the validator project for this

@its02003 amazing, thank you!


Question/suggestion on Silva database usage with nf-core/rnaseq

Hi
I have  a suggestion:
The recent updates to nf-core/rnaseq now include optional use of sortmerna and underlying Silva databases.
Some notes on usage of Silva databases - it might be worthwhile adding this info to the nf-core/rnaseq page so that all are made aware of this situation:

https://www.arb-silva.de/silva-license-information - with Release 138, usage is free of cost for any usage (be it commercial/non-academic)

However, Release 138 has been delayed according to these links  https://www.arb-silva.de/news/view/2019/09/03/update-on-silva-release-138/ and https://www.arb-silva.de/news/view/2019/10/24/silva-ssu-release-138-in-november/

Another suggestion - Given that databases supplied with SortMeRna are from release 119 of Silva Database, probably it would be useful for all in research community to wait till Silva 138 is released? Would be interested to know the thoughts of the nf-core/rnaseq authors and community.

@d4straub what do you think ?

I agree that it is a good idea to mention the license issues of SILVA in the docs.
I disagree to wait for v138, as this is only an issue for non-academics, not for academics. Also, someone has to prepare the necessary files for SortMeRNA once v138 is released. If you @tamuanand have access to those files than it should be a quick change. Also, the pipeline includes a parameter (--rRNA_database_manifest) that allows choosing your own database if appropriate files are given.

The info was mentioned in the docs for the next release 1.5. As we already use this step in 1.4X releases, pushing this back and removing it just because of the potential licensing issue is a bit much where I tend to agree with @d4straub on that one.
Once v138 is released, we can update the references too.


Auto-deploy to staging after pushing to the develop branch

With Github Actions?

Thanks to Heroku automatic deploys.


Too Many Requests [429]

Same error: Error: Request failed with status code 429
Please, ¿could you review it?
Thanks!

Update to version 1.1.3


Download data buttons are a little wonky

Something's weird about how these are rendered (off-center, cut-off (easy fix), and they hover blue).  We probably want to make them a little less vivid (it's a pretty intense color), potentially make these links instead of buttons?

Superseded by #294


Some bugs in creature.js (and how to fix them)

Some bugs in creature.js:

Phaser version(s): probably any
What steps produce the bug: try to blend two animations created with Creature
What should happen: a blended animation
What happens instead: some errors

Line 7906

Error: target_creature is not defined
Fix: line must be for(var i = 0; i < this.target_creature.total_num_pts * 3; i++)

Line 7911

Error: this.blend_render_pts.set is not a function
Fix: line must be this.blend_render_pts[0] = new_vec;

Line 7869

Error: blending_factor is not defined
Fix: change lines from 76868 to 7870 with this code this.target_creature.render_pts[set_data_index] =             ((1.0 - this.blending_factor) * (read_data_1)) +             (this.blending_factor * (read_data_2));

@lolocaro Do these still exist in v2.12.0?
cc. @rroylance

@samme Not sure. I have been using the animation blending with no issues since I updated the runtime and I remember those issues occuring back then. I'll take a look tomorrow when I'm back at work.

@samme @lolocaro Can confirm that these are not issues anymore; they were issues in the previous version of the runtime and were fixed when I updated the runtime.
I'd call this one safe to close.


Favor child context over React.withContext

React.withContext is deprecated in v0.13.  This updates the samples to alternatively use a child context.
https://github.com/facebook/react/blob/master/src/core/ReactContext.js#L54

CLA is valid!

We'll definitely need to do this. What are your thoughts on making the getChildContext declaration part of the FluxibleMixin?

:+1: for adding it to FluxibleMixin

:+1:  That makes a lot of sense to me.

Cool, do you want to do a PR to Fluxible and then this PR can updated to use that mixin instead?

Yes, I will do that tonight.

@mridgway  I think this is actually ready!

Nice! I'll check it out.

Works great. Many thanks @joemcbride!

to get the existing context, we have to change our code from this.context.myContext to this.props.context.myContext.

@trungpham If you're using the provideContext HoC, you will not need to use this.props.context. provideContext will ensure that this.context is populated as long as the components set contextTypes correctly.


Fix a bug when you include a coupon

This breaks because trial_end is not an argument for the customer creation endpoint, where this is hash is used. There is a way to use this argument on the subscription_attributes, but it's easier to leave the trail_from_plan flag true and set the default trial period via Stripe's dashboard.

closing in favor of #605
this bug is still present in kudoku, I will open another PR to address it at a later date.


How to show a composable on a fixed position inside CollapsingToolbarScaffold regardless of toolbar state?

Hey,
The library is amazing, but I have an issue that I don't know how to solve.
I want to put the Button inside CollapsingToolbarScaffold, but I want it to be always shown, no matter the state of CollapsingToolbarScaffold. Currently if you put it inside it won't show until the state of the toolbar collapses.
1 solution I tried is to put the Button outside of CollapsingToolbarScaffold, but then you have a button that is not part of the content that you want to show.
For example if you have an AnimatedNavHost inside the content of CollapsingToolbarScaffold to manage the screens, the button inside those screens is different, but won't be shown at the bottom of the screen (over the content), but it will be shown at the bottom of the content.
To summarize, is there any way to "flag" a composable, so that it is not influenced by the scrolling state, but is independent and still part of the CollapsingToolbarScaffold content?

I have similar issue here. I want to use collapsing toolbar without CollapsingToolbarScaffold() because I'd like to use regular Scaffold() to have a bottom app bar placeholder.

One possible workaround for your case is to offset the button manually according to the toolbar state.
Button(modifier = Modifier.offset { IntOffset(0, -state.offsetY) }) { ... }

I see this as a common use case, so I am planning to support such scenarios in the near future. Just as using CollapsingToolbarLayout in the Jetpack library, align() modifier will allow users to fix components in an arbitrary position in the layout.
// not possible right now, but will be available in the near future version
CollapsingToolbarScaffold(
	// ...
) {
	Button( // placed at the bottom center regardless of scroll state
		modifier = Modifier.align(Alignment.BottomCenter)
	)
}

Also, I ended up using CollapsingToolbarScaffold + another Scaffold for everything else except toolbar. Works fine for my case explained above , and Google seems to have ended up using multiple scaffolds too in their projects.


Reduce memory usage of zoekt-webserver

I want to investigate reducing the memory usage of zoekt-webserver when there are many shards. I haven't investigated this properly yet, but have noticed OOMs and I am wondering if there are some wins here.
Ideas before profiling:

More bounded concurrency serving a request.
Profile per request memory usage.
Use fs based datastructure for map[ngram].
Use simpleSection for fileName ngrams map value.
Use fs format for more fields in indexData.

I suspect the working set of ngrams over a time period is relatively small compared to the number of unique ngrams in a shard. So the performance implications of an fs based datastructure for map[ngram] may be minimal.
@hanwen if you have any ideas to focus my investigation that would be great.

So the performance implications of an fs based datastructure for map[ngram] may be minimal.

Could be especially true with NVMe storage becoming more available and so quick.

There are also options for compressed posting lists. For example, https://github.com/dgryski/go-postings

@dgryski thanks for the link, I remember reading that code a while ago! (Thanks for all the interesting stuff you post btw, I'm a reader). However, the posting lists are already disk backed. It is a map[ngram]simpleSection. A simpleSection is just an offset and length into the index file.
https://github.com/google/zoekt/blob/dd7d98162b17e6b91cdd2405b7b5488b1f31fe76/indexdata.go#L31

I'd do profiling before throwing out ideas, and classify the problems more precisely. Do you get OOM for queries with many results? For literal substring search or regex matching? Are the queries complex over few shards or simple over many shards? The content and posting lists are mmap'ed , so they are effectively already FS-based. Is the OOM because it faults in too many mmap'd pages, or because the search generates too much intermediate data ?
re. FS based data structures, what does that mean? FS entities (dirnames, inodes) are very large compared to the data (lots of int32s) in the index, so moving them to FS will almost certainly increase overall memory use.

I'd do profiling before throwing out ideas, and classify the problems more precisely.

Fair enough! I thought I'd do this just in case it triggered some ideas you had already thought about.

Do you get OOM for queries with many results? For literal substring search or regex matching? Are the queries complex over few shards or simple over many shards?

I don't know! It would be over many shards though. The instance had 20k+ repos indexed with a machine with 80G ram. As I said, I haven't actually dived into this yet just wanted to pre-empt discussion.

re. FS based data structures, what does that mean? FS entities (dirnames, inodes) are very large compared to the data (lots of int32s) in the index, so moving them to FS will almost certainly increase overall memory use.

Sorry FS based is misleading. I meant that instead of unmarshalling the whole map[ngram]sectionData into memory, you have some datastructure that operates over IndexFile. Traditionally I'd suppose this would be some sort of btree.
Apologies if I prematurely filed this issue. Was just showing intent to work on this.

remember that for each shard, the map[ngram] might be small, so a btree might well create unnecessary
overhead.
One random idea: you could use uint32 iso. uint64 for shards that are pure ASCII; or maybe have a map[uint32] and map[uint64] for unicode vs ascii trigrams.
Is this with your RPC-powered server? If so, it will have to copy around the content for the matches. If you can avoid (de)serializing data you'd avoid a lot of garbage.
Try to see if you can repro the problem with the plain zoekt webserver or if it is a sourcegraph specific problem.

Apologies

No worries. I'm curious to see what you come up with.

FYI I did some memory profiling on an instance with 38k shards. Took a heap profile after startup, but no search queries had run yet. Was using about 40gb, the biggest offender by far was the trigram map.

remember that for each shard, the map[ngram] might be small, so a btree might well create unnecessary overhead.

Yeah my suspicion is the long tail of shards are small. So indeed the overall performance may degrade quite a bit if we naively switch to btrees.

One random idea: you could use uint32 iso. uint64 for shards that are pure ASCII; or maybe have a map[uint32] and map[uint64] for unicode vs ascii trigrams.

This is a neat idea. I guess that is a roughly 1/4 memory saving (the values in the map are two 32bit uints). Could even do this without changing the index format, which makes it quite attractive.

Is this with your RPC-powered server? If so, it will have to copy around the content for the matches. If you can avoid (de)serializing data you'd avoid a lot of garbage.

Indeed this is. We did notice a bug recently were we set max matches far too high, which would of led to per request high usage. However, the RPC layer is actually quite efficient. gob is nice :) So I would be surprised outside of us being silly with the search options if this was sg specific.

There are also options for compressed posting lists. For example, https://github.com/dgryski/go-postings

@dgryski thanks again for this. The approach zoekt uses is already varint encoding on deltas (just not group varint). However, I've been experimenting with dividing the posting lists into blocks (like go-postings) to speed up hitIterator.next(limit uint32) (called advance in your code).

A tunable we can look into is setting GOGC=50. The on-heap data set is relatively stable, isn't it? With such a large heap, the default GOGC=100 requiring double the amount (100%) of the lowest heap size the process has seen, seems too much. Halving that value means the GC will kick in when the heap grows by 50% of that baseline, so we'd need far less RAM.


[Bug][worker] shell task can not run java command when develop.mode is false

Describe the bug
When shell task's rawscript is
"nohup java -version > /tmp/a.log &
while read line
do
echo $line
done < /tmp/a.log"
and development.state=false
the a.log's content is "Error occurred during initialization of VM
java.lang.Error: Properties init: Could not determine current working directory.
at java.lang.System.initProperties(Native Method)
at java.lang.System.initializeSystemClass(System.java:1168)"
Which version of Dolphin Scheduler:
-[1.3.5-release]
Requirement or improvement
The cause of the error is that the execution directory has been deleted.

I found that delaying the deletion of the execution directory can solve this problem


"Filename" is missing in MISP object

After publishinf to MISP, the created object doesn't include the VT filename.
In MISP, this field must be disabled for correlation.

Linked to correlation request
Fixed in commit : 5c91f9a


mqconfig fails on nofile

My host is rhel 6.5 and it has MQ 8 installed. Starting MQ8 docker container however unsuccessfully with log:
Current User Limits (root)
nofile       (-Hn)  4096 files                         IBM>=10240        FAIL
nofile       (-Sn)  1024 files                         IBM>=10240        FAIL
ERROR: mqconfig returned a non-zero return code
However  host /etc/security/limits.conf file specified correct value
mqm  -  nofile  10240
root  -  nofile  10240
It appears value is taken from Ubuntu OS from docker image and I do not have access to set it?

OK, restart docker service picked up correct value set in host OS. Now it fails at shmmax although it's considered a warning and it's set correctly at host OS (sysctl kernel.shmmax
kernel.shmmax = 268435456)
mqconfig: V3.7 analyzing DISTRIB_ID=Ubuntu settings for WebSphere MQ V8.0
System V Semaphores
semmsl     (sem:1)  250 semaphores                     IBM>=32           PASS
semmns     (sem:2)  0 of 32000 semaphores      (0%)    IBM>=4096         PASS
semopm     (sem:3)  32 operations                      IBM>=32           PASS
semmni     (sem:4)  0 of 128 sets              (0%)    IBM>=128          PASS
System V Shared Memory
shmmax              33554432 bytes                     IBM>=268435456    WARN
shmmni              0 of 4096 sets             (0%)    IBM>=4096         PASS
shmall              0 of 2097152 pages         (0%)    IBM>=2097152      PASS
System Settings
file-max            7264 of 524288 files       (1%)    IBM>=524288       PASS
Current User Limits (root)
nofile       (-Hn)  10240 files                        IBM>=10240        PASS
nofile       (-Sn)  10240 files                        IBM>=10240        PASS
ERROR: mqconfig returned a non-zero return code

Check out the section "Preparing your Docker host" in the README.  RHEL 6.5 doesn't have a recent enough kernel to provide the container with enough shared memory - you can get round this on older kernels by adding the --ipc host parameter to your docker run comman.  Note that this reduces the isolation of the container.

Yeah, that's the problem. And now container is running! Wondering why rhel6.5 has such 'old' kernel, lol. Continue on with the testing... Thx. --Will


chore(deps): upgrade configuration

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-configuration-k8s-26-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 3788

Questions ?
Please refer to the Backport tool documentation


Updating cf-icons dependency.

What it says on the title.

:+1:

:+1: Just perhaps make note of the bump in the changelog

I think PR #608  is removing the bower dependency.


Not getting values shown in Results window when using Open With Excel feature

Description
When I run a query and get results, I use the Open With Excel feature.  When i view the results in Excel, I am getting different values than what was in the Results Window.  And if I use the Open With Excel feature again on the same exact table in the Results window, i still get incorrect values, but a different set of incorrect values.  This is obviously very concerning.
DBeaver Version
Community 22.3.4 (current version)
Operating System
Windows 10 Enterprise
Database and driver
No response
Steps to reproduce

I connect to a database
I run a query that I created
I right click on the results and press on Open With Excel
I compare the results to what's in Excel and they don't match

Additional context
Since I am using the Community edition, I have to install the Office extension every time there is an update to Dbeaver.

Hello @ginevra12
It is not clear - what is the difference between representations? Please, provide examples.

  Let's say my output was one column of numbers and they were 1, 2, 3, 4.   When i right clicked on the output and used Open With Excel, and the Excel spreadsheet opened with the column of values, I would not always get 1,2,3, 4.  I would get random output.  Here is one more thing we just discovered after I posted the issue that may focus the what's going on, or muddy the waters :)....If I include an order by statement in my query and then use the Open With Excel feature, the results in Excel will match the results shown in Dbeaver.   So again, if I don't use the order by statement, I was sometimes getting wrong results in Excel.  If I do use the order by statement, I was getting correct results in Excel.

My apologies, In my original post, in the steps to recreate section, #4 was incomplete.  I updated it to say the following...
"4. I compare the results to what's in Excel and they don't match"

Ok. Were you able to use the Export to XLSX file? Does the result also have a difference from the table?

Yes,

After more investigating, it appears that the issue may be isolated to the following:

It happens on columnstore tables that have significant numbers of obs (e.g., > 50M) AND
“Order by” statement is not used

I did NOT get a different results (between what was shown in the Results window and what was put into Excel via the Open With Excel feature) when I did the following…

Ran the query against the innodb version of the same large tables.
Ran a similar query against a column store table that had < 200K obs.

Here’s a made-up example…
Table name:  sample_data
Field in table:  names
Number of obs in table:  80M
Table exists in columnstore and innodb
If I run the query shown below against the columnstore version of the table, and put the results into Excel via Open With Excel, I get different values than what’s shown in the Results window in the IDE.
If I run the query shown below against the innodb version of the table, and put the results into Excel via Open With Excel, I get the same values as what’s shown in the Results window in the IDE.
SELECT names
FROM sample_data
LIMIT 1000
;
If I run the query shown below against the columnstore version of the table, and put the results into Excel via Open With Excel, I get the same results as what’s shown in the Results window in the IDE (notice that the difference between this query and the one above is the addition of the “Order by" statement:
SELECT names
FROM sample_data
Order by  names
LIMIT 1000
;
My expectation is that whatever I see in the Results window in the IDE should show up in Excel with the same values and in the same order.
Thank you for your help.

The results shown in excel is based not on results shown in dbeaver, but are taken from results of running the query again. It seems that your table doesn't have an index so the results may vary in evere query. Would you get the same result if you use SORT BY clause

My apologies for not responding sooner.
So to be clear, in certain circumstances, the values shown in the dbeaver results window are not matching what's in Excel when using the Open With Excel feature (a feature which I really like and hope y'all enhance).
When you asked would I get the same results if I used a "sort by" clause, I wasn't aware mysql had a "sort by" clause.  I looked it up on the internet and couldn't find a "sort by" clause.
If by "sort by" you mean "order by", then Yes, I get the same results in Excel as in the dbeaver results window.
When I used an "order by" clause, the values shown in the Results window do indeed match the same results in Excel shown when I use the Open With Excel feature (as mentioned in my last entry above, using the example with the order by statement).
Why wouldn't the values put into Excel ever not match what's in the dbeaver results window?
Unless I'm missing something, I would expect the values shown in Excel when using the Open With Excel feature to always match the values shown in the dbeaver results window.  I guess I'm thinking the Open With Excel feature is akin to copying and pasting the results shown in the Results window into an Excel file, but doing it in a more succinct way (by creating a new Excel file and ensuring the values are put into the worksheet correctly...e.g., values with leading zeroes will always have the leading zeroes shown).
If the above isn't clear, I'd be willing to discuss this via a phone call.
Thanks!

We rerun the query if not all data was fetched. So, it works as expected.

Thanks Elizabeth.  I appreciate the response/clarification.   Have a great day!  :)


It is not okay for client to notify server before doing clean up

It is not okay for client to notify server before doing clean up of stream and broadcasting stream removed or participant left notification to other participants in the room.
server can aware on socket connection closed

Because it is a big issue thereby resending stream of participant that left the room without notifying server

As soon i added on peer close function event to AddPeer, so to my magic it started emitting leave and stream clean up when user left. because i was suspecting L45 the event there already deleted the peer before ion handleClose later trying to GetRoomsByPeer L74
so i added empty peer.On("close"... L13with only log and it worked, i don't know!  i  was wanting to do the logic in the event instead
 func (r *Room) AddPeer(peer *Peer) {
  peer.On("close", func(code int, err string) {
	})
	r.Room.AddPeer(&peer.Peer)
  peer.Peer.On("close", func(code int, err string) {
	})
}

Closing since i think this is the same as #163. Please discuss there.


scale should not overwrite custom columnWidth

if the initial columnWidth is specified in the main config then the
scale component should add a new category to include this value in the
slider options (rather than overwrite).

Overall LGTM :)
Do you want to use the shorter way to use find? Otherwise feel free to directly merge.

Do you want to use the shorter way to use find?

Ah - useful - couldn't see that usage in the underscore documentation.


Need help with camera's position in Lua modding!

Describe your problem here.
Let me lay down the plan for you...
I want the camera to instantly set its position to an X and Y value upon loading the song...
The code I have for the camera right now is the following:
function onUpdatePost(delta)
    setProperty("camFollow.x",500)
    setProperty("camFollow.y",500)
end

But, at the beginning of the song (end of black out transition), the camera can be seen slightly easing towards that position...
TL;DR: How do I instantly set the camera's position in Lua?
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
No, I am using a pre-compiled build.

So...  camFollowPos was changed to camGame.scroll
Uhhh . . . okaaay.


feat: RUST_REGEX supports more messages

:rocket: :fire: :stars:

This is amazing. I think it should also match "blazing fast".

rust may be fast but PR reviews are slow as hell :trollface: deleting that branch sorry folks

oof sorry, I've been super busy and I completely forgot. Also, I don't think I'm the only one with write access to the bot.


⚠ Bofrost.be has degraded performance

In 9da781e, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 915 ms

Resolved: Bofrost.be performance has improved in 5e5ec46.


cheese: add pipewire as a dependency

Motivation for this change
Lets you use pipewire for recording the camera. Allows sharing access to the camera with other processes.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.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.

Huh? I do not see any pipewire support: https://gitlab.gnome.org/search?search=pipewire&group_id=8&project_id=1608&scope=&search_code=true&snippets=false&repository_ref=master&nav_source=navbar

Huh? I do not see any pipewire support: https://gitlab.gnome.org/search?search=pipewire&group_id=8&project_id=1608&scope=&search_code=true&snippets=false&repository_ref=master&nav_source=navbar

It's gstreamer, not cheese, that provides support for pipewire. But this is needed for pipewire to be used. I have confirmed that it works: without this, when you run cheese, cheese doesn't appear in helvum, but when you add pipewire to buildInputs, it does.
here cheese is mentioned as being able to use pipewire for video.

It's possible that it's pkgs.gstreamer and not pkgs.cheese that should depend on pkgs.pipewire, now that I think about it. I haven't tested this yet.

Result of nixpkgs-review pr 133656 at 63160b9b run on aarch64-linux 1

5 packages built successfully:

empathy (gnome.empathy)
gnome.cheese
gnome.gnome-contacts
gnome.gnome-control-center (gnome.gnome_control_center)
phosh

In that case, could you please make it unconditional dependency and mention that it is needed for GStreamer plug-in in a comment?
I think adding it to individual apps that can make use of it is good enough for now, in the future, it will likely be integrated into one of the gst-plugins-* packages anyway.

Done

Could you please also mention that it is needed for GStreamer plug-in in a comment in the Nix code?

I completely forgot somehow, sorry.

@ofborg build gnome.cheese


Documentation badge and link are broken

All other Badges work though.
I'm on mobile, so I can't write a PR right now.

Ahh, apparently, there's an issue with what I'm seeing on my end and what's rendering with github. Cool. :/

This is what I get for staying up late to get this release out today. Sorry for the inconvenience!

No worries! Thanks for this really interesting crate!


feat: allow user to configure default character position

Add an optional props "position" to configure the default position of the character (default to [0, 5, 0] for the moment)

Hmm, it appears there's a bug in the live demo. I'll work on fixing that and adding the position feature in the next update. 🤔

Hi @Romaixn , I've added a feature to Ecctrl that allows it to use any Rigidbody props as its own, including options like position, friction, gravityScale, and more. 😁
Now, you can set its initial position like this: <Ecctrl position={[0,10,0]} />


Add support for binary attachments (PDF, DOC, etc)

Add support for binary attachments, such as PDF, DOC, etc file. See http://www.elasticsearch.org/guide/reference/mapping/attachment-type.html.
Basically, ES expects attachment in the form of base64-encoded data, so the API could/should take cue from rest-client here.

+100000 (This is so important for this gem)
Has this been added yet? If not when might it be?  Much appreciated!

Yup! Yes please. +1

Hi all -- I'm not currently planning any focus on attachment support. There are many parts of the codebase which need to be refactored and cleaned up, many important features piled up in pull requests and my mind, and I don't immediately need it. I tend to not implement features without real use cases to check them against.
That said, there's some shitty code in the attachments branch which I sketched when I was playing with it. Feel free to check it out and play with it some more.

@jonarrien, thank you


Cross node distributed tracing through TCP packets

Extend the hackathon prototype for passing information through TCP packets for context propagation. This feature will be an extension to our current context propagation, where instead of using a BPF map to match context we'll use information encoded in TCP packets.

Hello, are there any updates on this?

We are still finishing up couple of things, work should start soon...

Hi, great to see this moving forward 😄 Will the TCP context propagation work only for GO at first or is it technology-agnostic?

It's generic :), technology-agnostic.
So we've implemented two approaches so far, only for HTTP. gRPC will come once we make sure HTTP is fully baked.

First approach is using TCP packets, which will require Beyla on all nodes, but it will work with TLS. We have this option in the main branch to enable this support BEYLA_BPF_TC_CP=true.
Second approach is extending the packets at L7 and it's called BEYLA_BPF_TC_L7_CP=true. This one won't work for TLS, but it is compatible with services which are not instrumented with Beyla. Our current approach for this feature will change in the next few weeks, we found a more efficient way to implement it and it won't require kernel 5.17 as the option does now.

You can see that we've started building tests with this new feature.
K8s examples: https://github.com/grafana/beyla/blob/main/test/integration/k8s/manifests/06-beyla-daemonset-multi-node.yml and https://github.com/grafana/beyla/blob/main/test/integration/k8s/manifests/06-beyla-daemonset-multi-node-l7.yml.
Here's a docker compose example that is also using all major languages in the mix with BEYLA_BPF_TC_L7_CP=true https://github.com/grafana/beyla/blob/main/test/integration/docker-compose-multiexec-host.yml


Implement proxy config option

Uses well-established http-proxy to provide an option similar to rewrite that proxies requests to a different backend. Resolves #30. The new option would look like this:
{
  "proxy": [
    { "source": "/api/foo", "destination": "http://foo.example" },
    { "source": "/api/bar", "destination": "http://bar.example" }
  ]
}

Additionally, other http-proxy options can be specified in the config, like ignorePath which removes the original url when the request is proxied:
{
  "proxy": [
    { "source": "/api/foo", "destination": "http://foo.example", "ignorePath": true }
  ]
}

Wanted to put this in a PR to get it in front of the Zeit team before going further. If the idea is good, I'll finish the remaining todos:

[ ] Add tests
[ ] Document proxy config option
[ ] Merge PR for proxy option in @zeit/schema repo

@leo Friendly bump to this. If there's not interest I'd be interested in maintaining a fork of the package to support this feature.

Bump, I'd love to see this move forward as well and would be willing to help.

+1 imho this is essential. i'm going to have to switch to another library due to lack of proxy support, which is too bad because serve is otherwise great.

@gatherben Meanwhile you can use my fork with this feature if you'd like. Is published as serve-proxied on npm. Hope to see it merged some day.

Why this PR is not merged? It's a great and useful feature.

@nathancahill OK, I think you should add related tests and documentation as the description of PR template.

@JounQin I'm not investing more time until I hear back from the maintainers that they are interested (in which case this PR can be finished) or not interested (in which case the feature will be available in serve-proxied on npm).

@nathancahill I tried your serve-proxied, but it seems not working to me.
// serve.json
{
  "proxy": [
    {
      "source": "/api/",
      "destination": "http://localhost:8080/",
      "secure": false,
      "changeOrigin": true
    }
  ]
}

CMD: cp -f serve.json dist/static && serve dist/static -l 4200

// response
{"error":{"code":"not_found","message":"The requested path could not be found"}}

Is there anything wrong?

@JounQin make sure the service running on :8080 is expecting the URL to be prefixed with /api/v1 and not just /v1

@nathancahill Yeah, of course, it works with webpack-dev-server so I believe the service is running correctly.
Whatever, I've finished up by writing a custom serve.js which wrapped serve-handler and http-proxy manually which seems simple enough to me.

const path = require('path');
const http = require('http');

const httpProxy = require('http-proxy');
const handler = require('serve-handler');

const proxy = httpProxy.createProxyServer();

const PROXIES = require('../.proxyrc.json');

const PROXY_SOURCES = Object.keys(PROXIES);

const server = http.createServer((request, response) => {
  const proxySource = PROXY_SOURCES.find(source => request.url.match(source));

  if (proxySource) {
    const proxyConfig = PROXIES[proxySource];
    return proxy.web(request, response, proxyConfig, error => {
      response.destroy(error);
      console.dir({
        source: request.url,
        target: proxyConfig.target,
        message: error.message,
      });
    });
  }

  return handler(request, response, {
    public: path.resolve('dist/static'),
    rewrites: [
      {
        source: '/**',
        destination: '/index.html',
      },
    ],
  });
});

server.listen(4200, () => console.log('Running at http://localhost:4200'));

Added support for routing segments like redirects and rewrites have. So now it's possible to do this:
{
  "proxy": [
    { "source": "/api/:object", "destination": "http://example.com/:object" }
  ]
}

Published on npm as<EMAIL_ADDRESS>

@leo Did you guys ever have any time to review these pending PRs?

use http-proxy:
const handler = require("serve-handler");
const http = require("http");
const path = require("path");
const proxy = require("http-proxy").createProxyServer();
const apiAddr = "http://<IP_ADDRESS>:31501/"; // proxy host

const server = http.createServer((request, response) => {
  if (request.url.indexOf("/es") > -1) { // request api
    console.log("proxying req url: " + request.url);
    return proxy.web(request, response, { target: apiAddr }, (err) => {
      console.error(err);
    });
  }
  // You pass two more arguments for config and middleware
  // More details here: https://github.com/vercel/serve-handler#options
  return handler(request, response, {
    public: path.resolve("./dist/es-web-portal"),
  });
});

server.listen(3000, () => {
  console.log("Running at http://localhost:3000");
});

Added support for routing segments like in the redirects and rewrites options. So now it's possible to do this:
{
  "proxy": [
    { "source": "/api/:object", "destination": "http://example.com/:object" }
  ]
}

Published on npm as<EMAIL_ADDRESS>
Hello,
I have used your fork but I need to list all possible path as follow
"proxy": [
{
"source": "/app1/",
"destination": "http://localhost:8080/app1/"
},
{
"source": "/app1/:object",
"destination": "http://localhost:8080/app1/:object"
}
{
"source": "/app1/js/:object",
"destination": "http://localhost:8080/app1/js/:object"
}
]
Is there a way to put a wildcard ? Thanks.