Proposed new release 0.29

Fixed PHP notice due to Polylang deprecated functions
Fixed Wordpress database error in reports page
Fixed missing argument warning in order detailspage and emails
Fixed strpos() empty needle warning for empty endpoints
Fixed removing email instructions from 3rd party payment gateways

Stuff changed (update):

Fixed PHP notice due to Polylang deprecated functions
Fixed Wordpress database error in reports page
Fixed missing argument warning in order detailspage and emails
Fixed strpos() empty needle warning for empty endpoints
Fixed removing email instructions from 3rd party payment gateways
Fixed not detecting whether polylang pro is active

One more fix:

Fixed PHP notice in Reports when products don't have translations

@hyyan At the end of the day, it is up to you whether you want to support previous versions of WooCommerce and Poylang.
I will remove the plugin check in the Reports class, but I would leave the function definition in the Utilities class - it can be handy in the future. It doesn't hurt.
Just as background information:  I assumed a support policy n-1 major release. Basically because I never upgrade to a major release of a plugin nor the Wordpress core, until there is 1 or 2 bug-fixes releases out. Generally the new major releases are still a bit buggy and I like to wait until they are bit more stable - it helps reducing the testing and troubleshooting time.
I don't like either to upgrade more than 1 plugin at the time to isolate changes - it helps with troubleshooting.

@decarvalhoaa In matter of fact , you have a point of view , it is not how I have planned for the versioning , but thinks are getting more and more complicated in here , we need this for testing and troubleshooting
I would say we keep it this way , it is better
Thanks @decarvalhoaa , I will do the merge at the end of the day

ops!! I just remove the check! Shall I reverse the last commit?! I will wait for your GO before doing anything this time

@decarvalhoaa  NP , just revert please

Ok, I did a hard reset on the HEAD to keep the commit history clean.

@decarvalhoaa  Sound perfect, Great Work so far thanks 👍

0.29 (Not released) Changelog

Fix PHP notice in Reports when products dont have translations
Fixed PHP notice due to Polylang deprecated functions
Fixed Wordpress database error in reports page
Fixed missing argument warning in order detailspage and emails
Fixed strpos() empty needle warning for empty endpoints
Fixed removing email instructions from 3rd party payment gateways
Fixed not detecting whether polylang pro is active
Fixed unable to unselect a complete settings section Issue #51
Tested and confirmed working on WordPress 4.6.1, Polylang 2.0.7 and WooCommerce 2.6.7

Awesome work @decarvalhoaa  , Thanks  🍺


Wrong password logging with Warning level

In my opinion this should be an Information level warning. What is the reason behind a Warning level here?
https://github.com/aspnet/Identity/blob/c7276ce2f76312ddd7fccad6e399da96b9f6fae1/src/Core/UserManager.cs#L711

Because some people use those logs to monitor for attacks. Hence it's a warning that something you might want to look at is happening. It won't change.


README.md encryptedConnection.on('open'), is this a mistake?

In the readme
encryptedConnection.on('open')
Emitted when the encrypted connection has been fully established with the server.

I searched in hyperswarm/dht and secret-stream I can't see this even omitted, and I don't believe it is inherited from the Duplex either.

Yep client connections emit open. Part of the streamx state machine

They also emit “connect” as nodejs tcp compat

Thanks


Verbose inequality names

Hi there!
How do you all feel about using more verbose names for the inequality predicates? Right now, I don't think it's clear what lt?, gt?, lteq? and gteq? mean.
So:
lt? => less_than?
gt? => greater_than?
lteq? => less_than_or_equal_to?
gteq? => greater_than_or_equal_to?
I imagine the problem is less with lt? and gt? and more with lteq? and gteq? because the verbose versions of those are quite long.
A couple factors, if you decide you want to do this:

Support both the short syntax and the long syntax? That could be confusing.

Just less_than_or_equal? might be sufficient, without the trailing _to. Regardless of which is picked, I imagine many people will mess this up. Therefore, whichever version is not chosen should have a specific error saying something like 'You might want to use... instead.` (though maybe Ruby 2.3's did_you_mean will take care of that)

Related: #6
Thanks!

Sorry for late reply. 👎 from me on this, mostly because these are rather common abbreviations and long versions are just...well, long :)
Any thoughts on this @AMHOL @timriley @fran-worley ??

I think the current names are good and fit with the overall general length of dry-logic's built-in predicate names.

I'm inclined to agree. We could make the longer ones an alias for the shorter ones for those who prefer the 'full English' ?

We could make the longer ones an alias for the shorter ones for those who prefer the 'full English' ?

We can't support aliases as these identifiers are used for messages too...

Ohhh yeah. Forgot about that. I guess people will just have to read the docs.

Yeah I prefer the existing names too

OK so I'm gonna close this one


moveit: 0.9.1-2 in 'kinetic/distribution.yaml' [bloom]

Increasing version of package(s) in repository moveit to 0.9.1-2:

upstream repository: https://github.com/ros-planning/moveit.git
release repository: https://github.com/ros-gbp/moveit-release.git
distro file: kinetic/distribution.yaml
bloom version: 0.5.22
previous version for package: null

⛱

yay!!!


Add quick-lint-js version <IP_ADDRESS>

[x] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.5 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

The package manager bot determined there was an issue with installing the application correctly.

I can't tell what the error is from the logs on Azure DevOps. I see that the "Installation Verification" job failed, but I don't see any helpful error messages:

10/26/2023 1:29:47 AM

****************************************************************************************
Installation Verification
****************************************************************************************
Status: Started
==============================================================================
Task         : Installation Validation
Description  : Invoke an Azure Function
Version      : 1.220.0
Author       : Microsoft Corporation
Help URL     : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/azure-function
==============================================================================
2023-10-26T01:29:48.8154657Z POST ***?code=***&
Request body: {
  "operationId": "WinGetSvc-Validation-323-123771-20231026-1",
  "BuildId": "508382",
  "PlanUrl": "https://dev.azure.com/ms/",
  "HubName": "build",
  "ProjectId": "ed6a5dfa-6e7f-413b-842c-8305dd9e89e6",
  "PlanId": "3cb987db-07c1-48f0-8d3d-4a3983a2ede4",
  "JobId": "871b4eed-22de-5cb6-c1c8-82f190de633f",
  "TimelineId": "3cb987db-07c1-48f0-8d3d-4a3983a2ede4",
  "TaskInstanceId": "58bdf892-4e45-5ba7-4782-31912f95e167",
  "AuthToken": ***
}
				Response Code: OK
				Response:

10/26/2023 1:32:47 AM

****************************************************************************************
Installation Verification
****************************************************************************************

-----------------------------------------------------
Result: Failed
-----------------------------------------------------
Status: Completed

Please check the application installs correctly.

The package installed without error on my Windows 10 machine:
> pwd

Path
----
C:\Users\strager\Documents\Projects\winget-pkgs\manifests\q\quick-lint\quick-lint-js\<IP_ADDRESS>

> winget install --manifest .
Found quick-lint-js [quick-lint.quick-lint-js] Version <IP_ADDRESS>
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://c.quick-lint-js.com/releases/2.17.0/windows/quick-lint-js.msix
  ██████████████████████████████   898 KB /  898 KB
Successfully verified installer hash
Starting package install...
  ██████████████████████████████  100%
Successfully installed

> quick-lint-js --version
quick-lint-js version 2.17.0

Automatic Validation ended with:

2023-10-25 18:32:10.155 [CORE] Starting RequestAddPackageAsync operation #0: https://c.quick-lint-js.com/releases/2.17.0/windows/quick-lint-js.msix
2023-10-25 18:32:10.158 [CORE] Begin waiting for operation #0
2023-10-25 18:32:10.158 [CORE] Begin blocking for operation #0
2023-10-25 18:32:12.351 [CORE] Deployment operation #0: error 0x800B0101: Opening the package from location quick-lint-js.msix failed.
2023-10-25 18:32:12.351 [FAIL] D:\a_work\1\s\external\pkg\src\AppInstallerCommonCore\Deployment.cpp(161)\WindowsPackageManager.dll!00007FFBEC479A45: (caller: 00007FFBEC403515) Exception(1) tid(2204) 800B0101 A required certificate is not within its validity period when verifying against the current system clock or the timestamp in the signed file.

/AzurePipelines run

Automatic Validation ended with the same error.

Thanks for sharing the logs. I'll look into it.

This might be a data center block to prevent automated downloads.

I see in the server logs (c.quick-lint-js.com) that two requests were made by the CI servers

c.quick-lint-js.com <IP_ADDRESS> - - [27/Oct/2023:01:05:43 +0000] "HEAD /releases/2.17.0/windows/quick-lint-js.msix HTTP/2.0" 200 920316 "-" "winget-cli WindowsPackageManager/1.5.5-preview DesktopAppInstaller/none"
c.quick-lint-js.com <IP_ADDRESS> - - [27/Oct/2023:01:05:43 +0000] "GET /releases/2.17.0/windows/quick-lint-js.msix HTTP/2.0" 206 133884 "-" "winget-cli WindowsPackageManager/1.5.5-preview DesktopAppInstaller/none"
c.quick-lint-js.com <IP_ADDRESS> - - [27/Oct/2023:01:06:15 +0000] "HEAD /releases/2.17.0/windows/quick-lint-js.msix HTTP/1.1" 200 - "-" "winget/1.0"
c.quick-lint-js.com <IP_ADDRESS> - - [27/Oct/2023:01:07:08 +0000] "GET /releases/2.17.0/windows/quick-lint-js.msix HTTP/1.1" 200 920316 "-" "winget-cli WindowsPackageManager/1.5.5-preview DesktopAppInstaller/none"

I don't think the requests are blocked at the data center level.

The logs you posted mention certificate validity.

I checked the HTTPS certificates and they are valid in October 25.
I also checked the code signature for the .msix file and it is valid in October 25, and its timestamp signature is valid in October 25 too.
I also checked the code signature for the .exe file inside the .msix file and it and its timestamp signature are valid too.
(Validity was confirmed using Windows Explorer. Right click > Properties > Digital Signatures.)

Perhaps the signature thing is a red herring, or there's something I am overlooking.

Automatic Validation ended with:

Installation failed with exit code -2146762495
2023-10-26 18:09:47.838 [CORE] Deployment operation #0: error 0x800B0101: Opening the package from location quick-lint-js.msix failed.
2023-10-26 18:09:47.839 [FAIL] D:\a_work\1\s\external\pkg\src\AppInstallerCommonCore\Deployment.cpp(161)\WindowsPackageManager.dll!00007FFBBF4C9A45: (caller: 00007FFBBF453515) Exception(1) tid(d4c) 800B0101 A required certificate is not within its validity period when verifying against the current system clock or the timestamp in the signed file.
2023-10-26 18:09:48.179 [CLI ] MSIX installer failed:<PHONE_NUMBER>

Log file: InstallationVerification-x64-Scope_Undefined-Locale_Undefined-collector_logs.txt

I think I figured out the issue with version 2.17.0. I will make a new release of quick-lint-js with a fix.

