Registration WS "adjustable wrench" icone don't respond without Image

Into Registration workspace, the "adjustable wrench" icone has no action without image into the view.
It's a big problem because a user can want open an image via this icone.

In Filtering and Registration, the goal was to have fix containers, that's why the "Tools" button was disabled (but it would be better to display a gray icon then) as far as i remember. That's because we are not used to use the Open button in the Tools menu.
But then if you add a data, the right behavior appears: you can use the Tools button, but can't split or remove the views.
So, indeed there is a problem, and i would add 2 problems to solve. Summary of "Tools" menu issues:

In Filtering and Registration, we need to enable by default the Tool menu, but on "no split" mode, like when we add a data.
Add a right disabled Tools icon.
If you add a data in Registration for instance, you can Maximize it. If you remove it and add it back, you can't Maximize it. Choose if we want to be able to maximize or not in "no split" mode.


MTU problems

Hi,
I'm using OpenMPTCProuter to aggregate 2 WAN connections which have a MTU of 1500 each.
When I use Glorytun TCP (default on OpenMPTCProuter), tunnel interfaces on both OpenMPTCProuter the VPS have an MTU of 1500, which is correct. Speeds are somewhat good on a site to site OpenVPN UDP with a friend that also have OpenMPTCProuter running.
When I use Glorytun UDP (OpenMPTCProuter uses the latest commit on the VPS and an OpenWRT version on the router), tunnel interfaces on both OpenMPTCProuter and the VPS have an MTU of 1378 (same thing on my friend's install). Speeds are horrible with the OpenVPN UDP tunnel, as it certainly has to fragment packets. I tried to set link-mtu, tun-mtu and mssfix parameters on OpenVPN, but the performance is not good anyway.
When I try to force the MTU on Glorytun UDP with the LuCI interface on OpenMPTCProuter, it does nothing.
When I try to force the MTU of the Glorytun server on the VPS:
# glorytun set mtu 1500
mtu set to 1500
# glorytun show
server gt-udp-tun0:
  pid:       3114
  bind:      <IP_ADDRESS> port 65001
  mtu:       1378
  cipher:    aes256gcm

We can clearly see that it does nothing.
I don't see any reason why Glorytun UDP sets a MTU of 1378 on the interface, and it's too bad because it would be more efficient than Glorytun TCP.

Hi,
Where does 1378 come from?
The MTU overhead of glorytun is 50 bytes (28 for UDP + 22 for mud).
If your network is 1500 then you should have 1450 in glorytun show (1472 for each path in gloryutn path).

I don't know where it's coming from.
A friend of mine have the same install as mine and he also see 1378 on the tunnel interface.
I recall that some days ago, on a previous version of the OpenMPTCProuter VPS, the MTU was 1450 or 1472 and all was working correctly, but I didn't do any change and the VPS scripts don't modify any of the Glorytun settings or version.

See the issue I have created at the OpenMPTCProuter Github page, there are strange things going on...
Link: https://github.com/Ysurac/openmptcprouter/issues/485

Closing as it seems to me that the problem is on openmptcprouter.


WinSDK: add CW_USEDEFAULT to the SDK overlay

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

@swift-ci please smoke test and merge


Remove a few lingering grammar doc comments

A few cases that were missed by https://github.com/apple/swift-syntax/pull/2179.
rdar://113301253

@swift-ci Please test

@swift-ci Please test Windows


error occured when run catkin deps fetch

thanks for your share!
error describe like title
INFO:deps: Will print status messages while cloning.
INFO:deps: Using 4 threads.
INFO:deps: Avoid fetching ROS packages.
INFO:deps: [ROS]: Searching all packages.
INFO:deps: [ROS]: Not found. Ignoring pre-defined ROS packages.
INFO:deps: Searching for dependencies.
[catkin]                 : Found 3 valid dependencies
[fast_change_detection]  : Found 1 valid dependencies
INFO:deps: Package [glow]: Skip default urls. Explicit one defined: https://github.com/jbehley/glow.git
[glow]                   : Found 0 valid dependencies
INFO:deps: Checking merged dependencies:
[python-argparse]        : [NOT FOUND]
[python-empy]            : [NOT FOUND]
[python-catkin-pkg]      : [NOT FOUND]
[glow]                   : [FOUND]: https://github.com/jbehley/glow.git
INFO:deps: Cloning valid dependencies:
[glow]                   : [ALREADY EXISTS]
INFO:deps: New packages available. Process their dependencies now.
INFO:deps: Searching for dependencies.
INFO:deps: No new dependencies. Done.
INFO:deps: Pulling packages:
[glow]                   : [GIT ERROR]
hope your reply!thanks

I just try to reproduce this on a clean Ubuntu 16.04 install. I get the same error, but the program compiles correctly anyway. Try to compile it with catkin build fast_change_detection and let me know if it works. If not, please post the output of that command.

I am very glad to receive your reply, but unfortunately I have a new problem!
The project can build successfully, but error occurs when I try to run the example under bin.
./fastcd_example ./dataset/container/
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
OpenGL Context Version 5.0 core profile
Missing GL version
terminate called after throwing an instance of 'std::runtime_error'
what():  Failed to initialize GLEW.
已放弃 (核心已转储)
what's wrong？hope for your help！thanks

I am very glad to receive your reply! The project build was successful, but running example showed some errors.
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
OpenGL Context Version 5.0 core profile
Missing GL version
terminate called after throwing an instance of 'std::runtime_error'
what():  Failed to initialize GLEW.
已放弃 (核心已转储)
Is it because the opencl I installed is version 1.2? But I haven't found the version 3.3 above, can you share your opencl installation download link?
Number of platforms                               1
Platform Name                                   Intel(R) OpenCL
Platform Vendor                                 Intel(R) Corporation
Platform Version                                OpenCL 1.2 LINUX
Platform Profile                                FULL_PROFILE
......
what is wrong?hope for your help!thanks

The library does not require OpenCL, just OpenGL.
It seems your system has not 3D acceleration.

@Eman7C7 Hey there. I am trying to run it on a virtual machine, and I got error as this:
Unable to handle package.xml format version '3'
I tried with sudo apt-get update && sudo apt-get install --only-upgrade python-catkin-pkg, but it is still not working... do you have any idea? Thanks!

Hi  @Eman7C7,
I have tried many times in google colab with proper packages. I have tried with Ubuntu 16.04 and its proper ROS. Still I get this error: If you give me a bit guidance or comment, it would be highly appreciated:
root@jnajafirad:~/catkin_ws/src# catkin init
Catkin workspace /root/catkin_ws is already initialized. No action taken.
Profile:                     default
Extending:                   None
Workspace:                   /root/catkin_ws
Build Space:        [exists] /root/catkin_ws/build
Devel Space:        [exists] /root/catkin_ws/devel
Install Space:      [unused] /root/catkin_ws/install
Log Space:          [exists] /root/catkin_ws/logs
Source Space:       [exists] /root/catkin_ws/src
DESTDIR:            [unused] None
Devel Space Layout:          linked
Install Space Layout:        None
Additional CMake Args:       None
Additional Make Args:        None
Additional catkin Make Args: None
Internal Make Job Server:    True
Cache Job Environments:      False
Buildlisted Packages:        None
Skiplisted Packages:         None

WARNING: Your workspace is not extending any other
result space, but it is set to use a linked devel
space layout. This requires the catkin CMake
package in your source space in order to be built.

Hi @Eman7C7
I have just posted now!


Tool should return non-zero exit code if any tests were failed

Currently open-rpc-test-coverage returns zero even if tests were failed, which makes it hard to use it in automated environments
How to reproduce
Grab any example of schema and server with some failing test
open-rpc-test-coverage -s ./openrpc.json --transport=http --reporter=console
if [[ $? -eq 0 ]]; then echo "Should be non-zero"; fi

:tada: This issue has been resolved in version 1.0.7 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Karma Gate Crash

When I go through the karma gate between Shaded Citadel and Shoreline (entering from Shoreline) (Survivor's campaign) I crash. I don't know if this is a Survivor-only bug or just for that karma gate (this is the first ive gone through after downloading the mod) but im sad please send help

Well, you need to let it do its thing (see FAQ question 3).


Random loss/corruption of data when reading (errno -10004)

So I am not very experienced in working with NOR Flash memory or file systems so bear with me. I have somehow managed to create a 1MB spiffs partition on my NOR Flash chip with the following configuration:
cfg.phys_size = 1 * 1024*1024;              // Partition size       : 1MB
cfg.phys_addr = 0x50800000;                 // Partition location   : 0x50800000
cfg.phys_erase_block = 256 * 1024;          // Erase Block Size     : 256kB
cfg.log_block_size = 256 * 1024;            // Block Size           : 256kB
cfg.log_page_size = LOG_PAGE_SIZE;          // Page Size            : 256B

typedef u16_t spiffs_block_ix;
typedef u16_t spiffs_page_ix;
typedef u16_t spiffs_obj_id;
typedef u16_t spiffs_span_ix;

With this I am able to create small files and read them back however my implementation requires the ability to write ~50kB files. Writing these files gives me no errors however when I read the contents of memory there are missing file headers and missing/corrupt data. When this occurs the read function will typically give the error -10004. This occurs very randomly so it has been difficult to figure out exactly what's happening.
I'm almost certain that it's not a driver error because I was able to write a 50kB string to the flash and read it back. However I do think that it has something to do with my configuration because when I change spiffs_page_ix to 32 bit, writing works perfectly but when I try to open the file I get the error -10072 which correlates to SPIFFS_VIS_END. If more info is needed just let me know.

Upon further debugging I have noticed that the files are intact immediately after writing. However when i execute SPIFFS_read(), when I check the contents of the memory through the debugger, in random locations there will be missing/corrupted data. There is typically a series of 0x00,  0x55 (0b01010101) or 0xaa (0b10101010) bytes where the original data was. Once again I tested this only using driver operations and no corruption occurred so I don't think it's my drivers.

Ok my bad I realized it was a problem with the cache. I disabled caching during reads and the file system works perfectly. Apparently I'm not flushing the cache correctly so if anyone has any advice on how to do so let me know.

This seems more like a memory corruption to me. Probably something, not being spiffs, is writing in your cache buffers. Oxaa and 0x55 feels like specific patterns to me, could this give you a clue of what it could be?
You can try moving the cache buffers in memory or assigning the double amount of cache memory just to test.

@boreycutts , What is the solution? How flush the cache properly? This is important for the developer community.

@fvpalha So I'm using spiffs on top of the MQX RTOS which has its own function for flushing the cache DCACHE_FLUSH(). I call that function after every NOR flash read and so far there hasn't been any more data corruption.


GPS jumps to „home“ every few minutes - car is not moving

Well, the picture says it all.
I‘m in my „Basketball“ zone, car is parked, not moving for hours.
GPS location jumps to „home“ again and again while everything is right in the audi app (never jumps around there).
What the heck? Can anybody imagine a reason? I use this sensor alot, would be great.

can you provide debug logs?

can you provide debug logs?

I got only this. Or is there another way to get more data? How?
`Logger: homeassistant.components.device_tracker
Quelle: helpers/entity_platform.py:735
Integration: Geräte-Tracker (Dokumentation, Probleme)
Erstmals aufgetreten: 19:39:51 (3 Vorkommnisse)
Zuletzt protokolliert: 22:51:41
Platform audiconnect does not generate unique IDs. ID Audi A4 Avant Position already exists - ignoring device_tracker.audi_a4_avant_position`

@Kolbi my device tracker has been solid since switching to your new device IDs. Could your PR be a fix for the tracker issues given the reference to unique IDs?

@coreywillwhat might be, my device tracker is also working properly.

@moritzmaier84 it shouldn't be a recent update, nothing has changed for trackers recently, although the Audi servers have been acting strange the last few days for Audi connect even when the Audi app itself seems relatively stable. From my recent review, the endpoints appear to be slightly different.
Can you enable debug logging from the integration screen for Audi connect, let it run to get a few switches to different locations then turn off debug logging. You'll be prompted to download a file, which you can attach here for us to take a look if youd like us to.
Also, what is your polling interval set to? It looks like 5 minutes by the updates in your pic.

@coreywillwhat might be, my device tracker is also working properly.
Edit: We are still using the same unique_id even in my PR for example:

"unique_id":"Audi [...] Position"
But interesting why it tries to create it a second time....

Maybe my PR should also fix the unique_ids.... need to think about it.

I thought I saw we use model name somewhere as an ID in current state, which seems to be what's coming through in the logs provided. It's late here, can't look at the code. I might be misremembering.

@moritzmaier84 it shouldn't be a recent update, nothing has changed for trackers recently, although the Audi servers have been acting strange the last few days for Audi connect even when the Audi app itself seems relatively stable. From my recent review, the endpoints appear to be slightly different.
Can you enable debug logging from the integration screen for Audi connect, let it run to get a few switches to different locations then turn off debug logging. You'll be prompted to download a file, which you can attach here for us to take a look if youd like us to.
Also, what is your polling interval set to? It looks like 5 minutes by the updates in your pic.

Okay I'll try to do that.
My polling interval is 15mins, though. So that cannot be the reason.

@moritzmaier84 it shouldn't be a recent update, nothing has changed for trackers recently, although the Audi servers have been acting strange the last few days for Audi connect even when the Audi app itself seems relatively stable. From my recent review, the endpoints appear to be slightly different.
Can you enable debug logging from the integration screen for Audi connect, let it run to get a few switches to different locations then turn off debug logging. You'll be prompted to download a file, which you can attach here for us to take a look if youd like us to.
Also, what is your polling interval set to? It looks like 5 minutes by the updates in your pic.

Okay I'll try to do that.
My polling interval is 15mins, though. So that cannot be the reason.

Okay I'll try to do that. Today I am at home, though and the sensors keeps quite, now. I'll have to check if it starts again if I move the car the next time.
My polling interval is 15mins, though. So that cannot be the reason.

Thanks for checking, wanted to get the full picture for scan interval.

@moritzmaier84 it shouldn't be a recent update, nothing has changed for trackers recently, although the Audi servers have been acting strange the last few days for Audi connect even when the Audi app itself seems relatively stable. From my recent review, the endpoints appear to be slightly different.
Can you enable debug logging from the integration screen for Audi connect, let it run to get a few switches to different locations then turn off debug logging. You'll be prompted to download a file, which you can attach here for us to take a look if youd like us to.
Also, what is your polling interval set to? It looks like 5 minutes by the updates in your pic.

Okay I'll try to do that. Today I am at home, though and the sensor keeps quite, now. I'll have to check if it starts again if I move the car the next time.
My polling interval is 15mins, though. So that cannot be the reason.

Okay I'll try to do that. Today I am at home, though and the sensor keeps quite, now. I'll have to check if it starts again if I move the car the next time.

sounds good

I was getting this but it kept bouncing back and forth to a specific zone.
Now, on the latest version its not working at all, which happened a few days ago too, how I resolved both was loading an older version and then loading the latest version again.
I have changed a few of the device classes which will mess mine up again until I change them back.

Had the same issue 1-2 days ago but couldn't figure out until yet why. Reloading integration / restarting Home-Assistant helped to get it working again...

Platform audiconnect does not generate unique IDs. ID Audi A4 Avant Position already exists - ignoring device_tracker.audi_a4_avant_position

#354 more debugging options will come

Please try version >= 1.4.0 and enable debug mode if you encounter the issue and provide us the specific lines from the logfile.

Please try version >= 1.4.0 and enable debug mode if you encounter the issue and provide us the specific lines from the logfile.

I did not have it since a couple of days so I couldn't do it.
I mean... if it stays like this, it's kinda solved.
If it comes back again, I'll do the debug stuff.

Many of the GPS issues have been resolved with #381 #374 . Closing this issue since the original reporter mentioned this is no longer an issue. Please open an issue if you experience this or any other problems.

So ironic.. Today it came back and it is still going on.
I think it has something to do with zones because it's jumps to zones everytime and only zones I was in today.
It's more often than the 15 minutes again.
Hier ist my debug log:
home-assistant_audiconnect_2024-04-17T20-56-03.039Z.log

Interesting:

2024-04-17 22:55:04.110 DEBUG (MainThread) [custom_components.audiconnect.audi_connect_account] Starting update_vehicle_position for VIN: *************9780
2024-04-17 22:55:04.110 DEBUG (MainThread) [custom_components.audiconnect.audi_connect_account] Position support is disabled for VIN: *************9780. Exiting update process.

It seems you are using <v1.6.1 can you please upgrade to latest version as you have some 403 issues...

Interesting:

2024-04-17 22:55:04.110 DEBUG (MainThread) [custom_components.audiconnect.audi_connect_account] Starting update_vehicle_position for VIN: *************9780
2024-04-17 22:55:04.110 DEBUG (MainThread) [custom_components.audiconnect.audi_connect_account] Position support is disabled for VIN: *************9780. Exiting update process.

It seems you are using <v1.6.1 can you please upgrade to latest version as you have some 403 issues...

I had 1.6.0 and no 1.6.3
Strange, no update sign showed up before.
Okay... So now I will check again if it still happens?

Yes please. Although we had no changes in the position update since v.1.6.0 but we disable services with an 403 issue and maybe Audi servers are sensitive if we are trying to call multiple times a service which returns a 403 issue back....

Yes please. Although we had no changes in the position update since v.1.6.0 but we disable services with an 403 issue and maybe Audi servers are sensitive if we are trying to call multiple times a service which returns a 403 issue back....
HACS doesn't show immediately updates and currently we are creating a lot of new versions... will be better when we have a stable version running.

Thx, I'll let you know if it comes back again.

It's still happening. Debuging right now. But we need to reopen the issue again...
File is coming up soon.

@Kolbi @coreywillwhat
1.6.3
Here is the debug file of a short period. It is still going like this every few minutes, jumping from "home" to the zone I was before and back and again.
So annoying :(
home-assistant_audiconnect_2024-04-19T16-15-02.512Z.log

Still sometimes...


added some almost dead buddies in collection

What did you mean by "Igtm" @trishan9 ?

What did you mean by "Igtm" @trishan9 ?

It is an acronym for "Looks Good to Me" @RRMovies


disable git team create button on mobile

@keybase/react-hackers

:no_entry: Error rendering the commits d2f79b8581ff...4b5eb0ce7285 on linux. :mag_right: 21 errored, 1 new, 2 removed

Error in d2f79b8581ff: Chat_Input-Normal-ERROR

Error in 4b5eb0ce7285: Chat_Input-Normal-ERROR

Error in d2f79b8581ff: Chat_Inbox-You_Rekey_Selected-ERROR

Error in 4b5eb0ce7285: Chat_Inbox-You_Rekey_Selected-ERROR

Error in d2f79b8581ff: Chat_Inbox-You_Rekey-ERROR

Error in 4b5eb0ce7285: Chat_Inbox-You_Rekey-ERROR

Error in d2f79b8581ff: Chat_Inbox-Selected_Normal-ERROR

Error in 4b5eb0ce7285: Chat_Inbox-Selected_Normal-ERROR (view)
Error in d2f79b8581ff: Chat_Inbox-Selected_Muted-ERROR (view)
Error in 4b5eb0ce7285: Chat_Inbox-Selected_Muted-ERROR (view)
Error in d2f79b8581ff: Chat_Inbox-Part_Rekey_Selected-ERROR (view)
Error in 4b5eb0ce7285: Chat_Inbox-Part_Rekey_Selected-ERROR (view)
Error in d2f79b8581ff: Chat_Inbox-Part_Rekey-ERROR (view)
Error in 4b5eb0ce7285: Chat_Inbox-Part_Rekey-ERROR (view)
Error in d2f79b8581ff: Chat_Inbox-Normal-ERROR (view)
Error in 4b5eb0ce7285: Chat_Inbox-Normal-ERROR (view)
Error in d2f79b8581ff: Chat_Inbox-Long_Top-ERROR (view)
Error in 4b5eb0ce7285: Chat_Inbox-Long_Top-ERROR (view)
Error in d2f79b8581ff: Chat_Inbox-Long_Bottom-ERROR (view)
Error in 4b5eb0ce7285: Chat_Inbox-Long_Bottom-ERROR (view)
Error in d2f79b8581ff: Chat_Inbox-Empty-ERROR (view)
Added: Chat_Inbox-Empty (view)
Removed: Chat_Banner_Info-Info (view original)
Removed: Chat_Banner_Error-Error (view original)


Failed to verify bitcode in LocalNotificationsPlugin.framework/LocalNotificationsPlugin:

Failed to verify bitcode in LocalNotificationsPlugin.framework/LocalNotificationsPlugin:
error: Bundle only contains bitcode-marker /var/folders/4d/zcq9x1910f9_7vk9_v8q6xp8jqxkx7/T/IDEDistributionOptionThinning.~~~119PP8/Payload/cyclist.app/Frameworks/LocalNotificationsPlugin.framework/LocalNotificationsPlugin (armv7)
My environment:
✔ Your ANDROID_HOME environment variable is set and points to correct directory.
✔ Your adb from the Android SDK is correctly installed.
✔ The Android SDK is installed.
✔ A compatible Android SDK for compilation is found.
✔ Javac is installed and is configured properly.
✔ The Java Development Kit (JDK) is installed and is configured properly.
✔ Xcode is installed and is configured properly.
✔ xcodeproj is installed and is configured properly.
✔ CocoaPods are installed.
✔ CocoaPods update is not required.
✔ CocoaPods are configured properly.
✔ Your current CocoaPods version is newer than 1.0.0.
✔ Python installed and configured correctly.
✔ The Python 'six' package is found.
✔ Xcode version 10.2.0 satisfies minimum required version 9.
✔ Getting NativeScript components versions information...
✔ Component nativescript has 5.3.2 version and is up to date.
✔ Component tns-core-modules has 5.3.1 version and is up to date.
✔ Component tns-android has 5.3.1 version and is up to date.
✔ Component tns-ios has 5.3.1 version and is up to date.

@AquilesOliveira I have the same problem. May I ask how you solved this?


[Feat] creating a challenge page

Description
currently there is no challenge page, so nothing open after clicking on challenge field.
@beRajeevKumar can u please assign me this under necessary labels?
Screenshots
adding it here and linking to the navbar.

Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I'm a GSSoC'24-Extd contributor
[X] I'm a Hacktoberfest'24 contributor
[X] I am willing to work on this issue (optional)

@beRajeevKumar  please review this issue and assign or else kindly close it issue if u dont find it worthful.


Need your Nostr pubkey

Hey, I shared your project on Nostr, and it was well received. Very cool project. I’ve indirectly received some sats (Nostr ZAPs) I’d like to forward onto you. Can you share with me a lightning address?
Here is my Nostr for DM if preferred.
npub1ktw5qzt7f5ztrft0kwm9lsw34tef9xknplvy936ddzuepp6yf9dsjrmrvj

Hi Blake, thanks! My nostr pubkey is npub1yxp7j36cfqws7yj0hkfu2mx25308u4zua6ud22zglxp98ayhh96s8c399s


Feature Request: Support local relative img source in JSX

current
must declarative import from JS
import Logo from<EMAIL_ADDRESS>
const App = defineComponent({
  setup() {
    return () => ()
  },
})

wanted
directly import local img by absolute path string
const App = defineComponent({
  setup() {
    return () => ()
  },
})

This is the charge of packaging tools.


[MODFISTO-298] Support empty encumbrancesRollover array

Purpose
MODFISTO-298 - Unable to access adjustment ledger
Approach

The rollover script is changed so that when there is no matching order type for the rollover, the encumbrance gets the value 0.0.
The order rollover is skipped entirely when no order type has been selected (a success is reported - we don't have a "skipped" status).
New script called replace_null_amounts_by_zero.sql that can be executed manually. Budget encumbered amounts should still be checked and fixed manually afterwards.

TODOS and Open Questions
MODFISTO-299 - Order rollover errors are not reported
Pre-Merge Checklist
Before merging this PR, please go through the following list and take appropriate actions.

Does this PR meet or exceed the expected quality standards?

[ ] Code coverage on new code is 80% or greater
[ ] Duplications on new code is 3% or less
[ ] There are no major code smells or security issues

Does this introduce breaking changes?

[ ] Were any API paths or methods changed, added or removed?
[ ] Were there any schema changes?
[ ] Did any of the interface versions change?
[ ] Were permissions changed, added, or removed?
[ ] Are there new interface dependencies?
[ ] There are no breaking changes in this PR.

If there are breaking changes, please STOP and consider the following:

What other modules will these changes impact?
Do JIRAs exist to update the impacted modules?

[ ] If not, please create them
[ ] Do they contain the appropriate level of detail?  Which endpoints/schemas changed, etc.
[ ] Do they have all they appropriate links to blocked/related issues?

Are the JIRAs under active development?

[ ] If not, contact the project's PO and make sure they're aware of the urgency.

Do PRs exist for these changes?

[ ] If so, have they been approved?

Ideally all of the PRs involved in breaking changes would be merged in the same day to avoid breaking the folio-testing environment.  Communication is paramount if that is to be achieved, especially as the number of intermodule and inter-team dependencies increase.
While it's helpful for reviewers to help identify potential problems, ensuring that it's safe to merge is ultimately the responsibility of the PR assignee.

failing tests were failing before


Update API Docs Workflow

The API docs workflow is now working so we can roll this out

Codecov Report

Merging #329 (31c76b1) into main (521b6b4) will not change coverage.
The diff coverage is n/a.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #329   +/-   ##
=======================================
  Coverage   41.54%   41.54%
=======================================
  Files         115      115
  Lines        9436     9436
=======================================
  Hits         3920     3920
  Misses       5516     5516

Flag
Coverage Δ

unittests
41.54% <ø> (ø)

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


Avoid misleading error message by return 0 for numbaskets if interpretation is None

With reference to https://github.com/scikit-hep/uproot/issues/419#issuecomment-565809752 this is a tiny patch which avoids a misleading error message when trying to call e.g. .uncompressedbytes() on a branch with no data (i.e. interpretation is None).
Not sure if you are happy with this, to me it seemed that returning 0 in the numbaskets @property should be enough to also avoid further confusions, if I understood correctly.
Anyways, at least we now have a todo entry, as you wanted @jpivarski 😉

Wow, thank you! This is not the solution I was thinking of (I was thinking of just preventing the error message), but this might be a better choice.
I'd like to merge this on Monday to give myself some time to think of possible consequences of claiming that a branch has zero baskets. (Some branches have interpretation == None because we don't know what its interpretation should be, not because it has no data.)

I see! You’re the architect ; )

No, we can't do this. If there's a new type we're unfamiliar with, the interpretation will be None and we'll want to investigate that new type by reading the array with interpretation=uproot.debug. However, that wouldn't work with this PR because the interpretation attached to the branch would still be None, the array method would think there's no data, and we'd get no data back. Accepting this PR would make it difficult to debug new types.
This would also happen with another potential solution (something I was thinking about after seeing yours) in which we set the numentries to zero, rather than the numbaskets.
The only way to do this correctly is to put the check immediately before the error message:
https://github.com/scikit-hep/uproot/blob/6e89ce6556fe204ee4cc9e0c0c06f6d78f97503b/uproot/tree.py#L1745-L1746
changed to
else if self.interpretation is not None:

Yes, actually that was my first approach, however I encountered more errors since self._recoveredbaskets (line 993) is then None and len() fails.
~/Dev/uproot/uproot/tree.py in numbaskets(self)
    990         if self._recoveredbaskets is None:
    991             self._tryrecover()
--> 992         return self._numgoodbaskets + len(self._recoveredbaskets)
    993
    994     def _cachekey(self, interpretation, entrystart, entrystop):

TypeError: object of type 'NoneType' has no len()

I just pushed your change request.
I could not manage to create a small enough file yet to reproduce, but I'll try. I however assume that we already have some samples in the repo, I'll check them first.

Oh, sorry—in that case where self.interpretation is None, _recoveredbaskets should return [] (empty list).

Makes sense 😉

Alright:
In [1]: import uproot

In [2]: f = uproot.open("KM3NeT_00000044_00006772_n10.root")

In [3]: f[b'KM3NET_TIMESLICE_L0;2'][b'km3net_timeslice_L0'].uncompressedbytes()
Out[3]: 0

I would however would like to cover this with a test...

I can wait. There are a few sample files in tests/samples/*.root that require recovery, and many of them are small. They're mentioned in tests/test_issues.py with issue numbers that correspond to GitHub issues. Searching GitHub for "recover" might turn up some useful examples.
They only didn't trigger an error before because we never tried to access one of the structure branches, one of the branches that should have interpretation == None.

I've been deploying new releases of awkward, uproot-methods, and uproot, and in some cases, finding a backlog of bug-fixes that have been waiting a while for a new release (uproot-methods had about 5 of them). In uproot, Oksana's addition of ZSTD as a decompression algorithm is a big enough change to increase the middle digit of the version number. I just deployed new versions of awkward and uproot-methods, and I'd like to include your fix of this error message in the uproot deployment.
If it's likely to be ready today, I'll wait—otherwise, I'll release this now and do a bug-fix release later when you're done. Do you know if I should wait or just deploy now? Thanks!

Hey Jim! Sorry I had a busy day, I can follow up tomorrow, but feel free to merge if you are happy with the change and I add the tests the next day. I don't want to block the release pipeline...

OK, test is there. I have however two failing tests, which also fail on upstream/master. I'll follow up with an issue.

I'm not sure what's happening in your local tests, but it looks fine and passes tests.
Event.root is a large file that we test remotely with HTTP.


⚠ Samsung has degraded performance

In fcb0567, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2499 ms

Resolved: Samsung performance has improved in 7b50007.


Renaming Input Actions

This is a quite minor issue, but it could be useful to be able to rename the Input Actions in the GUI. With the current GUI you have to remove the action, create a new one with the new name, and assign all the keys again. As a workaround it is probably quicker and easier to rename them in the engine.cfg file.

Duplicate of #517.


How can i keep the column on the left panel always expanded?

What feature or improvement do you think would benefit Files?
After this update, the column here keep hided and this is just ridiculous, i wish this  can keep always expanded like the previous versions

Requirements

This proposal will accomplish X
This proposal will accomplish Y
This proposal will accomplish Z

Files Version
<IP_ADDRESS>
Windows Version
10.0.22631.2506
Comments
No response

You can expand the sidebar by resizing the column or alternatively by double clicking the border.

You can expand the sidebar by resizing the column or alternatively, by double clicking the border.

Yeah, i've noticed it now, my mistake srry


Any way to make overlapping widgets gain interaction when interactivity is non-overlapping?

I am using ScrollArea with some buttons inside of the scroll viewport that need to capture click interactivity. However when those are clicked the dragging (scrolling) no longer works. Is there anyway to cascade the dragging interactivity while take the clicking interactivity for the buttons?

Related: #980

@emilk Would greatly appreciate your comments here as I am trying to solve this issue for my use-case. At the moment I could not even come up with a user side workaround and at this point I am messing around with the egui code base.
After much investigation I understand that with the current implementation only one Rect which was created last through the ctx.interact() function ends up receiving the interactivity. Specifically the code HERE causes hovered to become false and therefore cancels the interaction processing of rects that were generated earlier in the code. Furthermore, it seems that in general there is only one memory.interaction structure per Context which kind of makes it impossible to interact with multiple things at the same time if they were somehow overlapped. I had some marginal success with tricking ctx.interact() using the following code, although that in itself caused a bunch of bugs.
let id = ui.make_persistent_id("ae35d739");
ui.with_layer_id(LayerId { order: Order::Background, id }, |ui| { /* code */ })

