Messaging: Errors with multicast send

App Engine environment
firebase-admin:  4.4.0
Firebase Product: Messaging

Describe the problem
From time to time, while sending multicast notification from our app engine application, the following issues are reported, all at the same time:
KeyError: '8'
at execute (/layers/google.python.pip/pip/googleapiclient/http.py:1548)
at positional_wrapper (/layers/google.python.pip/pip/googleapiclient/_helpers.py:134)
at send_all (/layers/google.python.pip/pip/firebase_admin/messaging.py:390)
at send_multicast (/layers/google.python.pip/pip/firebase_admin/messaging.py:167)
at send (/srv/main.py:109)
at notification_send (/srv/main.py:55)
at dispatch_request (/layers/google.python.pip/pip/flask/app.py:1936)
at full_dispatch_request (/layers/google.python.pip/pip/flask/app.py:1950)
at reraise (/layers/google.python.pip/pip/flask/_compat.py:39)
at handle_user_exception (/layers/google.python.pip/pip/flask/app.py:1821)
at full_dispatch_request (/layers/google.python.pip/pip/flask/app.py:1952)
at wsgi_app (/layers/google.python.pip/pip/flask/app.py:2447)

OSError: [Errno 0] Error
at read (/opt/python3.8/lib/python3.8/ssl.py:1099)
at recv_into (/opt/python3.8/lib/python3.8/ssl.py:1241)
at readinto (/opt/python3.8/lib/python3.8/socket.py:669)
at _read_status (/opt/python3.8/lib/python3.8/http/client.py:268)
at begin (/opt/python3.8/lib/python3.8/http/client.py:307)
at getresponse (/opt/python3.8/lib/python3.8/http/client.py:1347)
at _conn_request (/layers/google.python.pip/pip/httplib2/__init__.py:1589)
at _request (/layers/google.python.pip/pip/httplib2/__init__.py:1650)
at request (/layers/google.python.pip/pip/httplib2/__init__.py:1985)
at request (/layers/google.python.pip/pip/google_auth_httplib2.py:200)
at _execute (/layers/google.python.pip/pip/googleapiclient/http.py:1469)
at execute (/layers/google.python.pip/pip/googleapiclient/http.py:1540)
at positional_wrapper (/layers/google.python.pip/pip/googleapiclient/_helpers.py:134)
at send_all (/layers/google.python.pip/pip/firebase_admin/messaging.py:390)
at send_multicast (/layers/google.python.pip/pip/firebase_admin/messaging.py:167)
at send (/srv/main.py:109)
at notification_send (/srv/main.py:55)
at dispatch_request (/layers/google.python.pip/pip/flask/app.py:1936)
at full_dispatch_request (/layers/google.python.pip/pip/flask/app.py:1950)
at reraise (/layers/google.python.pip/pip/flask/_compat.py:39)
at handle_user_exception (/layers/google.python.pip/pip/flask/app.py:1821)
at full_dispatch_request (/layers/google.python.pip/pip/flask/app.py:1952)
at wsgi_app (/layers/google.python.pip/pip/flask/app.py:2447)

ssl.SSLError: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:2622)
at read (/opt/python3.8/lib/python3.8/ssl.py:1099)
at recv_into (/opt/python3.8/lib/python3.8/ssl.py:1241)
at readinto (/opt/python3.8/lib/python3.8/socket.py:669)
at _safe_read (/opt/python3.8/lib/python3.8/http/client.py:612)
at _readall_chunked (/opt/python3.8/lib/python3.8/http/client.py:575)
at read (/opt/python3.8/lib/python3.8/http/client.py:465)
at _conn_request (/layers/google.python.pip/pip/httplib2/__init__.py:1618)
at _request (/layers/google.python.pip/pip/httplib2/__init__.py:1650)
at request (/layers/google.python.pip/pip/httplib2/__init__.py:1985)
at request (/layers/google.python.pip/pip/google_auth_httplib2.py:200)
at _execute (/layers/google.python.pip/pip/googleapiclient/http.py:1469)
at execute (/layers/google.python.pip/pip/googleapiclient/http.py:1540)
at positional_wrapper (/layers/google.python.pip/pip/googleapiclient/_helpers.py:134)
at send_all (/layers/google.python.pip/pip/firebase_admin/messaging.py:390)
at send_multicast (/layers/google.python.pip/pip/firebase_admin/messaging.py:167)
at send (/srv/main.py:109)
at notification_send (/srv/main.py:55)
at dispatch_request (/layers/google.python.pip/pip/flask/app.py:1936)
at full_dispatch_request (/layers/google.python.pip/pip/flask/app.py:1950)
at reraise (/layers/google.python.pip/pip/flask/_compat.py:39)
at handle_user_exception (/layers/google.python.pip/pip/flask/app.py:1821)
at full_dispatch_request (/layers/google.python.pip/pip/flask/app.py:1952)
at wsgi_app (/layers/google.python.pip/pip/flask/app.py:2447)

ssl.SSLError: [SSL: DECRYPTION_FAILED_OR_BAD_RECORD_MAC] decryption failed or bad record mac (_ssl.c:2622)
at read (/opt/python3.8/lib/python3.8/ssl.py:1099)
at recv_into (/opt/python3.8/lib/python3.8/ssl.py:1241)
at readinto (/opt/python3.8/lib/python3.8/socket.py:669)
at _read_status (/opt/python3.8/lib/python3.8/http/client.py:268)
at begin (/opt/python3.8/lib/python3.8/http/client.py:307)
at getresponse (/opt/python3.8/lib/python3.8/http/client.py:1347)
at _conn_request (/layers/google.python.pip/pip/httplib2/__init__.py:1589)
at _request (/layers/google.python.pip/pip/httplib2/__init__.py:1650)
at request (/layers/google.python.pip/pip/httplib2/__init__.py:1985)
at request (/layers/google.python.pip/pip/google_auth_httplib2.py:200)
at _execute (/layers/google.python.pip/pip/googleapiclient/http.py:1469)
at execute (/layers/google.python.pip/pip/googleapiclient/http.py:1540)
at positional_wrapper (/layers/google.python.pip/pip/googleapiclient/_helpers.py:134)
at send_all (/layers/google.python.pip/pip/firebase_admin/messaging.py:390)
at send_multicast (/layers/google.python.pip/pip/firebase_admin/messaging.py:167)
at send (/srv/main.py:109)
at notification_send (/srv/main.py:55)
at dispatch_request (/layers/google.python.pip/pip/flask/app.py:1936)
at full_dispatch_request (/layers/google.python.pip/pip/flask/app.py:1950)
at reraise (/layers/google.python.pip/pip/flask/_compat.py:39)
at handle_user_exception (/layers/google.python.pip/pip/flask/app.py:1821)
at full_dispatch_request (/layers/google.python.pip/pip/flask/app.py:1952)
at wsgi_app (/layers/google.python.pip/pip/flask/app.py:2447)

Steps to reproduce:
message = messaging.MulticastMessage(apns=apnsConfig, tokens=tokens)
response = messaging.send_multicast(message)

This seems to be a known thread-safety issue with httplib2:
https://github.com/googleapis/google-cloud-python/issues/1214
https://github.com/googleapis/google-cloud-python/issues/1346
Also documented at https://github.com/googleapis/google-api-python-client/blob/master/docs/thread_safety.md
Until we figure out a solution, can you try implementing some synchronization logic in your code and see if that helps?

Related to https://github.com/googleapis/google-api-python-client/issues/1118

Same issue
traceback
[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:2622)\nTraceback (most recent call last):\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/FlaskAPI/../UserBot/Shared.py\", line 1340, in send_one_order_to_admin_chat_and_to_supplier_chat\n    firestoreClient.send_message_to_device_new_order(firestoreClient.get_tokens_for_supplierID(supplierID),\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/FlaskAPI/../ExternalServices/Firebase/firebase.py\", line 41, in send_message_to_device_new_order\n    return self.send_message_to_device_generic(registration_tokens, data=data,\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/FlaskAPI/../ExternalServices/Firebase/firebase.py\", line 59, in send_message_to_device_generic\n    response = messaging.send_multicast(message, app=self.firebase_app)\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/firebase_admin/messaging.py\", line 167, in send_multicast\n    return _get_messaging_service(app).send_all(messages, dry_run)\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/firebase_admin/messaging.py\", line 390, in send_all\n    batch.execute()\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/googleapiclient/_helpers.py\", line 130, in positional_wrapper\n    return wrapped(*args, **kwargs)\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/googleapiclient/http.py\", line 1454, in execute\n    self._execute(http, self._order, self._requests)\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/googleapiclient/http.py\", line 1385, in _execute\n    resp, content = http.request(self._batch_uri, method=\'\'POST\'\', body=body,\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/google_auth_httplib2.py\", line 197, in request\n    response, content = self.http.request(\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/newrelic/api/external_trace.py\", line 73, in dynamic_wrapper\n    return wrapped(*args, **kwargs)\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/httplib2/__init__.py\", line 1944, in request\n    (response, content) = self._request(\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/httplib2/__init__.py\", line 1617, in _request\n    (response, content) = self._conn_request(\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/httplib2/__init__.py\", line 1556, in _conn_request\n    response = conn.getresponse()\n  File \"/home/cto/SquisEatAppDEV/riCibiamo_bot/venv/lib/python3.8/site-packages/newrelic/hooks/external_httplib.py\", line 77, in httplib_getresponse_wrapper\n    return wrapped(*args, **kwargs)\n  File \"/usr/lib/python3.8/http/client.py\", line 1347, in getresponse\n    response.begin()\n  File \"/usr/lib/python3.8/http/client.py\", line 307, in begin\n    version, status, reason = self._read_status()\n  File \"/usr/lib/python3.8/http/client.py\", line 268, in _read_status\n    line = str(self.fp.readline(_MAXLINE + 1), \"iso-8859-1\")\n  File \"/usr/lib/python3.8/socket.py\", line 669, in readinto\n    return self._sock.recv_into(b)\n  File \"/usr/lib/python3.8/ssl.py\", line 1241, in recv_into\n    return self.read(nbytes, buffer)\n  File \"/usr/lib/python3.8/ssl.py\", line 1099, in read\n    return self._sslobj.read(len, buffer)\nssl.SSLError: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:2622)

