[Feature] TotalPendingBytes size overflow Exception

Pre-check

[X] I am sure that all the content I provide is in English.

Search before asking

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

Apache Dubbo Component
Java SDK (apache/dubbo)
Descriptions
I was called to handle a exception, which is
Caused by: io.netty.handler.codec.http2.Http2Exception$StreamException: TotalPendingBytes size overflow for stream: 9
at io.netty.handler.codec.http2.Http2Exception.streamError(Http2Exception.java:151)
I used the triple protocol, and then the flow control intercepted it.
I found that the initialWindowSize of TriHttp2RemoteFlowController is read from the dubbo.rpc.tri.initial-window-size parameter, but the default value is 64KB. However, TripleHttp2Protocol also reads from the environment variable to build Http2Settings, but the nettyServer initWindowSize initialized by TripleHttp2Protocol is 8MB. I now get an error of 64KB in the production environment. I am going to configure it to 1MB, but TripleHttp2Protocol drops from 8MB to 1MB. My question is, why is the value read from an environment variable, the default value of TripleHttp2Protocol is 8MB, but the flow control is only 64KB
Related issues
https://github.com/apache/dubbo/issues/13676
Are you willing to submit a pull request to fix on your own?

[X] Yes I am willing to submit a pull request on my own!

Code of Conduct

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

emm, i think it should  be spilit from 'dubbo.rpc.tri.initial-window-size' in  TriHttp2RemoteFlowController, details refer to  #14657
@AlbumenJ   PTAL


Updated README to use new flytekit Beta

TL;DR
Going forward we want all users to use the new flytekit API. The current release is flytekit==0.16.0b1
Type

[ ] Bug Fix
[x] Feature
[ ] Plugin

Are all requirements met?

[x] Code completed
[x] Smoke tested
[x] Unit tests added
[x] Code documentation added
[x] Any pending items have an associated Issue

Complete description
This changes how users install and interact with Flyte. We want to make this the standard way and simplify users journey

Codecov Report

Merging #350 (b66166a) into master (701d4e8) will decrease coverage by 0.05%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #350      +/-   ##
==========================================
- Coverage   96.00%   95.94%   -0.06%
==========================================
  Files           2        2
  Lines          75       74       -1
  Branches        8        8
==========================================
- Hits           72       71       -1
  Misses          1        1
  Partials        2        2

Impacted Files
Coverage Δ

tests/scripts/test_flytekit_sagemaker_runner.py
100.00% <0.00%> (ø)

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 67b00ef...b66166a. Read the comment docs.

Codecov Report

Merging #350 (b66166a) into master (701d4e8) will decrease coverage by 0.05%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #350      +/-   ##
==========================================
- Coverage   96.00%   95.94%   -0.06%
==========================================
  Files           2        2
  Lines          75       74       -1
  Branches        8        8
==========================================
- Hits           72       71       -1
  Misses          1        1
  Partials        2        2

Impacted Files
Coverage Δ

tests/scripts/test_flytekit_sagemaker_runner.py
100.00% <0.00%> (ø)

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 67b00ef...b66166a. Read the comment docs.


feat(address): Adds Address resource

Description of your changes
In this PR I added a region parameter to the GlobalAddress resource in order to be able to create a regional static external IP address. This is the simplest solution for the problem discussed in #407, however, I feel the naming is a bit off. I would suggest to actually rename  GlobalAddress as well, but I am not sure how feasible that is.
Fixes #407
I have:

[x] Read and followed Crossplane's [contribution process].
[x] Run make reviewable test to ensure this PR is ready for review.

@Feggah, I just updated the PR and added a dedicated Address resource. I basically duplicated the code. WDYT?

@Feggah - thanks for the thorough review. I pushed an update with hopefully all our comments addressed.

@Feggah, do you have any more insight into why the e2e-tests are failing? I seem to only see:
17:19:01 [FAIL]
make[1]: *** [test-integration] Error 1
Makefile:93: recipe for target 'test-integration' failed
build/makelib/common.mk:376: recipe for target 'e2e' failed
make: *** [e2e] Error 2
Error: Process completed with exit code 2.

Is there a place to get more context or see what's actually happening here?

Is there a place to get more context or see what's actually happening here?

I think the problem is with the CI tests itself, according to the error:
>>>>>>> --- INTEGRATION TESTS ---

>>>>>>> installing provider-gcp into "crossplane-system" namespace
error: unable to recognize "STDIN": no matches for kind "Provider" in version "pkg.crossplane.io/v1beta1"

You can check that the Provider apiVersion is set to v1beta1 in the integration tests script:
https://github.com/crossplane/provider-gcp/blob/df5cb191f5c45856991b3f7e5a15d030c5be3217/cluster/local/integration_tests.sh#L154
And this was removed from Crossplane 1.6, as you can check in the release notes.
Would you mind addressing this minor fix in this PR as well? I think it's okay to fix it here.

@Feggah - I updated the API version in the e2e test script and now all tests passed :-)

Thank you very much for all your efforts 🚀 and sorry for the long review cycle!

No worries. It was nice to get to know a bit of the internal workings of Crossplane.

To finally close it, can you add an example YAML file to examples/compute/address.yaml?

Done. I've added an example for Address and GlobalAddress.

Already approving as it's almost done and then we can merge 🙂

Thanks 👍

@Feggah, awesome that this is merged. What is the release cycle for this provider? I am wondering when this feature will be available in a released version?

@Feggah, awesome that this is merged. What is the release cycle for this provider? I am wondering when this feature will be available in a released version?

@hferentschik I'm not aware of a defined release cycle for this provider, so I don't have a date to give you. @turkenh Do we have any idea when is it going to happen?


can't use the docker registry REST API

Hello,
I'm using this package with my private docker registry.
When using it for docker login, pull and push via bash everything works.
I'm trying to use the docker registry REST API via postman to list all images but it files on authentication
List all repositories (effectively images):
curl -X GET https://myregistry:5000/v2/_catalog -u user:password
List all tags for a repository:
curl -X GET https://myregistry:5000/v2/ubuntu/tags/list -u user:password
I added logs and set breakpoints in the ServeHTTP function in server.go
when using docker login, push and pull it reaches the ServeHTTP function, but when I'm using the REST API the ServeHTTP function doesn't get called and I receive the following error
{
"errors": [
{
"code": "UNAUTHORIZED",
"message": "authentication required",
"detail": [
{
"Type": "registry",
"Class": "",
"Name": "catalog",
"Action": "*"
}
]
}
]
}
I gave my user "*" as allowed actions but it doesn't solves it

Hi maximrub,
I am also facing same issue.
Did you got any solution for this problem
Thanks & Regards,
Rajasekhar Reddy Mullangi.

Guys, this problem is likely caused by the issue explained on this PR comments:
https://github.com/adigunhammedolalekan/registry-auth/pull/4
The library relies on a parameter to identify the account name. But that parameter is not in the Docker registry documentation.
I only works when we use the Docker cli client.
If you guys add the parameter &account=[your account name], than your  Authorize method will receive the correct account name.


Rename set_shape_type into sts

Codecov Report
Attention: 62 lines in your changes are missing coverage. Please review.

Comparison is base (ae79239) 70.18% compared to head (c567bd1) 70.18%.

Files
Patch %
Lines

...perimental_experiment/torch_exp/_aten_functions.py
69.46%
51 Missing :warning:

experimental_experiment/torch_exp/_aten_methods.py
64.51%
11 Missing :warning:

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #30   +/-   ##
=======================================
  Coverage   70.18%   70.18%
=======================================
  Files          32       32
  Lines        4256     4256
=======================================
  Hits         2987     2987
  Misses       1269     1269

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


unable to retrieve the token

Describe the bug.
The token reading error occurs when trying to access the browser's library
I can send messages in the browser and receive a response, yet the library is unable to retrieve the token.
Version
OS: Win
Python: 3.11.3
Bard API: =0.1.29
Using proxy: no
Legion:
Code
bard = Bard(timeout=20, token_from_browser=True)

