Visualization with Gepetto

I'm trying to visualize a robot using gepetto viewer and pinocchio.
I'm using pinocchio version 1.2.8  and gepetto viewer version 1.1.0
The following code sample does not work:
from pinocchio.robot_wrapper import RobotWrapper
import pinocchio as pnc

URDF_PATH = "my_urdf_path"

robot = RobotWrapper(URDF_PATH, "my_meshes_package_path", pnc.JointModelFreeFlyer())
robot.initDisplay("world/my_robot", loadModel=True)

I previously ran gepetto-viewer-server in another terminal.
Still I get the following error:
Error while starting the viewer client.
Check wheter gepetto-viewer is properly started

Is this the correct way to display the robot? What can I do to correct it?

Do you start corba omninames?
Can you try with gepetto-gui?

@jcarpent I'm not familiar with gepetto-gui, what is the difference with respect to gepetto-viewer-server?

It is an equivalent software based on QT which has proven to be slightly more reliable that GVS in the past.

We have an osg install without QT plugins, so it's going to be tedious to test with gepetto-gui.
Is geppeto-viewer-server deprecated?
omniNames is already started when running the test described by @mpetriaux. I encoutered the same issue.

Does gepetto-viewer-server print an error message ?
In robot_wrapper.py, in method RobotWrapper.initDisplay, could you catch errors of type gepetto.Error and print them ? @jcarpent I think it should be changed as the potentially helpful error message is hidden.

We have an osg install without QT plugins, so it's going to be tedious to test with gepetto-gui.

Did you manually deactivate it ? By default, it is activated. If you reconfigure OSG, use cmake flag -DDESIRED_QT_VERSION=4

Then, for gepetto-gui, you have no other options than recompiling.
For gepetto-viewer-server, did you get the opportunity to answer my two other questions ?

Thanks @jmirabel, we'll get back to you regarding our tests asap.

Thank you all for your answers.
I've been digging in initDisplay method.
First, this line scene_l = gui.getSceneList() doesn't works on our gepetto version, getSceneList() doesn't exist.
This doesn't seem so bad, if I just skip this line and assume the scene doesn't exist I can continue until self.loadDisplayModel()
Same thing here, method gui.nodeExists() is not defined but I can skip the check (l. 245) and continue.
Then if I continue step by step I end up with a robot displayed.
Meshes are ill-placed in the viewer (this might be an internal issue, I'll keep you informed) but at least they are here.

@mpetriaux Just to be sure, which version of gepetto are you currently using?
Why to not use the last version on the robotpkg repository?

As mentioned in the issue by @mpetriaux, we use gepetto-viewer v1.1.0, so we are indeed a bit late with respect to the latest releases.
We can try to update to the latest stable release of gepetto-viewer.

So I'm trying to update to latest releases of gepetto-viewer, gepetto-viewer-corba and eigenpy.
But then I need osg-Qt.
I tried to pass the CMake flag you advised @jmirabel but it's not used by the project.
What version of OpenSceneGraph are you using?

@mpetriaux
Do you know that you can install all these sotfwares through robotpkg ppa (binairies).
You can use the same instructions than for Pinocchio:
https://github.com/stack-of-tasks/pinocchio/wiki/Installation
You just need to add the ppa of robotpkg as explained in the installation instructions of Pinocchio and run:
sudo apt-get install robotpkg-gepetto-viewer-corba
It will install gepetto-viewer-corba and gepetto-gui with all their dependencies.

If @jcarpent solution does not suit your needs (which is the easiest):
For OpenSceneGraph, you have two solutions (working at least on Ubuntu 14.04 and 16.04):

apt-get install libopenscenegraph-dev,
installation version 3.2 or 3.4 from source. If you choose this option, make sure you have Qt installed and is found by OSG, then add the CMake flag I mentioned earlier.

I tried out @jcarpent's way and managed to launch gepetto-gui along with @mpetriaux's script. The URDF geometries (both visual and collision) are loaded in the scene, but for some reason they appear to be "black". The mesh files are stored in STL format, and used to be displayed fine in previous versions of gepetto-viewer. See below picture for comparison between gepetto-gui and meshlab for the same mesh file.

For the record, the corresponding urdf part is:
    <visual>
      <origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
      <geometry>
        <mesh filename="package://my_meshes/MyLink.STL"/>
      </geometry>
      <material name="">
        <color rgba="0.752941176471 0.752941176471 0.752941176471 1.0"/>
      </material>
    </visual>

This is due to a bug in the STL plugin of OSG in version 3.2. The bug is fixed in 3.4.
From binary packages, the only option (though I never tried) is to convert them in another format (using meshlab for instance).
If you do not want to modify the URDF file, you can do:

convert file.stl to file.obj (OBJ, DAE or anything you like)
run command osgconv file.obj file.stl.osgb.

Explanation: when gepetto-gui opens mesh mesh.ext, it first check whether there exists some mesh.ext.(osg|osgb|osg2). If such a file exists, it opens it instead of mesh.ext. This is useful when loading big meshes because OSG native formats (especially osgb, b for binary) are a lot faster to open than text file formats. In the above scenario, file.stl.osgb will be used instead of file.stl.

So I've found a patch to make pinocchio 1.2.8 work with our gepetto viewer version (1.1.0).
I removed calls to getSceneList and nodeExists.
Then I changed the quaternion convention in XYZQUATToViewerConfiguration and call this method.
For me the issue is solved.
I think we will soon update to latest versions of eigenpy and gepetto-viewer which will be a more sustainable solution.
Thank you for your help!
@aelkhour I let the issue open in case you have additional questions one the STL files topic, feel free to close.

@jcarpent Assuming we use the robotpkg PPA to install everything, does the above script work with pinocchio v2.0.0-alpha and gepetto-gui?

They should in practice.

I installed pinocchio v2.0.0-alpha on Ubuntu 18.04, and installed gepetto-viewer-corba from the robotpkg PPA.
I launched gepetto-gui and ran the following simple script
import pinocchio

urdf_path = 'pendulum.urdf'

robot = pinocchio.RobotWrapper()
robot.initFromURDF(urdf_path, '.', pinocchio.JointModelFreeFlyer())
robot.initDisplay('python-pinocchio', 'world', loadModel=True)

I get an empty scene in gepetto-gui, with the following log:
List of GroupNodes :
   hpp-gui
 does not exist.: iostream error
 does not exist.: iostream error
 does not exist.: iostream error
 does not exist.: iostream error
Node "world/pinocchio/visuals/world_0" does not exist.
Node "world/pinocchio/visuals/PendulumArm_0" does not exist.
Node "world/pinocchio/visuals/PendulumIMU_0" does not exist.
Node "world/pinocchio/visuals/PendulumMass_0" does not exist.

Am I doing something wrong? Maybe I'm not using RobotWrapper the way it's supposed to be used?
pendulum.urdf is as follows:
<?xml version="1.0" ?>
<robot name="pendulum">
    <link name="world">
		<visual>
			<origin xyz="0 0 0" rpy="0 0 0" />
			<geometry>
				<sphere radius="0.005"/>
			</geometry>
			<material name="">
				<color rgba="1.0 1.0 1.0 1.0"/>
			</material>
		</visual>
		<inertial>
			<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
			<mass value="1000.0"/>
			<inertia ixx="0.0" ixy="0.0" ixz="0.0" iyy="0.0" iyz="0.0" izz="0.0"/>
		</inertial>
    </link>

   <joint name="PendulumJoint" type="revolute">
      <origin xyz="0.0 0.0 0.0" rpy="0 0 0"/>
      <axis xyz="1 0 0"/>
      <parent link="world"/>
      <child link="PendulumArm"/>
      <limit effort="0" velocity="0"/>
    </joint>

    <link name="PendulumArm">
		<visual>
			<origin xyz="0 0 0.25" rpy="0 0 0" />
			<geometry>
				<box size="0.01 0.01 1.0"/>
			</geometry>
			<material name="">
				<color rgba="1.0 1.0 1.0 1.0"/>
			</material>
		</visual>
		<inertial>
			<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
			<mass value="0.0001"/>
			<inertia ixx="0.00001" ixy="0.0" ixz="0.0" iyy="0.00001" iyz="0.0" izz="0.00001"/>
		</inertial>
    </link>

    <joint name="PendulumMassJoint" type="fixed">
      <origin xyz="0.0 0.0 1.0" rpy="0 0 0"/>
      <parent link="PendulumArm"/>
      <child link="PendulumMass"/>
    </joint>
    <link name="PendulumMass">
		<visual>
			<origin xyz="0 0 0" rpy="0 0 0" />
			<geometry>
				<sphere radius="0.06"/>
			</geometry>
			<material name="">
				<color rgba="1.0 1.0 1.0 1.0"/>
			</material>
		</visual>
		<inertial>
			<origin xyz="0.1 0.0 0.0" rpy="0.0 0.0 0.0"/>
			<mass value="1.0"/>
			<inertia ixx="0.001" ixy="0.0" ixz="0.0" iyy="0.001" iyz="0.0" izz="0.001"/>
		</inertial>
    </link>
    <joint name="IMUJoint" type="fixed">
      <origin xyz="0.0 0.0 0.75" rpy="0 0 0"/>
      <parent link="PendulumArm"/>
      <child link="PendulumIMU"/>
    </joint>
    <link name="PendulumIMU">
		<visual>
			<origin xyz="0 0 0" rpy="0 0 0" />
			<geometry>
				<sphere radius="0.025"/>
			</geometry>
			<material name="">
				<color rgba="1.0 1.0 1.0 1.0"/>
			</material>
		</visual>
		<inertial>
			<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
			<mass value="0.0001"/>
			<inertia ixx="0.0" ixy="0.0" ixz="0.0" iyy="0.0" iyz="0.0" izz="0.0"/>
		</inertial>
    </link>
</robot>

The pinocchio implementation of Gepetto-viewer does not allow yet to display urdf files including simple geometries.
To do so, we would need to wrap FCL objects, in order to recover the geomtries parameters, and then to add the dedicated code to call Gepetto-Viewer routines in the RobotWrapper class, display method. See #548

The pinocchio implementation of Gepetto-viewer does not allow yet to display urdf files including simple geometries.

Strange, this worked for at least pinocchio v1.2.8. Also, I'm pretty sure I have the same problem when loading meshes, which is our real issue (I will double check).


Load locale at runtime

We have an app that needs to support 26 languages. I don't want every user to have to download all 26 languages so I want to request the locale with XHR in an instance initializer at runtime and load the locale into moment as described here.
As far as I can tell, this is not possible. Am I missing something?

import moment from 'moment';
moment.locale(...);

All the moment methods are available.  This functionality is provided via https://github.com/jasonmit/ember-cli-moment-shim
Is the feature you're looking for to optionally write the locale json files to the assets folder instead of vendor.js?

@mjuniper please test the ember-cli-moment-shim changes and then I'll pull them upstream into ember-moment

Sorry, we went a different direction so I haven't been watching this. But yes, that is what I was after. I'll try to take a look this week.

Okay, closing issue feel free to update with your findings.

I had an in-repo-addon that was copying moment's locale files into dist. I can verify that this update works as expected :clap:

Great, thanks for the update


Allows email address domains to be IP addresses

Sorry I didn't make an issue first. Figured it's a small change, so I'd just offer a solution whether it's acceptable or not.
References:

https://learn.microsoft.com/en-us/archive/blogs/testing123/email-address-test-cases
https://github.com/validatorjs/validator.js/issues/800

This doesn't make sure the IP address is valid. It only makes sure that it's not obviously invalid.

can you benchmark perf impact of this change on plain emails?

I think validator.js approach of making this optional generally makes more sense, especially if this makes the hot path regex slower

Sure, added to benchmarks/string.ts like this:
const emailSchema = z.string().email()

...

  .add("email", () => {
<EMAIL_ADDRESS>  })

Without IP support: 7,224,694 ops/sec ±0.59% (96 runs sampled)
With IP support: 7,175,461 ops/sec ±0.62% (92 runs sampled)
I also tried with 1000 random email addresses from https://www.randomlists.com/email-addresses?qty=1000 where each one was checked in a for .. of loop.
Without IP support: 7,459 ops/sec ±0.39% (97 runs sampled)
With IP support: 7,584 ops/sec ±0.56% (97 runs sampled)
And finally, I replaced two of the 1000 random email addresses with email addresses that use IP addresses, still using the regex with IP support: 7,663 ops/sec ±0.41% (97 runs sampled)
The speed is so similar that I don't think it's worth making it optional.

Leave open

Not stale

not stale

Thanks for this (now very old) PR! The final word on email regexes landed here: https://github.com/colinhacks/zod/pull/2157 Further discussion can happen in new issues/PRs. 👍


Give example of VOLUME command for Dockerfile

The command line method of creating a volume to "Mount a host directory as a data volume"
is (for example)
docker run -p 1433:1433 -e SA_PASSWORD=blah e ACCEPT_EULA=Y -v H:/Data:/var/opt/mssql -d microsoft/mssql-server-linux

What would the equivalent Dockerfile syntax be? Give an example under the VOLUME section
File: engine/reference/builder.md, CC @mstanleyjones

#dibs for the hackathon

Read the note here https://docs.docker.com/engine/tutorials/dockervolumes/#mount-a-shared-storage-volume-as-a-data-volume
You cant mount host directory from Dockerfile as the image we are going to build should be host dir independent.

No action for two days, so this is up for grabs again!

@mstanleyjones please consider my comment. It is not possible to do same with Dockerfile as we do while running a container.

Read the note here https://docs.docker.com/engine/tutorials/dockervolumes/#mount-a-shared-storage-volume-as-a-data-volume
You cant mount host directory from Dockerfile as the image we are going to build should be host dir independent.

Should it be clarified here again? Just copying Note from here will be fine?

claimed

@bhavin192 were you intending to claim this? If so, you were first. If not, please let @tippexs know they can have it.

@mstanleyjones yes, I want to claim it.

These files cannot be edited here so I created PR https://github.com/moby/moby/pull/32735

Being reviewed upstream. :)

