When overloaded with calls, Eel dies with "eel.js:115 WebSocket connection to '...' failed: Invalid frame header"

Eel version
Eel 0.14.0
Describe the bug
I still have this issue. It happens when eel seems overloaded with messages.
eel.js:115 WebSocket connection to 'ws://localhost:8080/eel?page=index.html' failed: Invalid frame header

Not sure what to do with it right now as this is a total blocker, once it happens Eels just dies.
To Reproduce
I have a system in which thousands of calls are made from the Python code to JS code. After a few seconds of this, I get this issue. I don have a repro code that is standalone, but perhaps having method calls in loop would do it.
Expected behavior
Eel should not die, or should recover if this happens.
Desktop (please complete the following information):
Ubuntu, Chrome

I'm wondering if this could be caused by https://github.com/ChrisKnott/Eel/issues/540

is there any solution?? (tweaks)?

I have the same problem apparently

I made a PR to fix this but it was never merged. The project seems abandoned actually... I'm using my own fork with this fix instead. No more problems.

It's great that you found a way to fix it. It really strikes me that it stopped working suddenly, but I will look into your solution to understand more about the origin of the problem. Thank you very much for answering my message @nosachamos

You bet, good luck!

I'm also having this issue, but I don't have any issues when debugging in the IDE, the problem appears quickly after packaging, and as long as the eel is triggered frequently, I will have a similar problem

I have the same issue, tried the @nosachamos fix which didn't solved it. Damn.

@guillaume-mueller you need my PR
https://github.com/python-eel/Eel/pull/542
This does solve the issue. I wish it had been merged but the project is dead it seems. I had to fork it to use this fix. Then the issue is gone

Your PR is what I was referring to by your "fix". It didn't work. Anyway I went for another way of transferring datas and I don't have the issue. But it is a bit concerning of an issue.

Ok, it worked for me but maybe you faced a different issue. Glad to hear
you dont have this issue anymore.
On Sun, Dec 22, 2024, 8:05 AM Guillaume Müller @.***>
wrote:

Your PR is what I was referring to by your "fix". It didn't work. Anyway I
went for another way of transferring datas and I don't have the issue. But
it is a bit concerning of an issue.
—
Reply to this email directly, view it on GitHub
https://github.com/python-eel/Eel/issues/536#issuecomment-2558467684,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJUA5R2HS3BMPONATVLAYL2G3BJTAVCNFSM6AAAAABUBNYZHSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNJYGQ3DONRYGQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


Add Czech wordlist #148. Update .gitignore.

Hey! Thanks for the PR! Could you provide some information about the origins of this file? Where did you get it from? Did you do any post-processing? ;)

Hey! Thanks for the PR! Could you provide some information about the origins of this file? Where did you get it from? Did you do any post-processing? ;)

The Czech wordlist is from here. It's distributed with the GNU/GPL license. I removed numbers, offensive words, repeating words, and names.

Thanks for the PR! AFAIK including GPL-licensed files in a BSD-licensed project is not permissable without relicensing the entire project as GPL. If there's a BSD-compatible Czech worldlist I would be more than happy to include it


fix(draw_blocks): correct pane-navigation tooltip

Help tooltip is incorrectly labeled as 'alt+tab' for backwards pane navigation. It should be labeled as 'shift+tab' as per the functionality of Backtab from the crossterm crate.

Merged in v0.0.6, but not automatically closed, I can only blame myself


Geospatial View to hide/disable settings if ignored for certain configurations

The marker size scale setting is only use when no marker size column is selected. So if a column is selected the marker size setting should be disabled/hidden.
Depends on AP-19146

For a code example see this https://github.com/spatial-data-lab/knime-geospatial-extension/issues/266.

I may need more documents to implement this function.  I can't find the detailed document about the OneOf function. The example mentioned here only demonstrates for the presented columns, not for the data table column. A good idea the classify the numerical color column settings only appear when the numerical maker color column is being seleted.


Centos 8 Support

Hi,
I work on centos 8 with hetzner server. I had resolve this compatibility.
I did add cd /etc/openvpn/easy-rsa/ because It didn't work on same directory.
Centos 8 haven't tar program and I added for 851 line.
It didn't copy systemd files and I did add to loops.
I tried many times and It worked.

@rection : ran your script on a Google Cloud Platform compute instance of CentOS 8. During execution, received the error
.....
Note: using Easy-RSA configuration from: ./vars

Using SSL: openssl OpenSSL 1.1.1 FIPS  11 Sep 2018
Generating an EC private key
writing new private key to '/etc/openvpn/easy-rsa/pki/private/server_DX8NApNq3FpfdQDr.key.V15kvS2tKF'
-----
Using configuration from /etc/openvpn/easy-rsa/pki/safessl-easyrsa.cnf
Can't open /etc/openvpn/easy-rsa/pki/index.txt.attr for reading, No such file or directory
140467179468608:error:02001002:system library:fopen:No such file or directory:crypto/bio/bss_file.c:72:fopen('/etc/openvpn/easy-rsa/pki/index.txt.attr','r')
140467179468608:error:2006D080:BIO routines:BIO_new_file:no such file:crypto/bio/bss_file.c:79:
Check that the request matches the signature
Signature ok
.....

Not sure if this is significant. How to test? What add'l info desired for you to evaluate?
Thanks

Yes, I know this error this problem derived in easy-rsa. It's opened issue in Openvpn/Easy-rsa 132th issue. It will fix it with openvpn/easyrsa v3.0.7.
Problem reason this
Can't open /etc/openvpn/easy-rsa/pki/index.txt.attr for reading, No such file or directory

also I debug at code with this way:

and I runned script. the /etc/openvpn/easy-rsa/pki/index.txt.attr didn't existed:

I found another closed issue in easy-rsa.

LGTM, can you update the README too?

LGTM, can you update the README too?

Yeah I did @angristan

Thanks, did you actually test on 32 bits? If not we should keep the ❔.

My fault, I forgot :x: sign because centos 8 not support 32 bit. I had seen 32 bit centos 8 in sig groups. Link1 and Link2 I'll change README.md.

Thanks


Enable Integration Tests from Eclipse

Fix #1

This is not necessary, if you use Run configurations in Eclipse, you can add the phantomjs.binary.path VM argument without having to add additional code.


Set the default block size in AbstractTFS to be the default block size in Tachyon

The default block size in AbstractTFS is provided by FileSystem, which is 32MB.
Use default block size in Tachyon to replace the default value in FileSystem.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Tachyon-Pull-Request-Builder/2686/
Test PASSed.

Thanks!


Missing package metav1 in zz_conversions.go

Describe the bug
The package metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" is not imported in zz_conversions.go, when the dependent fields are manually added through the generator-config.yaml.
This concerns the fields with the struct time.Time (in AWS SKD) that are converted to the struct metav1.Time.
I came across this behavior while working on crossplane controllers for the Glue API.
The resources Connection and Crawler have output fields that are missing in the CRDs StatusFields collection.
Example:
The resource Connection has the field CreationTime of type *time.Time that we can observe through GetConnectionOutput.Connection.
To get that field added to ConnectionObservation, I add the following to the generator-config.yaml:
resources:
  Connection:
    fields:
      CreationTime:
        is_read_only: true
        from:
          operation: GetConnection
          path: Connection.CreationTime

After the generation the field appears as expected in zz_connection.go: CreationTime *metav1.Time
Also in zz_conversions.go the field is handled as expected in GenerateConnection():
if resp.Connection.CreationTime != nil {
	cr.Status.AtProvider.CreationTime = &metav1.Time{*resp.Connection.CreationTime}
} else {
	cr.Status.AtProvider.CreationTime = nil
}

Only the package metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" is not imported and thus the code is not compiling.
As a workaround i add this to CreationTime in the generator-config.yaml:
        set:
          - methode: ReadOne
            ignore: true

so that I can simply set the value manually to the field in postObserve().
While playing around with this, I noticed that, when in setup.go the package metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" is imported, the generator manages to correctly import it in zz_conversions.go too (after undoing the workaround in generator-config.yaml) ...
However that is only a considerable workaround as long as I need the package in setup.go for something else.
Steps to reproduce
See above.
Tried another quick test with the same result for resource Broker (service: mq) when adding the field Created.

add field in generator-config.yaml (service: mq) like this:

resources:
  Broker:
    fields:
      Created:
        is_read_only: true
        from:
          operation: DescribeBroker
          path: Created

run make services SERVICES=mq
=> no metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" import in zz_conversions.go

Expected outcome
I would expect the package correctly imported like this in zz_conversions.go:
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
Environment

Crossplane Provider-AWS
Kubernetes version N/A
Using EKS (yes/no), if so version? no
AWS service targeted (S3, RDS, etc.) Glue, MQ

/reopen @haarchri


Question re login

Apologies if there's a better place for asking questions.  I'm porting some code that uses Meteor.loginWithPassword which isn't defined in meteor-client.  I'm unsure if this is a configuration issue or if I need to login in a different way.  Any pointers much appreciated.

Just run meteor add accounts-password (or whatever this is) in your meteor server, re-bundle the client and you're good to go. For some packages few adjustments are required inorder for them to work with ReactNative, but I don't think that auth packages should have any problem with it.

Thanks for the reply.  And adding 'accounts-password' to bundler config.json did add Meteor.loginWithPassword to the generated 'meteor-client.js'.  Thanks.
Now, is there something special I need to get a connection?  The login does not return because I have no connection to the server.  (Server is running and web version is fine.)

This is actually a ReactNative related issue, not a Meteor one. Try changing the URL from localhost to <IP_ADDRESS>, or you can just write your IP explicitly. Don't forget that the localhost of the phone is not the same localhost as your computer's. I'm closing this issue because it gets off-topic.


How to return a object for query sql, not a Future?

This is not possible - moor is asynchronous by design.
There really isn't much more to say about that, but I can try to help you use futures if you give me more context about what you're trying to do.

For example, I wanna implements the abstract class like this https://github.com/MixinNetwork/libsignal_protocol_dart/blob/master/lib/src/state/IdentityKeyStore.dart#L13,  the function getIdentity need to query the SQLite database.

Unfortunately that wouldn't work - you'd have to ask the maintainers of that package to consider making those methods asynchronous.
If everything else fails, you can import dart:cli and use waitFor to synchronously await a future, but I wouldn't recommend that.


login address hijacked

I leave the keep me signed in unchecked.
Recently I added a friend via the Facebook webpage
When I opened Caprine it had his Facebook login address
in my login window.
My friend had already set up caprine with his credentials previously
but yesterday when he started Caprine it had my login address
in his login window
Is there some foul joke or hack at work; what's going on here?
Isn't my login address stored in a file in ~/.config/Caprine/
and if so how can that be changed without me knowing?

