EVP_CIPHER's initialization with variable-length keys and IVs is dangerous and not memory-safe

This is a follow-up to CVE-2023-5363. I think the root cause here is actually a design flaw in how OpenSSL modeled variable-length IVs. With the new OSSL_PARAM system, it has gotten quite dangerous.
OpenSSL's original EVP_CIPHER initialization APIs looked like this:
int EVP_EncryptInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
                    const unsigned char *key, const unsigned char *iv);

As in #22628, this requires the caller to know the sizes for cipher and size the key and IV correctly. Most algorithms have fixed-width keys and fixed-width IVs, and sizing is less complex than Update/Final, so this wasn't horrible, just a bit of a sharp edge.
However, some ciphers have variable-length keys and IVs. RC4 has a variable-length key, and AES-GCM was incorrectly specified with a variable-length IV. This API design cannot handle such algorithms. OpenSSL ended up handling this by adding EVP_CIPHER_CTX_set_key_length and EVP_CTRL_AEAD_SET_IVLEN. This means initializing an EVP_CIPHER_CTX, in the general case, becomes:

EVP_EncryptInit to set the cipher, but leave key and IV null and unset
EVP_CIPHER_CTX_set_key_length and EVP_CTRL_AEAD_SET_IVLEN
EVP_EncryptInit again. This time leave cipher null, because you've already set it, and set the key and IV.

This works, but it is tedious and makes sizing the buffers even more complex. Since then, OpenSSL 3.x has converted key and IV length to OSSL_PARAMs, with an API of:
int EVP_EncryptInit_ex2(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
                        const unsigned char *key,
                        const unsigned char *iv,
                        const OSSL_PARAM params[]);