Error
    bard = Bard(timeout=20, token_from_browser=True)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Mousavi\AppData\Roaming\Python\Python311\site-packages\bardapi\core.py", line 49, in __init__
    raise Exception(
Exception:
Can't extract cookies from browsers.
Please sign in first at
https://accounts.google.com/v3/signin/identifier?followup=https://bard.google.com/&flowName=GlifWebSignIn&flowEntry=ServiceLogin

can you use token way?
bard = Bard(token="xxxxx")

I can utilize the token like this:
token = 'xxx'
# read
os.environ['_BARD_API_KEY']= token
bard = Bard(timeout=20)

Manually try using Bard's methods correctly.
Clear all browsers, restart, and then access Bard's web UI interface on Google's Bard page to ensure communication is possible.
In the above scenario, try different browsers and experiment with various environments, such as renewing cookies (or logging out and logging back in).

Please refer to the notes in the Readme.
Use browser_cookie3 issue page related with Auto Cookie Bard

As this feature relies on browser_cookie3, which we can no longer provide support for, we are closing this issue.


Update wps-office.yml

I didn't expect that they will push new version so quickly.Btw docer is not working. Basic editing should be fine

Hello, is there a way to find out these URLs programmatically (using curl or wget and grep)? We don't want to have to update the recipes manually each time the appliacation authors put out a new version.

I will try it later

Implemented by https://github.com/AppImage/pkg2appimage/pull/508


The status of android custom sound

Is there a problem implementing it, or is this something like nobody-has-worked-on-it-yet kind of issue?
Thanks for the great plugin.

I think the latter.


Refactor CapabilitySet into templated class EnumSet

It looks like exactly the same thing as the capability set except make it a template for general uses. Looks good to me.

Yes, exactly.   I did this because I'm going to need to this to represent that certain things are dependent upon known extensions.  And I'll make the known-extensions-list an enum, and I'll need a compact representation of a set of enums, all of which are small.

Rebased and merged into master as 909d7f9bf5


Error in Register iOS Device

Hi,
I'm currently receiving an error on the Xcode Console, when I try to register my iOS Device to the Azure Notification Hub:
To Native Cordova ->  PushNotification init PushNotification941744200 ["options": [{
    android =     {
        sound = 1;
    };
    connectionString = "Endpoint=sb://us.windows.net/;Sh+Fj/Yjw=";
    ios =     {
        alert = true;
        badge = 1;
        sound = false;
    };
    notificationHubPath = "XXXXXX";
}]]
2021-06-18 11:43:22.421389+0200 App[12507:3520878] Push Plugin register called
2021-06-18 11:43:22.421565+0200 App[12507:3520878] PushPlugin.register: setting badge to false
2021-06-18 11:43:22.421638+0200 App[12507:3520878] PushPlugin.register: clear badge is set to 0
2021-06-18 11:43:22.421707+0200 App[12507:3520878] PushPlugin.register: better button setup
=================================================================
Main Thread Checker: UI API called on a background thread: -[UIApplication registerUserNotificationSettings:]
PID: 12507, TID: 3520878, Thread name: (none), Queue name: com.apple.root.default-qos, QoS: 0
Backtrace:
4   CordovaPlugins                      0x00000001054ae814 __19-[PushPlugin init:]_block_invoke + 2992
5   libdispatch.dylib                   0x00000001050a7ae8 _dispatch_call_block_and_release + 24
6   libdispatch.dylib                   0x00000001050a932c _dispatch_client_callout + 16
7   libdispatch.dylib                   0x00000001050abac8 _dispatch_queue_override_invoke + 884
8   libdispatch.dylib                   0x00000001050bae1c _dispatch_root_queue_drain + 376
9   libdispatch.dylib                   0x00000001050bb73c _dispatch_worker_thread2 + 148
10  libsystem_pthread.dylib             0x00000001f2561580 _pthread_wqthread + 212
11  libsystem_pthread.dylib             0x00000001f256486c start_wqthread + 8
2021-06-18 11:43:22.434095+0200 App[12507:3520878] [reports] Main Thread Checker: UI API called on a background thread: -[UIApplication registerUserNotificationSettings:]
PID: 12507, TID: 3520878, Thread name: (none), Queue name: com.apple.root.default-qos, QoS: 0
Backtrace:
4   CordovaPlugins                      0x00000001054ae814 __19-[PushPlugin init:]_block_invoke + 2992
5   libdispatch.dylib                   0x00000001050a7ae8 _dispatch_call_block_and_release + 24
6   libdispatch.dylib                   0x00000001050a932c _dispatch_client_callout + 16
7   libdispatch.dylib                   0x00000001050abac8 _dispatch_queue_override_invoke + 884
8   libdispatch.dylib                   0x00000001050bae1c _dispatch_root_queue_drain + 376
9   libdispatch.dylib                   0x00000001050bb73c _dispatch_worker_thread2 + 148
10  libsystem_pthread.dylib             0x00000001f2561580 _pthread_wqthread + 212
11  libsystem_pthread.dylib             0x00000001f256486c start_wqthread + 8
=================================================================
Main Thread Checker: UI API called on a background thread: -[UIApplication registerForRemoteNotifications]
PID: 12507, TID: 3520878, Thread name: (none), Queue name: com.apple.root.default-qos, QoS: 0
Backtrace:
4   CordovaPlugins                      0x00000001054ae848 __19-[PushPlugin init:]_block_invoke + 3044
5   libdispatch.dylib                   0x00000001050a7ae8 _dispatch_call_block_and_release + 24
6   libdispatch.dylib                   0x00000001050a932c _dispatch_client_callout + 16
7   libdispatch.dylib                   0x00000001050abac8 _dispatch_queue_override_invoke + 884
8   libdispatch.dylib                   0x00000001050bae1c _dispatch_root_queue_drain + 376
9   libdispatch.dylib                   0x00000001050bb73c _dispatch_worker_thread2 + 148
10  libsystem_pthread.dylib             0x00000001f2561580 _pthread_wqthread + 212
11  libsystem_pthread.dylib             0x00000001f256486c start_wqthread + 8
2021-06-18 11:43:33.145167+0200 App[12507:3520878] [reports] Main Thread Checker: UI API called on a background thread: -[UIApplication registerForRemoteNotifications]
PID: 12507, TID: 3520878, Thread name: (none), Queue name: com.apple.root.default-qos, QoS: 0
Backtrace:
4   CordovaPlugins                      0x00000001054ae848 __19-[PushPlugin init:]_block_invoke + 3044
5   libdispatch.dylib                   0x00000001050a7ae8 _dispatch_call_block_and_release + 24
6   libdispatch.dylib                   0x00000001050a932c _dispatch_client_callout + 16
7   libdispatch.dylib                   0x00000001050abac8 _dispatch_queue_override_invoke + 884
8   libdispatch.dylib                   0x00000001050bae1c _dispatch_root_queue_drain + 376
9   libdispatch.dylib                   0x00000001050bb73c _dispatch_worker_thread2 + 148
10  libsystem_pthread.dylib             0x00000001f2561580 _pthread_wqthread + 212
11  libsystem_pthread.dylib             0x00000001f256486c start_wqthread + 8
APP ACTIVE

I changed the connectionString and notificationHubPath.

Anyone has any idea of how to get this fixed?

@hendrik244 Did you manage to solve this one?

@ANicholasson I forked this and fixed it. Check my repo: https://github.com/hendrik244/cordova-azure-notification-hubs

@hendrik244  The registration problem was solved, but the message could not be received. Is your app OK?

Hi @Xiaoqing3707, for me everything is working fine.


Look at effect of increasing MTU of the TUN interface

Currently MTU is a static 1400 to make sure packets would fit in a single packet of the lower layer. However since we use TCP and Quic, this is not strictly needed since those protocols take care of breaking up packets internally, and we also have a framing protocol for all traffic. As such, we could consider increasing the MTU of the TUN here, with the caveat that future transport implementations (if any), need to be able to handle packets larger than the actual link MTU. We should verify if this allows a significant improvement in performance. If not, we need to consider if the future hassle is worth it to do this.

Looking at it, even Ygg sets it at ffffff O_o

The current performance is largely sufficient for the common use case. Additionally, I'd like to keep the MTU of 1400, in case we end up setting up something like UDP transports in #144 . The currently preferred route to continue here would be  #141


GCNConv on Subgraphs

❓ Questions & Help
Let's say I have a graph G of 1000 nodes, and subgraph of G, G' of 100 nodes. When I pass in G' to a graph convolution layer, add_remaining_self_loops() may throw an error since the egde_index still refer to the nodes by their original index number when they were part of G, not G'. Although G' only has 100 nodes, their edge index from the original graph may have value higher than 100.
The subgraph is created using networkx, and converted via utils.from_networkx(subgraph_nodes)
How should this issue be addressed for both per-case implementation, and for library modification?

I do not see why this should happen? There is no caching behavior in GCNConv in case cached=False.

It shouldn't have to do with caching. I see it as more of a subgraphing issue, as it only concerns the labeling of nodes. On second thought, it may be a bad idea to have from_networkx handle this, as the way to relabel the subgraphed nodes is not exactly clear.
My specific use case involves a "total universe", G, if you will, and an expanding observable universe as subgraph, G'. Graph and subgraph creation are done with networkx.  G' will slowly add in more and more nodes and edges from G, as more observation takes place. Expansion of observable area involves graph convolutions. (I apologize, I cannot go into details). So each expansion will involve the problem I mentioned above. See how the best way to relabel the edge indices are not exactly obvious?
I will have to play around with this problem a bit more. Will let you know if from_networkx should be changed, or if I am just using it inappropriately...
Thank you as always for your great work on this fantastic library!

Ok, so I wouldn't relabel nodes due to reasons like computational costs and higher implementation effort. It may be best to simply keep the number of nodes fixed, and change edge_index over time. This way, you still do not aggregate messages from isolated nodes, and after convolution you can simply mask out invalid nodes.

Would it be sufficient to just keep the number of nodes the same, but grow edge_index over time? Would graph convolution automatically exclude the isolated (in this sense, isolated means unobserved) from message passing? Sorry I am not at my work desk now. I will get you the message when I am back.

Below is my error message. data.x is of shape 102 x num_features, but some of the edge indices have values way higher than 102. The highest value accepted should be 101.
File "/home/yutaizhou/pytorch_geometric/torch_geometric/nn/conv/gcn_conv.py", line 90, in forward
edge_index, norm = self.norm(edge_index, x.size(0), edge_weight, self.improved, x.dtype)
File "/home/yutaizhou/pytorch_geometric/torch_geometric/nn/conv/gcn_conv.py", line 76, in norm
edge_index, edge_weight = add_remaining_self_loops(edge_index, edge_weight, fill_value, num_nodes)
File "/home/yutaizhou/pytorch_geometric/torch_geometric/utils/loop.py", line 116, in add_remaining_self_loops
loop_weight[row[inv_mask]] = remaining_edge_weight
IndexError: index 839 is out of bounds for dimension 0 with size 102

Yes, data.x need shape [1000, num_features]. As I said previously, you need some kind of mask vector that masks all valid nodes in your graph. You can then simply do the following:
x = torch.zeros(1000, num_features)
x[mask] = sub_x
conv(x, sub_edge_index)
sub_x = x[mask]

Ah gotcha. I thought this may reveal some insight on a design issue, but I think I was simply using it in an inappropriate way. Thank you very much for the clarification!

Your recommendation worked just fine. Instead of masking the node feature tensor, I passed in the entire  tensor to conv() but reconstructed edge_indices to only include edges of nodes of interest by using networkx's has_edge() method. By doing it this way, I can refer to any node via edge_indices (index out of bound won't be an issue since I am passing in the whole feature tensor), but message passing would only collect information from nodes referenced by edge_indices. edge_indices would grow as the observable area of the total universe grows.
Do you think it would be a good idea to include networkx's neighbors() and has_edge() method in the Data class? Or do you think they are better kept in networkx only?
Thank you!

Alternatively, we could provide a filter_edge_index function, which takes in the initial edge_index and a node mask. The resulting edge_index does only contain edges from valid nodes. WDYT?

I don't know enough about the field of geometric deep learning to have a good sense about whether such function would be heavily used, but I think that's an excellent idea! I would certainly use it.
Networkx's subgraph() works similarly. For a graph G, it retains only the vertices that are in the list passed in as argument, as well as the edges between them. So it's not exactly a mask detailing which indices to keep, but rather just a list of nodes to keep. I am personally more partial towards this interface over the mask you mentioned. Like  filter_edge_index(edge_index, nodes_to_keep). What do you think?
Additionally, I don't think such method is an alternative to networkx's neighbors() or has_edge(), as it accomplishes a completely different goal. Do you think these two methods are worth implementing for PyG? Or are they better off kept in networkx only?

I added a subgraph method to master.
I'm personally not a big fan of adding neighbors() and has_edge() functionality to PyG, as PyG's data layout of edge_index does not really fit well with those methods and I still did not exactly see their use-cases. In the end, you can simply iterate over edge_index and manually adjust it.

Wow that was super fast! 😆 I will play with that method a bit later and let you know if I find anything.
Use case wise, I think those two functions can be quiet useful, especially neighbors(). But I agree with your point on the layout of edge_index. If I find a strong use case for it, I will try to convince you other wise.
Thank you as always for you fantastic work!

Alternatively, we could provide a filter_edge_index(edge_index, mask) function, which takes in the initial edge_index and a node mask. The resulting edge_index does only contain edges from/to valid nodes i with mask[i] = 1. WDYT?