Hi @rosoau! I'm currently unaware of any security incident regarding authentication. Something might have gone wrong at work, as you said. Maybe deleting ~/.config/Caprine/ and starting out fresh could help. If you think you have found a potential security compromise, I would suggest you to report the issue upstream so it reaches more people.

Thanks for prompt reply. Which is upstream? sindrehus? this issue has to be known to the developers. I don't know if it is a security because I don't keep signed in and so my password is not stored locally. But just this weird interaction of the browser doings with caprine needs attention.

Yeah. Upstream is sindresorhus/caprine. You are here because at some point you have probably downloaded my fork.
Unfortunately Sindre, project's author, said that the project has now entered "Maintenance mode" which means no new features and only bugfixes. Judging by the commit history in the past few months, activity has stalled. In short, let the main devs know but let me tell you: Caprine has a loooot of security issues (that won't be fixed) and what you found might just be the tip of the iceberg.

Closing this as upstream-related.


Add task to restart lsync after repo-build

(cherry picked from commit 4d43151a01a725c5dc608fea224123404520fa1d)

:+1:

-1, you've cherry picked the wrong commit. You need to cherry pick 5bd4eee9f8e6d018182ee391acec77e3cea6a347

Good catch, thanks @git-harry


Add CastArithmeticOperandProcessor (SonarSource rule 2184)

This PR adds a processor for the rule Math operands should be cast before assignment.
Transformation:
diff --git a/src/test/resources/CastArithmeticOperand.java b/src/test/resources/CastArithmeticOperand.java
index c7ea292..bcfeffc 100644
--- a/src/test/resources/CastArithmeticOperand.java
+++ b/src/test/resources/CastArithmeticOperand.java
@@ -1,93 +1,93 @@
 // Test for rule s2184

 import java.util.Date;

 class CastArithmeticOperand {

     // Tests from https://rules.sonarsource.com/java/type/Bug/RSPEC-2184
-    float twoThirds = 2/3; // Noncompliant; int division. Yields 0.0
-    long millisInYear = 1000*3600*24*365; // Noncompliant; int multiplication. Yields<PHONE_NUMBER>
-    long bigNum = Integer.MAX_VALUE + 2; // Noncompliant. Yields -2147483647
-    long bigNegNum =  Integer.MIN_VALUE-1; // Noncompliant, gives a positive result instead of a negative one.
+    float twoThirds = (float) 2/3;
+    long millisInYear = (((long) 1000*3600)*24)*365;
+    long bigNum = (long) java.lang.Integer.MAX_VALUE + 2;
+    long bigNegNum =  (long) java.lang.Integer.MIN_VALUE-1;
     int seconds;
-    Date myDate = new Date(seconds * 1000); // Noncompliant, won't produce the expected result if seconds > 2_147_483
+    Date myDate = new Date((long) seconds * 1000);

     public long compute(int factor){
-        return factor * 10000; // Noncompliant, won't produce the expected result if factor > 214_748
+        return (long) factor * 10000;
     }

     public float compute2(long factor){
-        return factor / 123; // Noncompliant, will be rounded to closest long integer
+        return (float) factor / 123;
     }

     // Tests from https://github.com/SonarSource/sonar-java/blob/master/java-checks/src/test/files/checks/CastArithmeticOperandCheck.java
     CastArithmeticOperand(int a, long l) {}

     void foo() {
-        CastArithmeticOperand a = new CastArithmeticOperand(1 + 2, 1 + 2); // Noncompliant {{Cast one of the operands of this addition operation to a "long".}}
-        long l1 = 1000 * 3600 * 24 * 365; // Noncompliant {{Cast one of the operands of this multiplication operation to a "long".}}
+        CastArithmeticOperand a = new CastArithmeticOperand(1 + 2, (long) 1 + 2);
+        long l1 = (((long) 1000 * 3600) * 24) * 365;
         l1 += 10 + 2;
         long l2 = 1000L * 3600 * 24 * 365;
-        float f = 4L / 3; // Noncompliant {{Cast one of the operands of this division operation to a "float".}}
-        float f1 = 2 / 3; // Noncompliant {{Cast one of the operands of this division operation to a "float".}}
+        float f = (float) 4L / 3;
+        float f1 = (float) 2 / 3;
         float f2 = 2f / 3;
-        float f3 = 1 / 2 / 2 * 0.5f; // Noncompliant
-        l2 = 1000 * 3600 * 24 * 365; // Noncompliant {{Cast one of the operands of this multiplication operation to a "long".}}
+        float f3 = (((float) 1 / 2) / 2) * 0.5f;
+        l2 = (((long) 1000 * 3600) * 24) * 365;
         l2 = 1000L * 3600 * 24 * 365; // compliant
-        double d = 2 / 3; // Noncompliant {{Cast one of the operands of this division operation to a "double".}}
-        long l3 = 2 + Integer.MAX_VALUE; // Noncompliant {{Cast one of the operands of this addition operation to a "long".}}
-        l3 = 2 - Integer.MIN_VALUE; // Noncompliant {{Cast one of the operands of this subtraction operation to a "long".}}
-        longMethod(1 + 2, 1 + 2);   // Noncompliant {{Cast one of the operands of this addition operation to a "long".}}
+        double d = (double) 2 / 3;
+        long l3 = (long) 2 + Integer.MAX_VALUE;
+        l3 = (long) 2 - Integer.MIN_VALUE;
+        longMethod(1 + 2, (long) 1 + 2);
         longMethod(1 + 2, 1 + 2l);  // Compliant
-        doubleMethod(1 + 2, 1 + 2); // Noncompliant {{Cast one of the operands of this addition operation to a "double".}}
+        doubleMethod(1 + 2, (double) 1 + 2);
         doubleMethod(1 + 2, 1 + 2d);// Compliant
-        floatMethod(1 + 2, 1 + 2);  // Noncompliant {{Cast one of the operands of this addition operation to a "float".}}
+        floatMethod(1 + 2, (float) 1 + 2);
         floatMethod(1 + 2, 1 + 2f); // Compliant
         foo(); //Compliant
         double tst = 1 | 2; // Compliant
         unknownMethod(1 + 2); // Compliant
         longMethod(12 / 7, 12 / 7);   // Compliant dividing two ints into and widening into a long can't cause any harm
-        double d2  = 1 / 2 / 2 * 0.5; // Noncompliant
+        double d2  = (((double) 1 / 2) / 2) * 0.5;
     }

     void longMethod(int a, long l) {}
     void doubleMethod(int a, double d) {}
     void floatMethod(int a, float f) {}

     long l() {
         if (true) {
             return 1 + 2l; // compliant
         } else {
-            return 1 + 2; // Noncompliant {{Cast one of the operands of this addition operation to a "long".}}
+            return (long) 1 + 2;
         }
     }

     double d() {
         if (true) {
             return 1 + 2d; // compliant
         } else {
-            return 1 + 2; // Noncompliant {{Cast one of the operands of this addition operation to a "double".}}
+            return (double) 1 + 2;
         }
     }

     float f() {
         if (true) {
             return 1 + 2f; // compliant
         } else {
-            return 1 + 2; // Noncompliant {{Cast one of the operands of this addition operation to a "float".}}
+            return (float) 1 + 2;
         }
     }

     void test_int_division() {
-        double a = 1 / 2 * 5.0; // Noncompliant {{Cast one of the operands of this integer division to a "double".}}
+        double a = ((double) 1 / 2) * 5.0;
         double b = (1+3) / 5.0; // Compliant
-        double c = ((1 + 0) / 2 + 0) / 5.0; // Noncompliant {{Cast one of the operands of this integer division to a "double".}}
+        double c = ((((double) 1 + 0) / 2) + 0) / 5.0;
     }

     void test_constructors() {
-        java.util.Date date1 = new java.util.Date(2 + 1); // Noncompliant {{Cast one of the operands of this addition operation to a "long".}}
+        java.util.Date date1 = new java.util.Date((long) 2 + 1);
         java.util.Date date2 = new java.util.Date("today"); // Compliant
     }

 }

Nice, could you document this new supported rule in the README? Thanks!

Nice, could you document this new supported rule in the README?

Yes, I will do it, but I will put this PR on hold for now just because I will first prepare the repo containing the current version of Sonarqube-repair for releasing it before starting to add new features.

@monperrus, I did rebase and organize this PR according to our guidelines for new-processor pull-requests, and now it's ready to be reviewed!

That's great, thanks @fermadeiral


Update Dockerfile

install pwgen

@SergeyBataev Thanks for the patch, could you add it to 2.6/Dockerfile too?

Thanks @SergeyBataev !


Link to "Total Findings" in engagement dashboard points to the wrong page

When viewing an engagement, the metrics dashboard link for Total Findings points to the /false_positive handler
Steps to reproduce
Steps to reproduce the behavior:

Open an Engagement from the "All Engagements" menu link
Click "Metrics" in the ribbon
Click the "Total Findings" link above the graph
Browser is directed to /false_positive view

Expected behavior
User should be directed to a view of all findings, not false positives.
Deployment method (select with an X)

[ ] Kubernetes
[ ] Docker
[ ] setup.bash / legacy-setup.bash

Environment information