Luckily the Interaction component separates between captured click_id and drag_id CODE. Thus, when employing the trick above for two overlapping rects where one only cares about drag and the other about clicks I was able to "sort of" make overlapping widgets work. But not really adequately well. Additionally, in my current implementation I am working only with clickable rects inside of a scroll area however I do have a requirement for adding a drag-able component inside of the scroll area as well, which will introduce an even further complexity.
Currently main outstanding questions:

If this mechanism was to be modified, how should it be done?
On a mobile device (I am working with Android), what would it even mean in terms of interactivity, to have a drag-able widget inside of a scroll area which is drag-able in itself?


fix: Reference Node and MutationObserver off of the window object

fix: Reference Node and MutationObserver off of the window object rather than globally
You have to handle shims yourself if not using jest without this
What:
Changes references to Node and MutationObserver to use window rather than globally.
Why:
The polyfills/shims do not work in a non-jest environment
How:
Node -> window.Node
MutationObserver -> window.MutationObserver
Checklist:

[ ] Documentation N/A
[ ] Tests N/A
[x] Ready to be merged
[ ] Added myself to contributors table

Would you like to add yourself to the contributors table?

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

Sure! I felt awkward doing that with such a small change. Should I make another commit on this branch? or create a new one?

I recommend creating a new branch for every PR.
You may also appreciate this: http://makeapullrequest.com/ :)