Thanks for providing this great method.After i get the edge_index with the help of the 'subgraph()'.I intend to call the method 'conv()'.

whole_nodes = graph.x  ## whole nodes without masking
conv(whole_nodes, after_masked_edge_index)

Is it right? I only want to update a certain nodes in graph.

The conv layer will change the representation of all nodes, so you may want to reset the representations of nodes outside the given subgraph afterwards:
x = graph.x
new_x = conv(...)
x[node_idx] = new_x[node_idx]


Fix python recursion error

With the current issue of order of operations causing a maximum recursion error, this PR will re-order the states enough to ensure proper installation of all packages and successful execution of each state.

Something broke with this PR. Resubmitting.


Ran simple spark SQL command & got message about long line

Issue Type: Bug
open pyspark notebook
run below & make sure you have about 5-10 tables:
%%sql
show tables
Error:
Tokenization is skipped for long lines for performance reasons. The length of a long line can be configured via editor.maxTokenizationLineLength.
Azure Data Studio version: azuredatastudio-insiders 1.14.0-insider (e801a04bcf3429336c8057c3b66cfb359a188752, 2019-11-06T20:11:21.759Z)
OS version: Windows_NT x64 10.0.19013

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz (8 x 2904)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: disabled_offprotected_video_decode: enabledrasterization: enabledskia_renderer: disabled_offsurface_control: disabled_offsurface_synchronization: enabled_onvideo_decode: enabledviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
31.85GB (18.08GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions (8)

Extension
Author (truncated)
Version

ssmskeymap
kev
1.1.0

admin-tool-ext-win
Mic
0.0.2

agent
Mic
0.44.0

azuredatastudio-postgresql
Mic
0.2.2

dacpac
Mic
1.0.0

datavirtualization
Mic
1.0.0

import
Mic
0.12.0

profiler
Mic
0.10.0

(1 theme extensions excluded)

@corivera can you look into this? It has come up a number of time.

@kevcunnane When I try running that cell ADS completely locks up. I can't even get to the tokenization message. Looking into it.

Fixed by https://github.com/microsoft/azuredatastudio/pull/9725


Docker image arm64 support

Summary
Add support for arm64 docker image format
Why?
Because the current docker image has linux/amd64 arch hardcoded so it is not possible to run it as a container
How

use docker buildx with an appropiate target platform. See docs
pass the arch to the Makefile and build the go binary appropiately

Acceptance criteria

run without crashes on linux/arm64

Additional Information

I was not able to find out where is the docker image being build and pushed to the registry :/
https://github.com/gogatekeeper/gatekeeper/issues/244

Hi, thanks for creating issue! There image is built by quay.io on release, it builds image from Dockerfile, will look at it

@carocad can you try 2.9.5-rc7 there is image for amd64/arm64/arm7 on quay.io

I will try to do this in the following days. Thanks for looking into this :)

@p53 I can confirm that 2.9.5-rc7 works with arm64 cpus
gatekeeper    | 2024-02-05T11:01:07.820Z        info    starting the service    {"prog": "gatekeeper", "author": "go-gatekeeper", "version": "2.9.5-rc7 (git+sha: 91a86e1, built: 03-02-2024)"}

closing this as it was solved on 2.9.5: https://github.com/gogatekeeper/gatekeeper/releases/tag/2.9.5

Hi,
here is the release step where images are built:
https://github.com/gogatekeeper/gatekeeper/blob/03fea81dcb403ebaed8e7b740a4a0526098376c2/.github/workflows/release.yml#L103
P. Ipoth
Sent with Proton Mail secure email.
On Wednesday, 13 March 2024 at 17:39, Camilo Roca @.***> wrote:

Hello @p53 ,
I hope you don't mind this message. I am trying to contribute to another project also with support for arm64 and I tried to re/use your changes but there is something I don't understand. Where does the TARGETARCH comes from? I checked the logs for your release (https://github.com/gogatekeeper/gatekeeper/actions/runs/8117916083/job/22191103899) but couldnt find any build-args and the docs for https://github.com/docker/build-push-action also don't seem to mention it.

Is this a bug? or am I missing something?

Thanks in advance :)
PS: I am trying to get the arch only not the entire linux/arm64 as passed by docker env vars

—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.


Show GLFW errors

For more detailed error here https://github.com/jdah/minecraft-weekend/issues/8

Perfect, been meaning to do this but slipped my mind. Thanks! Merging this in.


Fixing UnmodifiableBuffer equality bug

Two commits, one contains a couple renames (see details below) so recommended to review them separately to see more meaningful diffs.
UnmodifiableBuffer previously compared its own records object
against itself rather than against the records object of the
other buffer. This meant that equals would return true even
if two buffers contained different records.
Added unit tests to verify that UnmodifiableBuffer compares both
its internal IBuffer and its list of records.
Additionally, several test files did not match maven's conventions (should be *Test but was *Tests) and so were not run when executing mvn test, so I renamed them.

Filed issue #81 to associate with this PR as well.


Tiling with .glTF

Hi,
we are currently optimizing download size and memory consumption of our models. We have multiple variations (colors, textures) for each model we download and load at runtime. We need to reuse textures as much as possible. We want to  use .glTF, because .sfb does not provide file references to textures.
Tiling
Big memory optimization for us is tiling. Here #190 is described how to tile textures with .sfb.
glTF Documentation says something about scaling, but it seems to be not working. Our modelers use Blender with .glTF exporter 2.0.

Can you give any advice how to tile with .glTF?

We also designing some sort of "model config json" needed for iOS models where we use scale factor for tiling programmatically for given material, which iOS can access by the name.

Is it possible to tile material textures programmatically?

As described #315, now is only index you can use to access material in sceneform. Would be really helpful for us to be able to use also material name to access and modify material programmatically.
Thanks for any advice!

I have same problem with this asset
tiling test.zip

I have the same problem. How can i change the uv scaling for a texture on runtime?

#825


tetex: fix darwin build

needs backport release-24.05 tag
Description of changes
specify -std=gnu89 and -std=c++03 to fix the configure script and build. the tarballs were last updated in 2006 and the package is no longer maintain so use standards from the era.
https://hydra.nixos.org/build/259738560
ZHF: https://github.com/NixOS/nixpkgs/issues/309482

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

@ofborg build mmixware

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

4 packages built:

grafana_reporter
mmixware
tetex
ucblogo

Result of nixpkgs-review pr 314746 run on x86_64-darwin 1

4 packages built:

grafana_reporter
mmixware
tetex
ucblogo


NodeJS Server Mode?

Hi there,
Thanks for the great version of TiddlyWiki!
I see that TiddlyWiki5 can be run as a NodeJS server. I was just wondering if this is possible with TiddlyRoam as well.
Thanks,
Oliver

You can try do simple: run TiddlyWiki5 in node.js server mode and then drag-n-drop this tiddlyroam.html to your running TW5. It will install all required plugins then and do autosave. You will have tiddlyroam as a result, running on serve.

you can use "import html" feature in https://github.com/tiddly-gittly/TidGi-Desktop to import tiddlyroam as a nodejs wiki and use it in this GUI app.


pipeline job "releaseTag" has multiple uses that don't currently align

Platform:
ALL
Architecture:
ALL
The pipeline build job has a "releaseTag" parameter which has multiple purposes:

Defines what level of code to checkout to build
Defines what level of openj9 extensions to checkout for openjdk-test jobs
Defines the "label" to be used for the published "released" build on the website

This currently means for openj9 we cannot specify a releaseTag of say "jdk-11.0.2+9_openj9-0.12.0" so we can label the published release appropriately, as this does not exist as a git "tag", and as a result all the test jobs fail.