DefectDojo demo server (https://demo.defectdojo.org/)

confirmed

@wturnes-flexion can you confirm it is now solved?

Looks fixed to me


Log an Additional Fields During Exception

A few questions before you begin:

Is this an issue related to the Serilog core project or one of the sinks or
community projects.
This issue list is intended for Serilog Elasticsearch Sink issues. If this issue relates to another sink or to the code project,
please log on the related repository.  Please use Gitter chat and Stack Overflow  for discussions and questons.

Does this issue relate to a new feature or an existing bug?

[ ] Bug
[x] New Feature

What version of Serilog.Sinks.Elasticsearch is affected?  Please list the related NuGet package.
What is the target framework and operating system? See target frameworks & net standard matrix.

[x] netCore 2.0
[ ] netCore 1.0
[ ] 4.7
[ ] 4.6.x
[ ] 4.5.x

Please describe the current behavior?
The default exception fields are written into the buffer file.
Please describe the expected behavior?
I want to write more fields when exception happened, like the requester IP address for the example.
If the current behavior is a bug, please provide the steps to reproduce the issue and if possible a minimal demo of the problem

Might not be specific to this sink. There are Serilog packages out there to enhance the logevents for exceptions. See https://github.com/RehanSaeed/Serilog.Exceptions for example. Is that what you are after?

Old issue, cleaning up. Still facing this issue, feel free to reopen.


Knight Tour Problem in C++

Description
Documentation of Knight Tour Problem in C++
Domain
C/CPP
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/assign


dtype conversion when copying sparse matrices

The copy of a sparse matrix does not preserves the dtype of indices and indptr
>>> import numpy as np
>>> from scipy.sparse import random

>>> X = random(10, 10, format='csr')
>>> X.indices.dtype
dtype('int32')

>>> X.indices = X.indices.astype(np.int64)
# Now I have a sparse matrix with int64 indices
>>> X.indices.dtype
dtype('int64')

# But its copy has int32 indices
>>> X.copy().indices.dtype
dtype('int32')

I observed this with scipy 1.4.1. Did not check previous versions.

The .copy() method ends up calling the csr_matrix constructor, which in turn calls get_index_dtype(..., check_contents=True). This means that we look inside the index and indptr arrays to find the minimum acceptable dtype out of int32 and int64. This isn't new behavior, but I do understand that it's a bit surprising.
I should also note that there's a possibly undocumented constraint on sparse matrix backing arrays: indices and indptr must have the same dtype. This is required for ease of interacting with native code. Your scenario still happens when both arrays are manually changed to int64, though.

Also, issue gh-11496 proposed a change that would likely resolve this issue. @evansd hasn't opened a PR yet, but stay tuned for that.

Thanks for the details

This isn't new behavior, but I do understand that it's a bit surprising.

Beyond surprising, it could be considered an unwanted behavior in some situations. For instance using cython's typed memoryviews might lead to a dtype mismatch depending on whether you copied you matrix or not.

Also, issue gh-11496 proposed a change that would likely resolve this issue. @evansd hasn't opened a PR yet, but stay tuned for that.

I'll follow that, thanks !

This is related to discussions in #16774.
#18509 has removed downcasting for indices and indices pointers arrays, and I guess addressing it for copy also makes sense. What do people think?

I think this behavior actually did change in https://github.com/scipy/scipy/pull/18509, but the indices/ inptr are still homogenized. If one of the arrays is 64 bit, then the copy will have both 64bit.
I don't know if this is worth it unless heterogenous dtypes are supported in compiled code (as discussed in:

https://github.com/scipy/scipy/issues/16774

I still can reproduce as of 8cf86bc casting indices and indptr to np.int64:
import scipy
import numpy as np
from scipy.sparse import random

print("Scipy version:", scipy.__version__)

X = random(10, 10, format='csr')
print(X.indices.dtype, X.indptr.dtype)

X.indices = X.indices.astype(np.int64)
X.indptr = X.indptr.astype(np.int64)

print(X.indices.dtype, X.indptr.dtype)

X_copy = X.copy()

print(X_copy.indices.dtype, X_copy.indptr.dtype)

Scipy version: 1.11.0.dev0+2197.8cf86bc
int32 int32
int64 int64
int32 int32

If the compiled code could work with mixed dtypes, I would be 100% maintaining dtypes
But, otherwise there are a upcasts/ allocation when any compiled code is hit. So I don't know if it's worth being a more optimal in the case when someone copies, but then doesn't do anything with the copy.

We have a separate issue now for discussion of mixed dtypes (#16774) so I'll close this issue as "Working as Intended" for now.


Pickle error when trying to compile module that contains ChromadbRM

When I try to use teleprompter with a dspy Module that contains a ChromadbRM, I get a Pickle error.
This is my Module:
class MyRAG(dspy.Module):
    def __init__(self):
        super().__init__()
        from chromadb.utils import embedding_functions
        default_ef = embedding_functions.DefaultEmbeddingFunction()
        self.prog = ChromadbRM(CHROMA_COLLECTION_NAME, CHROMADB_DIR, default_ef, k=3)

    def forward(self, question):
        return self.prog(question)

and this is how I'm using teleprompt:
    trainset = [dspy.Example(question=e['question'], answer=e['answer']) for e in traindata]
    teleprompter = teleprompt.LabeledFewShot()
    optimized_rag = teleprompter.compile(student=MyRAG(), trainset=trainset)

and this is the error:
Traceback (most recent call last):

    optimized_rag = teleprompter.compile(student=MyRAG(), trainset=trainset)
  File "/opt/conda/lib/python3.10/site-packages/dspy/teleprompt/vanilla.py", line 11, in compile
    self.student = student.reset_copy()
  File "/opt/conda/lib/python3.10/site-packages/dspy/primitives/module.py", line 51, in reset_copy
    obj = copy.deepcopy(self)
...
File "/opt/conda/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/opt/conda/lib/python3.10/copy.py", line 161, in deepcopy
    rv = reductor(4)
TypeError: cannot pickle 'sqlite3.Connection' object

What am I missing?

Hey, the issue is that ChromadbRM has sqlite3.Connection, which can't be pickled.
What are you trying to achieve? This can't do RAG since you don't have any modules that use the LM to generate answers.

yes, I was using an instance of this class to fill out the context of another Module which has multiple inputs.
class Advisor(dspy.Module):
    def __init__(self):
        super().__init__()
        ...
        self.bidding_system = MyRAG()
        ...
        self.prog = dspy.ChainOfThought(AdvisorSignature, n=3)

    def forward(self, question):
        ...
        input_c = self.bidding_system(question)
        ...
        prediction = self.prog(input_a=..., input_b=..., input_c=input_c, question=question)
        return prediction.answer

I'll change it to be just a function.

Ah got it, thanks a lot. Let us know if that fixes it


getDistributors or similar new method should return friendly names

Like the application names registerAppWithDialog uses.
https://github.com/UnifiedPush/android-connector/blob/234eaf55a500e63bca1daaa54b84c66f46f83a0b/connector/src/main/java/org/unifiedpush/android/connector/Registration.kt#L69-L85

The problem is, unlike the package names, the application names are not unique. It would cause issues with saveDistributor.
They are still some solutions :

We can do getAppName(context: Context, package: String) for convenience. This function is not really related to UP.
Another solution would be to create a Distributor object, containing the app name and the package name, returned by getDistributor. This solution would be an incompatible change.
Or we can do a getDistributorObject, but it can make things more confused by increasing the number of functions

Hmm... That's a good point. I only need this for flutter over method channels, so I'll move this issue to the flutter lib and will solve it in the method channels interface.

Additionally, objects don't work with method channels (afaik?) so using the last 2 options will only complicate things further in there.

A getAppName for flutter-connector makes sense since it is multi platform. At least maps are usable on channels


Rename 'master' to 'main' branch

We consider ourselves an inclusive project and we should not use terms like "master" since this is an offensive term, as it can be interpreted as being slavery-origin terminology. See https://en.wikipedia.org/wiki/Master/slave_(technology)#Terminology_concerns
To avoid offensive terminology and to avoid further inconsistency (other big projects adopted this terminology already) and follow the current recommended practices by GitHub we should switch to "main" as our primary branch.

"Both Conservancy and the Git project are aware that the initial branch name, ‘master’, is offensive to some people and we empathize with those hurt by the use of that term.
Existing versions of Git are capable of working with any branch name; there's nothing special about ‘master’ except that it has historically been the name used for the first branch when creating a new repository from scratch (with the git init command). Thus many projects use it to represent the primary line of development. We support and encourage projects to switch to branch names that are meaningful and inclusive, and we'll be adding features to Git to make it even easier to use a different default for new projects.
As a first step, Git will add a mechanism to allow users to specify the default used as the name of the first branch when creating a new repository. Also, consistent with its project governance, Git has undertaken a community process to explore changing the name of the first branch created automatically for new repositories away from ‘master’. That change is currently being discussed on our mailing list. As always, changes in Git's core will minimize disruption for Git's users and will include appropriate deprecation periods.
Meanwhile, Git as a project remains engaged in encouraging participation of underrepresented groups in the development of Git itself. Git continues their participation, which began four years ago, in Conservancy's Outreachy initiative. Conservancy also continues to explore and support other initiatives that can also assist in this area."

Source: https://sfconservancy.org/news/2020/jun/23/gitbranchname/

I created the main branch. @learn-ocean can you delete the master and set main as our default branch?

Done in 49b79c357a6bea2b3f53008fba406e3c77f08fa4


Texturing the player

back of the shoulder joint is still the base color and not colored
Yeah, it's way more of a pain to solve than one might think (due to model import issues), so I think this is good enough for now 😅


Starting Documentation.

Starting the readme. This adds basic information on how to get started.

This is obsolete.


Return XHR status error codes as err param.

XHR status codes, 400 or over, are returned as Node-style err param.

I have used this successfully for a couple of weeks.


<EMAIL_ADDRESS>trojan and unwanted software

Windows Defender flagged some files from the scoop gimp install. This might be upstream, but I don't have an account on GNOME Gitlab to post there.
The threats detected:

Trojan:Win32/Conteban.B!ml

C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\align-layers.debug\align-layers.exe,2.debug

Trojan:Win32/Fuery.C!cl

C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\color-enhance.debug\is-U1QFP.tmp

Program:Win32/Uwasson.A!ml

C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\animation-optimize.debug\animation-optimize.exe,2.debug
C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\blur.debug\blur.exe,2.debug
C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\cartoon.debug\cartoon.exe,2.debug
C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\checkerboard.debug\checkerboard.exe,2.debug
C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\cml-explorer.debug\cml-explorer.exe,2.debug
C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\animation-optimize.debug\is-A66UU.tmp
C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\blur.debug\is-A91G5.tmp
C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\cartoon.debug\is-12PM3.tmp
C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\checkerboard.debug\is-DLT47.tmp
C:\Users\km\scoop\apps\gimp\2.10.18-2\lib\gimp\2.0\plug-ins\cml-explorer.debug\is-T2TA2.tmp

I was just about to report the same.
No viruses were detected when installing directly via upstream https://download.gimp.org/mirror/pub/gimp/v2.10/windows/gimp-2.10.18-setup-2.exe
but I don't know which mirror I pulled from.

I've just installed Gimp 2.10.18 using scoop without issues this time. Maybe an update from Microsoft Defender fixed this issue.

It's still there, just installed today, got flagged by Win Defender immediately.

I also got this issue today.

Same happens for me.
Also see:

#3094
#3386
#3779
#3804

This seems to be a spurious issue. VirusTotal reports 0/65 for the current version


fix expect / include assertions in e2e tests

Issue Number
n/a
Overview

[ ] I have fixed expect/include assertions

Comments
They suddenly started to fail, on checking if response includes some text. Probably due to some silent dependency update (perhaps httparty?). The fix is to explicitly cast response to string...

OK, how mysterious?!

It is... I haven't expected this at all :sweat_smile:.

Could we keep a ruby gem lock file in git so that the dependencies don't randomly change?

We do have Gemfile.lock checked.
I suppose that's a downside of using pessimistic operator (~>) which tells "Bundler that it’s fine to upgrade a gem, as long as the gem version doesn’t change too much". On one hand that's good for automatically fixing/updating minor changes between dependencies as opposed to doing it manually. On the other hand I guess there is a risk of some break like this. I suppose that, in this particular case, it's also a downside of duck typing in ruby... Probably some change in the child dependency prevented the HTTPParty response object from being automatically casted to string when inisde expect assertion... That's my guess (but tbh I haven't spend time digging.)
I haven't ever experience any break like this before, let's see if this happens more and then maybe we can try to make dependencies more strict? Nevertheless it is a common practice, i.e. our dependencies most probably use ~> for their dependencies etc.

I think it would be best if dependency versions were locked to exact versions.

Locked dependencies in eeb694a.

bors r+

bors r+

bors r+

bors r+

bors r+


Saving a new file causes long delay and hangs the editor.

Type: Bug

Create a new file inside Astro project (usually src folder).
Save the file (ctrl + s).

Shows [Saving 'Test.astro': Getting code actions from ''Astro''].
Extension version: 0.28.2
VS Code version: Code 1.76.0 (92da9481c0904c6adfe372c12da3b7748d74bdcb, 2023-03-01T10:25:16.105Z)
OS version: Linux x64 5.15.0-60-generic
Modes:
Sandboxed: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i3-8130U CPU @ 2.20GHz (4 x 2199)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: disabled_softwarevideo_encode: disabled_softwarevulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
6, 4, 2

Memory (System)
7.63GB (1.45GB free)

Process Argv
--unity-launch --crash-reporter-id b42cf334-f29c-46f8-a1c1-1d2cf300ecb3

Screen Reader
no

VM
0%

DESKTOP_SESSION
zorin

XDG_CURRENT_DESKTOP
zorin:GNOME

XDG_SESSION_DESKTOP
zorin

XDG_SESSION_TYPE
x11

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
pythonvspyl392:30443607
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263cf:30335440
pythondataviewer:30285071
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593:30376534
pythonvs932:30410667
cppdebug:30492333
vsclangdf:30486550
c4g48928:30535728
dsvsc012cf:30540253
pynewext54:30669237
azure-dev_surveyone:30548225
pyindex848:30662994
nodejswelcome1:30587005
2e4cg342:30602488
pyind779:30671433
f6dab269:30613381
vscrpc:30673769
pythonsymbol12:30671437
funwalk2:30676043
pythonms35cf:30676801

Hello! Thank you for reporting this issue. This often happens when the workspace is too big and the extension tries to load a lot of files.

Quite large, with at least 100 files in the src folder. What is the workaround for it?

Hmm, that's not that much files, it shouldn't cause a problem.
Could you show your tsconfig.json?

tsconfig.json
{
  "compilerOptions": {
    // Enable top-level await, and other modern ESM features.
    "target": "ESNext",
    "module": "ESNext",
    // Enable node-style module resolution, for things like npm package imports.
    "moduleResolution": "node",
    // Enable JSON imports.
    "resolveJsonModule": true,
    // Enable stricter transpilation for better output.
    "isolatedModules": true,
    // Add type definitions for our Astro runtime.
    "types": ["astro/client"]
  }
}

And also:
.vscode > settings.json
{
  "htmltagwrap.tag": "div",

  "editor.codeActionsOnSave": ["source.fixAll", "source.organizeImports"],
  "livePreview.defaultPreviewPath": "/home/aamir/Documents/Github/techboxx-macrosite/dist/index.html"
}

Hmm, unfortunately I'm not too sure what to say. As I said, this issue is usually caused by too many files at once or very complex dependencies, but I believe your project should be fine.
We're always looking towards improving performance, but I'm unfortunately fairly busy with other parts of Astro at the moment and can't really take a good look at it.
In the meantime, disabling code actions astro.typescript.codeActions.enabled and formatting on save can help you out, the latter you could do through the Prettier extension instead.

Thank you for your input. I'm looking forward to the upcoming improvements.


Use locale-specific links to keep using the same language

Fixes #32

@bk3c I really liked the LocalizedLink component idea, so I worked that into the mix and now things feel even cleaner. Abstraction FTW! 🤜 🤛


fix(sticky-overlaps): recalculate sticky styles

reference: https://github.com/angular/components/issues/15885

According to discussion with @denisogolubev replaces AfterViewChecked with ResizeObserver.
https://dev.to/christiankohler/how-to-use-resizeobserver-with-angular-9l5


Withdrawal error

I thought that the error Insufficient amount was cleared meanwhile. I transferdd 3,8 DFI form Cake to the App. Then  I tried to withdrawal the new amount from the App to Cake. Doesnt work. Is it still the Token problem? When you will fix that?

Hi @JoergHoffmann, can you try it on the latest version? We have addressed this issue of selecting token from address on the latest version. https://github.com/DeFiCh/app/releases/tag/v2.1.15

Doesnt work, with any  earlierer versions. I had have adress that issue more than 4 weeks ago. So, how can I transfer my DFI to Cake?

You can download the latest version manually and install them @JoergHoffmann.

Problem solved! Version 2.1.15 works


[Fix #12233] Make Style/SlicingWithRange aware of beginless range

Fixes #12233.
This PR makes Style/SlicingWithRange aware of redundant and beginless range.
Ruby 2.7 introduced beginless ranges. But, unlike the somewhat obscure -1 in ary[1..-1], the 0 in ary[0..42] is clear as a starting point. In fact, changing it to ary[..42] could potentially make it less readable. Therefore, ary[0..42] should respect the original programmer's intent. On the other hand, ary[nil..42] could be replaced with ary[..42]. Similarly, ary[1..nil] could be replaced with ary[1..].
Moreover, [0..-1] in ary[0..-1] is redundant and simply synonymous with ary. This PR has also made adjustments to detect this case. While this is a byproduct of supporting beginless and endless ranges, I think including this change in Style/SlicingWithRange cop may be suitable and not feel out of place.

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[x] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

I'm fine with the proposed changes, but I'd suggest to also add an entry to the style guide about this.


MFA Provider Flows: "successWithWarnings" event is not registered correctly

Using the latest 5.1.0-RC4-SNAPSHOT (Commit Id: 5cc796b4cf55042e0e0f2b70ec65a9124275e03f)
I get the following error when logging into CAS with a username/password and a Google Authenticator code using an account with a password nearing it's expiration date:
org.springframework.webflow.engine.NoMatchingTransitionException: No transition was matched on the event(s) signaled by the [1] action(s) that executed in this action state 'realSubmit' of flow 'mfa-gauth'; transitions must be defined to handle action result outcomes -- possible flow configuration error? Note: the eventIds signaled were: 'array<String>['successWithWarnings']', while the supported set of transitional criteria for this action state is 'array<TransitionCriteria>[success, error]'
Apparently the mfa-gauth flow isn't configured to handle a successWithWarnings event.

You should be able to test the fix in about an hour or so, by using the new SNAPSHOT. Please re-teset and report back if you run into the same issue again. Thank you!

Thanks! It's working correctly now.


Metrics interface and Prometheus implementation

Here is a proposal for a metrics interface, with a sample Prometheus implementation.
Capabilities:

Go runtime metrics are collected and exposed
Custom user-defined metrics are supported
Metrics are made available to scrape by Prometheus (or any HTTP client)

Still to do:

Handle configuration parameters (instead of hardcoding them)
Include a server handler wrapper to instrument requests
Unit tests

What is the benefits and use case ? I mean that we have metrics wrappers in go-plugins

What is the benefits and use case ? I mean that we have metrics wrappers in go-plugins

Hi @vtolstov. This is more than a "wrapper" really... it provides a way to expose the Go runtime statistics for your services, as well as a consistent way to add your own arbitrary metrics.

What is the benefits and use case ? I mean that we have metrics wrappers in go-plugins

go-micro is defining the standard uses for all distributed systems concerns including metrics. A wrapper merely automates standard metrics. It does not allow for user defined metrics. A metrics interface allows it to become a building block for not only wrappers but also user defined values.

What is the benefits and use case ? I mean that we have metrics wrappers in go-plugins

Hi @vtolstov. This is more than a "wrapper" really... it provides a way to expose the Go runtime statistics for your services, as well as a consistent way to add your own arbitrary metrics.

Note https://github.com/micro/go-micro/blob/master/debug/stats/stats.go which is a built in handler as Debug.Stats


Update documentation to v0.2.0 features

close #236

@prometherion could you pls review the arg commands in the docs/content/reference/configuration.md ? Copied them from the .go code and probably missing something. Thanks


[WIP] Emit events on deletion of referenced gardener resources

What this PR does / why we need it:
gardener-controller-manager now emits Events, when the user tries to delete a resource which is still being referenced in another resource and the deletion is therefore blocked (for example a SecretBinding that is still referenced by a Shoot). This is done for the following resources:

BackupBuckets
CloudProfiles
Quotas
Seeds

Which issue(s) this PR fixes:
Fixes #1473
Special notes for your reviewer:

Please check, if there are additional resources for which this functionality should be added
Should I add test cases for this logic?
I thought about adding an Event, when the user tries to delete a Secret that is still referenced by a SecretBinding or Seed. The problem is, that currently there is no controller where this logic can simply be added to. WDYT?

Release note:

NONE

cc @vpnachev

Should I add test cases for this logic?

We don't have any tests for these things that and I guess it's hard to write them now. We plan to switch to the controller-runtime eventually, and the PR is considerably small, so IMHO it's okay as it is now.

I thought about adding an Event, when the user tries to delete a Secret that is still referenced by a SecretBinding or Seed. The problem is, that currently there is no controller where this logic can simply be added to. WDYT?

We don't have a controller watching secrets and I don't think it makes sense to introduce one just for the sake of sending one event in this case. Thanks for considering, though.

Why is the PR marked as "WIP"? What are you planning to implement that is not yet there?

We don't have a controller watching secrets and I don't think it makes sense to introduce one just for the sake of sending one event in this case.

Yeah, that was exactly my thought. Would be nice to improve the user experience on this end too, but I don't think this is enough reason to add a new controller...

Why is the PR marked as "WIP"? What are you planning to implement that is not yet there?

Actually I wanted some feedback on whether I covered all of the resources for which events should be added or if there are additional resources for which I should also add this functionality.
But if I have already covered all resources, then we can remove the WIP label.


pull request for e2e test at 01/23/2017 02:45:16

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


function to resolve family name to numeric identifier

...aka genl_ctrl_resolve_grp in https://github.com/thom311/libnl/blob/17f0459c8d1891473c315315c0f5c25f38b24d6b/lib/genl/ctrl.c#L471
I am trying to convert a netlink daemon from python to haskell and I would like to have such a function in the lib. As a newbie to haskell, I don't feel at ease to provide a proper patch.

ok found it in the joinMulticast family . Sorry for the noise


concurrency limit

Thank you for providing this handy library!
I notice that you keep a local counter of calls, and will queue queries when the concurrency limit is hit.
Just curious why? Athena has its own way of queueing, and would not fail the queries either.
Thanks!
Yang

maybe it is for super long queries that would take more than 30 minutes, which is the AWS athena default timeout?

I thought that errors will be returned from aws sdk when the service limit is exceeded.
https://docs.aws.amazon.com/athena/latest/ug/service-limits.html
Is there documentation about Athena queuing query?

seems that the concurrency limit is per server? what if I have 100 servers running your library?
yang


Publish To Cargo

My last commit was never published, so I have to use a git submodule.

In the meantime, you can use
rust-raknet = { git = "https://github.com/b23r0/rust-raknet.git", rev = "c9c2424" }

In the meantime, you can use

rust-raknet = { git = "https://github.com/b23r0/rust-raknet.git", rev = "c9c2424" }

That's what I transitioned to. As at the moment my error publicly commit is not published.

I hope this gets published at some point, it's been nearly a year since the last commit.


made generic implementation public

Coverage remained the same at 95.493% when pulling c28179ff13baf14580f5dd8670e76b91ddee18c2 on make-public into 7c7c70eefa26f4fd1e29fff706348024e61bb2de on master.


Write readme.md in a better mark-down format

I think this is because this project was moving from Google Code. Is a small fix, I'll do it myself as a handshake to the PF dev community.

Already done by @caneroj1


support arm64, for M1 Mac

it will fail if it is built on M1 Mac, so add arm64 for M1 Mac

@compnerd hi, when could this pr be merged? or is there any thing I could update


How i use RGBA as final value like rgba(0,0,0,0.5) ?

I want in my v-model to have raw final value like rgba(0,0,0,0.5)..by now is returning the object in my model and is weird. Have some configuration or adjusts can be made to work like this ? Thanks a lot. I love the picker.

The object in the model has everything you need to concatenate the rgba string. Out of concern for flexibility, we would remain the current object in model.
Please use computed properties to achieve your purpose.


[Bug] Doesn't work if author name has space

Expected behavior and actual behavior.
Actual Behavior
When "Git changelogs by author" is selected, it ask for author, after input a name with space, it display below error message:
fatal: ambiguous argument 'Tung': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

Expected behavior
The changelogs of the author should be displayed
Steps to reproduce the problem.
$ cd /tmp/
$ git clone https://github.com/beenotung/tslib.git
$ cd tslib
$ git-quick-stats
# input 3
# input Beeno Tung

Specifications like the version of the project, operating system, or hardware.
project
commit: ac730dbfbc79d137071eee16fe4d5d975cc6a63d
tag: 1.0.9
uname -a
Linux BeenoTung-Archlinux-Home 4.13.12-1-ARCH #1 SMP PREEMPT Wed Nov 8 11:54:06 CET 2017 x86_64 GNU/Linux
Workaround
It can display user name that is not exactly matched.
Example: for user name foo bar, we can just input foo.
However if there are two users foo bar and foo rab, the result may be disleading.

I tried to use " and ' to escape, even using using echo-then-source, but the literal is wrapped by single quote if the content contains space. Below shows the log when running bash -x git-quick-stats:
+ _author='--author='\''Beeno Tung'\'''
++ date +%F
+ NEXT=2017-11-23
+ sort -u -r
+ git log --use-mailmap --no-merges --format=%cd --date=short '--author='\''Beeno' 'Tung'\'''
+ read DATE
+ head -n 10
fatal: ambiguous argument 'Tung'': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'


Kadane's Algorithm

Description 📜
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context.
Fixes #920

Type of change 📝

[x] Documentation (Content Creation in the form of codes or tutorials)

Domain of Contribution 📊

[x] Competitive Programming

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

Thank you so much @ravireddy07 sir, for patiently reviewing it, I have resolved all the issues as best per my knowledge, please have a look.

Great work @geeky01adarsh, Please update the same in PR Tracksheet to get merged.


Macro-free typed currentTarget for events

Another take on https://github.com/OutWatch/outwatch/pull/110 without macros.
Most of it stays the same and VTree-apply accepts a function TagContext[Elem] => VDomModifier, where TagContext inherits all event properties from domtypes. So you can use it like this:
input(
  onClick("something") --> stringStream, // old behaviour works as before

  _.onClick.map(_.currentTarget.value) --> stringStream,
  _.onClick.value --> stringStream,
  onClick.value --> stringStream, // does not compile as onClick does not know about embedding tag

  onSearch.target.map(_.target.value) --> stringStream,
  onSearch.target.value --> stringStream,
  onClick.target.value --> stringStream, // does not compile as onClick has no typed target like onSearch
  onClick.targetAs[html.TextArea].value --> stringStream // shortcut for asInstanceOf if target is needed instead of currentTarget
  onClick.map(_.targetAs[html.TextArea].value) --> stringStream // shortcut for asInstanceOf if target is needed instead of currentTarget
)

We can also write generic methods with these types:
def modifier(ctx: TagContext[html.Input]): VDomModifier = Seq(
  ctx.onDrag.value --> stringHandler,
  ctx.onDrag.map(_.currentTarget.value) --> stringHandler
)
def stringModifier[Elem <: Element : TagWithString](ctx: TagContext[Elem]): VDomModifier = Seq(
  ctx.onDrag.value --> stringHandler,
  ctx.onDrag.map(_.currentTarget.value) --> stringHandler
)

div(
    textArea(modifier, stringModifier), input(modifier, stringModifier)
)

Can we assume that target is typed the same as currentTarget on input|button|textarea elements, because these elements cannot have children and therefore an event cannot bubble up but must be from the element itself?

rebased on top of #123

First of all great work on this PR, achieving the type safety without macros!
However, I'm still not sure that the added complexity is worth it for a typed currentTarget. currentTarget will have the same type as the node it's used in, so I think using a cast is fine. With this PR I find that the API around the target/currentTarget is getting un-necessarily complicated.
Currently we have:
input(
  onClick.map(_.currentTarget.asInstanceOf[html.Input].value) --> stringStream
)

There's not confusion what the tag type is and what's going on (cast of currentTarget because the event happens inside input).
with this PR we have:
input(
// copy-paste from above
  _.onClick.map(_.currentTarget.value) --> stringStream,
  _.onClick.value --> stringStream,
  onClick.value --> stringStream, // does not compile as onClick does not know about embedding tag

  onSearch.target.map(_.target.value) --> stringStream,
  onSearch.target.value --> stringStream,
  onClick.target.value --> stringStream, // does not compile as onClick has no typed target like onSearch
  onClick.targetAs[html.TextArea].value --> stringStream // shortcut for asInstanceOf if target is needed instead of currentTarget
  onClick.map(_.targetAs[html.TextArea].value) --> stringStream // shortcut for asInstanceOf if target is needed instead of currentTarget)

Here I have no idea what the target type is (what's target, what's currentTarget) without going into the library code to figure out what implicit conversions get applied.
Also, because of the implicit conversions for every VDomModifier, the VDOM generation code seems to be getting 3x-ish larger (in fastOpt, not sure in fullOpt).
I've been torn about this PR, because I like the typesafety, but after going through the code and trying to use the API, I realized that it makes using the library harder for me, not easier and I think that's more important.

There's not confusion what the tag type is and what's going on (cast of currentTarget because the event happens inside input).

While that is true, you will need to make sure that both the outer tag and the type in asInstanceOf stay in sync. How should we go about onInputString, onInputNumber and onInputChecked? They are currently hiding this assumption and just silently do an asInstanceOf.

Here I have no idea what the target type is (what's target, what's currentTarget) without going into the library code to figure out what implicit conversions get applied.

Hmm, confusion is of course not the intention. You always know what type currentTarget is because it is by definition the surrounding tag, in this case input. For target, you know as much as MDN knows and this information is already there coming from domtypes.
I can understand that this might introduce too many variations. But we could also leave out all the shortcuts and just have input( onClick.map(_.currentTarget.value) ). This should not be confusing as it is just following the definition of currentTarget on Event.

Also, because of the implicit conversions for every VDomModifier, the VDOM generation code seems to be getting 3x-ish larger (in fastOpt, not sure in fullOpt).

This indeed is a problem! I am also not happy to have this kind of conversion, but I do not really see another way to provide that type information and write it both ways. I will think about it.

While that is true, you will need to make sure that both the outer tag and the type in asInstanceOf stay in sync. How should we go about onInputString, onInputNumber and onInputChecked? They are currently hiding this assumption and just silently do an asInstanceOf.

Those are indeed problematic. We could make them take a type argument and use a the TagWith... typeclasses, something like:
def onInputString[E <: dom.html.Element](implicit tag: TagWithString[E])  = Events.onInput.map(e => tag.value(e.currentTarget.asInstanceOf[E]))

So then they would be used as:
input( onInputString[html.Input] --> stringStream)

Why not generalize for other events and have these methods on the EmitterBuilder? I think this is not only useful for onChange|onInput
input(
  onClick.stringValue[html.Input] --> ???,
  onChange.numberValue[html.Input] --> ???
)

Yes, that looks good. Then we could alias commonly used sources, such as inputString, inputNumber, inputChecked as:
  lazy val inputChecked = onChange.checked[dom.html.Input]
  lazy val inputNumber  = onInput.numberValue[dom.html.Input]
  lazy val inputString  = onInput.stringValue[dom.html.Input]

I'm suggesting to use inputChecked (not onInputChecked), to indicate that it's a  checked event on the input tag.

funnily inputString would also work on TextArea or any other element that has a value, because javascript cannot check the type when casting and accessing value will work. So, maybe we should make the naming more about the property we are accessing?

That would work too.

I'd rather keep the on-prefix for emitters.

So what you're suggesting is:

Exactly, but we can extend it for different kinds of events and define these methods on the EmitterBuilder - letting the user chose the right event property. I would suggest to take parts of what I have done in this PR and combine it with the unsafe cast approach:
input(
  // these would all work on currentTarget which will always be the input element
  onInput.value --> string,
  onClick.checked --> bool,
  onKeyDown.valueAsNumber --> number
)

We can additionally offer the variant with providing a type (e.g. onInput.stringValue[html.Input]) or we just leave it at this for now.
Then there are use cases, where you might want to choose target over currentTarget. You have a div element with input children and want to collect the changed values. Then it would be useful to do the same with target:
div(
  onChange.target.value --> string,
  input(tpe := "text"), input(tpe := "text")
)

I played around with this here: https://github.com/mariusmuja/outwatch/compare/monix_port...mariusmuja:target_ops
I got it to work the following way:

currentTarget uses html.Input by default as the underlying event target:

input(
  onInput.value --> string,
  onClick.checked --> bool,
  onKeyDown.valueAsNumber --> number
)

it's possible to force a different event target for currentTarget, but only if the TagWith... typeclasses are implemented for it (so only html.TextArea, html.Select in case of .value).

textArea(
 onChange.value[html.TextArea] --> string,
)

for target, the type from TypedTargetEvent is used by default

input(
  onSearch.target.value --> stringStream,
  onSearch.target.valueAsNumber --> doubleStream,
  onSearch.target.checked --> boolStream,
)

in case the type of TypedTargetEvent is not specific enough it's possible to force a more specific type:

input(
  //onClick.target.value --> stringStream,   // does not compile because onClick is TypedTargetEvent[dom.Element], not specific enough
  onClick.target[html.Input].value --> stringStream,
  onClick.target[html.Input].valueAsNumber --> doubleStream,
  onChange.target[html.Input].checked --> boolStream,
)

closing for now. this is partially covered by #139. I still think, we will eventually need something like this.


Return Device Token for Push Notifications Request

Currently when I am running the Push Notifications Request on my app I am able to see the dialog and receive a status of authorized as the response but I was wondering if its possible to receive the Device Token in this case for Remote Push Notifications?
Thanks!

@johnstew - not possible through this library. You would need to add a method in your main AppDelegate.m
Have a look at this library: https://github.com/zo0r/react-native-push-notification

I think this should be supported by react-native-permissions, because we need this in order to integrate any notification service.
Even a simple documentation of how to implement it for iOS, Android and Windows, should do it.

device tokens have nothing to do with permissions


External links for sharing the website does not open

Bug description:
Hi there. I have added a website (https://www.roomvo.com/my/vekoal/rooms/615c4480f40c40c4ba624a8c2f2f3f23) inside react-native-webview that it is developed with Next.js. On this website are two buttons on the right menu drawer that shares on Facebook and Whatsapp by opening new tabs, but non of them is working inside react-native-webview. I hate tried to add some props that I think will help me but no success. Can anyone help me with this, please?
p.s
It has another problem with the download button. It crashes the app because is using data:base64 but I will open a new issue for that.
To Reproduce:
import React from 'react';
import { WebView } from 'react-native-webview';

const HomeScreen = props => {
  return (
    <WebView source={{ uri: 'https://www.roomvo.com/my/vekoal/rooms/615c4480f40c40c4ba624a8c2f2f3f23' }} />
  );
};

export default HomeScreen;

Expected behavior:
I expect to open a new tab external on phone default browser.
Environment:

OS: Android
OS version: 9.0
Expo version: 4.1.0
Expo SDK version: 40.0.0
react-native version: 0.63
react-native-webview version: 11.0.0

@daniel1up have you fixed it?


chore: add panpan0000 to interested-parties

Closes #
📑 Description

Add myself into interested-party
✅ Checks

[x] My pull request adheres to the code style of this project
[x] My code requires changes to the documentation
[x] I have updated the documentation as required
[x] All the tests have passed

ℹ Additional Information

Hello @panpan0000! Please fix the merge conflict and then we should be good to go :-)

Thanks , fixed


Support rooms/talks with and without online Q&A

At the moment, Q&A is enabled for all devrooms and talks of specific length.
Some FOSDEM devrooms may not take online questions at all, and some talks may also not take online questions so we need to be able to disable to announcements for specific devrooms or specific talks
Can we use the tags in the pretalx API to get this information?

I suggest we use a pretalx 'tag' for this; it seems like the most natural choice.
I should note that they don't seem to be available in the 'frab-compatible' XML and JSON views presented on the pretalx site (looking at another pretalx conference).
According to pretalx API documentation they should be available in the API. They might be private to the organisers so that might be why.

The pentabarf schedule provides this to us https://fosdem.org/2024/schedule/xml


Ensure lexers can be looked up by name, alias and mime type

(Original issue 668 created by None on 2011-06-01T15:57:52.732773+00:00)
It seems like all lexers should be able to be found by their name and aliases via find_lexer_class and get_lexer_by_name. This implies that all lexers have a unique name and alias. I've created a test case for this. Almost all the lexers fit this property. The ECLexer doesn't match its function name, but I'm assuming this is a simple typo.
The other is the Makefile and BaseMakefile, both are called Makefile. So find_lexer_class will only see one but not the other. I'm not sure what the purpose of BaseMakefile is for, but it should probably have a different name.
I'm not sure about this half of the patch, but I think the same should probably hold for get_lexer_for_mimetype as well. The two conflicts are related to XML/XSLT and ActionScript which have shared mime types.
https://bitbucket.org/joshpeek/pygments/compare/default..birkenfeld/pygments-main

(Original issue was assigned to birkenfeld)
(Original issue 668 last updated on 2011-06-18T13:05:40.761948+00:00)
(Issue automaticaly closed due to status in Bitbucket: resolved)

(Original comment by birkenfeld on 2011-06-01T18:31:05.012900+00:00)
Looks about right, but you need to make the changes for mimetypes to the individual lexer classes, then update _mapping.py by running it.

(Original comment by None on 2011-06-01T19:26:07.172991+00:00)
Sorry, can't believe I missed that.
Update https://bitbucket.org/joshpeek/pygments/compare/default..birkenfeld/pygments-main

(Original comment by None on 2011-06-08T14:55:16.362032+00:00)
Rebased my changes. Should be good to apply now.
https://bitbucket.org/joshpeek/pygments/compare/default..birkenfeld/pygments-main

(Original comment by birkenfeld on 2011-06-18T13:05:40.748693+00:00)
Thanks, merged!


Add benchmark inference_tract

Benchmark adds an AI subtest to Wasmscore through the additions of mobilenet inferencing with by onnx and tensorflow models. Results show Wasm performing at about 30% of native performance. Wasm performance for onnx is similar to what is seen in sightglass. Sightglass does not implement the tensorflow model inferencing.


Feature/minimum drag distance

This adds a new parameter to the ScrollSnapDraggable Plugin:
/**
 * If this is null:
 *  The next/previous slide will not be reached unless you drag for more than half the slider's width.
 *
 * If this is a number:
 *  Dragging any slide for more than this distance in pixels will slide to the next slide in the desired direction.
 *
 * @type {?Number}
 */
this.quickSwipeDistance

const slider = new ScrollSnapSlider(sliderElement, true, [
  new ScrollSnapDraggable(50)
])

Hi i tested the branche and it's working much better this way! No more endless dragging :-)
However as you see in the gif, the first movement is a native scroll on my touchpad and succesfully snaps to the second slide (the orange box), the second movement is a mouse drag scroll and is skipping the second slide and goes directly to slide three.
It depends on the viewport but as you see it scrolls to the end of slide 3 on a 13" macbook screen.
Would be an idea to integrate  within your slider, then you could also support vertical sliders and scroll-snap-align: center;
I think it would be easier and more accurate to get the current slide with this api.
Another option would be to use the IntersectionObserver, but then you still have to calculate where and what coordinates would define the currentslide. I used the code below once, and it was working but it also had problems to define the current slide when multiple slides were in the viewport.
 const slides = scrollwrap.children;
        const slideObserver = new IntersectionObserver(
          (entries) => {
            return entries.forEach((event) => {
              const { target, intersectionRatio, isIntersecting } = event;
              animateVisible(target, intersectionRatio, isIntersecting);
            });
          },
          { threshold: 0.5 }
        );

 const animateVisible = (slide, ratio, isIntersecting) => {
          // When the element is in view:
          if (ratio > 0 && isIntersecting) {
            slide.classList.add("active");
          } else {
            slide.classList.remove("active");
          }
        };

Hey @merijnponzo I just released this as v2.4.0. Sorry for the delay, december and january were chaotic.

No problem and great efforts!
Have you seen:
https://tannerhodges.github.io/snap-slider/
It doesn't have drag features but is also very easy to use, maybe you guys can Team Up and make the best out of it! :-)
Best


embed: NewConfig sets LogOutput to "default"

Otherwise, embedded etcd will panic in SetupLogging

small suggestion. then lgtm


Fix typo in roomunban message

It had the same message as a global unban; there was no way to tell the difference...

I wouldn't call this a "typo" per se. I do like this change though.


feat: Reproducible build and deb packaging

Move rust toolchain install for clarity
Add remap-path-prefix build flag
Add cargo-deb steps

Fun, even debian packages! Out of curiosity, where is that coming from? Just because we can, or did someone request that?

Fun, even debian packages! Out of curiosity, where is that coming from? Just because we can, or did someone request that?

Theoretically it makes setting up the boundary nodes a more streamlined. Also it was easy to do, so why not? 😝


[Bug]: Mod list reseted at launch

Operating System
Windows 11
BG3 Mod Manager Version
<IP_ADDRESS>
BG3 Game Version
v<IP_ADDRESS>48643 (hotfix 8)
Bug Summary
Since version <IP_ADDRESS> (I was on version <IP_ADDRESS>), the mod list gets wiped as soon as I launch the game, so I can't load my ongoing modded game.
The mod list becomes empty every time, as if the mod path is corrupted somewhere. I even tried setting modsettings.lsx (in C:\Users\XXX\AppData\Local\Larian Studios\Baldur's Gate 3\PlayerProfiles\Public) to read-only...
I still get the error message when loading my game as if I had removed all the mods from the Mods folder.
Links
No response

Are there any differences between your modsettings.lsx with <IP_ADDRESS> and <IP_ADDRESS>? The game resets that file if it encounters an error when loading mods.
I haven't changed anything that would make that file write differently between versions, so it'd be helpful if you could check if the file itself differs between versions, with the same mod order.

I reverted to version <IP_ADDRESS>, and it didn't make any difference. I deleted everything in AppData except for the mod folder.
It seems like the game is no longer pointing to the original Mods folder, but at the same time, a mod like No Intro continues to work. However, the list of disabled mods in my previous game in the loading menu tooltip is as long as my arm (even No Intro is listed as disabled)...

Export your mod order, then open modsettings.lsx externally with something like Notepad++. When you launch the game, if the file resets, that means you have an issue in your load order, such as a pak being corrupt, a subfolder being in your mods folder, or perhaps a missing dependency.
This is a common enough issue that I've had to repeat that information various times since release, since people assume it's the mod manager resetting your load order. Patches can break certain mods for instance.
I suggest saving your ideal load order to a separate file (File -> Save Order As...), which will create a load order json file, separate from modsettings.lsx. That way you have something to load again, when the game resets the load order.
Then going through your order with a "binary search" sort of process. Disable half the mods, export the load order, start the game and see if it resets. If it doesn't reset, then one (or more) of the mods you disabled were at fault, so switch back to the saved load order and disable half of the half you previously disabled, and try again.
Going about it that way should help narrow down which mods are at fault quicker, and then you can check if those mods have had updates.

yeah i knew that, but after the hotfix 8 i had no pb (usual test), then i updated Mod Manager to .9.11 then i had this issue
I was aware of these recommendations; I don't think it happened immediately after the game update. I'll continue testing in the way you suggested. On some forums, I see similar comments as mine.

A modder changed the name of the pack but not the name that appears in the game...
for info : Coloured Tootips (ingame)" and in the mod folder it changed from "Tooltips.pak" to "Tooltips Normal.pak." It's difficult to identify errors in these situations.
You were right 👍 ; it's the usual bug caused by an outdated or faulty mod that erases the list.
I don't know what protection we can implement against this on the ModManager side. Ideally, modders should stay systematic.

for info : Coloured Tootips (ingame)" and in the mod folder it changed from "Tooltips.pak" to "Tooltips Normal.pak." It's difficult to identify errors in these situations.

Oof, yeah changing pak names is a big no-no.

I don't know what protection we can implement against this on the ModManager side. Ideally, modders should stay systematic.

Something to display duplicate paks should definitely help. Internally it's likely both of these paks have the same UUID in their metadata (meta.lsx), so when the mod manager loaded the next pak, the data just overrode the previous one (for the purposes of displaying what's available), instead of warning that a duplicate mod was found.
Thanks, I'll get that added to the list of features to add.

You're welcome, it's a pleasure. If it can help provide insights for improving and protecting the mod list and load order (a crucial element, to say the least).


Try it out docs/config need updating and only one pod gets created instead of 3 expected

How to repoduce
read "Try it out" https://coreos.com/blog/introducing-the-etcd-operator.html
Run the commands at the bottom of the article and observe error
(I have my own admin.conf but otherwise the commands are the same)
  $ kubectl --kubeconfig admin.conf create -f https://coreos.com/operators/etcd/latest/deployment.yaml
    deployment "etcd-operator" created

  $ kubectl --kubeconfig admin.conf create -f https://coreos.com/operators/etcd/latest/example-etcd-cluster.yaml
    error: unable to recognize "https://coreos.com/operators/etcd/latest/example-etcd-cluster.yaml": no matches for coreos.com/, Kind=EtcdCluster

read https://github.com/coreos/etcd-operator/blob/master/README.md
check other things are ok
  $ kubectl --kubeconfig admin.conf get pods
    NAME                            READY     STATUS    RESTARTS   AGE
    etcd-operator-217127005-h2t51   1/1       Running   0          1m

  $ kubectl --kubeconfig admin.conf get thirdpartyresources
    NAME                      DESCRIPTION             VERSION(S)
    cluster.etcd.coreos.com   Managed etcd clusters   v1beta1

try again with latest https://raw.githubusercontent.com/coreos/etcd-operator/master/example/example-etcd-cluster.yaml
  $ wget https://raw.githubusercontent.com/coreos/etcd-operator/master/example/example-etcd-cluster.yaml

  $ kubectl --kubeconfig admin.conf create -f example-etcd-cluster.yaml
    cluster "example-etcd-cluster" created

looks better, now look at pods
  $ kubectl --kubeconfig admin.conf get pods
    NAME                            READY     STATUS    RESTARTS   AGE
    etcd-operator-217127005-h2t51   1/1       Running   0          13m
    example-etcd-cluster-0000       1/1       Running   0          1m

  $ cat example-etcd-cluster.yaml
    apiVersion: "etcd.coreos.com/v1beta1"
    kind: "Cluster"
    metadata:
      name: "example-etcd-cluster"
    spec:
      size: 3
      version: "3.1.0"

  $ kubectl --kubeconfig admin.conf get pods
    NAME                            READY     STATUS    RESTARTS   AGE
    etcd-operator-217127005-h2t51   1/1       Running   0          17m
    example-etcd-cluster-0000       1/1       Running   0          5m

observe only one pod.  why?

https://coreos.com/operators/etcd/latest/deployment.yaml
https://coreos.com/operators/etcd/latest/example-etcd-cluster.yaml

These hosted files are outdated. I will coordinate with CoreOS marketing teams to update that. Please follow latest ones on Github.

observe only one pod. why?

We have e2e tests guarding these user scenarios.
Let's check your env first. Can you provide details about your env?
Can you also provide operator logs:
$ kubectl logs etcd-operator-217127005-h2t51

This is an 8 node test cluster I setup a few days ago following
these instructions: https://kubernetes.io/docs/getting-started-guides/kubeadm
I'm using the weave-kube pod network.
Here are my nodes
$ kubectl --kubeconfig admin.conf get nodes
NAME                              STATUS         AGE
util1.redacted-internal-details   Ready          4d
util2.redacted-internal-details   Ready          4d
util3.redacted-internal-details   Ready          4d
util4.redacted-internal-details   Ready          4d
util5.redacted-internal-details   Ready,master   4d
util6.redacted-internal-details   Ready          4d
util7.redacted-internal-details   Ready          4d
util8.redacted-internal-details   Ready          4d

Here is a gist with the requested logs
https://gist.github.com/cimarron-pistoncloud/59f1588aca053e133814900267468ede

failed to update members: grpc: timed out when dialing

This is a sign that operator couldn't talk the etcd member, in this case, "example-etcd-cluster-0000".
First, can you make sure pod "example-etcd-cluster-0000" is healthy? Or just paste its logs here.
Second, can you make sure etcd operator can talk to pod "example-etcd-cluster-0000"?
You can do
$ kubectl exec -ti etcd-operator-217127005-h2t51 -- /bin/sh

After logged in, do
$ curl "http://example-etcd-cluster-0000:2379/v2/members"

Doesn't look like curl is in that container :-(
$ kubectl --kubeconfig admin.conf exec -ti etcd-operator-217127005-h2t51 -- /bin/sh
/ # curl "http://example-etcd-cluster-0000:2379/v2/members"
/bin/sh: curl: not found

try
$ apk add --no-cache curl

/ # apk add --no-cache curl
fetch http://dl-cdn.alpinelinux.org/alpine/v3.5/main/x86_64/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.5/main/x86_64/APKINDEX.tar.gz: temporary error (try again later)
fetch http://dl-cdn.alpinelinux.org/alpine/v3.5/community/x86_64/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.5/community/x86_64/APKINDEX.tar.gz: temporary error (try again later)
ERROR: unsatisfiable constraints:
  curl (missing):
    required by: world[curl]

Here are the logs for example-etcd-cluster-0000
https://gist.github.com/cimarron-pistoncloud/baf59f4407e205a89a5cc8795c09b441

$ kubectl run -ti curl --image=tutum/curl -- /bin/sh
curl "http://example-etcd-cluster-0000:2379/v2/members"

$ kubectl --kubeconfig admin.conf run -ti curl --image=tutum/curl -- /bin/sh
Waiting for pod default/curl-2390334011-smbts to be running, status is Pending, pod ready: false
...
Waiting for pod default/curl-2390334011-smbts to be running, status is Pending, pod ready: false
If you don't see a command prompt, try pressing enter.

# curl "http://example-etcd-cluster-0000:2379/v2/members"
curl: (6) Could not resolve host: example-etcd-cluster-0000

curl: (6) Could not resolve host: example-etcd-cluster-0000

Your cluster setup doesn't have DNS.

That's odd, because
kube-system   kube-dns-2924299975-rmjp5                                 4/4       Running   0          4d

appears in
$ kubectl --kubeconfig admin.conf get pods --all-namespaces
NAMESPACE     NAME                                                      READY     STATUS    RESTARTS   AGE
default       curl-2390334011-smbts                                     1/1       Running   1          6m
default       etcd-operator-217127005-h2t51                             1/1       Running   0          1h
default       example-etcd-cluster-0000                                 1/1       Running   0          1h
default       nginx-3449338310-nc9g9                                    1/1       Running   0          4d
default       nginx-3449338310-rbcgf                                    1/1       Running   0          4d
default       nginx-3449338310-svs7z                                    1/1       Running   0          4d
kube-system   dummy-2088944543-18lpc                                    1/1       Running   0          4d
kube-system   etcd-util5.redacted-internal-details                      1/1       Running   0          4d
kube-system   kube-apiserver-util5.redacted-internal-details            1/1       Running   0          4d
kube-system   kube-controller-manager-util5.redacted-internal-details   1/1       Running   0          4d
kube-system   kube-discovery-1769846148-bj0hn                           1/1       Running   0          4d
kube-system   kube-dns-2924299975-rmjp5                                 4/4       Running   0          4d
kube-system   kube-proxy-7mn61                                          1/1       Running   0          4d
kube-system   kube-proxy-88ln1                                          1/1       Running   0          4d
kube-system   kube-proxy-cckss                                          1/1       Running   0          4d
kube-system   kube-proxy-fg7xv                                          1/1       Running   0          4d
kube-system   kube-proxy-grpws                                          1/1       Running   0          4d
kube-system   kube-proxy-wjcfh                                          1/1       Running   0          4d
kube-system   kube-proxy-wr174                                          1/1       Running   0          4d
kube-system   kube-proxy-x92jk                                          1/1       Running   0          4d
kube-system   kube-scheduler-util5.redacted-internal-details            1/1       Running   0          4d
kube-system   kubernetes-dashboard-3203831700-zn92z                     1/1       Running   0          2d
kube-system   weave-net-259mw                                           2/2       Running   0          4d
kube-system   weave-net-90tmn                                           2/2       Running   1          4d
kube-system   weave-net-cms2f                                           2/2       Running   1          4d
kube-system   weave-net-ds8cw                                           2/2       Running   0          4d
kube-system   weave-net-lgqq7                                           2/2       Running   1          4d
kube-system   weave-net-mkmcx                                           2/2       Running   1          4d
kube-system   weave-net-vtrqc                                           2/2       Running   0          4d
kube-system   weave-net-z4vq7                                           2/2       Running   0          4d

but thank you for your help.  I'll look into kube-dns.

Looks like this may be a known issue in kubeadm init
https://github.com/kubernetes/kubernetes/issues/33881

@cimarron-pistoncloud Thanks for tracking down. There is not much we can do though. The upstream issue is the right place to track it further. Sorry.

I will reinstall my cluster, verify DNS works properly and then try etcd-operator again.  Thanks!

@hongchaodeng trying to find the latest etcd-operator docs, can you point me the last deployment and cluster yaml files?


How to validate client has permission to access specific api?

I have two apis which perform different task. I want to validate client has permission to access the api when user grant(on consent page) the permission.
Calender api
1: calender.read
2: calender.write
I have Client1(with only calender.read permission) and Client2(with both permission). So on api level how can I validate this permission? Please check below api controller.
[Route("api/[controller]")]
[ApiController]
[TypeFilter(typeof(ControllerExceptionFilterAttribute))]
[Produces("application/json", "application/problem+json")]
[Authorize]
public class CalenderController : ControllerBase
{
	/// <summary>
	/// fetch user calender data
	/// Note: You can fetch max last one year data.
	/// </summary>
	/// <param name="fromDate">epoch utc date stamp in seconds</param>
	/// <param name="toDate">epoch utc date stamp in seconds.</param>
	/// <param name="page"></param>
	/// <param name="pageSize"></param>
	/// <returns></returns>
	[HttpGet]//calender.read
	public async Task<ActionResult<CalenderApiDto>> Get(double fromDate, double toDate, int page = 1, int pageSize = 10)
	{
		//.... some code
	}

	[HttpPost]//calender.write
	[ProducesResponseType(201)]
	[ProducesResponseType(400)]
	public async Task<ActionResult<TUserCalDto>> Post([FromBody]TUserCalDto user)
	{
	}
}

https://docs.microsoft.com/en-us/azure/active-directory/develop/scenario-protected-web-api-verification-scope-app-roles?tabs=aspnetcore
This can help you.

https://docs.microsoft.com/en-us/azure/active-directory/develop/scenario-protected-web-api-verification-scope-app-roles?tabs=aspnetcore
This can help you.

https://docs.microsoft.com/en-us/azure/active-directory/develop/scenario-protected-web-api-verification-scope-app-roles?tabs=aspnetcore
This can help you.

Thanks :) Will try this.


Nullability Index uses @input trait but should consider operations instead

Currently, the nullability index uses the @input trait to determine if a shape is an input. However, this is unreliable and causes unexpected failures if this trait has been missed.
Consider updating the CLIENT_CAREFUL mode to consider whether a shape actually is an input instead of the input trait (or supplying a smithy normalizer to add the input trait)

This was by design since @input requires that the shape isn't reused in other places throughout the model. It codifies the intent that a shape is just going to ever be input. If a generator has a requirement that all shapes used as input have the @input trait, the generator can do a model transform to either apply the trait when possible or synthesize an input shape otherwise. Directed codegen abstractions from the reference implementation can do this: https://github.com/smithy-lang/smithy/blob/main/smithy-codegen-core/src/main/java/software/amazon/smithy/codegen/core/directed/CodegenDirector.java#L225


[Docs] single column responsive view is too narrow

Current State

Desired State
Wider column to increase legibility.

Contributor Guides and Handbook

📚 Instructions for contributing to documentation

Meshery documentation site and source

🛠 Meshery Build & Release Strategy
🎨 Wireframes and designs for Meshery UI in Figma (open invite)
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

I can do this.

Can you please describe more

@theavitw I saw your first comment and assigned the issue to you. Your second comment has me wondering if you're ready to undertake this CSS change, though.

@theavitw I saw your first comment and assigned the issue to you. Your second comment has me wondering if you're ready to undertake this CSS change, though.
@vishalvivekm, if @theavitw isn't able to figure out the necessary change by this coming Friday, will you undertake this issue?

Sure @leecalcote

@vishalvivekm are you still working on this issue? I would like to if not.


[Feature][JDBC Connector]Support DateTime and Timestamp type split

Purpose of this pull request

This pr will support DateTime and Timestamp type column to split.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

Check list

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

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

[ ] Update the release-note.

Please check ci error


chore: 统一镜像结构

之前五个node镜像中，有的镜像的项目代码在src中，有的在build中；有的使用ENTRYPOINT作为dockerfile的启动语句，有的使用CMD。这个PR统一了这些区别。

所有镜像中的项目代码均存放在build中
所有Dockerfile均使用CMD ["npm", "run", "serve"]作为容器的启动语句

同时还修改了根目录下的build:containers命令改成了build:images

Codecov Report
Base: 65.10% // Head: 65.09% // Decreases project coverage by -0.01% :warning:

Coverage data is based on head (694ca52) compared to base (17514a1).
Patch coverage: 50.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #305      +/-   ##
==========================================
- Coverage   65.10%   65.09%   -0.02%
==========================================
  Files          98       98
  Lines        2728     2730       +2
  Branches      334      335       +1
==========================================
+ Hits         1776     1777       +1
  Misses        910      910
- Partials       42       43       +1

Impacted Files
Coverage Δ

apps/mis-server/src/plugins/orm.ts
92.30% <50.00%> (-3.53%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Feedback for: /fundamentals/performance/optimizing-content-efficiency/image-optimization.html

The portuguese version of this article has css issues after the explanation about the vector images making the article hard to read. Using Safari on OS X 10.10.2.

Can you share a quick screenshot?  I suspect there is an issue with the translation.

Sure, here they are, you can see where it changes from the first screenshot

Urgh. Thanks.
On Thu, 19 Mar 2015 10:03 Gil<EMAIL_ADDRESS>wrote:

Sure, here they are, you can see where it changes from the first screenshot
[image: ss1]
https://cloud.githubusercontent.com/assets/71772/6728101/f7c85422-ce1e-11e4-8977-db4af51de4f6.png
[image: ss2]
https://cloud.githubusercontent.com/assets/71772/6728100/f7aa8b04-ce1e-11e4-8154-e8f7481aac28.png
—
Reply to this email directly or view it on GitHub
https://github.com/google/WebFundamentals/issues/1119#issuecomment-83468407
.


[Question] Does messaging::Subscribe create a new topic if needed ?

[REQUIRED] Please fill in the following fields:

Pre-built SDK from the website or open-source from this repo: website
Firebase C++ SDK version: 10.7.0
Main Firebase Components in concern: Messaging( Auth, Database, etc.)
Other Firebase Components in use: none (Auth, Database, etc.)
Platform you are using the C++ SDK on: Windows (Mac, Windows, or Linux)
Platform you are targeting: Android (iOS, Android, and/or desktop)

[REQUIRED] Please describe the question here:
I was just wondering if, when trying to subscribe to a topic that doesn't exist yet, the SDK automatically creates it. I know the kotlin method "subscribeToTopic()" does, but I couldn't find that information for the cpp sdk.

The Firebase C++ SDK wraps around the Android and iOS Firebase SDKs.
So on Android the C++ Subscribe internally calls the Android SDK's subscribeToTopic method. As a result, if the android SDK behaviour is to create the topic, then this should happen automatically when calling the C++ subscribe as well.


on current version of nixos-unstable, nix-env -i steam fails

Describe the bug
On current version of nixos-unstable (which went live yesterday or today), nix-env -i steam fails with the following error:
error: getting status of '/nix/store/4yhkjh0r8p764ahw6dsn9c4afdylsbcv-steam-original-<IP_ADDRESS>/share/iconshicolor': No such file or directory

it seems that the icons are in the following folder:
/nix/store/4yhkjh0r8p764ahw6dsn9c4afdylsbcv-steam-original-<IP_ADDRESS>/share/icons/hicolor

i.e a / is missing. Same issue is happening for chromium. Anyone else seeing this behavior? Probably not an issue in any leaf packages. My guess is maybe something related to gtk?
Steps To Reproduce

run nix-env -i steam when channel is set to current version of nixos-unstable.

Expected behavior
Steam should be installed.
Metadata
 - system: `"x86_64-linux"`
 - host os: `Linux 5.10.94, NixOS, 22.05 (Quokka)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.6.0`
 - channels(root): `"nixos-22.05pre350838.554d2d8aa25"`
 - channels(danielbarter): `""`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

yep, that makes sense.

Let’s reopen this until the version of Nix in nixpkgs is actually fixed. (And then, ideally, actually fix it. ☺)

Can we close this, now that nix 2.7.0 is in nixos-unstable?


[CARBONDATA-4016] NPE and FileNotFound in Show Segments and Insert Stage

Why is this PR needed?

Insert Stage,  While Spark read Stages which are writting by Flink in the meanwhile, JSONFORMAT EXCEPTION maybe be thrown as the stage file is in writing.
Show Segments with STAGE, when read stages which are writting by Flink or deleting by spark. JSONFORMAT EXCEPTION will be thrown as the stage file is in writing.
Show Segment will load partition info for non-partition table, leading to bad performance, which shall be avoided.
In getLastModifiedTime of TableStatus, if the timestamp is empty, getLastModifiedTime throw Exception. Accoding to getLoadEndTime(), we shall return -1.

What changes were proposed in this PR?

Insert Stage,  add RETRY to read stage file.
Show Segments with STAGE, add RETRY to read stage.
Show Segment load partition only for partition table
getLastModifiedTime return -1 if the timestamp is empty.

Does this PR introduce any user interface change?

No

Is any new testcase added?

No

Build Failed  with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/4274/

Build Failed  with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/2529/

Build Failed  with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/2531/

Build Failed  with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/4276/

Build Failed  with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/4278/

Build Failed  with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/2533/

Build Failed  with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/2535/

Build Failed  with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/4280/

retest this please

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/4286/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/2539/

retest this please

retest this please

Build Failed  with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/2545/

retest this please

retest this please

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/2550/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/4298/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/2554/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/4302/

LGTM

LGTM


Mark the autocorrect for Rails/Delegate unsafe

Fixes https://github.com/rubocop/rubocop-rails/issues/858
The autocorrect for Rails/Delegate is unsafe when a refinement defines the receiver. Since delegate defines the method dynamically in a separate source file, the refinement is not applied in the context of the method definition. Thus, calling the method will result in a NameError because the receiver is not found.

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[ ] Added tests.
[x] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[x] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.
[ ] If this is a new cop, consider making a corresponding update to the Rails Style Guide.

I can understand the reasoning. However, I think one way to use "refinement" is monkey patching. So, in addition to "refinement", it will be possible to reproduce the same in "open class" (but it's a global effect, not file scope) . I'm going to close this proposal because edge cases like this leave no safe cop when setting false to safety by default.
Some false positives remain, but a different solution would be needed, such as allowing delegation to methods defined with "refinement" in the same file.