I definitely appreciate that :)


[Bug] java不能通过httpclient提交数据到doris

Search before asking

[X] I had searched in the issues and found no similar issues.

Version
doris-2.0.0
What's Wrong?
Reason: JSON data is array-object, strip_outer_array must be TRUE.. src line [[{"time":1691028275256,"code":"kkk","name":“test”,"create_time":"2023-08-08T06:21:03"}]];
What You Expected?
success
How to Reproduce?
HttpPut put = new HttpPut(this.loadUrl);
put.setHeader(HttpHeaders.EXPECT, "100-continue");
put.setHeader(HttpHeaders.AUTHORIZATION, this.authorization);
put.setHeader(HttpHeaders.CONTENT_TYPE, "application/json; charset=UTF-8");
put.setHeader("format", "json");
put.setHeader("strip_outer_array", "true");
        HttpEntity entity = new StringEntity(content, ContentType.APPLICATION_JSON);
        put.setEntity(entity);

        try (CloseableHttpResponse response = client.execute(put)) {

Anything Else?
No response
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

It looks like your data has an extra layer of square brackets.


openwebui censorship?

Installation Method
docker compose
Environment

Open WebUI Version: [e.g., v0.3.11]
Ollama (if applicable): [e.g., v0.2.0, v0.1.32-rc1]

both installed from the docker compose:
commit 96c865404d36637eafadb6d2dd2365c85d452648
Author: Timothy Jaeryang Baek<EMAIL_ADDRESS>Date:   Sat Nov 9 18:01:23 2024 -0800

    refac: disable openapi.json

Operating System: [e.g., Windows 10, macOS Big Sur, Ubuntu 20.04]

cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.5 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.5 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

Browser (if applicable): [e.g., Chrome 100.0, Firefox 98.0]

Version 130.0.6723.116 (Official Build) Arch Linux (64-bit)
Confirmation:

[x] I have read and followed all the instructions provided in the README.md.
[x] I am on the latest version of both Open WebUI and Ollama.

I'll not include the logs, as that would expose my users and what they asked, you can test this yourself with whatever offensive prompt that you can dream up.
Expected Behavior:
I expect openwebui to pass my users prompt to the model without censorship.
Actual Behavior:
openwebui censors my users prompt, whereas I can run the model directly with ollama run model and it answers my prompt truthfully.
Description
Censorship in openwebui
Bug Summary:
OpenWebui appears to be censoring input.
Reproduction Details
Steps to Reproduce:
find a prompt offensive enough to get rejected using an uncensored model like: wizard-vicuna-uncensored
then run the same prompt using  ollama run wizard-vicuna-uncensored
Logs and Screenshots
Again, the prompts and screenshots themselves would obviously be inappropriate for github.  But I maintain that hosting a private instance of openwebui, and running uncensored LLMs, that openwebui should not be interjecting itself, the LLM should speak for itself.

There's no censorship.


Log allocator mark-compact

Hi,
Very nice code! Just wondering where you implement the log allocator mark-compact scheme, probably running in another thread somehow. But I could find the exact code location. Is it also in void FarMemManager::gc_cache(), where you do mark-evacuate for cold entries?
Here is the text quoted from the paper: near the end of sec5.2

To free an object, the runtime marks the object as free. AIFM leverages a mark- compact evacuator to achieve a low memory fragmentation ratio, as shown with other copying log allocators [63].

Best,
Yang

Hi Yang,
Thanks for your interest. Marking happens here. Compacting is part of the cold data write-back procedure which invokes the swap-out method on all marked objects; if it finds out that the object is hot, it will copy the object into a new location (i.e., compacting) rather than writing back the data to the remote.
Thanks,
Zain

Hi Yang,
Thanks for your interest. Marking happens here. Compacting is part of the cold data write-back procedure which invokes the swap-out method on all marked objects; if it finds out that the object is hot, it will copy the object into a new location (i.e., compacting) rather than writing back the data to the remote.
Thanks,
Zain

Hi Zain,
Thanks for the quick reply! So it sounds that log allocator compaction is mixed with GC evacuation.
I also notice that in the log selection phase,

The evacuator picks logs in FIFO order from the global non-temporal used list, and then picks from the global temporal used list if necessary, to prioritize non-temporal objects.
Does it mean the log allocation compaction also has such prioritization?

Best,
Yang

Hi Zain,
Thanks for the quick reply! So it sounds that log allocator compaction is mixed with GC evacuation.
I also notice that in the log selection phase,

The evacuator picks logs in FIFO order from the global non-temporal used list, and then picks from the global temporal used list if necessary, to prioritize non-temporal objects.
Does it mean the log allocation compaction also has such prioritization?

Best,
Yang

Yes, since it compacts selected logs.

Yes, since it compacts selected logs.

Cool. My puzzle resolved. Thanks!

Cool. My puzzle resolved. Thanks!


Undefined symbol: EC2MountPoint - possible issue?

The simple EC2 Example fails.  I get the error Undefined symbol: EC2MountPoint for the below code.
CloudFormation {
  Description 'Example Description'

  EC2_Instance('ExampleInstance') {
    ImageId 'ami-767a391e'
    Type 't2.small'
    AvailabilityZone 'string'
    Volumes [
      EC2MountPoint {
        VolumeId 'test string'
        Device '/dev/sde'
      }
    ]
  }
}

The syntax appears to be the same for BlockDeviceMappings as seen below and I get no errors.  Is there a bug for EC2MountPoint or am I doing something wrong?  Thanks.
  Instance('Instance Example') {
    ImageId 'ami-767a391e'
    Type 't2.micro'
    AvailabilityZone Ref('availabilityZone')
    UserData FnBase64(FnJoin('',
                             ['mke2fs -t ext4 /dev/xvde']))

    BlockDeviceMappings [
      BlockDeviceMapping {
        DeviceName '/dev/sde'
        Ebs 'test string'
      }
    ]
  }

@ChrisPetr0 did you sort out the issue you were having?

Hey @stevenjack , I believe the above code will still cause the issue.  My colleague got this to work, but I swear I was trying this all day Friday and getting a different error:
    EC2_Instance('TestString') {
    ImageId 'ami-767a391e'
    Type 't2.small'
    AvailabilityZone Ref('availabilityZone')
    UserData FnBase64(FnJoin('',
                             ['mke2fs -t ext4 /dev/xvde']))
    DependsOn Ref('TestString')
    Volumes [
      {
        VolumeId: Ref('TestString'),
        Device: '/dev/sde'
      }
    ]
  }

I closed the issue since we were able to get the volume attachment to work.  Thanks again.
Chris


Can't generate script

Can't generate the script at 'Step 2: Customize and generate the script (2 mins)'
'Copy the code' button is inactive.

I also have the same problem when I insert a subdomain.


Scheduled Rollup

I setup a scheduled rollup yesterday but it hasn't updated any records. How can I edit the schedule?
Thank you :)

