[Feature] Create app flow should use the latest dsl version

Summary
When the client does not send a DSL for app creation, the server falls back to using an old default DSL. This causes an updated layout right after the app is created. Instead, the client should send a DSL with the latest version number to avoid this migration later on
Motivation
Improve testability, avoid unnecessary update calls, improve load time performance on new apps

@hetunandu, what do you think about updating the default DSL in the backend itself, instead of having the client send the initial DSL on every create-application request?
For reference, the DSL on the server is at https://github.com/appsmithorg/appsmith/blob/0d106a5c9d7990c9aa5cd1ed1182c815aba39b75/app/server/appsmith-server/src/main/java/com/appsmith/server/constants/FieldName.java#L38. It appears to be pointing at version 4 currently.

@hetunandu, what do you think about updating the default DSL in the backend itself, instead of having the client send the initial DSL on every create-application request?
It appears to be pointing at version 4 currently:
https://github.com/appsmithorg/appsmith/blob/0d106a5c9d7990c9aa5cd1ed1182c815aba39b75/app/server/appsmith-server/src/main/java/com/appsmith/server/constants/FieldName.java#L38-L58

I think both client and server should have the latest DSL copy but since all DSL version updates originate because of client side changes, I think it is better that a client sends this when creating an app

Then may be we can remove the server side hard-coded DSL completely? My take is that either we keep it updated regularly, and use it for new applications, or remove it and let the client send a DSL for new applications. Keeping a copy on both places will add overhead of keeping them updated and in-sync, with no value-addition.


chore: Bump to spidermonkey 116

Bump to spidermonkey 116.

The e2e(client) test is failing, and I'm not entirely sure why. @JakeChampion do you have any debugging tips?

Going to close this PR, as we'll need to cherry-pick the pbl commits on top of the 116 release now.


sequoia: 0.28.0 -> 0.30.1

and fetch from the new upstream, since sequoia-sq (the CLI) was split out of the main sequoia repo (the library).

https://gitlab.com/sequoia-pgp/sequoia-sq

additionally, python bindings were deprecated and split out into their own repo in 0.25.0, but our build script wasn't updated and has been silently not building bindings since then. i've removed the dead pythonSupport option, but for the record:

python ffi library: https://gitlab.com/sequoia-pgp/sequoia-ffi
commit which removed bindings from the main repo: https://gitlab.com/sequoia-pgp/sequoia/-/commit/cf4c70b46040a53bf3992a124ba70b1b1ca852f1

upstream builds 100% with cargo now, no Makefile, so we can rely more on stock buildRustPackage.
Description of changes

changelog: https://gitlab.com/sequoia-pgp/sequoia-sq/-/blob/v0.30.1/NEWS
noteworthy/breaking changes:

sq now supports and implicitly uses a certificate store.  By default, sq uses the standard OpenPGP certificate directory. This is located at $HOME/.local/share/pgp.cert.d on XDG compliant systems.
sq key generate --creation-time TIME is deprecated in favor of sq key generate --time TIME.
sq key user id --creation-time TIME is deprecated in favor of sq user id --time TIME.

Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

Looks really good, thanks a lot! Can you put a line in the release notes that the python bindings were removed? We can remove that entry if we package those bindings again before 23.11.
Instead of removing the sequoia attributes from python packages, could you put a throw in python-aliases.nix saying that it was removed?
I'll test the PR later, probably during the day.

Actually, there is a pysequoia project that replaces the python bindings from sequoia-pgp/sequoia. I'm working on packaging it right now. Will push something to here once it's ready.

Can you put a line in the release notes that the python bindings were removed?
Instead of removing the sequoia attributes from python packages, could you put a throw in python-aliases.nix saying that it was removed?

done. i figured something like that needed to happen, but didn't know the norms: thanks for pointing me to the right place :)

Main differences in what I pushed: sequoia update commit appears before the pysequoia removal & replacement. @uninsane I hope I haven't forgotten anything. Please correct me if I'm wrong.

i just amended your commit by filling meta.description for pysequoia, removing sequoia from python2-packages.nix, and fixing the date in the comment for sequoia in python-aliases.nix.

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

2 packages blacklisted:

nixos-install-tools
tests.nixos-functions.nixos-test

5 packages built:

python310Packages.pysequoia
python310Packages.pysequoia.dist
python311Packages.pysequoia
python311Packages.pysequoia.dist
sequoia

Aish I think the pname change has caused the cargoHash to become wrong... (See details at https://github.com/NixOS/nixpkgs/issues/112763 ). A followup PR fixing just that is upcoming.


new feature request

would it be possible to have the igate/digi function available on the tracker(both sw with the possibility to swich from tracker to iGate)?  Heltec and TTGO
use case: I have the tracker in the car,  in an emergency scenario (but also in a mountain trekking), I then stop the car and deploy the pedestrian tracker.
The people going around can be igated by the device in the car, if I switch from tracker to igate or digi so that the operation in the area around the car and tracked and passed to APRS-IS servers.

Hi
Right now the tracker has an (emergency) mode for digirepeater if needed
Do you want an igate mode on the tracker? What about the internet connection and all of that?

Hi Ricardo,
I'm not sure what the Digirepeater/SOS mode is doing, if we can enable the digipeater without any SOS mode, just to use it as repeater then this is ok.(I didn't found a lot of info related to this mode, so not sure how it work)
For the Igate mode, on some emergency scenario (like SAR ) we have wifi available. On a single user scenario(mountain trekking), we can use a smartphone with wifi/tethering Router mode.

ok , the emergency igate thing is good idea, but this will come later
for now, the Digi mode on the tracker is like you say , for emergency deployment of digi on a place:
you just go into Menu>6 Extras > Digirepeater (ON) and It will send beacons as a tracker but will repeat all packet that he hears also just like a digirepeater)


Upgrade pcb-stackup-core to v2

This PR updates pcb-stackup-core to latest (v2.0.1). It also switches from coveralls to codecov for coverage because coveralls has been causing CI builds to fail.
Should probably be considered a major because the pcb-stackup-core bump is major.

Current coverage is 100% (diff: 100%)

No coverage report found for master at 0e81042.

Powered by Codecov. Last update 0e81042...b7ec52a


Update and Install-Module Removes Custom PSModulePaths from Current Scope

When you set custom PSModulePaths and then run update-module or install-module for modules, even if they weren't installed through PSGallery, the custom module paths are unloaded from the current scope.
Also, Modules that were installed from PSGallery are not updated, regardless if they are in the default or custom Module paths.
This was tested with the AzureAD module. Closing the current PoSH Window and re-opening reloads all PSModulePaths (even custom ones).
Steps to reproduce
Install-Module <ModuleName>

or
Update-Module <ModuleName>

Expected behavior
Install module if it is available from the repository and not unload PSModulePath that aren't default.
Update module that was installed from repository and not unload PSModulePath that aren't default.
Actual behavior
Installs the module requested and then unloads the custom module paths set for the $Env:PSModulePath
Fails to Update the module (even ones installed from repository) and then unloads the custom module paths set for $Env:PSModulePath
Environment data
Name                           Value
----                           -----
PSVersion                      7.0.0-preview.1
PSEdition                      Core
GitCommitId                    7.0.0-preview.1
OS                             Microsoft Windows 10.0.18362
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

@Dilydali Please add more info in repo steps. Do you update PSModulePath in current session by changing $env:PSModulePaths?

@Dilydali could you please try this with the latest preview of PowerShellGet 3.0? If it's still happening, please file an issue at PowerShell/PowerShellGet


[WIP] [DO NOT MERGE] Almost getting rid of IsContainer