Merged upstream. Thanks @bhavin192 !

Closed via https://github.com/moby/moby/pull/32735


💡 [REQUEST] - Extract login method to config

Summary
In AuthContext has function logIn this uses method default redirect
https://github.com/soofstad/react-oauth2-pkce/blob/b7980288083e99c1b751a2bbae41efc4b94d64cd/src/AuthContext.tsx#L88
Please extract this setting in config so that we can configure it.
In my application, it is necessary to use the popup method, however, I cannot override this everywhere, since there are calls inside the application.
My problem arises when the refresh token expires, then the logIn function is called already with the refresh method.
For example, here:
https://github.com/soofstad/react-oauth2-pkce/blob/b7980288083e99c1b751a2bbae41efc4b94d64cd/src/AuthContext.tsx#L136
I would like to call it like this:
function handleExpiredRefreshToken(initial = false) {
        // If it's the first page load, OR there is no sessionExpire callback, we trigger a new login
        if (initial)
            return logIn(undefined, undefined, "popup");
        // TODO: Breaking change - remove automatic login during ongoing session
        if (!config.onRefreshTokenExpire)
            return logIn(undefined, undefined, "popup");
        config.onRefreshTokenExpire({
            login: logIn,
            logIn,
        });
    }

the first condition cannot be redefined in any way, the second one can be used like this:
const authConfig: TAuthConfig = {
  onRefreshTokenExpire: (event: TRefreshTokenExpiredEvent) => event.logIn(undefined, undefined, "popup"),
}

I can also suggest removing the first condition. As a result, the second one will work, which we can override from the configuration
My auth config:
const authConfig = {
  clientId: "01",
  authorizationEndpoint: "auth/authorization",
  tokenEndpoint: "https://example.ru/oauth2/token",
  redirectUri: window.location.origin + "/auth/callback/test",
  logoutEndpoint: "auth/logout",
  onRefreshTokenExpire: (event: TRefreshTokenExpiredEvent) => event.logIn(undefined, undefined, "popup"),
  autoLogin: false,
  state: `${Math.random().toString(36).substring(7)}_${Date.now()}`,
  scope: "offline openid",
} satisfies TAuthConfig;

Basic Example
type TAuthConfig = {
 loginMethod: 'popup' | 'refresh'
}

Drawbacks
The authorization method cannot be controlled
Unresolved questions
No response
Implementation PR
No response
Reference Issues
No response

Think this is a reasonable request.
My assumption was that for the first page load, a popup would not be necessary. Out of curiosity, why do you need a popup for the first login?

I'm development an add-on for Office Word and there's a built-in browser. If I use a redirect, it opens an external browser, which is why I can't intercept the oauth 2 server response and log in.

Think this is a reasonable request. My assumption was that for the first page load, a popup would not be necessary. Out of curiosity, why do you need a popup for the first login?

I'm development an add-on for Office Word and there's a built-in browser. If I use a redirect, it opens an external browser, which is why I can't intercept the oauth 2 server response and log in.

@soofstad, thanks! Can you tell me when you plan to make this functionality and release a version?

If you feel up for it, please go ahead a make a pull-request with the required changes.
If not, I will probably find time in the next few weeks :slightly_smiling_face:


Have SQL Injection filter?

All method has SQL Injection check？

Ebean uses prepared statements. It's not so much a "check" but a "prevention". https://www.owasp.org/index.php/Preventing_SQL_Injection_in_Java
Also, it appears you are using the issue tracker here for discussion. There is a Google Group:
https://groups.google.com/forum/#!forum/ebean
I'd like to suggest you ask questions there and use the issue tracker for bug reports and feature requests.


Operator merges KnativeServing resource with the one in config/crds.

If the user applies a KnativeServing before applying the operator, the operator will smart merge the currently applied CR with https://github.com/knative/serving-operator/blob/master/config/crds/serving_v1alpha1_knativeserving_cr.yaml.
Steps to reproduce:
kubectl apply -f config/crds/serving_v1alpha1_knativeserving_crd.yaml

Apply a custom CR. For example:
apiVersion: serving.knative.dev/v1alpha1
kind: KnativeServing
metadata:
  name: knative-serving
  namespace: knative-serving
spec:
  config:
    istio:
      gateway.knative-ingress-gateway: "my-istio.my-istio-system.svc.cluster.local"

Then apply the operator:
ko apply -f config/

The KnativeServing will also include the spec from the config directory:
kubectl get knativeserving -o yaml --all-namespaces

/assign

/close
Fixed by #120


E126 on with statement line continuation

E126 (continuation line over-indented for hanging indent) is reported on what I think should be correct formatting on line continuation in multiline with statements:
with open('foo') as foo, \
     open('bar') as bar, \
     open('baz') as baz:
    pass

PEP8 doesn't specify this explicitly, but I believe this is a perfectly reasonable and natural way to indent such a statement.  Also, IDLE automatically indents this the same way.

So now that pep8 exemplifies 5 space indents on with statement continuations [1] will E126 be updated?
with open('/path/to/some/file/you/want/to/read') as file_1, \
     open('/path/to/some/file/being/written', 'w') as file_2:
    file_2.write(file_1.read())

https://www.python.org/dev/peps/pep-0008/#maximum-line-length (near the bottom of the section)

@clayg I don't understand your question. It's been disabled by default.

@sigmavirus24 yeah!  I'd rather it can be turned on but just always do the right thing!  Maybe I'm misunderstanding this bug report tho - I was just looking for "with statement line continuation" - I'm not necessarily sure if E126, E127 or E121 are the culprit?  The issue as far as I'm concerned is the pep8 tool flagging as an error formatting that is provided in pep8 as exemplary?
I rather like E126/E127/E121 for their original job of dealing with dangling-if's - and in fact I think it does a bang up job there [1] - these checks predates language support for multiple with statement support AFAIK.
But when I turn on all the E's (as I do in most of the projects I work on) it incorrectly forces me to indent my with statements in a manor that's not congruent with pep8's examples for indenting multi-line-with-continuation.  I don't think necessarily that the form it enforces is incorrect per say:
with open('/path/to/some/file/you/want/to/read') as file_1, \
        open('/path/to/some/file/being/written', 'w') as file_2:
    file_2.write(file_1.read())

... looks fine to me, but according to the examples in pep8 alignment of the hanging lines on multi-line-with-continuations can also be five spaces:
with open('/path/to/some/file/you/want/to/read') as file_1, \
     open('/path/to/some/file/being/written', 'w') as file_2:
    file_2.write(file_1.read())

^ but that would trigger E121 (different versions of pep8 may have raised E126/E127 in the past?)
I hate that my choice is format multi-line-with-continuation statements differently from the example in pep8 or ignore all errors with multi-line-continuation according to the examples in pep8 by disabling entirely a bunch of E checks that I rather like!  :cry:
My question is if the pep8 tool's checks could be updated so that I can I have these E checks turned on without the unfortunate behavior of flagging correctly [2] formatted multi-line-with-continuations?
Perhaps the checks could be updated to exclude/ignore with statements?
Thanks!

Well, actually I'm not sure I understand the rules for multi-line-if-continuation, it seems like E121 or E126 should fire for aligned_to_if_to_condition?  https://gist.github.com/clayg/98c57584d7476ad70829
"correctly" according to the examples in the pep8 document/rules


Can't run the test example

Hey! I tried installing your package, but I got the following error when I tried running the test example:

Is this because I installed something incorrectly? Or is the example not working?
Thanks!

There was a minor bug in the example experiment. See this pr.

There was a minor bug in the example experiment. See this https://github.com/rishavb123/ExperimentLab/pull/11.


New Issue

I'm trying to create a New Issue

I want to assign this issue.

test

what is my question

I wanna report an issue


Bigtable API failure: cannot use SSDs

We just started receiving this failure:

Error: Transaction Failed : Transaction cannot complete : Your project can't use SSD nodes in this zone. Contact<EMAIL_ADDRESS>to request the capability.