The platform oddly does not allow this see here and vote up the idea. You will have to delete the scheduled job entry and add a new one.
As to how rollups get processed. As child records are modified they get 'queued' in an object called 'Lookup Rollup Summary Schedule Items' which should show as a releated list item at the bottom of your rollup definition. If you don't see entries in here then the schedule job will do nothing.
Entries are added here if the rollup field on the child record is changed or any of the fields listed in 'Relationship Criteria Fields' are edited. Of course the other reason could be its failing for some reason that is not captured in the 'Lookup Rollup Summary Logs' object. Check under Setup menu for the Apex Jobs page for this.


Add a compiler

This pull request adds a new (runnable) module, htm.compile, that can be used to partially precompile the tagged htm templates.
The code generation part depends on the fabulous astor package, and the feature has to be enabled on install. You can try this by running the following command on the repository root:
$ pip3 install .[compile]

After this the compiler can be used:
$ python3 -m htm.compile < somefile.py

Let's assume somefile.py contains the following piece of code:
from htm import htm

@htm
def html(tag, props, children):
    return tag, props, children

html("""
  <div foo={1+2} />
""")

The output after compilation would be something like this:
from htm import htm

@htm
def html(tag, props, children):
    return tag, props, children

html._eval((('OPEN', False, 'div'), ('PROP_SINGLE', 'foo', True, 0), (
    'CLOSE',)), [(1 + 2)])

Interesting, thanks for looking at it while traveling, and after hours. Is the idea that you could later spot the expressions and use Transcrypt on just those parts?

The idea - correct me if I'm completely off-base - is to run the code (that uses htm.py) through htm.compile before feeding it to Transcrypt.
The compiled code should be more palatable for Transcrypt: htm.compile removes the code's runtime dependency on tagged's stack frame shenanigans (as well as the dependency on tokenize etc.). Essentially compiling away (all? most of?) the parts that Transcrypt doesn't support out of the box.

Ah, got it, makes sense. Should I give the PR a look?

Sure, but on further thought I don't think this is enough to make the thing work on Transcrypt as-is - the htm module still loads tagged that loads functools etc.
I guess it could be solved by loading those modules lazily only when they're really needed.
However, do you think this kind of compile-first concept would work for you?

I forgot to reply to your last question above...yes, I think the compile-first makes sense....if you look at the parcel/webpack/babel tool chain, that have plugins which handle e.g. import of .scss everything is considered multi-step.

I'll close this PR, as the idea has evolved somewhat (see this gist) and would probably be better as a part of tagged.


[ru] Some lists have no space after commas.

https://ru.openfoodfacts.org/product/40084701/kinder-chocolate-ferrero

This issue has been solved in PR #468.


[CI] Release pipeline test plan 1

This is for testing scenario - user from service team and modify src/index.json only

This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

If this PR is for a new extension or change to an existing extension, use the following to try out the changes in this PR:
docker run -it microsoft/azure-cli:latest
export EXT=<NAME>
pip install --upgrade --target ~/.azure/cliextensions/$EXT "git+https://github.com/haroldrandom/azure-cli-extensions.git@release-pipeline-test-plan-1#subdirectory=src/$EXT&egg=$EXT"


Issue with the .NET Microsoft Plugin required to use the app.

When I went to reinstall it it gives a prompt to download .NET from Microsoft for it to work, It used to work fine but it appears to be broken.

Take a look at https://github.com/shaked6540/YoutubePlaylistDownloader/issues/166


Galley rejects Authentication Policies with multiple JWT sections with same issuer

Describe the feature request
Galley has configuration validation which rejects AuthenticationPolicies with multiple JWT sections and if the same issuer is used in more than once JWT block. This is the relevant code.
This is a legitimate use case where you might have two kinds of JWT token issued by the issuer that have different audiences and trigger rules. Example:
apiVersion: authentication.istio.io/v1alpha1
kind: Policy
metadata:
  name: my-jwt
  namespace: istio-system
spec:
  targets:
  - name: istio-ingressgateway
  peers:
  - mtls:
  origins:
  - jwt:
      issuer: "https://securetoken.google.com"
      audiences:
      - "productpage"
      jwksUri: "https://www.googleapis.com/oauth2/v1/certs"
      trigger_rules:
      - included_paths:
        - exact: /productpage
  - jwt:
      issuer: "https://securetoken.google.com"
      audiences:
      - "reviews"
      jwksUri: "https://www.googleapis.com/oauth2/v1/certs"
      trigger_rules:
      - includded_paths:
        - exact: /reviews
  principalBinding: USE_ORIGIN