I encountered a same issue.
How should I deal with it?
firebase_admin.exceptions.UnknownError: Unknown error while making a remote service call: [SSL: DECRYPTION_FAILED_OR_BAD_RECORD_MAC] decryption failed or bad record mac (_ssl.c:2570)
at send_all (/layers/google.python.pip/pip/lib/python3.7/site-packages/firebase_admin/messaging.py:391)
at send_multicast (/layers/google.python.pip/pip/lib/python3.7/site-packages/firebase_admin/messaging.py:166)

How should I deal with it?

For now you will have to synchronize the calls to send_multicast().

How should I deal with it?

For now you will have to synchronize the calls to send_multicast().

@hiranya911 Can you clarify with giving a little bit more details on your reply?

send_multicast() calls send_all() to requests multi POST asynchronize.
I gave up this and decided to use topic.

send_multicast() calls send_all() to requests multi POST asynchronize.
I gave up this and decided to use topic.

Thanks, I use send_multicast() because it might happen that I want to notify same user with different token notification (because of different device) . How topic would solve this particular case scenario in your opinion? @mumu2001

@GabrieleCalarota
In your scenario,
I think it's easy to simply call send() synchronous loop.
Topic subscribe is useful when you want to distribute more clients with one request.

It would be best if the SDK created http client for each request :)

@GabrieleCalarota
In your scenario,
I think it's easy to simply call send() synchronous loop.
Topic subscribe is useful when you want to distribute more clients with one request.

But isn't a send() with a loop is the same (at least semantically) as the send_multicast? I have multiple tokens I want to send a notification to, and this is it. Even if I quite understand your point, I don't get how and why this solves my issue. Also I'm using the send_multicast as a generalized notification process, which is synchronous though. So If I would have to put that loop as a job task or as a futurable

Can you clarify with giving a little bit more details on your reply?

I think for most developers, putting the send_multicast() call behind a lock should be sufficient to avoid the multithreading issues.
You can also try calling send() in a loop, but it would be a lot slower than send_multicast().

I am using celery to send multicast messages and get this error in case of concurrent requests :
SSLWantReadError: The operation did not complete (read) (_ssl.c:2622)
  File "gevent/_ssl3.py", line 385, in read
    return self._sslobj.read(nbytes, buffer)