On the one hand, this is single-shot and let's you combine 1-3 (but not really, more on this later...). But, in doing so, it makes the API incredibly dangerous! The sizes of key and iv are now buried inside params, behind a bunch of strings! Now, to answer whether this call is correct, you need to look for "keylen" and "ivlen" inside params.
Worse, because providers typically silently ignore unused parameters (see https://github.com/openssl/openssl/issues/16912#issuecomment-951172754), you may have set the right "ivlen" and then the provider ignored it anyway!
This is confusing enough that OpenSSL itself forgot all this, leading to CVE-2023-5363. OSSL_PARAM looks enough like a well-typed, dynamic system that it'd be very tempting for bindings libraries to simply expose them directly in their public APIs. But the EVP_EncryptInit_ex2 design means that doing so is not memory-safe, or at least very difficult to do safely. (It might work for a bindings library to go back to the multi-step model and leave key/iv unset until they can query the lengths that actually ended up? Not sure. But this is very non-obvious.)
How could this have been done better? Well, once it's been decided keys and IVs are variable-length, simply use pointer/length pairs like any other C API:
int EVP_EncryptInit_ex1000(
    EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
    const unsigned char *key, size_t key_len,
    const unsigned char *iv, size_t iv_len,
    ....);

Or if you prefer OSSL_PARAM, make "key" and "iv" byte string properties. Just don't do half-and-half. Either consistently use a real parameter, or consistently use an OSSL_PARAM. This is enough of an issue that new APIs are probably worth making.
A second API design issue
Now, if you're going to make new APIs, it may be worth revisiting another design flaw with initialization. (I've been thinking about this for BoringSSL. We'll never use OSSL_PARAM in our preferred APIs due to performance issues, but the multi-step setup is a common concern.) EVP_CIPHER fails to distinguish per-key state and per-operation state.
It is very common for applications to encrypt multiple messages with a single key, and OpenSSL's API is poorly suited for this. Most algorithms have some per-key computations (e.g. the AES key schedule) and some per-operation computations. Ideal behavior would be to do the per-key computations only once per key, and hold on to that. That means the general API pattern is actually:

Setup the key:

EVP_EncryptInit(cipher, rest null)
EVP_CIPHER_CTX_set_key_length
EVP_EncryptInit(key, rest null)

For each encryption operation:

EVP_CTRL_AEAD_SET_IVLEN
EVP_EncryptInit(iv, rest null)
EVP_EncryptUpdate, EVP_EncryptFinal

Except even this does not work for all applications! The encryption procedure is mutating. But we don't want to mutate the saved key state. That may not even be thread-safe. So actually the procedure is:

Setup the key:

EVP_EncryptInit(cipher, rest null)
EVP_CIPHER_CTX_set_key_length
EVP_EncryptInit(key, rest null)

For each encryption operation:

Copy the EVP_CIPHER_CTX
EVP_CTRL_AEAD_SET_IVLEN
EVP_EncryptInit(iv, rest null)
EVP_EncryptUpdate, EVP_EncryptFinal

Not only that, the per-key EVP_CIPHER_CTX still maintains the per-operation state, even though it doesn't need it. So we waste memory. Also because this is needed to use EVP_CIPHER_CTX effectively, EVP_CIPHER is forced to be initializable piecemeal, which lets a very complex state machine and weird behaviors like #22070.
Very (very) rough sketch
A better version of EVP_CIPHER, that better models the actual requirements around initialization, might look something like this:
First, there are two types, EVP_CIPHER_KEY and EVP_CIPHER_CTX. The former is a key, and the latter is a streaming encrypt/decrypt operation.
To create an EVP_CIPHER_KEY, there are functions like:
EVP_CIPHER_KEY *EVP_CIPHER_new_enc_key(const EVP_CIPHER *cipher, const unsigned char *key, size_t key_len);
EVP_CIPHER_KEY *EVP_CIPHER_new_dec_key(const EVP_CIPHER *cipher, const unsigned char *key, size_t key_len);

This is just a sketch. Maybe insert OSSL_PARAMs if you prefer. Maybe merge them into one operation with an enc boolean. The point is this is just the key and it's immutable on creation. And also rather than setting the key length separately, it always comes with the key pointer.
To do an operation, there are functions like:
EVP_CIPHER_CTX *EVP_CIPHER_KEY_new_ctx(const EVP_CIPHER_KEY *key, const unsigned char *iv, size_t iv_len);

Again, just a sketch. Maybe OSSL_PARAMs if you prefer, etc. The point is this is a separate operation from setting up the EVP_CIPHER_KEY, and that the IV length always comes with the IV pointer.
Given an EVP_CIPHER_KEY type, you could even make friendlier single-shot encrypt/decrypt APIs, for callers that don't need anything streaming.

This sounds very like the EVP_SKEY proposal in #19754, and on the project board as https://github.com/openssl/project/issues/104, i.e. this is already something that is on the radar as something to implement.

See also https://github.com/openssl/openssl/pull/21573

@beldmit That design document seems not to address the memory-safety flaws in OpenSSL's API. The proposed EVP_CipherInit_skey continues the pattern of a pointer-only IV parameter.

I.e. the EVP_SKEY/EVP_CIPHER_KEY/whatever proposal is not the point of this bug. That is a secondary issue that, if you're making a new API anyway, you should take the time to rethink it. But the actual problem, and the unaddressed root cause of CVE-2023-5363, is OpenSSL APIs losing track of the length associated with each pointer.

@davidben yes, being drafted several months ago, this document needs a review and I will update it according to your requirements

@beldmit That design document seems not to address the memory-safety flaws in OpenSSL's API. The proposed EVP_CipherInit_skey continues the pattern of a pointer-only IV parameter.

Thanks, fixed

Might need some discussion around how that interacts with the "ivlen" OSSL_PARAM, since that function still takes a parameter list.

Yes, for the uniformity it may be worth passing IV through the parameters

That may have some perf implications since IVs are common. But an "iv" parameter would still need to answer what happens with "ivlen" in OSSL_PARAM. It should be the case that setting "ivlen" in params does not result in a memory error, whether it's an "iv" OSSL_PARAM or a real (i.e. more efficient) parameter.

@davidben I'm not sure parameters parsing will cause performance implications in real-world scenarios.

IV should be kept as an explicit function argument. I do not think we should change it to be an OSSL_PARAM. The "ivlen" OSSL_PARAM could be made obsolete with the new APIs and for backwards compatibility we could just call set_ctx_params with "ivlen" param if the ivlen in the arguments does not match the default (or previous in case of reinitialization) ivlen.


Question about modules\planning\open_space\coarse_trajectory_generator\hybrid_a_star.cc

Thank you for great job!
I am new in digging into apollo and have a question about modules\planning\open_space\coarse_trajectory_generator\hybrid_a_star.cc.

I found you defined step_size_ from configuration file which is 0.25 By default
step_size_ = planner_open_space_config_.warm_start_config().step_size();
but it should be Vdt which is not a constant value
So might I assume you think Vdt = 0.25 ？

In function HybridAStar::CalculateNodeCost , why just calculate holonomic-with-obstacles (from dp map), but no non-holonomic-without-obstacles (may use reeds shepp) ?

In function HybridAStar::GenerateSpeedAcceleration,  you used 3 points (i-1, i, i+1) to calculate discrete_v, but only use 2 points (i, i+1) to calculate discrete_a, why?

what do you mean vdt?
HybridAStar::CalculateNodeCost  is used as a heuristic function, obstacles should be considered. In hybrid A* we use  non-holonomic model to extend point.
in hybrid A star just generate a coarse trajectory and as a warm start for smooth algorithm

what do you mean vdt?
HybridAStar::CalculateNodeCost  is used as a heuristic function, obstacles should be considered. In hybrid A* we use  non-holonomic model to extend point.
in hybrid A star just generate a coarse trajectory and as a warm start for smooth algorithm

sorry, it's  v * dt

Generally, hybrid a* only plans a coarse path, not considering speed. and the path will be resampled and speed will be planned in iterative anchoring smooth algorithm.


Fixed issue with properties that have an accessibility restriction.

This patch fixes an issue where SA1513 would not report a diagnostic for this:
public int TestProtected
{
    get
    {
        return 1;
    }
    set
    {
    }
}

But would report one for a property that has an accessibility restriction:
public int TestProtected
{
    get
    {
        return 1;
    }
    protected set
    {
    }
}

This patch resolves that issue.

 Last update 4755c66...e50ebd3

I will be able to look at this in a couple of weeks. Feel free to add the test yourself if that is too late.

@dlemstra I send you a pull request for the missing SA1516 unit tests. Could you please merge that into this PR?

@sharwell The requested unit tests have been added by @vweijsters. I think this can be merged into master now.


[atkmm] Add support for linux

Host Environment

OS: Linux

To Reproduce
Steps to reproduce the behavior:
./vcpkg install atkmm
Failure logs
-- Building /usr/share/vcpkg/buildtrees/atkmm/src/atkmm-2-de808b48b0/MSVC_Net2013/atkmm.sln for Release
CMake Error at scripts/cmake/vcpkg_execute_required_process.cmake:72 (message):
    Command failed: msbuild /usr/share/vcpkg/buildtrees/atkmm/src/atkmm-2-de808b48b0/MSVC_Net2013/atkmm.sln /p:Configuration=Release /t:atkmm /p:Platform=x64 /p:PlatformToolset=external /p:VCPkgLocalAppDataDisabled=true /p:UseIntelMKL=No /p:WindowsTargetPlatformVersion= /m /p:ForceImportBeforeCppTargets=/usr/share/vcpkg/scripts/buildsystems/msbuild/vcpkg.targets /p:VcpkgTriplet=x64-linux
    Working Directory: /usr/share/vcpkg/buildtrees/atkmm/x64-linux-rel
    Error code: No such file or directory
    See logs for more information:

Call Stack (most recent call first):
  scripts/cmake/vcpkg_build_msbuild.cmake:119 (vcpkg_execute_required_process)
  ports/atkmm/portfile.cmake:25 (vcpkg_build_msbuild)
  scripts/ports.cmake:94 (include)

Error: Building package atkmm:x64-linux failed with: BUILD_FAILED

Additional context
The file /usr/share/vcpkg/buildtrees/atkmm/install-x64-linux-dbg-out.log doesn't exist, but /usr/share/vcpkg/buildtrees/atk/install-x64-linux-dbg-out.log does. The output is here:
https://pastebin.com/njFuHCup

Running into the same issue. This makes Gtkmm unusable on Linux...

We need to patch the configure file in the atkmm source, but I'm not very good at this.
Who can help me?

How can I help to implement support?

@faserg1 Unzip and replace this file to VCPKG_ROOT/ports/atkmm, patch ATKMM_SOURCE/configure to add option --with-atk / --with-glibmm.

@JackBoosY As I see, there is no way to provide path for these libs directly in configure. But as I see here:

No package 'atk' found
No package 'glibmm-2.4' found```
It try to find these libs by pkgconfig.

And there is no .pc files for there libs in `PKGCONFIG_INSTALLED_DIR`.
As I am a new in vcpkg, is there a way to configure .pc files for libs and copy them? `glibmm` has `.pc.in` in `{glibmmdir}/glib` and similar file in atk source.

@faserg1 I think it's okay.

@JackBoosY I think there is a way to patch configure.in in atkmm source to generate configure (via autoreconf) without pkgconfig deps, and use flags to provide libs. But I think provide .pc files is a better way to make configure work.

More problematic with glibmm. There is no suffix by default so I'll add suffix as like ATK or glib.

Hi @jon-ryan, can you please update vcpkg and try again? This issue should be fixed.
Thanks.

@JackBoosY Yes, this issue is fixed. Thank you.


Mocking general pages

Team invites for Figma mockup
https://www.figma.com/team_invite/redeem/vLO2JBoHcvAn3milncZY31


Can't import .clyde files

Hello!! I was working on a simple RPG game and decided to use this plugin. But no matter what I tried, the editor just kept refusing to import any .clyde file.

This breaks the entire plugin since it can't "find" that file.

I don't know what causes it, since my knowledge on the engine is pretty rudimentary.
Edit: I forgot to mention that these 3 lines repeatedly appear in the output:

Godot version: 4.1
OS: Arch Linux 6.4.2 zen
Plugin version: 3.2.0

The issue was with the importer. this pull request fixed the issue for me. Please merge it.


hooks not honouring '--quiet' and cause output to stderr even when showLogs=false

Hi, when I use a hook in a template command it always seems to list the name of the helmfile to stderr like so:
helmfile-init.yaml: basePath=.

I believe that to be an error as I provide --quiet and in the hook set shoLog: false.
The fact that this output goes to stderr confuses me also.
The command I use:
helmfile --quiet -f helmfile.tpl/helmfile-init.yaml template --skip-deps

The hook section of the release:
      - events: [prepare]
        showlogs: false
        command: ../bin/somescript.sh
        args: ["{{ .Release.Name }}"]

If I change the command to apply or sync that output is gone...weird.
Anyways, this ghost output is in the way of outputting clean templates.

@Morriz Hey! Thanks for reporting. It seems like we did miss honoring the log level there. #1769 should fix it.

Tnx. But why does this output go to stderr?

@Morriz That's to allow the user to separate the output of the command vs log messages with e.g. helmfile -f debug template > all.yaml


Draft: REVM

DO NOT MERGE
DO NOT MERGE
DO NOT MERGE
If you want to test out the REVM port run: foundryup -b revm (make sure you have Rust installed)
I use this PR for tracking the REVM port
Blocking issues:

[ ] https://github.com/gakonst/foundry/issues/753 (#867)
[ ] https://github.com/gakonst/foundry/issues/775 (#867)
[ ] https://github.com/gakonst/foundry/issues/758 (#920)
[ ] https://github.com/gakonst/foundry/issues/761 (#920)
[ ] Tracking issue for new features that need to be ported: https://github.com/gakonst/foundry/issues/799

Things that would be nice to address:

[ ] https://github.com/gakonst/foundry/issues/812 (might already be fixed)
[ ] https://github.com/gakonst/foundry/issues/654
[ ] https://github.com/gakonst/foundry/issues/876

Things that would be nice to add:

[ ] 4byte trace identifier
[ ] Etherscan trace identifier
[ ] Common Solidity tests in root of project: currently some crates duplicate tests or reference tests in other crates (https://github.com/onbjerg/foundry-test)

Checklist before merge:

[ ] Compare gas usage between the port and master
[ ] Compare trace decoding between the port and master

Everything in the PR has been tested against https://github.com/onbjerg/foundry-test and solmate

I think the Foundry-Test repo would be nice to get in the main PR and have MultiContract runner run against it, as it gets us a lot of confidence about the safety of the code. Otherwise agree that Etherscan/4Byte can happen in separate PR, as long as we believe that the current architecture is generic enough to support batching most of the RPC requests for signatures/abis etc so we don't have big performance overheads

Current rough benchmarks. For reference, solmate is currently 186 fuzz tests and 209 unit tests
Tracing off (256 fuzz runs)

Full tracing on (256 fuzz runs)

Turns out compiling with RUSTFLAGS="-C target-cpu=native" cargo build --release --bin forge yields non-trivial speed increase, on the order of ~10%

Ok so this is pretty much good to go with the exception of a memory allocation bug in REVM that I will address tomorrow. Gonna take tomorrow to work on this for the final time before merge, will try to squeeze in some optimizations in REVM and #731 / #849  / an Etherscan decoder if possible

Going to fix the failing tests, otherwise this is good to go

Just noticed SSTORE2Test::testFailReadInvalidPointer(address) in Solmate will correctly revert but still be marked as failed. Investigating


Vagrant configuration for testing database adapters on a VM.

When proposing changes to the tests they need to be run against all the core adapters and thus all the databases have to be installed on the host. This is not always desirable. My proposal is to use a Vagrant VM where the databases can be installed automatically in a sandboxed environment.
See the updates in the main README.md for more details on how this will work.
At the moment all core adapter databases except PostgreSQL are installed correctly. File permission issues are giving me headaches with Postgres, but if you like the solution I'll keep struggling with it until I find a solution. Then it should be ready to merge.

Hey, this is some great stuff.  I wish I had some pointers for Postgres... it can definitely be a pain!  @tjwebb isn't there some Postgres knowledge at balderdash?  Who might be able to help?

@marnusw, this is awesome! Thanks for going through all the trouble to create this.
I only have one very little minor suggestion: move the the steps necessary to run vagrant from the main README to, for example, .puppet/README.md. Leave the intro and then add a link to the steps. The reason I suggest this is that we don't scare or put off people with so much vagrant stuff since it's optional.

So I got PostgreSQL working too and I just started up a fresh Vagrant VM and ran all the tests to get the results below. I believe that means this is ready to merge! From there I'll confirm that the other changes in my other PRs work as expected for all the adapters.
The following db versions are installed on the VM:

MongoDB v3.0.3 (Ahead of Travis which uses 2.4 or 2.6)
MySQL v14.14 (Not sure what the Travis default is)
PostgreSQL v9.3 (Matches the configuration in .travis.yml)
Redis v2.8.12 (Not sure what the Travis default is)

 -----------------------------------
| core modules            | version |
|-------------------------|---------|
| waterline               | 0.10.23 |
| - anchor                |  0.10.2 |
| - waterline-schema      |  0.1.17 |
| waterline-adapter-tests | 308c387 |
 -----------------------------------

 ------------------------------------------------------------------
| adapter          | version | result | failed | total | wl-sequel |
|------------------|---------|--------|--------|-------|-----------|
| sails-postgresql | 30317cd | passed |      0 |   339 |     0.4.0 |
| sails-memory     | c7b0610 | passed |      0 |   314 |           |
| sails-disk       | e95628b | passed |      0 |   314 |           |
| sails-mongo      | 021ec02 | passed |      0 |   314 |           |
| sails-mysql      | f6e27d4 | passed |      0 |   339 |     0.4.0 |
| sails-redis      | 72ced91 | passed |      0 |   232 |           |
 -------------------------------------------------------------------

Beautiful, thank you!  I see you also took care of @dmarcelino's concerns.  I think it's good to go! :+1: :+1:

Thanks @marnusw!


Remove the requirement for extra http location string.

Hieroglyphy works very good on browser side.
But it require location property.
So I have to define the location property as a string start with "http://";
for the most important letter "p".
It seems like a kind of cheating.
So I tried to make some change.
I want to use "Number.toString()" to get the most important "p".
(25).toString(26); //=>"p"

// In fact, this way may help to get the whole alphabet.
(35).toString(36); //=>"z". 0-9 is "0" - "9". 10-35 is "a" - "z".

To call the method "toString", I need "S" and "g".
Thanks for smart previous code, it is possible to call the constructor of anything. This helps me getting the letter "S" and "g".
_String = "[]+" + "(" + _object_Object + ")" + "[" + hieroglyphyString("constructor") + "]"; // "function String() { [native code] }"
characters["S"] = "(" + _String + ")" + "[" + numbers[9] + "]";
characters["g"] = "(" + _String + ")" + "[" + "(" + numbers[7] + ")" + "+" + "(" + numbers[7] + ")" + "]";

It seems make the generated code longer(or not).
But anyway, Hieroglyphy only require ECMAScript features now.
We can keep finding better way.

@alcuadrado Hi, test is done.

@alcuadrado @xymostech Have a look?

Hey @libook, nice PR!
I originally used window.location because Function.prototype.toString wasn't standarized before ES6. That standard was available (maybe in draft form?) when I made this project, but not widely supported.
Time has passed and Function.prototype.toString is supported everywhere, but parts of it are implementation-defined, so that code may not work in some cases. You read more about it here.
There's a standard-compliant way of doing this though. Dave Herman from the TC39 suggested it in a HN comment when I first published this.
I'm not sure if a fix should be applied anyway. Is anyone using this lib? Or is it just valuable to learn more about js? If the latter, I prefer to keep it as is, so it reflects the explanation in its companion post. What do you think?

Yes, it has been a long time form last commit. I understand the situation.
The radix parameter of Number.prototype.toString was added in ECMAScript 5.1. So it may have been implemented by almost all JavaScript engines.
And yes, you are right. ECMA-262 did not strictly define the output of Function.prototype.toString. It may be different in other ECMAScript engines. Although it passed tests on Chrome, Safari and Firefox. But I still understand your serious attitude.
The README of this project said it is 'A tool and javascript library'. And you published it on NPM. So I thought it was not just a demo of a paper, but a library which is need to be maintained...¯_(ツ)_/¯
This is your project. You have the right to make choice. I'm just have an idea and write it here. 😉


rp4kJZ6nFC5GNpokG7mykUywa1Z4CfneAAI agree with you, we need to finish setting up a meta-standard for dealing with XLS standards.

I agree with you, we need to finish setting up a meta-standard for dealing with XLS standards.
There should be a time limit for XLS draft standards to remain in draft mode. When they are either accepted by crossing the time limit or rejected by the community the issue is closed. If accepted a PR is made to merge the standard into the code-base with draft status removed.
We also need a way to deprecate old standards. I propose old standards can be deprecated by opening an issue which just starts with deprecate: XLS-nn and causes the same sequence of events as above to happen, with a successful deprecation resulting in a simple deprecation notice being entered into the code for that standard.
Time limit for all issues should be 3 months imho. Gives everyone lots of time to comment and integrate.
Thoughts?
Originally posted by @RichardAH in https://github.com/XRPLF/XRPL-Standards/issues/12#issuecomment-627930334

rp4kJZ6nFC5GNpokG7mykUywa1Z4CfneAA


Update tictac7x-rooftops to v0.6.1

Since pluginVersion was changed but pluginMessage wasn't, aren't users going to see a message they've seen before?

Since pluginVersion was changed but pluginMessage wasn't, aren't users going to see a message they've seen before?
If intentional, lmk & i'll merge

The message would be same yes. Wanted to keep the same one to make sure players who haven't updsted yet can see that  both the colossal wyrm and ape atoll are added, otherwise the message would be only about ape atoll.


Download onenote large file encounter 503 error

Category

[x] Question
[ ] Documentation issue
[ ] Bug

Expected or Desired Behavior
Suceessfully downloaded file.
Observed Behavior
1.encounter 503 Service Unavailable error
2.this file is *.one file and size is<PHONE_NUMBER>
3.everything looks great on O365 OneDrive website, I can ser it and download it via browser.

Hi @k-tsoi,
Thanks for help, more information is here.
request-id: d8b3b69f-e06f-2000-c655-c165c26d0c5d
Date: Mon, 22 Mar 2021 08:32:48 GMT

But now I get this error instead, after redirted.
 Thanks!

@joewutaiwan the oneNote file is quite large, we would recommend downloading with byte ranges, do note that when downloading with byte ranges you need to ensure that no one else is making changes while it is being downloaded
https://docs.microsoft.com/en-us/graph/api/driveitem-get-content?view=graph-rest-1.0&tabs=http#partial-range-downloads

hi @k-tsoi
Thanks for reply, and it is my inferations:

While onenote file is chaning, download operation would fail.
We should use Range header to manage the download offset ourselves.
We used to assgin  Range: bytes=123- to re-download file, is this also not recommended?

I made another try with Range header, but still get the same error, is it possible to infer the cause that the file is changing?

* OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104

The range needs to be applied to the download.

hi @chackman,
Thanks for reply,
Is possible to give me a example? Because I already enclosed Range header in download request.
GET /_api/v2.0/drives/drive_id/items/015VNURH4Z6BUMCKLJOVGJFX6M7JUTJHCL/content HTTP/1.1
Range: bytes=0-1023

Could find any document instance in:
https://docs.microsoft.com/en-us/onedrive/developer/rest-api/api/driveitem_get_content?view=odsp-graph-online
Thanks!

The Range looks correct. If this is still consistently failing then please raise a support case through customer support.

I encountered this same problem. Is there any update, please?


bug: error in generate_random_evm_address

Bug Report
Kakarot version: 065a1fd58fee654c7a62622c21176f8bee89df39

Current behavior:
As of now there is a bug with the current generate_random_evm_address helper, since it is initialized with the same seed 0, the random evm address generated will always be the same

Expected behavior:
It should generate a random evm address on each call.
Steps to reproduce:

call the function twice and see that you will see the same evm address generated.

Related code:
This stack overflow can explain the reason behind the error better.
Other information:

Making this method a fixture should fix it
I will resolve this in #669

We can close this issue, as we discovered that in places where we do want a random address we can use a different seed. In some cases we might want to work with the same sequence of randomly generated address, and in places where we don't need it we can just put another seed.


Creating uniform screen shots for the code examples to improve the viewing in the LibRefAPI and GuideDoc pages.

@nCastle1
Can you do a code review for this. Actually no code to review, only screen shot updates.
thanks,
-don


Multiple Instance weird bug

Describe the bug
Running on Google Chrome. :
I have a little concern, when I use it on 2 instances (one screen portrait mode and the other is landscape).
So I have 2 jason config file. I start the first rotator under my user profile and
the second under another user profile (using RunAs).
Both are running and rotating for 10 minutes and they stop rotating.
If I clause one of chrome process, the second one can be restarted and work well.  I've try different duration and tab refresgh parameter in the json config without succes.
It's like timer get confuse event if the running une 2 set of credential.
Could you try this configuration and try to figure out ?  I can give you the URL of my 2 json config.
Alone : both of my json config work well.  as soon as second instance running, It just stop rotating after some minutes

Hi thank you for the bug report.
I will try to reproduce the issue locally. Can you send me the link to your JSON files?
You can obfuscate or remove the URLs if you want.

Here my URL :
Horizontal : https://bit.ly/3mS5RXo
Vertical :  https://bit.ly/37P5sPn
One you get it, i'll remove it at you next post ;-)
thank a lot !

Let me know if i can help or test something !

Thanks for the links. One more question how are your starting your separate processes?
Are they isolated or do you just open a second window and switch the profile?
Can you share the command line arguments for the startup as well?
Thanks!

As I have 2 differents json file (one per screen), I was not able to do it in the config of TabRotator.
So I decide to use a script powershell to launch both instance under different Windows Account.
I use :
start-process chrome.exe  #/(launch Chrome under current user session This one have rotator config 1 vertical screen)
start-process chrome.exe -credential   #/(to launch Chrome under another user Account  This one have TabRotator config 2 horizontal screen)
Tell me if you are able to reproduce this issue ! Do not hesite for more detail

Were you able to reproduce the problem ?

I have this exact problem!
On the same laptop I had 2 Chrome profiles run 2 different JSON configs. After a while both Chrome instances stopped working. If i closed one of the Chrome windows and reloaded the second window, the second would continue to work.
I started the 2 Chrome profiles with the command lines:
"C:\Program Files\Google\Chrome\Application\chrome.exe" --profile-directory="Default"
"C:\Program Files\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 1"
I never got this to work, so ended up running the 2 Chrome profiles from 2 computers :/


ECS Design Question - Weapons, Projectiles, Collision

Hi there,
This is probably not the right place to ask but I give it a shot anyways. It's my first time using an ECS for a game I'm building (follow my progress here: https://nickyvanurk.com/void/). My question is regarding systems design. I want a spaceship that can have multiple weapons with different projectiles, those projectiles can also collide with other objects and be destroyed and eventually spawn some effect.  Does anyone have any suggestions on how one would go about implementing this in an ECS way? What I have currently is a Weapons component which has an array of Weapon components and a single WeaponSystem. My collision logic is still done in my PhysicsSystem.
Source code: https://github.com/nickyvanurk/3d-multiplayer-browser-shooter/tree/master/client/src
Thank you in advance!
P.S I read all the source code of ecsy, ecsy-three, all examples. Still don't have a proper clean solution. I feel I might make it more complex than it needs to be.

The correct place to ask would probably be the forum: https://discourse.mozilla.org/c/mixed-reality/ecsy
that being said, the main limitation of the ECS pattern is that you can only have one instance of a component on an entity. So my gut feeling is to create one entity for each weapon and then you can give that a weapon component, a local location, a parent object, a component to reference the physics representation. And then yeah you can reference those weapon entities via an array in a component in your main ship entity.
Your systems should then be whatever systems you need to change those entities in the ways you need to. What needs to happen to make the parent child relationship between spaceship and weapons to work. Probably a system to handle input and make the weapons actually shoot.
So yeah just glancing over it what you have already looks pretty good. You could probably abstract some stuff away and make more different components and systems to be able to reuse the components later, but the most important thing is that you can make your code do what you need it to, not to be "correct" by some arbitrary standard.

Thank you very much. The way I described it currently works indeed. You can follow my progress here: https://nickyvanurk.com/void/ Will be a cool ecsy demo for sure.

I was doing something similar to the array of components too. Per design you can't have multiple components instances per entity, but you can have a component with an array of elements.
I was doing something like that when I needed multiple sounds within the same entity.
By the way your demo looks really cool! looking forward to see more of it! :)
Closing it now so we could move this type of discussions to the forum.
Thanks!


[2.1] OSSM-1928 Remove erroneous maistra-version label from chart overlays

This label gets added when the chart is copied from the overlay dir to the final dir.

/test istio-operator_unittests-2.1


Feature request: mass add domains/urls across programs

At the moment, you can only add domains and URLs within a program (i.e. with he -p flag, or in the currently active program). It might be useful to have a "bulk add" feature that takes the input and adds it to any programs that match the input, regardless of the specified or active program. For example, this could look like:
cat urls_all.txt | bbrf url add - --cross-program
cat domains_all.txt | bbrf domain add - --cross-program

This will be possible in v1.1.4 by means of a dynamic program name -p @INFER, which will try to infer the program name based on other available information.


Add test for reporting correct number of snapshots

This was fixed in 1.40, added a test out of #593 to confirm

Tests also remove some env vars that was causing colors to get in the way of the assertions


Add linkage type for Pub packages (Flutter / Dart)

I concluded it was not supported because for Pub packages (Flutter / Dart) the dependencies were not indicated as statically linked.
Should I report that as a separate issue?
Originally posted by @timovandeput in https://github.com/oss-review-toolkit/ort/issues/3084#issuecomment-694353695

FYI: To my best knowledge, Pub packages can only be statically linked because they end up in a single integrated binary executable.

At least https://flutter.dev/docs/development/platform-integration/c-interop#dynamic-vs-static-linking describes both, so I'd assume also both is possible, and we need a way to detect the linkage type. But I'm no Flutter / Dart expert after all...

That specific documentation refers to the integration of (e.g. a statically linked Pub package) with native code that interacts with native Android or iOS code. So it relates to the static/dynamic linking of native code within the library that is exposed by Pub.
I don't believe these dynamically linked libraries are in any way exposed via Pub.


Update Product name and other issue

Please ensure your pull request (PR) adheres to the following guidelines:

Please refer to our contributing documentation for any questions on submitting a pull request, link: Contribution Guide

Pull Request Checklist
Please check if your PR fulfills the following requirements:

[ ] Testing of all the changes has been performed (for bug fixes / features)
[ ] The readme.html has been reviewed and added / updated if needed (for bug fixes / features)
[ ] Use the following format for the PR description: <App Name>: <PR Type> - <PR Description>
[ ] Provide release notes as part of the PR submission which describe high level points about the changes for the upcoming GA release.
[ ] Verify all checks are passing.
[ ] Do NOT use the next branch of the forked repo. Create separate feature branch for raising the PR.
[ ] Do NOT submit updates to dependencies unless it fixes an issue.

Pull Request Type
Please check the type of change your PR introduces:

[ ] New App
[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation
[ ] Other (please describe):

Security Considerations (REQUIRED)

[ ] If you are exposing any endpoints using a REST handler,
please document them in the readme.html.
[ ] If this is a new connector or you are adding new actions

[ ] Please document in the readme.html all methods (eg, OAuth) used to authenticate
with the service that the connector is integrating with.
[ ] If any actions are unable to run on SOAR Cloud, please document this in the readme.html.

[ ] Are you introducing any new cryptography modules? If yes, please elaborate their purpose:
[ ] Are you are accessing the file system? If yes, please verify that you are only accessing paths returned through
the Vault API.
[ ] Are you are marking code to be ignored by Semgrep with nosemgrep?
If yes, please provide justification in an additional comment next to the ignored code.

Release Notes (REQUIRED)

Provide release notes as part of the PR submission which describe high level points about the changes for the upcoming GA release.

What is the current behavior? (OPTIONAL)

Describe the current behavior that you are modifying.

What is the new behavior? (OPTIONAL)

Describe the behavior or changes that are being added by this PR.

Other information (OPTIONAL)

Any other information that is important to this PR such as screenshots of how the component looks before and after the change.

Pay close attention to (OPTIONAL)

Any specific code change or test case points which must be addressed/reviewed at the time of GA release.

Screenshots (if relevant)

Thanks for contributing!

@dzaytsevGIB The min_phantom_version should be 5.4.0, do you want to keep 5.3.0 only and you can update?

@spopat-crest In a future we are planing global update of this integration.
I taked 5.3.0 from the last report

Hello @spopat-crest,
What else the main i should do to public this PR.

@dzaytsevGIB, The PR looks good and no action is required from your side for now. We will review and proceed with the GA.

Hello @spopat-crest,
Some another question how can we subscribe this App like "supported by developer", because for now it's marked is "unsupported by developer".

We have another app on Splunk base: https://splunkbase.splunk.com/app/6661 this app is marked as "supported by developer"

@dzaytsevGIB To mark this app as "Developer Supported" please reach out to @nastorSplunk

@spopat-crest Can you add him to this PR?
If i should mail him can you please share with me his email because i didn't found it in his github account?

@dzaytsevGIB Sure, He is the product manager of SOAR, here is his email Nicholas Astor<EMAIL_ADDRESS>

Hello @spopat-crest,
Can you please, provide the PR status?

@dzaytsevGIB, Do you want this app to be converted to developer supported or released as community supported only?

@spopat-crest
I think it will be good if we can release this app like Develop supported.
We already create request to make this app develop supported.

Field this form: https://docs.google.com/forms/d/e/1FAIpQLSecsmI3EmaesZrqWZbiCdhiiRkhNwy8eV_OLUODlWdQFeWEDg/viewform

Hello @dzaytsevGIB, To public the app, current changes need to be merged in the main branch on GitHub. Currently, there are some static checks we are looking into, will inform you once it is done.

Hello @spopat-crest,
Can you please, provide the PR status?

@dzaytsevGIB We are in the progress of no_code_consts failure as expected failure, which should be done by today, meanwhile could you please resolve the remaining static failures(consistent_variable and light_and_dark_theme_logos) and linting failures

Once all the checks are green you can merge the branch to next and proceed for release.

Hello @spopat-crest,
Thank you for your response, i'll try to fix this points as soon as possible

@dzaytsevGIB We have resolved all the failures from our side, the PR is ready to merge once you are done with the pipeline fixes. Do let us know if you require any help.

Hello @spopat-crest,
I have fixed all the problems from the report, can we merge this PR now.

@dzaytsevGIB There is lint failure as well, could you please look into it

Hello @spopat-crest,
I have some issue with "linting error" i am little bit do not understand how to fix it. I look into integrations of others companes and linting.yml looks the same with us. Please, can you give some recomendation how can i fix it.

@dzaytsevGIB All checks are passing now, you can merge this pr and perform release processes as well.

Hello @spopat-crest,
Can you mark this pr as reviewed or I need to wait for review from jdemelo?

Hello @spopat-crest,
We already update logo on Git Hub but in Splunkstore ( https://splunkbase.splunk.com/app/5968 ) we still have old logo. What we should to change it?

Hi @dzaytsevGIB
It'll get automatically updated once the code is merged on main. We're doing some final checks and post that it'll get merged.

@dzaytsevGIB The app is now released on Splunkbase and the logo is updated.


settings icon

i think 3 types of icons can fit in this description, this:
https://icon-sets.iconify.design/mdi/tune-variant/
this:
https://icon-sets.iconify.design/mdi/account-cog-outline/
and this:
https://icon-sets.iconify.design/mdi/cog/
would be lovely if you could include them.
PS: if u prefer i can open only one issue and keep adding the requests i think should be a great improvement to this library there, up to you, anyway, thanks again.

Added cog icon: https://github.com/cyberalien/line-md/commit/b956fc5e92c3979fafe9369800f32ee5caebe06f
It was very tricky to create, I tried new idea on how to do animations and it worked.


[BACKLOG-24042] also set prot p on ftps upload

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -fn -f 'pom.xml' -pl 'engine' -P '!assemblies' -Dsurefire.runOrder=alphabetical -Daudit -amd clean install

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/main/java/org/pentaho/di/job/entries/ftpsget/ftp4che/SecureDataFTPConnection.java
  engine/src/test/java/org/pentaho/di/job/entries/ftpsget/FTPSConnectionTest.java

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes (click to expand)
org.pentaho.di.core.injection.bean.BeanInjector

Branch Change: -0.8% :small_red_triangle_down:
Complexity Change: -1.2% :small_red_triangle_down:

org.pentaho.di.job.entries.ftpsget.ftp4che.SecureDataFTPConnection

Instruction Change: -6.6% :small_red_triangle_down:
Line Change: -10.3% :small_red_triangle_down:
Method Change: -20% :small_red_triangle_down:

org.pentaho.di.job.entries.getpop.MailConnectionMeta

Branch Change: -1% :small_red_triangle_down:
Complexity Change: -1.5% :small_red_triangle_down:
Instruction Change: -0.3% :small_red_triangle_down:

org.pentaho.di.trans.step.StepMeta

Branch Change: -0.6% :small_red_triangle_down:
Complexity Change: -0.5% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:
Line Change: -0.3% :small_red_triangle_down:

org.pentaho.di.trans.steps.groupby.GroupByMeta

Branch Change: -4.1% :small_red_triangle_down:
Complexity Change: -4.2% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:
Line Change: -0.3% :small_red_triangle_down:

org.pentaho.di.trans.steps.ifnull.IfNullMeta

Branch Change: -2% :small_red_triangle_down:
Complexity Change: -1.9% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:

@pentaho/kashyyyk please review


Android example very slow running on device following light transmission changes

The commit 44928e0df49a202c201a6962775e6883cafebb7e makes mobile example run on android device at ~1 FPS (~20 before).
To reproduce:
cargo apk run -p bevy_mobile_example

@coreh @superdump any ideas?

Hmm my money is on the shader code, given that we don't run the transmission pass without transmissive materials. Maybe try commenting out the relevant branches/code blocks in pbr_functions.wgsl?
ex: if diffuse_transmission > 0.0 {

Commenting out suggested by @cart shader code makes it run faster but not as fast as before.
I measured with diagnostic plugins and got this:
Before: 14 FPS
After: 2 FPS
Without shader code: 10 FPS

but not as fast as before.

For clarity: did you test the commit right before the Transmission commit?

but not as fast as before.

For clarity: did you test the commit right before the Transmission commit?

Yes, d67fbd5e9

So one quick (partial) fix would be to put all of that code behind a "shader def", which we set whenever diffuse transmission is above 0.0.

It might be worth looking at a renderdoc capture of pre and post merge. Most significant changes should be easy to spot there.

I'm not able to reproduce a significant drop on my Pixel 6.
Average FPS across 10-ish seconds each
https://github.com/bevyengine/bevy/commit/d67fbd5e90a1eb307dc5493abd475ac172698e2e: 24.85
main (no changes to transmission code): 25.59
main (transmission branches commented out): 25.77
@fudini what phone are you testing on?

@fudini what phone are you testing on?

Huawei P30 Lite

According to GSMArena:

OS
Android 9.0 (Pie), upgradable to Android 10, EMUI 10.0

Chipset
Kirin 710 (12 nm)

CPU
Octa-core (4x2.2 GHz Cortex-A73 & 4x1.7 GHz Cortex-A53)

GPU
Mali-G51 MP4

OS	Android 9.0 (Pie), upgradable to Android 10, EMUI 10.0
Chipset	Kirin 710 (12 nm)
CPU	Octa-core (4x2.2 GHz Cortex-A73 & 4x1.7 GHz Cortex-A53)
GPU	Mali-G51 MP4

I'm bumping this to 0.13. While this regression isn't ideal, it clearly doesn't apply to every device. We can iterate here (and consider doing a patch release once we identify the right fix)

I don't have an android device available for now, but I can't reproduce on the emulator

I've been testing compiling wasm and android on my phone, a OnePlus 7T Pro, and suspect I am running into this, however I noticed it performs better if I zoom out which, if related, may be helpful information?
I took the mobile example, removed everything but the cube and the camera (no lights) and compiled it to android but also made a wasm build loaded in a cordova app and put that on my phone too.
The android build hovers around 50fps, hits 60fps if I zoom out and drops to 40fps if I zoom in.
The wasm build hovers in the single digits and hits 90fps if I zoom out.
Setting the camera transform to something like Transform::from_xyz(-22.0, 2.5, 25.0) gave me good performance, but even just a few units back was enough to notice a difference. I'll try out d67fbd5 with it over the weekend when I get a chance to see if it makes a difference.

d67fbd5 didn't fix the "zoom issue" I noticed, although it did perform slightly better.
Here are some shots with the camera positioned further back and then closer to the cube. Top is d67fbd5 and Bottom is main.

Should I make a separate issue for this?

Zooming in makes the material cover more pixels, so the degraded performance confirms that the fragment shader is the bottleneck.

I've noticed an extreme performance regression on quest 2. Not 100% sure if it's related but it did not occur prior to the 0.12 release at least a few weeks before hand, and now FPS with a very very minimal example is very bad.

I can confirm now having a different shader on an objects completely fixes the performance issue

Just to note that the issue affects PC as well. Less noticeable as they can handle the load, but with VSync off I see a drop in FPS from +300 to ~100 on laptops with Intel HD graphics and Nvidia discrete. see #11213 . Thanks!

Just to note that the issue affects PC as well. Less noticeable as they can handle the load, but with VSync off I see a drop in FPS from +300 to ~100 on laptops with Intel HD graphics and Nvidia discrete. see #11213 . Thanks!

I noticed this too on my amd laptop. I can hit 120 frames, but if I get close to a cube so that it fills the screen, the frame rate drops 10-20 frames. Can't really tell if the refresh rate is locked at 60.

I can confirm now having a different shader on an objects completely fixes the performance issue

@MalekiRe , can you share an example of said shader? Thanks!

Ok, so I tried to isolate the issue while preserving original PBR/material features.
I found that the issue exists when using ExtendedMaterial as well (with StandardMaterial base).
I created a "blank" fragment shader (looking at extended_material.wsgl ),
Applied that to my GLTF models as extended material (great guide & code on how to patch SceneBundle here, many thanks @nicopap!!!!)
@fragment
fn fragment(
    in: VertexOutput,
    @builtin(front_facing) is_front: bool,
) -> FragmentOutput {
    var pbr_input = pbr_input_from_standard_material(in, is_front);
    out.color = pbr_input.material.base_color;
    var out: FragmentOutput;

    // Slow. from original file.
    //out.color = apply_pbr_lighting(pbr_input);

    // Fast
    out.color = pbr_input.material.base_color;
    return out;
}

With this frag shader the issue is non-existent on Android. High fps with many entities / zoomed in.
It was clear that the offending function was apply_pbr_lighting(pbr_input). Hard to believe, right?  :stuck_out_tongue_winking_eye:
So I went about trying to isolate the problem within this function.
Copied apply_pbr_lighting() from pbr_functions.wgsl to my extended mat shader.
It applies all light sources, concating them here:
https://github.com/bevyengine/bevy/blob/22e39c4abf6e2fdf99ba0820b3c35db73be71347/crates/bevy_pbr/src/render/pbr_functions.wgsl#L375-L379
I attempted to use only one light source at a time.
Sadly, could not find a single culprit source or function that causes the massive fps drop.
I can only say that direct_light has the biggest effect on fps (another shocker I'm sure :rofl: ),
But even it caused only a 30% drop in fps.
All combined and enabled the issue exists and fps tanks.
For now, I stripped the apply_pbr_lighting func to an absolute minimum - no shadows (cause a crash on Android anyway...), no ambient, no point lights, no spot lights - only directional light.
That works for my needs at the moment with good fps.
Sorry I couldn't point out the root cause of the zoomed-in fps drop.. really tried removing line by line from pbr_functions but that didn't give anything. Just many calculations together lead to drop. Sorry.
Anyway, if anyone needs a simple working shader, here's my stripped down  custom_shader.wgsl:
#import bevy_pbr::{
    pbr_fragment::pbr_input_from_standard_material,
    forward_io::{VertexOutput, FragmentOutput},
    pbr_types,
    pbr_bindings,
    mesh_view_bindings as view_bindings,
    lighting,
    utils::E,
}

fn apply_pbr_lighting(
    in: pbr_types::PbrInput,
) -> vec4<f32> {
    var output_color: vec4<f32> = in.material.base_color;

    // calculate non-linear roughness from linear perceptualRoughness
    let metallic = in.material.metallic;
    let perceptual_roughness = in.material.perceptual_roughness;
    let roughness = lighting::perceptualRoughnessToRoughness(perceptual_roughness);
    let ior = in.material.ior;
    let thickness = in.material.thickness;
    let diffuse_transmission = in.material.diffuse_transmission;
    let specular_transmission = in.material.specular_transmission;

    // Neubelt and Pettineo 2013, "Crafting a Next-gen Material Pipeline for The Order: 1886"
    let NdotV = max(dot(in.N, in.V), 0.0001);

    // Remapping [0,1] reflectance to F0
    // See https://google.github.io/filament/Filament.html#materialsystem/parameterization/remapping
    let reflectance = in.material.reflectance;
    let F0 = 0.16 * reflectance * reflectance * (1.0 - metallic) + output_color.rgb * metallic;

    // Diffuse strength is inversely related to metallicity, specular and diffuse transmission
    let diffuse_color = output_color.rgb * (1.0 - metallic) * (1.0 - specular_transmission) * (1.0 - diffuse_transmission);

    let R = reflect(-in.V, in.N);

    let f_ab = lighting::F_AB(perceptual_roughness, NdotV);

    var direct_light: vec3<f32> = vec3<f32>(0.0);

    // Transmitted Light (Specular and Diffuse)
    var transmitted_light: vec3<f32> = vec3<f32>(0.0);

    // directional lights (direct)
    let n_directional_lights = view_bindings::lights.n_directional_lights;
    for (var i: u32 = 0u; i < n_directional_lights; i = i + 1u) {
        var light_contrib = lighting::directional_light(i, roughness, NdotV, in.N, in.V, R, F0, f_ab, diffuse_color);

        direct_light += light_contrib;
    }

    // Total light
    output_color = vec4<f32>(
        //transmitted_light + direct_light + indirect_light + emissive_light, // original
        direct_light,
        output_color.a
    );

    return output_color;
}

@fragment
fn fragment(
    in: VertexOutput,
    @builtin(front_facing) is_front: bool,
) -> FragmentOutput {
    // generate a PbrInput struct from the StandardMaterial bindings
    var pbr_input = pbr_input_from_standard_material(in, is_front);

    var out: FragmentOutput;
    // apply lighting
    out.color = apply_pbr_lighting(pbr_input);

    return out;
}

I wanted to try this out after #11627 was merged but I happened to break the phone I was using :( This issue unfortunately doesn't happen on my replacement, a pixel. I checked out the commit before and after #11627 and it behaved identically, roughly staying at 49-60FPS regardless of how close or far I was to objects.

This issue should be fixed. Can anyone who ran into the original issue reproduce it on 0.13?

There was a lengthy debug and discussion in Bevy #xr channel.
At least in Oculus Quest, the performance with pointlight & shadows is still remarkably low (~60 fps with a simple cube-scene)
Performance improves a lot (120fps) when either
a) disabling shadows from the point light
commands.spawn(PointLightBundle {
    point_light: PointLight {
        intensity: 1500.0,
        shadows_enabled: false,
        ..default()
    },
    transform: Transform::from_xyz(4.0, 8.0, 4.0),
    ..default()
});

or
b) using directional light
commands.spawn(DirectionalLightBundle {
    transform: Transform::from_rotation(Quat::from_rotation_z(PI / 2.0)),
    ..default()
});

Might related to GPU memory write bandwidth (4.4TB writes/s with 120fps if shadows disabled in contrast to 6.8TB writes/s and 60fps when shadows enabled)


How can make the server run on public test?

I want to make the server run on the new public test, how can i do this?

@bagvendt Does that work for you with the mistlands update? I had that previously and it worked fine but I currently see it crashing at start.

Going to chime in and mention that I don't use the docker-compose version, and this line in my /etc/sysconfig/valheim-config worked for me:
STEAMCMD_ARGS=-beta public-test -betapassword yesimadebackups

@bagvendt Does that work for you with the mistlands update? I had that previously and it worked fine but I currently see it crashing at start.

Yes!

Seems like it would be convenient.

The only downside to that is it would need to assume the test and passwords will always have the same value, although this could very well be true. I think the current way works well but should maybe have an explicit example in the documentation?

How to figure out the current installed version?


xlsx output file error?

Hi @DominikBuchner
I am having issues making sense of the xlsx output file. I have a fasta with 99 seqs, ASV_1 to ASV_99.
However, the first column of the xlsx output file only contains odd numbered ASV IDs and some raw sequences in between. Where are my even numbered ASVs and what do the raw sequences mean? Further, the file only contains ASVs down to ASV_87, don't know what happened to the rest. I checked my input fasta, all 99 ASVs are definitely there and have the regular format >ASV_x followed by the raw sequence on the next line.
My output file is attached.
BOLDResults_queryFile.fa.1.0.560931114014238.xlsx
Thanks for having a look at it. I really would like to use your tool, but given the current output this seems a bit difficult ;-)
cheers
Nauras

Dear Nauras,
I will have a look at your issue this evening since I'm in the lab atm. We
will find a solution for sure!
Best Dominik
naurasd<EMAIL_ADDRESS>schrieb am Di., 19. Jan. 2021, 13:49:

Hi @DominikBuchner https://github.com/DominikBuchner
I am having issues making sense of the xlsx output file. I have a fasta
with 99 seqs, ASV_1 to ASV_99.
However, the first column of the xlsx output file only contains odd
numbered ASV IDs and some raw sequences in between. Where are my even
numbered ASVs and what do the raw sequences mean? Further, the file only
contains ASVs down to ASV_87, don't know what happened to the rest. I
checked my input fasta, all 99 ASVs are definitely there and have the
regular format >ASV_x followed by the raw sequence on the next line.
My output file is attached.
BOLDResults_queryFile.fa.1.0.560931114014238.xlsx
https://github.com/DominikBuchner/BOLDigger/files/5835868/BOLDResults_queryFile.fa.1.0.560931114014238.xlsx
Thanks for having a look at it. I really would like to use your tool, but
given the current output this seems a bit difficult ;-)
cheers
Nauras
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/DominikBuchner/BOLDigger/issues/7, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJH6ILAX2BDG3XRJHHM2TI3S2V5U3ANCNFSM4WIXJLHQ
.

Dear Nauras,
I will have a look at your issue this evening since I'm in the lab atm. We
will find a solution for sure!
Best Dominik
naurasd<EMAIL_ADDRESS>schrieb am Di., 19. Jan. 2021, 13:49:

Hi @DominikBuchner https://github.com/DominikBuchner
I am having issues making sense of the xlsx output file. I have a fasta
with 99 seqs, ASV_1 to ASV_99.
However, the first column of the xlsx output file only contains odd
numbered ASV IDs and some raw sequences in between. Where are my even
numbered ASVs and what do the raw sequences mean? Further, the file only
contains ASVs down to ASV_87, don't know what happened to the rest. I
checked my input fasta, all 99 ASVs are definitely there and have the
regular format >ASV_x followed by the raw sequence on the next line.
My output file is attached.
BOLDResults_queryFile.fa.1.0.560931114014238.xlsx
https://github.com/DominikBuchner/BOLDigger/files/5835868/BOLDResults_queryFile.fa.1.0.560931114014238.xlsx
Thanks for having a look at it. I really would like to use your tool, but
given the current output this seems a bit difficult ;-)
cheers
Nauras
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/DominikBuchner/BOLDigger/issues/7, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJH6ILAX2BDG3XRJHHM2TI3S2V5U3ANCNFSM4WIXJLHQ
.

sure, cheers ;-)

sure, cheers ;-)

Issue solved, my problem was that I had line breaks in my fasta ;-)

Issue solved, my problem was that I had line breaks in my fasta ;-)


Unable to access openldap container

Hi,
I am new to containers and openldap containers.
I started openldap with the following commands.
docker run --name my-openldap-container --detach osixia/openldap:1.1.9
and did an ldap search as Suggested in the documentation.
docker exec my-openldap-container ldapsearch -x -H ldap://localhost -b dc=example,dc=org -D "cn=admin,dc=example,dc=org" -w admin
Got the following output
LDAPv3
base <dc=example,dc=org> with scope subtree
filter: (objectclass=*)
requesting: ALL

example.org
dn: dc=example,dc=org
objectClass: top
objectClass: dcObject
objectClass: organization
o: Example Inc.
dc: example
admin, example.org
dn: cn=admin,dc=example,dc=org
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword:: e1NTSEF9QlNEZmZEVEM1YVNUNFk0NVFVL0RsZHUwcFdzZ0UwdFY=
search result
search: 2
result: 0 Success
numResponses: 3
numEntries: 2
Docker -ps result is as follows
CONTAINER ID        IMAGE                   COMMAND                 CREATED             STATUS              PORTS               NAMES
c9244503d4b9        osixia/openldap:1.1.9   "/container/tool/run"   2 minutes ago       Up 2 minutes        389/tcp, 636/tcp    my-openldap-container
[
[root@localhost ~]# netstat -atn
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 <IP_ADDRESS>:111             <IP_ADDRESS>:*               LISTEN
tcp        0      0 <IP_ADDRESS>:22              <IP_ADDRESS>:*               LISTEN
tcp        0      0 <IP_ADDRESS>:25            <IP_ADDRESS>:*               LISTEN
tcp        0    256 <IP_ADDRESS>:22        <IP_ADDRESS>:52055      ESTABLISHED
tcp6       0      0 :::111                  :::*                    LISTEN
tcp6       0      0 :::22                   :::*                    LISTEN
tcp6       0      0 ::1:25                  :::*                    LISTEN
There is no process listening on 389 or 636

You have to map the ports when creating the container in order to access from your host:
docker run --name my-openldap-container -p 389:389 -p 689:689 --detach osixia/openldap:1.1.9

I had this exact problem, maybe put a nice notice in the README (which does include a beginner's guide, with the port argument excluded)


Document Cloud limitations

Task is to make sure all of these are documented.
As of now not confirmed for GA:

[x] Not supporting Airflow, Superset (due to state management and required ingress from public internet).
[ ] Not supporting tap-google-analytics key_file_location (no 'secrets file' support in scope. recommendation: use other config inputs for auth).
[ ] No "too old" Meltano versions.
[ ] No custom Dockerfiles.

Confirmed for GA, but not in Alpha or Early Beta:

[ ] No container_spec support.
[ ] No private pip_url access. (Although may be possible to solve automatically by using an encrypted .env file.)

Why don't we let any env var be expanded here?

Not for any deliberate reason I'm aware of. We've been incrementally doing a bit of 'whack-a-mole' to expand where env vars are accepted. cc @cjohnhanson who has been making progress increasingly here and might be able to speak to relative level of effort to tackle pip_url values next.
Related topic:

https://github.com/meltano/meltano/issues/3422
From the GitLab original here: https://gitlab.com/meltano/meltano/-/issues/3506

I think the main reason we have not prioritized environment variables in the pip_url is because it's just a string of arguments for pip install, which can also be set with environment variables.
So
pip_url: '--only-binary=":all" --index-url https://pypi.org/simple my-package'

can be set with a simpler string
pip_url: 'my-package'

and env vars
PIP_ONLY_BINARY=":all:" \
PIP_INDEX_URL="https://pypi.org/simple" \
meltano install

Which is probably preferable in most situations.

@edgarrmondragon Using PIP_INDEX_URL is a good idea. I wonder why the comment suggesting it in the thread about env vars for pip install was heavily downvoted. I initially missed it.
By using per-plugin env configs we can provide different package indexes (with different credentials) for different plugins.
A downside to this approach is that it breaks our venv reuse strategy, which relies on the pip_url being enough to identify the contents of a virtual environment. That strategy is already flawed for a couple other reasons...

Archiving this repo since now the docs are in our main docs.


[FLINK-6270] Port several network config parameters to ConfigOption

This ports some memory and network buffers related config options to new ConfigOption instances. These include:

taskmanager.memory.size
taskmanager.memory.fraction
taskmanager.memory.off-heap
taskmanager.memory.preallocate
taskmanager.network.numberOfBuffers
taskmanager.memory.segment-size

Some of these already existed as ConfigOption instances in MiniClusterConfiguration.

merging.


ESP8266 Reboots Every Second After Flashing FirebaseClient Code

I'm using an ESP8266 with the FirebaseClient library to connect to a Firebase Realtime Database. However, after flashing the provided code, the ESP8266 reboots every second. I have tested this on another ESP8266, and the result is the same. I also tried adjusting the MMU option to 3 (16KB cache + 48KB IRAM and 2nd Heap (shared)), but the issue persists.
Previously, I was using the "Firebase-ESP-Client" by mobizt, which worked perfectly for me. Since it's deprecated, I'm trying to recode using the new "FirebaseClient" library.
After resetting, the following error message is displayed:
����g��s��n<�l�$`b��|s�$�n��g�d`��s�l�l��Connecting to Wi-Fi...........
Connected with IP: <IP_ADDRESS>

Firebase Client v1.3.5
Initializing app...

 ets Jan  8 2013,rst cause:4, boot mode:(3,6)

wdt reset
load 0x4010f000, len 3424, room 16
tail 0
chksum 0x2e
load 0x3fff20b8, len 40, room 8
tail 0
chksum 0x2b
csum 0x2b
v0006b110
~ld

im using this Code from Library example replaced with my cretentials.
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <FirebaseClient.h>

#define WIFI_SSID "JO****EL"
#define WIFI_PASSWORD "TP12***745asd6"

// The API key can be obtained from Firebase console > Project Overview > Project settings.
#define API_KEY "AIzaSyCWo8hH***************************sElwspBqEi8"

// User Email and password that already registered or added in your project.
#define USER_EMAIL<EMAIL_ADDRESS>#define USER_PASSWORD "jo***************4"
#define DATABASE_URL "aq***************5-default-rtdb.firebaseio.com"

void asyncCB(AsyncResult &aResult);
void printResult(AsyncResult &aResult);

DefaultNetwork network; // initialize with boolean parameter to enable/disable network reconnection

UserAuth user_auth(API_KEY, USER_EMAIL, USER_PASSWORD);

FirebaseApp app;

#include <WiFiClientSecure.h>
WiFiClientSecure ssl_client1, ssl_client2;

using AsyncClient = AsyncClientClass;

AsyncClient aClient(ssl_client1, getNetwork(network)), aClient2(ssl_client2, getNetwork(network));

RealtimeDatabase Database;

unsigned long ms = 0;

void setup()
{
    Serial.begin(115200);
    WiFi.begin(WIFI_SSID, WIFI_PASSWORD);

    Serial.print("Connecting to Wi-Fi");
    while (WiFi.status() != WL_CONNECTED)
    {
        Serial.print(".");
        delay(300);
    }
    Serial.println();
    Serial.print("Connected with IP: ");
    Serial.println(WiFi.localIP());
    Serial.println();

    Firebase.printf("Firebase Client v%s\n", FIREBASE_CLIENT_VERSION);

    Serial.println("Initializing app...");

    ssl_client1.setInsecure();
    ssl_client2.setInsecure();

    ssl_client1.setBufferSizes(4096, 1024);
    ssl_client2.setBufferSizes(4096, 1024);

    initializeApp(aClient2, app, getAuth(user_auth), asyncCB, "authTask");

    // Binding the FirebaseApp for authentication handler.
    // To unbind, use Database.resetApp();
    app.getApp<RealtimeDatabase>(Database);

    Database.url(DATABASE_URL);

    // Since v1.2.1, in SSE mode (HTTP Streaming) task, you can filter the Stream events by using RealtimeDatabase::setSSEFilters(<keywords>),
    // which the <keywords> is the comma separated events.
    // The event keywords supported are:
    // get - To allow the http get response (first put event since stream connected).
    // put - To allow the put event.
    // patch - To allow the patch event.
    // keep-alive - To allow the keep-alive event.
    // cancel - To allow the cancel event.
    // auth_revoked - To allow the auth_revoked event.
    // To clear all previously set filters to allow all Stream events, use RealtimeDatabase::setSSEFilters().
    Database.setSSEFilters("get,put,patch,keep-alive,cancel,auth_revoked");

    // The "unauthenticate" error can be occurred in this case because we don't wait
    // the app to be authenticated before connecting the stream.
    // This is ok as stream task will be reconnected automatically when the app is authenticated.
    Database.get(aClient, "/test/stream", asyncCB, true /* SSE mode (HTTP Streaming) */, "streamTask");
}

void loop()
{
    // The async task handler should run inside the main loop
    // without blocking delay or bypassing with millis code blocks.

    app.loop();
    Database.loop();

    if (millis() - ms > 20000 && app.ready())
    {
        ms = millis();

        JsonWriter writer;

        object_t json, obj1, obj2;

        writer.create(obj1, "ms", ms);
        writer.create(obj2, "rand", random(10000, 30000));
        writer.join(json, 2, obj1, obj2);

        Database.set<object_t>(aClient2, "/test/stream/number", json, asyncCB, "setTask");
    }
}

void asyncCB(AsyncResult &aResult)
{
    // WARNING!
    // Do not put your codes inside the callback and printResult.

    printResult(aResult);
}

void printResult(AsyncResult &aResult)
{
    if (aResult.isEvent())
    {
        Firebase.printf("Event task: %s, msg: %s, code: %d\n", aResult.uid().c_str(), aResult.appEvent().message().c_str(), aResult.appEvent().code());
    }

    if (aResult.isDebug())
    {
        Firebase.printf("Debug task: %s, msg: %s\n", aResult.uid().c_str(), aResult.debug().c_str());
    }

    if (aResult.isError())
    {
        Firebase.printf("Error task: %s, msg: %s, code: %d\n", aResult.uid().c_str(), aResult.error().message().c_str(), aResult.error().code());
    }

    if (aResult.available())
    {
        RealtimeDatabaseResult &RTDB = aResult.to<RealtimeDatabaseResult>();
        if (RTDB.isStream())
        {
            Serial.println("----------------------------");
            Firebase.printf("task: %s\n", aResult.uid().c_str());
            Firebase.printf("event: %s\n", RTDB.event().c_str());
            Firebase.printf("path: %s\n", RTDB.dataPath().c_str());
            Firebase.printf("data: %s\n", RTDB.to<const char *>());
            Firebase.printf("type: %d\n", RTDB.type());

            // The stream event from RealtimeDatabaseResult can be converted to the values as following.
            bool v1 = RTDB.to<bool>();
            int v2 = RTDB.to<int>();
            float v3 = RTDB.to<float>();
            double v4 = RTDB.to<double>();
            String v5 = RTDB.to<String>();

        }
        else
        {
            Serial.println("----------------------------");
            Firebase.printf("task: %s, payload: %s\n", aResult.uid().c_str(), aResult.c_str());
        }

        Firebase.printf("Free Heap: %d\n", ESP.getFreeHeap());
    }
}

It's not library issue but your device or installation issue.
Library works well in ESP8266 and even in less memory device as SAMD.
You have to remove all Firebase libraries from your libraries folder and clear the Arduino cache and re-install.

https://github.com/mobizt/FirebaseClient?tab=readme-ov-file#supported-devices

You have to follow the issue template when posting what you think it is the library issue.
As I wrote this is not an issue which the library was tested intensively 24/7 on many devices.
All information you provide are not related to the wdt reset error that happens when your device is starting to connect to server.
You have to make sure that the ESP8266 Core sdk is up to date and you remove all GPIO pins connection from your board and the board power supply and cable are ok.

You can set the debug option in the Arduino IDE to get more information.
The wdt reset occurred while WiFiClientSecure is starting to connect to the server and perform TLS handshake.

thanks for your support sir.

Hi, did this issue get solved? Im having the same problem.

@VishveshC
https://github.com/mobizt/FirebaseClient?tab=readme-ov-file#introduction

Yes, I have gone through the ESP8266 memory config, have tried everything but it still seems to give a rst cause:2, only while using this library. Other WiFi enabled examples (including NTPClient) work fine so it has me thinking there's something wrong with my chip and this library? Or maybe cause of newer chips? (mine is NodeMCUv3 LUA) (Flash:4M)
Thanks for the quick reply.

@VishveshC
Library works normally even in less memory devices as samd21 (32k).
If the error occurred during authentication, it can be the stack overflow issue in the JWT token processing in Service Account/Custom Token authentications due to limited stack memory in ESP8266.
Otherwise, you have to check your code and manage Heap and stack usage.

Here is my exception stack. I have tried downgrading multiple libraries, changing heap sizes. This is the default StreamNoAuth  example I am using.
Maybe the SSL is the issue as it seems to reset right after the Firebase Client version prints out?

That is the memory allocation error which you should check the heap memory option which may not properly set.
Why? Because WiFiClientSecure was failed to allocate memory for BearSSL engine when starting server connection.

Here's the heap memory option set (NodeMCU LUA v3). No change. (I am fairly new to ESPs so please bear with me)

@VishveshC It looks ok.
If you just run the example code alone, and the board keeps crashed, you have to check your power cable or change the shorter cable.

Hi again, tried that too, with no success. However, using your old library and downgrading to ESP board 2.7.x solved the issue somehow (For anyone having the same issue and not getting anywhere). I know this is NOT a solution but for now, I might just be fine with it.
Anyways, can you please confirm the working ESP board version with this library? Seems to me there might be a slight problem with one of the newer verisons of either the library/ESP board database and my chip. (Issue might not be global but impacts me.)

@VishveshC
Read what I mentioned above again.
The problem is not specific to library in anyway because it works on Arm, SAMD, Teensy, Arduino Embed, Pico and ESP which the library does not rely on system unless Arduino's Client and File classes.
You can read the library documentation for supported platforms and devices.
You should post your code that reproduces the issue which anybody can test instead of saying that was taken from example.
You can decode the trace (stack) and post the result.
You should set the debug options in Arduino IDE to debug your system first.
Anyway, you should post the new issue instead of adding some irrelevant information here.

@VishveshC
Your possible cause that I've seen from your image above is wdt reset from out of memory which is not the same scenario of the original topic even the device was crashed.


Please someone add a RxStatus.loadingMoreError()

ATTENTION: DO NOT USE THIS FIELD TO ASK SUPPORT QUESTIONS. USE THE PLATFORM CHANNELS FOR THIS. THIS SPACE IS DEDICATED ONLY FOR FEATURE REQUESTS
Is your feature request related to a problem? Please describe.
No
Describe the solution you'd like
Add a RxStatus.loadingMoreError() inside the class "RxNotifier"
Describe alternatives you've considered
I added a "isLoadingMoreError" variable inside the GetXController

don't worry i will do it

https://github.com/jonataslaw/getx/pull/1860/files

What is the meaning of this status?
Controller can be in loading state, which finishes with either success or failure. What a "loadingMoreErrors" state? Looks like it's your custom logic not applicable to most projects.

It's useful when using "controller.obx(() => {}, onError: () {}, etc...)", if I set state "isError" the listview (inside "onSucess:") will not remain in screen so I can't just show a little message at the bottom of the "onSuccess" screen (same behavior as RxStatys.loadingMore()), but with RxStatus.loadingMoreError() it is possible.

What is the meaning of this status?
Controller can be in loading state, which finishes with either success or failure. What a "loadingMoreErrors" state? Looks like it's your custom logic not applicable to most projects.

It's useful when using "controller.obx(() => {}, onError: () {}, etc...)", if I set state "isError" the listview (inside "onSucess:") will not remain in screen so I can't just show a little message at the bottom of the "onSuccess" screen (same behavior as RxStatys.loadingMore()), but with RxStatus.loadingMoreError() it is possible.


make prober creds optional in go-gke-ci target

This change makes it so that prober creds are used by default, but can be overridden with an empty string at runtime to not use them. This is intended to enable a transition to workload identity for the prow jobs.

/assign @nan-yu

/lgtm


proxy

Heya there!
Wondering when you're going to work on the proxy feature, can't figure it myself how to add it.

sorry I think I'll not working on it for now. You need to do it by your self.
May be a day Ill be back on this project :/

Okay, appreciate you getting back to me.


Refactored Try Catch block to add Global Error Handler, added socket.io routes and email verifiction ( problem #23 solved )

Update Summary: Chatbot Routes, Email Verification, and Global Error Handling
Overview
This document outlines the recent updates made to the project, including the addition of chatbot routes, email verification during signup, and the implementation of a global error handler to streamline error management.
Changes Made
1. Chatbot Routes

File Updated: index.js
Details:

Added routes for the chatbot feature to enable real-time communication.
Integrated Socket.IO to handle message exchanges between users and the chatbot.

2. Email Verification

File Updated: user.js
Details:

Implemented email verification functionality as a pre-signup step.
Users now receive a verification email upon registration, which includes a unique verification link or code.

3. Global Error Handling

File Added: errorController.js
Details:

Created a centralized error handling controller to manage application errors.
Refactored routes to remove individual try/catch blocks and replace them with calls to the global error handler.

Benefits of Changes

Improved Code Clarity: The removal of repetitive try/catch blocks enhances the readability and maintainability of the codebase.
Enhanced User Experience: Email verification provides an additional layer of security and confirms user registration.
Real-Time Interaction: The addition of chatbot routes enables real-time communication, improving user engagement.

Next Steps

Thoroughly test the new features to ensure they work as intended.
Update the documentation to reflect these changes and guide future developers on how to use the new functionality.

Additional Notes

Ensure to check the configuration for email sending capabilities and Socket.IO integration.

If this helped, please put me a label of hacktoberfest-accepted as i have participated in that

@Shub95-arch

you've revealed some of your secret keys in the code. Please correct that, work on securing the environment variables, and send them to me. Once done, create a PR and attach an image if possible


[pyemma] version bump 2.2.2

Python3.5 on win-32 is broken due to a change in conda-build conda/conda-build#1111

pinning conda-build to 1.21.3 solves the problem.
@rmcgibbo should we pin conda-build now? We've discussed that already for other conda-build related issues.

Yeah, +1 to pin.
Sent from my iPhone

On Jul 14, 2016, at 7:43 AM, Martin K. Scherer<EMAIL_ADDRESS>wrote:
pinning conda-build to 1.21.3 solves the problem.
@rmcgibbo should we pin conda-build now? We've discussed that already for other conda-build related issues.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

I've pinned conda-build for Appveyor right now, but I'm urged to also pin for Travis to have consistent behaviour in the future. What do you think @rmcgibbo?

i agree, +1 to pin both.
On Mon, Jul 18, 2016 at 8:04 AM, Martin K. Scherer<EMAIL_ADDRESS>
wrote:

I've pinned conda-build for Appveyor right now, but I'm urged to also pin
for Travis to have consistent behaviour in the future. What do you think
@rmcgibbo https://github.com/rmcgibbo?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/omnia-md/conda-recipes/pull/557#issuecomment-233310267,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAnI_rRjUyzHTj4m1EI7iW1UUA36CZkLks5qW2uwgaJpZM4JMSPU
.

--
-Robert

To pin the version for linux, we need to change the Docker image, right?

No, conda-build isn't in the docker image, it's just installed every time: https://github.com/omnia-md/conda-recipes/blob/master/devtools/docker-build.sh#L14

Alright, thank you!


Update PDX Relation Diagram Names

The variable names used in the ETL should match the names used in the data collection templates.
######### ACCEPTANCE CRITERION ##########

[x] Names are updated and higlighted in diagram
[ ] the changes are reflected in the code base.

@mauroz77
Please confirm the changes:
https://app.diagrams.net/#G1AQV4mZjbZ3e4ClBZ4ezY9X75GDki8b0T
In the yellow are the name changes. In most cases I went with what is written on the templates for consistency.
Engraftment_material is sample_type on the collection template. This is  a confusing mapping, but it would also be confusing to use the term "sample_type" in the specimen table because there are a few contexts that use "sample". Therefore, I renamed it in the the db to engraftment_sample_type. I'm not completely convinced about this because the naming is odd, but it is far more costly to change the templates than the db and this naming convention will be easier to mentally map between the db and templates.
In the red are points of interest. I added the "engrafment_sample_state" and associated table it references to the Specimen table. It's in the metadata, but not currently read into the database. This is the same thing to the "prior_treatment" column in the Patient_Sample table

@Afollet proposed changes look clear. I'll assign the ticket to me now to update existing code

@Afollet should we also make in this ticket the renaming from internal to external ids when needed or do you see that as a separated ticket?

Yeah, I agree. I think it would be a good idea to make the changes you mentioned in the edit.

Done.


added spanish badge

This is an upstream merge, so going to close it without merging into Cupcake.


Poor Installation instructions

Installed via package manager... now what?

Yea, I'm with you. I really can't figure this out

Also stumped.

I did everything described, downloaded the package, put in the right folder but nothing appears in the select for choose the syntax. Does anyone know another package for highlight SASS that works?

Found it out, go there: https://packagecontrol.io/packages/Sass

I get the following error when running the last command:
osascript -e 'tell app "TextMate" to reload bundles'
Can anyone help?

use Advanced Install Package and type "Sass".


Modernize and fix style

A leading :: was required in old puppet versions (up to 3.x), but Puppet 4 and newer does not require this anymore;
Ensure all parameter are always followed by a ,.

Meh… I just fixed the CI by removing the deprecated / not-recommended check, but I guess the Gemfile is managed by modulesync and this change may be counter-productive :unamused:
I'll fill-in a PR in the modulesync_config repository.  If you want, I can remove this second commit.  I am not sure what's the best way to proceed.

I'm a little behind on the module_sync and I think the practices are shifting a bit now with PDK out.  Its hard to know which approaches are best.
You are great.  Thanks for the other PR too.  I'll get that applied.


Remove feature of using location data for pictures taken around the same time

Summary:
We currently detect if there was an image taken within 120 seconds of another photo and suggest the user choose between the location data of the 2 photos for the upload, once per instance of the application.
This could be removed I think.

@nicolas-raoul pinging you for context on this feature.
Should be also noted that it doesn't actually use any location data if it asks the user currently but does in my refactor #3408

This is a very useful feature, I use it actually.

Smartphone GPS sensors are cheap and often fail to get a location.
Very often, when you take 3 pictures of something, only 1 will have GPS coordinates.
Thus the idea of, if needed, reusing GPS coordinates of pictures taken shortly before or after.

This feature doesn't work right now so that is very surprising

So reasons this doesn't work:

The boolean haveCheckedForOtherImages gets set true after you check for other images once, not even if you successfully find anything. This object is a singelton and that boolean is never set to false.
When we show the dialog here is the callback we call

newFragment.setCallback(new SimilarImageDialogFragment.Callback() {
            @Override
            public void onPositiveResponse() {
                Timber.d("positive response from similar image fragment");
            }

            @Override
            public void onNegativeResponse() {
                Timber.d("negative response from similar image fragment");
            }
        });

As far as git blame goes it has been like this since 13/06/19

Also if I have understood this right: A user can set to redact their location tags and then we offer to get their location from another photo? That would annoy me a lot

Also I don't know if this is a feature but this only works when you are uploading multiple images or that is the scenario it is most likely to work in.
How we try and find the users photos to test if they were with the 120s range is we get the parent directory of the photo and then iterate the photos in the directory, on my phone that directory is
/data/user/0/fr.free.nrw.commons.beta/cache/CommonsContributions which is not my camera directory

Also the message that shows in the dialog doesn't make it clear that we are suggesting they use this image's location data because the image you are trying to upload doesn't have any


[FEATURE REQUEST] See all recent reviews

What feature would you like to see added?
A view that shows the newest reviews, across all courses. It was one of the features I used the most on the previous site.
Thanks for listening! 😄

Oh interesting! Should be easy enough to build. So you prefer scrolling through most recent reviews instead of / ahead of drilling down on a particular course?

Yes! 😄  Recent reviews give somewhat of a "live" view of a given semester, as the reviews start pouring in.
I will drill down into specific courses when I'm in the final decision making phase, but in the past being able to see recent reviews has helped me to stay up-to-date with what's happening around OMSCS and consider classes I wouldn't have otherwise considered.

That would work. The dedicated page with N reviews in descending chronological order is really what I'm missing the most, so I'm hesitant to encourage scope creep 😉 but this would be cool if it's not too much additional work 😄

Hey! Just finished this (#55). Right now, you can view the 100 most recent reviews here. I'd like to adapt this to have infinite scroll, but I have to refresh my brain on how Intersection Observer works :)
LMK if this looks and/or if you want me to build anything else!

Yay thank you @m4ttsch!


cloudflare build fails if routes/index.tsx is replaced by vinxi dev server automatically

Which project does this relate to?
Start
Describe the bug
If npm run dev is running and the vinxi is boot strapping route files for you and you delete the index.tsx file and then generate a new one (or rename another route to index.tsx), npm run build will fail with the following error:
[tsr-routes-manifest] Could not load tsr:routes-manifest (imported by node_modules/@tanstack/start/dist/esm/router-manifest/index.js): Cannot read properties of undefined (reading 'map')

This does not seem to happen if vinxi dev server is not running and you rename files and adjust the router path manually.
It's not clear how to recover from this error (at least everything I've tried). Deleting the .vinxi/, dist/, and node_modules (and reinstalling) does not seem to reset things to a workable state.
Your Example Website or App
https://stackblitz.com/~/github.com/jonotron/start-basic-example
Steps to Reproduce the Bug or Issue

clone the start-counter (or start-basic) example from the tanstack/router repository
npm install
npm install unenv
Add cloudflare settings to app.config.js from https://tanstack.com/router/latest/docs/framework/react/start/hosting#cloudflare-pages
run npm run build to verify that a cloudflare build will succeed
run npm run dev to get vinxi dev server running
delete the app/routes/index.tsx file
create a new app/routes/index.tsx file (vinxi will fill in with basic scaffolding code)
quit the vinxi dev server
run npm run build

Expected behavior
As a developer, I expect the build to continue to work when vinxi creates a new index.tsx route for me.
Screenshots or Videos
No response
Platform

OS: macOS, Linux (stackblitz)

Additional context
I'm not totally sure what exactly is scaffolding the new routes for me (it caught me off guard when I noticed it) but I'm fairly sure it's vinxi dev server.  And I'm not even entirely sure if this is the cause of the bug but I can reliably reproduce the issue on my mac and on stackblitz. I can't figure out how to revert the issue for the life of me.
This doesn't seem to affect non cloudflare target build but I haven't spent much time exploring anything else yet.
Hope this is helpful as I'm quite enjoying exploring start but this has been eating at me for some days now.

I'm not sure if this is something that's really in our control here.
@tannerlinsley @nksaraf is there a reasonable expectation for running both the build script whilst the dev one is running here?
Also, @nksaraf is this something you've seen with SolidStart?

This error appears even after stopping the dev server before running the build. And it seems to get into a state that I can not recover from at all. I can try to record a little video later today if that helps.

Here's a short video showing what I did to get into this state: https://share.cleanshot.com/ssy8Wfxk

Sorry all. I think I've figured this out. The scaffolded route file does not return JSX, it just returns a string.
import { createFileRoute } from '@tanstack/react-router'

export const Route = createFileRoute('/')({
  component: RouteComponent,
})

function RouteComponent() {
  return 'Hello /!' // this needs to be JSX
}

If I bother to edit the scaffolded file to return JSX instead of a string the build succeeds.

Sorry all. I think I've figured this out. The scaffolded route file does not return JSX, it just returns a string.
import { createFileRoute } from '@tanstack/react-router'

export const Route = createFileRoute('/')({
  component: RouteComponent,
})

function RouteComponent() {
  return 'Hello /!' // this needs to be JSX
}

If I bother to edit the scaffolded file to return JSX instead of a string the build succeeds.

Definitely one of the weirder bugs I've seen 🙄
Would you be comfortable making a PR fixing this in the router-generator? It'd just be changing it from returning a string to a <div> wrapping the route path.

@jonotron Great looking forward to it! Ping me on the PR, I'd be happy to review it.

@SeanCassiere Thanks for getting to this :) I ended up getting sick from my 5yo this weekend. Glad this wasn't a huge PR either.

No sweat @jonotron! Hope you and your kid get well soon.


Filter none if no checkbox is checked

Hi Patrick,
I have configured MixItUp MultiFilter in one of my project and I am stuck with a particular problem. I want no result to be shown when all the checkboxes are unchecked and in order to achieve that, I am counting the number of checkboxes checked on checkbox change event and if no checkbox is checked, I am triggering filter('none') but it's not working. What it does is shows no results and then again shows complete results as on page load and I have no clue as to how to prevent multiple filter calls on one checkbox check/uncheck event.
The link to the page where it's currently implemented is http://delhigrainmerchant.com/beta/category/wholesale-trader/rice-trader
Thanks and regards,

Hi, apologies for the delayed response.
I think what you are looking for is the controls.toggleDefault configuration option. By default, this is set to 'all', but you would want to set it to 'none'. This is a configuration from MixItUp core, but it is also respected by the MultiFilter extension. This is described in the MultiFilter getting started guide:
https://www.kunkalabs.com/mixitup-multifilter/docs/get-started/
Hope that helps.


Match Edgex-cli executable name with the usage help presented

🐞 Bug Report
Affected Command
./edgex-cli help
shows

|  |   | |             \ \ / /           / || |     | |
| | | |  __ _   ___  \ V /   ______  | |     | |       | |
|  |  /  | / _ | / _ \  > <   || | |     | |       | |
| || (| || (| ||  / / . \           | |_ | |____  | |
||_,| _, | _|// _\           _||||__|
/ |
|/
EdgeX CLI version: 0.0.1
https://www.edgexfoundry.org/
Usage:
edgex [command]
Which is inconsistent.
Is this a regression?
No
Description and Minimal Reproduction
🔥 Exception or Error

🌍  Your Environment
Deployment Environment:
EdgeX Version:
Anything else relevant?

Fixed in https://github.com/edgexfoundry-holding/edgex-cli/pull/181