Describe alternatives you've considered
Adding multiple audiences in the same block doesn't work in this scenario as the trigger rules are different.
Affected product area (please put an X in all that apply)
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[x] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Additional context
Conversation from slack
From a preliminary code inspection this appears to be an implementation restriction and not an architectural/Envoy one.

cc @yangminzhu

@nrjpoddar As discussed in today's security WG meeting, alternatively, you can use authorization policy to express the condition in your use case. With the current authorization policy, you can write the following:
apiVersion: "rbac.istio.io/v1alpha1"
kind: ServiceRole
metadata:
  name: example
  namespace: istio-system
spec:
  rules:
  - services: ["istio-ingressgateway.istio-system.svc.cluster.local"]
     paths: ["/productpage”]
---
apiVersion: "rbac.istio.io/v1alpha1"
kind: ServiceRoleBinding
metadata:
  name: example
  namespace: istio-system
spec:
  subjects:
  - properties:
      request.auth.claims[aud]: productpage
  roleRef:
    kind: ServiceRole
    name: example1

You can write the same RBAC policy for "/review" path.
When we move to new AuthorizationPolicy design, the syntax will be simpler:
apiVersion: security.istio.io/v1beta
kind: AuthorizationPolicy
metadata:
   name: example
   namespace: istio-system
spec:
  selector:
    matchLabels:
      istio: ingressgateway
  rules:
  - to:
     - operation:
          paths: ["/productpage"]
     when:
     - key: request.auth.claims[aud]
        values: ["/productpage"]
  - to:
     - operation:
          paths: ["/review"]
    when:
    - key: request.auth.claims[aud]
       values: ["/review"]

Authentication policy will be very simple, which only includes one issuer.
apiVersion: authentication.istio.io/v1alpha1
kind: Policy
metadata:
  name: my-jwt
  namespace: istio-system
spec:
  targets:
  - name: istio-ingressgateway
  peers:
  - mtls:
  origins:
  - jwt:
      issuer: "https://securetoken.google.com"
      audiences:
      - "productpage"
      - "review"
      jwksUri: "https://www.googleapis.com/oauth2/v1/certs"
     principalBinding: USE_ORIGIN

Thanks @liminw. This is very helpful and gives us a way forward for now. However, we should discuss on the issue the long-term strategy and if we are going to keep audiences in JWT but remove trigger_rules and use Authorization APIs for those.

@nrjpoddar Glad to hear that it solves your current issue.
The new authorization API is approved and we plan to ship it in the coming releases. We are still actively discussing the new authentication policy spec. We appreciate any feedback and comments.
IMO, I prefer keeping authentication policy simple, e.g., the "jwt" section should only include the issuer definition (and allowed audiences for the issuer). Adding logic like "allowing audience A for path X" itself may sound ok. But going that route, you can say "allowing audience A for path X for 'GET' method only", or "not allowing audience A for paths X/Y/Z if the method is 'POST'/'PUT'/'DELETE'". This could make the API interface extremely complicated. And we basically duplicate a lot of functionality that is already handled in authorization policy.

@liminw I agree. If we can remove trigger rules for JWT and add documentation with examples for users to start consuming Authz policies for path based access control we can make our APIs easy.
I would however still keep list of audiences in AuthenticationPolicies in the new API. Is there a document for the new AuthenticationPolicies spec?

@nrjpoddar Thanks for the comments! Yes. I agree that the 'audiences' field need to be kept. We need to update the documentation once we reach full agreement on the direction. There has been discussion on new authentication policy, but I don't think there is an agreed-on proposal yet.


Large error after ciphertext multiplication for deep circuits (CKKS)

While attempting to evaluate a deep CKKS circuit (depth ~50), I consistently observe a huge error blowup after one of the ctx-ctx multiplications. Which multiplication causes this is inconsistent, but I am never able to correctly evaluate the circuit. All results before this error blowup are correct, and I was able to evaluate similar circuits with no issues before.
I serialized the (correct) ciphertext right before the blowup and loaded it to get a minimal example that reproduces the issue. The code simply loads the ciphertext and the keys, invokes Evaluator::square, and shows the incorrect results on first 3 slots, for inputs close to 1 in absolute value. The output of the MWE:
N=131072, init_scale=1.0995e+12 (2^40), depth=53, moduli=60,40,...,40,60

x: -0.91311 -0.98203 0.98732
coeff_modulus_size = 13, scale = 1.0995e+12

x^2: -682.36 714.21 -1973.5
coeff_modulus_size = 13, scale = 1.2089e+24

x^2 (after relin): -682.36 714.21 -1973.5
coeff_modulus_size = 13, scale = 1.2089e+24

x^2 (after relin+rescale): -655.23 783.86 -2008.7
coeff_modulus_size = 12, scale = 1.0996e+12

x^2 (after relin+rescale+stabilize): -645.06 724.97 -1964.6
coeff_modulus_size = 12, scale = 1.0995e+12

The error is often times even larger (the outputs can be ~1e10 for these same inputs). Here is the complete MWE code:
#include <vector>
#include <fstream>
#include <iomanip>
#include "seal/seal.h"

void decrypt_decode_print(seal::Decryptor& decryptor, seal::CKKSEncoder& encoder, const seal::Ciphertext& ctx) {
    seal::Plaintext ptx;
    decryptor.decrypt(ctx, ptx);
    std::vector<double> dec;
    encoder.decode(ptx, dec);
    std::cout << dec[0] << " " << dec[1] << " " << dec[2] << std::endl;
    std::cout << "coeff_modulus_size = " << ctx.coeff_modulus_size() << ", scale = " << ctx.scale() << std::endl << std::endl;
}

int main() {
    std::cout << std::setprecision(5);

    // Params
    int N = (1 << 17);
    double init_scale = pow(2.0, 40);
    int depth = 53;
    std::vector<int> moduli(depth+2, 40);
    moduli[0] = moduli[depth+1] = 60;
    std::cout << "N=" << N << ", init_scale=" << init_scale << " (2^" << log2(init_scale) << "), depth=" << depth;
    std::cout << ", moduli=" << moduli[0] << "," << moduli[1] << ",...," << moduli[depth] << "," << moduli[depth+1] << std::endl;

    // Set up CKKS
    seal::EncryptionParameters parms(seal::scheme_type::ckks);
    parms.set_poly_modulus_degree(N);
    parms.set_coeff_modulus(seal::CoeffModulus::Create(N, moduli));
    seal::SEALContext context(parms, true, seal::sec_level_type::none);

    seal::PublicKey public_key;
    seal::SecretKey secret_key;
    seal::RelinKeys relin_keys;
    std::ifstream pks("./pk", std::ios::binary);
    public_key.load(context, pks);
    std::ifstream sks("./sk", std::ios::binary);
    secret_key.load(context, sks);
    std::ifstream rks("./rk", std::ios::binary);
    relin_keys.load(context, rks);

    seal::CKKSEncoder encoder(context);
    seal::Decryptor decryptor(context, secret_key);
    seal::Evaluator evaluator(context);

    // Load x
    seal::Ciphertext x;
    std::ifstream xs("./x", std::ios::binary);
    x.load(context, xs);
    std::cout << "x: ";
    decrypt_decode_print(decryptor, encoder, x);

    // Square x

    seal::Ciphertext x_squared;
    evaluator.square(x, x_squared);
    std::cout << "x^2: ";
    decrypt_decode_print(decryptor, encoder, x_squared);

    evaluator.relinearize_inplace(x_squared, relin_keys);
    std::cout << "x^2 (after relin): ";
    decrypt_decode_print(decryptor, encoder, x_squared);

    evaluator.rescale_to_next_inplace(x_squared);
    std::cout << "x^2 (after relin+rescale): ";
    decrypt_decode_print(decryptor, encoder, x_squared);

    x_squared.scale() = init_scale;
    std::cout << "x^2 (after relin+rescale+stabilize): ";
    decrypt_decode_print(decryptor, encoder, x_squared);

    return 0;
}

Using Evaluator::multiply instead does not affect the issue. The original code was run on SEAL 3.6.4, the MWE consistently breaks on both 3.6.4 and 3.6.6. I went through the available resources but was unable to gain intuition on why this would happen, and if some tweaks to the circuit could help fix it.

Have you looked at the distribution of the decrypted and decoded values of the so called "correct ciphertext" ? Although the first 3 values might look ok, it is very possible that other slots have very large values, which will then impact the decoding step as it is bounded by float64 precision.
I quickly coded a circuit with N=2^17, n=2^16 slots, 60+5440 Qi and 1061 Pi, that computes x^{2^{54}} by 54 successive squaring. The error grows by 1 bit every square, regardless of the initial precision, which is expected with squaring a ciphertext. It fails after 3-4 squaring after any slot hits 0 decimal precision (which happens after x squaring if the initial minimum precision after the first multiplication is x bits). However when computing x^{54} by 54 successive multiplications with the initial ciphertext, I get the expected values and only lose about 3 bits of precision.

x_squared.scale() = init_scale by manually changing the scale might introduce some errors.
For each decryption, make sure the scaled message is within the ciphertext modulus, i.e., |scale * message| < q0*q1*...

It was indeed the case that the other slots I ignored had huge values; masking these out seems to have solved the problem. Thank you for your help!


Outline a structure for Variable Components

Static font using Static Components
glyf table:

Glyph:

Outline
--or--
list of Components

Component:

BaseGlyph
Transformation

Variable font using Static Components
glyf table:

Glyph:

Outline
--or--
list of Components

Component:

BaseGlyph
Transformation

gvar table:

Deltas for outlines
Deltas for the offsets of components

fvar table:

no hidden axes

Main idea of the proposal

Variable Component sources are regular glyphs, but are unencoded
They use hidden axes that are not exposed to the user
Components determine the designspace location for their sources

Static font using (non-nested) Variable Components
glyf table:

Glyph:

Outline
--or--
list of Components

Component:

BaseGlyph
Transformation
Designspace Location --> VaCo table

VaCo table:

Glyph:

list of Designspace Location (one for each Component)

gvar table:

Deltas for outlines for the sources for variable components

fvar table:

all axes are hidden

Variable font using Variable Components
glyf table:

Glyph:

Outline
--or--
list of Components

Component:

BaseGlyph
Transformation
Designspace Location --> VaCo table

VaCo table:

Glyph:

list of Designspace Location (one for each Component)

GlyphVariations:

deltas for components transformation and Designspace Location (anything not covered by gvar)

gvar table:

Deltas for outlines
--or--
Deltas for the offsets of components

fvar table:

all axes used for Variable Components are hidden

To be determined: exactly which transform parameters are needed
RoboCJK uses:

x
y
rotation
scalex
scaley
rcenterx (in component source coordinates)
rcentery (in component source coordinates)

There are two things to consider:

which transform parameters are convenient for editing
which transform parameters are needed for a font renderer to interpolate the good path between two masters

I am somewhat uncomfortable with the current RoboCJK parameters, as they seem a little arbitrary.
My proposal would be this:

use the existing 2x2 matrix + offset in the glyf table
specify interpolation of the 2x2 through matrix decomposition (interpolate decomposed scale, rotation and skew parmameters)
specify an additional "center of transformation" (in component source coordinates) in the VaCo table

With this, it is possible to exactly replicate GS-CJK at the masters, but the behavior in-between may sometimes be subtly different. I want to do experiments to figure out how much any such differences are, and whether they are show-stoppers or acceptable.

Since this isn't a table from MS (all caps) or Apple (all lowercase) I propose "Cvar" as a mixed case "Component Variation" table.

all axes used for Variable Components are hidden

This suggests to me that we will need a 2nd flag (3rd state) for axes that distinguish "advanced user" axes from "non-user axes."

I am somewhat uncomfortable with the current RoboCJK parameters

I hope @raphlinus can review these soon too :)