(https://circleci.com/gh/GoogleCloudPlatform/google-cloud-node/199)
This doesn't happen with my project, but it does for our system tests project (long-door-651).

cc: @danoscarmike

cc @lukesneeringer / ping @danoscarmike -- CI still unhappy aboutthis one.


Fixed cubemap update

Cubemap update was broken by this commit: 6fa82ea73d7263931d6c96d56a42b5cca20a07a0
Cubemap update call setcompressedTextureData/setTextureData with 0, 0 as width and height as this was relying on those methods to just use the t->width, t->height instead of the function arguments.
Not sure if that is legal, maybe an assert should check for that case or it should be handled in the function (width = width ? width : t->width)

Sorry for the last change request, I just would like the lines to not be too long. This is a very good catch, thank you for the PR!

Absolutely no problem, I agree 100% with your reasoning.


AttributeError: 'NoneType' object has no attribute 'group'

I'm using one of the basic code:
from googletrans import Translator

translator = Translator()

translation=translator.translate('안녕하세요.', dest='ja')

print(translation)

And I'm getting an attribute error :
AttributeError: 'NoneType' object has no attribute 'group'
Please let me know if the module is still working properly.

Came across this as well 👍🏻

Solution:
$ pip3 uninstall googletrans
$ pip3 install googletrans==3.1.0a0

Solution:
$ pip3 uninstall googletrans
$ pip3 install googletrans==3.1.0a0

have not fixed yet

Solution:
$ pip3 uninstall googletrans
$ pip3 install googletrans==3.1.0a0

have not fixed yet

I don't even know why it didn't work for you, but it helped me

Any other solution guys please?

Solution:
$ pip3 uninstall googletrans
$ pip3 install googletrans==3.1.0a0

Worked for me, thank you :)

.

googletrans==3.1.0a0 does not solve this error for me sadly

It solved the problem, but it doesn't translate anything now.

@jbakerr @dkbrz I checked myself personally on my computer - everything works perfectly:

Try "import googletrans" and "translator = googletrans.Translator()". It works in my case.

Solution:
$ pip3 uninstall googletrans
$ pip3 install googletrans==3.1.0a0

Works for me 🥇

Hum..... the problem has not been solved yet. After reinstalling the library from latest version to 3.1.0a0, 'dest' parameter doesn't work. When you're trying to translate 'hello', despite selected destination langauge, you get the source text again....

Solution:
$ pip3 uninstall googletrans
$ pip3 install googletrans==3.1.0a0

have not fixed yet

I don't even know why it didn't work for you, but it helped me

It also solved my issue. Thanks

Solution:
$ pip3 uninstall googletrans
$ pip3 install googletrans==3.1.0a0

When will the default pip3 branch default to this version?

Hum..... the problem has not been solved yet. After reinstalling the library from latest version to 3.1.0a0, 'dest' parameter doesn't work. When you're trying to translate 'hello', despite selected destination langauge, you get the source text again....
Same here. Any solutions to this, guys?

Solution:
$ pip3 uninstall googletrans
$ pip3 install googletrans==3.1.0a0

Thanks for this, worked fine

I'm having the same issue as @dkbrz .
If i run:

translator = Translator()

translation=translator.translate('안녕하세요.', dest='ja')

print(translation.text)

it is returning the original string - untranslated: '안녕하세요'

Thats because source is ja.

The issue is due to a failure followed by an invalid execution path that cannot handle it properly ..
  # in jtoken file (orig)
  raw_tkk = self.RE_TKK.search(r.text)
  if raw_tkk:
    self.tkk = raw_tkk.group(1)
    return

    # this will be the same as python code after stripping out a reserved word 'var'
    code = self.RE_TKK.search(r.text).group(1).replace('var ', '')

  # in jtoken file (modified)
  raw_tkk = self.RE_TKK.search(r.text)
  if raw_tkk:
    self.tkk = raw_tkk.group(1)
    return

    # this will be the same as python code after stripping out a reserved word 'var'
    code = raw_tkk.group(1).replace('var ', '')

As you can noticed from the above two,
# raw_tkk is the result of calling self.RE_TKK.search(r.text)

raw_tkk = self.RE_TKK.search(r.text)

# If raw_tkk is valid, it return from the function as follow
 if raw_tkk:
    self.tkk = raw_tkk.group(1)
    return

# If it is not valid, it does run
code = self.RE_TKK.search(r.text).group(1).replace('var ', '')

# which is equal to
code = raw_tkk.group(1).replace('var ', '')

# But we know we are there due to an invalid `raw_tkk`, and one cannot call `.group(1)` of a NoneType

Does not resolve the issue even after installing version 3.1.0a0

Solution:
$ pip3 uninstall googletrans
$ pip3 install googletrans==3.1.0a0

It resolved my issue. Thanks.


Datasource Menu box cuts off when datasource name is long

When datasource name is long, the menu (after use clicks the three dots) renders off - cuts off. It’s still on the screen but below the chart instead of rendering to the left.
Expected results
Render to the left.
Actual results
Cuts off.
Screenshots

How to reproduce the bug

Go to 'Chart Explore' - chart with long virtual datasource name
Click on 'the three dots'
See the issue

Environment
(please complete the following information):

superset version: master

Checklist
Make sure these boxes are checked before submitting your issue - thank you!

[x] I have checked the superset logs for python stacktraces and included it here as text if there are any.
[x] I have reproduced the issue with at least the latest released version of superset.
[X] I have checked the issue tracker for the same issue and I haven't found one similar.

Duplicate of #11094

@zuzana-vej would you mind consolidating all the cut-off/overflow issues, including pills, metric fields, etc.? we will tackle them by category all at once.  🙏

I ll close this since it's duplicate, will link the other issues.


bibxml library: IAB and IESG as authors

Describe the issue
(This report should not be confused with #262, which is an issue with a different library)
For 35 RFCs in the IAB Stream, the Internet Architecture Board is listed as an author (not an organization). (Note that the IAB no longer lists itself as an author in its RFCs, so this issue only impacts a subset of older IAB Stream documents.)
For 22 of those RFCs, the author information is presented as the following in rfc-index.xml:
<author>
  <name>IAB</name>
</author>

For 11 of those RFCs, the author information in rfc-index.xml is the following:
<author>
  <name>Internet Architecture Board</name>
</author>

In the bib information returned from bib.ietf.org, this has been transformed into
<author>
  <organization>Internet Architecture Board</organization>
</author>

Author information in a reference should match author information provided in the header of the RFC. For these IAB Stream documents, if rfc-index.xml specifies "IAB" as an author, then this should also be used in the bib data. If rfc-index.xml uses "Internet Architecture Board" for an author name, then this should be used in the bib data. This will let the bib data more closely match the information in the RFC header.
There are also a small number of documents that list the IESG (5 documents) or the Internet Engineering Steering Group (2 documents) as author. This information also needs to be passed though unmodified.
Note: The following are unique to the RFC series, but using the bib-index.xml author information should work:
RFC 3716
rfc-index.xml: <author><name>IAB Advisory Committee</author></name>
bib.ietf.org:  <author fullname="IAB Advisory Committee" initials="IAB" surname="Advisory Committee"/>
RFC 4089
rfc-index.xml: <author><name>IAB and IESG</author></name>
bib.ietf.org:  <author fullname="IAB and IESG" initials="IAB" surname="and IESG"/>)
Code of Conduct

[X] I agree to follow the IETF's Code of Conduct

Thanks @ajeanmahoney , we can certainly adjust this.

@strogonoff @stefanomunarini could you have a look to see if this affects relaton-py? Thanks.

@ronaldtse

Does this mean serialization is wrong, or source data is wrong?

The source should specify IAB as an org or a person consistently

We can special-case this and serialize IAB as a person rather than organization whenever it is encountered

There are definitely consistency issues in the source.

For some RFCs source gives organization: https://github.com/ietf-tools/relaton-data-rfcs/blob/0bdd462f7a9612cb842a08fae995bb738bd6f271/data/RFC1984.yaml#L21-L24

For others source gives a person (note how this is a bit awkward): https://github.com/ietf-tools/relaton-data-rfcs/blob/0bdd462f7a9612cb842a08fae995bb738bd6f271/data/RFC3716.yaml#L21-L46

The source data (rfc-index.xml) is correct in these cases. Note that the source data cannot consistently specify the IAB as an author or an organization because this hasn't been consistent over the history of IAB docs.  The source data captures what is shown the RFC header, and the bib data should match what is given in the RFC header.

As per: https://www.rfc-editor.org/rfc/rfc7991
The <organization> tag is only for:
2.35.  <organization>

   Specifies the affiliation [RFC7322] of an author.

   This information appears both in the "Author's Address" section and
   on the front page (see [RFC7322] for more information).  If the value
   is long, an abbreviated variant can be specified in the "abbrev"
   attribute.

   This element appears as a child element of <author> (Section 2.7).

   Content model: only text content.

So it is only for affiliation.
In this case, the correct format in RFC XML seems to be (according to RFC 7991):
<author fullname="Internet Architecture Board"/>

Because there is no "organization".
We can do the same for all these you've listed:

"IAB"
"Internet Architecture Board"
"IAB and IESG"
"IAB Advisory Committee"
"IESG"
"Internet Engineering Steering Group"

Is this correct?

yes, thanks!

The information coming from source (i.e., rfc-index.xml) should not be modified if can be helped. The RPC can clean up source data, and this can propagate through rfc-index.xml. If it's needed later, we could work on a specification that describes what a transform of RFC bib data would look like.

To drive the point a little harder. The way the IAB has represented itself in the past in the RFC series has not been consistent. It is not right to try to rationalize what they did in the past into some single form of representing the reference - we need to report accurately on what happened at the time. The underlying semantics may or may not matter to the IAB that published a given document, but it was the sematic set at the time, and it's not ours to change.

Thanks @ajeanmahoney @rjsparks . Is the following summary correct?

In BibXML the proper way to encode an organization author is

<author><organization>Org Name</organization></author>

In these IAB/IESG entries, the RPC has not determined what they semantically represent. It is not certain that they should be considered "people", "organizations" or something else.
Hence we should not shoehorn these entries into an <organization>.

Which means we have the following 3 categories of RFC authors.
Person
<author fullname="..." initials="..." surname="..."/>

If with affiliation:
<author fullname="..." initials="..." surname="...">
  <organization>Org Name</organization>
</author>

Organization
<author>
   <organization>Org Name</organization>
</author>

Undetermined
<author fullname="Internet Architecture Board"/>

To make this a bit more concrete. Look at the references in RFC9280, particularly to the reference to RFC5620. In text form:

[RFC5620]  Kolkman, O., Ed. and IAB, "RFC Editor Model (Version 1)",
RFC 5620, DOI 10.17487/RFC5620, August 2009,
https://www.rfc-editor.org/info/rfc5620.