Can't remember where else I've already mentioned this but could do with being here too - adding a releaseName in addition to releaseTag to separate out the publish label would be useful until the issues with Windows tagging are resolved.
Ref the test jobs, potentially the same switch which we have in the build scripts (Ref: https://github.com/AdoptOpenJDK/openjdk-build/blob/master/sbin/prepareWorkspace.sh#L80), which is to check out a branch if specified, and avoid checking out the tag when on openj9 would be preferable logic (FYI @smlambert)

@andrew-m-leonard I don't think releaseTag exists in our pipelines anymore, it's been replaced with releaseType and scmReference. This should be good to close

@andrew-m-leonard I don't think releaseTag exists in our pipelines anymore, it's been replaced with releaseType and scmReference. This should be good to close

Correct, we resolved this in overhaul v3 IIRC


KAFKA-16770; [2/2] Coalesce records into bigger batches

This patch is the continuation of https://github.com/apache/kafka/pull/15964. It introduces the records coalescing to the CoordinatorRuntime. It also introduces a new configuration group.coordinator.append.linger.ms which allows administrators to chose the linger time or disable it with zero. The new configuration defaults to 10ms.
I am still working on the tests so I keep the PR as a draft for now. However, all the existing tests that uses no linger are all passing. I will push the new tests asap.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@jeffkbkim @jolshan Thanks for your comments. I addressed them. I pushed the tests and a few fixes too.

@jolshan Committing offsets above the last written offset is not allowed so it is probably not necessary. We already have tests to validate the logic to commit offsets up to the last written offset.

@dajac makes sense. I guess I just didn't know if there was a case where we had one in a batch so it wasn't written to the log yet, but we tried to commit offsets.
Thanks for clarifying.

Merged to trunk and to 3.8.


Upgrade to Go 1.19

Following from #173, at what point should we consider upgrading the codebase and our tooling to use Go 1.19?
And in general, what are our criteria for updating to support a new version of Go? On the Rust side of development at Informal, we always update to the latest stable version of Rust the moment it's released.

The SDK updated to go 1.20 as of last week and on the README it says it requires 1.20+
https://github.com/cosmos/cosmos-sdk/commit/ad847c4e4d1d33a12f7409d482834e6522910177


Support redirecting using window.location

Have a non-SPA Angular application that basically is a collection of multiple small Angular apps. If I redirect to another page using window.location Protractor I get the Error while waiting for Protractor to sync with the page message.
To get around this I currently have to put in something like browser.sleep(3000); but would be nice if I didn't have to slow down the test with this sleep and be worried about test breakage in case the redirect for some reason took longer than 3 seconds in this case.

I'm going to go ahead and close this since we have some usable (albeit a little messy) workarounds like turning off synchronization before redirecting (which is what I currently do to handle flows in an application that move through non-angular pages) and we haven't seen any action on this issue in a year and a half.
Please feel free to re-open if there's more work to do here.


new themes

new themes:

iceage
japanesesakura
neon
peachorange

Wohooo!  Really cool! So hard to say which of those I like more!

I moved your themes now to a subfolder! https://github.com/JabRef/themes.jabref.org/tree/main/themes/LIghtTheme/DinoGirls Light Themes


fix: Update InstanceType Overhead Calculation

Fixes #
Description
Updates the instance type overhead calculation by:

Ensuring that there are no defaults for systemReserved values since AL2, Ubuntu, BR and other images (including kubelet itself) does not assume defaults for system reserved values
Updates the eviction threshold overhead calculation to ensure that nodefs.available is taken into account when determining the amount of available ephemeral storage that can be leveraged by pods

How was this change tested?

make presubmit
Manual deployment and validation of allocatable on AL2, Ubuntu, and BR

Does this change impact docs?

[x] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[ ] No

Release Note

None

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Here's the results of the overhead diff after analyzing an array of instance types and sizes:
Before PR (0 VMMemoryOverhead)
allocatable-diff.csv
After PR (0 VMMemoryOverhead)
allocatable-diff-after.csv
You can see that the allocatable calculation is now almost exactly correct but there needs to be some refinement of the vmOverhead estimation

This broke t4g.small, prior to this change:
1442111488 - Actual Node Allocatable
1486880768 - Current estimate (-44,769,280)
1382023168 - Previous estimate (60,088,320)
We're actually closer to the real allocatable value, but the problem is we now over-estimate and launch nodes that don't fit the pod.
See https://github.com/aws/karpenter/issues/3937


Add "Force" flag to Restore

Feature request
Add "Force" flag to Restore
Functional impact
I have a web project with a libman entry for a library project I've installed using the filesystem provider. As I make changes to the library files, they are not updated in the target project even after a restore.
I've gotten around the issue by using the libman CLI to clean and restore as a pre-build step, but it'd be nice to have a force flag available in the config (and in the CLI for that matter) for restoring.

I'm currently using npm to get packages and then libman with a filesystem provider to copy the desired files from node_modules to the desired locations. The problem I'm running into is the same as here, in that even when I upgrade the package with npm, the files don't get copied on build. I believe this is due to the fact that the files from npm all seem to have a write time in 1985, so the file isn't being considered updated.
A force flag would fix my issue, but aside from that, allowing for other checks to determine if a file is updated would also be useful (e.g. comparing file size or a file hash). Also, allowing for a proxy file (containing version number or what have you) at the library level to decide if files should be recopied may also be worth considering.


Automatically choose some interface combinations

on factory default boot.
This allows the system to switch interfaces from the newer ones in the
default config (e.g. em0 em1) back to the interfaces used by:
Alix - vr1 vr0
APU - re1 re2
that match the WAN and LAN labels printed on many existing devices.
It means these devices can boot the default config and this will
automatically detect that there is no em0/em1 and will instead select
whatever exists out of vr1/vr0 or re1/re2. This avoids the user having
to use the serial cable to do interface assignment when starting a brand
new image, or when resetting to factory defaults. It could easily be
extended to other common interface combinations.
For me, this (or similar) would be very beneficial. At remote sites it
is really good if it is possible to do reset to factory defaults, or put
a fresh CF/SD card in, and the system boots without needing to connect a
serial cable and do interface assignment that way.
This is a resubmit of PR #1602 and is integrated with yesterday's change
to the pfSense repo folder naming.

Closing in favor of integrated newer version in https://github.com/pfsense/pfsense/pull/2185


no authorize.js output due to running in docker remotely

Hey,
I am not running magic mirror locally on a raspberry pi but on my main unraid server in a docker container for ease of syncing up multiple screens.
Because of this, I can only access the command line remotely when configuring my modules.
Is there a way to run the node authorize.js and complete the installation?

For what it is worth I'm having the same problem. I'm not sure that running "npm install" in the module directory is the right thing either given the docker environment.

I have a similar problem.
I'm running MM on a Pi Zero, as per these instructions:
https://thesmarthomejourney.com/2022/09/02/magicmirror²-on-pi-zero-w/#Using_a_the_MagicMirror_scripts
I therefore have similar problems being unable to launch a browser.
Maybe there's a way to get the launch URL so the xserver Oliver uses could be used?

Hey guys, I've just recently started using magicmirror for the first time and had this problem. I'm running magicmirror in docker via my Synology, here's what I did to fix:
I have my config/modules/css folders on a share on my Synology that are mounted to magicmirror on startup. This is so I can update the image and not lose any config.
Prereqs:

You will need node installed on a separate machine
You will need to have your credentials.json copied to the directory before you start

Steps:

Connect to the share on the computer where you installed node, so you can browse the files i.e. using finder, windows explorer etc.
Open a terminal to the folder where authorize.js is
Run node authorize.js
Wait about 30 seconds, and your browser will automatically open so you can auth

Sorry if this is hard to read. Happy to clarify anything if you need.

I'm trying to use your solution @sidevesh but it seems that I'm doing something wrong, I can't see any logging in the console when running authorize.js so I can't figure out what's wrong, it posts to slack but does not seem to do anything when the link is pasted in the thread as a reply, have you seen this bug before? I've looked at the bot's permissions but it should work. any tips? :D

@WinkelmannVictor I am almost certain that its a case of all the right permissions not having being provided to the bot, can you share a list of all the oauth scopes you have set for the bot ?

the script also creates a log file in tmp, you can look into where that is exactly in the script and check the contents of the log to see if you can debug the issue.

here is the permissions:


IsolationForest panic: 0 ClassAttributes (1 expected)

Hello,
I'm playing around and trying to get an IsolationForest working for some anomaly detection. I seem to be running into an issue whereby i dont have any ClassAttributes set. Looking at the example here i don't really see anything specific about setting class attributes or anything and don't see any obvious fields in the example gaussian csv file either.
It feels like it wants me to set a class attribute but i don't think i should need to for Isolation Forest no?
Here is my code as an example:
package main

import (
	"encoding/json"
	"fmt"
	"io/ioutil"
	"net/http"
	"sync"

	"github.com/sjwhitworth/golearn/base"
	"github.com/sjwhitworth/golearn/trees"
	"gonum.org/v1/gonum/mat"
)

// Create a wait group
var wg sync.WaitGroup

// LagsN defines number of lags to make
var LagsN = 2

// Urls define a list of api calls we want data from
var Urls = [1]string{
	//"https://london.my-netdata.io/api/v1/data?chart=system.cpu&format=json&after=-4",
	"https://london.my-netdata.io/api/v1/data?chart=system.net&format=json&after=-200",
	//"https://london.my-netdata.io/api/v1/data?chart=system.load&format=json&after=-4",
	//"https://london.my-netdata.io/api/v1/data?chart=system.io&format=json&after=-3",
}

type netdataResponse struct {
	Labels []string    `json:"labels"`
	Data   [][]float64 `json:"data"`
}

// Get a gonum matrix from the netdata api with specified nLags
func getX(url string, nLags int, c chan mat.Matrix) {

	// Create data to store response
	var data netdataResponse

	// Need to make sure we tell wait group we done
	defer wg.Done()

	// Get response
	resp, _ := http.Get(url)
	bodyBytes, _ := ioutil.ReadAll(resp.Body)

	// Unmarshal into dataMap
	_ = json.Unmarshal([]byte(bodyBytes), &data)

	// Flatten data into one slice, ignoring the first column which is "time", and adding nLags
	nData := len(data.Data)
	nDims := len(data.Labels) - 1
	nCols := nDims + (nLags * nDims)
	nRows := nData - nLags

	// Make flat slice to put data into
	dataFlat := make([]float64, nCols*nRows)

	// Loop over and add lags to flat data
	i := 0
	for t := range data.Data {
		fmt.Println(data.Data[t])
		if t >= nLags {
			for dim := range data.Data[t] {
				// Ignore time which is the first dim in the response
				if dim > 0 {
					// Add each lag
					for l := 0; l <= nLags; l++ {
						dataFlat[i] = data.Data[t-l][dim]
						i++
					}
				}
			}
		}
	}

	// Create gonum dense matrix from dataFlat
	x := mat.NewDense(nRows, nCols, dataFlat)

	// Send to channel
	c <- x

}

func main() {

	// Create a channel the size of number of api calls we need to make
	dataChannel := make(chan mat.Matrix, len(Urls))

	// Kick off a go routine for each url
	for _, url := range Urls {
		wg.Add(1)
		go getX(url, LagsN, dataChannel)
	}

	// Handle synchronization of channel
	wg.Wait()
	close(dataChannel)

	// Pull each response from channel
	for x := range dataChannel {

		// Print matrix x
		fmt.Printf("X:\n %v\n\n", mat.Formatted(x, mat.Prefix(" "), mat.Excerpt(10)))

		// Create instances
		r, c := x.Dims()
		instances := base.InstancesFromMat64(r, c, mat.DenseCopyOf(x))
		fmt.Println(instances)

		// Create forest
		forest := trees.NewIsolationForest(10, 10, 100)

		// Fit forest
		forest.Fit(instances)

		// Predict on instances to get scores
		preds := forest.Predict(instances)

		// Let's find the average and minimum Anomaly Score for normal data
		var avgScore float64
		var min float64
		min = 1
		for i := 0; i < len(preds); i++ {
			temp := preds[i]
			avgScore += temp
			if temp < min {
				min = temp
			}
		}
		fmt.Println(avgScore / 1000)
		fmt.Println(min)

		fmt.Println("Anomaly Scores are ")
		for i := range preds {
			fmt.Println(preds[i])
		}

	}

}

And my output:
➜  learn-go git:(main) ✗ go run scripts/netdataGoNum.go
[1.609452054e+09 77.81402 -117.20517]
[1.609452053e+09 95.26177 -182.4566]
[1.609452052e+09 183.7658 -149.93954]
[1.609452051e+09 63.5156 -106.90236]
[1.60945205e+09 105.81358 -268.4757]
[1.609452049e+09 95.26471 -228.5053]
[1.609452048e+09 149.17166 -77.10375]
...
...
[1.609451885e+09 18.02243 -13.352751]
[1.609451884e+09 33.20156 -130.75358]
[1.609451883e+09 127.26549 -312.6093]
[1.609451882e+09 180.4365 -133.4438]
[1.609451881e+09 7.980919 -10.109821]
[1.60945188e+09 12.7004 -67.86969]
[1.609451879e+09 30.57802 -234.2778]
[1.609451878e+09 118.38961 -251.7482]
[1.609451877e+09 188.8146 -84.43673]
[1.609451876e+09 27.79418 -132.28655]
[1.609451875e+09 17.50297 -16.629344]
[1.609451874e+09 46.46548 -52.69503]
[1.609451873e+09 138.70405 -126.53562]
[1.609451872e+09 227.7109 -186.4979]
[1.609451871e+09 55.26046 -48.6947]
[1.60945187e+09 36.8918 -33.45698]
[1.609451869e+09 33.983 -42.40188]
[1.609451868e+09 135.65547 -76.88999]
[1.609451867e+09 183.6133 -30.55653]
[1.609451866e+09 17.85453 -20.09791]
[1.609451865e+09 38.74968 -44.52087]
[1.609451864e+09 62.9204 -74.47051]
[1.609451863e+09 102.00025 -32.32786]
[1.609451862e+09 183.9357 -84.19254]
[1.609451861e+09 33.92577 -147.15892]
[1.60945186e+09 32.15584 -54.7018]
[1.609451859e+09 13.1178 -9.887853]
[1.609451858e+09 92.97254 -22.72811]
[1.609451857e+09 194.8131 -40.32558]
[1.609451856e+09 17.69448 -34.85213]
[1.609451855e+09 12.857935 -136.00853]
X:
 Dims(198, 6)
 ⎡  183.7658    95.26177    77.81402  -149.93954   -182.4566  -117.20517⎤
 ⎢   63.5156    183.7658    95.26177  -106.90236  -149.93954   -182.4566⎥
 ⎢ 105.81358     63.5156    183.7658   -268.4757  -106.90236  -149.93954⎥
 ⎢  95.26471   105.81358     63.5156   -228.5053   -268.4757  -106.90236⎥
 ⎢ 149.17166    95.26471   105.81358   -77.10375   -228.5053   -268.4757⎥
 ⎢  208.5272   149.17166    95.26471  -110.52662   -77.10375   -228.5053⎥
 ⎢  62.14063    208.5272   149.17166   -181.5678  -110.52662   -77.10375⎥
 ⎢  99.34486    62.14063    208.5272  -102.04994   -181.5678  -110.52662⎥
 ⎢  64.42528    99.34486    62.14063   -120.6335  -102.04994   -181.5678⎥
 ⎢  95.16334    64.42528    99.34486    -59.2533   -120.6335  -102.04994⎥
  .
  .
  .
 ⎢   62.9204    38.74968    17.85453   -74.47051   -44.52087   -20.09791⎥
 ⎢ 102.00025     62.9204    38.74968   -32.32786   -74.47051   -44.52087⎥
 ⎢  183.9357   102.00025     62.9204   -84.19254   -32.32786   -74.47051⎥
 ⎢  33.92577    183.9357   102.00025  -147.15892   -84.19254   -32.32786⎥
 ⎢  32.15584    33.92577    183.9357    -54.7018  -147.15892   -84.19254⎥
 ⎢   13.1178    32.15584    33.92577   -9.887853    -54.7018  -147.15892⎥
 ⎢  92.97254     13.1178    32.15584   -22.72811   -9.887853    -54.7018⎥
 ⎢  194.8131    92.97254     13.1178   -40.32558   -22.72811   -9.887853⎥
 ⎢  17.69448    194.8131    92.97254   -34.85213   -40.32558   -22.72811⎥
 ⎣ 12.857935    17.69448    194.8131  -136.00853   -34.85213   -40.32558⎦

Instances with 198 row(s) 6 attribute(s)
Attributes:
        FloatAttribute(0)
        FloatAttribute(1)
        FloatAttribute(2)
        FloatAttribute(3)
        FloatAttribute(4)
        FloatAttribute(5)

Data:
        183.77 95.26 77.81 -149.94 -182.46 -117.21
        63.52 183.77 95.26 -106.90 -149.94 -182.46
        105.81 63.52 183.77 -268.48 -106.90 -149.94
        95.26 105.81 63.52 -228.51 -268.48 -106.90
        149.17 95.26 105.81 -77.10 -228.51 -268.48
        208.53 149.17 95.26 -110.53 -77.10 -228.51
        62.14 208.53 149.17 -181.57 -110.53 -77.10
        99.34 62.14 208.53 -102.05 -181.57 -110.53
        64.43 99.34 62.14 -120.63 -102.05 -181.57
        95.16 64.43 99.34 -59.25 -120.63 -102.05
        173.32 95.16 64.43 -54.71 -59.25 -120.63
        7.46 173.32 95.16 -7.78 -54.71 -59.25
        29.81 7.46 173.32 -37.05 -7.78 -54.71
        55.71 29.81 7.46 -83.94 -37.05 -7.78
        107.86 55.71 29.81 -110.74 -83.94 -37.05
        192.31 107.86 55.71 -138.21 -110.74 -83.94
        23.45 192.31 107.86 -22.33 -138.21 -110.74
        15.75 23.45 192.31 -69.69 -22.33 -138.21
        30.16 15.75 23.45 -170.31 -69.69 -22.33
        109.99 30.16 15.75 -85.85 -170.31 -69.69
        183.24 109.99 30.16 -34.19 -85.85 -170.31
        21.14 183.24 109.99 -33.23 -34.19 -85.85
        63.41 21.14 183.24 -80.36 -33.23 -34.19
        95.98 63.41 21.14 -69.06 -80.36 -33.23
        99.39 95.98 63.41 -25.71 -69.06 -80.36
        174.95 99.39 95.98 -75.84 -25.71 -69.06
        30.05 174.95 99.39 -134.12 -75.84 -25.71
        10.29 30.05 174.95 -12.47 -134.12 -75.84
        14.40 10.29 30.05 -31.22 -12.47 -134.12
        97.43 14.40 10.29 -44.69 -31.22 -12.47
        ...
168 row(s) undisplayed
panic: 0 ClassAttributes (1 expected)

goroutine 1 [running]:
github.com/sjwhitworth/golearn/trees.preprocessData(0x7b8b40, 0xc0004f8330, 0xc0000920c0, 0xc0001a4c00, 0x5d8)
        /home/andre/go/src/github.com/sjwhitworth/golearn/trees/isolation.go:224 +0x1f8
github.com/sjwhitworth/golearn/trees.(*IsolationForest).Fit(0xc0000fdf48, 0x7b8b40, 0xc0004f8330)
        /home/andre/go/src/github.com/sjwhitworth/golearn/trees/isolation.go:139 +0x50
main.main()
        /home/andre/repos/learn-go/scripts/netdataGoNum.go:115 +0x64e
exit status 2

I'm new to Go and Golearn so pretty sure i might be doing something silly somewhere but can't really see anything obvious.
I might try just add a column of all '0's and maybe try add that as the class and see if that fixes it which i guess could be ok if just means i'm assuming all my training data to be 'normal' which is reasonable.
Anyway just wanted to see if i could get some advice or pointers as to if this is some sort of issue or just me doing something a little wrong.
Cheers,
Andy

Update on this one - i got a sort of hacky workaround working i think:
package main

import (
	"encoding/json"
	"fmt"
	"io/ioutil"
	"net/http"
	"sync"

	"github.com/sjwhitworth/golearn/base"
	"github.com/sjwhitworth/golearn/trees"
	"gonum.org/v1/gonum/mat"
)

// Create a wait group
var wg sync.WaitGroup

// LagsN defines number of lags to make
var LagsN = 2

// Urls define a list of api calls we want data from
var Urls = [1]string{
	//"https://london.my-netdata.io/api/v1/data?chart=system.cpu&format=json&after=-4",
	"https://london.my-netdata.io/api/v1/data?chart=system.net&format=json&after=-10",
	//"https://london.my-netdata.io/api/v1/data?chart=system.load&format=json&after=-4",
	//"https://london.my-netdata.io/api/v1/data?chart=system.io&format=json&after=-3",
}

type netdataResponse struct {
	Labels []string    `json:"labels"`
	Data   [][]float64 `json:"data"`
}

// Get a gonum matrix from the netdata api with specified nLags
func getX(url string, nLags int, c chan mat.Dense) {

	// Create data to store response
	var data netdataResponse

	// Need to make sure we tell wait group we done
	defer wg.Done()

	// Get response
	resp, _ := http.Get(url)
	bodyBytes, _ := ioutil.ReadAll(resp.Body)

	// Unmarshal into dataMap
	_ = json.Unmarshal([]byte(bodyBytes), &data)

	// Flatten data into one slice, ignoring the first column which is "time", and adding nLags
	nData := len(data.Data)
	nDims := len(data.Labels) - 1
	nCols := nDims + (nLags * nDims)
	nRows := nData - nLags

	// Make flat slice to put data into
	dataFlat := make([]float64, nCols*nRows)

	// Loop over and add lags to flat data
	i := 0
	for t := range data.Data {
		fmt.Println(data.Data[t])
		if t >= nLags {
			for dim := range data.Data[t] {
				// Ignore time which is the first dim in the response
				if dim > 0 {
					// Add each lag
					for l := 0; l <= nLags; l++ {
						dataFlat[i] = data.Data[t-l][dim]
						i++
					}
				}
			}
		}
	}

	// Create gonum dense matrix from dataFlat
	x := mat.NewDense(nRows, nCols, dataFlat)

	// Create vector of zeros to use as a dummy class attribute for golearn
	var xFinal mat.Dense
	zeros := make([]float64, nRows)
	z := mat.NewVecDense(nRows, zeros)
	xFinal.Augment(z, x)
	//fmt.Printf("xFinal:\n %v", xFinal)

	// Send to channel
	c <- xFinal

}

func main() {

	// Create a channel the size of number of api calls we need to make
	dataChannel := make(chan mat.Dense, len(Urls))

	// Kick off a go routine for each url
	for _, url := range Urls {
		wg.Add(1)
		go getX(url, LagsN, dataChannel)
	}

	// Handle synchronization of channel
	wg.Wait()
	close(dataChannel)

	// Pull each response from channel
	for x := range dataChannel {

		// Create instances
		r, c := x.Dims()
		instances := base.NewDenseCopy(base.InstancesFromMat64(r, c, &x))

		// Set a class attribute
		attrArray := instances.AllAttributes()
		instances.AddClassAttribute(attrArray[0])

		// Look at instances
		fmt.Println(instances)

		// Create forest
		forest := trees.NewIsolationForest(10, 10, 100)

		// Fit forest
		forest.Fit(instances)

		// Predict on instances to get scores
		preds := forest.Predict(instances)

		// Let's find the average and minimum Anomaly Score for normal data
		var avgScore float64
		var min float64
		min = 1
		for i := 0; i < len(preds); i++ {
			temp := preds[i]
			avgScore += temp
			if temp < min {
				min = temp
			}
		}
		fmt.Println(avgScore / 1000)
		fmt.Println(min)

		fmt.Println("Anomaly Scores are ")
		for i := range preds {
			fmt.Println(preds[i])
		}

	}

}

Which gives:
➜  learn-go git:(main) ✗ go run scripts/netdataGolearn.go
[1.609537808e+09 99.69887 -23.02496]
[1.609537807e+09 183.4741 -33.48168]
[1.609537806e+09 17.46232 -66.95385]
[1.609537805e+09 18.37029 -180.6296]
[1.609537804e+09 17.37755 -123.59229]
[1.609537803e+09 105.55665 -37.93892]
[1.609537802e+09 192.9129 -131.94132]
[1.609537801e+09 65.04145 -197.7705]
[1.6095378e+09 53.87894 -80.21452]
[1.609537799e+09 62.1585 -133.25699]
Instances with 8 row(s) 7 attribute(s)
Attributes:
*       FloatAttribute(0)
        FloatAttribute(1)
        FloatAttribute(2)
        FloatAttribute(3)
        FloatAttribute(4)
        FloatAttribute(5)
        FloatAttribute(6)

Data:
        0.00 17.46 183.47 99.70 -66.95 -33.48 -23.02
        0.00 18.37 17.46 183.47 -180.63 -66.95 -33.48
        0.00 17.38 18.37 17.46 -123.59 -180.63 -66.95
        0.00 105.56 17.38 18.37 -37.94 -123.59 -180.63
        0.00 192.91 105.56 17.38 -131.94 -37.94 -123.59
        0.00 65.04 192.91 105.56 -197.77 -131.94 -37.94
        0.00 53.88 65.04 192.91 -80.21 -197.77 -131.94
        0.00 62.16 53.88 65.04 -133.26 -80.21 -197.77
All rows displayed
0.004341934126608612
0.5187841492103988
Anomaly Scores are
0.5407589735670113
0.5502426571317391
0.5187841492103988
0.5410175528845719
0.5718919437242114
0.5436871966572925
0.5496077489659361
0.5259439044674505

Just wondering is there a simpler or cleaner way as not quite sure i fully understand some of the types i'm using like mat.Dense and mat.Matrix and feels like i am flipping back and forth a bit that might add some overhead maybe.
Or would i be safe to just not need to put in the col of 0's and just use the first feature vector as a class attribute and be safe to assume will have no impact on the isolation forest? Had a look at the source code but i don't really understand Go enough yet to be sure if that a safe assumption or not.

Update on this one - i got a sort of hacky workaround working i think:
package main

import (
	"encoding/json"
	"fmt"
	"io/ioutil"
	"net/http"
	"sync"

	"github.com/sjwhitworth/golearn/base"
	"github.com/sjwhitworth/golearn/trees"
	"gonum.org/v1/gonum/mat"
)

// Create a wait group
var wg sync.WaitGroup

// LagsN defines number of lags to make
var LagsN = 2

// Urls define a list of api calls we want data from
var Urls = [1]string{
	//"https://london.my-netdata.io/api/v1/data?chart=system.cpu&format=json&after=-4",
	"https://london.my-netdata.io/api/v1/data?chart=system.net&format=json&after=-10",
	//"https://london.my-netdata.io/api/v1/data?chart=system.load&format=json&after=-4",
	//"https://london.my-netdata.io/api/v1/data?chart=system.io&format=json&after=-3",
}

type netdataResponse struct {
	Labels []string    `json:"labels"`
	Data   [][]float64 `json:"data"`
}

// Get a gonum matrix from the netdata api with specified nLags
func getX(url string, nLags int, c chan mat.Dense) {

	// Create data to store response
	var data netdataResponse

	// Need to make sure we tell wait group we done
	defer wg.Done()

	// Get response
	resp, _ := http.Get(url)
	bodyBytes, _ := ioutil.ReadAll(resp.Body)

	// Unmarshal into dataMap
	_ = json.Unmarshal([]byte(bodyBytes), &data)

	// Flatten data into one slice, ignoring the first column which is "time", and adding nLags
	nData := len(data.Data)
	nDims := len(data.Labels) - 1
	nCols := nDims + (nLags * nDims)
	nRows := nData - nLags

	// Make flat slice to put data into
	dataFlat := make([]float64, nCols*nRows)

	// Loop over and add lags to flat data
	i := 0
	for t := range data.Data {
		fmt.Println(data.Data[t])
		if t >= nLags {
			for dim := range data.Data[t] {
				// Ignore time which is the first dim in the response
				if dim > 0 {
					// Add each lag
					for l := 0; l <= nLags; l++ {
						dataFlat[i] = data.Data[t-l][dim]
						i++
					}
				}
			}
		}
	}

	// Create gonum dense matrix from dataFlat
	x := mat.NewDense(nRows, nCols, dataFlat)

	// Create vector of zeros to use as a dummy class attribute for golearn
	var xFinal mat.Dense
	zeros := make([]float64, nRows)
	z := mat.NewVecDense(nRows, zeros)
	xFinal.Augment(z, x)
	//fmt.Printf("xFinal:\n %v", xFinal)

	// Send to channel
	c <- xFinal

}

func main() {

	// Create a channel the size of number of api calls we need to make
	dataChannel := make(chan mat.Dense, len(Urls))

	// Kick off a go routine for each url
	for _, url := range Urls {
		wg.Add(1)
		go getX(url, LagsN, dataChannel)
	}

	// Handle synchronization of channel
	wg.Wait()
	close(dataChannel)

	// Pull each response from channel
	for x := range dataChannel {

		// Create instances
		r, c := x.Dims()
		instances := base.NewDenseCopy(base.InstancesFromMat64(r, c, &x))

		// Set a class attribute
		attrArray := instances.AllAttributes()
		instances.AddClassAttribute(attrArray[0])

		// Look at instances
		fmt.Println(instances)

		// Create forest
		forest := trees.NewIsolationForest(10, 10, 100)

		// Fit forest
		forest.Fit(instances)

		// Predict on instances to get scores
		preds := forest.Predict(instances)

		// Let's find the average and minimum Anomaly Score for normal data
		var avgScore float64
		var min float64
		min = 1
		for i := 0; i < len(preds); i++ {
			temp := preds[i]
			avgScore += temp
			if temp < min {
				min = temp
			}
		}
		fmt.Println(avgScore / 1000)
		fmt.Println(min)

		fmt.Println("Anomaly Scores are ")
		for i := range preds {
			fmt.Println(preds[i])
		}

	}

}

Which gives:
➜  learn-go git:(main) ✗ go run scripts/netdataGolearn.go
[1.609537808e+09 99.69887 -23.02496]
[1.609537807e+09 183.4741 -33.48168]
[1.609537806e+09 17.46232 -66.95385]
[1.609537805e+09 18.37029 -180.6296]
[1.609537804e+09 17.37755 -123.59229]
[1.609537803e+09 105.55665 -37.93892]
[1.609537802e+09 192.9129 -131.94132]
[1.609537801e+09 65.04145 -197.7705]
[1.6095378e+09 53.87894 -80.21452]
[1.609537799e+09 62.1585 -133.25699]
Instances with 8 row(s) 7 attribute(s)
Attributes:
*       FloatAttribute(0)
        FloatAttribute(1)
        FloatAttribute(2)
        FloatAttribute(3)
        FloatAttribute(4)
        FloatAttribute(5)
        FloatAttribute(6)

Data:
        0.00 17.46 183.47 99.70 -66.95 -33.48 -23.02
        0.00 18.37 17.46 183.47 -180.63 -66.95 -33.48
        0.00 17.38 18.37 17.46 -123.59 -180.63 -66.95
        0.00 105.56 17.38 18.37 -37.94 -123.59 -180.63
        0.00 192.91 105.56 17.38 -131.94 -37.94 -123.59
        0.00 65.04 192.91 105.56 -197.77 -131.94 -37.94
        0.00 53.88 65.04 192.91 -80.21 -197.77 -131.94
        0.00 62.16 53.88 65.04 -133.26 -80.21 -197.77
All rows displayed
0.004341934126608612
0.5187841492103988
Anomaly Scores are
0.5407589735670113
0.5502426571317391
0.5187841492103988
0.5410175528845719
0.5718919437242114
0.5436871966572925
0.5496077489659361
0.5259439044674505

Just wondering is there a simpler or cleaner way as not quite sure i fully understand some of the types i'm using like mat.Dense and mat.Matrix and feels like i am flipping back and forth a bit that might add some overhead maybe.
Or would i be safe to just not need to put in the col of 0's and just use the first feature vector as a class attribute and be safe to assume will have no impact on the isolation forest? Had a look at the source code but i don't really understand Go enough yet to be sure if that a safe assumption or not.

Creating a column of zeros should work OK, I agree that the API is a bit suboptimal (at the time when I wrote this core API in ~2014 or so, there wasn't really a DataFrame-style library available for Golang, maybe something to look at?).

Creating a column of zeros should work OK, I agree that the API is a bit suboptimal (at the time when I wrote this core API in ~2014 or so, there wasn't really a DataFrame-style library available for Golang, maybe something to look at?).

@andrewm4894 I actually wrote the isolation forest code in the library, and I chose to require a class attribute because of the following:
When reading a csv into a FixedDataGrid, golearn automatically chooses one of the columns as a class attribute. Since isolation forest is unsupervised and we don't want to lose on any data, I chose to include the class attribute as part of the training data.
Creating a vector of 0s is fine, but it can impact performance (you are adding a new feature where every data point is the same so there is no anomaly with regards to this single feature). Better than that, just choose one of the normal features and make it the class attribute. Rest of the code should work just fine.

@andrewm4894 I actually wrote the isolation forest code in the library, and I chose to require a class attribute because of the following:
When reading a csv into a FixedDataGrid, golearn automatically chooses one of the columns as a class attribute. Since isolation forest is unsupervised and we don't want to lose on any data, I chose to include the class attribute as part of the training data.
Creating a vector of 0s is fine, but it can impact performance (you are adding a new feature where every data point is the same so there is no anomaly with regards to this single feature). Better than that, just choose one of the normal features and make it the class attribute. Rest of the code should work just fine.

@Yushgoel great thanks - so i will just default to setting the first attribute as the class and not add the dummy vector. Should make things a bit easier on my end.
I'll close this now as am clearer on what's going on. Cheers.

@Yushgoel great thanks - so i will just default to setting the first attribute as the class and not add the dummy vector. Should make things a bit easier on my end.
I'll close this now as am clearer on what's going on. Cheers.


OCR for PDF always return empty string

Why google always return empty string for pdf document?

Hello,
I always have this problem. Yesterday I took it to test this OCR for
application at work.
For image this work good, but for PDF not.
I use google provider, and always when I try this on your website, postman
and in my project, response was empty string.
Language was Serbian(latin), but after that I tried also with English.
PDF when I used file_url:
https://s29.q4cdn.com/175625835/files/doc_downloads/test.pdf
PDF when I used file: file in attachment
Also I give you image of response from postman. Same thing is from your
website and from my project.
[image: image.png]
Greeting, Aleksa! :)
сре, 6. мар 2024. у 17:06 DninoAdnane @.***> је
написао/ла:

Hello @aleksapetkovic25 https://github.com/aleksapetkovic25 ,
Can you provide more information about the issue you are having, for
example a sample file we can test with or the language in which the file is
written !
Are you always having this issue, or it only happens sometimes ?
—
Reply to this email directly, view it on GitHub
https://github.com/edenai/edenai-apis/issues/147#issuecomment-1981218130,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXYOVW75RB73CJIEXZKKGNDYW45KBAVCNFSM6AAAAABEIY34TKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOBRGIYTQMJTGA
.
You are receiving this because you were mentioned.Message ID:
@.***>


resolve so atleast acme with 1 replica works

related to:
https://github.com/helm/charts/issues/10004
Adding affinity for storeconfig job - so it stays on same host as deployment (only works when there is ONE replica ofcourse) - that atleast fixes it.

Hi, I've faced the same issue the other day, so I guess it's still valid. Can we reopen this and ask @nmengin if this PR of @KlavsKlavsen fixes the problem? Or can I help resolving this in any way?


Add run as service option

Please add an option to allow the stream to run on Pi startup.
Use case:  I am using this to monitor a 3D printer and have the PI power on when the Printer is powered on.
Currently, I have to SSH into the PI and run the process.   If I close Putty, my video stream ends.   This Pi is headless and has no GUI installed.

Its fairly easy to set this up as a service:

Run the following command and note down the location for python which python should look like "/usr/bin/python"
Goto the following directory cd /etc/systemd/system/
Create and edit the following file sudo nano picamera2-webui-lite.service
Paste this into the file, in the line "ExecStart" the 1st part should be the result of your "which python" command we did at the start (if its the same then its all good) the 2nd path is the location of the cloned repo with the app.py

[Unit]
Description=Picamera2 WebUI Lite Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/python /home/pi/picamera2-WebUI-Lite/app.py
Restart=always
[Install]
WantedBy=multi-user.target

Save the file
Run sudo systemctl start picamera2-webui-lite.service
Run the following to check the service is running sudo systemctl status picamera2-webui-lite.service
Run the following to enable the service to its running on reboot sudo systemctl enable picamera2-webui-lite.service

An alt to this if you don't want to run the service (maybe you want to see the log for debugging or the likes) you can install something like screen sudo apt install screen and run it like this screen python app.py then it will run it in the background. Then you want to get back to it you can log back in to the system and then run screen -x and it should kick back into the server

Thank you!

Just wanted to thank you again.  Got it running as a service.

You are very welcome. I have put the instructions for making a service on the readme and I will close this issue now


fixing menu background color

fix menu background color and font color

Hey @jinpark when you get  a chance can you look at this?

:+1: I fixed up all you mentioned and Found another mistake where focus of li was black. I just removed it.

lgtm


[BEAM-8507] Augment 'flink_master' pipeline option for Python FlinkRunner (#9918)

[BEAM-8507] Add '[auto]' as a supported execution mode for Python FlinkRunner

This mode is necessary for the execution to work in a predefined environment
where the Flink master address is available, i.e. when a jar is directly
submitted against the Flink cluster or the job server has been pre-configured
with a master address.

[BEAM-8507] Support http protocol scheme for Flink master address

Python uses the requests library to communicate with the Flink master via the
REST API and requires a protocol scheme.
Despite also using the REST API, the Java client does not expect the master
address to contain a protocol scheme. In order to support Python specifying one
in Python, we can remove it in Java.

[BEAM-8507] Ensure that Python FlinkRunner execution works for all deployment scenarios

Please add a meaningful description for your change here

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

Run Java PreCommit

Run Python PreCommit

Python PreCommit timeout.
@Ardagan any objection merging this?

Run Python PreCommit

I think this can be merged. After all, this is a blocker for the release. I just wanted to inform the release manager (@Ardagan) in case it would complicate the release process in any way.

Run Python PreCommit


Build fails with certificate issue

Hi there, I am trying to build from source for my DS220+/DSM 7.0 (installing the available release gives "Invalid file format").
The command I am running is
sudo docker run --rm --privileged --env PACKAGE_ARCH=geminilake --env DSM_VER=7.0 -v $(pwd)/artifacts:/result_spk -v $(pwd)/tarballs:/toolkit_tarballs synobuild

The build is failing with the following error
wget https://netfilter.org/projects/libmnl/files/libmnl-1.0.4.tar.bz2
--2021-10-08 06:28:17--  https://netfilter.org/projects/libmnl/files/libmnl-1.0.4.tar.bz2
Resolving netfilter.org (netfilter.org)... <IP_ADDRESS>, 2001:4b98:dc0:43:216:3eff:fe87:a456
Connecting to netfilter.org (netfilter.org)|<IP_ADDRESS>|:443... connected.
ERROR: cannot verify netfilter.org's certificate, issued by 'CN=R3,O=Let\'s Encrypt,C=US':
  Unable to locally verify the issuer's authority.
To connect to netfilter.org insecurely, use `--no-check-certificate'.
Makefile:26: recipe for target 'libmnl-1.0.4.tar.bz2' failed

I saw that you attempt to mitigate this issue by copying the certificates into the build env on L89 of build.sh, but it doesn't seem to be working for some reason. Any ideas why this might be the case?

The same issue on apollolake
Tried on mac, fedora 34, and on synology itself. (((

Tried add
--no-check-certificate
into all calls of wget in Makefile.
That helped.

Also in dockerfile root ca are installed but I am not sure about openssl version.
1.0.x. has troubles with ISRG Root X1 so maybe updating openssl to 1.1.x would resolve this issue.

Alright people? This could be a workable fix:
https://stackoverflow.com/a/69407725
or
https://stackoverflow.com/a/69440350


import/order: don't force new line on specific pathGroup

I would like to be able to have a specific pathGroup that doesn't force a newline.
My objective would be to have the imports ordered in the following manner (with react before all, but together with the external imports):
import React from "react";
import PropTypes from "prop-types";
import _ from "lodash";

import {Form, Input, Checkbox} from "antd";

At the moment I have this config:
"import/order": [
  "warn",
  {
    "groups": [
      "builtin",
      "external",
      "internal",
      ["parent", "sibling", "index"]
    ],
    "pathGroups": [
      {
        "pattern": "{antd,@ant-design/icons}",
        "group": "external",
        "position": "after"
      }
    ],
    "pathGroupsExcludedImportTypes": ["builtin"],
    "alphabetize": {"order": "asc"},
    "newlines-between": "always"
  }
]

Which forces me to alphabetize all the imports, to something like this:
import _ from "lodash";
import PropTypes from "prop-types";
import React from "react";

import {Form, Input, Checkbox} from "antd";

The only alternative I find is to add a specific pathGroup for react, with:
{
  "pattern": "react",
  "group": "external",
  "position": "before"
}

But this forces me to have a line between the react import and all other external imports.
Is there a way to have a specific pathGroup without newlines at the end?
As an alternative, I would be ok with not alphabetizing the imports on the external group, but I don't think this is possible either.

Disabling alphabetization on a specific group (even when it's enabled on all the groups) is absolutely an option that makes sense to me; a PR is welcome.
It also maybe seems reasonable for newlines-between to take, in addition to a string, some kind of option that allows you to invert the setting between specific pairs of groups - but I'm not confident if this is the best approach. Any schema suggestions?

Disabling alphabetization on a specific group (even when it's enabled on all the groups) is absolutely an option that makes sense to me; a PR is welcome.

Do you prefer to only disable alphabetization on a specific group or to define a specific alphabetization for a group, the same way the global alphabetization is defined? I'm happy to take a go at this!
On the subject of the newline, I thought an alternative could be to define it on the pathGroup setting. The position either be a string ("before"/"after") or an object that also defines a different newline between setting (something like "position": {"pos": "before", "with-newline": false}), which would also override the global newlines-between.
I'm making these suggestions purely from a functional and end-user standpoint, so am not sure if any would have any kind of implementation downside.

Disabling alphabetization on a specific group (even when it's enabled on all the groups) is absolutely an option that makes sense to me; a PR is welcome.

When I read this the first time, what I understood was disabling alphabetization on a specific pathGroup, but after looking into this a bit more I am not totally sure as you could mean to disable it on whole groups. If your idea was the second, I'm not sure what the appropriate schema would be.

re the alphabetization: good point; really it needs to apply to the whole group, which does make the schema tricky. We could extend groups so anywhere it can accept a string "some group", it can also accept an object like { "name": "some group" }, and then that object could also support alphabetize (with the same alphabetize schema as at the root of the rule)?
Re the newlines, in a similar way, I think the setting needs to go on the group, not the pathGroup - the point of pathGroup is to alter in which group something is included; it seems much simpler (both in terms of impl, and mental model) to keep configurations to the granularity of groups only. Thoughts?

I understand your point on the whole logic on groups, and I agree with the part on alphabetization. I think having the groups support objects for additional settings is a good approach.
The newlines part, however, is a bit more tricky, because when we define "newlines-between": "always"  and a pathGroup with position, it forces a newline between a group. From my point of view, this is cool and really useful because it allows us to create an additional level of grouping inside of one of the existing groups. However, having the newlines affect an entire group would override this additional separation on a group.
If you take a look on my example above, if the definition were to not have newlines only on the external group, it would force the antd imports to be together with the others, instead of separate as they are at the moment.
I think it wouldn't be bad to define the newlines on a group as the alphabetization, I just think that it would be useful to also have it on the pathGroups.
I'm sorry if I'm only coming up with problems and not much of a good suggestion, but I've only started recently to use this plugin and don't have such a big picture of the use cases 😅

I'm still not clear on what a good solution would be. I'm happy to review a PR, but I don't want to suggest that just yet because we might discover that all the code needs to be thrown out and replaced with another approach :-)

What status this ticket?

@beatriz  "On the subject of the newline, I thought an alternative could be to define it on the pathGroup setting. The position either be a string ("before"/"after") or an object that also defines a different newline between setting (something like "position": {"pos": "before", "with-newline": false}), which would also override the global newlines-between.
I'm making these suggestions purely from a functional and end-user standpoint, so am not sure if any would have any kind of implementation downside."
It is will be good soluion

@beatriz "On the subject of the newline, I thought an alternative could be to define it on the pathGroup setting. The position either be a string ("before"/"after") or an object that also defines a different newline between setting (something like "position": {"pos": "before", "with-newline": false}), which would also override the global newlines-between. I'm making these suggestions purely from a functional and end-user standpoint, so am not sure if any would have any kind of implementation downside."
It is will be good soluion

Disabling alphabetization on a specific group (even when it's enabled on all the groups) is absolutely an option that makes sense to me; a PR is welcome.

Do you prefer to only disable alphabetization on a specific group or to define a specific alphabetization for a group, the same way the global alphabetization is defined? I'm happy to take a go at this!
On the subject of the newline, I thought an alternative could be to define it on the pathGroup setting. The position either be a string ("before"/"after") or an object that also defines a different newline between setting (something like "position": {"pos": "before", "with-newline": false}), which would also override the global newlines-between. I'm making these suggestions purely from a functional and end-user standpoint, so am not sure if any would have any kind of implementation downside.

It is will be good soluion "with-newline": false

Just an FYI if someone is searching for a solution, this was partially fixed in #2395. The distinctGroup determines whether or not newlines should automatically be generated. I initially tried to implement setting for each individual group (within pathGroup), but I found that to be much less intuitive and harder to use, which is why in the PR, it affects all defined groups.

Interested in this feature.
This is my config:
const config = {
  alphabetize: { order: 'asc' },
  groups: ['builtin', 'external', 'internal', ['parent', 'sibling', 'index']],
  pathGroups: [
    {
      pattern: '{react,react-*,react-*/**}',
      group: 'builtin',
      position: 'before'
    },
    {
      pattern: '{cozy-*,cozy-*/**}',
      group: 'external',
      position: 'after'
    }
  ],
  distinctGroup: true,
  pathGroupsExcludedImportTypes: [
    '{react,react-*,react-*/**,cozy-*,cozy-*/**}'
  ],
  'newlines-between': 'always',
  warnOnUnassignedImports: true
}

It will lint succeed on import order looking exactly like that:
import React from 'react'

import cx from 'classnames'
import PropTypes from 'prop-types'

import Icon, { iconPropType } from 'cozy-ui/transpiled/react/Icon'
import { makeStyles } from 'cozy-ui/transpiled/react/styles'

import Account from '../../assets/icons/Account.svg'

but what I really want is this, as you can see the only difference is that React has no newline after it, but it's still on top, while the cozy-** imports still have their newline after them:
import React from 'react'
import cx from 'classnames'
import PropTypes from 'prop-types'

import Icon, { iconPropType } from 'cozy-ui/transpiled/react/Icon'
import { makeStyles } from 'cozy-ui/transpiled/react/styles'

import Account from '../../assets/icons/Account.svg'

In terms of API I'm not sure, I've seen "with-newline" suggested. I think that would be good for me, but maybe using distinctGroup in pathGroups is nice too?
Like:
    {
     pattern: '{react,react-*,react-*/**}',
     group: 'builtin',
     position: 'before',
     distinctGroup: false
   },

In any case, is this feature something you would like to add? I'm interested in implementing it if we can find a suitable API?

The "help wanted" label indicates that. I agree that a suitable schema would need to be decided in order to implement it.

Hola donde te encuentras ahora


Regression test July 31 2019 lib release

[ ] Run all the E2E tests on the nightly branch on jenkins:
Note: Make sure that ALL the tests are being run (about 51 tests).
OR run them from your computer, pointing to dev17 server.

Additionally, do a quick smoke test (equivalent to the big happy path test) on:

[x]   Safari
[x]  Firefox

Some of e2e are failing: #3898


Migrate a few more var initializations from the Mavlink class constructor list to declarations.

Describe problem solved by the proposed pull request
This PR migrates a few more Mavlink class member variables to their declarations from the constructor list.    Additional PRs will be submitted to complete this work to keep the diff's as simple as possible.
Additional context
This PR continues work from  PR #11608.
Please let me know if you have any questions on this PR!
-Mark

Awesome! Thanks!


[DCE] Consider eliminating values in implementation too.

When a dead value is removed in an interface (when an interface exists), does it help the compiler if the value is removed from the implementation too? Or does the compiler perform the elimination already?

Indeed they are not removed by ocamlopt.
E.g. compiling this file generates lots of dead code: https://gist.github.com/cristianoc/36929feda4695b0322039eb48189186f

This requires having dependencies edge from declaration of an id in the implementation, to the corresponding id in the interface.
Also, id declarations in the implementation should be added to the global table, and marked in a special way. No reporting should happen on ids dead in the implementation, but if the id is also dead in the interface, then dead annotations should be added to both the interface and the implementation.


AutoBone GUI failsafes

It seems many people still have a really bad time understanding AutoBone's requirements and seem to proceed with really really bad results. We should have all we need to stop users from doing really bad stuff. This can all be done GUI-side in its current state and shouldn't require any additional server or SolarXR code.

[ ] #1148

This screen should mention the common issues, like mounting orientation being wrong or not resetting properly.

[ ] #1149

[ ] Minimum 5 trackers connected and assigned (chest, upper legs, lower legs)
[ ] Headset is on and worn (already added, just needs to be communicated better)
[ ] Trackers have no reset warnings
[ ] Optionally implement cancelling the current running recording if the requirements are not longer met? Just an idea but not sure how to implement

Closed to split into two separate issues:
https://github.com/SlimeVR/SlimeVR-Server/issues/1148
https://github.com/SlimeVR/SlimeVR-Server/issues/1149


Getting error when I run :spawn

I did everything as documented but when I run :spawn --userscript swapforqute/main.py, I am getting Userscript exited with status 1. Here is the output of :process

The userscript is rightly installed, but it looks like something's missing in the configuration, since the commands lacks the two required arguments:

The URL you want to swap;
The config file.

Probably, there's some problem in the alias: see this section of the README

Thanks! Now I don't get any errors but when I run
:spawn --userscript ~/.config/qutebrowser/userscripts/swapforqute/main.py -c ~/.config/qutebrowser/userscripts/swapforqute/config.json --cmd 'open' -u reddit.com
It still opens www.reddit.com not the old reddit. My config.json file looks like this;
{
  "www.reddit.com": {
    "out": "old.reddit.com",
    "force_https": true,
    "clean_queries": true
  },
  "reddit.com": {
    "out": "old.reddit.com",
    "force_https": true,
    "clean_queries": true
  }
}

What could be the problem here?

I think you did everything perfectly, but this could happen because the URL is missing the initial https:// or http:// substring; the script doesn't transform the URL and pass it directly to qutebrowser.
My bad, I didn't warned about this behaviour in the Readme because I thought anyone would launch the command from f or F hints like me, but I definitely should explain this. Thanks for the feedback


Fix no-consecutive-blank-lines

PR checklist

[x] bugfix, or enhancement

Overview of change:
Since landing #2201 the tests for no-consecutive-blank-lines fail.
This PR fixes the tests and also simplifies the whole rule logic.

Correctly apply fixes at EOF.
Fix tests.
Simplify collecting consecutive blank lines.

Is there anything you'd like reviewers to focus on?
The error position changes when allowing multiple blank lines. Before it was always at the second line. Now the error is at the first line, that exeeds the limit.

@ajafff thanks!


Build setup and Cosmetics

This is not much, but here goes:
This PR proposes the following (1 commit per proposal):

Adding a .gitignore file to ignore the ng binary
Adding a Makefile with the following targets:

test: to ... run the tests
build: to generate the ng binary
check: fails if any of go vet, golint, gofmt or ineffasign detects any error. This one will be called by travis so that any future PR is checked for these.

Reformatting the code according to gofmt -s so that the travis build passes
Small tweaks to make ineffassign happy

@crawshaw awaiting your feedback on whether you want to keep the go lint and gofmt checks (in which case I'll update the PR) or not (in which case I'll close it 😄 )

No golint please. (For now, I need to spend more time getting to know it. The last integrated version I used was too noisy, but it may be a configuration detail.)
A gofmt check in travis is fine, though could we do it without the makefile? Something like: https://gist.github.com/ngdinhtoan/8c43fd92c379c4760735ec7186f215cf

@crawshaw Done !

FYI, I have been using this pattern a lot in my projects:
https://github.com/go-hep/hep/blob/master/hep_test.go
A go test Test that runs gofmt or goimports and checks that everything is as it should.

@sbinet that's even better, thanks. @jawher would you mind changing this to a go test like that one? Also I'd like to squash this sequence before merging. You can do that if you like, or I can try out this "squash and merge" button.

@crawshaw @sbinet Your feedback has been taken into account, with one change: The TestGoFmt will only look for gofmt (and not goimports) because:

gofmt has a -s flag to detect expressions that can be simplified (redundant type names in slices/structs construction, for k, _ := range xs, etc.)
Also gofmt detects the imports ordering

Thanks!

In case it's helpful (for future consideration), here is an IMO good way to run a gofmt check in Travis:
https://github.com/shurcooL/home/blob/99ba63ab813bd15192b0aae77ef21c9b4332c580/.travis.yml#L14


Simplify sum expressions.

sum(i for i in iterator) -> sum(iterator)

@liesbethvanherpe Could you have a quick look? I removed some anti-patterns from the examples.

+2


chore: python cleanup

isolates the python virtualenvs (root, tests, tpch, bindings/py)
adds python formatting to the top level just fmt
applies python formatting to all py files.

i have no idea why this stage is failing. It works fine locally, but get random unrelated errors in CI.


support the training service: Microsoft PAI

Microsoft PAI (https://github.com/Microsoft/pai) is a resource scheduling and cluster management platform for AI. Some Universities and companies have deploy PAI on their GPU cluster. It would be great to support a training service for PAI, allowing submitting trial jobs on PAI cluster.

Closing this item as OpenPAI is already supported in V0.2.0.


Fix broken "Built with Grunt" badge in README.md

Fix broken "Built with Grunt" badge in README.md.
Current link, with certificate problems: https://cdn.gruntjs.com/builtwith.png
New link, working: https://gruntjs.com/cdn/builtwith.svg

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


python310Packages.aiofile: don't depend on asynctest

This fixes the build on Python 3.11.
Description of changes
Apply https://github.com/mosquito/aiofile/commit/9253ca42022f17f630ccfb6811f67876910f8b13 as path.
I didn't update to 3.8.1 because of https://github.com/mosquito/aiofile/issues/78 and the fact that there are no tests in the sdist.

Things done

Built on platform(s)

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

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

@ofborg build python311Packages.aiofile

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

5 packages built:

home-assistant-component-tests.bmw_connected_drive
python310Packages.aiofile
python310Packages.bimmer-connected
python311Packages.aiofile
python311Packages.bimmer-connected


Cannot send a friend request

Error:
AttributeError: 'str' object has no attribute 'text'

Code:
import robloxapi
cookie = '' # assume this is an actual cookie.
client = robloxapi.client(cookie)
client.Auth.login(cookie)

client.User.AddFriend(644106870)

Please provide the stack trace when u encounter this error

Thank you, Its been fixed in the latest commit.


Mismatch in Feature Names Between Classifier's Training and Prediction Phases

While using the model for classification, a ValueError is raised due to a mismatch between the feature names used during the training phase (fit) and those passed during the inference phase (predict). The features passed at prediction time have inconsistent names compared to those seen during training.
Steps to Reproduce:

Load the trained RF_mining_model.pkl .
Attempt to make predictions using test data obtained from the original dataset's train-test split.
Observe the ValueError due to mismatched feature names.

Expected Behavior: The feature names should match and remain consistent throughout.
Proposed Solution: Training classifier model against the exact feature names as they appear in the dataset.

Can you specify which model is it ?
GBoost or RForest

It was Random Forest.

I want to work on this issue