quick-lint-js version 2.18.0 has a fix for the code signing issue. #124702


Name aliases for non latin character names could be ignored

Current regex pattern might not allow names with aliases, needs testing

After some testing the username used by irc is an ascii char set username and the utf-8 parts and aliases come in if you are using the message tags


[Question] Why dose GD need custom Groups and Users in Luckperms?

Hey
I have noticed that GD creates Groups and Users in Luckperms.
Now my Question, why?
I don't want to use the created groups, I have my own groups. And also why do you add permissions to users, I don't even know?

GitHub issues are not for questions and support

That's why I wrote "Question" in the title.
I'm still interested in an answer.
Also, in my opinion, it is kind of a bug (even if it's intended) that you can't deactivate it. At least, I haven't found an option for this yet.

Isn't a bug and it's how the plugin works, you have no reason to care that they exist or to touch them and it won't change either.


Output into one single excel/csv file

Hello,
Sometimes people ask me data and the only way I can give them is by sending them data through csv or excel file. For now I can export data into csv files but I can't manage how to put them into one single csv/excel file. Is it possible ?
Thanks
Vincent

Please try.
https://github.com/embulk/embulk/issues/501#issuecomment-257837550

Perfect ! Thanks @hiroyuki-sato


fix: v-motion directive variants leaking

You may have noticed the demo page is not working as expected, it seems only the initial motion variant is triggered. While testing #171 in the vite playground I noticed that simply adding en element using a visibility variant would make all motion elements disappear.
Using the Netlify deploy history of the demo page (https://app.netlify.com/sites/vueuse-motion-demo/deploys) I narrowed down when this broke to this commit. I think that by changing the directive to accept a default value {} instead of undefined for variants, the same object is being reused for all v-motion usage, essentially each element using v-motion is overwriting/merging all the previous ones.
This partially fixes the demo page, but fixes what's probably a bigger bug. I'll have a separate PR to fix the demo page further soon.

@cpreston321 / @Tahul
Tagging for review


The reproduced results on the nuScenes dataset

Hi, I seem to find two other mistakes in this repo. Is this repo an very early version of this work? I will list them below.

random.shuffle() will cause error when used in tensor.
shuffle_id_list_select_50[:int((select_ratio+0.2)*len(shuffle_id_list_select_50))]  seems not to follow the strategy mentioned in paper.

And I tested the result in nuscenes. It seems that the positive predictions become worse than the random initialization as the training epoch increases. I used the voxel-mae instead of voxel-mae-res in nuscenes because voxel-mae was released recently. Did I make a mistake this way? And I don't find the cfg file, voxel_mae_nuscenes.yaml. Therefore I used voxel_mae_res_nuscenes.yaml as the cfg file while changing the backbone3d to Voxel_MAE.
I was wondering if there was some cfg changing to help the net make better prediction for voxel occupation. Can you tell me the accuracy of the positive prediction or can you offer me the new cfg_file for nuscenes?
Thanks for your help again.

same question, +1

voxel_mae_res_nuscenes.yaml

We use voxel_mae_res_nuscenes.yaml  to pre-train on nuScenes.
random.shuffle()  is just used to generate the random index.
shuffle_id_list_select_50[:int((select_ratio+0.2)*len(shuffle_id_list_select_50))]  masking ratio will increase 0.2 with decreasing distance.

same question, +1

As is stated in paper, the performance of Voxel-MAE on nuScenes is not very good. Because LiDAR in nuScenes is sparse (32 beams).

Thanks for your reply!
About random.shuffle(), it will not cause error when used for producing the random index, but the shuffled index result is incorrect. You can have a look at this site :  https://blog.csdn.net/answer3664/article/details/106613927
About the ratio , if the mask ratio is 0.5, will the ratio list be [0.5, 0.7 0.7] according to the program ?

Thanks for your reply!
About random.shuffle(), it will not cause error when used for producing the random index, but the shuffled index result is incorrect. You can have a look at this site : https://blog.csdn.net/answer3664/article/details/106613927
About the ratio , if the mask ratio is 0.5, will the ratio list be [0.5, 0.7 0.7] according to the program ?

Thanks for pointing out the error by random.shuffle.
You can change the code to set any masking ratios.

Thank you very much!


Add github.run_id suffix to Cirun job labels

Cirun creates runners for jobs based on the job's label, which is currently hardcoded to something like cirun-win11-23h2-pro-x64-64-2024-05-17.   This means if workflows A and B run concurrently then their jobs will compete for runners resulting in an error we've been seeing where jobs spend several hours in the queued state. To ensure Cirun creates unique runners for each workflow run's set of jobs, this PR adds a suffix to the label: --${{ github.run_id }}. See this Cirun page for more info.

Merging despite build breakages since they are unrelated and this will speed up future runs.


Question: why this getRootProps function instead of rootProps

It is not called with arguments https://github.com/techniq/mui-downshift/blob/master/src/index.js#L70, so I'm not sure to see the advantage, except maybe lazy evaluation (which is interesting for getItemProps since there can be many of them, less for getRootProps, getVirtualListProps, getInputProps..)

getRootProps() should have been passed downshiftProps in an object similar to getListItem,
getInfiniteLoaderProps , getVirtualListProps, etc.
Being a function instead of just an object allows for some state to be passed down from mui-downshift before applying your props.  For example, you might want to change the set root props (styling, etc) based on downshift.isOpen.
It also allows mui-downshift to merge props together without the end user to know what mui-downshift is doing (currently not happening for getRootProps(), but could).
For more details, see https://github.com/paypal/downshift#prop-getters


Measurement type is static as "ThinEdgeMeasurement"

Is your feature request related to a problem? Please describe.
The Domain Model of Measurements within Cumulocity gives three degrees of freedom for storing measurements:

Measurment Fragment
Measurement Series
Measurement Type

As I do understand all those three columns are indexed within the mongoDB such that it is recommended to model data in a way that all those 3 informations somehow are considered for the measurements to perform fast queries.
Why is the 3. entry of type not used within thinedge properly. However I do understand that it makes sense to have the information of "ThinEdgeMeasurement" as an information on the measurement itself but have the feeling that it should not be the type.
What are your thoughts on that?
Describe the solution you'd like
If something such as a type exists within the initial payload on the local MQTT broker the mapper should use that. Static types could be used if nothing such as type is provided in the payload.

Also discussed in  #648

Can there be multiple custom fragments as part of the measurement message?

As highlighted by https://github.com/thin-edge/thin-edge.io/pull/1911#discussion_r1164216090, this issue needs some clarifications.

Where can be defined a measurement type?

Only at the top level of a measurement message as in `{  "type": "MyMeasurement",  "location": { "latitude": 32.54, "longitude": -117.67,  "altitude": 98.6 }}?
Inside a group of measurements as in { "location": { "latitude": 32.54, "longitude": -117.67,  "altitude": 98.6, "type": "MyMeasurement"  }}?
Are the two previous messages equivalent? i.e. translated to the same Cumulocity Json Message?

Where custom fragments can be added?

At any level? as in { "location": { "latitude": 32.54, "longitude": -117.67,  "altitude": 98.6, "quality": "Uncertain"  }}

How deep can be a custom fragment?
How custom fragments are translated into Cumulocity Json?

{ "temperature": 23.0,  "pressure": 220.0 } is translated into {"type": "ThinEdgeMeasurement", "time": "2021-04-08T00:00:00+05:00", "temperature": {"temperature": {"value": 23.0}}, "pressure": {"pressure": {"value": 220.0}}}
How should  { "temperature": 23.0,  "pressure": 220.0 , "quality": "Uncertain" } be translated?

The measurement type is only applicable for Cumulocity measurements, and it can only be defined on the root level, as per the following example:
{
    "type": "MyMeasurement",    // type should not be known in the tedge measurement format, it is just a non-value fragment
    "location": {
        "latitude": 32.54,
        "longitude": -117.67,
        "altitude": 98.6
    }
}

Note: The type should not be known in the tedge measurement format, it is just a non-value and should be passed on by default to the appropriate cloud mapper.
The above tedge measurement would then be mapped to a Cumulocity measurement as follows:
{
    "type": "MyMeasurement",    // type allows user to further group measurements
    "location": {        // location is the `valueFragmentType` in c8y terminology
        "latitude": {    // latitude is the `valueFragmentSeries` in c8y terminology
            "value": 32.54,
            "unit": ""
        },
        "longitude": {    // longitude is the `valueFragmentSeries` in c8y terminology
            "value": -117.67,
            "unit": ""
        },
        "altitude": {
            "value": 98.6,
            "unit": ""
        }
    }
}

The type fragment is normally used by Cumulocity users to further classify/group types of measurements. The Cumulocity REST API allows users to query for measurements based on the type, valueFragmentType and valueFragmentSeries. This enables the users to be more flexible on how data is recalled and permission rules are applied.

If it becomes difficult for tedge to detect which is is the measurement values (e.g. numeric values) and which is the meta info (such as type), then it might be more useful to use a reserved fragment/property name which stores all meta info, for example:
{
    "meta" : {  // 'meta' would be a reserved fragment/property name which holds all meta data (e.g. non-value data)
        "type": "MyMeasurement",
        "otherCustomData": {
            "something": {
                "foo": "bar"
            }
        }
    },
    "location": {
        "latitude": 32.54,
        "longitude": -117.67,
        "altitude": 98.6
    }
}

checked


Can't connect to Spydroid stream

I'm trying to connect IPCAM2SYPHON to Spydroid serving an IP Camera feed from Android. I can connect to the stream in VLC successfully, but when I put the same URL into the IPCAM2SYPHON config file, it fails to connnect:

Spydroid runs on port 8080:
http://<IP_ADDRESS>:8080/spydroid.sdp?h264=640-30

Closing this for now since the issue was moved.


Add a VS Code devcontainer configuration

Motivation
When loading kube-rs in VS Code, a variety of configurations are
needed to end up with a working environment. It does't Just Work out of
the box.
Solution
VS Code devcontainers make it easy to bootstrap a development
environment with project-specific tooling and configuration. This
configuration should also be usable in GitHub Codespaces.
This configuration ensures that various tools are available including:

cargo-deny
cargo-tarpaulin
k3d
kubectl
rust stable-1.56 toolchain
rust nightly toolchain
a few related VS Code plugins

While this developer image is based on rust 1.56 (the documented MSRV
for the project), it updates the default toolchain to be nightly so
clippy and rustfmt work as expected (since kube-rs depends on nightly
versions of these tools).

On one hand, I'd rather not commit configuration for any single editor into the repo. On the other hand, having a working development environment in VS Code should dramatically reduce the setup time for new contributors. We've recently adopted devcontainers in Linkerd (1 2), so I thought I'd share a modified version for kube-rs. At the very least, this would help me; but I won't be offended if this isn't accepted here.
Note that I've tried to omit anything touching developer-specific personalization (choice of shell, etc), leaving that to be configured in a dotfiles repo (eg) and in user-specific vscode configuration.

Codecov Report

Merging #788 (c467e73) into master (8bfe82a) will decrease coverage by 0.03%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #788      +/-   ##
==========================================
- Coverage   72.02%   71.99%   -0.04%
==========================================
  Files          55       55
  Lines        3725     3724       -1
==========================================
- Hits         2683     2681       -2
- Misses       1042     1043       +1

Impacted Files
Coverage Δ

kube-runtime/src/reflector/store.rs
94.64% <100.00%> (-0.10%)
:arrow_down:

kube-runtime/src/wait.rs
68.00% <0.00%> (-2.00%)
:arrow_down:

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 f66dd90...c467e73. Read the comment docs.

I think this is great. Thanks a lot for contributing this.
Need to have a few days for some time to play around with it, but I am happy to merge this in if it helps people.

left some comments + suggestions + questions after having tested out the basics + the extensions. definitely merging this as it's pretty easy to maintain and an easy win.
some overall questions:
i guess the way you intend to use this is by creating a new sh terminal inside the container and using make test etc in there? do you want to be able to run lldb against examples? presumably this is doable, but didn't get that far.
i would have assumed the builtin tasks would be useful for less terminal use, but not even sure they forward into the devcontainer (or if they can be configured at this level) - there's another comment on that.

@clux

i guess the way you intend to use this is by creating a new sh terminal inside the container and using make test etc in there? do you want to be able to run lldb against examples? presumably this is doable, but didn't get that far.
i would have assumed the builtin tasks would be useful for less terminal use, but not even sure they forward into the devcontainer (or if they can be configured at this level) - there's another comment on that.

My workflow is generally to use a terminal to run compilations, etc (because RLS/compiling is painfully slow in Linkerd); but I should give tasks a shot in kube-rs. I'll take a look at configuring them.
Re: lldb, I didn't actually try it. I can remove that plugin for now. I think it was a recommended plugin for rust projects and I cargo-culted it here.

I don't have any further comments on this. Are you happy with it as is?

@clux I noticed a small issue with the dev container workflow, but fine to merge once the build is green :)
Thanks!


feat: Support to pull MySQL credentials from secrets

Added support for mysql password and root password.
mysql:
  passwordSecret:
    name: ""
    rootKey: "MYSQL_ROOT_PASSWORD"
    userKey: "MYSQL_PASSWORD"

@vanpelt - Can you plz approve this? Waiting on the merge to allow customers to use this change. Thanks.


TextEdit always clips content (including the focus outline, causing it to be not fully visible)

Godot version:
3564547208030264a28cc55232992aab3cbdad94
OS/device including version:
ArcoLinux
Issue description:
TextEdit forcibly clips all content, regardless of whether the Clip Content box is checked.

I'm quite sure TextEdit wouldn't even work properly without clipping.

Clip Content should probably default to true in TextEdit and the following line should be changed to reflect the clip content property:
https://github.com/godotengine/godot/blob/72dfa67dd3508f20592959d306e8f2ef159eea5f/scene/gui/text_edit.cpp#L725

Should probably use a different node or at least put that TextureRect inside another node and container it

can I contribute to this project please.

I agree that it should be set to TRUE be default, but allow the user to turn off clipping.  As a side not, LineEdit allows no clipping, and it looks great.

I can confirm this on commit 4.0.dev.custom_build [b5b633ff5]. In particular, I need this to display a focus outline that's slightly outside the TextEdit. Removing the clipping function call in the TextEdit C++ code works, but it likely has unintended side-effects :slightly_smiling_face:

This happens when you disable clipping:

Clipping is global for the CanvasItem, you can't disable it only for some parts. So to make this work properly, we'd need to move all text rendering to a separate canvas item (server-side). Similar thing is done for quadrants in TileMap.

Clip contents can be disabled as of https://github.com/godotengine/godot/pull/89993


1066 - Engage suspend action

This integrates the actual action to suspend a service. Engage!

Reviewer: @kennyt

Tests are failing for real
 63 passing (3m)
  27 pending
  1 failing

  1) Tasks Table Task row displays task detail page on task click:
     Uncaught Error: Uncaught TypeError: Cannot convert undefined or null to object (http://localhost:2020/index.js:37150)
      at uncaughtException.n.onerror (http://localhost:2020/__cypress/static/js/vendor.js:33:12620)
      at window.onerror (http://localhost:2020/:3:86)

Yes, I will adjust and add integration tests once I collected everything in the base branch feature/1066-service-actions.
It doesn't make sense in this PR here. The things are too dependent on each other.

Tests pass locally 👍  Thanks for this PR and the great work.


Create a route where admins can send messages.

Time: 3h
Description: Announcements Route
Acceptance: Admins can send out annoucements

Done in https://github.com/CMPS-115-Webcomics/Webcomics-Backend/commit/5b67e5d8287a8327bb38736419519a81109a4f02


Fix "safe" support

Currently it's not determined what it's supposed to do. In some places it throws exception, in other places safe means printing the error and silently keep going.

Fixed by d6e34559c37a7e0e79547e4db3f89c219273f4f6.


5675): This code is temporary, and must be updated to use the IM API. Currently, we use a temporary Protocol

TempZCL to carry over legacy ZCL messages, use an ephemeral exchange to send message and use its unsolicited message handler to receive messages. We need to set flag kFromInitiator to allow receiver to deliver message to corresponding unsolicited message handler, and we also need to set flag kNoAutoRequestAck since there is no persistent exchange to receive the ack message. This logic needs to be deleted after we convert all legacy ZCL messages to IM messages.

https://github.com/project-chip/connectedhomeip/blob/f0f5de0d79ae1c51d7fddbf70900ebac0acd899a/src/app/util/chip-message-send.cpp#L119-L124

This issue was generated by todo-issue based on a TODO comment in f0f5de0d79ae1c51d7fddbf70900ebac0acd899a.

Appears to be a duplicate of #5675.


ImmutableDB: optimise dbFilesOnDisk

Damian had his oddchain configured to create +60k chunks, so +180k files that
dbFilesOnDisk has to separate into three sets. This was taking forever,
because we were using foldr and were not forcing the intermediary sets. Fix
this by using foldl' and forcing the intermediary sets.

bors r+


How can I set some  model metadata when used model.export_coreml(),Thanks.

How can I add the license, author get surfaced in the XCode UI. I can't find more information in
Turi Create API Documentation.Could you help me with it.Thank you very much😻!
In Docs...  image classification -> Introductory Example

#Export for use in Core ML.
model.export_coreml('MyCustomImageClassifier.mlmodel')

In coremltools Docs... Model Interface about author

#Here is coremltools code.
core_model.author = 'Hincat'
core_model.license = 'BSD-3'
core_model.save('Favourite.mlmodel')

Hi, thanks for letting us know this is something you would like to be able to do. Right now there is no way to set custom meta data through Turi Create. The current way to do it is to re-open the mlmodel file using coremltools, add the desired information, and then re-save it.

We should probably return a coremltools.models.MLModel object from export_coreml (and/or, create a new API to_coreml to just return the object without saving), so that users can directly add metadata and call save.

Sincerely thanks again，have a good day.😸😸😸

model.export_coreml(file, author='X', license='Y') would be a great API.

Just chiming in to say I, too, would like a way to add metadata to a model – if for now other reason than to add versions to my models.  Thanks!

I just created my first useful CoreML model using turicreate and I also wanted to add this metadata.
Versioning, author and license are important to track.


Make TCPConnection yield on writes to not hog cpu

Port over of the following PR from wallaroo:
https://github.com/WallarooLabs/wallaroo/pull/2565
This commit adds a _write_again to the TCPConnection actor
and modifies the _pending_writes function to yield by calling
_write_again after having sent at least _max_size bytes.
This will allow other actors and GC to run when a large amount
of data has been queued up to be sent.

Can you add a CHANGELOG entry for this?

@SeanTAllen changelog entry added. But it seems that my adding [skip ci] to it might not be ideal because it prevents the travis/circleci/appveyor tests from running.

@dipinhora yeah, you'll need to rewrite to not have the [skip ci]

@SeanTAllen [skip ci] issue fixed via force push. However, it seems appveyor is not running for it. Any ideas?


Add WL 12.1 support

I think the only 12.1 functions not supported are Enclose/Confirm related. I may need to maintain a 12.1 kernel file.

Decided not to support 12.1


What does the day column in the portfolio allocation notebook stand for?

I'm currently using your much needed library in order to use reinforcement learning for portfolio allocation of a dozen Moroccan stocks. So, I don't have the privilege of retrieving the data as easily using the YahooDownloader function. My question, or questions, now are: What does the day column stand for? and why is it 2 in all the rows? I tried retrieving the historical data of two U.S. stocks and I got unordered numbers between 0 and 4. How do I choose the values in the day column? Can anyone please answer my questions. I apologize for the long post and thanks in advance.

I believe you may find useful codes snippet at the NeoFinRL repo, which aims to standardize the data processing procedure,  https://github.com/AI4Finance-LLC/NeoFinRL

There is something called a weekend effect in the stock market, https://www.investopedia.com/terms/w/weekendeffect.asp. So days can act as a categorical column for our state space. So it is standard 1 for Monday, 2 for Tue etc I guess.

Thank you @XiaoYangLiu-FinRL and @Athe-kunal for the help and engagement. Your answer @Athe-kunal is exactly what I needed. Thank you so much!


Make the västtrafik calls asynchronous

grequests can be used. Makes the response times much smaller

or https://github.com/ross/requests-futures

Tried to implement it but it didn't work. ab65fe6
Help wanted. The failed code is commented out so if there is anyone who wants to give it a try, feel free to do so.


Update NNPACK and its dependencies

I made changes to NNPACK and its dependencies to not mess up global CMake state. This commit brings these changes to Caffe2.

@caffe2bot retest this please. Seems that there is a jenkins hiccup.


FGA - Documentation of column filtering

Related to #558

@MohamedHamouGisaia @mbarbet I fixed few urls not related to FGA

/arlas/explore/{collection}/**_geosearch**/{z}/{x}/{y} becoming _tile
/arlas/ogc/csw/opensearch becoming /arlas/ogc/opensearch/{collection}
are you OK with it?


Add pre-commit workflow with ruff format

Step 2 of https://github.com/bazelbuild/bazel-central-registry/discussions/2317
Adds A GitHub Actions workflow that runs on each PR as well as on main.
Note that depending on repo settings an admin may have to configure this to become "required".
Uses https://github.com/pre-commit/action to run pre-commit.
pre-commit is configured to run the official ruff-format hook
I will add the lint hook in a follow-up PR as the lint is still failing.
Added a ruff config file as well to configure the line length to the same number the current formatting was done with.
The workflow already ran on this PR :) https://github.com/bazelbuild/bazel-central-registry/actions/runs/9717570688/job/26823514964?pr=2327#step:4:67

A more Bazel-y alternative would of course be integrating rules_lint (https://github.com/aspect-build/rules_lint/blob/v1.0.0-rc4/docs/ruff.md). I haven't used this myself yet.
Guessing the folks over at Aspect would be the fastest to integrate their ruff aspect here @alexeagle ?


Tutorial data generation

This PR adds a Tutorial page to the main sidebar that allows users to generate a tutorial dataset if they have the ecephys_testing_data downloaded locally on their computer.
A project progress file will automatically be generated, named NWB GUIDE Tutorial Data, which has its name, interfaces, and format strings pre-generated.
Once this project progress file is generated, the page will invite users to start the conversion by following a link to the Guided Mode initial page with the conversion list.

Overall I really really like this approach, I think it'll be super valuable going forwards (also makes it a lot easier to test stuff)
Unfortunately I did have a lot of trouble with this on Windows; it suffers from permission errors when I try to generate it through the app (even if I launched npm start from a CLI with admin privileges) - I hope this is fixed when we actually build/install as an executable (which would be run with admin privileges) but I wonder if the Flask server is always the beneficiary of those privileges
I had to do some workarounds to call the function directly from the CLI, at which point I was able to generate the files and then when I hit the 'generate dataset' button on the tutorial page with that output path selected it said it succeeded and made the pipeline
Going through the pipeline was great, everything looked smooth until the very end
Uncaught (in promise) Error: Request to convert failed: [WinError 3] The system cannot find the path specified: ...Downloads\\NWB GUIDE Tutorial Data' -> '~\\NWB GUIDE\\Conversions\\NWB GUIDE Tutorial Data'

(Downloads is the target folder)
Looks like you might be messing with those too, so let me know when to try again

To be able to generate the dataset again, you'll have to delete the related project.

I just did with the latest changes; it made the symlinked/copied data in the NWB GUIDE folder and opened a window to it; this approach should work because these files are so small, IDT it's too big of an inconvenience and should work fine
However I still get the same or similar error at the final step
Uncaught (in promise) Error: Request to convert failed: [WinError 3] The system cannot find the path specified: '...\Downloads\\NWB GUIDE Tutorial Data' -> '~\\NWB GUIDE\\Conversions\\NWB GUIDE Tutorial Data'

(Downloads is still the 'output' folder from the first page of the pipeline) - though I notice in my system folder it's just called NWB GUIDE/Tutorial/Dataset so maybe it's just a small typo there?

To be able to generate the dataset again, you'll have to delete the related project.

Yep, I do that every time

To get this tested on my PC, I'll have to get the data there somehow. I'll have to use DataLad and can't just use an external drive, right?

If you think there's a magic way to fix that permissions issue, go ahead but for now it's not super critical
Depends on the drive; I have some external hard drives that are write-only for Windows without running some special reformatting software, but my Mac M1 can still read from it just fine

To get this tested on my PC, I'll have to get the data there somehow. I'll have to use DataLad and can't just use an external drive, right?

Although, the new approach did just work fine for me (where the app internally handles it) so it might not need a fix anymore

Even that final step?
On Thu, Jun 8, 2023 at 10:23 AM Cody Baker @.***> wrote:

To get this tested on my PC, I'll have to get the data there somehow. I'll
have to use DataLad and can't just use an external drive, right?
Although, the new approach did just work fine for me (where the app
internally handles it) so it might not need a fix anymore
—
Reply to this email directly, view it on GitHub
https://github.com/NeurodataWithoutBorders/nwb-guide/pull/218#issuecomment-1583060032,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALDAY5JTUEELZB5CYDJGJKTXKIDA7ANCNFSM6AAAAAAY6ODQ3A
.
You are receiving this because you were assigned.Message ID:
@.***>

Even that final step?

Yes, I just tried again completely fresh from the latest changes and get the same error when I hit the 'Run Conversion Preview' button
Uncaught (in promise) Error: Request to convert failed: [WinError 3] The system cannot find the path specified: 'C:\\Users\\Raven\\Downloads\\NWB GUIDE Tutorial Data' -> 'C:\\Users\\Raven\\NWB GUIDE\\Conversions\\NWB GUIDE Tutorial Data'

Hmmm it looks like you're still resolving some things from your download directory. This shouldn't be an option in the latest push unless you've manually overridden the default config

found out that it breaks when I go back from a custom location to the default—otherwise it seems to work fine.
Gonna be traveling for the rest of the day but I'll find a fix ASAP.

This should be good to review again.


[Removal]: Joyous Porcelain Mole

Hotspot Name
Joyous Porcelain Mole
Hotspot b58 Address
112kZKVV1tDcanDhe8VnfYNALfFwdvcGwvLhVfmh4aLXT1evnnbu
Discord Handle
Jun#2772
Hotspot Manufacturer
Heltec Automation
Removal Reason
I bought this hotspot (total 7 hotspots) on the secondary market on Jan 28th but not notice it was included in the denylist since it is not posteded on https://blacklist.longap.community/.  However, I deployed the hotspot in the actual place without any gaming or spoofing activities. Maybe it used to be a gaming hotspot previously but it has been deployed properly since I bought it. please run the test algrothim again and check it, thanks a lot.
Modifications
No
Extra forwarders
No
Extra antennas
No
Additional Information
Hi the helium team,
Thanks for all you have done to maintain a health and honest network. Maybe I'm the unfortunate man who bought banned hotspot, but I deployed it at the right place to privide services to local devices as part of the network.
Pleas check the authenticity of the location with your algrothim again and it will prove my innocence

.

i don't believe you have ability to install so many miners in PuDong since the real estate is super high as well as government body would like to control everything.
screenshots can explain everything (an example of one your miner Dandy Hazelnut Rook):

Joyous Porcelain Mole was asserted a month ago, how did you buy it on Jan 28? you inherited its location and rewards?

![Screen Shot 2022-02-04 at 10 27 19](https://user-images.githubuserconten

t.com/98844383/152555859-f0016400-e7d1-4202-8785-4151af5932ac.png)


[T4A5][T17-B1]Chia Zhe Min

Ready for review

@zhems Some comments added. Please close the PR after reading comments. Good job! Apparently some of the classmates from the Thursday 1pm slot referenced your code! Be proud!

@JoelT-92 haha saw it thanks!


Raw deployment service points to predictor container port instead of transformer container port in transformer collocation

/kind bug
What steps did you take and what happened:
[A clear and concise description of what the bug is.]
All the request are directed to predictor container instead of going through the transformer container in raw deployment mode transformer collocation. This is due to the kubernetes service points to the predictor container port instead of transformer container port.
apiVersion: serving.kserve.io/v1beta1
kind: InferenceService
metadata:
  name: custom-transformer-collocation
spec:
  predictor:
    containers:
      - name: kserve-container        # Do not change the name; This should be the predictor container
        image: "pytorch/torchserve:0.9.0-cpu"
        args:
          - "torchserve"
          - "--start"
          - "--model-store=/mnt/models/model-store"
          - "--ts-config=/mnt/models/config/config.properties"
        ports:
          - containerPort: 8085
            protocol: TCP

        env:
          - name: TS_SERVICE_ENVELOPE
            value: kserve
          - name: STORAGE_URI    # This will trigger storage initializer; Should be only present in predictor container
            value: "gs://kfserving-examples/models/torchserve/image_classifier/v1"
        resources:
          requests:
            cpu: 100m
            memory: 256Mi
          limits:
            cpu: 1
            memory: 1Gi

      - name: transformer-container    # Do not change the container name
        image: kserve/image-transformer:latest
        args:
          - --model_name=mnist
          - --protocol=v1    # protocol of the predictor; used for converting the input to specific protocol supported by the predictor
          - --http_port=8082
          - --grpc_port=8081
          - --predictor_host=localhost:8085      # predictor listening port
        ports:
          - containerPort: 8082
            protocol: TCP
            name: http
        resources:
          requests:
            cpu: 100m
            memory: 256Mi
          limits:
            cpu: 1
            memory: 1Gi

What did you expect to happen:
The requests should be go through the transformer.
What's the InferenceService yaml:
[To help us debug please run kubectl get isvc $name -n $namespace -oyaml and paste the output]
Anything else you would like to add:
[Miscellaneous information that will assist in solving the issue.]
Environment:

Istio Version:
Knative Version:
KServe Version:
Kubeflow version:
Cloud Environment:[k8s_istio/istio_dex/gcp_basic_auth/gcp_iap/aws/aws_cognito/ibm]
Minikube/Kind version:
Kubernetes version: (use kubectl version):
OS (e.g. from /etc/os-release):

I haven't explored Raw, so this may be a naive question but: Is it possible to use spec.transformer to get the expected outcome?
I find weird to pack everything into spec.predictor.

The transformer container should be within a different field in the ISVC spec. Refer to the example isvc files here: https://github.com/kserve/website/blob/main/docs/modelserving/v1beta1/transformer/torchserve_image_transformer/transformer-new.yaml


How to run mocha-teardown with parallel ?

How to run mocha-teardown with the parallel test?

I always got this error:

I need to run mocha-teardown after all tests in parallel.

https://mochajs.org#global-fixtures


8/16 component vector type in GLSL

Hello all
spirv spec allows vector size 8 and 16, and mesa nir supports vec8 and vec16
However, there is no way to declare such vector type in GLSL
The rationale is that arm mali midgard gpu can actually do 8 fp16 packed math with one instruction, and I need a proper way to take the advantage at the high level GLSL language.
Though it should be possible to generate vec8/vec16 spirv binary directly, it is difficult to maintain and not human-readable oriented.
As for now, I declare a custom structure sfpvec8 like
#extension GL_EXT_shader_16bit_storage: require
struct sfpvec8 { f16vec4 abcd; f16vec4 efgh; };

and then use it like
layout (binding = 0) buffer bottom_top_blob { sfpvec8 bottom_top_blob_data[]; };

int gi = 0;
sfpvec8 v = bottom_top_blob_data[gi];

v.abcd = v.abcd + f16vec4(123.f);
v.efgh = v.efgh + f16vec4(123.f);

In this sample, I have to write two lines of code for the addition, and I quite doubt if these two lines will eventually compiled into one instruction on supported platforms.
Besides, an 8-component vector of float16_t is 128bit, I need a way to tell the gpu to read/write 128bit at once instead of two 64bit. This is another concern.
For the optimized compiler, vectorization is hard while de-vectorization is simple. native vec8 helps the programmer and the driver.
Lots of compute shaders in ncnn project are written in this way at the moment
https://github.com/Tencent/ncnn/blob/master/src/layer/vulkan/shader/absval_pack8.comp
and all shaders with _pack8 suffix here https://github.com/Tencent/ncnn/tree/master/src/layer/vulkan/shader
I suppose it is not hard to add these new types to glslang since there is already 8/16 vector type in spirv. The underlying gpu vulkan drivers shall already be able to handle them properly.
Thanks

Sometimes tool chains scalarize a whole shader and give one component-slot in each vector to one invocation of the shader, such that wider vectors mean more invocations running at the same time.
This is far simpler than trying to vectorize scalar (or subvector) operations within a single shader.  This is different than normal CPU workload/vectorization due to the assumption of many instances of invocations of the same thing that need to run.
This of course depends on the type of hardware, mix of registers, and number of invocations that need to run.
There will be a lot of language and tool chain assumptions that GLSL vectors are 4 components.  But, if a new type is worthwhile, that can all be fixed, especially if the bigger vectors don't have .xyz-like swizzles; just array indexing.  However, the question is whether that is worthwhile, or if instead the drivers have already figured out how to utilize hardware the best way by scalarizing.
What would be interesting to see is an experiment you could do:  If you declared arrays of 8 elements, and used them like vectors, whether you get a 4x performance loss over your vec4 code.  That might indicate what would happen going from 4 to 8-component vectors.

This repository is being archived as it has been replaced with the vulkan.org website and is no longer being maintained (i.e., issues posted here are no longer being addressed ).  After reviewing issues posted here, most (if not all) have been resolved or have already been re-opened in Vulkan-Docs (https://github.com/KhronosGroup/Vulkan-Docs) or other repositories for further consideration.  Therefore, all issues in this repository will be closed.  If you believe your issue has not yet been resolved, please re-open in Vulkan-Docs.  Thanks!


made a welcome page for resume builder and improvised the resume builder section

Issues Identification
Closes: #740
Description
Summary
A brief description of what this pull request does and why it is needed.
This pull request introduces enhancements to the Resume Builder feature on the PathSphere platform. The changes include improved styling and functionality to make the resume generation process more visually appealing and user-friendly.
Details
Dynamic Resume Generation: Users can fill in their details, and the resume preview is generated in real-time. The content includes personal information, education, experience, skills, and achievements.
Improved User Interface: The form is styled with a more modern design, ensuring better visibility against the background image. The resume preview section is visually distinct, enhancing the overall user experience.
Download Feature: Users can download their generated resumes in PDF format, providing a convenient way to save their work.
Types of Changes
CSS Improvements
Background Visibility: Adjusted the colors and transparency to ensure the background GIF is visible while not interfering with the form fields.
Styling Enhancements:
Improved input field and button styling to make them more visually appealing.
Added hover effects for buttons to enhance user interactivity.
Template Styles: Customized styles for different resume templates to create a more polished look.
. HTML Enhancements
Improved Structure: Organized sections within the form for better readability and user experience.
Dynamic Resume Generation: Utilized JavaScript to dynamically populate the resume content based on user input, allowing for a more interactive experience.
Please check the boxes that apply

[ ] Bugfix (non-breaking change that fixes an issue)
[x] New feature (non-breaking change that adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update (Documentation content changed)
[ ] Other (please describe):

Checklist
Please check the boxes that apply

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] My changes do not break the current system and pass all existing test cases
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

Screenshots

why is the resume background blue


create tag to repositoties in a provided manifest

Background
Release process is triggered by tag of repositories.
When core committers think it's time to do release, they need to create tag for each repository under RackHD.
The repeat of creating tag is annoy.
This PR helps to create tag automatically.
Test Done
By testing this PR, I temporarily use rackhd-mirror in the template of manifest.
The job will create tag to repositories in rackhd-mirror.
http://rackhdci.lss.emc.com/job/Experimental-Jobs/job/CreateTag/7/console

@panpan0000 @changev @anhou @yyscamper

Thansk @PengTian0 for updates

Clear code, LGTM :+1:


Modernization scanner doc updates

blog CSV and report
workflow/infoPath csv and report updates
Scanning with Sites.Read.All permission when doing app-only
Move CSV details from git to docs.microsoft.com

Done


groups: allow user to see host ship profile from find groups

for #1294
Note that if the host ship isn't in the user's contact store we won't have much to show here. This raises another issue: are we storing new contacts in the contact store at all via groups/talk? Doesn't look like it. cc @arthyn
https://user-images.githubusercontent.com/1221094/205385771-a068330f-f178-4727-91d7-1ca636a73b98.mov

yeah we haven't added any hooks to add people we interact with to contact store yet

yeah we haven't added any hooks to add people we interact with to contact store yet

created an issue for it: https://github.com/tloncorp/landscape-apps/issues/1305


[Docs][Connector-V2][Oss]Reconstruct the OssFile connector document

Purpose of this pull request

Check list

[ ] Code changed are covered with tests, or it does not need tests for reason:
[ ] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/seatunnel/tree/dev/docs
[ ] If you are contributing the connector code, please check that the following files are updated:

Update change log that in connector document. For more details you can refer to connector-v2
Update plugin-mapping.properties and add new connector information in it
Update the pom file of seatunnel-dist

[ ] Update the release-note.

Pending conflict resolution

Done. Please take a look again. Thanks @Carl-Zhou-CN @zhilinli123 @hailin0


October 21th, 2024 Community Meeting

Please add a topic in this thread and add a link to the GitHub issue associated with the topic.
Please make sure you give folks enough time to review/discuss the topic offline on GitHub before coming into the meeting
(optional) Paste the image of an animal 😸

Move out of issues for Community meeting, in favor of a shared document (.e.g google drive doc)

Please share the link here when it's official - I follow along weekly.

Ideas for improving (and documenting) the backlog refinement process.

To be able to manage our releases, I created https://github.com/shipwright-io/build/pull/1694 a while ago to start getting an overview which vulnerabilities our latest release has. Do we want that? I had planned to PR it on operator and CLI as well if so.

Meeting minutes:

On community meetings:

for a single document, do we want anonymous user to have right permissions?
how do we handle permissions, as if today, anyone in a github issue can comment.
in google docs, an anonymous user can make a comment, visible to someone, that can accept the comment.
how to handle permissions on the document.

On calendar invites via LFX Meetings:

Sounds interesting, and easier to manage.
On mailing list, we currently use something from RH OSPO.

On Snyk

Next steps: Interprate the Snyk findings, decide how to address or ignore.

On Refinement meeting improvements

Next steps: Open a hackmd or github discussions, bring ideas.

Welcome/onboarding slack bot: https://github.com/shipwright-io/community/issues/250


the output image by this way can't be cached by browser,how to solve?

Images was out put by php,can't be cached.If I put images in /public directory,output by nginx,it can be cached.
How to fix the problem?

I'm afraid that I don't understand the problem you are having. Could you please give more info on this problem? If possible post some code with which the issue can be recreated.

@freekmurze Solved,because I used another package,laravel-httpcache(https://github.com/barryvdh/laravel-httpcache),this package don't work well,and it would change the request headers,generate a new response with every request,not cached.


Right-to-left direction

This component is not RTL friendly. Setting dir to rtl results into this:

Which is not correct. In RTL languages, hierarchy is from right to left and the root element should be on the right.

Thanks for your awesome package.
Hi, I have the same issue. How to fix it ?

My issue fix with this codes
 wrapperClass="breadcrumb container breadcrumbRTL"

and also define a class breadcrumbRTL :
.breadcrumbRTL{
    direction: rtl;
}

i have the same issue. setting the direction to rtl on the breadcrumbs wrapper doesnt seem to help.

ok, i managed to get around this with setting the breadcrumbs elements as li that way the direction:rtl works as expected:
<Breadcrumbs
     routes={this.props.routes}
     params={this.props.params}
     separator=" | "
     setDocumentTitle={true}
     wrapperElement="ul"
     itemElement="li"
/>

.breadcrumbs{
    direction:rtl;
}
.breadcrumbs li {
    display: inline-block;
}


Go programs open Windows mouse control panel

This is my first experience with Go, and so I'm hoping that this is the right place to report this issue.  I can reproduce it reliably on my system.
Any Go program I compile opens the Windows Mouse control panel when I open it from the bin directory in PowerShell.   The problem doesn't occur in cmd or if I run bin\main from PowerShell.  This occurs on both 1.5.2 and 1.5.3 windows/amd64 official builds -- I am on Windows 10 x64 10.0.10586.
Here is a GIF of me reproducing the problem:

I'm happy to provide any additional information!

If you rename your go executable and execute it, does it still happen?

Thanks, I have no idea why I didn't think of that -- used to typing an interpreter name.
I need to run .\main in the bin directory -- there's apparently another main.exe in my path.  Sorry!
:dizzy_face: :palm_tree:


Difference between running flutter test and flutter test [path] when loading test resources

There seems to be a difference between running flutter test and flutter test [path] when it comes to accessing test resources.
Steps to Reproduce
Project structure :
lib/...
test/path_test.dart
test_resources/testfile.txt

testfile.txt just contains an arbitrary string :
This is a test

path_test.dart contains a tests that attempts to load test_resources/testfile.txt :
import 'dart:io';
import 'package:flutter_test/flutter_test.dart';

void main() {
  test('Read file test', (){
      File f = File("test_resources/testfile.txt");
      expect(f.readAsStringSync(),"This is a test");
  })
}

Run using path to test file
lutter test test/path_test.dart
00:01 +1: All tests passed!

Run using just flutter test
flutter test
00:01 +0 -1: Read file test [E]
  FileSystemException: Cannot open file, path = 'test_resources/testfile.txt' (OS Error: No such file or directory, errno = 2)
  dart:io              _File.readAsStringSync
  path_test.dart 8:16  main.<fn>

00:01 +0 -1: Some tests failed.

Version :
Flutter 1.5.4-hotfix.2 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 7a4c33425d (3 weeks ago) • 2019-04-29 11:05:24 -0700
Engine • revision 52c7a1e849
Tools • Dart 2.3.0 (build 2.3.0-dev.0.5 a1668566e5)

Running the tests through Android Studio works fine, just the command line command flutter test fails.
Why is there a difference between the commands? Is there a way I can make it work both through my IDE and the flutter test command?

Did some more look into this, and found
   Directory workDir;
    if (files.isEmpty) {
      // We don't scan the entire package, only the test/ subdirectory, so that
      // files with names like like "hit_test.dart" don't get run.
      workDir = fs.directory('test');
      if (!workDir.existsSync())
        throwToolExit('Test directory "${workDir.path}" not found.');
      files = _findTests(workDir).toList();
      if (files.isEmpty) {
        throwToolExit(
            'Test directory "${workDir.path}" does not appear to contain any test files.\n'
            'Test files must be in that directory and end with the pattern "_test.dart".'
        );
      }
}

in
flutter/packages/flutter_tools/lib/src/commands/test.dart :155
As I understand, we set a different working directory depending on whether you run flutter test with files or not? Why? Wouldn't it be better to always use the same working dir, and maybe add a workdir flag?

This looks like a duplicate of https://github.com/flutter/flutter/issues/20907.


fix extraneous expression

This way feels more natural to me.
What do you think?
@dmoralesm, @carburo and @alejandronanez

Hey @escorponox, thanks for suggesting this change!
Personally, I think it's fine the way as it is right now (it is understandable and reflect the original intent in the original English version), your changes are valid (don't get me wrong) but are just another way of saying the same thing.
That said, I'm closing this PR. @carburo, if you have strong feelings about this change, feel free to re-open and merge it.


Test integer literals

Codecov Report

Merging #864 into master will increase coverage by 0.04%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #864      +/-   ##
==========================================
+ Coverage   63.23%   63.27%   +0.04%
==========================================
  Files          88       88
  Lines       14649    14649
  Branches     3266     3266
==========================================
+ Hits         9263     9269       +6
+ Misses       3248     3242       -6
  Partials     2138     2138

Impacted Files
Coverage Δ

parser/src/lexer.rs
83.6% <0%> (+0.69%)
: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 7f82174...f9124f4. Read the comment docs.


Double checks for crashed servers with no heartbeats.

I thought about this and a different method may be preferable. A method in-which a timestamp is placed in the server document then compared on every second iteration of daemon execution with a timeout specified in the server type might be for the best. At the moment the methods used here are a little excessive and could use thread resources a little better.

This feature has been implemented in the latest commits.


Added a new project file - Age calculator using GUI in python

Pull Request Template
script name - Age Calculator using GUI in python
What have you Changed
what you changed in the codebase.write here
Issue no.(must) -
Self Check(Tick After Making pull Request)

[x] This issue was assigned to me.
[x] One Change in one Pull Request
[x] My file is in proper folder
[x] I am following clean code and Documentation and my code is well linted with flake8.
[x] I have added README.md and requirements.txt with my script

If issue was not assigned to you Please don't make a PR. It will marked as invalid.
Join Us on Discord:- https://discord.gg/JfbK3bS

Incorrect code format


really love this but..

Hey there!
First of all thanks so much for making this! When I first found it just now after banging my head against a BIG problem for hours I thought OMG this does everything I need!!!
But then after installing it and playing with it for about 30 minutes.. I realize that no.. unfortunately it doesn't do (yet) what I need it to do. That is, it doesn't seem currently suited to handle snapshotting of parent model and all of its nested relations as well... this is a much more complex issue I guess.. but I actually think your awesome package is an excellent foundation for adding this functionality.
I'd like to talk a bit about what I'd love for you package to be able to accomplish, but before I do.. I guess there may be a part I'm not understanding about your current package? What is the purpose of the model_snapshot_relations and how come no matter what I do I don't ever see any rows being written to it? A short example showing the intended use of that table would be useful!
Anyhow.. what I really need is to be able to take a snapshot of a model, all of its related models, and all of theirs. This can end up being a very large json dump. And of course I also need to be able to convert that back into eloquent models. I wonder if you ever thought about that? I'd really love to pick your brain over that if you have any time. Happy to buy you a coffee or a beer over it too.
I've already begun attempting to do this before I found out about your package. Saving a big json dump is the easy part of course. I'm trying to re-hydrate from the snapshot, in my current use case I don't need those models to be saved to the db necessarily, I just need for them to be rehydrated into eloquent models with fully functional relationships so that I can pass that back to my frontend. This is proving to be a bit challenging and tedious but totally possible through a combination of (new Model)->newFromBuilder() and setRelation.
It would have been a godsend if your package was capable of handling that. Just how out of scope do you think that is right now?
Hey thanks again! Hope you see this and have time to reply! I'm serious about the beer ;-)

Hi,
thanks for kind words.
Thing you described is something that I thought about too, but didn't add (yet?). I didn't like storing everything in one json. Problems with restoring such structure is exactly what I was thinking would happen. I may rethink it to have a separate json for relations or maybe separate connected snapshots.
model_snapshot_relations is being used in HasSnapshotRelations trait. I will describe it with example which is actually a motivation, why I created this package:
We often need to keep versions of objects the moment they were when something happened (eg. a product when order was made). In my case, I have documents created in a system by employees, that they can freely edit and clients can accept them (lets say "I have read the terms and conditions" type). I wanted to keep the version of document the state it was in that moment.
So I have HasSnapshots trait oin Document model and HasSnapshotRelations in User. Than I can add:
// User.php

public function acceptedDocuments(): MorphSnapshotModels
{
    return $this->morphSnapshotAsModels(Document::class);
}

and when user accepts a document i would do:
$user->acceptedDocuments()->attach(snapshot($document)->commit());

I can then retrieve acceptedDocuments on User and they would be of Document instance (not Snapshot), exactly the same as if I made a relation with Document.
I hope this clears up a bit what I had in mind. I'm not the best at writing documentation 😄


Should we remove no-await-in-loop rule ?

https://github.com/zakodium/profid/pull/1910#discussion_r1799472129
I agree ideally we should parallelize async statements but often we disable this rule many times in a for loop, or on the file, on purpose.
To reduce workload, to simplify error management / avoid racing conditions.
I don't have memories where the rules reminds me I should Promise.all / Promise.allSettled instead of await in sequence.
It's not the first time we talk about this rule in an issue, or in vocal.
So, what do we do ?
@zakodium/collaborators

I agree with your proposal Daniel

I agree too.

Thanks to this rule, we significantly improved the loading of files (fetch in parallel) in NMRium. Of course, we could optionally enable it, but I think it will be easier to optionally disable it for a full project.


Controller

Create the 'Controller' portion of the MVC model.
Add routes for each page, including home, tickets, my tickets, login/signup, user settings, manage users, and potentially others.
Include API routes for users, posts and comments for CRUD method (create, read, update and delete).

Controller section template completed. Close broad/general issue. New issues to be more specific.

Controller section template completed. Close broad/general issue. New issues to be more specific.


Textfield fails to load in @next

Problem description
Component is failing to load when using TextField
TypeError: _reactHelpers.isMuiComponent is not a function
FormControl.js
182 | // We need to iterate through the children and find the Input in order
183 | // to fully support server side rendering.
184 | _react.Children.forEach(this.props.children, function (child) {

185 |   if ((0, _reactHelpers.isMuiComponent)(child, 'Input') && (0, _Input.isDirty)(child.props, true)) {
186 |     _this2.setState({ dirty: true });
187 |   }
188 | });

Steps to reproduce
Create a new component using the  example from the 1.0 docs
Versions

Material-UI<EMAIL_ADDRESS>React: 15.6.1
Browser: Chrome/Firefox

Looks like this was an environment problem. I downgraded, then upgraded back to the latest and every thing worked as expected. Apologies for the issue!


Eliminating Case Issues

Since Postgres is case sensitive, maybe at the staging level cast things we query on to LOWER() (or I prefer UPPER() but I know no one else does) so that we know we don't have to deal with it in the CEM stage.
Tagging @leeevans
Thanks to @rkboyce for this idea!
Actually instead of doing this in STAGING I'll do it when pulling into CEM.
UPPERS are slowing down the queries, eliminate them where possible.

this is an old issue, removing


Made a nimble file so one can just install with a package manager

Wanted to try out graphing, but you made it too tedious for me .:stuck_out_tongue:
So hopefully this makes life better for anyone else.

This is quite useful, thanks!


Saving and loading the downsampled audio results in a tensor with zeros.

🐛 Bug
I was using this particular audio file that I downloaded from https://www.lynxstudio.com/ to experiment with 6 channel audio. When I downsample this from 44.1kHz 8kHz, everything seems fine and I am able to play the audio. However, if I were to save the downsampled file and load it again, the tensor I get back have all zeros in it.
import torchaudio

waveform, sample_rate = torchaudio.load('ChannelPlacement.wav')

downsample_rate=8000

downsample_resample = torchaudio.transforms.Resample(
    sample_rate, downsample_rate, resampling_method='sinc_interpolation')

down_sampled = downsample_resample(waveform)

print(down_sampled)

torchaudio.save('temp.wav', down_sampled, downsample_rate)

waveform2, sample_rate2 = torchaudio.load('temp.wav')

print(waveform2)

tensor([[-3.7585e-09, -3.3725e-09,  9.2130e-09,  ..., -4.0691e-08,
          7.2912e-09, -5.7485e-08],
        [-3.2915e-09,  7.5441e-09,  9.4772e-10,  ..., -7.3543e-09,
          3.1981e-08, -2.3025e-08],
        [ 1.5473e-08,  1.8003e-08,  2.5778e-09,  ..., -1.0129e-08,
         -2.0479e-08,  2.6770e-08],
        [-2.1108e-08, -3.9693e-08, -2.2911e-08,  ..., -2.4338e-08,
          3.7029e-08, -3.1360e-09],
        [-2.1277e-08, -1.9114e-09, -4.4245e-09,  ..., -2.3023e-08,
          6.9994e-09, -7.5472e-09],
        [ 5.2013e-09,  2.5186e-08,  2.1362e-08,  ..., -2.6036e-07,
         -1.5355e-07,  3.7919e-08]])
tensor([[0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.]])

To Reproduce
Steps to reproduce the behavior:

Load ChannelPlacement.wav which is included in the attached zip file
Downsample to 8000 (This 8000 seems to be a magic number as if I were to change it to another number, like 7999, it works fine)
Save the downsampled version
Load the downsampled file we just saved
The tensor torchaudio.load returns have all zeros

Here is the gist https://gist.github.com/hiromis/3a0ce0e3b8a512465609c653364c02fe
The following zip file includes the jupyter notebook as well as the audio file:
files.zip
Expected behavior
torchaudio.save('temp.wav', down_sampled, downsample_rate)
waveform, sample_rate = torchaudio.load('temp.wav')

Where waveform tensor to match the tensor I saved (down_sampled)
Environment

What commands did you used to install torchaudio (conda/pip/build from source)?
pip
If you are building from source, which commit is it?
N/A
What does torchaudio.__version__ print? (If applicable)
'0.3.0'

PyTorch version: 1.2.0
Is debug build: No
CUDA used to build PyTorch: 10.0.130

OS: Ubuntu 18.04.3 LTS
GCC version: (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0
CMake version: version 3.10.2

Python version: 3.7
Is CUDA available: Yes
CUDA runtime version: 9.1.85
GPU models and configuration: GPU 0: GeForce GTX 1080 Ti
Nvidia driver version: 430.26
cuDNN version: /usr/local/cuda-10.0/lib64/libcudnn.so.7.5.0

Versions of relevant libraries:
[pip3] numpy==1.16.4
[pip3] torch==1.1.0
[conda] torch                     1.2.0                    pypi_0    pypi
[conda] torchaudio                0.3.0                    pypi_0    pypi
[conda] torchvision               0.4.0                    pypi_0    pypi

Additional context
I did try several other files, and it seems as though this file and sample rate of 8000 seem to hit the edge case of some sort.

I don't think this is related to resampling. I think it's related to the save/load which has a wide variety of configurations (precision, normalization, and scaling). The signal starts off as a 24 bits per sample and after loaded it is a float32 (32 bits per sample) which is resampled and then saved to file.
down_sampled.abs().max() == 1.0006 which is greater than 1.0 so it is not scaled and converted to a int64/long https://github.com/pytorch/audio/blob/a424509dda5b57c932fa8b5b780de93e60ed7ee2/torchaudio/init.py#L191
This float32 tensor is then stored in a sox_sample_t/sox_int32_t buffer before being written to a file https://github.com/pytorch/audio/blob/a424509dda5b57c932fa8b5b780de93e60ed7ee2/torchaudio/torch_sox.cpp#L37. The copy of float32 to sox_int32_t will then convert all the values to zero as it is truncated.
Tangentially related concern in the past: https://github.com/pytorch/audio/pull/119#discussion_r293929024
Some resources for references,
https://en.wikipedia.org/wiki/Single-precision_floating-point_format
http://soundfile.sapp.org/doc/WaveFormat/
https://github.com/kaldi-asr/kaldi/blob/master/src/feat/wave-reader.cc
sox uses various sox_int32_t buffers for reading/writing where it does some conversion to various bits per sample.
https://github.com/rbouqueau/SoX/blob/e29e9ceb7c25a2d83c09bc8a601de117fc65563c/src/wavpack.c#L129
I think the solution to the issue would be rewrite/fix torchaudio load and save so that all the bits of the waveform are saved in the file (e.g. somehow convert the tensor float32 to int32 bitwise for sox buffer or not use sox at all). The current torchaudio implementation of load/save seems to lose some bits and could be improved/more clear (e.g input/outputs dtype, scale of the input/output).
down_sampled2 = (down_sampled << 32).long()
torchaudio.save('temp.wav', down_sampled2, downsample_rate, precision=32)

waveform2, sample_rate2 = torchaudio.load('temp.wav', normalization=None)

print('down_sampled2\n', down_sampled2)
print('waveform2\n', waveform2)

# note not the same as information is lost in saving
# down_sampled2
# tensor([[  -16,   -14,    39,  ...,  -174,    31,  -246],
#     [  -14,    32,     4,  ...,   -31,   137,   -98],
#     [   66,    77,    11,  ...,   -43,   -87,   114],
#     [  -90,  -170,   -98,  ...,  -104,   159,   -13],
#     [  -91,    -8,   -19,  ...,   -98,    30,   -32],
#     [   22,   108,    91,  ..., -1118,  -659,   162]])
# waveform2
# tensor([[  -16.,   -14.,    39.,  ...,  -174.,    31.,  -246.],
#     [  -14.,    32.,     4.,  ...,   -31.,   137.,   -98.],
#     [   66.,    77.,    11.,  ...,   -43.,   -87.,   114.],
#     [  -90.,  -170.,   -98.,  ...,  -104.,   159.,   -13.],
#     [  -91.,    -8.,   -19.,  ...,   -98.,    30.,   -32.],
#     [   22.,   108.,    91.,  ..., -1118.,  -659.,   162.]])

Thank you for very detailed explanation and resources, @jamarshon!
The key seems to be the if statement you pointed out:
https://github.com/pytorch/audio/blob/a424509dda5b57c932fa8b5b780de93e60ed7ee2/torchaudio/__init__.py#L191
I tried different sample rates, and 8000 is the only one that goes over the threshold of 1.0 by 0.0005977153... (hence being considered "unnormalized" and taking a different path):
def downsample_to(waveform, sample_rate, downsample_rate):
    downsample_resample = torchaudio.transforms.Resample(
        sample_rate, downsample_rate, resampling_method='sinc_interpolation')
    down_sampled = downsample_resample(waveform)
    return down_sampled

down_sampled_8000 = downsample_to(waveform, sample_rate, 8000)
print(f'8000Hz: {down_sampled_8000.abs().max()}')

down_sampled_11025 = downsample_to(waveform, sample_rate, 11025)
print(f'11025Hz: {down_sampled_11025.abs().max()}')

down_sampled_16000 = downsample_to(waveform, sample_rate, 16000)
print(f'16000Hz: {down_sampled_16000.abs().max()}')

down_sampled_7999 = downsample_to(waveform, sample_rate, 7999)
print(f'7999Hz: {down_sampled_7999.abs().max()}')

down_sampled_8001 = downsample_to(waveform, sample_rate, 8001)
print(f'8001Hz: {down_sampled_8001.abs().max()}')

8000Hz: 1.0005977153778076
11025Hz: 0.9984769821166992
16000Hz: 0.9985944032669067
7999Hz: 0.9951688647270203
8001Hz: 0.9840729236602783

https://gist.github.com/hiromis/a7958a9bc72752534a0ea168b3b99462
I suppose we could add a small ε to 1.0 comparison to fix this, but to beginners like myself, if we saved and loaded values with all default arguments, the expectation would be for them to be the same.

FYI: We are currently discussing standardizing the data loading in pytorch/pytorch#24915, and make any post-processing more transparent.

I still have the same issue in version 0.4.0. Any update on this?

The issue still exists on master.
import torchaudio

torchaudio.set_audio_backend("sox")  # sox is the default

waveform, sample_rate = torchaudio.load('ChannelPlacement.wav')

downsample_rate=8000

downsample_resample = torchaudio.transforms.Resample(
    sample_rate, downsample_rate, resampling_method='sinc_interpolation')

down_sampled = downsample_resample(waveform)

print(down_sampled)

torchaudio.save(
    'temp.wav', down_sampled, downsample_rate)

waveform2, sample_rate2 = torchaudio.load('temp.wav')

print(waveform2)

print((down_sampled - waveform2).abs().max())
print((down_sampled - waveform2).abs().median())

tensor([[-3.7585e-09, -3.3725e-09,  9.2130e-09,  ..., -4.0691e-08,
          7.2912e-09, -5.7485e-08],
        [-3.2915e-09,  7.5441e-09,  9.4772e-10,  ..., -7.3543e-09,
          3.1981e-08, -2.3025e-08],
        [ 1.5473e-08,  1.8003e-08,  2.5778e-09,  ..., -1.0129e-08,
         -2.0479e-08,  2.6770e-08],
        [-2.1108e-08, -3.9693e-08, -2.2911e-08,  ..., -2.4338e-08,
          3.7029e-08, -3.1360e-09],
        [-2.1277e-08, -1.9114e-09, -4.4245e-09,  ..., -2.3023e-08,
          6.9994e-09, -7.5472e-09],
        [ 5.2013e-09,  2.5186e-08,  2.1362e-08,  ..., -2.6036e-07,
         -1.5355e-07,  3.7919e-08]])
tensor([[0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.]])
tensor(1.0006)
tensor(1.9681e-08)

A workaround that does not reproduce exactly the original signal is to use torch.clamp and set precision when saving.
import torchaudio

torchaudio.set_audio_backend("sox")  # sox is the default

waveform, sample_rate = torchaudio.load('ChannelPlacement.wav')

downsample_rate=8000

downsample_resample = torchaudio.transforms.Resample(
    sample_rate, downsample_rate, resampling_method='sinc_interpolation')

down_sampled = downsample_resample(waveform)

print(down_sampled)

torchaudio.save(
    'temp.wav', torch.clamp(down_sampled, -1, 1), downsample_rate, precision=32)

waveform2, sample_rate2 = torchaudio.load('temp.wav')

print(waveform2)

print((down_sampled - waveform2).abs().max())
print((down_sampled - waveform2).abs().median())

tensor([[-3.7585e-09, -3.3725e-09,  9.2130e-09,  ..., -4.0691e-08,
          7.2912e-09, -5.7485e-08],
        [-3.2915e-09,  7.5441e-09,  9.4772e-10,  ..., -7.3543e-09,
          3.1981e-08, -2.3025e-08],
        [ 1.5473e-08,  1.8003e-08,  2.5778e-09,  ..., -1.0129e-08,
         -2.0479e-08,  2.6770e-08],
        [-2.1108e-08, -3.9693e-08, -2.2911e-08,  ..., -2.4338e-08,
          3.7029e-08, -3.1360e-09],
        [-2.1277e-08, -1.9114e-09, -4.4245e-09,  ..., -2.3023e-08,
          6.9994e-09, -7.5472e-09],
        [ 5.2013e-09,  2.5186e-08,  2.1362e-08,  ..., -2.6036e-07,
         -1.5355e-07,  3.7919e-08]])
tensor([[-3.7253e-09, -3.2596e-09,  8.8476e-09,  ..., -4.0513e-08,
          6.9849e-09, -5.7276e-08],
        [-3.2596e-09,  7.4506e-09,  9.3132e-10,  ..., -6.9849e-09,
          3.1665e-08, -2.2817e-08],
        [ 1.5367e-08,  1.7695e-08,  2.3283e-09,  ..., -9.7789e-09,
         -2.0023e-08,  2.6543e-08],
        [-2.0955e-08, -3.9581e-08, -2.2817e-08,  ..., -2.4214e-08,
          3.6787e-08, -2.7940e-09],
        [-2.0955e-08, -1.8626e-09, -4.1910e-09,  ..., -2.2817e-08,
          6.9849e-09, -7.4506e-09],
        [ 5.1223e-09,  2.5146e-08,  2.0955e-08,  ..., -2.6030e-07,
         -1.5320e-07,  3.7719e-08]])
tensor(0.0006)
tensor(2.0791e-10)

Note that both torch.clamp and precision are needed, since the following two variants still lead to the original error:
torchaudio.save(
    'temp.wav', down_sampled, downsample_rate, precision=32)

torchaudio.save(
    'temp.wav', torch.clamp(down_sampled, -1, 1), downsample_rate)

Both backends (sox and soundfile) are affected by this.
import torchaudio

torchaudio.set_audio_backend("soundfile")

waveform, sample_rate = torchaudio.load('ChannelPlacement.wav')

downsample_rate=8000

downsample_resample = torchaudio.transforms.Resample(
    sample_rate, downsample_rate, resampling_method='sinc_interpolation')

down_sampled = downsample_resample(waveform)

print(down_sampled)

torchaudio.save(
    'temp.wav', torch.clamp(down_sampled, -1, 1), downsample_rate, precision=32)

waveform2, sample_rate2 = torchaudio.load('temp.wav')

print(waveform2)

print((down_sampled - waveform2).abs().max())
print((down_sampled - waveform2).abs().median())

tensor([[-3.7585e-09, -3.3725e-09,  9.2130e-09,  ..., -4.0691e-08,
          7.2912e-09, -5.7485e-08],
        [-3.2915e-09,  7.5441e-09,  9.4772e-10,  ..., -7.3543e-09,
          3.1981e-08, -2.3025e-08],
        [ 1.5473e-08,  1.8003e-08,  2.5778e-09,  ..., -1.0129e-08,
         -2.0479e-08,  2.6770e-08],
        [-2.1108e-08, -3.9693e-08, -2.2911e-08,  ..., -2.4338e-08,
          3.7029e-08, -3.1360e-09],
        [-2.1277e-08, -1.9114e-09, -4.4245e-09,  ..., -2.3023e-08,
          6.9994e-09, -7.5472e-09],
        [ 5.2013e-09,  2.5186e-08,  2.1362e-08,  ..., -2.6036e-07,
         -1.5355e-07,  3.7919e-08]])
tensor([[0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.]])
tensor(1.0006)
tensor(1.9681e-08)

What workaround do you do?

The new backends should not exhibit this behavior. Closing the issue.

How do I do the same directly in C++/Libtorch?
Thanks


pull request for e2e test at 12/10/2016 20:56:01

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Add Jenkins and Docker support for testing.

@simitt One question which does not have to be covered in this PR but I'm curious: What is the command to run a specific tests suite locally on my machine?

@ruflin If you have a look at the scripts in tests/scripts/docker/ you find the shell scripts triggered by jenkins, you can just trigger those with the proper args.

Great stuff. One thing that I'm wondering is if we could get rid of the custom Dockerfiles. All they do is set a couple environment variables and customize what's getting run. I think we could just use the appropriate python:X.Y.Z image, and run it with the appropriate -e flags.

@watson fyi


feat: Tool abstraction

Small notes and steps that we discussed with @maksDev123 some time ago:

Add input schema for tools (this PR)
Add input schema for the rest nodes (could be done group by group)
Move input params validation based on input schema into base Node.run. As a result we are going to validate before execution/retries
Add output schema in the same way

I think we need to have such schemas for all nodes.
Now we have this in all node, which make it hard to use:
def execute(
    self, input_data: dict[str, Any], config: RunnableConfig | None = None, **kwargs
) -> dict[str, list[Any]]:

It would be great to have something like this:
def execute(
    self, input_data: LLMDocumentRankerInputSchema, config: RunnableConfig | None = None, **kwargs
) -> LLMDocumentRankerOutputSchema:

I think we need to have such schemas for all nodes.
Now we have this in all node, which make it hard to use:
def execute(
    self, input_data: dict[str, Any], config: RunnableConfig | None = None, **kwargs
) -> dict[str, list[Any]]:

It would be great to have something like this:
def execute(
    self, input_data: LLMDocumentRankerInputSchema, config: RunnableConfig | None = None, **kwargs
) -> LLMDocumentRankerOutputSchema:

I think we need to have such schemas for all nodes.
Now we have this in all node, which make it hard to use:
def execute(
    self, input_data: dict[str, Any], config: RunnableConfig | None = None, **kwargs
) -> dict[str, list[Any]]:

It would be great to have something like this:
def execute(
    self, input_data: LLMDocumentRankerInputSchema, config: RunnableConfig | None = None, **kwargs
) -> LLMDocumentRankerOutputSchema:

Works this way now


feat: update subscription by subscription id & multiple clauses

add ability to update subscriptions and array of clauses

Summary by CodeRabbit

New Features

Enhanced subscription management to support multiple clauses for both entities and event messages.
Added methods to update entity and event message subscriptions dynamically.

Bug Fixes

Improved accuracy in event message subscription tracking.

Performance Improvements

Optimized handling of subscription IDs and clauses, enhancing overall subscription efficiency.

API Changes

Updated API endpoints and request structures for subscribing and updating subscriptions to support new functionality.

Do we have some tests that are editable to check that? If not, will be included in the gRPC test refactoring.

Ah no we do not have subscription tests for GRPC. We only have ones for queries, but I think it might be worth adding tests for subscription now that they are getting more complex yes 👍


Skip drafts & pre-releases

Great library! I would like to suggest some configurability.
Besides the "tag_name" string, the API returns "draft" and "prerelease" bool values. Sometimes you may wish to filter thought the provided releases by these -- selecting, for example, "no pre-releases". Other times, you may want to limit to a newer pre-release....

Hi! Yup, good idea.

I added a new query function in v0.2.0 that gives more data.


GridLayout doesn't render the borders consistently

When using the GridLayout with different spans (that add up to 12), the border is not rendered consistently (i.e. the width of the first row is longer/short then the width of the second one).
Here is an example:

Here is the example code..
When I set an offset of 1 (the second parameter of NewCol()), that seems fix it but I'm not quite sure whether it's a bug or a feature. The docs don't mention the offset, either (maybe you could at least explain what offset does)...

It definitely not a feature... and hey you've found a new bug about offset;)
The .Offset works like a placeholder, if the first col in a row has span 3 and offset 7, the col's X will be row's X + 7/12 * row's Width. e.g.:

Slightly changed your test code:
package main

import ui "github.com/gizak/termui"

func main() {
	err := ui.Init()
	if err != nil {
		panic(err)
	}

	defer ui.Close()
	ui.UseTheme("helloworld")

	foo := ui.NewPar("Foo")
	foo.Height = 20

	bar := ui.NewPar("BAR")
	bar.Height = 20

	all := ui.NewPar("aLLLL")
	all.Height = 10

	ui.Body.AddRows(
		ui.NewRow(
			ui.NewCol(3, 7, foo),
			ui.NewCol(2, 0, bar),
		), ui.NewRow(
			ui.NewCol(12, 0, all),
		),
	)

	ui.Body.Align()
	ui.Render(foo, bar, all)

	<-ui.EventCh()
}

And for the border issue, my guess is there may be some minor bugs regarding converting float to int. Will look into it soon.

Oh, now I get it (you should mention it in the docs, though).
But the +1 offset workaround doesn't always seem to work, though. It only does when the terminal with is an even number :)

I want to reopen this issue:
it still happens, on odd terminal sizes.
this is 150x39 in xterm

this is 149x39 in xterm

Border misaligment is painfully visible, still.


Reload client_whitelist if it has changed

A bit awkward to do with the current setup, which just pushes a list down. Push a ref down? Should we try using file watching APIs (I see there is https://github.com/whitequark/ocaml-inotify), or just poll on every connection? I see https://github.com/mirage/irmin-watcher, and it's mac/linux compat, but it's lwt -- easy to port though.

@cmr I'd like to reopen this perhaps as a CLI call instead?
coda advanced whitelist list
coda advanced whitelist add <IP_ADDRESS>
coda advanced whitelist del <IP_ADDRESS>
I feel like this should be pretty easy?
It would help a lot with enabling dynamic-scaling of snark workers.

@jkrauska would like to arbitrarily spin up machines and whitelist them to be able to request snark work.

Would it be appropriate to also allow the whitelist to be turned off entirely/whitelist a whole subnet?
I'm imagining the scenario where a fleet of snark workers is partitioned from the internet via network routing rules and only able to access a coordinator.


Attribute for client side that not override editor

Hi @volkanceylan
Is it possible to create attribute/editor for form's fields that isn't derived from Serenity.Widget and that not override existent editor?
I want to make an attribute for add data to element, but this data must be added to existing element and editor.
I would like to have
public class xyzForm
{
      [IntegerEditor(MaxValue = 999), ExtraData(value = 1, other = 2, ecc...)]
      public Int32 IntegerEditor { get;set; }

      [ExtraData(value = 1, other = 2, ecc...)]
      public String TextEditor { get;set; }

      [...]
}

Thanks

I'd recommend subclassing editor type and adding some option like extraData

OK, some like this for each editor I want?
export class StringExtEditor extends class StringEditor {
        [...]
}

export class IntegerExtEditor extends class IntegerEditor {
        [...]
}

Yes and a helper method to apply that maybe. Another option is to use a custom editorOption that won't be used e.g. EditorOption("extraDataValues") or something like that and overriding Widget constructor:
Serenity.Widget.prototype = ...

Oh ok, I will try this.
Thank you very much!


update wrapper width to 120px

I think the wrapper is a little crowded, and my chrome can not display it normally. So I change it from 110px to 120px.

Could you please tell me more about your system or the conditions producing this problem? The only way I'm able to reproduce this in Chrome so far is by zooming out to 75%.

This problem happens in my chrome without any zooming. My system is Arch Linux and my chrome version is  54.0.2840.59 (64-bit).
I just found that this may happened because of my fonts settings of the chrome. I try to change it to other fonts but the result is that some fonts will makes it display normally but some fonts will not. I am not sure whether others has the same problems with me, but I still think is a little crowded and maybe try a not width-fixed way or increase the width to avoid it.

I improved the CSS so that the width is now dynamic.


server: fix softResetOut and handleRouteRefresh

Both assums that getBestFromLocal() returns filtered paths by
policies however it doesn't.
Signed-off-by: FUJITA Tomonori<EMAIL_ADDRESS>

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@6b05d9d). Click here to learn what that means.
The diff coverage is 29.41%.

@@            Coverage Diff            @@
##             master      #88   +/-   ##
=========================================
  Coverage          ?   34.54%
=========================================
  Files             ?       59
  Lines             ?    28048
  Branches          ?        0
=========================================
  Hits              ?     9690
  Misses            ?    17323
  Partials          ?     1035

Impacted Files
Coverage Δ

pkg/server/server.go
34.01% <29.41%> (ø)

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 6b05d9d...dbd0c21. Read the comment docs.


add origin data to Axelar assets

for assets bridged to Axelar from Ethereum and Moonbeam.
implements #420
now we can tell which tokens are bridged or synthetic, so dApps can properly deal with representing them.
e.g., showing "USDC.axl" as the token symbol (the symbol Osmosis has chosen) instead of just "USDC" (which is the symbol Axelar has chosen).
e.g., showing the USDC token logo with a little Axelar-marker (and perhaps an Ethereum logo as well?), distinguishing it from Gravity Bridge-bridged USDC from Ethereum, or from Axelar-bridged USDC from Polygon.
pending expansion of assetlist.schema.json

Implemented Dan's idea to move the specification of the Cosmos Chain Registry folder '_non-cosmos/' from the platform field to its own property which defaults to false. True means the platform is not a Cosmos chain


feat: create change node mode by method

PR Type
Enhancement, Tests

Description

Implemented functionality to change node mode between leader and follower
Added new RPC methods: stratus_changeToLeader and stratus_changeToFollower
Enhanced error handling for importer and miner operations
Updated and expanded integration tests for leader-follower mode changes, importer operations, and miner mode changes
Modified existing RPC methods to support new node mode change functionality
Added new error types to support the enhanced functionality
Updated CI workflow to include new 'change' test for leader-follower e2e tests

Changes walkthrough 📝
Relevant filesEnhancement

stratus_error.rsAdd new error types and remove unused ones

src/eth/primitives/stratus_error.rs
Added new error types: MinerEnabled and ImporterAlreadyShutdown  Removed ImporterConfigNotFound and AppConfigParseError

+8/-11

rpc_server.rsImplement node mode change functionality

src/eth/rpc/rpc_server.rs
Implemented stratus_change_to_leader and stratus_change_to_follower functions  Modified stratus_init_importer, stratus_shutdown_importer, and stratus_change_miner_mode  Added new RPC methods for changing node modes

+143/-27

Tests

leader-follower-change.test.tsAdd integration tests for leader-follower mode changes

e2e/cloudwalk-contracts/integration/test/leader-follower-change.test.ts
Added new integration tests for leader and follower mode changes  Tests cover various scenarios including successful changes and error cases

+84/-0

leader-follower-importer.test.tsUpdate importer tests with new scenarios and parameters

e2e/cloudwalk-contracts/integration/test/leader-follower-importer.test.ts
Added test for shutdown command when importer is already shutdown  Modified existing tests to include new parameters for importer initialization

+16/-1

leader-follower-miner.test.tsExpand miner mode change tests

e2e/cloudwalk-contracts/integration/test/leader-follower-miner.test.ts
Added tests for miner mode changes when miner is enabled  Included tests for disabling miner on both leader and follower

+36/-0

Configuration changes

e2e-leader-follower.ymlAdd 'change' test to e2e workflow

.github/workflows/e2e-leader-follower.yml

Added 'change' to the test matrix for e2e leader-follower tests

+1/-1

💡 PR-Agent usage:
Comment /help on the PR to get a list of all available PR-Agent tools and their descriptions

/describe

/describe

/describe

/describe

/describe