In the published XML:
        <reference anchor="RFC5620" target="https://www.rfc-editor.org/info/rfc5620" quoteTitle="true" derivedAnchor="RFC5620">
          <front>
            <title>RFC Editor Model (Version 1)</title>
            <author initials="O." surname="Kolkman" fullname="O. Kolkman" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author>
              <organization showOnFrontPage="true">IAB</organization>
            </author>
            <date year="2009" month="August"/>
            <abstract>
              <t indent="0">The RFC Editor performs a number of functions that may be carried out by various persons or entities.  The RFC Editor model presented in this document divides the responsibilities for the RFC Series into four functions: The RFC Series Editor, the Independent Submission Editor, the RFC Production Center, and the RFC Publisher.  It also introduces the RFC Series Advisory Group and an (optional) Independent Submission Stream Editorial Board.  The model outlined here is intended to increase flexibility and operational support options, provide for the orderly succession of the RFC Editor, and ensure the continuity of the RFC series, while maintaining RFC quality and timely processing, ensuring document accessibility, reducing costs, and increasing cost transparency.  This memo  provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5620"/>
          <seriesInfo name="DOI" value="10.17487/RFC5620"/>
        </reference>

And I don't think we've used the Undetermined form above in any published v3 xml for the IAB, and I think it's unlikely that it's been used for anything else that could be recognized as an organization.
If Undetermined did happen, for all practical purposes - it's identical to Person as you describe above.

@rjsparks Thanks. We don't have access to the RPC published XML but this is definitely enlightening.
In the excerpt of RFC 9280 of 5620's BibXML, it shows that IAB is encoded as an <author><organization>, which @ajeanmahoney has stated in the original post that is counter to their expectations.
<author>
  <organization showOnFrontPage="true">IAB</organization>
</author>