This is an attempt at getting rid of special casing the container execution and getting us closer to uniformal treatment of how we decide what to run inside of the task.
It is also motivated by a very practical desire to be able to run VMs with OCI containers attached to them (note, that I also plan to rename BootLoader into Firmware later on, since it matches the purpose/use much better).
While implementing this I realized that there could be two approaches at answering the question "what do we actually execute" once we're done parsing the app config and all the bits and pieces are in place. And I need your collective wisdom to pick the best one.
Let me illustrate the difference between the two approaches by looking at how we currently run our VM-isolated containers: we are essentially filling in the gaps and default assumptions in the config that the controller has given us.
After all, if controller really wanted EVE to run a container it could've simply given EVE a fully formed config with the proper value of Bootloader/Firmware, kernel and initrd filled in to begin with. If fact, one can actually construct an application bundle manifest like that even today, put it into json and do this sort of "manual" construction of container execution environment (fun fact -- you CAN chance the value of the kernel -- so theoretically we can run containers with different kernels even as of now).
That manual construction, however, is pretty tedious so we rely on heruistics in domainmgr that allow us to fill the gaps in an ad-hoc fashion. E.g. https://github.com/lf-edge/eve/blob/master/pkg/pillar/hypervisor/kvm.go#L404
I'd like to make this much more regular in structure (and keep using this technique to solidify things like VirtualizationMode hints, etc.). And here comes the question for y'all: what approach to take?
One approach (which is this PR) is to fill the gaps right when we are creating the domainConfig object to make it look like controller has given us this kind of config all along (again the rationale here is that it actually could've done that so it is not like we're synthesizing a config that could not have originated from the controller -- we're simply filling in the gaps).
Another approach (which is a bit more work in duplicating the data structures) is to treat domainConfig as an immutable source of truth and do this kind of gap filling at the level of domainStatus object.
Let me know what do y'all prefer.

I'll take a look right after the weekend. But will this cause any conflicts with #1424? That one was pretty hard. I'd like to get it in first.

I'll take a look right after the weekend. But will this cause any conflicts with #1424? That one was pretty hard. I'd like to get it in first.

Thanks @deitch -- there's no rush with this one -- in fact I was waiting for #1424 to land first. That said, I'd be surprised if they conflict in any non-trivial way.

I don't see any benefit in having domainmgr fill in the details and put the result in DomainStatus; what you are doing to but fixed values in DomainConfig makes sense. However, if we will need to have different default values/fill-ins based on virtualization-mode or some property of the chosen hypervisor then zedmanager (and by extension the controller) wouldn't know how to take that into account. Don't know how likely that is to happen.

Thanks -- I'll keep it as-is then. As for hypervisor specific things -- I agree it may happen, but we'll cross that bridge when we come to it (and frankly, I'm trying as hard as I can to make sure we don't expose these types of idiosyncrasies between hypervisors to the user -- so with any luck we may never actually come to that bridge).

Ok, since I'm now faced with this rebasing effort it seems like it will be much easier to focus on #1463 rather doing this separate PR. That way I can test it all once and commit.
Closing this one -- please follow on #1463


[Feature Request] Support playing audio/sound officially instead of a community plugin

Even if we have a community plugin, this plugin does not seem to be maintained. Please look at this issue https://github.com/rxlabz/audioplayer/issues/35. No reply and no response to pull request for almost a year now. Can we have a official audio player plugin, please? Thanks a lot.

@axellebot thank you very much for your hard work. As what I said in https://github.com/rxlabz/audioplayer/issues/35 comment, I have added thumbs up to almost all your comments. Btw, I hope iOS support can be added too, without it, I can not use the plugin. Thanks a lot.

@axellebot Cool. 👍Thank you very much for that.
Btw, I used to be a fan of the Linux desktop. But because of iOS dev, I have switched from my Thinkpad x1 carbon running ArchLinux to Macbook Pro for two years now. 😀

Also the ability to record audio, also, please.

We aren't planning to add an audio player ourselves, unfortunately. We're focused on building a great framework and a small set of plugins, along with fostering a healthy and active ecosystem for other plug-ins.
It seems that the audioplayers plug-in is a popular and well-maintained alternative to the original plug-in mentioned above, and supports both Android and iOS playback.


[TRIVIAL] Lower the message level for missing optional doc components

High Level Overview of Change
If certain doc-related components are not available at build time, cmake will output warnings, which are noisy and annoying and completely unnecessary if one doesn't intend to build docs. I've observed this mostly on Windows where the components are less likely to already be available by default. This change lowers the message from a WARNING to a NOTICE, which is much less disruptive, but still informative.
Type of Change

[ X] Documentation Updates

Before / After
Before
[...]
1> [CMake] -- Pausing to download NuDB...
1> [CMake] -- Could NOT find Protobuf (missing: Protobuf_LIBRARIES Protobuf_INCLUDE_DIR) (Required is at least version "3.8")
1> [CMake] -- using local protobuf build.
1> [CMake] -- Couldn't find protobuf_protoc_lib
1> [CMake] CMake Warning at Builds/CMake/RippledDocs.cmake:34 (message):
1> [CMake]   could not find plantuml.jar
1> [CMake] Call Stack (most recent call first):
1> [CMake]   Builds/CMake/RippledDocs.cmake:40 (verbose_find_path)
1> [CMake]   CMakeLists.txt:77 (include)
1> [CMake]
1> [CMake]
1> [CMake] CMake Warning at Builds/CMake/RippledDocs.cmake:34 (message):
1> [CMake]   could not find dot
1> [CMake] Call Stack (most recent call first):
1> [CMake]   Builds/CMake/RippledDocs.cmake:41 (verbose_find_path)
1> [CMake]   CMakeLists.txt:77 (include)
1> [CMake]
1> [CMake]
1> [CMake] -- Configuring done
[...]

After
[...]
1> [CMake] -- Pausing to download NuDB...
1> [CMake] -- Could NOT find Protobuf (missing: Protobuf_LIBRARIES Protobuf_INCLUDE_DIR) (Required is at least version "3.8")
1> [CMake] -- using local protobuf build.
1> [CMake] -- Couldn't find protobuf_protoc_lib
1> [CMake] could not find plantuml.jar
1> [CMake] could not find dot
1> [CMake] -- Configuring done
[...]

Unfortunately my review does not seem to count!


Italian Translation of msg/json/it.json and some other minor translations in tests

This is the first pull request after the completion of the translation and tests.
Some issues due to Italian strings not completely shown in the blocks. Refer to email to my email to Michael Bonani.

Thank you very much for this work! I will see with Michael tomorrow.

Grande Ezio!!!!!!
Grazie mille, eccellente
				Franncesco

On 7 févr. 2016, at 18:47, Ezio Somà<EMAIL_ADDRESS>wrote:

This is the first pull request after the completion of the translation and tests.
Some issues due to Italian strings not completely shown in the blocks. Refer to email to my email to Michael Bonani.
You can view, comment on, or merge this pull request online at:
https://github.com/aseba-community/blockly/pull/3
Commit Summary
Update it.json
Update it.json
Update it.json
Create playground.it.html
Update playground.it.html
Create viewtests.it.html
Create asebastuido.it.html
Update it.json
Rename asebastuido.it.html to asebastudio.it.html
Update it.json
Update it.json
Update playground.it.html
Update playground.it.html
Update it.json
Update it.json
Update asebastudio.it.html
Update asebastudio.it.html
Update asebastudio.it.html
Update it.json
Update it.json
Update it.json
Update it.json
Update playground.it.html
Update it.json
Update it.json
Update it.json
Update it.json
Update it.json
Update it.json
Update it.json
Update it.json
Update viewtests.it.html
File Changes
M msg/json/it.json (273)
A tests/aesl/viewtests.it.html (188)
A tests/asebastudio.it.html (495)
A tests/playground.it.html (578)
Patch Links:
https://github.com/aseba-community/blockly/pull/3.patch
https://github.com/aseba-community/blockly/pull/3.diff
—
Reply to this email directly or view it on GitHub.

It was really a pleasure for me and Federico to contribute to the Thymio project!

Dear Ezio and  Federico
We integrate your translation directly in commit 104727034ebddc78aa875850c3b8694d8aae8616 rebasing all in one unique commit. We can now close your pull request and you can checkout master.
We also fix the problem of ellipsis
Thank you very much for your contribution


Update short-names for Antrea NetworkPolicy CRDs

This PR updates short-names for Antrea Policy CRDs as follows:
ClusterNetworkPolicy
Existing short name: cnp
New short name: acnp
NetworkPolicy
Existing short name: netpol
New short name: anp
Existing short-name "cnp" and "netpol" are deprecated in favor of new short names and shall be removed in Antrea 0.12.0
release.

Codecov Report

Merging #1291 into master will decrease coverage by 0.07%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1291      +/-   ##
==========================================
- Coverage   54.37%   54.29%   -0.08%
==========================================
  Files         115      115
  Lines       10781    10781
==========================================
- Hits         5862     5854       -8
- Misses       4348     4353       +5
- Partials      571      574       +3

Flag
Coverage Δ

#integration-tests
44.97% <ø> (ø)

#unit-tests
41.29% <ø> (-0.09%)
:arrow_down:

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

Impacted Files
Coverage Δ

pkg/apiserver/certificate/certificate.go
71.05% <0.00%> (-6.58%)
:arrow_down:

pkg/apiserver/storage/ram/store.go
77.44% <0.00%> (-1.51%)
:arrow_down:

...ntroller/networkpolicy/networkpolicy_controller.go
70.81% <0.00%> (-0.14%)
:arrow_down:

Should we keep the cnp short name for one release, and indicate it's deprecated in the release notes? Is the intention to remove netpol as well in the future?

my bad.. did not mean to remove the existing short-names. I added a deprecation comment.

/test-all

/test-windows-conformance
/test-windows-networkpolicy


Crash with memory manager and aliases (debug device)

The following code is crashing for me with error
An illegal memory access was made!

MFEM abort: Error while accessing address 0x10e850000!
 ... in function: void mfem::internal::MmuError(int, siginfo_t *, void *)
 ... in file: general/mem_manager.cpp:318

#include "mfem.hpp"

using namespace mfem;

int main()
{
   Device device("debug");
   int n = 512;
   Vector v(n);
   v.UseDevice(true);
   v = 1.0;
   Array<int> offsets({0, n});
   BlockVector V(offsets);
   V.GetBlock(0) = v;
   V.Read();
   return 0;
}

Curiously, this crashes for n >= 512, but not for n < 512.

Note that in the above example, inserting V.GetBlock(0).HostRead(); before V.Print(…); does give the correct output, but:

I don't believe this should be semantically necessary (Vector::Print will call HostRead on the base vector, calling HostRead explicitly on the alias shouldn't be required).
If instead of V.GetBlock(0) = v; I have V.GetBlock(0) = 42.0;, then the additional HostRead is not required — something different is happening when the right-hand side of the assignment is a Vector.

Synchronizing the memories help in both code you provided: V.SyncMemory(V.GetBlock(0));.
V is definitely left out of sync otherwise.

I think @camierjs is right: after you modify one, or few, or all sub-vectors in a BlockVector, you generally want to sync the sub-vectors to the big monolithic BlockVector. This is the purpose of the method BlockVector::SyncFromBlocks().

The first sentence above should've finished with: "... the big monolithic BlockVector, if you want to use the monolithic BlockVector, e.g. by calling its Print() method as in the code above."

Got it — essentially this is expected behavior, and I should be sure to call V.SyncFromBlocks() before using the monolithic one.


Change STREAM_DATA_LOSS to a gauge from a meter.

STREAM_DATA_LOSS was added to notify that there was a gap in a real time stream. It is a boolean where 1 denotes that a gap and therefore a data loss was detected. The only solution is recreate the real time table.
The metric was wrongly defined as a Meter. This change fixes the code to create the metric as a Gauge similar to LLC_PARTITION_CONSUMING. Moreover, the metric is also deleted during clean up.
tags: bug-fix, observability

Codecov Report
Attention: Patch coverage is 0% with 3 lines in your changes missing coverage. Please review.

Project coverage is 0.00%. Comparing base (59551e4) to head (635524f).
Report is 811 commits behind head on master.

Files
Patch %
Lines

...a/manager/realtime/RealtimeSegmentDataManager.java
0.00%
2 Missing :warning:

...a/org/apache/pinot/common/metrics/ServerGauge.java
0.00%
1 Missing :warning:

:exclamation:  There is a different number of reports uploaded between BASE (59551e4) and HEAD (635524f). Click for more details.
HEAD has 43 uploads less than BASE

Flag
BASE (59551e4)
HEAD (635524f)

integration
7
3

temurin
12
3

java-21
7
2

skip-bytebuffers-true
3
1

skip-bytebuffers-false
7
2

unittests
5
0

unittests1
2
0

java-11
5
1

unittests2
3
0

integration1
2
0

custom-integration1
2
0

Additional details and impacted files
@@              Coverage Diff              @@
##             master   #13712       +/-   ##
=============================================
- Coverage     61.75%    0.00%   -61.76%
=============================================
  Files          2436     2479       +43
  Lines        133233   136988     +3755
  Branches      20636    21324      +688
=============================================
- Hits          82274        0    -82274
- Misses        44911   136988    +92077
+ Partials       6048        0     -6048

Flag
Coverage Δ

custom-integration1
?

integration
0.00% <0.00%> (-0.01%)
:arrow_down:

integration1
?

integration2
0.00% <0.00%> (ø)

java-11
0.00% <0.00%> (-61.71%)
:arrow_down:

java-21
0.00% <0.00%> (-61.63%)
:arrow_down:

skip-bytebuffers-false
0.00% <0.00%> (-61.75%)
:arrow_down:

skip-bytebuffers-true
0.00% <0.00%> (-27.73%)
:arrow_down:

temurin
0.00% <0.00%> (-61.76%)
:arrow_down:

unittests
?

unittests1
?

unittests2
?

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

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


iOS airplane mode always ON when app running on iPad WiFi (without cellular)

So when I run my app on on iPad WiFi (without cellular) the AirplaneModeChecker.instance.checkAirplaneMode() always returns AirplaneModeStatus.on which is not correct due to WiFi connection is established.

Currently, my code determines airplane mode by checking cellular connectivity using CTTelephonyNetworkInfo. On WiFi-only devices like an iPad, there's no cellular connection, so this property is always empty, resulting in an "ON" status for airplane mode.
Additionally, users can enable WiFi even when airplane mode is activated, making it unreliable to use WiFi status to determine airplane mode. Therefore, my method relies solely on cellular network information for accurate airplane mode detection.
If there are no further questions or concerns, I will proceed to close this issue. Thank you for bringing this to my attention, and feel free to reach out if you have any other inquiries or need further assistance.


[Do-Not-Merge-yet] Integrate helm operator components

Onboarding Helm based operators for helm-repo. helm-api and management repo
https://github.com/IBM/ibm-management-repo-operator
https://github.com/IBM/ibm-helm-repo-operator
https://github.com/IBM/ibm-helm-api-operator

Closing the PR, ll open new one for helm component onboarding.


Added note about zero timeout in cache settings docs.

This is just tacking on the additional sentence from here to keep these more aligned. Also fixed a small typo.

@pope1ni Thanks :+1:


After update , Serveiceworker failed to install:

Only way to get it working is to remove sw-toolbox.js and all references of it.
attached is the error :

it comes from  >>
importScripts('sw-toolbox.js'); (1st line of sw.js )

@v3ss0n I just published a new version (0.1.5).  Can you test against this version and see if it resolves your issue?

(index):29 Error registering service worker:TypeError: Failed to register a ServiceWorker: ServiceWorker script evaluation failed
(anonymous)	@	(index):29

there is nothing but only console.log inside

@v3ss0n what version of Ember are you trying to do this with?  Also, what browser(s) have you tested this on?

On chrome and ember 2.10
On Tue, Mar 14, 2017, 11:05 John Kleinschmidt<EMAIL_ADDRESS>wrote:

@v3ss0n https://github.com/v3ss0n what version of Ember are you trying
to do this with? Also, what browser(s) have you tested this on?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jkleinsc/broccoli-serviceworker/issues/44#issuecomment-286319847,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZnFrr4Kpg4Ff9Q8ITUsg6dtb1OrlMAks5rlhkHgaJpZM4LPQlQ
.

@v3ss0n I found the problem.  I'll release a new version with a fix, but until then you should be able to work around the problem by adding the following to config/environment.js:
ENV.serviceWorker = {
enabled: true
}

Version 0.1.6 fixes this issue.  Please note you will need to run npm install and you also should clear out the bad service worker code by going to chrome://settings/cookies and removing the data for localhost


trackRequestResult - when reloading data old state should be emitted immediately

Which @ngneat/elf-* package(s) are relevant/releated to the feature request?
No response
Description
When trackRequestResult reloads data (either because of staleTime oder skipCache) the last data should be emitted immediately with isLoading: true. This way we can show the old data and then refresh the view once updated data arrives.
Proposed solution
Emit last state immediately with isLoading:true by default.
Alternatives considered
Make emitting last cache value optional when cache expired (or data is always reloaded)
Do you want to create a pull request?
Yes

Let's see PR :)

It should be fine in the latest version


Feature request: Support Six-bit Character Codes (Punchcard, Magnetic Stripe, Braille)

Is your feature request related to a problem? Please describe.
Six-bit character codes were used in punchcard and magnetic stripe cards for representing a small subset of BCD / ASCII characters.
They are also used in Braille codes.
This Wikipedia page includes a number of encoding techniques, including CDC1604 Magnetic/Punchcard, CDC1612 Printer codes, DEC SIXBIT, ECMA-1, ICL Mainframes, GOST, and Braille codes.
In addition, attempts so far of using "from binary" to decode 6-bit values have been difficult, I suspect because the tool expects 8-bit values patterns currently.
Describe the solution you'd like
The option for 6-bit encodings could be added in the Encoding section and explored in the Magic decoding tool.
Additional context
This feature request is to assist in solving a yet-unsolved hidden message in the Halo 3 ODST videogame. This game has been out 11 years and there is an unsolved Easter Egg involving a number of banners suspected to encode a hidden message.
Members of the community theorise the banners, when stacked on top of each other, encode 6-bit characters. Further exploration would be made much easier with these decoding techniques in the CyberChef tool.

I have added arguments to both the ToBinary and the FromBinary operations now, contained in #1087
It should cover this.

That's great. Thanks


dart2js problem when generating code with Random.secure().nextInt()

This simple code doesn't run when compiled to javascript using dart2js:
import 'dart:math';

main() {
   print("${randomInt()}");
}

int randomInt([int max]) => Random.secure().nextInt(max ?? (1 << 32));

And that is the error:
Uncaught RangeError: max must be in range 0 < max ≤ 2^32, was 0
    at Object.wrapException (<anonymous>:331:17)
    at _JSSecureRandom.nextInt$1 (<anonymous>:1870:17)
    at Object.main (<anonymous>:1512:28)
    at <anonymous>:2130:9
    at <anonymous>:2114:7
    at dartProgram (<anonymous>:2125:5)
    at <anonymous>:2132:3
    at run_code (default-source2.js?v=a5:477)
    at HTMLAnchorElement.onclick ((index):219)

The problem is that the dart2js compiler is passing a defult value of "0" to the function as of below:
main: function() {
      var t1 = $.Random__secureRandom;
      if (t1 == null)
        t1 = $.Random__secureRandom = P._JSSecureRandom$();
      H.printString(H.S(t1.nextInt$1(0))); // <- THIS IS THE PROBLEM
    }

My dart version:
Dart VM version: 2.4.0 (Wed Jun 19 11:53:45 2019 +0200) on "windows_x64"

This seems to be an issue with javascript bitwise operators. So I changed to:
main() {
   print("${randomInt()}");
}

int randomInt([int max]) => Random.secure().nextInt(max ?? (1 << 31));

Now, everything works.


Improve bot command messages.

Improve the messages provided by the bot commands.
Closes #4

Hey @rgroves, is this good to go now? I was waiting to merge the other PRs first, but I could merge this one now.

I just noticed the bot is not giving a recap of the estimates it receives from players. I thought it was something I may have done after resolving a bunch of merge conflicts, but I just tried the bot from the current master branch and that bug exists there, so it must have been some recent previous change.
Would you like me to debug and fix that in this issue or do you want me to open a separate issue for that, fix it, and continue on with this one?
Here is what I'm talking about, after the message "Please enter the number of storypoints with !storypoints [AMOUNT] when you finished discussing" it should provide a recap:

If you look back at client.js back in commit ef31f3ef1fbcf972516d1c9657d4aab74b97dbdd you'll see on line 97 it was checking for a dm and calling Poker.addAnswer(...). That is no longer being done anywhere in the current master branch of the code.


Sync with the upcoming paper.

It doesn't really matter, but the current draft steps into ax instead of the cap. @cangiuli

Good catch.


Regenerate reference packages in SBRP

Now that the work to improve the SBRP generate tooling is completed, all reference packages should be regenerated.  This will provide the following benefits:

It will improve the UX for adding new packages.  When a new package is generated the default is to generate the packages for its dependencies.  It is common for dependencies to already exist but they would be regenerated.  When existing packages are regenerated, there are a lot of diffs.  This creates a lot of "noise" in PRs and can be a source of confusion.  If all reference packages were regenerated, this noise would be eliminated.
The new generated code is better.  The new generated source is more accurate and formatted better.  Additionally the project files are much simpler.
This will help test the new generator and help surface any issues it has.

The following list are the remaining packages.  This are blocked on https://github.com/dotnet/sdk/issues/31570.  Working around that issue requires to many hand edits.

Reopening because of issues described in https://github.com/dotnet/source-build/issues/3459.

This is blocked on https://github.com/dotnet/sdk/issues/33388.


Add debounced query bar for searches

Checklist

[x] the contributor license agreement is signed
[x] commit message follows commit guidelines
[x] tests are included
[x] screenshots are included showing significant UI changes
[x] documentation is changed or added

Description of change

Added Searchbar component (no search button, automatic type-ahead. Includes clear button and half second onChange debounce)
Add story for SearchBar
Add Searchbar to the search page
Add tests for the search page

@SammyIsConfused after our mid-sprint we decided it would be great to:

remove the border and just have a line underneath
remove the 'search' text and just have the search icon
on escape, clear the search text already entered

That should all be happy now. As discussed with @edalex-ian , the debounce will stay as is for now as I was having time consuming problems with useDebounce hooks.
With the changes @cathfitz requested, the page now looks like this:

Oh, but I see you've a few more conflicts to resolve. Might want to work  with @PenghaiZhang on them if needed to keep things moving.

Oh, but I see you've a few more conflicts to resolve. Might want to work with @PenghaiZhang on them if needed to keep things moving.

Fixed those, and tested locally.

Wowsers!! Why the removal of all the blank lines?

It's feeling like with 36b0fc4 it may indeed be best to remove the two useCallback calls and the React.memo on SearchOrderSelect. As they're no longer effectual.
For now it may be okay to say they're a premature optimisation, and let's get all the bits in there and see how it plays out.


Empty list results in empty bar chart window

Empty list results in empty bar chart window
Steps to recreate:

Clear EduTuTu with clear
Execute bar command

Expected result: No new window created
Actual result: Empty window created

Found issue in BarChartCommand, does not throw exception if filtered list is empty, fixed bug in latest PR


[Todoist] Inconsistencies between Native App and Extension Due Dates

Extension
https://www.raycast.com/doist/todoist
Description
In the case one has completed their tasks for the day, in the event an additional task is added for "today" at an explicit time, the extension seems to incorrectly assign the task for "tomorrow" rather than "today". This happens regardless if this addition is done via the native app or the Raycast Extension.
Steps To Reproduce

When initial tasks of the day are completed
A new task is added for a later time in that same day
Due dates of the task are listed as "tomorrow" in the Raycast Extension.