ConcurrentObjectUseError: This socket is already used by another greenlet: <bound method Waiter.switch of <gevent._gevent_c_waiter.Waiter object at 0x7f688733e090>>
  File "firebase_admin/messaging.py", line 389, in send_all
    batch.execute()
  File "googleapiclient/_helpers.py", line 134, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "googleapiclient/http.py", line 1560, in execute
    self._execute(http, self._order, self._requests)
  File "googleapiclient/http.py", line 1489, in _execute
    resp, content = http.request(
  File "google_auth_httplib2.py", line 218, in request
    response, content = self.http.request(
  File "__init__.py", line 1708, in request
    (response, content) = self._request(
  File "__init__.py", line 1424, in _request
    (response, content) = self._conn_request(conn, request_uri, method, body, headers)
  File "__init__.py", line 1376, in _conn_request
    response = conn.getresponse()
  File "http/client.py", line 1347, in getresponse
    response.begin()
  File "http/client.py", line 307, in begin
    version, status, reason = self._read_status()
  File "http/client.py", line 268, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "socket.py", line 669, in readinto
    return self._sock.recv_into(b)
  File "gevent/_ssl3.py", line 567, in recv_into
    return self.read(nbytes, buffer)
  File "gevent/_ssl3.py", line 390, in read
    self._wait(self._read_event, timeout_exc=_SSLErrorReadTimeout)
  File "src/gevent/_hub_primitives.py", line 317, in gevent._gevent_c_hub_primitives.wait_on_socket
  File "src/gevent/_hub_primitives.py", line 322, in gevent._gevent_c_hub_primitives.wait_on_socket
  File "src/gevent/_hub_primitives.py", line 297, in gevent._gevent_c_hub_primitives._primitive_wait

How can I make the SDK use a connection pool to handle this as well as optimise the number of connections being made to the FCM server?


Comments on changesets not appearing in OSMCha changeset list or appropriate filters

I'm submitting a bug report
Brief Description
The count of comments on changesets don't seem to be showing up in OSMCha, resulting in filtering by comments not working. Comments still show if a changeset is viewed and the comments tab selected.
What  is the current behaviour, (attach relevant screenshots) ?
No comment count on changeset listing, changesets with comments missing from a filter looking at changesets with at least one comment.

What  is the expected behaviour ?
Comment count shows and these changesets show in the appropriate filter.
When does this occur ?
Has been occurring for a couple of days.
How do we replicate the issue ?

Look at any changeset in the left side list that has comments on the changeset. Changeset 150053524 is a good example.

Please tell us about your environment:
Occurring across all browsers tested, appears to be a backend data issue.

I'm starting to see some newer changesets showing comments, there's a decent gap still and I'm not sure if new ones are loading yet, but it seems like something is working again.

Was probably caused by this OSM API bug (now fixed):

https://github.com/zerebubuth/openstreetmap-cgimap/issues/401

It's really unexpected that the changeset comment filtering in OSMCha is impacted by the OSM API regression. I'm wondering at what point in time they're calling the API and how they manage to keep the number of changeset comments up to date.

The number of comments is updated every time the changeset receives a new comment, as the changeset will be again in a replication file. We were having some bugs in the changeset ingestion pipeline, that probably caused this issue, but it's now fixed.
We use the OSM API to show the comments in the frontend.

That makes perfect sense, seems to be working perfectly now.


PHP 8.3 typed constants cause syntax error

Using the latest 1.0.2 release, with PHP 8.3, I see
Syntax error, unexpected T_STRING, expecting '=' on line 11

When the PHP class has a typed constant - e.g.
public const string NAME = 'campaign_message_id';

I'm guessing this is because the PHP parser used does not understand the latest syntax.

I have the nikic/php-parser package version 4.18.0 installed, but I'm still getting this error.
Surely an update fixes this?

I double checked it and I can not see an error anymore.

Is there a new release coming anytime soon (and for deptrac-shim) that fixes this for those of us using version constraints?

Is there a new release coming anytime soon (and for deptrac-shim) that fixes this for those of us using version constraints?

The developers said the -shim version would no longer be supported. You need to switch to another: qossmic/deptrac:2.0.x-dev. This is works for me.


security: dependency security vulnerability

golang.org/x/net

Affected versions：< 0.7.0
Patched version：0.7.0
Description : A maliciously crafted HTTP/2 stream could cause excessive CPU consumption in the HPACK decoder, sufficient to cause a denial of service from a small number of small requests.

github.com/gin-gonic/gin

Affected versions：>= 1.3.1-0.20190301021747-ccb9e902956d, < 1.9.1
Patched version：1.91.
Description : The filename parameter of the Context.FileAttachment function is not properly sanitized. A maliciously crafted filename can cause the Content-Disposition header to be sent with an unexpected filename value or otherwise modify the Content-Disposition header. For example, a filename of "setup.bat";x=.txt" will be sent as a file named "setup.bat".

If the FileAttachment function is called with names provided by an untrusted source, this may permit an attacker to cause a file to be served with a name different than provided. Maliciously crafted attachment file name can modify the Content-Disposition header.

Is it enough to upgrade the corresponding dependencies to versions 0.7.0 and 1.9.1 or above and adapt the corresponding code?


new export NAWS dump link not showing on first service body

I noticed an issue while testing the new location of the export NAWS dump link (running off latest master sha-1 6a1d3892629a0cd8dfe1c06323ca639eb9869bfa).
When logging in as a serveradmin and going to the Service Body Administration the first service body doesn't have the link.  Even when I navigate away and then go to another and then back, it still doesn't appear.
https://www.dropbox.com/s/swensfxivcyhhgb/naws_dump_link_first_service_body.mov?dl=0

There are some conditions for whether or not it’s displayed, and those haven’t changed.

I see.  I was not aware of them.  Are they documented somewhere to verify?

On Oct 6, 2018, at 10:14 PM, jbraswell<EMAIL_ADDRESS>wrote:
There are some conditions for whether or not it’s displayed, and those haven’t changed.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/LittleGreenViper/BMLT-Root-Server/issues/34#issuecomment-427620029, or mute the thread https://github.com/notifications/unsubscribe-auth/ABw9uyzCxdFJfa9jsfK2gLpJ1PM7_jPzks5uiWOFgaJpZM4XLo5s.

Not able to get to a computer right now but I think the service body has to have meetings, and those meetings have to have World IDs.

Going from memory here - I think that’s it.

the service body itself has to have a 'World Committee Code'

Just calling out that with the link on the top, although the functionality is not new, may create a wave of similar questions.

Could always show the link, and when the user clicks export, prompt them to get a World ID and link to some documentation on what that is and how that works.

Seems like a good solution.


Fix dangling pointer in websocketpp/error.hpp.

@nbougalis @vinniefalco

@rec: how difficult would it be to update to the latest version of their code?

const goes to the right of the thing it makes const.

Not in websocketpp code it doesn't!

how difficult would it be to update our version to the latest?

In particular, with their current code, if websocketpp does ever throw an exception, we'll catch it as an std::exception and if we log it, we'll likely get an empty string as a message.

Mark it approved, pls!  Still haven't heard back from the websocketpp people yet, which is strange - they got back to me really fast on the other changes.


Rony library doesn't work at all

I couldn't find a way to use rony at all. It throws me back the following error when I try to execute the rony info command:
Traceback (most recent call last):
  File "/home/guilherme/miniconda3/envs/rony/bin/rony", line 5, in <module>
    from rony.cli import cli
  File "/home/guilherme/miniconda3/envs/rony/lib/python3.9/site-packages/rony/__init__.py", line 1, in <module>
    from .cli import *
  File "/home/guilherme/miniconda3/envs/rony/lib/python3.9/site-packages/rony/cli.py", line 46, in <module>
    def new(ctx, project_name, **kwargs):
  File "/home/guilherme/miniconda3/envs/rony/lib/python3.9/site-packages/click/decorators.py", line 308, in decorator
    _param_memo(f, OptionClass(param_decls, **option_attrs))
  File "/home/guilherme/miniconda3/envs/rony/lib/python3.9/site-packages/click/core.py", line 2495, in __init__
    super().__init__(param_decls, type=type, multiple=multiple, **attrs)
TypeError: __init__() got an unexpected keyword argument 'autocompletion

Steps to reproduce:

create an empty env
pip install rony
echo 'eval "$(_RONY_COMPLETE=bash_source rony)"' >> ~/.bashrc
rony info

Other info:
Python Version: 3.9.7
You can contact me for any additional information.

Hi, @guilhermenoronha. Very sorry to hear that. Our team will take a look and try to get this bug to dev backlog ASAP.
Thanks for the issue!

I took a look on this bug. It is related to the new Click version.
The parameter autocompletiton was modified to shell_complete in the new version
https://click.palletsprojects.com/en/7.x/bashcomplete/
https://click.palletsprojects.com/en/8.0.x/shell-completion/
I think we should restrain Rony to use only Click 7.x and, in the future, we can see if there are any feature on version 8.x that makes sense to be used
Please, tell me if it makes sense @neylsoncrepalde

Makes a lot of sense, @ivtavares! Thanks for the PR!


bug: forceOverscroll not working on iOS Ionic 4

Bug Report
Ionic version:

[x] 4.x
Current behavior:
There's no way to prevent ionic 4 from boucing on iOS.
As you may see:

Related code:
config.xml
<preference name="DisallowOverscroll" value="true" />

<ion-content forceOverscroll="false">
		...
</ion-content>

Ionic info:

Ionic:

   Ionic CLI                     : 5.0.2 (/Users/samuelfajreldines/.config/yarn/global/node_modules/ionic)
   Ionic Framework               : @ionic/angular 4.7.4
   @angular-devkit/build-angular : 0.801.3
   @angular-devkit/schematics    : 8.1.3
   @angular/cli                  : 8.1.3
   @ionic/angular-toolkit        : 2.0.0

Cordova:

   Cordova CLI       : 9.0.0<EMAIL_ADDRESS>   Cordova Platforms : android 8.0.0, ios 5.0.1
   Cordova Plugins   : cordova-plugin-ionic-keyboard 2.1.3, cordova-plugin-ionic-webview 4.1.1, (and 11 other plugins)

Utility:

   cordova-res : 0.3.0
   native-run  : 0.2.5

System:

   ios-deploy : 1.9.4
   ios-sim    : 8.0.1
   NodeJS     : v10.9.0 (/usr/local/Cellar/node/12.4.0/bin/node)
   npm        : 6.9.0
   OS         : macOS Mojave
   Xcode      : Xcode 10.2 Build version 10E125

Thanks for the issue. Which version of iOS are you testing on?

Thanks for the issue. As per the docs, setting forceOverscroll=false does nothing if your content exceeds the bounds of the screen. forceOverscroll is only needed when you have content that is not scrollable that you do not want to "bounce". Please see the docs for more info: https://ionicframework.com/docs/api/content#properties
Does this resolve your issue?

Same bug here

Thanks for the issue. As per the docs, setting forceOverscroll=false does nothing if your content exceeds the bounds of the screen. forceOverscroll is only needed when you have content that is not scrollable that you do not want to "bounce". Please see the docs for more info: https://ionicframework.com/docs/api/content#properties
Does this resolve your issue?

I want to scroll but without boucing.
In print, it wouldn't be possible to scroll down, do you understand?

Thanks for the follow up. We do not currently provide an API to do that.
If you would like to disable it yourself, you would likely need to set -webkit-overflow-scrolling: auto on the .inner-scroll div inside of ion-content.
Please note that as of iOS 13 it will no longer be able to disable this momentum scrolling, so I do not recommend this approach.
I am going to close this as this is not a bug in Ionic. Thanks!


How to check if ./usbboot/rpiboot has already been ran?

I am using a Raspberry Pi and rpi-imager to flash images to raspberry pi Compute Modules (CM3s). I notice that it hangs if I run usbboot/rpiboot  more than once, without unmounting a CM3. How can I handle this more gracefully by checking (using code) if it was already ran once?

I was just about to write a trouble ticket about this.
"rpiboot hangs if CM4 is already booted"

rpiboot should be able to recognize that "already booted" state and bail out immediately or
the todays infinite  "waiting" period should run into a timeout
an ERROR message should be issued that the CM4 is already booted and needs to be repowered to run rpiboot

otherwise if you try (bash-)scripting the process, you need to do a lot of extra work to cope with the issue.

I was just about to write a trouble ticket about this. To me it's an error.
my reference commit-level: https://github.com/raspberrypi/usbboot/commit/864863bc1944553f5a4a7dae5df9ea894afdf513 (Jan-20-2023)
rpiboot hangs if CM4 is already booted

rpiboot should be able to recognize the "already booted" state and bail out immediately or
the todays infinite "waiting" period should run into a timeout
an ERROR message should be issued that the CM4 is already booted and needs to be "repowered" to run rpiboot
otherwise if you try (bash-)scripting the process, you need to do a lot of extra work to cope with the issue.

I do also need to "repower" the CM4 if I e.g. first boot&mount  and after that I'd like to run  a firmware upgrade.
The whole repowering thing is not nice. It would be nice if a hardware reset could be issued by the tool. This way
the whole maintenance process could be scripted without the need for plugging cables all the time.
I just realized that's an open issue since 8 month. Let's hope someone ( @timg236 ) finally picks it up. Tim are you watching?

This is not possible, except by adding a timeout or detection of a specific USB gadget that all images would have to run. See #179.


How to switch aws IAM role?

After logging into the aws account with my access key and secret access key,  I like to switch my IAM role. But I am not finding any way to switch the role.  Can you please suggest how to switch the role.
Thanks,
Best Regards,
Vinayak Bhat

@vinayakbhat24 not sure if your question is posted in the right place. Where are you using these account/IAM roles? Through the aws web console?

Please let us know in a comment if you can still reproduce the issue, and we'll reopen it


[BUG] For an nrms model, run_fast_eval does not return the correct prediction scores

Description
I believe that for the nrms model, the output of run_fast_eval is incorrect. (See code here.)
In which platform does it happen?
Jupyter Lab running in Ubuntu 20.04.4 LTS (Focal Fossa). Using Python version 3.8.10 with tensorflow version 2.8.0.
How do we replicate the issue?
Run the following code and verify that the outputs are different (I believe they should be the same):
group_impr_indexes, group_labels, group_preds = model.run_slow_eval(valid_news_file, valid_behaviors_file)
group_impr_indexes, group_labels, group_preds = model.run_fast_eval(valid_news_file, valid_behaviors_file)

Also, notice that the group_preds output of run_slow_eval is in the range [0,1] (as expected) while the output group_preds of run_fast_eval is not.
Expected behavior (i.e. solution)
As stated in the NRMS paper (equation 11), the output should be click probabilities (in the range [0,1]). I think this can be fixed by adding a sigmoid function after the computation of the dot product on line 416.
Other Comments

I think that fast ranking via dot product is a feature as opposed to a bug. Closing the ticket.


Custom vocabulary in wav2vec 2.0

Hello everyone,
I am working on speech recognition model for the English language. So, I want to confirm a) How can we add custom vocabulary to the already trained model (wav2vec 2.0) ?
Also, b) Is there any way to control or reduce word spellings mistakes? Can we have ASR output in form of English dictionary/vocabulary words only?
Thank you in advance.

@bharat-patidar hello, do you know how to get this vocabulary(https://dl.fbaipublicfiles.com/fairseq/wav2vec/dict.ltr.txt), I'm confused about the index after the symbol.

@bharat-patidar hello, do you know how to get this vocabulary(https://dl.fbaipublicfiles.com/fairseq/wav2vec/dict.ltr.txt), I'm confused about the index after the symbol.

you can can easily get dict.ltr.txt by simple for loop. It's chars count by descending order


Upload image(s) alongside notes

It would be nice to be able to upload image(s) alongside notes and this way you can really go back in time and view both pictures/images and notes about every day

Vouch for this feature also.
In Daylio app, I used to upload images alongside some notes. And with the review feature (like the Memories plugin) I got a notification of a note >1year ago and could see images saved.
Also, an image can easily describe the setting we're trying to transport into writing


speeup CI for windows via new rustup feature: profile

I add --profile=minimal for rustup install command.


test mayur

Associated Issue: #
Summary of Changes

adding rebus

Pull Request Test Coverage Report for Build 552

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 87.143%

Totals

Change from base Build 514:
0.0%

Covered Lines:
158

Relevant Lines:
180

💛  - Coveralls


pythonPackages.tinycss: 0.3 -> 0.4 refactor move to python-modules

Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[X] Fits CONTRIBUTING.md.

@GrahamcOfBorg build python27Packages.tinycss python36Packages.tinycss python36Packages.pygal

Success on x86_64-darwin (full log)
Attempted: python27Packages.tinycss, python36Packages.tinycss, python36Packages.pygal
Partial log (click to expand)
=============================== warnings summary ===============================
<undetermined location>
  [pytest] section in setup.cfg files is deprecated, use [tool:pytest] instead.

-- Docs: https://docs.pytest.org/en/latest/warnings.html
=================== 4414 passed, 1 warnings in 80.96 seconds ===================
pytestcachePhase
/nix/store/s27rvbw8f0lsxr7g3p0cnyv3997rvgia-python2.7-tinycss-0.4
/nix/store/iygz0m00yb6mlz8nvgxpqsd7kmk1rms7-python3.6-tinycss-0.4
/nix/store/5nc30skjjr9h6sxv4ixajvx69i88dc56-python3.6-pygal-2.3.1

Success on aarch64-linux (full log)
Attempted: python27Packages.tinycss, python36Packages.tinycss, python36Packages.pygal
Partial log (click to expand)
=============================== warnings summary ===============================
<undetermined location>
  [pytest] section in setup.cfg files is deprecated, use [tool:pytest] instead.

-- Docs: https://docs.pytest.org/en/latest/warnings.html
================== 4414 passed, 1 warnings in 201.49 seconds ===================
pytestcachePhase
/nix/store/k0z941ws2g7dv11ys5p40wwv47l486kp-python2.7-tinycss-0.4
/nix/store/0jd687zm2cxli0q8xlanm5c842w50bjy-python3.6-tinycss-0.4
/nix/store/v74blydbls1raj7fj43sslsgxig33bvb-python3.6-pygal-2.3.1

Success on x86_64-linux (full log)
Attempted: python27Packages.tinycss, python36Packages.tinycss, python36Packages.pygal
Partial log (click to expand)
=============================== warnings summary ===============================
<undetermined location>
  [pytest] section in setup.cfg files is deprecated, use [tool:pytest] instead.

-- Docs: https://docs.pytest.org/en/latest/warnings.html
================== 4414 passed, 1 warnings in 385.84 seconds ===================
pytestcachePhase
/nix/store/6pdyc9r9xn4x3pw1xv4s0gyv4i9v7pw4-python2.7-tinycss-0.4
/nix/store/djh0rdshg4ac6rzhbfwqvq3mamnifpwy-python3.6-tinycss-0.4
/nix/store/fi699n216cd9hncfxnw1pljwsbs090jp-python3.6-pygal-2.3.1


lenses/effects

What do you want added or changed?
Add a function to camera itself to add effects [monochrom and other ones] as well as difrent lenses [fish eye for example]

That would be cool! It's most likely not something I'll be adding soon though.

Effects could be added even post picture in the picture setting when it's placed ona wall


Splitting init.lua into Multiple Files for Better Readability

Changes Made
This pull request is a work in progress aimed at improving the readability of the Lua configuration by splitting the init.lua file into multiple files. The goal is to better organize the configuration and make it more manageable. Here’s a summary of the changes:

Splitting init.lua: The init.lua file has been divided into several files, each with a specific responsibility.
Reorganizing configurations: Some configurations have been moved to separate files to enhance readability and maintainability.

Motivation
Currently, the init.lua file is quite lengthy and difficult to navigate. By splitting the file into multiple parts, we achieve:

Improved readability: Smaller files are easier to read and understand.
Easier maintenance: Future changes will be easier to manage as each file will have a clear and defined responsibility.
Modularity: The configuration can be extended or modified more easily by adding or replacing individual files instead of modifying one large file.

Next Steps

If this PR will be approved I will continue to improve the splitting of other configuration files (like the lazy.lua one) for better readability.
Test the changes to ensure there are no regressions or issues introduced by the reorganization.

Thank you for your time and attention in reviewing this pull request. Any feedback is welcome!

There is already a repo mentioned in the README.md that does this kickstart-modular.nvim


Request: Hide "Discover new Lists" algorithmic section on the "Lists" page.

There is a section at the top of the "Lists" page that recommends lists to follow. Considering the nature of this extension, this seems a good place to request an option to hide this. Here is a reference image.

This doesn't seem to be there any more, since Lists was moved to the More menu


Get value and gradient simultaneously

In Autograd I was used to have value_and_grad to return both the gradient and the value of a function simultaneously. Is there any similar functionality in JAX? That would be incredibly useful for, e.g., plotting the loss while training a neural network.
This is an example in Autograd:
grad_and_value = grad_and_value(np.tanh)
v, g = grad_and_value(0.0) # v=0.0, g=1.0

Great idea. If you take a look at the grad function's implementation, you can see that ans is computed but not returned. We should factor the API so that this is easy to access.
@dougalm do you think it's better to set things up so that there's a separate value_and_grad function (and maybe grad is a wrapped version that discards the ans part of its return value), or is it worth considering just having a return_ans kwarg for grad? My usual preference is for the former, since other APIs always seem to succumb to kwarg creep, but in this case I'm not sure.

I would vote for a separate function. Having kwargs affect what is returned
to me is a Matlab anti-pattern, but if folx disagree, let's discuss.
On Thu, Dec 20, 2018 at 10:06 AM Matthew Johnson<EMAIL_ADDRESS>wrote:

Great idea. If you take a look at the grad function's implementation
https://github.com/google/jax/blob/95135377d0ed3d3954a44a650ad2580ded61037f/jax/api.py#L105,
you can see that ans is computed but not returned. We should factor the
API so that this is easy to access.
@dougalm https://github.com/dougalm do you think it's better to set
things up so that there's a separate value_and_grad function (and maybe
grad is a wrapped version that discards the ans part of its return
value), or is it worth considering just having a return_ans kwarg for grad?
My usual preference is for the former, since other APIs always seem to
succumb to kwarg creep, but in this case I'm not sure.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/jax/issues/149#issuecomment-449028645, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAJ4j_8I5WnvkDwmMv5c33RRv4YU8zzbks5u66eDgaJpZM4ZcBBm
.

@dougalm agreed, and had a punchy way of saying the same thing @alexbw did: an argument to a function shouldn't change its type! That sounds like a knock-down argument to me.
I'll add a value_and_grad function now.

Please reopen if there's something we missed here!


v0.5.6 SDK memory leak

MainActivity is leaked, even in sample app same happens. From memory dump I see that leak GC root is Native Stack.

Confirmed in v0.5.8 too: I didn't a thorough check of the source of the problem as you did, but I can confirm that the activity is leaking (as it also happened with the previous java-based implementations)...
Btw, are we actually writing to anyone at all? Is anyone in the developer's group reading this or are we wasting our time?
Because there are like 26 bugs, not 2600, which means 5 for each contributor, and after a cursory search, not a single one I have browsed had a developer assigned to it, or received any kind of feedback (even just a "Thank you, we are working on that!").
 :(

Hi, very sorry for the lack of response. Our team is better staffed now so we'll have better dev support. Thanks esminis for the original report, and thanks R1ck77 from bringing this issue to our attention. We will definitely look into it.

Hi David,
thanks for the ACK: I'm very glad to hear that the support for the SDK is growing, and I look forward for the issue to be resolved (or for any details on the matter that could help us work around the issue with reflection, as we did with this one: https://github.com/googlesamples/cardboard-java/issues/19).
Have a nice day!
Riccardo

Thanks for tips Riccardo, that was helpful! This issue should be fixed in the next version.

You're welcome: I'm looking forward for the next version  :)
Cheers

Sorry to bother you (and glad to see a fair amount of activity on the tracker), I know you are busy, but is there any heads up on this issue?
I'm asking because I was wondering if there is something we can do via reflection to work around the problem, even though it seems located in the native layer...

The issue is fixed in our internal repo, the fix will be pushed on github for our next public release, which should happen some time after the holiday break.
You're correct, one of the sources for the leak was in our native code at the jni level, which you won't be able to fix via reflection.

Thank you very much for the prompt and kind answer and keep up the good work (and have some great holidays)!
I'll stop pestering you now, and wait patiently for the next release :)

Checked the new release and works like a charm (for saying nothing of all other goodies, like the sound support)! Thank you!

Thanks for the help and nice words, @R1ck77! Closing this bug now.


Corrected fluent interface docblock generation

In the same vein as doctrine/mongodb#251.

Thanks @Bilge!


Update embedding_functions.py

added **kwargs to the init function of the class SentenceTransformerEmbeddingFunction
Description of changes
Summarize the changes made by this PR.

Improvements & Bug fixes

...

New functionality

...

Test plan
How are these changes tested?

[ ] Tests pass locally with pytest for python, yarn test for js, cargo test for rust

Documentation Changes
Are all docstrings for user-facing APIs updated if required? Do we need to make documentation changes in the docs repository?

Our underlying impl has changed and so this PR is not landable as is.
That being said - we'd still like to add this functionality and that is now tracked in this issue.


Selecting Content Link Type does not populate redirect destination

Umbraco Version:
SeoToolkit Version: 1.1.0
After setting the New Url using content, the redirect destination is not saved correctly.
Steps to reproduce:

Create a new redirect
Choose "All Sites" as the domain
Set from url to any value using the url option
Click "Set Link" for new url
Select "Content" link type and select any page in the site and click submit
New Url displays the relative path
Select either status code
Click Submit
New redirect is added to list of redirects, but the "To" column indicates # regardless of the page selected

Hi @jwbluemodus,
Thank you for the report, I haven't encountered this issue yet so I'll see if I can reproduce it.
Do you have multiple languages on your site? And if so, what is your default language? It might be that the URL shown in the overview is trying to get it by using the default language instead of the correct language that you've chosen in the redirect. But if you don't have multiple languages, then that shouldn't happen anyway.

This particular site only has one language.
Thanks,
Jen
Jen Wolke
blueModus | Solution Lead
m: +1.719.329.0924
From: patrickdemooij9 @.>
Sent: Friday, September 2, 2022 1:09 AM
To: patrickdemooij9/SeoToolkit.Umbraco @.>
Cc: Jen Wolke @.>; Mention @.>
Subject: Re: [patrickdemooij9/SeoToolkit.Umbraco] Selecting Content Link Type does not populate redirect destination (Issue #110)
Hi @jwbluemodushttps://github.com/jwbluemodus,
Thank you for the report, I haven't encountered this issue yet so I'll see if I can reproduce it.
Do you have multiple languages on your site? And if so, what is your default language? It might be that the URL shown in the overview is trying to get it by using the default language instead of the correct language that you've chosen in the redirect. But if you don't have multiple languages, then that shouldn't happen anyway.
—
Reply to this email directly, view it on GitHubhttps://github.com/patrickdemooij9/SeoToolkit.Umbraco/issues/110#issuecomment-1235148642, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AJIWMEYXUFWGFE7LNAW4NDTV4GRZDANCNFSM6AAAAAAQC4QNOY.
You are receiving this because you were mentioned.Message ID: @.***>

I've taken another look at this as it apparently doesn't happen on the Umbraco 10 version. The issue is most likely not caused by SeoToolkit, but by a bug from within Umbraco. I can reproduce your issue on 9.1.0, but it doesn't happen on 9.5.3 anymore. I believe this is the PR that fixed the issue: https://github.com/umbraco/Umbraco-CMS/pull/11886
So I am assuming that your Umbraco version isn't up to date to include that fix. If that isn't the case, then please reopen the issue but I'll close it for now as I'll consider it a Umbraco issue.

Thank you!  I will apply the latest upgrade and see if that resolves the issue.  Thanks so much for the investigation and response!
Jen Wolke
blueModus | Solution Lead
m: +1.719.329.0924
From: patrickdemooij9 @.>
Sent: Saturday, September 3, 2022 7:15 AM
To: patrickdemooij9/SeoToolkit.Umbraco @.>
Cc: Jen Wolke @.>; Mention @.>
Subject: Re: [patrickdemooij9/SeoToolkit.Umbraco] Selecting Content Link Type does not populate redirect destination (Issue #110)
I've taken another look at this as it apparently doesn't happen on the Umbraco 10 version. The issue is most likely not caused by SeoToolkit, but by a bug from within Umbraco. I can reproduce your issue on 9.1.0, but it doesn't happen on 9.5.3 anymore. I believe this is the PR that fixed the issue: umbraco/Umbraco-CMS#11886https://github.com/umbraco/Umbraco-CMS/pull/11886
So I am assuming that your Umbraco version isn't up to date to include that fix. If that isn't the case, then please reopen the issue but I'll close it for now as I'll consider it a Umbraco issue.
—
Reply to this email directly, view it on GitHubhttps://github.com/patrickdemooij9/SeoToolkit.Umbraco/issues/110#issuecomment-1236118436, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AJIWME5QHQW24BCOP3JOOXLV4NFL5ANCNFSM6AAAAAAQC4QNOY.
You are receiving this because you were mentioned.Message ID: @.***>


Waypoint: Manipulate Arrays With unshift

What is wrong with this code?
var myArray = ["John", 23, ["dog", 3]];
myArray.shift();
myArray.unshift(["Paul"]);
It's returning:
d[0].toLowerCase is not a function

You are adding an array to the beginning or myArray. The instructions state to add a string 'Paul'.
Please see:
https://github.com/FreeCodeCamp/FreeCodeCamp/wiki/How-to-get-help-when-you-get-stuck
Happy Coding!


Alias import is moved incorrectly when moving code to another file

// @filename: src/_producer.ts
export function doit() {}

// @filename: src/_consumer.ts
import { doit as doit2 } from "./_producer";

class Another {}

class Consumer {
    constructor() {
        doit2();
    }
}

Doing move to a new file on Consumer generates the following 🐛 (note how doit2 does not exist in _producer.ts):
// @filename: src/Consumer.ts
import { doit2 } from "./_producer";

class Consumer {
    constructor() {
        doit2();
    }
}

It works with me

I can reproduce in vscode 1.93.0-insider / 4849ca9bdf9666755eb463db297b69e5385090e3 and TS version 5.5.4
https://github.com/user-attachments/assets/c3326a29-9cd8-4da8-9f2c-37c3015049f8


Why require project Id?

Just setup Cheetah in our slack tool and tried to start task tracking but it appears that it's expecting Toggl's project id which is an 8 digit code.  I can't imagine anybody would bother memorizing these.  It would be much better to specify projects by their names.

As I agree with this issue, it's also true that you can run '/cheetah projects', that will display your toggl projects with the associated project id, not a very friendly solution but you won't have to memorize them at least until new features are added

Toggl browser plugin makes this a moot point since new tasks can be started and assigned to proper projects without the id.  The very fact that this basic usability issue is still not addressed indicates that it's not a priority for the Cheetah team.  Waiting "until new features are added" might be a long time indeed.

Indeed, even the 6-months-no-response for the issue implicated it, really sad as there are no many Toggl integrations for slack.

@bearoutthere Wow, I can't believe I missed this issue for so long. At least its been only 3 days more than a year 🙈. Anyway, as @VzqzAc said, the goals of /cheetah projects is to make it quick and easy to copy and paste. The reason we don't do project names is it'd be hard to then add more params to the command. Perhaps a multi-message process would be better:

/cheetah
Which project? (1) Project 1 (2) Project 2 ..
1
Timer running!

Thoughts?


[BUG] Cannot display table data

🐞 Bug report
Description

AfterViewInit - table display as expected
When the user clicks on the button "click me" (link below), the table display list of rows without cells

https://user-images.githubusercontent.com/64095625/117581782-c5c8a000-b128-11eb-9b2c-c8a478775124.mov
Reproduction
https://stackblitz.com/edit/angular-ass4ff

is it relevant?

Seems like it is not, now that we are supposed to use *ngFor to iterate rows.


fix(vdom): Fix skipping algorithm so that it skips immedate children …

…and descendants.
Fixes #731

lgtm

LGTM

lgtm (interesting it didn't pass this check with two maintainers doing it)


[FIX] assertion: fixed verification of signed xml assertion

This pull request aims at fixing the verification of signed XML assertion.

No activity on this PR, closing


Support the changing of theme dynamically

Is your feature request related to a problem? Please describe.
Currently, SwiftDownEditor stores the theme internally, and therefore the theme is not able to be changed from the outside. For modern apps which support light and dark mode, this means any SwiftDownEditors in use will always be stuck with the theme they were created with, which leads to a poor user experience.
Describe the solution you'd like
Ideally, setting the theme would redraw the SwiftDownEditor, such that you could base the current theme on the environment's color scheme to automatically support light/dark modes. This would also allow for a user to change themes while utilizing the editor, with, say, a drop-down of available themes.
Describe alternatives you've considered
Without this, the SwiftDownEditor would need to effectively be removed from the hierarchy, and recreated, which doesn't feel very SwiftUI-like.
Additional context
A quick example of what I expected to do for supporting system-wide dark/light mode:
@Environment(\.colorScheme) var colorScheme

SwiftDownEditor(text: $itemText)
  .insetsSize(20)
  .theme(colorScheme == .dark ? Theme.BuiltIn.defaultDark.theme() : Theme.BuiltIn.defaultLight.theme())
  .debounceTime(0.5)

👋 Thanks for the request,
I agree that this should be dynamic as every other element in SwiftUI, I don't think this is a big deal though, it should be feasible by making the theme a @State variable or something like this


allow aws loadbalancers the option to select subnets.

resolves: https://github.com/samsung-cnct/k2/issues/658

Consistent spacing for the generated config file
Code to allow subnets for load balancers, (search by name go get ids)
Removed extraneous loadbalancer config.

@mikeln commented in slack, build failed on 8min maximum run time limit.  Likely failing on AWS resource allocation slowness.  Should be okay to rerun as-is.

retest this please

@davidewatson could you also review and merge if ok.


lsp-menu: customize prompt string for each caller

This will break users who customize lsp-menu (cc @topisani) but it hopefully improves
the experience for new users (not sure).

Ill adjust my lsp-menu, no problem, but i agree this is a good idea

with this change, lsp-menu is no longer a drop-in replacement for menu.
If we go through with that, we might even generate the prompt command directly on the Rust side.
I'm surprised that people want to override this - Kakoune's fuzzy ranking algorithm should be on par with fzy with https://github.com/mawww/kakoune/pull/4653 - but of course overriding should be possible.
I'm not sure what you are using - is it a fzf split window?
Actually we should probably change Kakoune's menu to accept a -prompt switch menu -prompt 'Jump to symbol' <name1> <cmd1> <name2> <cmd2>.
I'm not very interested in today's menu (it has no fuzzy filtering, so I prefer prompt) but its interface seems alright so we might as well improve it.
In exchange for the nice interface of menu, the implementation of lsp-menu is fairly tricky.
Long-term, I think we should give menu the same fuzzy filtering, then lsp-menu can just delegate to menu.

This is what it gives me - i dont know why i like it better, and i may try the default lsp-menu again. I usually dont even use the fuzzy finding, and just select the one i want with my arrowkeys.
I do prefer them stacked vertically though, it makes it easier for me to read them.


Better SSL failure handling when connecting to non SSL Postgres server - fixes #206

This PR is for #206 but with some addtional changes:

Add support for unit testing with non SSL embedded Postgres server and configurable for this.
Make all tests by default use non SSL Postgres server if necessary.

3.Expose connection failure to users directly when connecting to a non-SSL Postgres server with SSL option on.
Failure handling is more straightforward when connecting to Non SSL Postgres server like this:
    PgConnectOptions options = new PgConnectOptions()
      .setSsl(true)
      .setTrustAll(true)
      .setHost("localhost")
      .setPort(5432)
      .setUser("postgres")
      .setPassword("password")
      .setDatabase("postgres");

    PgClient.connect(vertx, options,
      ar -> {
        if (ar.succeeded()) {
          // not called here
        } else {
          // Expected Behavior
          // directly report to users "Postgres Server does not handle SSL connection"
          System.out.println(ar.cause().getMessage());
        }
      });

looks good, however I think that we cannot build both SSL and domain socket config at the same time, so the combo ssl=true + domain socket = true should be rejected.

have you checked how this works with https://github.com/reactiverse/reactive-pg-client/tree/master/docker/postgres ?

because they use SSL by default, so I believe that we cannot run the SSL upgrade failure test with the current docker image (like domain sockets are not available either).

yes that's something possible on two different ports too.

On 17 Dec 2018, at 14:23, Billy Yuan<EMAIL_ADDRESS>wrote:
That's something I didn't notice, maybe we could set up 2 docker Postgres servers during the whole test and let clients connect independently(i.e set up a SSL server for TLSTest and a non-SSL server for other tests which don't need SSL connection), is this feasible @vietj https://github.com/vietj?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/reactiverse/reactive-pg-client/pull/215#issuecomment-447843812, or mute the thread https://github.com/notifications/unsubscribe-auth/AANxivCgmF-HUeJqNqBnv-Mj2gUDLitXks5u55rCgaJpZM4ZCjgS.

Hi, I have managed to make this work with docker-compose now. I'm also getting the unix domain socket tests working with docker now, but I only test with my own Linux machines(OS X not tested), can you have a look @vietj ?

did you update the README that I can follow ?

On 18 Dec 2018, at 09:40, Billy Yuan<EMAIL_ADDRESS>wrote:
Hi, I have managed to make this work with docker-compose now. I'm also getting the unix domain socket tests working with docker now, but I only test with my own Linux machines(OS X not tested), can you have a look @vietj https://github.com/vietj ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/reactiverse/reactive-pg-client/pull/215#issuecomment-448140460, or mute the thread https://github.com/notifications/unsubscribe-auth/AANxiqtD3nh7eUIT6zVYpqVyX8lgB0Doks5u6KoFgaJpZM4ZCjgS.

Yes, please check https://github.com/reactiverse/reactive-pg-client/blob/d50e382d2df1dfea8fa7ffaf3135b969470b7ca2/README.adoc and https://github.com/reactiverse/reactive-pg-client/blob/d50e382d2df1dfea8fa7ffaf3135b969470b7ca2/docker/postgres/README.md

great contribution!

Thanks!😃


Updating project status to "Stable"

Verified that @asheepapart has signed the CLA. Thanks for the pull request!

:+1:


Comma missing on Rhabdomancer.java

A comma is missing on Rhabdomancer.java line 54

Oops, thanks! Should be fixed now (https://github.com/0xdea/ghidra-scripts/commit/20d1430a0ba42957ab66be43163164fdda0a8e99).


https proxy not work

my https backken is https://backken_domain/gw/fff  is work
and  https://gateway_domain/ is work
I add a  route  urlprefix-/gw proto=https    dest host is backken'ip   port is 80
but when I connect   http://gateway_ip:9999/gw/fff or  https://gateway_domain/gw/fff
it show
No route for   gateway_ip:9999/gw/fff  or No route for https://gateway_domain/gw/fff  or  404
how can i add  https route? how to make it work?

it need listen a https port


Find portalIP automatically while updating a service

When I tried to update a service to change its port. Kubectl said spec.portalIp: invalid error ""
I viewed detailed information of the service and added portalIp with the same value as current service in the template and solved the problem.
But since the portalIp is automatically allocated when the service is created. Why users must provide portalIp explicitly while updating? And also the portalIp can not be changed while updating.

Please see https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/api-conventions.md. PUT doesn't support partial updates. In general, you need to do a GET, change just what you want to update, and then PUT.
You could try PATCH, which was recently added. You may also be interested in a new merge strategy being implemented -- see #6027.

And, yes, the description string on the field should say that the field "cannot be updated" -- @thockin.

@bgrant0607 - Thanks Brian, I'm not asking to allow portalIp be changed while updating, but  allow users not giving portalIp explicitly in the template. I write a small patch to do so and will submit it soon.

@hurf Thank you for offering to make a change, but the change will not be accepted. If you just want to update certain fields in the object, please use PATCH.

I also recommend trying kubectl update --patch:
https://github.com/GoogleCloudPlatform/kubernetes/blob/bc4a082f7a5d1ec58a05c2f1a6fb1af9e5622079/docs/kubectl-update.md#L26

The description does say "cannot be updated".

So it does.

@thockin @bgrant0607 - Sorry for the description mentioned "can not be updated" and not expressed myself clearly.
What I want to say is when I'm creating the pod, I didn't provide the portalIP in the template. But when I want to update the pod, I'm not going to change portalIP and it is not allowed to change it, why should I address it explicitly? I just feel inconvenient about this.
Anyway thanks you can discuss with this issue.

@hurf I understand. The solution underway is #1702.


Improvements to delete_draft_manual Rake task

This fixes a problem with the Rake task, corrects its feature description, and makes some improvements to the Rake task and the underlying CliManualDeleter class.

@chrislo: Thanks.
Merging.


Updating weight name missmatch

Thank you for sharing the code !
I am experiencing some issues with the model weight update:
The weight of the pretraiend model bert-base-multilingual-cased
The # of weights 1.78e+08
pretrained bert-base-multilingual-cased is used
!!!!embeddings.position_ids model param. is not presented in child model!!!!
embeddings.word_embeddings.weight updated
!!!!embeddings.position_embeddings.weight model param. is not presented in child model!!!!
embeddings.token_type_embeddings.weight updated
embeddings.LayerNorm.weight updated
embeddings.LayerNorm.bias updated
encoder.layer.0.attention.self.query.weight updated
encoder.layer.0.attention.self.query.bias updated
encoder.layer.0.attention.self.key.weight updated
encoder.layer.0.attention.self.key.bias updated
encoder.layer.0.attention.self.value.weight updated
encoder.layer.0.attention.self.value.bias updated
encoder.layer.0.attention.output.dense.weight updated
encoder.layer.0.attention.output.dense.bias updated
encoder.layer.0.attention.output.LayerNorm.weight updated
encoder.layer.0.attention.output.LayerNorm.bias updated
encoder.layer.0.intermediate.dense.weight updated
encoder.layer.0.intermediate.dense.bias updated
encoder.layer.0.output.dense.weight updated
encoder.layer.0.output.dense.bias updated
encoder.layer.0.output.LayerNorm.weight updated
encoder.layer.0.output.LayerNorm.bias updated
encoder.layer.1.attention.self.query.weight updated
encoder.layer.1.attention.self.query.bias updated
encoder.layer.1.attention.self.key.weight updated
encoder.layer.1.attention.self.key.bias updated
encoder.layer.1.attention.self.value.weight updated
encoder.layer.1.attention.self.value.bias updated
encoder.layer.1.attention.output.dense.weight updated
encoder.layer.1.attention.output.dense.bias updated
encoder.layer.1.attention.output.LayerNorm.weight updated
encoder.layer.1.attention.output.LayerNorm.bias updated
encoder.layer.1.intermediate.dense.weight updated
encoder.layer.1.intermediate.dense.bias updated
encoder.layer.1.output.dense.weight updated
encoder.layer.1.output.dense.bias updated
encoder.layer.1.output.LayerNorm.weight updated
encoder.layer.1.output.LayerNorm.bias updated
encoder.layer.2.attention.self.query.weight updated
encoder.layer.2.attention.self.query.bias updated
encoder.layer.2.attention.self.key.weight updated
encoder.layer.2.attention.self.key.bias updated
encoder.layer.2.attention.self.value.weight updated
encoder.layer.2.attention.self.value.bias updated
encoder.layer.2.attention.output.dense.weight updated
encoder.layer.2.attention.output.dense.bias updated
encoder.layer.2.attention.output.LayerNorm.weight updated
encoder.layer.2.attention.output.LayerNorm.bias updated
encoder.layer.2.intermediate.dense.weight updated
encoder.layer.2.intermediate.dense.bias updated
encoder.layer.2.output.dense.weight updated
encoder.layer.2.output.dense.bias updated
encoder.layer.2.output.LayerNorm.weight updated
encoder.layer.2.output.LayerNorm.bias updated
encoder.layer.3.attention.self.query.weight updated
encoder.layer.3.attention.self.query.bias updated
encoder.layer.3.attention.self.key.weight updated
encoder.layer.3.attention.self.key.bias updated
encoder.layer.3.attention.self.value.weight updated
encoder.layer.3.attention.self.value.bias updated
encoder.layer.3.attention.output.dense.weight updated
encoder.layer.3.attention.output.dense.bias updated
encoder.layer.3.attention.output.LayerNorm.weight updated
encoder.layer.3.attention.output.LayerNorm.bias updated
encoder.layer.3.intermediate.dense.weight updated
encoder.layer.3.intermediate.dense.bias updated
encoder.layer.3.output.dense.weight updated
encoder.layer.3.output.dense.bias updated
encoder.layer.3.output.LayerNorm.weight updated
encoder.layer.3.output.LayerNorm.bias updated
encoder.layer.4.attention.self.query.weight updated
encoder.layer.4.attention.self.query.bias updated
encoder.layer.4.attention.self.key.weight updated
encoder.layer.4.attention.self.key.bias updated
encoder.layer.4.attention.self.value.weight updated
encoder.layer.4.attention.self.value.bias updated
encoder.layer.4.attention.output.dense.weight updated
encoder.layer.4.attention.output.dense.bias updated
encoder.layer.4.attention.output.LayerNorm.weight updated
encoder.layer.4.attention.output.LayerNorm.bias updated
encoder.layer.4.intermediate.dense.weight updated
encoder.layer.4.intermediate.dense.bias updated
encoder.layer.4.output.dense.weight updated
encoder.layer.4.output.dense.bias updated
encoder.layer.4.output.LayerNorm.weight updated
encoder.layer.4.output.LayerNorm.bias updated
!!!!encoder.layer.5.attention.self.query.weight model param. is not presented in child model!!!!
!!!!encoder.layer.5.attention.self.query.bias model param. is not presented in child model!!!!
!!!!encoder.layer.5.attention.self.key.weight model param. is not presented in child model!!!!
!!!!encoder.layer.5.attention.self.key.bias model param. is not presented in child model!!!!
!!!!encoder.layer.5.attention.self.value.weight model param. is not presented in child model!!!!
!!!!encoder.layer.5.attention.self.value.bias model param. is not presented in child model!!!!
!!!!encoder.layer.5.attention.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.5.attention.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.5.attention.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.5.attention.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.5.intermediate.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.5.intermediate.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.5.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.5.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.5.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.5.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.self.query.weight model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.self.query.bias model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.self.key.weight model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.self.key.bias model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.self.value.weight model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.self.value.bias model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.6.attention.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.6.intermediate.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.6.intermediate.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.6.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.6.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.6.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.6.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.self.query.weight model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.self.query.bias model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.self.key.weight model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.self.key.bias model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.self.value.weight model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.self.value.bias model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.7.attention.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.7.intermediate.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.7.intermediate.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.7.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.7.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.7.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.7.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.self.query.weight model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.self.query.bias model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.self.key.weight model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.self.key.bias model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.self.value.weight model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.self.value.bias model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.8.attention.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.8.intermediate.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.8.intermediate.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.8.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.8.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.8.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.8.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.self.query.weight model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.self.query.bias model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.self.key.weight model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.self.key.bias model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.self.value.weight model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.self.value.bias model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.9.attention.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.9.intermediate.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.9.intermediate.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.9.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.9.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.9.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.9.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.self.query.weight model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.self.query.bias model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.self.key.weight model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.self.key.bias model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.self.value.weight model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.self.value.bias model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.10.attention.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.10.intermediate.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.10.intermediate.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.10.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.10.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.10.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.10.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.self.query.weight model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.self.query.bias model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.self.key.weight model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.self.key.bias model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.self.value.weight model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.self.value.bias model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.11.attention.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!encoder.layer.11.intermediate.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.11.intermediate.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.11.output.dense.weight model param. is not presented in child model!!!!
!!!!encoder.layer.11.output.dense.bias model param. is not presented in child model!!!!
!!!!encoder.layer.11.output.LayerNorm.weight model param. is not presented in child model!!!!
!!!!encoder.layer.11.output.LayerNorm.bias model param. is not presented in child model!!!!
!!!!pooler.dense.weight model param. is not presented in child model!!!!
!!!!pooler.dense.bias model param. is not presented in child model!!!!

Would you have any advice on how to resolve this issue ?
I am using the following conda env:
munch                     2.5.0                      py_0    conda-forge
nltk                      3.6.7              pyhd8ed1ab_0    conda-forge
numpy                     1.21.5           py37hf2998dd_0    conda-forge
opencv-python-headless    <IP_ADDRESS>                 pypi_0    pypi
pytest                    6.2.5            py37h89c1867_1    conda-forge
python                    3.7.12          hf930737_100_cpython    conda-forge
pytorch                   1.8.1           py3.7_cuda11.1_cudnn8.0.5_0    pytorch
pytorch-lightning         1.3.8              pyhd8ed1ab_0    conda-forge
tensorboard               2.4.1              pyhd8ed1ab_1    conda-forge
tensorboard-plugin-wit    1.8.1              pyhd8ed1ab_0    conda-forge
tokenizers                0.10.3           py37hcb7a40c_1    conda-forge
torchmetrics              0.3.2              pyhd8ed1ab_0    conda-forge
torchvision               0.9.1                py37_cu111    pytorch
transformers              4.5.1              pyhd8ed1ab_1    conda-forge

Hi @thomassajot
This is normal.
embeddings.position_ids, embeddings.position_embeddings are to give information about word order.
spade does not use it and instead use xy-coordinate of each word on the image (it is a serializer-free)
However if you want to use it, you can simply set
https://github.com/clovaai/spade/blob/a85574ceaa00f1878a23754f283aa66bc2daf082/configs/cord.1.5layers.train.yaml#L18
to
- seqPos
Also, for the absence of layer5--layer11, this is due to the use of small model that. You can set
https://github.com/clovaai/spade/blob/a85574ceaa00f1878a23754f283aa66bc2daf082/configs/cord.1.5layers.train.yaml#L29
to
encoder_config_name: bert-base-multilingual-cased-12layers
You may need to make new config under data/model/backbones/bert-base-multilingual-cased-12layers
based on data/model/backbones/bert-base-multilingual-cased-5layers (simply copy and change the number of layers in the config file)`
Happy coding!
Wonseok

Great. Thank you for the quick reply.
I will code happily.


linked pages associated with nav

I just associate page to every item of navigation bar and except login and add navbar component in each page because navbar is in every page and also given routes according to the navbar

Looking cool


Which is the user table?

Which is the user table (users logged into the system) in SUPABASE?

It's for authenticated users


Ctrl-R behaves incorrectly when prompt is at bottom

When prompt-bottom is enabled in HH_CONFIG, pressing Ctrl-R doesn't cycle the matches in reverse as it should; instead, it goes from the top of the reversed list.

I'm hoping 8ba606e32fbfd4f75fa006d40a4191883c01b4e0 fixes this issue

No longer reproducible on 1.28 and c9a3cfc594d985d5a32408e461b8fdecb83f75d2 - closing.


Add Ericsson's logo to the Used By section

Current State of the Meshery.io site
Ericsson is not listed as a user. See Meshery ADOPTERS file.
Desired State of the Meshery.io site
Given use by employee's at Ericsson, add Ericsson's logo to those under the Used By section.

Contributor Resources

See the Contributing to Meshery.io Website section of the readme.md.

@akashprasher interested?

I can see a PR already coming. Please review it and it does work then it's good otherwise I'm open to this.


Breadcrumb error when clicking from a single dataset page back to datasets list page (catalog)

http://localhost:1313/datasets/business-listingshttp:/localhost:1313/datasets


FIX 2510 Support DNS names

Signed-off-by: David Gageot<EMAIL_ADDRESS>

Altough we should rename the IPAdress variable to something more meaningfull. Unfortunalty this is a huge task since it changes the json file format we use as well as most of the flags.
So LGTM for a quick win.

:+1:


IndexError when doing compute() on a filtered Dask Array

I have a Dask Array (one-dimensional) called feat_arr which holds values of some feature (float64 values). It gets created by filtering out a column of a Dask DataFrame called feature_dataframe. I also have a (one-dimensonal) NumPy ndarray called scores_ which is the same size as feat_arr. I use that array to filter out values from feat_arr, like so:
feat_arr = feature_dataframe[feat].values
(...)
outs = feat_arr[scores_ > OUTLIER_THRESHOLD_LOCAL],

where OUTLIER_THRESHOLD_LOCAL is a constant float value.
Now if I call outs.compute(), I get the following error, as indicated in the title:
---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-37-7c64832810f5> in <module>
----> 1 outs.compute()

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\dask\base.py in compute(self, **kwargs)
    154         dask.base.compute
    155         """
--> 156         (result,) = compute(self, traverse=False, **kwargs)
    157         return result
    158

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\dask\base.py in compute(*args, **kwargs)
    396     keys = [x.__dask_keys__() for x in collections]
    397     postcomputes = [x.__dask_postcompute__() for x in collections]
--> 398     results = schedule(dsk, keys, **kwargs)
    399     return repack([f(r, *a) for r, (f, a) in zip(results, postcomputes)])
    400

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\distributed\client.py in get(self, dsk, keys, restrictions, loose_restrictions, resources, sync, asynchronous, direct, retries, priority, fifo_timeout, actors, **kwargs)
   2566                     should_rejoin = False
   2567             try:
-> 2568                 results = self.gather(packed, asynchronous=asynchronous, direct=direct)
   2569             finally:
   2570                 for f in futures.values():

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\distributed\client.py in gather(self, futures, errors, maxsize, direct, asynchronous)
   1820                 direct=direct,
   1821                 local_worker=local_worker,
-> 1822                 asynchronous=asynchronous,
   1823             )
   1824

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\distributed\client.py in sync(self, func, *args, **kwargs)
    751             return future
    752         else:
--> 753             return sync(self.loop, func, *args, **kwargs)
    754
    755     def __repr__(self):

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\distributed\utils.py in sync(loop, func, *args, **kwargs)
    329             e.wait(10)
    330     if error[0]:
--> 331         six.reraise(*error[0])
    332     else:
    333         return result[0]

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\six.py in reraise(tp, value, tb)
    691             if value.__traceback__ is not tb:
    692                 raise value.with_traceback(tb)
--> 693             raise value
    694         finally:
    695             value = None

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\distributed\utils.py in f()
    314             if timeout is not None:
    315                 future = gen.with_timeout(timedelta(seconds=timeout), future)
--> 316             result[0] = yield future
    317         except Exception as exc:
    318             error[0] = sys.exc_info()

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\tornado\gen.py in run(self)
    727
    728                     try:
--> 729                         value = future.result()
    730                     except Exception:
    731                         exc_info = sys.exc_info()

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\tornado\gen.py in run(self)
    734                     if exc_info is not None:
    735                         try:
--> 736                             yielded = self.gen.throw(*exc_info)  # type: ignore
    737                         finally:
    738                             # Break up a reference to itself

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\distributed\client.py in _gather(self, futures, errors, direct, local_worker)
   1651                             six.reraise(CancelledError, CancelledError(key), None)
   1652                         else:
-> 1653                             six.reraise(type(exception), exception, traceback)
   1654                     if errors == "skip":
   1655                         bad_keys.add(key)

c:\users\ejrmaru\appdata\local\programs\python\python36\lib\site-packages\six.py in reraise(tp, value, tb)
    691             if value.__traceback__ is not tb:
    692                 raise value.with_traceback(tb)
--> 693             raise value
    694         finally:
    695             value = None

IndexError: index 1661 is out of bounds for axis 0 with size 1655

Why is this exception getting raised? I'm using the latest version of Dask, 1.2.2, and my code is running in a Jupyter Notebook using Python 3.6.
If the error cannot be avoided in this case for some reason, is there a workaround that could be used?

Can you please provide more details or otherwise try to narrow down your problem, in a way that we can replicate and thus help solve? The following, seemingly similar situation works fine:
x = np.random.randn(100)
d = da.from_array(x, chunks=10)
d[x > 0].compute()

(produces the expected array of about 50 elements, with only positive values)

Can you please provide more details or otherwise try to narrow down your problem, in a way that we can replicate and thus help solve? The following, seemingly similar situation works fine:
x = np.random.randn(100)
d = da.from_array(x, chunks=10)
d[x > 0].compute()

(produces the expected array of about 50 elements, with only positive values)

I really don't know what additional details to provide, since the two lines of code and the description in the original post are really all there is to the lifecycles of those variables. Is there anything specific that you would like me to provide? Could it be that your examples works because you use the from_array method and specify the number of chunks explicitly?

@markojurkovic you could try using the Dask DataFrame to_dask_array() method to convert your Dask Series to a Dask array with known chunk sizes. For example, something like:
import dask.dataframe as dd
import numpy as np

# Create Dask DataFrame of random data
data = np.random.randn(100, 2)
ddf = dd.from_array(data, chunksize=30, columns=['col1', 'col2'])

# Generate an array to filter on
x = np.random.randn(100)

# Convert Dask Series to a Dask Array
# Specifying lengths=True to compute array chunk sizes
d = ddf['col1'].to_dask_array(lengths=True)

# Perform filtering
result = d[x > 0].compute()
print(f'result = {result}')

Note that specifying lengths=True in to_dask_array() will trigger an immediate computation of the Dask array chunk sizes.

Just checking in here, @markojurkovic does using .to_dask_array(lengths=True) instead of .values avoid the raised IndexError? Is it safe to close this issue?

@jrbourbeau OK, now the IndexError doesn't get raised, but why the piece of code @martindurant wrote in the first reply works, and mine doesn't stil isn't clear.

@markojurkovic are you able to provide a minimal example reproducing the first issue? That may help us (or you) understand the difference between your code & @martindurant's.

now the IndexError doesn't get raised

Glad to hear it!

why the piece of code @martindurant wrote in the first reply works, and mine doesn't still isn't clear

Not all operations (e.g. slicing) are supported for dask arrays with unknown chunk sizes (see http://docs.dask.org/en/latest/array-creation.html#from-dask-dataframe). The .values attribute on a dask series returns a dask array with unknown chunk sizes, while in @martindurant's example the dask array has known chunk sizes. My guess is that's what's causing your original issue. Echoing @TomAugspurger's comment, a minimal example could help us better understand the situation.

Closing this issue as I think the originally posted issue has been resolved. @markojurkovic feel free to re-open if this is not the case


Confusion on to_categorical function for class Train.

The to_categorical function in class Train is supposed to divide the labels distribution into a uniform a categorical bins but its only generating labels between 0 and 3. What is the correct way to use it?
>>> from train import Train
>>> import numpy as np
>>> trainer = Train()
>>> labels = np.random.uniform(low=0.0, high=0.39999999, size=(4000, 1))
>>> cat_labels = trainer.to_categorical(labels)
>>> num_cats_gt_4 = (cat_labels > 4).sum()
>>> num_cats_gt_4
0
>>> num_cats_lt_4 = (cat_labels < 4).sum()
>>> num_cats_lt_4
4000

I guess the other way of framing the question is why is default value for the max_rs_val for the class 3.5?

The default value was arbitrarily chosen because it is the closest simple number to the actual highest redshift value of our initial dataset. For other datasets, it may be more appropriate to make it higher or lower, with the presumption that it is best to keep the possible range as close to the actual range as possible to allow the smallest granularity possible with the given number of bins.
Unfortunately, I currently don't know of a better way to estimate a better default value. I suspect, though have not tested, that setting it to the currently known maximum value (11.09) could degrade performance by reducing the granularity of the bins. This seems especially important when considering that the majority of the samples that we have already used for training are very low (<1.0). I have considered the possibility of setting the max to slightly above the highest value in the training set, but I am unsure if this could cause problems for galaxies with higher redshift scores if the training set happened to be more skewed towards closer galaxies than the true distribution.

The default value was arbitrarily chosen because it is the closest simple number to the actual highest redshift value of our initial dataset. For other datasets, it may be more appropriate to make it higher or lower, with the presumption that it is best to keep the possible range as close to the actual range as possible to allow the smallest granularity possible with the given number of bins.

Isn't it the case that the redshift for the initial dataset is in the range [0, 0.4)? Categorizing them into bins of range [0, 3.5) would mean the distribution would not be representative of the dataset itself.

Unfortunately, I currently don't know of a better way to estimate a better default value. I suspect, though have not tested, that setting it to the currently known maximum value (11.09) could degrade performance by reducing the granularity of the bins. This seems especially important when considering that the majority of the samples that we have already used for training are very low (<1.0). I have considered the possibility of setting the max to slightly above the highest value in the training set, but I am unsure if this could cause problems for galaxies with higher redshift scores if the training set happened to be more skewed towards closer galaxies than the true distribution.

Quoting from the redshift paper "From the SDSS database, we retrieved 516,525 sources classified as galaxy, with dereddened petrosian magnitudes r ≤ 17.8 and spectroscopic redshifts z ≤ 0.4. We should use this as the default value. The number of bins should be determined based on the training size.

The initial dataset used by the original authors was using the range [0,0.4), but the smaller starting set I was provided initially and used for testing was in the range [0,0.344), thus the current use of 3.5 as the default max value. I admittedly missed that point in the paper and agree that future versions should use 0.4 for the default. I will fix this in all relevant locations.

As an additional note, I just realized that I was using 3.5 instead of the originally intended 0.35. This appears to have been a slight mistake that I made early on that persisted through numerous versions. This might explain some of the earlier underperformance compared to the original paper.


networkmanager-l2tp: 1.2.10 -> 1.2.12

Same patchups but moved to new file.
(cherry picked from commit cdf96e8a084a3efb60a93ab613183704a32f42ed)
Seems to fix my problems with l2tp VPNs not functioning properly.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

This does not make the difference I thought it did. Something stateful is happening. When I erased / and rebooted, it again did not work.

You don't see anything like https://github.com/nm-l2tp/NetworkManager-l2tp/issues/108 https://github.com/NixOS/nixpkgs/pull/58704#issuecomment-479034509 popping up do you?
Something stateful would be it appending that line to the file in mention.

As for the backport, some things that maybe are problematic

Force ikev2=never for Libreswan
ikev2=permit was the implicit default setting, which tries to detect a "bid down" attack from IKEv2 to IKEv1 and can have an impact on the default proposals.

Use same IP secrets file for all L2TP connections,
/etc/ipsec.d/ipsec.nm-l2tp.secrets is now used instead of /etc/ipsec.d/nm-l2tp-ipsec-UUID.secrets, where UUID was the UUID of the VPN connection.

Generated config file changes, following config files :
/var/run/nm-l2tp-xl2tpd-UUID.conf
/var/run/nm-l2tp-xl2tpd-control-UUID
/var/run/nm-l2tp-xl2tpd-UUID.pid
/var/run/nm-l2tp-ppp-options-UUID
are now:
/var/run/nm-l2tp-UUID/xl2tpd.conf
/var/run/nm-l2tp-UUID/xl2tpd-control
/var/run/nm-l2tp-UUID/xl2tpd-.pid
/var/run/nm-l2tp-UUID/ppp-options

Seems like Fedora (29) hasn't had an issue with the update

https://src.fedoraproject.org/rpms/NetworkManager-l2tp/c/2a3b5544b4189a2cb190ebbdb60142f43eafa8e8?branch=f29

I'm going to go ahead and close this PR, as it doesn't seem to actually be part of the resolution for my problems. Thanks for the review and digging on fedora :)


Add the ability to put imported clientBaseClass on top of the generated typescript file

In NSwag, when I try to generate a Typescript client, I can set a clientBaseClass and import a file in the generated typescript client.
However, the included content gets written at the bottom of the file, which results in

TS2449: Class 'BaseClass' used before its declaration.

Really strange, the ClientBaseClass should be passed in the baseClasses parameter:

And this parameter should be added on top, see:
https://github.com/RSuter/NJsonSchema/blob/master/src/NJsonSchema.CodeGeneration.TypeScript/TypeScriptExtensionCode.cs#L41

For reference, here is the extension code (some comments containing build instructions were removed to keep it simple):
// Imported class for NSwag code generation to use cookies in http fetch requests
// Temporary solution that should be superseded by https://github.com/RSuter/NSwag/issues/734

// [...]

// Use NSwag Studio with the .nswag to generate the code
// Find this piece of code at the bottom of the file, and move it to the top

export class UseHttpCookiesForApi {
    protected transformOptions(options: RequestInit): Promise<RequestInit> {
        options.credentials = 'same-origin';
        return Promise.resolve(options);
    }
}

So your clientBaseClass setting is set to UseHttpCookiesForApi and UseHttpCookiesForApi is still rendered at the bottom of the file?

Here is a repro repo : https://github.com/jeremyVignelles/TestNSwagNetCoreApp
The fact that the text "class" is included in the comment above my class seems to bug the parser.
Also, if I remove the comment, my base class code is removed from the bottom, but not included at the top...

If i remove the comment, the class is generated at the top...

Right, I was putting UseHttpCookiesForApi in both clientBaseClass and extendedClasses...

I've added a PR which would fix your problem. Not sure however if it breaks someone else...

The fact that the text "class" is included in the comment above my class seems to bug the parser.

That did it for me!


Feat add undo func

What this PR does: add undo manager func
Which issue(s) this PR fixes:

Fixes #247
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

Codecov Report

Merging #320 (4ee23cd) into master (d2b0e7c) will decrease coverage by 2.41%.
The diff coverage is 0.00%.

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