The only reason we proposed the "Undetermined" category is that the RPC stated that they do not want to encode "IAB" as an organization for older RFCs (https://github.com/ietf-tools/bibxml-service/issues/296#issuecomment-1247084892), which is what has been done in RFC 9280.
P.S. The above excerpt also raises a question about the contents of the <organization> tag, as it is empty for the Kolkman reference, but that is irrelevant to our current discussion:
<author initials="O." surname="Kolkman" fullname="O. Kolkman" role="editor">
  <organization showOnFrontPage="true"/>
</author>

We don't have access to the RPC published XML but this is definitely enlightening.

Yes you do. It's all in the rfc archive: rsync ftp.rfc-editor.org::rfcs/rfc\*xml

We don't have access to the RPC published XML but this is definitely enlightening.

Yes you do. It's all in the rfc archive: rsync ftp.rfc-editor.org::rfcs/rfc\*xml

Sorry @rjsparks I missed the message. Now armed with this data, are we saying that we want the BibXML service to obtain RFC authorship from the RFC archive directly, i.e. ignore rfc-index.xml?
That would be quite a change.

Thanks @rjsparks . So we went through the full list of names available in rfc-index.xml (RFC0001 to RFC9318).
We found several issues that perhaps the RPC (ping @ajeanmahoney ) could address as data issues:

5 entries introduced an empty space before the name text (RFC4054, RFC4422, RFC4504, RFC4620, RFC4790), e.g. <name> A. Chiu</name> instead of <name>A. Chiu</name>
extra "dot" in the RFC4683 encoding of <name>H.. Lee</name>
8 entries of generational name II being encoded as an independent name (RFC3789, RFC3790, RFC3791, RFC3792, RFC3793, RFC3794, RFC3795, RFC3796), all for <author><name>P. Nesser</name></author><author><name>II</name></author>
3 entries of generational name III encoded as an independent name (RFC9171, RFC9172, RFC9173), all for <author><name>E. Birrane</name></author><author><name>III</name></author>
encoding of <name>et al.</name> for RFC2555, which was really meant as "RFC Editor, et al." <author><name>RFC Editor</name></author><author><name>et al.</name></author>

Other than the above, we filtered all published RFCs and came up with this list of "non-personal names", and we will treat these as the "undetermined" type in BibXML (i.e. only contains fullname without initials or surname):
ACM SIGUCCS
Audio-Video Transport Working Group
Bolt Beranek
Defense Advanced Research Projects Agency
EARN Staff
ESCC X.500/X.400 Task Force
ESnet Site Coordinating Comittee (ESCC)
End-to-End Services Task Force
Energy Sciences Network (ESnet)
Federal Networking Council
Gateway Algorithms and Data Structures Task Force
IAB Advisory Committee
IAB and IESG
IAB
IANA
IESG
IETF Secretariat
ISO
ISOC Board of Trustees
Information Sciences Institute University of Southern California
International Organization for Standardization
International Telegraph and Telephone Consultative Committee of the International Telecommunication Union
Internet Activities Board
Internet Architecture Board
Internet Assigned Numbers Authority (IANA)
Internet Engineering Steering Group
KOI8-U Working Group
Mitra
National Bureau of Standards
National Research Council
National Science Foundation
NetBIOS Working Group in the Defense Advanced Research Projects Agency
Network Information Center. Stanford Research Institute
Network Technical Advisory Group
Newman Laboratories
North American Directory Forum
Sun Microsystems
The Internet Society
The North American Directory Forum
Vietnamese Standardization Working Group

P.S. We have also found several issues in the names of references in published RFC XMLs, but not sure if those are to be reported.

@rjsparks I am confused with this particular comment:

To make this a bit more concrete. Look at the references in RFC9280, particularly to the reference to RFC5620. In text form:

[RFC5620]  Kolkman, O., Ed. and IAB, "RFC Editor Model (Version 1)",
RFC 5620, DOI 10.17487/RFC5620, August 2009,
https://www.rfc-editor.org/info/rfc5620.

In the published XML:
        <reference anchor="RFC5620" target="https://www.rfc-editor.org/info/rfc5620" quoteTitle="true" derivedAnchor="RFC5620">
          <front>
            <title>RFC Editor Model (Version 1)</title>
            <author initials="O." surname="Kolkman" fullname="O. Kolkman" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author>
              <organization showOnFrontPage="true">IAB</organization>
            </author>
...
        </reference>

This example clearly points to "IAB" being encoded as an organization author.
However, the RPC (@ajeanmahoney above) is specifically asking to NOT represent "IAB" as an organization author (https://github.com/ietf-tools/bibxml-service/issues/296#issuecomment-1248097196).
(Also a note to self that this is RFC 5620 bibliographic data in RFC 9280, and only RFCs after RFC 8650 are available in XML.)
Without further clarification, I understand that the RPC desired behavior is correct and that our proposal satisfies the needs, namely:

(Undetermined) For authors with the name given in the list in https://github.com/ietf-tools/bibxml-service/issues/296#issuecomment-1273389794, they will be presented as:

<author fullname="Internet Architecture Board"/>

(Persons) For authors with names not in the list, they will be presented as persons:

<author fullname="..." initials="..." surname="..."/>

If with affiliation:
<author fullname="..." initials="..." surname="...">
  <organization>Org Name</organization>
</author>

(Organizations) We will not treat any RFC author as organization authors from the rfc-index.xml.

If, the intent of this ticket was only to special case IAB and IESG, please help us categorize the full list of non-person authors on whether they are type 1 or type 3 authors.
Thanks.

The crux of the problem is that the RFC XML name model and that of rfc-index.xml are different, which leads to different expectations from BibXML consumers.

For the "author" element, RFC XML expects fullname, initials and surname.

rfc-index.xml only provides the equivalent of fullname.

The RPC expects at least the following:

personal names to fully populate fullname, initials and surname;

the "IAB" and "IESG" related authors to have no initials and surname;

Some organizations to be encoded as organizational authors.  ("Some" because we do not have guidance for, which is the point of the proposeal)

Other BibXML consumers expect at least 1 and 3, which is evident from the other tickets raised.
It's not about "not changing", the name model differences require us to make a determination on the nature of the name. And this needs to be done until the RPC adopts RFC XML for its bibliographic information.

So first - focusing on the original request: The essence was to not turn "Internet Architecture Board" or "IAB" or vice-versa, but to use whichever variant the rfc-index provides for a given RFC (and it will not be consistent). That should be preserved whether the string gets identified as an organization or not. Please confirm that this part of the request was not lost.
The conversation above quickly focused on the "organization or not" question. The proposal you are working towards is probably the best we can hope for, but there are going to be problematic cases, such as RFC4732 where the text lists the IAB as (semantics inferred) name='Internet Architecture Board, organization=IAB. The old xml2rfc.tools.ietf.org bibxml service just represented this as IAB` and that's where we should also aim at the current time. The RPC will go through an effort to groom their database and what they provide in places like rfc-index.xml in the future.
So, reluctantly, I agree that having a list like you have extracted above is necessary, but matches against the list should put the author into the "Organization", not "Undetermined" category. Undetermined should continue to exist as the catch-all.

Nit: Where did you find 'Bolt Baranek', and are you sure it didn't say 'Bolt Baranek and Newman' there?

Currently rfc-index.xml does not provide information on author's organizations or identify organizations as organizations.
The RPC needs to plan to provide this sort of information in the future to the bibxml service, and we will coordinate this data roll out.

at

P.S. We have also found several issues in the names of references in published RFC XMLs, but not sure if those are to be reported.

These should probably be reported as errata, but send an example to the RPC by email to verify that's how they want to ingest the information.

The essence was to not turn the string "Internet Architecture Board" into "IAB" or vice-versa, but to use whichever variant the rfc-index provides for a given RFC (and it will not be consistent). That should be preserved whether the string gets identified as an organization or not. Please confirm that this part of the request was not lost.

This part of the request was handled in this issue:

https://github.com/relaton/relaton-ietf/issues/101

Nit: Where did you find 'Bolt Baranek', and are you sure it didn't say 'Bolt Baranek and Newman' there?

From rfc-index.xml:
    <rfc-entry>
        <doc-id>RFC0907</doc-id>
        <title>Host Access Protocol specification</title>
        <author>
            <name>Bolt Beranek</name>
        </author>
        <author>
            <name>Newman Laboratories</name>
        </author>

So, reluctantly, I agree that having a list like you have extracted above is necessary, but matches against the list should put the author into the "Organization", not "Undetermined" category. Undetermined should continue to exist as the catch-all.

We are happy to treat all of these as "organizations", but we wish for the RPC to confirm with us which ones are organizations and which ones we should not semantically determine, because as @ajeanmahoney mentioned in this ticket, "IAB" and "IESG" are not to be treated as organizations (they are in the list).
From the list of non-personal authors (which covers all RFCs to date), there are a few categories:
Real organizations:
Bolt Beranek
Defense Advanced Research Projects Agency
Federal Networking Council
ISO
Information Sciences Institute University of Southern California
International Organization for Standardization
International Telegraph and Telephone Consultative Committee of the International Telecommunication Union
Mitra
National Bureau of Standards
National Research Council
National Science Foundation
Network Information Center. Stanford Research Institute
Newman Laboratories
North American Directory Forum
Sun Microsystems
The North American Directory Forum

Groups:
ACM SIGUCCS
Audio-Video Transport Working Group
ESCC X.500/X.400 Task Force
ESnet Site Coordinating Comittee (ESCC)
End-to-End Services Task Force
Energy Sciences Network (ESnet)
Gateway Algorithms and Data Structures Task Force
KOI8-U Working Group
NetBIOS Working Group in the Defense Advanced Research Projects Agency
Network Technical Advisory Group
Vietnamese Standardization Working Group

"Organization-like":
EARN Staff

IETF related (note that "IAB", "IESG", "IAB Advisory Committee" are already stated to be not organizations):
IAB Advisory Committee
IAB and IESG
IAB
IANA
IESG
IETF Secretariat
ISOC Board of Trustees
Internet Activities Board
Internet Architecture Board
Internet Assigned Numbers Authority (IANA)
Internet Engineering Steering Group
The Internet Society

@ajeanmahoney would you mind helping us decide which of the above are to be tagged under <organization> vs not? Thank you in advance!

So, the list should have "Bert Beranek" and "Newman Laboratories" and "Bert Berenek and Newman Laboratories". So that the right thing happens when the RPC updates the author information for RFC907.

A quick reskim of https://github.com/ietf-tools/xml2rfc-bibxml/blob/main/bibxml/bibxml-rfcs/gen-bibxml-rfcs-via-rfc-index would probably be helpful here.

@ronaldtse All entries in the lists above ("Real organizations", "Groups", "Organization-like", and "IETF related") should be treated as "organizations" so that we may move forward.

A quick reskim of https://github.com/ietf-tools/xml2rfc-bibxml/blob/main/bibxml/bibxml-rfcs/gen-bibxml-rfcs-via-rfc-index would probably be helpful here.

Thank you @rjsparks , not sure how we missed this all the time!
We will incorporate these as test cases at:

https://github.com/relaton/relaton-ietf/issues/103
https://github.com/relaton/relaton-py/issues/50

@ronaldtse All entries in the lists above ("Real organizations", "Groups", "Organization-like", and "IETF related") should be treated as "organizations" so that we may move forward.

Thank you @ajeanmahoney !

Apologies for adding to the list of authors that are actually organizations that need special handling, but RFC 2555 should have "RFC Editor, et al." treated as an organization.
From rfc-index.xml:
<rfc-entry>
<doc-id>RFC2555</doc-id>
<title>30 Years of RFCs</title>
<author>
<name>RFC Editor, et al.</name>
</author>

Currently in bibxml:
<reference anchor="RFC2555" target="https://www.rfc-editor.org/info/rfc2555">
<front>
<title>30 Years of RFCs</title>
<author fullname="RFC Editor, et al." initials="RFC" surname="Editor, et al."/>

Perhaps (similar to the handling for RFC 5000):
<reference anchor="RFC2555" target="https://www.rfc-editor.org/info/rfc2555">
<front>
<title>30 Years of RFCs</title>
<author>
<organization>RFC Editor, et al.</organization>
</author>

@ajeanmahoney thank you for suggesting to handle "RFC Editor, et al." as an organization, that makes more sense. We'll add this to the test cases!

@ajeanmahoney I believe the issue has been solved with the latest PR #306:
https://bib.ietf.org/get-bibliographic-item/?query=RFC+4089

https://bib.ietf.org/get-bibliographic-item/?query=RFC+3716

If so, could you help verify and close this issue? Thanks!

It has fixed the issue of displaying author name of "Internet Architecture Board" when "IAB" should be displayed. However, there are some RFCs (e.g., RFC 4845) where the author name is given as "Internet Architecture Board" in the document header. References to these RFCs should display "Internet Architecture Board".

@ajeanmahoney I'm a bit confused:
https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4845.xml
does provide:
<author>
<organization abbrev="IAB">Internet Architecture Board</organization>
</author>

Is this incorrect?

@ronaldtse yes, the XML is as shown above. However, if the abbrev attribute is provided and has content, it is used in the reference instead.
In the case where "Internet Architecture Board" is given as the author name in rfc-index.xml, the abbrev attribute should not be used so that "Internet Architecture Board" is displayed.

Based on a conversation with the RPC today, we're going to close this issue.
The major takeaway from having the conversation is that we want to avoid trying to clean/normalize source data as part of this service - we should instead push back on the source data itself.


Return JSONResponse(dict) instead of dict

A good chunk of the compute done by the Edge Proxy is JSON marshalling and unmarshalling. When returning plain dictionaries, FastAPI inspects every individual item inside to make sure it's serializable. We know it is in this case, as if it weren't client SDKs would not work.
From the docs:

For large responses, returning a Response directly is much faster than returning a dictionary.
This is because by default, FastAPI will inspect every item inside and make sure it is serializable with JSON, using the same JSON Compatible Encoder explained in the tutorial. This is what allows you to return arbitrary objects, for example database models.
But if you are certain that the content that you are returning is serializable with JSON, you can pass it directly to the response class and avoid the extra overhead that FastAPI would have by passing your return content through the jsonable_encoder before passing it to the response class.

https://fastapi.tiangolo.com/advanced/custom-response
Serving Todoist and Twist on a few ECS instances with 4 vCPUs shows:

Reduction in average CPU usage of 5%
Reduction in average request latency of 15%
Increased throughput by 50% (~1850 req/m to ~2750 req/m)

The tricky part was really 98bd0bc853ecf586129698adb1ed0b34e30a3b7b, but as explained in the commit message, it appears this may be an artifact of the past since the engine no longer relies on decimals. We've been running this in production for the past couple of weeks uneventfully and to a major throughput uplift.

If this gets accepted and merged, the next PR in line is adding orjson, which allowed us to squeeze out another ~10% of performance, up to 3000 req/m.

Thanks! Will take a look.


[scripts] vcpkg_configure_make: do not set --build on macOS

Describe the pull request

What does your PR fix? Fixes #16464

See last discussion on #16595

closes #16595
closes #16464
wasn't there another PR of you which touched the BUILD_TRIPLET?

wasn't there another PR of you which touched the BUILD_TRIPLET?

None of mine, or not in that way. But I have multiple PRs that fix apple silicon builds.

Hm, but this breaks for example gmp
build-x64-osx-dbg-err.log

hmm gmp seems to be on skip on osx?

hmm gmp seems to be on skip on osx?

now with the valid cmake script it builds successfully on my machine

@autoantwort if it works, can you remove the skip in ci.baseline.txt?

@autoantwort if it works, can you remove the skip in ci.baseline.txt?

There is no skip on osx for gmp or nettle?

gmp with osx and linux skipped by 'supports' which will be fixed by PR https://github.com/microsoft/vcpkg/pull/15957.
I suggest to fix the issue in PR https://github.com/microsoft/vcpkg/pull/16478, and after the PR merged, we should rerun this PR.

/azp run

#15957 has been merged

I can not reproduce the build errors. Maybe simply rerun the pipeline?

@autoantwort, I have rerun the CI testing.

The libgnutls error is unrelated to this PR. I also cannot build it locally from master, even though I could at the time when I created a PR for it (https://github.com/microsoft/vcpkg/pull/14242). It should be added as skip in ci.baseline.txt for the time being, I'll look into fixing it.

The libgnutls:x64-osx failed with following failures:
Undefined symbols for architecture x86_64:
  "_libintl_dgettext", referenced from:
      _print_one_paragraph in libopts.a(libopts_la-libopts.o)
  "_libintl_gettext", referenced from:
      _aoGetsText in libcmd-serv.a(serv-args.o)
      _print_one_paragraph in libopts.a(libopts_la-libopts.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[4]: *** [gnutls-serv] Error 1
ld: warning: directory not found for option '-L/Users/vagrant/Data/installed/x64-osx/debug/lib/manual-link'
ld: warning: directory not found for option '-L/Users/vagrant/Data/installed/x64-osx/debug/lib/manual-link/'
Undefined symbols for architecture x86_64:
  "_libintl_dgettext", referenced from:
      _print_one_paragraph in libopts.a(libopts_la-libopts.o)
  "_libintl_gettext", referenced from:
      _aoGetsText in libcmd-cli.a(cli-args.o)
      _print_one_paragraph in libopts.a(libopts_la-libopts.o)
ld: warning: directory not found for option '-L/Users/vagrant/Data/installed/x64-osx/debug/lib/manual-link'
ld: warning: directory not found for option '-L/Users/vagrant/Data/installed/x64-osx/debug/lib/manual-link/'
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[4]: *** [gnutls-cli] Error 1
Undefined symbols for architecture x86_64:
  "_libintl_dgettext", referenced from:
      _print_one_paragraph in libopts.a(libopts_la-libopts.o)
  "_libintl_gettext", referenced from:
      _print_one_paragraph in libopts.a(libopts_la-libopts.o)
      _aoGetsText in libcmd-srp.a(srptool-args.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[4]: *** [srptool] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

@PhoebeHui yes, this is the issue I was referring to.

@wrobelda, thanks for confirming this issue!

/azp run

I think x264 will still fail, but on my arm mac it even fails before this change. Did someone have an intel mac and can look why it fails with this change?

/azp run

Can confirm this fixes #16464 for me (nettle x64 build on Apple Silicon)

This LGTM, thanks everyone!


Add placeholder to fields

Fixes #44
We added placeholder to all supported field types:

number
url
password
tel

@mishbahr hi again) I add little functionality for more customizing
Please merge this PR

@mishbahr ping

@mishbahr please waiting - I want small refactoring

@mishbahr done

I'm super busy. I'll have a look at this as soon as I can. Thanks

@mishbahr ping


Run azkeys crypto.Client tests on MHSM

Closing this because we decided to remove the crypto client (the generated keys client has all its capabilities).


Thanks for your valuable contribution


chore: remove unused test dependencies in Micrometer Prometheus

given that there are no specific unit tests at all
Description

Target

[ ] I checked that the commit is targeting the correct branch (note that Camel 3 uses camel-3.x, whereas Camel 4 uses the main branch)

Tracking

[ ] If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

[ ] I checked that each commit in the pull request has a meaningful subject line and body.

[ ] I have run mvn clean install -DskipTests locally and I have committed all auto-generated changes

/component-test micrometer micrometer-prometheus


Listing API Requirements

This PR is intended to capture the details we should consider for implementing a list API as discussed here: https://github.com/opencontainers/distribution-spec/issues/222

Something else occurred to me while writing up my previous comment. I know it's kind of off-topic for this PR, but has there been any consideration for moving toward graphql as the/a query language for the spec? I think it's obviously not appropriate for the v1 spec, but it seems to me like it would be a good candidate for a next major version bump and would largely resolve a number of issues around consistency between endpoints, discoverability of provider-specific funtionality (via graphql introspection).
Again, I am pretty naive when it comes to API design considerations, but if anyone else thinks this might be a good idea I would be willing to help drive discussion about what it might look like in a way that doesn't block a v1 spec.

So then the idea would be that we establish these requirements/guidelines, then we can start collaborating on the new API specs themselves? Does this sound right or am I missing something?

Yes, a framework to agree on our goals and approaches. Think of it as a blueprint. Once the blueprint is done, we can go off an work on different parts "of the house", knowing how they all interrelate.

@SteveLasker i'm a little confused -- @joaodrp seems to be asking if we could include a format for registry items that allows for metadata to go along with each listed item and you point to a show/get-info requirement

I think your general question might summarize this. How do we want to define list APIs? Then, as the list APIs return results, how do we define a similar pattern across the APIs for returning results.
I might have split these too granualry as I was just trying to tease out two problems to debate independently. Perhaps these are more conjoined.
Maybe the design question is this:
In the OCI Distribution spec, how do we feel about returning an hierarchy of results? Do we want to support a list, get-info design, or a list with some set of results on each listed object?
Concern: How do registries manage permissions? If you can see the name of a namespace/repo, can you also get/read attributes on that repository?

graphql

@stevvooe suggested this a while ago, and I think it would be a big improvement, but I'm worried about broad support for v1, as you mention. I don't have much experience with graphql, but if it's not a huge departure from what currently exists (or imposes too much implementation burden), I'd be interested in seeing what that might look like.

Yes, a framework to agree on our goals and approaches. Think of it as a blueprint. Once the blueprint is done, we can go off an work on different parts "of the house", knowing how they all interrelate.

?

Since we've effectively hit the reset button for listing APIs

I don't think we've really hit the reset button. My proposal is a natural extension/adaptation of what already exists and doesn't introduce any new concepts or technology.
If we could punt all the non-essential requirements (filters, sorting, etc) into an optional graphql thing, that seems nice and tidy? Again, I'd be interested in seeing what that looks like and if it meshes well with existing APIs.

Looks like we have a two big discussions here:

How should listing payloads return data? Should they return just the item for a subsequent query for details? Or, should they return a json collection, which could be a collection of one item in the simple scenarios?
How do we enable a core set of results, with extensibility?

@jonjohnsonjr, you asked what would block the adoption of these new APIs by registry providers.
We would need to express the data that we support today so we can transition to the new apis. Maintaining two apis for the same scenario will likely not get adoption as it would be frustrating for developers to have to query two APIs. The standard one, and the registry proprietary one.
For the results APIs, happy to merge that conversation here, rather than have two PRs for requirements.
On the extensibility model, and to address the question on which properties MUST vs. MAY be returned.
Let's consider one of the requirements for these list APIs is to build a browsing experience that spans multiple registries. A few properties would be interesting. Even if not supported by all registries.
To avoid a browsing experience from having registry specific requests, can we agree on a set of names that registries MAY implement. If they don't, they're just empty. Consider annotations. You MAY add org.opencontainers.image.created, but it's not required.
For the results, you MAY add org.opencontainers.repo.pullCount, or not.  The exact name isn't important. I'm asking can we come up with a standard set of properties, which registry operators could add. For instance: vnd.azure.repo.teleportEnabled would be something we would add, but users can get this value from the same oci distribution-spec API.

There was a set of discussions on the Artifact Manifest PR relating to a listing API for finding linked artifacts. The discussion felt more appropriate for our Listing and Result requirement discussions.

perhaps as an alternative the API should return just the digest(s)
For a variety of reasons, we should probably return an entire descriptor instead of just the digest, so clients know how to handle the digest.

When working through Artifact scenarios, we realized the limitations of just the descriptor. Even in the image-only scenario, you didn't know if the result was for a specific platform.
In the artifacts scenarios, we didn't know if the result was a helm chart, a signature, or others. Depending on the list API, you'd really want to filter on a specific type.
I had played with the idea of adding artifactType to the descriptor. In addition to the immediate resistance, it would provide some challenges with changing a descriptor.
The other thing we realized is depending on the artifact type, there was additional information different clients would need. For the notary scenario, there may be several keys associated with an artifact. While the client could page through each descriptor reference, and pull each returned artifact, it would then have to pull a config or blob/layer to understand if it's the ACME Rockets signature or another signature that doesn't match the requirements for a deployment.
There's always a balance of how many round trips a client should have to make for a particular scenario.

how much data must be processed on the server to return the result, both data access and compute processing time
size of the payload
number of API calls required to get actionable details

The challenge we face is the descriptor is non actionable, and all results must be pulled to get the info. The total processing time is longer
Trying to find an appropriate subset is challenging.
The thought around returning the manifest provides the data needed to figure out which artifact to actually pull.


Question : how to get the intermediate data of a evaluation?

It seems I can just bind to the input/output features returned by LearningModel.InputFeatures and LearningModel.OutputFeatures. Take inception_v1 as an example , I can bind to data_0 and prob_1 only, an attempt to bind to some intermediate node (for example, conv1/7x7_s2_1 ) will fail. So is there some way to bind the intermediate node? Many thanks!!!

hi @oldoldman , please see the instructions for how to do this with WinMLDashboard. While you can't bind to the intermediate nodes, you can dump the outputs to disk.


Add Equal Love index file

Source : https://www.showroom-live.com/campaign/Equal_LOVE

I'd... rather not. Or more accurately, I'd rather improve selecting which index files to record from first. (That is, I don't want to record =LOVE :P )

I am cry


more detail zipkin test

I don't know what happened with formatting, this code extends pipkin test with getting full span and check correlation between request, because we want to update open tracing we need more thorough test.

fixed formatting

@razvangoga please check.


NSURLErrorDomain -999

happy new year 2015 !!
because often I get the error mainly in upload NSURLErrorDomain -999 ??

That error indicates that te operation is being canceled.
To try to figure out why their are being canceled we need more information about the steps you are following and the code you are using.
Could you give us more details about how you are doing the request?, are you getting that error using the code example?

You can send us more details to<EMAIL_ADDRESS>

Hi @marinotws, still an issue?
We just update develop branch with an update of AFNetworking and other changes to fix a problem with self signed server and request. Maybe also fix this one. Please check it and in case you needed please reopen it


Update page names to match URL slug

Background/context
Currently, our page names don't match the URL slug for each page. This is potentially confusing for humans reading about azd and is not optimized for search engines to use the HTML tag structure to crawl our site and index it properly.
We want to update the URL slugs for the pages, then create a 301 permanent redirect from the current URL slug to the new one.
Main Pages

Page Name
Current URL Slug
Change to

Getting Started
/about
/getting-started

Contribute
/docs/intro
/ contribute

FAQ Pages

Page Name
Current URL Slug
Change to

What is "azd"?
/docs/faq/azd
/docs/faq/what-is-azd

What is "azd-template"?
/docs/faq/azd-template
/docs/faq/what-is-an-azd-template

How do I use azd-template?
/docs/faq/use-azd-template
/docs/faq/how-to-use-azd-templates

How do I discover one?
/docs/faq/discover-azd
no change

How do I create templates?
/docs/faq/create-template
no change

How do I contribute templates?
/docs/faq/contribute-template
no change

How are templates rated?
/docs/faq/rate-template
no change

How do I request templates?
/docs/faq/request-template
/docs/faq/request-a-template

Link to Learn Docs
No changes.
Submit your template! Button
Currently the Submit your template! button links to /awesome-azd/docs/intro/
With these changes, we'll want the button to link to the Contributor Guide (same as today) and it's new URL slug: /contribute
### Tasks
- [ ] Update main page URL slugs
- [ ] Update faq page URL slugs
- [ ] Create an HTTP `301` redirect for the changed pages and retired URLs
- [ ] Update the link to the `Submit your template! button

Must-fix for build. @hemarina suspecting there could be some minor refactoring involved. Let us know if you see any issues.
cc @gkulin @kristenwomack


[Bug]: Gazelle extension should sanitize labels

What happened?
When running the Gazelle extension on a NextJS project where the folder structure is like this:
pages/
    entity/
       [entityId]/
           index.ts

the plugin generates labels the include the [] characters which are illegal according the Bazel docs here: https://bazel.build/concepts/labels
Also, if you try to parse the labels using Gazelle's label package you get errors since it has checks for this: https://github.com/bazelbuild/bazel-gazelle/blob/36b2084aa034ec0313f16d5e205f8973c964a1ae/label/label.go#L110
It think it makes sense for the JS/TS plugin to sanitize the labels.
Version
Development (host) and target OS/architectures: Linux Fedora 37
Output of bazel --version: 6.1.1
Version of the Aspect rules, or other relevant rules from your
Latest commit of the Gazelle extension
How to reproduce
No response
Any other information?
No response

Note that this is only an issue for the target name, not the package name.

Actually I think this is an issue with gazelle and/or the Bazel docs I linked. I don't get errors when I try to build a label with these characters but only get errors by the label parser in Gazelle. Hopefully the Bazel docs are just wrong and then Gazelle can be fixed.

This is an issue with Gazelle closing in favor of https://github.com/bazelbuild/bazel-gazelle/pull/1508


Friend Request rate limit exceeded

Expected behavior
Automatically send out FriendRequest and waiting others to accept.
Actual behavior
Always return false. And others dont receive the friend request
Code Snippet
function sendFriendRequest(room, msg) {

    if (!room) {
        console.log('Bot', 'there is no room topic Test111(yet)');
        return;
    }

    let contacts = room? room.memberList({}) : [];
    console.log(contacts.length);

    if (msg && contacts && "/Friends" === msg.content()) {
        for (let i = 0; i < contacts.length; i ++) {
            let contact = contacts[i];
            let request = new FriendRequest();
            request.send(contact, "哈咯， 我是晴晴, 请加我好友 拜托哟!!!")
                .then( result => {
                    console.log("Request Send", result);
                })
                .catch(e => {
                     console.log('Bot', 'Friend Request rejected: %s', e.stack);
                })
            //console.log("FriendRequest sent to:", contact.name());
        }
    }

Logs

It's NOT on a FRIEND EVENT. I just want to find all the people in the room and send them Friend Request.

Thanks for reporting this.
I'm not sure about your problem but return false means Web Wechat had rejected your request.
I suggest you have a read about this wiki article, and limit your request rate first:
https://github.com/Chatie/wechaty/wiki/Throttled-Rate-for-WeChat-Web-API

Strange. I can't even manually add friends from web wechat now.

In the chrome dev console
{"BaseRequest":{"Uin":1823145502,"Sid":"/lz3PL1inK/INaHv","Skey":"@crypt_c6728aa0_df4e4e9495de19c05cd9d49d0126aa28","DeviceID":"e921142703205690"},"Opcode":2,"VerifyUserListSize":1,"VerifyUserList":[{"Value":"@6fd45455805c09be05b5363f70f40568feae7479b99c21eb9cdb2e933c62d970","VerifyUserTicket":""}],"VerifyContent":"我是晴晴","SceneListCount":1,"SceneList":[33],"skey":"@crypt_c6728aa0_df4e4e9495de19c05cd9d49d0126aa28"}
Name

I guess you get true result for the some of friendrequest but failed of the remaining one.
Webwechat can only accept about 80 requests one day. But if you didn't send with an interval, it will fail soon.

Thanks for the reply @lijiarui . How can i set an interval?

I manually set the interval like these. But still failed after about 20 users added.
function sendFriendRequest(room, msg) {

    if (!room) {
        console.log('Bot', 'there is no room topic Test111(yet)');
        return;
    }

    let contacts = room? room.memberList({}) : [];
    console.log('Contacts Size:', contacts.length);

    let content = msg.content();
    if (msg && contacts && /\/Friends\[\d{1,3}-\d{1,3}\]/.test(content)) {

        var i1 = content.indexOf('[') +1;
        var i2 = content.indexOf(']');
        var subContent = content.substring(i1, i2);
        var splits = subContent.split('-');

        for (let i = splits[0]; i < splits[1]; i ++) {
            let contact = contacts[i];
            let request = new FriendRequest();
            request.send(contact, "哈咯， 我是晴晴, 请加我好友 拜托哟!!!")
                .then( result => {
                    console.log("Friend Request Send ", contact.name(), result);
                })
                .catch(e => {
                     console.log('Bot', 'Friend Request rejected: %s', e.stack);
                })
            sleepFor(5000);
        }
    }

    /*
    Room.find({ topic: /^FRIENDS/i })
        .then(room => {

        })
        .catch(e => {
            console.log('Bot', 'Room.find rejected: %s', e.stack);
        })
    */

}

function sleepFor( sleepDuration ){
    var now = new Date().getTime();
    while(new Date().getTime() < now + sleepDuration){ /* do nothing */ }
}

I figured out how to make delay. Seems a lot better now at this stage. 👍
Thanks for the help @zixia  @lijiarui

Great to hear that.
The API rate limitation is a big pitfall that many developers will get into.
If you had figure out the solution, would you like to share your idea to the community?
If you will, I'd  like to invite you to write a blog post to talk how to deal with this problem.
Looking forward to your reply, thanks!

Basically use the following code snippet
function delay(ms: number) {
    return new Promise<void>(function(resolve) {
        setTimeout(resolve, ms);
    });
}

async function asyncAwait() {

    for (let i = 0; i < 10; i++) {
        console.log("Knock", i);
        await delay(5000);
    }
}

asyncAwait();

Actually, we have already an await Wechaty.sleep(5000)  for sleep 5 seconds, you could rewrite your code to:
async function asyncAwait() {

    for (let i = 0; i < 10; i++) {
        console.log("Knock", i);
        await Wechaty.sleep(5000);
    }
}

asyncAwait();

Then would you like to write a blog post to introduce how to use Wechaty.sleep() to make delay when calling Wechaty methods?
A short post to introduce the problem you met and the solution you made is enough. :)

@zixia Thanks for the post. Learnt sth today again.
Yeah, more than happy to do it if it will help others.

@kungfu-software Great to hear that you'd like to draft one to help others!
The preferred language is in English, but you could write in any language as you like.
I have just invited you at our chatie blog repository, looking forward to your article, thanks!


[BUG] z-Index issue or request to set it manually.

Describe the bug
Using Ionic 7+ and Angular 16+
 component appears in front of pane. Manually changing the z-index in Chrome Dev Tools hides the Fab button behind the pane, which is the desired beahvior.
I have two panes on 1 page, one for when somebody clicks on an ion-item...(to edit it), this is working well.. and one at the bottom of the page, which acts as a FAB button.. The class for that one is:
<div class="cupertino-pane-in-tabs">
</div>

How can i manually change the z-index of the wrapper? or is there a property that i missed that will prevent the ion-fab from showing on top of the pane? These are my current settings for the relevant pane.
  private cupertinoPaneSettings: CupertinoSettings = {
    modal: false,
    backdrop: true,
    fitHeight: false,
    bottomClose: true,
    breaks: {
      middle: { enabled: true, height: 200, bounce: true },
      bottom: { enabled: true, height: 80 }
    }
  };

The pane itself is working, its just not in front of the  component.

@woutersteven2020 Just quick recommendation before checking the issue description is to check parentElement settings. Try set the option parentElement to 'body' or ion-content. I will check soon description.


Notes on backup validity & object locking

Fixes DOC-3437
Added language to recommend users enable object locking in their cloud storage buckets to help prevent invalidating backups. Also added a general consideration that messing with backup files could invalidate a backup.

This change is

LGTM with one nit. Thanks!

Reviewable status: :shipit: complete! 0 of 0 LGTMs obtained (waiting on @kathancox and @livlobo)

v22.1/backup.md line 32 at r2 (raw file):
Previously, livlobo wrote…
nit: using --> enabling to match phrasing on target link.
v22.1/backup.md line 38 at r3 (raw file):

- [HTTP storage](use-a-local-file-server-for-bulk-operations.html) is not supported for `BACKUP` and `RESTORE`.
- Exclude a table's row data from a backup using the [`exclude_data_from_backup`](take-full-and-incremental-backups.html#exclude-a-tables-data-from-backups) parameter.
- `BACKUP` is a blocking statement. To run a backup job asynchronously, use the `DETACHED` option. See the [options](#options) below.

Just a tiny callout: this change seems out of line with the originating Jira, PR desc, etc., just in case this change was not intended. If so: ignore me!

Done!
And yes, the second item: just a minor adjustment as I was working on the bullets.


SSL issues with self-hosted GitLab instance

I would like to understand how we can configure GitLab event source with a self-hosted instance of GitLab for example with a certificate issued by our own CA. I see there is a sslverify field in the CRD, but it suggest that the SSL verification can be turned on or off for the webhook itself. The problem I'm facing is the API endpoint itself though:
message: 'failed to add webhook to the project "XYZ/knative-eventing-source"
      due to an error: Post "https://gitlab.XXXX.com/api/v4/projects/XYZ%2Fknative-eventing-source/hooks":
      x509: certificate signed by unknown authority '

Ideally we would need to provide a CA bundle so that the connection can be verified properly.
I'm using currently v0.21, but I'm unsure if it matters.

/kind feature-request

Good point, the spec doesn't currently expose attributes to configure secure communications with the GitLab API.
As a workaround, you could mount your CA certificate/bundle inside the controller's container at /etc/ssl/certs/my-CA.crt using a Kubernetes volume + volumeMount.


[WIP] Page cache to stash

This is a work in progress. As of right now it works, but at a minimum we probably need to come up with something in the form of a migration to make sure at a minimum the directory config gets copied over if the adapter is file.  And... at this point it would be a breaking change for anyone who implemented their own driver. Not really sure if we can address that or even that we need to.

I think part of the other issue related to this is that the custom drivers for full page caching is currently broken in 5.7. So at least we won't have to worry about that ;)
I think I see what you're getting at – not replacing the full page caching adapter system with Stash entirely, but using Stash for the file-based adapter that ships in the core by default. Is that an accurate statement? That makes sense.

@aembler I think we're pretty much on the same page. Essentially we leave the logic in place that determines what gets page cached and what doesn't and the underlying driver that stores/retrieves the cache is just run through stash. What I have in this PR works, my biggest concern with it was what about the people who already extended it and made their own.
Maybe @hissy has an opinion on this since it looks like he might have already tried to implement something?


Add an option to disable duplicate path mapping detection

As proposed by @anuraaga at https://github.com/line/armeria/issues/529#issuecomment-399030430

Also I was thinking this is probably cleanest as adding serviceIfAbsent methods. It would be too much to add all the convenience method versions but just two for PathMapping and ServiceWithPathMapping should be complete and enough since it's just an advanced usage.

Duplicate detection can never be perfect, so serviceIfAbsent() would not work as expected - it may be added even if there is actually a duplicate mapping. :sob:

Actually I guess it means on the flip side it could only have the one version that takes an exact path String since it's the only duplicate we detect right now IIUC.

We also check duplicates for all trie-based path mappings. Regex-based mappings complicate the matter.
I see a few options here:

Add an option that disables duplicate mapping detection.

We may also want to add a method the checks if there's duplicate mapping.

Do not perform duplicate mapping detection at all, i.e. revert the PR.

.. because a user will notice eventually? /cc @imasahiro

Allow a user specify the callback for duplicate services.

The default callback would be to raise an exception or log a warning message.
A user could choose to do nothing in the callback.

Thoughts?

I think we need to catch the duplicate paths as much as possible although it cannot be perfect.
So the user would notice when he/she start the server.
I like the way that allow a user to specify the callback and the default callback is raising an exception.

I agree with @minwoox 's comment. Option 1 or 3 sounds good to me.

Yeah the callback sounds good too. Maybe it can be something on the exception itself, something like DuplicatePathException#applyAnyways(), and users just catch the exception if they care about applying anyways.

Let me schedule this for the release after the next release since we are releasing soon.


The obtained message is messageUnsupported, what should I do?

Project background: node.js, the library uses the following: tdl, tdl-tdlib-addon, prebuilt-tdlib. I am using the interface provided by TDLib to obtain historical messages, and now there is a problem. This problem is: some information is of the "messageUnsupported" type, and the real information content cannot be obtained. Now I want to display the real information text, how should I do it? Thank you for your answer

You need to use the latest TDLib version.


Failed to boot WebContainer

I'm going to make a react project using Vite. But I'm getting "Failed to boot WebContainer" error.

Do you get an error in your Chrome DevTools? If you have too many StackBlitz projects open, you might run in an out of memory. If that happens, make sure to close some of the StackBlitz tabs and try to refresh the page.


[Feature request] Toggle mute/unmute while holding hotkey: "Push to Talk"

Hey! Nice project, very helpful and robust! :)
Have you ever thought about adding a feature that allows to unmnute the microphone while holding down the hotkey, just like the good old "Push to Talk"? It would be perfect!
Thanks!

hi, thanks for the positive feedback :)
I never thought about a push to talk function, but I think this could be a nice feature. I didn't worked a long time on the code so I first need to find time to check how I could implement it :)


feat: Adding Directory Manifests, currently only for templated dir renaming

Java/Kotlin projects tend to need to name entire folders based on a package name, so to reduce a ton of error-prone boilerplate stencil file management in these sorts of template modules, we are introducing the notion of a directory manifest.  For now, it only contains a template that will be rendered and used as the new name for the directory for all templates rendered underneath it.

DDR still refuses to fix his commit signing, so here we are


Python: remove experimental notices for streaming

The PubSub python client has been GA since August 2019, so the notice about streaming should be removed.
I believe some of the other references are related to samplegen/tests, so I removed the reference since I believe the experimental notice was placed because of streaming.
Let me know if you disagree and I'll revert those changes.

@hongalex Thank you for doing this! @hzyi-google Could you also give this a quick review?


Sorting bugfix

A lower (not higher) document count should lead to a word to be sorted lower into the list.

thanks, I'll merge and make a new release

done


Proposal: add metrics to expose scrape failed reasons of "down" target

Proposal
Use case. Why is this important?
For edge clusters/CDN, the network condition is complex and unstable. There are always hundreds of nodes scraped failed by  prometheus due to invalid network connection. We do not care about those "down" targets by "invalid network connection", but care about "down" targets returned abnormal HTTP status such as 500/401, which means bugs or configuration problems.
Currently, we can not distinguish the reason of failed scrape by metric "up". We have to call "/api/v1/targets" periodically, and send alerts if there are scrapes with 500 HTTP status. That is not an easy way.
What is proposed?
Add a metrics which expose the reason of failed scrape, i.e. "prometheus_scrape_failed_reason_count" per status and job.
Example:
"prometheus_scrape_failed_reason_count{status="HTTP status 400",job="cdn_exporter"} 6"

I don't think this makes sense, as this has cardinality issues due to the unbounded number of potential error messages and this is also not relevant to the health of the Prometheus server itself so doesn't belong on /metrics - a failed scrape is perfectly normal from the Prometheus server standpoint.
If you need this level of detail I'd suggest using the blackbox exporter, as you're not doing whitebox monitoring here.


EXT_texture_compression_bptc support info not up-to-date

EXT_texture_compression_bptc is reported to only be supported in Firefox, when it is apparently supported in Chrome as well.
To reproduce: visit https://webglreport.com/?v=2 (or use gl.getSupportedExtensions())
=> EXT_texture_compression_bptc is listed as a supported extension in the environment below.
Environment:

Chrome 95.0.4638.54
OpenGL ES 3.1 Mesa 20.3.3
CentOS 8.4.2105

I'm afraid that is a feature that comes from MDN, so the source is that repo: https://github.com/mdn/browser-compat-data/blob/main/api/EXT_texture_compression_bptc.json

My bad! Thanks.


Rework mobile_app to have one config entry per app_id

Previously, mobile_app created one Config Entry per device. This led to a lot of unnecessary spam. This PR reworks mobile_app to have only one integration per registered app_id. If multiple registrations come in with the same app_id then a new config entry isn't created and registrations use the existing config entry. Doing this required removing the registration specific data from storage inside the Config Entry and instead putting it into the existing mobile_app storage.
Related issue (if applicable): fixes home-assistant/home-assistant-iOS#265
Checklist:

[X] The code change is tested and works locally.
[X] Local tests pass with tox. Your PR cannot be merged unless tests pass
[X] There is no commented out code in this PR.

Why not put all apps in 1 config entry then ?

Why not put all apps in 1 config entry then ?

I want each app to have their own to allow users to easily wipe out a app instead of having to manually remove each integration relating only to that app.

I'll leave this one to @balloob.

This PR seems to have gone stale. Closing it.


Debuging

Hi everyone,
Recently started getting more and more interested in Zephir/Phalcon. Could someone give me an overview of what the development process is like in terms of debugging the Zephir code?
Is there something similar to Xdebug when I am making changes to the CPhalcon zephir code? How do you usually debug? Compile/Dump output?

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/22223352-debuging?utm_campaign=plugin&utm_content=tracker%2F280146&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F280146&utm_medium=issues&utm_source=github).

Nohow. Compile, run, see the exception. Meditate.

wow! So for example if you are trying to trace certain values getting passed around the code what is your method of doing that?

All my project in my mind :) Meditation is really works for me.

using some var_dumps for simple cases is sufficient and fairly effective.
the easy bugs are also easy to spot when you just look at the code/function flow.
For heavy cases, where zephir bugs are in play, you can spot a fair amount by
just looking at the generated code or using a dedicated C Debugger.

Thanks for the input guys. Will take a bit of getting used to compile/run/see exception but I think ill manage.


Introduction to Vue.js

A brife introduction to the popular JS framework Due, with code example showing how to start a Vue app. Comparisons with other JS framework like React and Angular are also discussed.

I think this is a very good introduction, but can you add a link to an example repository/project that uses this framework?

@Ratbuyer links have been updated, please have a look ;)

viewd


chore: WDS text inputs visual refinements (light mode)

Currently, they're a bit dark-ish in the light mode, so they can be mistaken as being disabled.

Hey team! Please add your planning poker estimate with Zenhub @KelvinOm @tbrizitsky


How to turn off the sound for this extension?

double click CTRL

I did but still sound plays when hover

I did but still sound plays when hover

Check your settings, maybe you've set the TTS to play without a trigger hotkey!

@neoOpus it does not make difference none or ctrl + left both play voice without clicking
when I set it ctrl + left translation does not appear until I press ctrl + left but voice is playing in both two options without pressing any key

@neoOpus it does not make difference none or ctrl + left both play voice without clicking when I set it ctrl + left translation does not appear until I press ctrl + left but voice is playing in both two options without pressing any key

I can help you remotely if you provide me with access to your device.

I can now, do you have a remote control app installed on your machine or one that you prefer? Let me know and I will install it... ( I am using linux right now )
I will be waiting for your answer for an hour

OK then we postpone this to another time...

I am in work now so I do not have my personal laptop right now. I am at
home from 9:OO pm berlin time. if you r avail. This is my phone
no +491624318516.
On Tue, Jun 18, 2024 at 1:07 PM Anoir Ben Tanfous @.***>
wrote:

OK then we postpone this to another time...
—
Reply to this email directly, view it on GitHub
https://github.com/ttop32/MouseTooltipTranslator/issues/54#issuecomment-2175833994,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJXWO42XMIZTSS64QB5J2BTZIAIGZAVCNFSM6AAAAABJAGTJV6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZVHAZTGOJZGQ
.
You are receiving this because you commented.Message ID:
@.***>

I am in work now so I do not have my personal laptop right now. I am at home from 9:OO pm berlin time. if you r avail. This is my phone no +491624318516.
…
On Tue, Jun 18, 2024 at 1:07 PM Anoir Ben Tanfous @.> wrote: OK then we postpone this to another time... — Reply to this email directly, view it on GitHub <#54 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AJXWO42XMIZTSS64QB5J2BTZIAIGZAVCNFSM6AAAAABJAGTJV6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZVHAZTGOJZGQ . You are receiving this because you commented.Message ID: @.>

Delete your phone number!


not compile properly in msys2 windows

I tried make lib WINDOWS=1 and it finished properly, then I tried make install DESTDIR="$HOME/prebuilt" it returns:
  CC    aes/aescrypt2.c
  CC    aes/crypt_and_hash.c
  CC    hash/hello.c
  CC    hash/generic_sum.c
  CC    pkey/dh_client.c
../library/libmbedtls.a(net.o):net.c:(.text+0x73): undefined reference to `__imp_getaddrinfo'
../library/libmbedtls.a(net.o):net.c:(.text+0x90): undefined reference to `__imp_socket'
../library/libmbedtls.a(net.o):net.c:(.text+0x97): undefined reference to `__imp_connect'
../library/libmbedtls.a(net.o):net.c:(.text+0x9e): undefined reference to `__imp_closesocket'
../library/libmbedtls.a(net.o):net.c:(.text+0xf5): undefined reference to `__imp_freeaddrinfo'
../library/libmbedtls.a(net.o):net.c:(.text+0x11f): undefined reference to `__imp_WSAStartup'
../library/libmbedtls.a(net.o):net.c:(.text+0x1f2): undefined reference to `__imp_getaddrinfo'
../library/libmbedtls.a(net.o):net.c:(.text+0x20f): undefined reference to `__imp_closesocket'
../library/libmbedtls.a(net.o):net.c:(.text+0x216): undefined reference to `__imp_socket'
../library/libmbedtls.a(net.o):net.c:(.text+0x21d): undefined reference to `__imp_setsockopt'
../library/libmbedtls.a(net.o):net.c:(.text+0x2a1): undefined reference to `__imp_bind'
../library/libmbedtls.a(net.o):net.c:(.text+0x2b7): undefined reference to `__imp_listen'
../library/libmbedtls.a(net.o):net.c:(.text+0x2c9): undefined reference to `__imp_freeaddrinfo'
../library/libmbedtls.a(net.o):net.c:(.text+0x2ee): undefined reference to `__imp_WSAStartup'
../library/libmbedtls.a(net.o):net.c:(.text+0x33c): undefined reference to `__imp_closesocket'
../library/libmbedtls.a(net.o):net.c:(.text+0x3cc): undefined reference to `__imp_getsockopt'
../library/libmbedtls.a(net.o):net.c:(.text+0x424): undefined reference to `__imp_recvfrom'
../library/libmbedtls.a(net.o):net.c:(.text+0x455): undefined reference to `__imp_connect'
../library/libmbedtls.a(net.o):net.c:(.text+0x4d5): undefined reference to `__imp_accept'
../library/libmbedtls.a(net.o):net.c:(.text+0x4e6): undefined reference to `__imp_WSAGetLastError'
../library/libmbedtls.a(net.o):net.c:(.text+0x527): undefined reference to `__imp_getsockname'
../library/libmbedtls.a(net.o):net.c:(.text+0x562): undefined reference to `__imp_WSAGetLastError'
../library/libmbedtls.a(net.o):net.c:(.text+0x595): undefined reference to `__imp_socket'
../library/libmbedtls.a(net.o):net.c:(.text+0x5bc): undefined reference to `__imp_setsockopt'
../library/libmbedtls.a(net.o):net.c:(.text+0x5d5): undefined reference to `__imp_bind'
../library/libmbedtls.a(net.o):net.c:(.text+0x61b): undefined reference to `__imp_ioctlsocket'
../library/libmbedtls.a(net.o):net.c:(.text+0x64b): undefined reference to `__imp_ioctlsocket'
../library/libmbedtls.a(net.o):net.c:(.text+0x691): undefined reference to `__imp_recv'
../library/libmbedtls.a(net.o):net.c:(.text+0x6a3): undefined reference to `__imp_WSAGetLastError'
../library/libmbedtls.a(net.o):net.c:(.text+0x759): undefined reference to `__imp_select'
../library/libmbedtls.a(net.o):net.c:(.text+0x782): undefined reference to `__imp_WSAGetLastError'
../library/libmbedtls.a(net.o):net.c:(.text+0x7d1): undefined reference to `__imp_send'
../library/libmbedtls.a(net.o):net.c:(.text+0x7e3): undefined reference to `__imp_WSAGetLastError'
../library/libmbedtls.a(net.o):net.c:(.text+0x837): undefined reference to `__imp_shutdown'
../library/libmbedtls.a(net.o):net.c:(.text+0x840): undefined reference to `__imp_closesocket'
collect2.exe: error: ld returned 1 exit status
Makefile:104: recipe for target 'pkey/dh_client' failed
make[1]: *** [pkey/dh_client] Error 1
Makefile:14: recipe for target 'programs' failed
make: *** [programs] Error 2

I think you need make install DESTDIR="$HOME/prebuilt" WINDOWS=1. Alternatively, do export WIDNOWS=1, and then you won't have to type it on every single invocation of make for you current shell session.

@mpg when type make install DESTDIR="$HOME/prebuilt" WINDOWS=1 nothing happened there and the task is not finished.

Ok, I'll investigate.

Quoting from the Readme:

In order to build for a Windows platform, you should use WINDOWS_BUILD=1 if the target is Windows but the build environment is Unix-like (for instance when cross-compiling, or compiling from an MSYS shell), and WINDOWS=1 if the build environment is a Windows shell (for instance using mingw32-make) (in that case some targets will not be available).

So from an MSYS2 shelle you should be using WINDOWS_BUILD=1, not WINDOWS=1. Also, note that the "install" target is not implemented on a pure windows environment, it needs a Unix shell.

Works for me when using WINDOWS_BUILD=1, as the documentation says.
Please feel free to reopen the ticket if you're still experiencing problems or think the documentation is not clear.


Remove v2 directory

We decided yesterday during the community sync call that we want to remove the v2 directory entirely until the OpenTelemetry Collector reaches GA. The ground is too unstable at the moment to rely on it as the base for the Jaeger v2.

Hopefully we keep this work somewhere since we will have to redo it at some point.

Hopefully we keep this work somewhere since we will have to redo it at some point.

Git history ;-)