Current Behaviour
Tasks added for "tomorrow" at the initially listed time rather than appearing for "due today"
Expected Behaviour
Tasks should be listed for "due today" at the particular time that was initially given.

Thanks for bringing this up. It appears that this is a duplicate of issue #4359, so I'll mark it as such.


Remove appwrapper yaml

Issue link

closes #365
What changes have been made

Motivation:
A request to abstract away complexities and to make the SDK the core focus of interaction for users.

The moving of writing appwrapper to file by attribute passed instead of default.
.up() now reads the appwrapper from memory instead of opening yaml

Verification steps

Checks

[ ] I've made sure the tests are passing.
Testing Strategy

[ ] Unit tests
[ ] Manual tests
[ ] Testing is not required for this change

@KPostOffice @MichaelClifford @Maxusmusti
The following unit tests fail:
tests/unit_test.py::test_AWManager_creation FAILED                                                                                tests/unit_test.py::test_AWManager_submit_remove FAILED

I'm not sure, the test.yaml file is present. can one of you help?


Update positions.jsx

paginationName needs to be lowercase
came across this, needs to be fix, causing error in console.

Coverage remained the same at 62.077% when pulling baf441dcc4949ec2671555872976214d3f4dc54e on case-issue-fix into e87fcd50e12dc5ef1871a3630e8d4211e48784e1 on master.

Coverage remained the same at 62.077% when pulling baf441dcc4949ec2671555872976214d3f4dc54e on case-issue-fix into e87fcd50e12dc5ef1871a3630e8d4211e48784e1 on master.


Add travis configuration for pdx-admin-ui

Description
As a developer I want to have an automatic way to check code quality
Acceptance Criteria

[ ] A travis job is started whenever a PR is created in the repository

@zperova Done. Now every time a PR is created, the code will be automatically analysed to check that there are not lint errors or security problems in the dependencies due to the new code.

thanks @mauroz77 Closing.


Check for email already in use

Check if the email input for the sign in is already in use. Firebase already returns an error for this.

Finished!


Move Felix log level setting earlier

Description

Noticed that we weren't getting logs from doGoRuntimeSetup (#8904) and the health aggregator set-up.  I think the logging set-up had just drifted down the list over time as more initialisation logic was added.
Related issues/PRs

Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

Felix: move log initialisation earlier in start-up sequence to avoid missing some logs.

Reminder for the reviewer
Make sure that this PR has the correct labels and milestone set.
Every PR needs one docs-* label.

docs-pr-required: This change requires a change to the documentation that has not been completed yet.
docs-completed: This change has all necessary documentation completed.
docs-not-required: This change has no user-facing impact and requires no docs.

Every PR needs one release-note-* label.

release-note-required: This PR has user-facing changes. Most PRs should have this label.
release-note-not-required: This PR has no user-facing changes.

Other optional labels:

cherry-pick-candidate: This PR should be cherry-picked to an earlier release. For bug fixes only.
needs-operator-pr: This PR is related to install and requires a corresponding change to the operator.

/merge-when-ready

OK, I will merge the pull request when it's ready, leave the commits as is when I merge it, and leave the branch after I've merged it.

Removing "merge-when-ready" label due to new commits


Support for Cloud Primitives

This is probably a duplicate of #77. However, I didn't want to comment to add to it in case there is a divergence from the feedback provided here.
Currently, component types are limited to:

Application
Framework
Library
Container
Operating System
Device
Firmware
File

Is there a path to add Cloud Primitives to this list.
For example, AWS AMI could be a good addition because both Firmware and Operating System do not cover the entirety of the scope. I also don't think this specification should be aligned to specific cloud vendors' terminology.
e.g AWS AMI == Azure Image == GCP Images
I think it makes sense to add Image as a generic type to the components type. Potentially, there is room for it to eventually replace Container unless I'm missing some context.

In here - I mentioned Cloud Primitives. Does it make sense to continue that conversation here, or should I create a new issue for each primitive?

The definition of container is:

A packaging and/or runtime format, not specific to any particular technology, which isolates software inside the container from software outside of a container through virtualization technology.
Refer to https://en.wikipedia.org/wiki/OS-level_virtualization

This definition covers both container images (packaging) and runtime containers. So, for SBOMs, you'll know that container refers to an image whereas for OBOMs you'll know that it refers to the running container.
If you wanted to specify the image file itself, you could use the file type along with the mime-type property.
For example: application/vnd.oci.image.layer.v1.tar.

I also don't think this specification should be aligned to specific cloud vendors' terminology.

100% agree.
What types of primitives do you envision including support for?

Hey @stevespringett  -  Thank you for the reply, and I, unfortunately, read too much into the overloaded term of container. Thank you for correcting me.

What types of primitives do you envision including support for?

Roles
DNS Records
Policies
S3/Blob Storage

My mental model is that these are software-defined resources and as such should be managed just like any other software entity.
Checkov actually does provide a cyclonedx output, but it focuses on the terraform files for example

<bom xmlns="http://cyclonedx.org/schema/bom/1.3" xmlns:v="http://cyclonedx.org/schema/ext/vulnerability/1.0" version="1" serialNumber="urn:uuid:ad455c91-501e-4ff7-87c7-13373b011405">
  <metadata>
    <timestamp>2022-04-16T05:52:35.254483+00:00</timestamp>
    <tools>
      <tool>
        <vendor>CycloneDX</vendor>
        <name>cyclonedx-python-lib</name>
        <version>0.12.3</version>
      </tool>
      <tool>
        <vendor>bridgecrew</vendor>
        <name>checkov</name>
        <version>2.0.1050</version>
      </tool>
    </tools>
  </metadata>
  <components>
    <component type="file"<EMAIL_ADDRESS>      <name>/certificate.tf</name>
      <version>0.0.0-a14dc8700e97</version>
      <hashes>
        <hash alg="SHA-1">a14dc8700e97a9aa2907cf9ac95cd947cc565be3</hash>
      </hashes>
<EMAIL_ADDRESS>      <v:vulnerabilities>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV_AWS_233</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_acm_certificate.this.  Ensure Create before destroy for API deployments</v:description>
          <v:advisories>
            <v:advisory/>
          </v:advisories>
        </v:vulnerability>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV_AWS_120</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_api_gateway_stage.this. Ensure API Gateway caching is enabled</v:description>
          <v:advisories>
            <v:advisory/>
          </v:advisories>
        </v:vulnerability>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV_AWS_73</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_api_gateway_stage.this. Ensure API Gateway has X-Ray Tracing enabled</v:description>
          <v:advisories>
            <v:advisory>https://docs.bridgecrew.io/docs/logging_15</v:advisory>
          </v:advisories>
        </v:vulnerability>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV_AWS_76</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_api_gateway_stage.this. Ensure API Gateway has Access Logging enabled</v:description>
          <v:advisories>
            <v:advisory>https://docs.bridgecrew.io/docs/logging_17</v:advisory>
          </v:advisories>
        </v:vulnerability>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV_AWS_225</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_api_gateway_method_settings.this. Ensure API Gateway method setting caching is enabled</v:description>
          <v:advisories>
            <v:advisory/>
          </v:advisories>
        </v:vulnerability>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV_AWS_206</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_api_gateway_domain_name.this. Ensure API Gateway Domain uses a modern security Policy</v:description>
          <v:advisories>
            <v:advisory/>
          </v:advisories>
        </v:vulnerability>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV2_AWS_4</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_api_gateway_stage.this. Ensure API Gateway stage have logging level defined as appropriate</v:description>
          <v:advisories>
            <v:advisory>https://docs.bridgecrew.io/docs/ensure-api-gateway-stage-have-logging-level-defined-as-appropiate</v:advisory>
          </v:advisories>
        </v:vulnerability>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV2_AWS_29</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_api_gateway_stage.this. Ensure public API gateway are protected by WAF</v:description>
          <v:advisories>
            <v:advisory>https://docs.bridgecrew.io/docs/ensure-public-api-gateway-are-protected-by-waf</v:advisory>
          </v:advisories>
        </v:vulnerability>
      </v:vulnerabilities>
    </component>
    <component type="file"<EMAIL_ADDRESS>      <name>/api_gateway_resources.tf</name>
      <version>0.0.0-b057c6710adb</version>
      <hashes>
        <hash alg="SHA-1">b057c6710adb62cc746a83d963320e7e543598b6</hash>
      </hashes>
<EMAIL_ADDRESS>      <v:vulnerabilities>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV_AWS_59</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_api_gateway_method.proxy_root. Ensure there is no open access to back-end resources through API</v:description>
          <v:advisories>
            <v:advisory>https://docs.bridgecrew.io/docs/public_6-api-gateway-authorizer-set</v:advisory>
          </v:advisories>
        </v:vulnerability>
        <v:vulnerability<EMAIL_ADDRESS>          <v:id>CKV_AWS_59</v:id>
          <v:source name="checkov"/>
          <v:description>Resource: aws_api_gateway_method.proxy_other. Ensure there is no open access to back-end resources through API</v:description>
          <v:advisories>
            <v:advisory>https://docs.bridgecrew.io/docs/public_6-api-gateway-authorizer-set</v:advisory>
          </v:advisories>
        </v:vulnerability>
      </v:vulnerabilities>
    </component>
  </components>

Thanks for the clarification and Checkov example. S3 can easily be defined using services today, however, what may be missing is what the services do with the data. For example, you can define an S3 service and define the data flow classifications and directional flow of data to and from the service, but there's no way to know what the services do with the data. So a possible direction would be to add support for:

Data creation
Data storage

Object storage
File storage
Block storage

Data processing
Data analysis
Data sharing
Data archiving

In the case of S3, specifying object storage as a property of the service would likely provide insight into recommended security controls as well as any data compliance requirements.
Roles, DNS records, and policies are all examples of different types of configurations. DNS records are self-explanatory.  What do you envision for roles and policies in a cloud agnostic way? Can you give a few use cases?


Bug - Guideline and component images are cropped

This is clearly visible with the typography image:

Whereas resource is:

As we can't predict the device screen ratio, the solution we applied on this issue is to make every image fit into the rectangle (without modifying the image ratio obviously), and then apply a dark color (the same as the one in the image backgrounds) to fill the gaps.
There are several exceptions to this rule :

The guideline color image can be vertically stretched without modifying the content, so we don't have any gap to fill.
Some images need to be stacked on one side of the rectangle they fit in. For instance, the bottom navigation image is stacked at the top of the rectangle, the lists image is stacked at the bottom and sliders as well as progress images are stacked on the left (for sliders and progress this is not visible on the screenshot below, but this might happen on other screens).

Here are some screenshots of the guidelines and components screens, with the gaps filled with a blue color so that you can see them:

Guidelines:

Components:

Component details:

test OK


Refactor base metrics

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

Project coverage is 100.00%. Comparing base (fa4a0cc) to head (7f608e5).
Report is 35 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #37   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           10        10
  Lines          380       393   +13
=========================================
+ Hits           380       393   +13

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


[TEST] Add socket shutdown before close

Change Description

Boost docs recommend calling shutdown before close.

Consensus Changes

[ ] Consensus Changes

API Changes

[ ] API Changes

Documentation Additions

[ ] Documentation Additions

This did not fix the connect problem qa was chasing.


Switch to use general Singularity module in UConn HPC rather than custom BioSimulations module

Follows up on our discussion from 2021-12-23.
BioSimulations is currently using the singularity/3.7.1-biosim module in /home/FCAM/crbmapi/module/.
@mpw6 please let us know if we should switch to a different module
Todo

[x] Change HPC_EXECUTABLES_PATH configuration variable to "PATH=$PATH"
[x] Change HPC_MODULE_PATH configuration variable to /isg/shared/modulefiles
[x] Change HPC_SINGULARITY_MODULE configuration variable to singularity/3.9.2
[x] Remove manually changing working directory in sbatch script since already set declarative through SBATCH configuration
[x] Move dispatch-service-related configuration from shared config to dispatch-service config
[x] Simplify name of sbatch file to job.sbatch
[x] Organize Singularity loading in sbatch template

Related info
Configuration is defined here
https://github.com/biosimulations/deployment/blob/main/config/prod/dispatch-service/config.env#L6
https://github.com/biosimulations/deployment/blob/main/config/prod/shared.env#L21
SBATCH templates are here
https://github.com/biosimulations/biosimulations/blob/dev/apps/dispatch-service/src/app/services/sbatch/sbatch.service.ts#L152
https://github.com/biosimulations/biosimulations/blob/dev/apps/dispatch-service/src/app/services/sbatch/sbatch.service.ts#L240

Switching to singularity/3.9.2 from regular module directory

:tada: This issue has been resolved in version 8.7.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[Bug]: The SDK is constantly using the location when the user permits the App to use location 'Always'

Mapbox Implementation
Mapbox
Mapbox Version
10.7.0
Platform
iOS
@rnmapbox/maps version
rnmapbox/maps#main
Standalone component to reproduce
import React from 'react';
import PropTypes from 'prop-types';
import {MapView, UserLocation} from '@rnmapbox/maps';
import {useIsFocused} from '@react-navigation/native';
import {connect} from 'react-redux';

const APP_STATE = {
  active: 'active',
  inactive: 'inactive',
  background: 'background',
};

class Mapp extends React.Component {
  _contidionallyRenderUserLocation = () => {
    const {isFocused, appState} = this.props;
    if (isFocused && APP_STATE.active === appState)
      return (
        <UserLocation
          showsUserHeadingIndicator={true}
          visible={true}
          renderMode="native"
        />
      );
  };

  render() {
    return <MapView>{this._contidionallyRenderUserLocation()}</MapView>;
  }
}

const EnhancedMapp = props => {
  const isFocused = useIsFocused();
  return <Mapp {...props} isFocused={isFocused} />;
};

const mapStateToProps = state => {
  const {appSettings} = state;
  return {
    appState: appSettings.appState,
  };
};

Mapp.propTypes = {
    appState: PropTypes.string,
    isFocused: PropTypes.boolean
}

export default connect(mapStateToProps, null)(EnhancedMapp);

appSettings is an event listener, basically this
import {AppState} from 'react-native';

...
const appStateSubscription = AppState.addEventListener(
      'change',
      nextAppState => {
        if (
          nextAppState === APP_STATE.active ||
          nextAppState === APP_STATE.background
        ) {
          store.dispatch(setAppState(nextAppState));
        }

        appState.current = nextAppState;
      })
...

Observed behavior and steps to reproduce
When the user gives the app Location Permission - Always the Maps SDK uses the location always, when the App is in the foreground (opened) or in the background (closed, but not terminated).
Expected behavior
I expect to be able to set a property that tells the SDK 'Use the location now' or 'Do not use the location when the App is in the background', 'Do not access the location, eventhough you have permission always' ... or something similiar.
Notes / preliminary analysis
This is a thing arising with React-Navigation and Tab Navigator. When using a Tab Navigator, React Naigation does not unmount a component once its mounted inside a Tab Navigator. I though that <UserLocation />  is the component responsible for using the location all the time, so I tried to conditionally render it with isFocused = false and appState === 'active'. isFocused becomes true when the Tab Navigator focussed on the map. appState === 'active  becomes true when the app is in the foreground. However, even with the precautions on the <UserLocation/>, the SDK always uses the location, doesnt really matter if the app is in the foreground or in the background, if the corresponding Tab in the Tab Navigator is focussed or not. So I assume the <MapView> is responsible for using the location always?
Additional links and references
No response

Did you find any solution ? I am facing the same problem


Materials look very different in Godot compared to Substance Designer