There should be an interface between variable components and OpenType features, such as smcp or onum or sups (as David Berlow proposed in http://variationsguide.typenetwork.com/#votf)
(It seems David's proposal for "Variable Unicode IDs" (http://variationsguide.typenetwork.com/#vuid) is provisioned for already, by simply having glyphs with the relevant variable component that are correctly encoded.)

(It seems David's proposal for "Variable Unicode IDs" (http://variationsguide.typenetwork.com/#vuid) is provisioned for already, by simply having glyphs with the relevant variable component that are correctly encoded.)

Yes, I think that's indeed a logical (and pleasant) consequence of this proposal.


Support Controllers in the Interaction Engine

This PR adds support for Oculus Touch in the Interaction Engine in its current state, with additional to-dos coming down the pipe before I'll request a review:

[x] Fix bug where controller collider velocities where not being set
[x] Test and add support for non-spherical colliders in soft contact
[x] Investigate why relative velocity appears not to be used when throwing w/ backward motion
[ ] Allow choosing which fingertips to be primary hover points in InteractionHand inspector
[x] Organize InteractionVRController inspector
[x] Add custom, non-Unity-default controller support via optional script-only settings in InteractionVRController
[x] Add Vive support for InteractionVRController
[ ] Add conditional enabling if Touch or Vive or another specific controller type is detected as available
[ ] Add functionality enabled-by-default that will disable an InteractionHand if it gets close to a VR controller
[ ] Ensure OnDisable() fires appropriate interaction-end callbacks for all InteractionControllers
[x] Add InteractionVRController inspector workflow for adding and specifying custom interaction points and colliders
[ ] Provide InteractionVRController inspector notifications and warnings if interaction point data is in a bad state or if overrideable, custom controller settings have been set or not set
[ ] Make sure builds work on the relevant target platforms!

When using internal private caches I have started naming the backing variable differently in order to make it less likely that it is used accidentally.  So instead of
private var _backing;
private var backing {get;}

I would recommend
private var _cachedBacking;
private var backing {get;}

The interaction manager is in different places for different examples, probably would be a good idea to always have in in the same (recommended) place.


Problem with the redirect in the bash script

CLIENT_ID="amzn1.application-oa2-client.***"
DEVICE_TYPE_ID="test_device"
DEVICE_SERIAL_NUMBER=123
REDIRECT_URI="https://localhost:9745/authresponse"
RESPONSE_TYPE="code"
SCOPE="alexa:all"
SCOPE_DATA="{\"alexa:all\": {\"productID\": \"$DEVICE_TYPE_ID\", \"productInstanceAttributes\": {\"deviceSerialNumber\": \"${DEVICE_SERIAL_NUMBER}\"}}}"

function urlencode() {
  perl -MURI::Escape -ne 'chomp;print uri_escape($_),"\n"'
}

AUTH_URL="https://www.amazon.com/ap/oa?client_id=${CLIENT_ID}&scope=$(echo $SCOPE | urlencode)&scope_data=$(echo $SCOPE_DATA | urlencode)&response_type=${RESPONSE_TYPE}&redirect_uri=$(echo $REDIRECT_URI | urlencode)"

open ${AUTH_URL}

The issue is that the URL encode does not match the Amazon redirect URI. Special characters are not allowed so this fails.
redirect_uri=https%3A%2F%2Flocalhost%3A9745%2Fauthresponse
Can't wait to get this up and going. So close, lol.

I actually resolved this issue. In the code instead of redirect_uri=$(echo $REDIRECT_URI | urlencode) I used the following: redirect_uri=${REDIRECT_URI}
This got me to the login screen for Amazon and then I got the error page.
We're sorry!
An error occurred when we tried to process your request. Rest assured, we're already working on the problem and expect to resolve it shortly.

There was no further information so I'm not sure why that wasn't working. Any Suggestions would be helpful. (Mac OS 10.12.3) My script is listed below.
CLIENT_ID="amzn1.application-oa2-client.24*************"
DEVICE_TYPE_ID="test_device"
DEVICE_SERIAL_NUMBER=123
REDIRECT_URI="https://localhost:9745/authresponse"
RESPONSE_TYPE="code"
SCOPE="alexa:all"
SCOPE_DATA="{\"alexa:all\": {\"productID\": \"$DEVICE_TYPE_ID\", \"productInstanceAttributes\": {\"deviceSerialNumber\": \"${DEVICE_SERIAL_NUMBER}\"}}}"

function urlencode() {
  perl -MURI::Escape -ne 'chomp;print uri_escape($_),"\n"'
}

AUTH_URL="https://www.amazon.com/ap/oa?client_id=${CLIENT_ID}&scope=$(echo $SCOPE | urlencode)&scope_data=$(echo $SCOPE_DATA | urlencode)&response_type=${RESPONSE_TYPE}&redirect_uri=${REDIRECT_URI}"

open ${AUTH_URL}

what is your redirect URI in your amazon developer page?
Is it: https://localhost:9745/authresponse?

Yes sir. Removing the urlencode did the trick and I get to the login now, but I'm getting an ambiguous error message from Amazon with no details at this point. Would you mind trying the above script and let me know if you're getting past the login?

@peterrobie Very odd, I just tried the guide step by step and I got it working. I had to add REDIRECT_URI in the second part of the script though in auth_code.sh, so:
CLIENT_ID="amzn1.application-oa2-client.796ab90fc5844fdbb8efc1739..."
CLIENT_SECRET="1e3a306483c78510d4cdeb05e0a522f7ec3c1629ae1d53c325bfc..."
CODE="ANcUMLaDrkMtCwUSrIqc"
GRANT_TYPE="authorization_code"
REDIRECT_URI="https://localhost:9745/authresponse"

curl -X POST --data "grant_type=${GRANT_TYPE}&code=${CODE}&client_id=${CLIENT_ID}&client_secret=${CLIENT_SECRET}&redirect_uri=${REDIRECT_URI}" https://api.amazon.com/auth/o2/token

But otherwise, it works perfectly for me. Which region are you in? Maybe Amazon blocks your region. I am in the UK

This is where the guide is referenced from:
https://miguelmota.com/blog/alexa-voice-service-authentication/
I found it missing some details, such as the firefox thing, so I made my own on the Wiki based on the above link

That's strange for sure. I'm in the U.S. so I doubt that we'd have any issues like that. A couple things that I noticed is my node and npm versions were slightly out of date. I removed the repo from modules and I'm going to go for a fresh install. Currently node is 7.10.0 and npm is 4.6.1.
The error that I was getting was "Invalid grant type" which was really odd and snowboy.node had an incorrect path. Instead of Electron-*/snowboy.node mine was something like nodeV-x86/snowboy.node
Hopefully upgrading the packages will make a difference.

Not sure if the API was having issues or not, but I got my refresh code. It's incredibly long though and just want to confirm that that's correct.
I can symlink the snowboy path and that "should" make it work.

Using the symlink I got the error.
Error: The module '/Users/peterrobie/Alexa/MagicMirror/modules/MMM-awesome-alexa/node_modules/snowboy/lib/node/binding/Release/node-v51-darwin-x64/snowboy.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 51. This version of Node.js requires
NODE_MODULE_VERSION 53. Please try re-compiling or re-installing
the module (for instance, using npm rebuild ornpm install).
I did this and got the same error as it didn't update anything in the Release. Any suggestions would be helpful.

Try using node 6.10.x, thats the one I am using on MacOS Sierra
snowboy does tend to be a problem. Lots of other people have complained too about it
delete node_modules and try again

If you can, can you post an issue on the snowboy forum, they will help, they are usually good at replying:
https://github.com/Kitt-AI/snowboy/issues

Sounds good and I appreciate it. I'll remove the directory and try again. I'll also look up how to roll back to 6.10.x and see if that helps. Might update the docs too regarding that.
I did get the refresh code, but as I mentioned it was ~3 lines. Hopefully it's correct.

I did get the refresh code, but as I mentioned it was ~3 lines. Hopefully it's correct.

Yeah its 3 lines cos its super long so it wraps around 😂

lol, ok. Then I have the right response. Thanks for confirming.

Use n to roll back, its the best thing ever:
https://github.com/tj/n

Ah, I'm using homebrew. So super easy.
brew search node
brew unlink node
brew install node@6

good stuff!!!

I had to manually create a temp directory

So the temp folder needs to actually exist? I wouldve thought node would be smart enough

./node_modules/.bin/electron-rebuild --pre-gyp-fix
Which fixed the problem and could be added to the repo for others to quickly resolve in the readme.

Good idea, I will add this

Yes. The temp directory needs to be there. Could access the fs and add it if it's not there or just add it to the repo.
I think the big things that I had problems with were needing to rebuild electron and the node version. I may update to the newest node version and try it to see if it was just the electron-rebuild issue.

Done, added temp folder, so it will always be there now, and also ammended the "electron-rebuild" command (it was alrteady there actually, so it does --pre-gyp-fix:
$ npm run electron-rebuild

If you run that, it is an alias to:
$ electron-rebuild --pre-gyp-fix

(You dont need to explicitly state ./node_modules/.bin/)

Sounds great! Thanks for working with me on this.
On Tue, May 30, 2017 at 2:53 PM, Dolan<EMAIL_ADDRESS>wrote:

Done, added temp folder, so it will always be there now, and also ammended
the "electron-rebuild" command (it was alrteady there actually, so it does
--pre-gyp-fix:
$ npm run electron-rebuild
If you run that, it is an alias to:
$ electron-rebuild --pre-gyp-fix
(You dont need to explicitly state ./node_modules/.bin/)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dolanmiu/MMM-awesome-alexa/issues/5#issuecomment-304989179,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACJuraUoPFJJnEpbBD-bxq7keCoIxU2zks5r_HOlgaJpZM4NprcW
.

No problem! my pleasure
The next step is getting it working on Raspberry Pi, I ordered a raspberry pi microphone off Amazon few days ago, should arrive soon, then this module will be boss

No joke! I like it, but I noticed there's some setup for Alexa that's
required like setting your location. Might be a good idea to add that too.
Working on setting up my calendar and such with it later tonight.
Looking at getting a Pi v3 in a couple weeks and setting up the smart
mirror with Alexa. I have a 32" TV that's not really doing anything so I
could go with that or a lighter and smaller monitor. Should be a lot of fun!
On Tue, May 30, 2017 at 2:59 PM, Dolan<EMAIL_ADDRESS>wrote:

No problem! my pleasure
The next step is getting it working on Raspberry Pi, I ordered a raspberry
pi microphone off Amazon few days ago, should arrive soon, then this module
will be boss
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dolanmiu/MMM-awesome-alexa/issues/5#issuecomment-304990830,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACJurbwAEepZry4cmH97S2h0aOHFIHyTks5r_HUugaJpZM4NprcW
.

Really? Where do you need to set your location? If you tell me, I will update that article
Yes, the Pi is amazing, I have 3 of them, one automating my entire fish tank. another automating the chicken coop, and another for MagicMirror, its great!

 That way we can chat more and take this off
github.
On Tue, May 30, 2017 at 3:09 PM, Dolan<EMAIL_ADDRESS>wrote:

Really? Where do you need to set your location? If you tell me, I will
update that article
Yes, the Pi is amazing, I have 3 of them, one automating my entire fish
tank. another automating the chicken coop, and another for MagicMirror, its
great!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dolanmiu/MMM-awesome-alexa/issues/5#issuecomment-304993348,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACJurThrRYiJu64rtn_5PvHkLpxU_mUAks5r_Hd_gaJpZM4NprcW
.

<EMAIL_ADDRESS>But I am a fan of gitter.im:
https://gitter.im/awesome-alexa/Lobby
way quicker, we can do private chats too
[https://avatars-05.gitter.im/group/iv/1/5907c23fd73408ce4f5c44c5]https://gitter.im/awesome-alexa/Lobby
awesome-alexa/Lobby - Gitterhttps://gitter.im/awesome-alexa/Lobby
gitter.im
Where communities thrive Free for communities Join over 800K+ people Join over 90K+ communities Create your own community Explore more communities

From: Peter Robie<EMAIL_ADDRESS>Sent: 30 May 2017 20:13:40
To: dolanmiu/MMM-awesome-alexa
Cc: Dolan; Comment
Subject: Re: [dolanmiu/MMM-awesome-alexa] Problem with the redirect in the bash script (#5)
You mind if I get your email? That way we can chat more and take this off
github.
On Tue, May 30, 2017 at 3:09 PM, Dolan<EMAIL_ADDRESS>wrote:

Really? Where do you need to set your location? If you tell me, I will
update that article
Yes, the Pi is amazing, I have 3 of them, one automating my entire fish
tank. another automating the chicken coop, and another for MagicMirror, its
great!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dolanmiu/MMM-awesome-alexa/issues/5#issuecomment-304993348,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACJurThrRYiJu64rtn_5PvHkLpxU_mUAks5r_Hd_gaJpZM4NprcW
.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/dolanmiu/MMM-awesome-alexa/issues/5#issuecomment-304994410, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ACyE7dhS2Kh-VaGrWVxHp6e_BGI2bkbuks5r_Hh0gaJpZM4NprcW.

I guess this was resolved so can this be closed? :D

Closing
Thanks


issue-8: Add error logging

Closes #8

Codecov Report

Merging #9 (b964262) into master (e2d583e) will decrease coverage by 0.14%.
The diff coverage is 44.44%.

@@            Coverage Diff             @@
##           master       #9      +/-   ##
==========================================
- Coverage   67.26%   67.12%   -0.15%
==========================================
  Files          41       41
  Lines         727      733       +6
==========================================
+ Hits          489      492       +3
- Misses        238      241       +3

Impacted Files
Coverage Δ

hitbox/src/states/cache_polled/actual.rs
20.00% <0.00%> (-1.43%)
:arrow_down:

hitbox/src/states/cache_polled/error.rs
0.00% <0.00%> (ø)

hitbox/src/states/initial/base.rs
75.00% <33.33%> (-1.48%)
:arrow_down:

hitbox-actix/src/runtime.rs
90.69% <50.00%> (ø)

hitbox/src/states/cache_polled/missed.rs
76.92% <100.00%> (+1.92%)
:arrow_up:

hitbox/src/states/cache_polled/stale.rs
66.66% <100.00%> (+1.96%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e2d583e...b964262. Read the comment docs.


Module not found error

Hi, I am getting the following error
from espnet_onnx.espnet_onnx.export import TTSModelExport

Hi, @sciai-ai, thank you for reporting the bug!!!
Sorry, I found that __init__.py is not in the espnet_onnx.export.layers directory...
I fixed the bug in 581eb2b, and released the bug-fixed version(0.1.9)
You can use the bug-fixed version by re-installing from pip!

You cannot export mbmelgan. The supported vocoders are listed here. If you want to convert your custom model, what you have to do is:

clone this repository
install requirements listed in requirements_export.txt
create espnet_onnx.export.tts.models.vocoders.<create your vocoder file> to define your exportation, such as dummy input and output names
modify espnet_onnx.export.tts.models.__init__.py to import your custom vocoder

Please check that your model requires only one input. Otherwise, you must implement a new inference class as espnet_onnx.tts.model.vocoders.vocoder.py, and modify _build_vocoder method in espnet_onnx.tts.abs_tts_model.py

I also tried with pertained pwgvocoder but get an error that it is not supported

Sorry, pre-trained pwgvocoder is currently not supported. But you can use PWGVocoder trained with the JointText2Wav model.

You cannot export mbmelgan. The supported vocoders are listed here. If you want to convert your custom model, what you have to do is:

clone this repository
install requirements listed in requirements_export.txt
create espnet_onnx.export.tts.models.vocoders.<create your vocoder file> to define your exportation, such as dummy input and output names
modify espnet_onnx.export.tts.models.__init__.py to import your custom vocoder

Please check that your model requires only one input. Otherwise, you must implement a new inference class as espnet_onnx.tts.model.vocoders.vocoder.py, and modify _build_vocoder method in espnet_onnx.tts.abs_tts_model.py

@Masao-Someki Thanks, I will try the steps you mentioned.

I also tried with pertained pwgvocoder but get an error that it is not supported

Sorry, pre-trained pwgvocoder is currently not supported. But you can use PWGVocoder trained with the JointText2Wav model.

I also tried with pretained StyleMelgan_v2, but gets  the same error. Are all the supported vocoders trained with joint text2wav?

@sciai-ai

I also tried with pretained StyleMelgan_v2, but gets the same error. Are all the supported vocoders trained with joint text2wav?

Currently, yes. However, you can create a new JointText2Wav instance for exportation. You can set pretrained tacotron2 as text2mel and pretrained pwgvocoder as a vocoder. I've never tested this before, but I think you can export and use it for inference in this way.

Also it it possible to use onnx text2mel,such as tacotron2.onnx model with a non-onxx exported vocoder, such as, pre-trained pwgvocoder.

Yes. Please check that the vocoder_type in config.yaml is set to not_used so that the espnet_onnx will not build vocoder.
config.yaml is located in ~/.cache/espnet_onnx/<your model>/config.yaml.
model = Text2Speech('your model')

# inference only text2mel
mel = model(text)['feat_gen']

wav = your_vocoder(mel)

Note that the type of mel is np.ndarray, so you have to convert it to torch.Tensor.

@Masao-Someki

Also it it possible to use onnx text2mel,such as tacotron2.onnx model with a non-onxx exported vocoder, such as, pre-trained pwgvocoder.

Yes. Please check that the vocoder_type in config.yaml is set to not_used so that the espnet_onnx will not build vocoder. config.yaml is located in ~/.cache/espnet_onnx/<your model>/config.yaml.
model = Text2Speech('your model')

# inference only text2mel
mel = model(text)['feat_gen']

wav = your_vocoder(mel)

Note that the type of mel is np.ndarray, so you have to convert it to torch.Tensor.

I tried this approach, I noticed a few issues

Text2Speech.from_pretrained ignores my arguments, such as min len ration, attn constraint. I have used these parameters in default espnet and they impact the output. Can you please check if the parameters are not ignored in your code?
`Text2Speech.from_pretrained(model_file=model_path,vocoder_file=vocoder_path,
train_config=train_config,vocoder_config=vocoder_config,
device=device_type,
Only for Tacotron 2
threshold=0.5,
minlenratio=0.0,
maxlenratio=20.0,
use_att_constraint=True,
backward_window=3,
forward_window=7,
Only for FastSpeech & FastSpeech2
speed_control_alpha=1.0,)`

I need to use  normalize_before=True   in wav = vocoder.inference(torch.tensor(mel), normalize_before=True), my vocoder and text2mel are trained on the same data and in default epsnet I never use this noramlization. I wonder why I need to do this in espent_onnx.

I tried with GPU onnx and get the error while exporting

Text2Speech.from_pretrained ignores my arguments,i.e, forward and backward window, attn constraint. I have used these parameters in default espnet and they impact the output. Can you please check if the parameters are not ignored in your code?
Text2Speech.from_pretrained(model_file=model_path,vocoder_file=vocoder_path, train_config=train_config,vocoder_config=vocoder_config, device=device_type, threshold=0.5, minlenratio=0.0, maxlenratio=20.0, use_att_constraint=True, backward_window=3, forward_window=7)

Sorry, I commented out the script related to use_att_constraint when debugging, and I completely forgot to check and implement those...
I will implement and fix this in the next PR!

I need to use normalize_before=True in wav = vocoder.inference(torch.tensor(mel), normalize_before=True), my vocoder and text2mel are trained on the same data and in default epsnet I never use this noramlization. I wonder why I need to do this in espent_onnx.

I think this is because the normalization is applied after text2mel inference. Please check that normalize.use_normalize in the config.yml is set to false. If this is true, then normalization will be applied after text2mel inference.

I tried with GPU onnx and get the error while exporting

Your model is on the GPU. Please check that all parameters are on the CPU.

Decoding using text2speech -> feat_gen -> vocoder produces different results than text2speech -> wav

I think this is related to the second question. Would you check the normalization config and try this again?

I tried with GPU onnx and get the error while exporting

Your model is on the GPU. Please check that all parameters are on the CPU.

Can you advice me how to check this, The only parameter I changed was device_type='cuda' in Text2Speech  but still get the error

When you try to export your model, you have to set device_type='cpu'.
You can use your GPU with onnxruntime-gpu. Please refer to How to use GPU on espnet_onnx

Sorry i didn't understand, i use gpu because i want to do gpu inference with onnxruntim_gpu installed.

Could you provide a snippet for reproduction?
I don't get the same problem, so I want to see your code..

from espnet_onnx import Text2Speech
from parallel_wavegan.utils import load_model
from IPython.display import display, Audio
import torch
import time

vocoder = load_model(vocoder_path).to('cpu').eval()
# vocoder.remove_weight_norm()

# text2speech2 = Text2Speech.from_pretrained(model_file=model_path,
#                                      train_config=train_config,
#                                      device='cuda',
#     # Only for Tacotron 2
#     threshold=0.5,
#     minlenratio=0.0,
#     maxlenratio=20.0,
#     use_att_constraint=True,
#     backward_window=3,
#     forward_window=7,
#     # Only for FastSpeech & FastSpeech2
#     speed_control_alpha=1.0,)

PROVIDERS = ['CUDAExecutionProvider']

tag_name = 'taco2'
start = time.time()

with torch.no_grad():
    torch.manual_seed(3)
    text2speech = Text2Speech(tag_name, use_quantized=False, providers=PROVIDERS)
    mel = text2speech(text)['feat_gen']
    torch.manual_seed(343)
    wav = vocoder.inference(torch.tensor(mel), normalize_before=True)

wav = wav.view(-1).detach().numpy()
rtf = (time.time() - start) / (len(wav) / 22050)
# print(f"RTF = {rtf:5f}")
elapsed_time = time.time() - start
print(elapsed_time)

display(Audio(wav, rate=22050))

I found some problems in your code, so please check the following:

Your test code includes loading time. To check the inference time, you have to instantiate text2speech before start=time.time() line.
I changed this and now the gput-onnx time is ~4.73 seconds, still much slower than gpu inference.

espnet_onnx.Text2Speech does not use PyTorch in inference. I think torch.manual_seed(3) is not required.
Please check your config file. If normalize.use_normalize is false, then I think you don't need to set normalize_before=True in vocoder.inference
This is ok because if the normalization is not set properly the synthesiexed speech quality is very bad. In mycase it sounds good. Here is config file

I'm not sure in detail, but the first inference of the onnx model after loading the model takes quite a long time.
I think you can get faster performance after the first inference.
text2speech = Text2Speech(tag_name)
text = 'hello world'

out = text2speech(text) # <-- slow
out = text2speech(text) # <-- fast
out = text2speech(text) # <-- fast

I got the long silence problem with the quantized version...
I will investigate this, but please let me know if you found some weird thing..

Let's focus on the non quantized version first, I tried many inferences, its still much slower than normal gpu inference. I think onnx gpu should be much faster than gpu inference?

@sciai-ai
I tested with torch and onnx with GPU. As you said, I found that the execution time for the onnx version is slower than the torch version...
The length of the text is 175.

torch GPU : 0.62479 sec
onnx GPU : 0.86348 sec

I guess that the number of Conv module would do something with this problem, but I have to investigate more about this problem..

Hmm, do you observe the same problem for fastspeech2 as well?
How about converting onnx/pytorch to tensorrt?

I tested with fastspeech2 (text='hello world') and I found that the performance was improved.

torch: 0.08298 sec
onnx: 0.03790 sec

I've never convert models to tensorrt, so I'm not sure about this...

is this based on GPU?

I tested again and got the following result.

torch: 0.00797 sec
onnx: 0.037399 sec

It seems that the depthwise convolution is slow in fp32 on GPU. This might be the reason for this bad performance...

Is this fasrspeech2? Torch is 10 times faster than your last result?

The performance of onnx tts depends on what module you used in your model.
I've never experienced this kind of performance degradation with ASR models, so I think the cause is related to the number of conv modules..

How about the performance for VITS?


First cut at persisting datoms to SQLite.

This adds the concept of a snapshot (the datoms table) and transaction
log (the transactions table).  Updating the snapshot is potentially
expensive; writing to the log should not be expensive.  (All for
SQLite.)  Therefore I'm going to separate the two activities and have
the application layer determine when to update the snapshot.
Next steps are to incrementally update the snapshot, to do some stress
testing, and to consider building Datomic API-alikes exposing the
transaction history, etc.

@rnewman -- first look?

Coverage increased (+1.2%) to 43.82% when pulling 32a86e5841c92f4b0687542120cbbd5f24cff242 on ncalexan:persist into 71d8f792ed8996be538592965ee84928ed5d43c7 on mozilla:master.

@ncalexan @rnewman what's the status of this PR?

I think this can be closed in favor of Datomish, but I'll let @ncalexan clean up this and #751 and #752.


error $callable JWT

hi tuupola.
i use jwt auth form your repo but i have error code in here
public function shouldAuthenticate()
    {
        /* If any of the rules in stack return false will not authenticate */
        foreach ($this->rules as $callable) {
            if (false === $callable($this->app)) {
                return false;
            }
        }
        return true;
    }

in above error function name must be callable - a string
because class $callable not implement constructor or __invoke . any have fix for that?
thanks

How does your code look like?

when i open
file : slim-jwt-auth/src/JwtAuthentication.php using editor phpstorm, then it showing hint error on line 133.
the message error like above.
but when code running, it is well no error at all

I do not use PHPstorm myself so I have no idea why it is complaining.


Add documentation outlining the workflow process for opening a SIG-NET-PEP or NPEP

This was discussed in yesterday's policy-api meeting and we are going to do something similar to what gateway folks have: https://gateway-api.sigs.k8s.io/geps/overview/

/assign @tssurya
I can do this as I attempt the first SIG-NET-PEP


Iteration fails for retrieving PagerDuty response plays

Receive TypeError when doing the following
>>> rp = list(session.iter_all("response_plays"))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:\Users\[user]\AppData\Local\Programs\Python\Python39\lib\site-packages\pdpyras.py", line 1058, in iter_all
    offset += data['limit']
TypeError: unsupported operand type(s) for +=: 'int' and 'NoneType' ```

Same error occurs with list_all and dict_all. Able to receive list via rget method only

Cool; thanks for pointing this out.
The response plays API is returning null values for limit and offset in the body, which is not expected. So, in other words, this is a bug in the API itself. I've submitted a ticket to the appropriate team that owns this API.
For context: the client by design sets the limit to the limit returned by the API (if it's present in the response body) and increments the offset by that limit if the limit is present in the response. That is for cases where the requested limit is greater than the maximum limit. This prevents incrementing offset by more than the actual page size, so that records won't be skipped over.

Backwards-compatible workaround implemented in 4.2.1


Fix swan-janitor bug

Current coverage is 45.41% (diff: 0.00%)

Merging #109 into master will increase coverage by 1.29%

@@             master       #109   diff @@
==========================================
  Files            16         16
  Lines          8916       8918     +2
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits           3934       4050   +116
+ Misses         3960       3842   -118
- Partials       1022       1026     +4

Powered by Codecov. Last update 1304863...fe28c3f

LGTM


{AKS} Vendor 2022-08-03-preview for aks-preview

This checklist is used to make sure that common guidelines for a pull request are followed.
{AKS} Vendor 2022-08-03-preview for aks-preview.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
The precondition is to put your code inside this repository and upgrade the version in the pull request but do not modify src/index.json.

Queued a pipeline to generate new recordings.

AKS


Do not install the 'tests' package, fixes #88

Hi @jaraco,
I don't really know why I never noticed this before but v3.0.1 attempts to install the tests package.

Maybe introduced in https://github.com/jazzband/inflect/pull/85?

Yes, apparently in v2.0.1, there wasn't packages=setuptools.find_packages() in setup.py.

Hello this is also affecting the way isort is working in our code. It treats local tests module as third party package. It would be nice to quickly merge this fix so we can sort our imports correctly. Thank you !

Thanks for the work (and interest) on this.
And I agree - the tests shouldn't be installed with the package.
I'm open to accepting this change, but I'm also hesitant because it deviates from how I distribute the packages for other projects.
For example, the keyring project has both a tests/ directory and a keyring/tests package, but doesn't exhibit the undesirable behavior driving this PR.
I think there may be some preferable alternatives here, namely to prevent tests/ from being a package, or to move that package into the inflect package.
Most importantly, I'd like to settle on a best practice and use that across all projects.
To that end, I've pushed e282f17 as an alternative to this proposal. Regardless, thanks for the contrib.


Euclideon Logo will now scale nicely with window size

Fixes AB#1907

Don't merge until @OsiJr confirms the change.

Seems fine? Merging. Worst case we fix 🥰


Get Data joining working properly

Presently, TidyTree "Modifies" its internal tree structures by flushing the entire SVG and then redrawing it from scratch. It happens quickly enough that the visual isn't terrible, but we sacrifice a lot by doing this. If we can just get data joining working properly, we can update by preserving the unmodified bits of the SVG, making a better and smoother performance.

Fixed by introducing _guids from patristic


fix: add error status handling

Also, the most annoying error cases are the errors in AbaxAuth, which I think should be handled explicitly.
However, out entire error handling system makes it hard to actually do this. We ought to write ourselves out of using typical-fetch, I think.

This seems worse than what we get today. The status code is vital information, in my view.

when I read the function, we have the makeApiKey and we use await call(apiKey). Then if we fail to send the request, if iti s 429, we try again. otherwise it tries for 3 attempts and then if it fails, it goes to throw new Error('Not able to perform request');. so I don't see how adding other error statuses to return a more explicit error becomes worse than the existing implementation?


Premature rand access in GlobalUnencryptedMessageCounter

Problem
A global constructor uses rand when it is possible that srand has not been called by this time.
Code snippet:
GlobalUnencryptedMessageCounter::GlobalUnencryptedMessageCounter() : value(GetRandU32())
Proposed Solution
A possible solution would be to avoid the global state.

The order of constructor calls are fully controllable, the constructor is called when the object is created.
To control the order of the singleton object creation, we should avoid using global variables, whose construction is not controllable. C++11 can guarantee that the static variable in a function (singleton pattern) is created when first calling the function.
So we should not use global variables, and use singleton pattern instead.


Prop to exclude some markers

First, kudos for this great lib. I don't have so much time to dig into the source code but want to know is there is a way to exclude some markers from clustering. Thanks in advance.

Hi,
I added option to exclude marker from being clustered in version 1.2.6. All you have to do is to add 'cluster' prop to marker like this:
 <Marker
     cluster = {false}
     coordinate={{latitude: x, longitude: y}}>
 </Marker>

Thank you so much, Tomasz!

I am little confused here, because it didn't work for me and I can't see any prop check in source code. So I added this prop check in my fork. PR is coming.

https://github.com/venits/react-native-map-clustering/blob/master/lib/helpers.js#L10
Just add cluster={false}

perfect


possibility to add filters to variables

is it possible to add jinja-filter like operations to interpolated variables such as?:

   - -name: memoized-task
            template: memoized-task
            arguments:
              parameters:
                - name: memoize-key
                  value: "{{replace .my-input \"[!@#$%^&*()]\" \"_\" | replace \" \" \"_\"}}"

Could you add some use cases？


When clicking insert hyperlink the popup input text is not focused

Repro Steps:

C&P'ing from https://github.com/microsoft/roosterjs-react/blob/master/sample/script/ReactEditor.tsx
Click the Ribbon "Insert Hyperlink"
The popup that has the URL: does not auto-focus. And at least in my page I can't click it, I have to tab once to focus it, then I can input text.
Also the close button is not working by default

Env:

"roosterjs-react": "0.0.71",
"roosterjs-react-ribbon": "0.0.71",
The ReactEditor.tsx is being opened from an Office Fabric React Panel.

This repo is archived now. For react wrapper of roosterjs, please refer to roosterjs-react package in roosterjs repo. Thanks.


Use CountDownLatch instead of Semaphore for awaiting completion of drive...

...r registration
This creates a cleaner interaction between the inner classes which
implement the Mesos interfaces (Scheduler, Executor) by avoiding
passing semaphore objects in the constructors.

@tnachen Please :eyes: this, thx!