The rendering looks much more "bland" in Godot compared to Substance Designer. (Disregard the lack of depth, it doesn't work well with CubeMeshes.)

Link to minimal example project: yamt.zip

To better measure any real difference between substance designer and godot 3 shouldn't you start by replicating the lighting set-up/condition as precisely in godot as possible?

manually adding it solves thingies right now metal value is .4 in demo

manually adding textures solves thingies, right now metal value is .4 in demo and it should be 1

I tried many other metallic values (including 1), but this made the material look too dark and contrasted (compared to the rendering in Substance).

Well i also use environment correction and changed color management to filmic and normal is -1

Well i also use environment correction and changed color management to filmic and normal i changed normal to -1

@Calinou , I had a look at your project. Nothing seems to be wrong with the textures other the normal map is somehow reversed (it shouldn't need to be at -1 with Godot). You need to keep metallic and roughness at a value of 1 when using maps. Specular should almost always stay at the default 0.5 (which means the facing reflections are at 4%), although for a metal material such as this it makes no difference what value you use. Still a good habit to get into though.
You will always get better results if you use a HDR, as your environment image is just a jpg (LDR). Keep in mind that metallic surfaces are totally dependant on reflections from their environment (hdr map and/or reflection probes) so they will only ever look as good as what they reflect! If comparing between Substance and Godot, you will need to use the same HDR and angle in both. I have done tests and Godot is very close, though I have noticed that recent commits by tagcup and reduz could get it closer (Burley default amongst other fixes).
It is harder to get things to look metallic on all flat surfaces, so also test on spheres/capsules. It is also a good idea to combine your metallic/roughness/AO into one map ala UE4 since you will then only need 3 maps for most objects (base color, normal, AO/Ref/Met).
You can see it looks better in the following image. Have also added a couple of omnis for better highlights:

Is there anything concrete that needs to be fixed or can this be closed with regards to fracteeds comment above?

Based on @fracteed's input, I guess this can be closed. Thanks :smile:


        It updates the context if the input object refs are fetched from
        the meta service.
        """
        input_object_refs = []
        key_to_get_meta = {}
        # for non-shuffle chunks, chunk key will be used for indexing object refs.
        # for shuffle chunks, mapper subtasks will have only one mapper chunk, and all outputs for mapper
        # subtask will be shuffle blocks, the downstream reducers will receive inputs in the mappers order.
        start_chunks = _get_start_chunks(subtask.chunk_graph)
        for index, start_chunk in enumerate(start_chunks):
            if isinstance(start_chunk.op, Fetch):
                chunk_key = start_chunk.key
                # pure_depend data is not used, skip it.
                if chunk_key in subtask.pure_depend_keys:
                    input_object_refs.append(None)
                elif chunk_key in context:
                    input_object_refs.append(context[chunk_key])
                else:
                    input_object_refs.append(None)
                    key_to_get_meta[index] = self._meta_api.get_chunk_meta.delay(
                        chunk_key, fields=["object_refs"]
                    )
            elif isinstance(start_chunk.op, FetchShuffle):
>               assert len(start_chunks) == 1, start_chunks
E               AssertionError: [Chunk <op=TensorFetch, key=5ee475fb6e8060867f5a1c97421059b3_0>, Chunk <op=TensorFetchShuffle, key=73d37b69ae018bc2c4f66072dd0bfb7b_0>]

mars/services/task/execution/ray/executor.py:678: AssertionError

To Reproduce
To help us reproducing this bug, please provide information below:

Your Python version
The version of Mars you use
Versions of crucial packages, such as numpy, scipy and pandas
Full stack of the error.
Minimized code to reproduce the error.

Expected behavior
A clear and concise description of what you expected to happen.
Additional context
Add any other context about the problem here.

This is an operand shuffle compatibility issue. In map reduce paradigm, all reducer inputs are just mapper outputs, but in fancy index, reducer depends on not only mapper outputs, but also tensors partitions:


make jimp non-blocking

Any change jimp could be updated so it's non-blocking? Using jimp I created a program to change the quality on a large set of images and the whole time the process was running it blocked the event loop preventing other things from running. Also, the memory consumption on the node process skyrocketed to over 500MB. A quick review of your code shows me that everything is processed in memory by use of Buffers (and I don't mean Buffered Streams either). Image files are large and would be better processed in Streams. This would prevent the event loop from getting blocked and keep memory consumption down.

I would say it's unlikely going to happen in the near future. We could change methods of Jimp so it would iterate on pixels in chunks rather all at once, maybe by measuring time, but that would only solve half of the problem. And if multiple "asynchronous" operations will be started in the same time event loop will struggle anyway. Image encoding/decoding on the other half is handled by third party modules and iirc jpeg-js and bmp-js are synchronous-only. (Also jpeg-js and pngjs modules are the ones to blame for high memory usage #153).
Stream support mostly limited by the same factors - encoding/decoding algorithms. But it will also likely break methods like color normalization that rely on the histogram of the entire image. Maybe ImageMagick or libvips is more suitable to your needs

What if "all" jimp methods use Promises? Assuming not the entire api is promise based. Would that give the event loop some room to breath?

No, every CPU expensive operation would still block the thread. Maybe something will be able to run in between two Jimp operations, because promises are always resolved asynchonously, but that's about it

@Iwasawafag is right! And what about to use the node-webworker-threads module to use multi-core CPUs? I don't think it gonna be simple, but looks possible, (not exactly) as it is used by synaptic.
if (os.cpus().length > 2) Threads.create().eval(()=>{ ... }, userCallback);

I solved the blocking by creating child processes to run the jimp code in.
For example:
// ./main_app.js
const path = require('path');
const spawn = require('child_process').spawn;

const compressImages = (folder, quality, callback) => {
	let err = '';

	const j = spawn('node.exe',
		['--max-old-space-size=1000', 'child_jimp.js', quality, folder],
		{cwd: path.join(__dirname, '../syncProcesses')
	});

	j.stdout.on('data', (data) => {
		console.log(data.toString('utf8').replace(/[\n\r]/g, ''));
	});

	j.stderr.on('data', (data) => {
		err += data.toString('utf8');
	});

	j.on('close', (code) => {
		console.log('successfully optimized all images');
		callback(err);
	});
};

// Here I run an Express server which provides an endpoint to submit files.
// Those files are saved into a temp folder. Then I do something like this:
compressImages(tempfolder, 60, ()=>{
	delete_tmp_folder();
});

// ./syncProcesses/child_jimp.js

if(process.argv.length < 4) throw("Not enough arguments provided to child_jimp.js");

const fs = require('fs');
const jimp = require("jimp");
const quality = parseInt(process.argv[2], 10);
const folder = process.argv[3];

fs.readdir(folder, (err, files) => {
    if(err) throw(err);
    files.forEach(fn => {
        const file = folder + '/' + fn;
        const optimized_file = folder + '/optimized_' + fn;
        jimp.read(file, function (err, file) {
            if(err) throw(err);
            file.quality(quality) // set JPEG quality
                .write(optimized_file, (err) => { // save
                    if(err) throw(err);
                    console.log('successfully optimized image ' + optimized_file);
                });
        });
    });
});

I solved the blocking by creating child processes to run the jimp code in.

It would be nice if jimp could provide the means of doing this internally.

@oliver-moran @Iwasawafag @aurium What are your thoughts on implementing something like this within jimp?

I don't know about this.
I would love to be able to pass raw buffers with encoded images or raw RGBA pixel data to avoid writing temp files to disk. Tossing data back and forth over stdin/stdout for every operation would be a waste of time, so better approach is to change syntax to declarative style, where you specify order of operations from the start and then let remote process do the job similarly to API gm module provides. But that comes with its own limitations, for example, you can't put a condition in the middle of the chain depending on intermediate state of the image.
I don't like idea of breaking existing API and moving to declarative syntax. If we had to go with multiprocess approach I'd rather wrote an adapter to gm module, but there are plenty of differences in feature set and supported formats between GraphicsMagick/ImageMagick and Jimp so that can't be done over night and I don't think gm was designed to support anything other than GM/IM.
Multithreading sounds like a better solution, it's supposed to be able to work on the same memory but from what I gathered in node could only be done with a module, most popular of which(?) requires some binaries to be compiled and that goes against the idea of having "pure javascript" image processor.
And lets not forget about browser. Browser version has access to workers, but can't spawn child processes. Also it's designed around the idea of image processing inside the worker and I'm not sure if one worker can spawn more workers.
Maybe this should be done as a separate module intended for use in Node.js only, but then again, if compiling native modules is not a problem – there are faster alternatives should be available and I don't see appeal of pure javascript solution anymore

I'm not suggesting we implement it by reading from disk. The example was somewhat unique to my situation. Also, I probably should change the example so that child_jimp.js only does the jimp functions and returns a success or an error and then do the folder loop within the main_app.js. Regardless, what I wanted you to take away from the example was how relatively easily we can implement the offloading of blocking tasks to child processes.

I don't like idea of breaking existing API and moving to declarative syntax.

I agree and don't suggest we change the API I suggest we add to it. For example, in the situation where someone want to simply change the quality of a file they could make one method call, something like jimp.qualityasync(file, [file_to], callback); which can abstract the offloading of the blocking task to a sub process.

webworker-threads requires some binaries to be compiled, however it is necessary only at Node.js context. At Browser's we can use WebWorkers. Both solutions are multi-core friendly and we may consider to do all the manipulation job in a worker using messages to send commands and returning values.
The load and save will be increased by the thread communication, however i don't know how much it will affect the r/w time and if it will be better or not to all the job. I would bet it can be good.

I am concerned that jimp already is quite big with many dependencies (). batch processing jimp could be something that is built on top of jimp and optimized for the environment. I have never used jimp in the browser, but I understand that it makes sense for some people.
jimp itself should not blow up IMO. We could add jimp-webworker, jimp-spawn, jimp-cli. Unfortunatelly it seems https://github.com/jimp (for a jimp github organization) is already taken

I don't get what webworker-threads is https://github.com/audreyt/node-webworker-threads/issues/146

jimp itself should not blow up IMO. We could add jimp-webworker, jimp-spawn, jimp-cli. Unfortunatelly it seems https://github.com/jimp (for a jimp github organization) is already taken

I second you!

I don't get what webworker-threads is audreyt/node-webworker-threads#146

Sorry, show you the Threads usage, however the focus should be on Worker usage to have the same API on Node.js and browsers.

webworker-threads requires some binaries to be compiled, however it is necessary only at Node.js context. At Browser's we can use WebWorkers. Both solutions are multi-core friendly and we may consider to do all the manipulation job in a worker using messages to send commands and returning values.

I just happened to come across Readme.md again and noticed that it says the following:

An image processing library for Node written entirely in JavaScript, with zero external or native dependencies.

Having no native dependencies is selling point, as sometimes those fail to compile and on Windows it's common to not even have a compiler installed.
So yeah, I prefer variant with second module that would implement the same interface, but would execute every operation in a separate thread, what @thisconnect suggested.
As for creating organization and multiple repositories – maybe monorepo is the way to go? I tried Lerna and first impression was okay-ish. We already have about 300MB of test images committed here which isn't going anywhere and I don't like idea of having more of those in other repositories. At the same time having one test case for all plugins/wrappers sounds very appealing to me, especially considering that most of operations would be the same and should produce the same output.

closing in favor of #600 #601 #602


Can't add integration

Describe the bug
When I try to setup the account, I get "Language code is not valid."
To Reproduce
Steps to reproduce the behavior:
I've installed the "Toyota Connected Services" via HACS
Then I try to add and integration normally (via Settings -> Integration -> Add Integration, the lookup for toyota)
I'll put email account (working on MYT), password and select "Europe"
Then click on "submit"
Expected behavior
connection to MYT :D
Additional context
System Health

version
core-2021.8.5

installation_type
Home Assistant Core

dev
false

hassio
false

docker
false

user
homeassist

virtualenv
true

python_version
3.8.11

os_name
Linux

os_version
4.19.0-17-amd64

arch
x86_64

timezone
Europe/Brussels

Home Assistant Community Store

GitHub API
ok

Github API Calls Remaining
4978

Installed Version
1.15.2

Stage
running

Available Repositories
887

Installed Repositories
2

Home Assistant Cloud

logged_in
false

can_reach_cert_server
ok

can_reach_cloud_auth
ok

can_reach_cloud
ok

Lovelace

dashboards
5

resources
2

views
9

mode
storage

I am not able to reproduce this unfortunately and thus can not fix it. I can see that you are running it in a virtualenv. Can you please check that you have the latest version of langcodes installed through pip (3.2.1)? 😃

Hi there @DurgNomis-drol ,
I am having the same issue as @saintfrater . I already checked and my langcodes is the latest (3.2.1) version.
System Health

version
core-2021.11.1

installation_type
Home Assistant Container

dev
false

hassio
false

docker
true

user
root

virtualenv
false

python_version
3.9.7

os_name
Linux

os_version
4.4.180+

arch
x86_64

timezone
Asia/Nicosia

Home Assistant Community Store

GitHub API
ok

Github API Calls Remaining
4993

Installed Version
1.15.2

Stage
running

Available Repositories
887

Installed Repositories
6

Home Assistant Cloud

logged_in
false

can_reach_cert_server
ok

can_reach_cloud_auth
ok

can_reach_cloud
ok

Lovelace

dashboards
1

resources
6

views
4

mode
storage

@savvasha Where are you located in the world? Your Home Assistant timezones is set in Asia? 🤔 Just curious if it is something to do with where the Toyota account is created.

@DurgNomis-drol Well... I am living in Cyprus which politically is in Europe. Nicosia is the capital city.
The strange thing is that your integration was working perfectly... until it stopped working! I tried to re-install it and received the error with the language. I even tried older versions but with the same result...

That makes sense. The other guys is from Belgium, so that is probably not the problem then. I will see if I can create a test script tomorrow for you guys so we can isolate the problem 😊

Great! Thanks :)

Please make sure that you have the latest version of mytoyota installed (0.7.3) when you run the below script. Please post you output here.
IMPORTANT: Sensitiv data should be censored, but please double check anyways. 😃
import json
import asyncio
from mytoyota.client import MyT

username =<EMAIL_ADDRESS>password = "MyPassword"
locale = "en-gb"

client = MyT(username=username, password=password, locale=locale, region="europe")

async def get_information():
    print("Logging in...")
    await client.login()

    print("Retrieving cars...")
    cars = await client.get_vehicles()

    for car in cars:
        vehicle = await client.get_vehicle_status(car)

loop = asyncio.get_event_loop()
loop.run_until_complete(get_information())
loop.close()

Please ignore my ignorance... But how can I run your script inside my docker container?

You don't have to run it in the container. This script uses the underlying package.  Just create a python script test.py and paste the above into that and edit email and password. The just do python3 test.py in you commandline 😃

Hmm ok. As I mentioned above, my machine is a Synology NAS and I am running HA using a docker container with the official image from homeassistant.
I try to ssh to my NAS and run the python script but it returns the following error:
Traceback (most recent call last):
  File "rav4.py", line 3, in <module>
    from mytoyota.client import MyT
ModuleNotFoundError: No module named 'mytoyota'

Probably I need to find a way to do the procedure inside the container.

You need to install the mytoyota module first. Like this pip3 install mytoyota==0.7.3 😃

I think is better to wait for @saintfrater to try it, cause I dont want to mess with my synology environment by installing python components :)

You can also do this on any other PC that runs linux 😃

Ok, I tried it to my laptop with linux and got the following:
Logging in...
Retrieving cars...

nothing else

Can you try this below instead? 😃
import json
import asyncio
import logging
logging.basicConfig(level=logging.DEBUG)

from mytoyota.client import MyT

username =<EMAIL_ADDRESS>password = "MyPassword"
locale = "en-gb"

client = MyT(username=username, password=password, locale=locale, region="europe")

async def get_information():
    print("Logging in...")
    await client.login()

    print("Retrieving cars...")
    cars = await client.get_vehicles()

    for car in cars:
        vehicle = await client.get_vehicle_status(car)

loop = asyncio.get_event_loop()
loop.run_until_complete(get_information())
loop.close()

It seems to working? I mask out some info.
`DEBUG:asyncio:Using selector: EpollSelector
Logging in...
DEBUG:mytoyota:Performing first login
DEBUG:mytoyota:Getting new token...
DEBUG:httpx._client:HTTP Request: POST https://ssoms.toyota-europe.com/authenticate "HTTP/1.1 200 OK"
DEBUG:mytoyota:Extracting token from result
DEBUG:mytoyota:Token is the correct format
DEBUG:mytoyota:Saving token and uuid
Retrieving cars...
DEBUG:mytoyota:Getting list of vehicles associated with the account
DEBUG:mytoyota:Checking if token has expired...
DEBUG:mytoyota:Constructing additional headers...
DEBUG:mytoyota:Additional headers: {'X-TME-LC': 'en-gb', 'X-TME-LOCALE': 'en-gb', 'X-TME-TOKEN': 'Q*****************************************************************************************************************', 'Cookie': 'iPlanetDirectoryPro=Q*****************************************************************************************************************', 'uuid': 'e***********************************'}
DEBUG:mytoyota:Creating client...
DEBUG:mytoyota:Base headers: {'Content-Type': 'application/json;charset=UTF-8', 'Accept': 'application/json, text/plain, /', 'Sec-Fetch-Dest': 'empty', 'X-TME-BRAND': 'TOYOTA'} - Timeout: 15
DEBUG:mytoyota:Body: None - Parameters: None
DEBUG:httpx._client:HTTP Request: GET https://cpb2cs.toyota-europe.com/vehicle/user/efda1b99************************/vehicles?services=uio&legacy=true "HTTP/1.1 200 OK"
DEBUG:mytoyota:Getting status for vehicle - JTMW53FV6********...
DEBUG:mytoyota:Checking if token has expired...
DEBUG:mytoyota:Constructing additional headers...
DEBUG:mytoyota:Additional headers: {'X-TME-LC': 'en-gb', 'X-TME-LOCALE': 'en-gb', 'X-TME-TOKEN': 'Q*****************************************************************************************************************', 'Cookie': 'iPlanetDirectoryPro=Q*****************************************************************************************************************', 'uuid': 'e***********************************'}
DEBUG:mytoyota:Creating client...
DEBUG:mytoyota:Base headers: {'Content-Type': 'application/json;charset=UTF-8', 'Accept': 'application/json, text/plain, /', 'Sec-Fetch-Dest': 'empty', 'X-TME-BRAND': 'TOYOTA'} - Timeout: 15
DEBUG:mytoyota:Body: None - Parameters: None
DEBUG:mytoyota:Checking if token has expired...
DEBUG:mytoyota:Constructing additional headers...
DEBUG:mytoyota:Additional headers: {'X-TME-LC': 'en-gb', 'X-TME-LOCALE': 'en-gb', 'X-TME-TOKEN': 'Q*****************************************************************************************************************', 'Cookie': 'iPlanetDirectoryPro=Q*****************************************************************************************************************', 'uuid': 'e***********************************'}
DEBUG:mytoyota:Creating client...
DEBUG:mytoyota:Base headers: {'Content-Type': 'application/json;charset=UTF-8', 'Accept': 'application/json, text/plain, /', 'Sec-Fetch-Dest': 'empty', 'X-TME-BRAND': 'TOYOTA'} - Timeout: 15
DEBUG:mytoyota:Body: None - Parameters: None
DEBUG:mytoyota:Checking if token has expired...
DEBUG:mytoyota:Constructing additional headers...
DEBUG:mytoyota:Additional headers: {'X-TME-LC': 'en-gb', 'X-TME-LOCALE': 'en-gb', 'X-TME-TOKEN': 'Q*****************************************************************************************************************', 'Cookie': 'iPlanetDirectoryPro=Q*****************************************************************************************************************', 'uuid': 'e***********************************'}
DEBUG:mytoyota:Creating client...
DEBUG:mytoyota:Base headers: {'Content-Type': 'application/json;charset=UTF-8', 'Accept': 'application/json, text/plain, /', 'Sec-Fetch-Dest': 'empty', 'X-TME-BRAND': 'TOYOTA'} - Timeout: 15
DEBUG:mytoyota:Body: None - Parameters: None
DEBUG:mytoyota:Checking if token has expired...
DEBUG:mytoyota:Constructing additional headers...
DEBUG:mytoyota:Additional headers: {'X-TME-LC': 'en-gb', 'X-TME-LOCALE': 'en-gb', 'X-TME-TOKEN': 'Q*****************************************************************************************************************', 'Cookie': 'iPlanetDirectoryPro=Q*****************************************************************************************************************', 'uuid': 'e***********************************'}
DEBUG:mytoyota:Creating client...

 Below is a small script for you to run on the Synology NAS, you won't need to install any thing, but this will test the specific function that creates the error you are having.
from langcodes import Language
from langcodes.tag_parser import LanguageTagError

locale = "en-gb"

valid = False
if locale:
    try:
        valid = Language.get(locale).is_valid()
    except LanguageTagError:
        pass

print(valid)

I tried to open a bash console inside my HA container to run the above script. I received the following error:
python3: can't open file '/config/from langcodes import Language
from langcodes.tag_parser import LanguageTagError

locale = "en-gb"

valid = False
if locale:
    try:
        valid = Language.get(locale).is_valid()
    except LanguageTagError:
        pass

print(valid)': [Errno 2] No such file or directory

But I am also getting the following when I try to install langcodes library:
bash-5.1# pip install langcodes
Requirement already satisfied: langcodes in /usr/local/lib/python3.9/site-packages (3.2.1)

Nevermind. I managed to create a python file inside bash and executed.
bash-5.1# python3 test.py
True

It is really strange that the check works when run manually, but when the same function is run in side the module it fails. 🤔
Something is different about your HA install, have you modified it in anyway? What other custom integrations do you have installed?
I am really at a lose of what to do to mitigate this problem. Can you double check that you are running the latest version of this integration?

Hello,
sorry for the delay; I've run the script :
# python3 test.py
Traceback (most recent call last):
  File "test.py", line 12, in <module>
    client = MyT(username=username, password=password, locale=locale, region="europe")
  File "/srv/homeassist/lib/python3.8/site-packages/mytoyota/client.py", line 55, in __init__
    raise ToyotaLocaleNotValid(
mytoyota.exceptions.ToyotaLocaleNotValid: Please provide a valid locale string! Valid format is: en-gb.

So same error... I've checked my version and upgraded my OS and instances:
System Health

version
core-2021.11.1

installation_type
Home Assistant Core

dev
false

hassio
false

docker
false

user
homeassist

virtualenv
true

python_version
3.8.11

os_name
Linux

os_version
5.10.0-9-amd64

arch
x86_64

timezone
Europe/Brussels

Home Assistant Community Store

GitHub API
ok

Github API Calls Remaining
4982

Installed Version
1.16.0

Stage
running

Available Repositories
887

Installed Repositories
3

Home Assistant Cloud

logged_in
false

can_reach_cert_server
ok

can_reach_cloud_auth
ok

can_reach_cloud
ok

Lovelace

dashboards
5

resources
3

views
9

mode
storage

What other custom integrations do you guys have installed?

Thats everything

I've

HACS
Toyota Connected Services
Philips Hue Bridge
Verisure

Hi there!
Looks like I have the same issue here.
I run home assistant on a raspberry pi 4b, used the toyota integration for some weeks now and everything went quite well.
Until today after I updated to core-2021.11.3 all of a sudden the integreation won't start anymore.
The log says:
Logger: homeassistant.config_entries
Source: custom_components/toyota/init.py:62
Integration: Toyota Connected Services (documentation, issues)
First occurred: 15:05:21 (1 occurrences)
Last logged: 15:05:21
Error setting up entry<EMAIL_ADDRESS>for toyota
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 304, in async_setup
result = await component.async_setup_entry(hass, self)  # type: ignore
File "/config/custom_components/toyota/init.py", line 62, in async_setup_entry
client = MyT(
File "/usr/local/lib/python3.9/site-packages/mytoyota/client.py", line 55, in init
raise ToyotaLocaleNotValid(
mytoyota.exceptions.ToyotaLocaleNotValid: Please provide a valid locale string! Valid format is: en-gb.
I already tried the scripts above, with a similar outcome as savvasha. Although the script returned less sensors in my case, but that is a limitation of my Corolla I guess ;-)
The script that is checking the locale returns: True
My installed langcode has version 3.3.0
mytoyota is version 0.7.3
If you are also interested in timezones and regions ... My Pi and I are located in Germany ;-)
And I already ran dos2unix over the files, because every line ended with ^M
But as expected, that didn't help. Just for the good feeling :-)

Does the integration work if you use an older version of it?
Some changes have been made to langcodes in the last month or so, though they have not been released yet (3.3.0). I may need to rewrite the function that couses this issue, though it is difficult because I cannot recreate it so I can test it.

Well ... I'm not sure, if what I'm doing happens system wide.
I installed langcodes yesterday. Meanwhile I rebooted the host and today langcodes is gone.
pip list does not list langcodes anymore.
Of course there's no problem, to install langcodes 3.2.1 or an older version, but that doesn't change anything for the toyota integration. Still the same error.
Do I have to install the langcodes in a "special" way to make it persistant and system wide? I don't use pip that much.

I meant try to install an older version of this integration, not langcodes.
When i have time I will rewrite the check function in mytoyota to not use langcodes and eliminate this problem

Can some on please try to install the latest master and test if it fixes you problem. I disabled the check for now until i can create a better validation function. Hope this fixes you problems 😃

Hi @DurgNomis-drol !
It is working perfectly!!
Thank you very much :)

Great to hear, I will publish a new release (1.2.4)  😃

Everybody please update to the latest version (1.2.4)
https://github.com/DurgNomis-drol/ha_toyota/releases/tag/v1.2.4

Thanks!! Working like a charm again!

Works again for me too, thanks for your effort! :-)


Indents in Excel export

With the ReoGridControl (v2.1.0) in WPF, the Save method doesn't seem to export the cell indent nor leading tabs and spaces.

It seems that Excel and ReoGrid convert (from the editor) the tabs into spaces (1 space per tab).
Nevertheless, leading and trailing spaces are exported in the OpenXML format but without the xml:space="preserve" attribute, required by Excel.
This space attribute should be in unvell.ReoGrid.IO.OpenXML.Schema.ElementText and exported to xl/sharedStrings.xml.

The cell indent, however, is not converted at all (neither at import nor export).

thanks @lelimacon!


[Renderer] Fog doesn't hide the skybox at all

Tried out the new version, and now the fog works, but sadly it doesn't seem to work properly, as it doesn't seem to hide the skybox at all, making it look really ugly.

You can enable sky fog by r_wsurf_sky_fog 1

Alright, thanks, that solves that issue.
But now I'm having another issue, not sure if it's related to this or not, should I create another thread for it so you can better keep track of it? But it seems that in maps that have no fog, the screen goes black except for my weapon and some sprites. Here's an example of it on Stadium4

Fixed in https://github.com/hzqst/MetaHookSv/releases/tag/v20240319a.

Thanks. No more issues with fog from what I tried so far.


Current period usage does not handle negative

With solar panels this should be able to handle negative numbers.

Usage:

Hi,
Can you try out v1.1.2 to see if this has fixed the issue? I have used the same negative logic for the instantaneous usage.
If you don't see any changes, could you turn on logging for the component and you should see logs relating to the data returned from the device which may give additional hints on how to interpret negative results.
logger:
  logs:
    custom_components.rainforest_emu_2: debug

Hi @TravHayes,
Were you able to have any success here?

@ryanwinter - Hi thanks for looking into this. I tried upgrading to the latest version and it didn't fix the issue. Here is debug from the current period that is during solar usage.
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received 0xd8d5b900000114a8
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received 0x001350020094b970
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received 0xffffffff
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received 0x0000000000153d85
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received 0x00000001
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received 0x000003e8
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received 0x01
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received 0x00
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received Y
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received 0x297331fe
2022-04-24 12:10:29 DEBUG (MainThread) [custom_components.rainforest_emu_2.emu2] received

Looks like the currentperiodusage doesn't report on the received and delivered summation. The seperate cummulative sensors should be working now.


Moved Artifactory to stable and updated version to 5.3.2

@unguiculus Made suggested changes please check.

The app label is not yet correct everywhere.
May I direct you to the nginx-ingress example again regarding resource names:
https://github.com/kubernetes/charts/blob/master/stable/nginx-ingress/templates/controller-deployment.yaml#L11
https://github.com/kubernetes/charts/blob/master/stable/nginx-ingress/templates/_helpers.tpl#L18-L25

@unguiculus Does it looks good now?

Now it is kind of messed up. Don't confuse name and the app label. Let me again suggest you to study the nginx-ingress chart as mentioned above. It has multiple components as well. Check how they are structured, named, and labeled.
https://github.com/kubernetes/charts/tree/master/stable/nginx-ingress
https://github.com/kubernetes/charts/blob/master/stable/nginx-ingress/templates/_helpers.tpl

@unguiculus does it looks good now?

@unguiculus done

@k8s-bot ok to test

Have you seen my comment regarding secrets?

@unguiculus done!

@unguiculus changed


ci: merge staging to master

This is an automatic PR generated by the pipeline CI/CD. This will be automatically fast-forward merged if successful.

Pipeline Attempt on<PHONE_NUMBER> for f2710dd163fd8de3a5a3d1434ad1574a7bb3d813
https://gitlab.com/MatrixAI/open-source/js-ws/-/pipelines/1042045868

Pipeline Succeeded on<PHONE_NUMBER> for f2710dd163fd8de3a5a3d1434ad1574a7bb3d813
https://gitlab.com/MatrixAI/open-source/js-ws/-/pipelines/1042045868


Is there a need to free memory of Unpooled.unreleasableBuffer

Say, we declare in MyClass:
   ByteBuf fixedBuf = Unpooled.unreleasableBuffer(PooledByteBufAllocator.DEFAULT.directBuffer(64, 64));
This should reserve a 64 bytes chunk of off-heap memory. As documented, Netty ignores here the 'release()' and 'retain()' functionality, therefore, the chunk remains allocated throughout the life of MyClass. What will happen to the allocated off-heap memory chunk once the instance of MyClass gets out of scope? Will JVM/GC release it? If not, or if I want to discard the 'fixedBuf ' programatically, how can I best deallocate the claimed memory blocks for such ByteBuf objects?
Would you please also point to  explanation(s) / example(s) / best practice for avoiding any memory leaks and issues on ByteBuf objects?

I am looking into this now as well because I use a bit of cached buffers for repetitive IO. A temporary solution until we find out by reading the API documentation, github code and writing some test; one would create a "disposal method " and use ByteBuf.unwrap() to unwrap the buffer and then release it.

(JVM only) It appears that the Direct Buffer will be cleaned up if no references are to it by default in the JVM or during the heap GC but not effected by heap pressure so manual cleaning may be required as per previous stack overflow questions. Stack Overflow 1, Stack Overflow 2
(For Netty) Since Netty references the Direct Buffer I would think that it does not clean it until the PoolThreadCache runs a the method free which manually uses the Netty Internal/Cleaners which happens in finalize block of the PoolThreadCache.java and a other locations. If you are going out of scope it should clean automatically. If in doubt use Unpooled.unwrap() and release it yourself.
@trustin or @normanmaurer just to verify this is correct. (Hope so, spent 1 or 2 hours navigating the code)
Working notes from browsing the class files below.
Reading through the Unpooled.unreasableBuffer(ByteBuf byteBuff) it just wraps it in a UnreleasableByteBuf class which is just a WrappedByteBuf. The behavior would be in the cleaners and original allocation in PooledByteBufAllocator. Which by default uses  public static final PooledByteBufAllocator DEFAULT = new PooledByteBufAllocator(PlatformDependent.directBufferPreferred());  which ends up down the line using
@Override
    protected ByteBuf newDirectBuffer(int initialCapacity, int maxCapacity) {
        PoolThreadCache cache = threadCache.get();
        PoolArena<ByteBuffer> directArena = cache.directArena;

        final ByteBuf buf;
        if (directArena != null) {
            buf = directArena.allocate(cache, initialCapacity, maxCapacity);
        } else {
            buf = PlatformDependent.hasUnsafe() ?
                    UnsafeByteBufUtil.newUnsafeDirectByteBuf(this, initialCapacity, maxCapacity) :
                    new UnpooledDirectByteBuf(this, initialCapacity, maxCapacity);
        }

        return toLeakAwareBuffer(buf);
    }

leading us to ...
private final PoolArena<ByteBuffer>[] directArenas;  leading to PooledArena static class static final class DirectArena extends PoolArena<ByteBuffer> and in it
private static ByteBuffer allocateDirect(int capacity) {
            return PlatformDependent.useDirectBufferNoCleaner() ?
                    PlatformDependent.allocateDirectNoCleaner(capacity) : ByteBuffer.allocateDirect(capacity);
        }

and inside PoolArena  void free(PoolChunk<T> chunk, long handle, int normCapacity, PoolThreadCache cache) which calls
        protected void destroyChunk(PoolChunk<ByteBuffer> chunk) {
            if (PlatformDependent.useDirectBufferNoCleaner()) {
                PlatformDependent.freeDirectNoCleaner(chunk.memory);
            } else {
                PlatformDependent.freeDirectBuffer(chunk.memory);
            }
        }

which looks like ultimately it depends on the thread PoolThreadCache.java which is what calls
 /**
     *  Should be called if the Thread that uses this cache is about to exist to release resources out of the cache
     */
    void free() {
        // As free() may be called either by the finalizer or by FastThreadLocal.onRemoval(...) we need to ensure
		// we only call this one time.

when it frees it destroys the chunk
        @Override
        protected void destroyChunk(PoolChunk<ByteBuffer> chunk) {
            if (PlatformDependent.useDirectBufferNoCleaner()) {
                PlatformDependent.freeDirectNoCleaner(chunk.memory);
            } else {
                PlatformDependent.freeDirectBuffer(chunk.memory);
            }
        }

@felixunivers to release such a buffer you would need to unwrap it first. And yes you definitely want to do this as otherwise you will leak it.
So something like:
unreleaseableBuffer.unwrap().release()


coccinelle: Add script to check legal usage of sizeof expression

sizeof when applied to a pointer typed expression gives the size of
the pointer and not the size of the object associated with the pointer
expression leading to errors.
This scripts checks for inconsistencies where sizeof is incorrectly
used, especially while calculating size of memory to be allocated in
memory allocating functions.
Eg:

memset(pStr, 0, sizeof(pStr));

memset(pStr, 0, sizeof(*pStr));

Signed-off-by: Himanshu Jha<EMAIL_ADDRESS>One possible report found using this script was:
https://github.com/zephyrproject-rtos/zephyr/blob/master/subsys/bluetooth/controller/util/mem.c#L79
But it is a false postive.

Shippable build errors due to: #10775

recheck


How to build a real-time renderer with TensoRF?

Hello @apchenstu,
I was wondering if it might be possible to render 3D models using TensoRF in real-time? I don't know if this is the direction your team was planning to go in with your paper.  But I am curious if it would be possible to build something similar to what Google built for SNeRG: website link
Thanks for sharing this work with the community!

Hi, thanks for the recommendation, yeah, it is interesting to build a real-time renderer and it's not hard to achieve by combining with a customized CUDA kernel or OpenGL (SNeRG) I think. Unfortunately, the real-time renderer doesn't in our current plan, feel free to design one if you are interested in :)

If anyone else finds this problem interesting, I started a fork of this repo so we can work on it!
The approach I personally think we should take is:

re-implementing all the torch modules using flax, and
then see if we can drop a trained TensoRF straight into the bake.py script that the SNeRG authors first created.

Hi Zain! I find this problem interesting too! Thanks for sharing.

Hey team,
I'm curious if anyone has come across a technique or research paper on 1) reconstructing a 3d mesh from RGB-D scans, 2) in real-time, 3) and for a non-deformable object)?
Reason I ask is because I was able to render the predicted images by TensoRF for a custom dataset I have (here's an example):

Since TensoRF visualizes both the RGB values and depth maps, I'm starting to wonder if we could just use these for the reconstruction?

^On 2nd thought - I guess using RGB-D would be overthinking the problem?
I know earlier in the issue @apchenstu brought up the following idea:

Hi, thanks for the recommendation, yeah, it is interesting to build a real-time renderer and it's not hard to achieve by combining with a customized CUDA kernel or OpenGL (SNeRG) I think...

This is probably a dumb question - but could you please elaborate on this? To me what I think it suggests is that we could just pass a trained TensoRF to a custom fragment shader (let's say in OpenGL), and use that to predict the view-dependent colors in real-time?

Hi again - just to provide an update on this, I started another new repo called tensorfvis here, where we're building the renderer based on the nerfvis library (which itself is based on the PlenOctrees paper). I will open up new issues in the future there to continue this discussion.