No notification when app not in foreground

Expected Behaviour
Notification should be displayed in system tray when application is in background
Actual Behaviour
No notification is displayed when app is not in foreground
Reproduce Scenario (including but not limited to)
No notifications appear when application is in background, only when in foreground. Looking at the log, the message is delivered. It works fine on my Nexus 9 (Android 7.1.1)
Steps to Reproduce
Platform and Version (eg. Android 5.0 or iOS 9.2.1)
Android 8.0
(Android) What device vendor (e.g. Samsung, HTC, Sony...)
Samsung 8 Plus
Cordova CLI version and cordova platform version
cordova --version                                    7.1.0
cordova platform version android         6.4.0

Plugin version
cordova plugin version | grep phonegap-plugin-push   = phonegap-plugin-push 1.10.6 "PushPlugin"

Sample Push Data Payload
message: "1234"
title: "Test title"
Sample Code that illustrates the problem
Using java com.google.android.gcm.server
Message message = new Message.Builder().collapseKey("0").delayWhileIdle(true).addData("message","1234").addData("title", "Test title").build();
sender.send(message, messageId, 1);
Logs taken while reproducing problem
Log while app is in background:
03-24 01:07:31.748 21542-22083/com.test.app D/Push_GCMIntentService: onMessage - from:<PHONE_NUMBER>36
03-24 01:07:31.751 21542-22083/com.test.app D/Push_GCMIntentService: normalize extras
03-24 01:07:31.751 21542-22083/com.test.app D/Push_GCMIntentService: key = google.sent_time
03-24 01:07:31.752 21542-22083/com.test.app D/Push_GCMIntentService: replace key google.sent_time with google.sent_time
03-24 01:07:31.752 21542-22083/com.test.app D/Push_GCMIntentService: key = google.ttl
03-24 01:07:31.752 21542-22083/com.test.app D/Push_GCMIntentService: replace key google.ttl with google.ttl
03-24 01:07:31.753 21542-22083/com.test.app D/Push_GCMIntentService: key = title
03-24 01:07:31.753 21542-22083/com.test.app D/Push_GCMIntentService: replace key title with title
03-24 01:07:31.755 21542-22083/com.test.app D/Push_GCMIntentService: no locale found for key = title, error Value Test of type java.lang.String cannot be converted to JSONObject
03-24 01:07:31.755 21542-22083/com.test.app D/Push_GCMIntentService: key = google.message_id
03-24 01:07:31.756 21542-22083/com.test.app D/Push_GCMIntentService: replace key google.message_id with google.message_id
03-24 01:07:31.756 21542-22083/com.test.app D/Push_GCMIntentService: key = message
03-24 01:07:31.756 21542-22083/com.test.app D/Push_GCMIntentService: replace key message with message
03-24 01:07:31.758 21542-22083/com.test.app D/Push_GCMIntentService: no locale found for key = message, error Value 1234serv of type java.lang.String cannot be converted to JSONObject
03-24 01:07:31.758 21542-22083/com.test.app D/Push_GCMIntentService: key = collapse_key
03-24 01:07:31.758 21542-22083/com.test.app D/Push_GCMIntentService: replace key collapse_key with collapse_key
03-24 01:07:31.759 21542-22083/com.test.app D/Push_GCMIntentService: background
03-24 01:07:31.764 21542-22083/com.test.app D/Push_GCMIntentService: message =[1234serv]
03-24 01:07:31.764 21542-22083/com.test.app D/Push_GCMIntentService: title =[Test title]
03-24 01:07:31.764 21542-22083/com.test.app D/Push_GCMIntentService: contentAvailable =[null]
03-24 01:07:31.765 21542-22083/com.test.app D/Push_GCMIntentService: forceStart =[null]
03-24 01:07:31.765 21542-22083/com.test.app D/Push_GCMIntentService: create notification
03-24 01:07:31.767 21542-22083/com.test.app E/Push_GCMIntentService: Number format exception - Error parsing notId: s == null
03-24 01:07:31.828 21542-21548/com.test.app I/zygote64: Method exceeds compiler instruction limit: 25337 in void org.ccil.cowan.tagsoup.HTMLSchema.()
03-24 01:07:31.850 21542-22083/com.test.app D/Push_GCMIntentService: stored icon=null
03-24 01:07:31.850 21542-22083/com.test.app D/Push_GCMIntentService: stored iconColor=null
03-24 01:07:31.850 21542-22083/com.test.app D/Push_GCMIntentService: stored sound=true
03-24 01:07:31.850 21542-22083/com.test.app D/Push_GCMIntentService: stored vibrate=true
03-24 01:07:31.850 21542-22083/com.test.app D/Push_GCMIntentService: no icon resource found - using application icon
03-24 01:07:31.865 21542-22083/com.test.app D/Push_GCMIntentService: create actions: with in-line
03-24 01:07:31.871 21542-22083/com.test.app W/Notification: Use of stream types is deprecated for operations other than volume control
03-24 01:07:31.872 21542-22083/com.test.app W/Notification: See the documentation of setSound() for what to use instead with android.media.AudioAttributes to qualify your playback use case
Log while app is in foreground
3-24 01:04:31.742 21542-22083/com.test.app D/Push_GCMIntentService: onMessage - from:<PHONE_NUMBER>36
03-24 01:04:31.745 21542-22083/com.test.app D/Push_GCMIntentService: normalize extras
03-24 01:04:31.745 21542-22083/com.test.app D/Push_GCMIntentService: key = google.sent_time
03-24 01:04:31.745 21542-22083/com.test.app D/Push_GCMIntentService: replace key google.sent_time with google.sent_time
03-24 01:04:31.746 21542-22083/com.test.app D/Push_GCMIntentService: key = google.ttl
03-24 01:04:31.746 21542-22083/com.test.app D/Push_GCMIntentService: replace key google.ttl with google.ttl
03-24 01:04:31.746 21542-22083/com.test.app D/Push_GCMIntentService: key = title
03-24 01:04:31.746 21542-22083/com.test.app D/Push_GCMIntentService: replace key title with title
03-24 01:04:31.747 21542-22083/com.test.app D/Push_GCMIntentService: no locale found for key = title, error Value Test of type java.lang.String cannot be converted to JSONObject
03-24 01:04:31.748 21542-22083/com.test.app D/Push_GCMIntentService: key = google.message_id
03-24 01:04:31.748 21542-22083/com.test.app D/Push_GCMIntentService: replace key google.message_id with google.message_id
03-24 01:04:31.748 21542-22083/com.test.app D/Push_GCMIntentService: key = message
03-24 01:04:31.748 21542-22083/com.test.app D/Push_GCMIntentService: replace key message with message
03-24 01:04:31.749 21542-22083/com.test.app D/Push_GCMIntentService: no locale found for key = message, error Value 1234 of type java.lang.Integer cannot be converted to JSONObject
03-24 01:04:31.749 21542-22083/com.test.app D/Push_GCMIntentService: key = collapse_key
03-24 01:04:31.749 21542-22083/com.test.app D/Push_GCMIntentService: replace key collapse_key with collapse_key
03-24 01:04:31.749 21542-22083/com.test.app D/Push_GCMIntentService: key = foreground
03-24 01:04:31.749 21542-22083/com.test.app D/Push_GCMIntentService: replace key foreground with foreground
03-24 01:04:31.749 21542-22083/com.test.app D/Push_GCMIntentService: foreground
03-24 01:04:31.750 21542-22083/com.test.app D/Push_Plugin: convert extras to json
03-24 01:04:31.750 21542-22083/com.test.app D/Push_Plugin: key = google.sent_time
03-24 01:04:31.750 21542-22083/com.test.app D/Push_Plugin: key = google.ttl
03-24 01:04:31.750 21542-22083/com.test.app D/Push_Plugin: key = title
03-24 01:04:31.750 21542-22083/com.test.app D/Push_Plugin: key = google.message_id
03-24 01:04:31.750 21542-22083/com.test.app D/Push_Plugin: key = message
03-24 01:04:31.750 21542-22083/com.test.app D/Push_Plugin: key = coldstart
03-24 01:04:31.750 21542-22083/com.test.app D/Push_Plugin: key = collapse_key
03-24 01:04:31.750 21542-22083/com.test.app D/Push_Plugin: key = foreground
03-24 01:04:31.751 21542-22083/com.test.app V/Push_Plugin: extrasToJSON: {"title":"Test title","message":"1234","additionalData":{"google.message_id":"0:1521849870053115%b71cbd2a00000030","coldstart":false,"collapse_key":"0","foreground":true}}
03-24 01:04:31.825 21542-21542/com.test.app D/ScrollView: initGoToTop
Message received when app is open: screenshot
Maybe cloned https://github.com/phonegap/phonegap-plugin-push/issues/1894

@bastaware can you send me an example of your push payload?

This is toString on the Java Message object. Don't know if that's enough?
Message(collapseKey=0, delayWhileIdle=true, data: {message=hello,title=Test title,notId=0})
The notId was added, because I saw a problem in the log (not in the one attached) parsing 'notId' gave exception. This disappeared when I added the notId entry.
This is the actual code:
				Message message = new Message.Builder().collapseKey("" + collapseKey).delayWhileIdle(true).addData("message", messageText).addData("title", messageTitle).addData("notId", "0").build(); 				String themessage = message.toString(); 				System.out.println("The message:" + themessage); 				Result result = sender.send(message, messageId, 1);

Even I am facing a similar issue. I am using v2.1.3 of the plugin with cordova-android v6.3.0... I have tested on Android 8+ and Android 7+. When the notification is triggered with the application in foreground or background, I get the notification as expected. When the same notification is triggered with the application cleared from memory (swipe close from recent apps), no notification is received (no notification in the system tray). I am not getting any logs which kind of implies that the plugin is not invoked at all in this case. However, as per my understanding, the notification should be handled by the default Android notification handler, which is not happening. Not sure what the issue is. Any help is much appreciated.
PS: I'm passing the payload in data, and not notification.

@bastaware it seems like you are testing on Android 8 with push plugin 1.10.6. Because of changes in Android 8 you will need to update to the v2.x version of the plugin.
@sreenivas1901 the OS should pass the incoming data to the FCMService class of the plugin to have it displayed. Logs would help.

it seems like you are testing on Android 8 with push plugin 1.10.6. Because of changes in Android 8 you will need to update to the v2.x version of the plugin.

I have the same issue with Android 8 and push plugin 1.10.7.
@macdonst, If there any way to use GSM instead FCM with  Android 8 or only the v2.x version?

@Christina-Popova the migration from GCM to FCM is not hard. It's mostly setting up a project on Google just like GCM. Then you download a json file to add it to your app.

@macdonst Thanks for the quick reply. We've already released application in Play market which is using GSM. If we migrate to FCM, will sending push notification via GSM still work? Cause we need some time to testing FCM before new release!

@Christina-Popova you mean GCM (Google Cloud Messaging) not GSM (Groupe Spécial Mobile) right?
Whoever is in charge of your GCM app on Google probably got an email today saying that GCM is deprecated and you should upgrade to FCM. A quote from the email:

The GCM server and client APIs are deprecated and will be removed as soon as April 11, 2019.  We recommend you upgrade sooner rather than later so you can start taking advantage of the new features in FCM today.

The migration from GCM to FCM is not terrible on the server side. For our node service we just switched a package and it worked the same. On the client side you'd need to upgrade the plugin version and include the GoogleServices-info.json file in your app.
Google spells it out here:
https://developers.google.com/cloud-messaging/android/android-migrate-fcm?utm_medium=email&utm_source=msa
You'd need to take care of 1 & 4 but the v2 plugin has already done 2 & 3 for you.

Gosh! It really was that easy to switch to FCM. I didn't even change anything on the server. Thanks!


Systray already managed

When I run polybar -c .config/polybar/config Bar --log=info
I see
warn: Systray selection already managed (window=0x1000009)
and no indicator icons.
How do I make that work?
i3 gaps 4.13 && 4.9.11-1-ARCH

Are you using stock i3 bar along with polybar? There can be only 1 bar with systray.

I was not using i3bar. But was using two polybars with tray . That was the reason.


TokenIdentifier differs from Text from ext-standard

https://github.com/aviate-labs/ext.std/blob/00cca45c06e669bb2d28e2bb356139cc26058971/src/Core.mo#L42
https://github.com/Toniq-Labs/extendable-token
Does the standard changed?

Thank you for the issue!
This goal of this repository is not to provide a stable standard. It is just me experimenting in the open.
I have clarified this in ac6d91b, I am sorry for the misunderstanding.

Did the standard change?

No, it did not.
I would recommend looking at the example implementations of the EXT Standard.
This fork has a version that is compatible with vessel.

Hi @dpori! I also added the EXT Std to the repo.


Fix Namespace Cache Typo & remove useless query

First of all there's a big 'error' on the namespace which never matched as there was a typo.
Second if a hash exists; the namespace query is run for no reason as data is overwritten by the if statement underneath.

Good find, very baad typo by me!

If there's another 2.6.x release planned nitriques this should be cherry picked

Thanks guys. Been really busy the past week. And I've turn 30 :P
I hope to get 2.7.0 out soon. If this is urgent, I could do another 2.6.x.

And I've turn 30 :P

Congrats! And all the best for your thirties :)

I hope to get 2.7.0 out soon.

May I ask how soon? I started working on a small interface feature I was missing in Symphony for years now and I would love to include it in the upcoming 2.7-release (as this might be the last minor/feature-update of the 2.x-branch).
But I'm only halfway there yet and won't find any time to work on it in the next 2 weeks... maybe I could post some details and a first rough branch in 3 weeks to get some feedback from you guys.
I might also need some help optimizing one or two database-calls from someone who is more experienced with MYSQL than I am... anyone volunteering to give me some assistance with that? Would be very much appreciated!

@nitriques congrats mate, hope it's a great year for you.

Lots of young people here... Congrats, @nitriques!

@twiro I've been dealing with a reduced tasked force and more work then ever at work for the past couple of weeks, so I can't give any timeframe. Hopefully, we've managed to find some good people to come to work with us so I'll be able to see things more clearly in the coming weeks. That being said, I do not like the idea of waiting for things to happen as this has been proven to not work out. Do continue to work on it as you can, without any rush to ship things. Versions number do not matter. As long as it's compatible we can ship it quick. I am glad to release things when people are happy with the changes! Let's do what we can and manage releases around that instead of the other way around.
@munki-boy @michael-e Thanks guys!

@brendo @michael-e  Is there a reason why the cache does not work when passing both an hash AND namespace ?
I know we already addressed this, but I got bitten again by it while building the sri extension. Why can't we check both hash and namespace in the where clause again ?

Sorry, I have no idea regarding this caching stuff. Hope @brendo can shed light on it.

Thanks Michael. Do you agree that it's a weird behaviour ?

I don't even fully understand how it is intended to work. Is there any documentation on this matter?

I do not think so, sadly

So in order to say anything useful, I would have to dive into it...
What is the hash used for anyway? (Maybe: find the entry?)
If the hash is used to find the entry, why is the namespace not included in the hash?
Can this mechanism be safe regarding hash collisions? (The probablity of collisions depends on the length of the hashed string, of course.)

I'll try to provide answers!

What is your expectation regarding the namespace/hash matter?

$hash + $namespace both not null -> do a hash AND namespace search
$hash not null + $namespace null -> do a hash search
$hash null + $namespace not null -> do a namespace search

Case 1 is not implemented right now and always returns null.

What is the hash used for anyway? (Maybe: find the entry?)

It's currently used as the primary key yes. The system is setup in order to support multiple cache providers, so that's why the behaviour is hard to grasp.

If the hash is used to find the entry, why is the namespace not included in the hash?

In my understanding, namespaces were added after the initial implementation. It was added to be able to clean a "group" of records, hence why it's isolated. It's a common need with reddis if I recall correctly.

Can this mechanism be safe regarding hash collisions? (The probablity of collisions depends on the length of the hashed string, of course.)

The key is currently limited to 32 chars, which is also a flaw (I was putting paths in there but changed to md5($path) due to this limitation). So not, it's not currently safe theoretically, but I've never encounter a md5 collision in my life.

Why can't we check both hash and namespace in the where clause again ?

Basically my understanding is that a hash is unique; regardless of the
namespace. So you do not need a namespace to generate a hash. Hashes are
generated via md5 or something of the sort which is usually up to the
extension/provider to decide on the source but that has to be generated
before any processing; so in case of data sources we use the param name +
param filters.
The namespace is there to simplify 'deleting' and 'obtaining' grouped cache
entries. For Example a namespace could be a name of a section/datasource
which is used to clear all the caches related to that section/datasource on
save through the backend. The namespace's purpose is not to ensure
uniqueness but rather to provide functionality to read/delete multiple
items in one go vs trying to generate all the hashes at random.
Thus whenever a query with both namespace and hash is sent; only the hash
is going to be used as that is considered unique. As far as I'm aware we
don't handle collisions they're pretty rare... though you could say that
the extension which would use the cache provider should handle this, as the
extension would usually send in the hash and data thus the generic class
has to be agnostic you can't know what data is expected on the other end.
On Sat, 23 Apr 2016 at 19:18 michael-e<EMAIL_ADDRESS>wrote:

So in order to say anything useful, I would have to dive into it...
What is the hash used for anyway? (Maybe: find the entry?)
If the hash is used to find the entry, why is the namespace not
included in the hash?
Can this mechanism be safe regarding hash collisions? (The
probablity of collisions depends on the length of the hashed string, of
course.)

—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/symphonycms/symphony-2/pull/2582#issuecomment-213789402

That would explain a lot. But, should not we consider checking only the namespace if hash is null and revert to hash if it's not null. At least, my code would look ok with the namespace being specified in every call (read, write, delete) ? I find it rather strange to get null while passing both values.

@nitriques my pull request should only check the namespace when the hash is null, as it was doing a fetch which was overwritten by another query (performance mainly) and btw my code still works with both namespace and hash specified in each call, at least there is no reason why it should not... what I just realised is that we delete the namespace if there is no data; which could possibly cause performance issues, if the hash is defined, as we only want the hash deleted and not the namespace.

Indeed.

$hash + $namespace both not null -> do a hash AND namespace search
$hash not null + $namespace null -> do a hash search
$hash null + $namespace not null -> do a namespace search

This sounds like the most logical behaviour to me

To me too! But I fear like it can't be supported on ALL cache providers (does reddis, memcache and al support $hash + $namespace search ?)

Memcache doesn't not by default, but a php driver can handle namespacing at
least that's a best practice from what I read. It's how I set up the driver
to work
On Mon, 25 Apr 2016 at 21:44, Nicolas Brassard<EMAIL_ADDRESS>wrote:

To me too! But I fear like it can't be supported on ALL cache providers
(does reddis, memcache and al support $hash + $namespace search ?)
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/symphonycms/symphony-2/pull/2582#issuecomment-214495807

@jonmifsud so it's safe to add the

$hash + $namespace both not null -> do a hash AND namespace search

bit ?


Create sachin.md

Hi @toocoolsachin thanks for the PR, could you make the file in the correct folder :smiley:

Hi @johnjacobkenny, sure will do that

Hi @johnjacobkenny, I have moved my .md file in the firstpr folder.


added ability to get and set all project settings

added methods to get all project settings from abstract external module - useful when creating custom configuration pages

Merged!  Thank you Andy.  I also added these methods to the documentation.


Fixed OPTIONS method bug

This fixes a bug to allow CORS, cross origin requests

Yep.  pylons doesn't hook up handlers for the OPTIONS http method.  Jim and I discussed doing it at the nginx level, but it would have required having people compile nginx to enable the correct modules.

Fixed before we even had time to create the issue in Git and track it through PT.  Nice.

Awesome. That saves me a ton of time. I will see if I can test it before plugfest.

@Lomilar I can deploy this to one of our dev servers so you can test it out

@Lomilar I updated lrdev01.learningregistry.org to run this branch.  Let me know if it works for you

We should probably add a simple functional test... maybe test_base.py, that goes and checks that the OPTIONS verb works on all the mappings.
I know... I'm being a PITA... we just need to make sure we keep on the TDD path.

Not a pita at all.  You're 100% correct.  I'll add the test in the AM

Awesome work and communication.

@jimklo Added the tests for this.  Now for any test controller we add if we fill in self.controllerName it'll run the options test for it.

Howdy all,
The OPTIONS call works, but it is not returning the correct headers.
Request URL:http://lrdev01.learningregistry.org/publish
Request Method:OPTIONS
Status Code:200 OK
Request Headers:
Access-Control-Request-Headers:Origin, Content-Type, Accept
Access-Control-Request-Method:POST
Origin:chrome-extension://afpejiddhiiicccoigcjbbgdnjonkjah
Response Headers
Access-Control-Allow-Methods:GET, POST, OPTIONS
Access-Control-Allow-Origin:*
Access-Control-Max-Age:1728000
Cache-Control:no-cache
Connection:keep-alive
Content-Length:0
Content-Type:application/json;charset=utf-8
XMLHttpRequest cannot load http://lrdev01.learningregistry.org/publish. Request header field Content-Type is not allowed by Access-Control-Allow-Headers.
Apologies for not getting to this sooner, been ill.

Using JQuery 1.4, I think.. here is the snippet to do the POST to the lrdev server.
$.ajax({
url: "http://lrdev01.learningregistry.org/publish",
type: "POST",
data: {foo:"bar"},
contentType: "application/json",
success: function(data){
alert("Success");
}
});

Ok I think this is working correctly.
Here's the code from my test page
https://gist.github.com/1468472
and here's the hosted version
http://ec2-107-20-89-215.compute-1.amazonaws.com/static/postSample.html

@jimklo I added a test to check this in the default case for all services and one to test specifically for publish through the entire cycle, OPTIONS call -> validate headers -> POST -> Validate results.  Can you take a look at the new tests

Passes on my mac, but not on the VM Jim originally set up (headers missing from options test on test_sword.py; all other modified tests pass).

ok, I tried this on the VM... it doesn't seem to work.. not sure what @armontoya means by (headers missing from options test on test_sword.py).
Both test_sword and test_status both fail.  I basically took the Plugfest VM updated to head, then pulled your wegrata:options branch. ran the setup_node then ran each of the tests.
The error that occurs is:
URL: http://localhost//status
File '/home/lreg/env/lr/local/lib/python2.7/site-packages/weberror/errormiddleware.py', line 162 in __call__
  app_iter = self.application(environ, sr_checker)
File '/home/lreg/env/lr/local/lib/python2.7/site-packages/beaker/middleware.py', line 155 in __call__
  return self.wrap_app(environ, session_start_response)
File '/home/lreg/env/lr/local/lib/python2.7/site-packages/routes/middleware.py', line 131 in __call__
  response = self.app(environ, start_response)
File '/home/lreg/env/lr/local/lib/python2.7/site-packages/pylons/wsgiapp.py', line 107 in __call__
  response = self.dispatch(controller, environ, start_response)
File '/home/lreg/env/lr/local/lib/python2.7/site-packages/pylons/wsgiapp.py', line 312 in dispatch
  return controller(environ, start_response)
File '/home/lreg/LearningRegistry/LR/lr/lib/base.py', line 19 in __call__
  return WSGIController.__call__(self, environ, start_response)
File '/home/lreg/env/lr/local/lib/python2.7/site-packages/pylons/controllers/core.py', line 211 in __call__
  response = self._dispatch_call()
File '/home/lreg/env/lr/local/lib/python2.7/site-packages/pylons/controllers/core.py', line 162 in _dispatch_call
  response = self._inspect_call(func)
File '/home/lreg/env/lr/local/lib/python2.7/site-packages/pylons/controllers/core.py', line 105 in _inspect_call
  result = self._perform_call(func, args)
File '/home/lreg/env/lr/local/lib/python2.7/site-packages/pylons/controllers/core.py', line 57 in _perform_call
  return func(**args)
File '/home/lreg/LearningRegistry/LR/lr/controllers/status.py', line 37 in index
  earliestDate = har.earliestDate()
File '/home/lreg/LearningRegistry/LR/lr/lib/harvest.py', line 37 in earliestDate
  return view.rows[0].key
IndexError: list index out of range

Yeah saw this after i merged master looking into it


connect(...) blocks for quite a while

I'm calling smtp_open with these parameters:
smtp_open(
    "smtpout.secureserver.net",
    "25",
    SMTP_SECURITY_STARTTLS,
    (smtp_flag) (SMTP_DEBUG | SMTP_NO_CERT_VERIFY),
    0,
    &sender->smtp
);

Eventually it returns successfully but more often than not it takes 2 minutes or so. I did some digging to find out where exactly in the code it gets stuck and it is in connect(smtp->sock, res->ai_addr, res->ai_addrlen) inside smtp_connect.
Based on my experience using the python smtp client library I'm guessing the connection can be faster (even instantaneous), but I'm not a socket guy so I don't know exactly how.
Edit: I don't know if this is related or not, but the blocking happens especially if I just smtp_close'd the client. It also happens if it is the first time opening the connection, but less often. Maybe it is waiting for the last connection to the server to be closed properly? I don't know, just throwing ideas.

I think I found out what the problem was.

The server is actually on port 465.
I need SMTP_SECURITY_TLS instead of SMTP_SECURITY_STARTTLS.

But now I have two questions:

The README page says SMTP_SECURITY_TLS is deprecated. But SMTP_SECURITY_STARTTLS doesn't work with this server. Do I have other options?
How did the connection work with the wrong port in the first place?

You could try using port 587 with SMTP_SECURITY_STARTTLS instead of port 25. I removed the deprecated note. You must use the SMTP_SECURITY_TLS option if you connect to a mail server configured with a TLS port as you pointed out. Mail servers with port 465 typically require SMTP_SECURITY_TLS. And mail servers using port 25 and 587 would typically require SMTP_SECURITY_STARTTLS if using encryption, or SMTP_SECURITY_NONE if not using encryption.

I do not have an account on that mail server so I cannot send test emails, but I can open the connection on both ports 25 and 587, issue a STARTTLS command, and then close the connection. The connect() does not block or delay.  Thank you for taking your time to investigate this, and thanks for the library. It's been a good replacement for the old one I was using.


re-use for edit mode, which similarly should have an object hint when hovering over an object (on top of the blue mesh shader).

It's unclear what this issue is.


Fix: ILogger in code example

@jviau
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


Added Capability to build on M1 Mac (tested on MacOs 11.4) with docke…

Changed the Dockerfile to build on M1 Macs. It may also work on Linux machines without changes. Pls check.

Did you try building it as native aarch64? In theory it should work

haven't done so since I found the issue to be solvable with the x86 flag, gonna try again, https://lightrun.com/answers/radian-software-riju-support-for-armm1-e-unable-to-locate-package-docker-ce-cli

The flag is very bad for performance, especially for JITted code like QEMU, as it's basically emulating two layers depp. Don't expect to get any performance from it. It would be better to fix it properly if it doesn't work right now.

I know, though aarch64 doesn't work

Please try if #18 works for you

doesn't work
#10 51.88     Building C extensions
#10 51.88     error: [Errno 2] No such file or directory: '/tmp/pip-install-i2ojnsbv/unicorn/../../include/unicorn'
#10 51.88     ----------------------------------------
#10 52.03 ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-i2ojnsbv/unicorn/setup.py'"'"'; file='"'"'/tmp/pip-install-i2ojnsbv/unicorn/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record /tmp/pip-record-f3_1i7fd/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.8/unicorn Check the logs for full command output.
executor failed running [/bin/sh -c pip3 install -r /firmwire/requirements.txt]: exit code: 1


[Feature Request]: Support StringSet Metrics in Beam for Dataflow

What would you like to happen?
Add support for String set metric in Beam which can track unique strings as metric.
Issue Priority
Priority: 2 (default / most feature requests should be filed as P2)
Issue Components

[X] Component: Python SDK
[X] Component: Java SDK
[X] Component: Go SDK
[ ] Component: Typescript SDK
[ ] Component: IO connector
[ ] Component: Beam YAML
[ ] Component: Beam examples
[ ] Component: Beam playground
[ ] Component: Beam katas
[ ] Component: Website
[ ] Component: Spark Runner
[ ] Component: Flink Runner
[ ] Component: Samza Runner
[ ] Component: Twister2 Runner
[ ] Component: Hazelcast Jet Runner
[X] Component: Google Cloud Dataflow Runner

.take-issue


dragEnd fired twice

I think the fix is just move this.isDragging = false; before
        if (this.endPoint && (this.startPoint.x !== this.endPoint.x || this.startPoint.y !== this.endPoint.y)) {
            this.notify('end');
        }

in SplitComponent.stopDragging function

Need more context, please provide library version and stackblitz demo.
Just tested with following example on chrome/firefox/ie11/edge and it works as expected:
https://bertrandg.github.io/angular-split/#/examples/gutter-click-roll-unroll

Feel free to reopen with stackblitz demo if you reproduce it.

After investigation it was my fault, I was binding a var to size and I was resetting that var after resizing the areas. Sorry.


chore(frontend): format i18n type file

Motivation
Maybe in some PR, an unformatted i18n type file slipped in. This is not checked by the format CI, since it is an auto-generated file.
Future Todo

[ ] Add CI to check auto-generated files like this one (I believe it already exists something similar for the backend)
[ ] Add a CI to auto-commit this?

@inc-man tagging you here just to have some context of the TODO we discussed offline


ouath_call back option

can't set oauth_callback option in config for callback url if not set in api setting
$client = new \Upwork\API\Client($config);
$client->getRequestToken();

@M-Shahbaz , please check the documentation at https://developers.upwork.com - callback must be provided in the key's settings.


Updates git-cmake-format

This PR updates git-cmake-format to include the latest fix for setting the git hooks directory. This also fixes the directory for the dummy hook.
Fixes #1223.
Todo:

[x] wait for https://github.com/ginkgo-project/git-cmake-format/pull/11

rebase!

rebase!


[WFLY-9346] Fix JAAS JDNI binder race condition

[WFLY-9346] Fix JAAS JDNI binder race condition

I have fixed all the problems addressed in #https://github.com/wildfly/wildfly/pull/10662:

Capabilities class access change
IIOPRootDefinition references capabilities
I have checked and "jaas" is the only type of domain which uses BinderService hence the fix applies only to it

I added IIOP subsystem capability - will refactor other subsystems to depend on it but wanted to avoid doing everything in one PR.I will also add capability references for Elytron security-context attribute as part of other PR.

This seems to help avoid ORB init failures from a tck run.

@darranl do you approve this pr?  @tadamski mentioned above that he addressed concerns from https://github.com/wildfly/wildfly/pull/10662
I'm looking forward to seeing fewer TCK (ORB INIT) failures on Central CI, which this pr seems to help with.


Feature/roomaudittrail

This pull request enhances the RoomService in the QuizMaster application by adding comprehensive audit trail functionality for room-related operations, including create, update, and delete events.
Changes:
Modified the CreateRoom, UpdateRoom, and DeleteRoom methods in RoomService to capture user details and include audit trails.
Introduced a new gRPC service (RoomAuditService) for logging room-related audit events.
Created CreateRoomEvent, UpdateRoomEvent, and DeleteRoomEvent to represent the event structures for room operations in the audit trail.
Updated the proto file (roommonitoringaudit.proto) to include the new gRPC service and the event messages.
Ensured that old values are included in the audit events for update and delete operations.

merged


webhook: Remove unneeded RBAC permission from the recording webhook

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
Removes an RBAC line that lets the spo-webhook ClusterRole read
permissions on the seccomp objects.
Note that this doesn't change the resulting ClusterRole's permissions as
the spo-webhook ClusterRole is shared between the recording and binding
webhook and the binding webhook really does need the permissions.
Also removes one TODO.
Which issue(s) this PR fixes:
None

Does this PR have test?
N/A

Special notes for your reviewer:
N/A
Does this PR introduce a user-facing change?

NONE

Codecov Report

Merging #607 (173a7cb) into master (745a752) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #607   +/-   ##
=======================================
  Coverage   43.98%   43.98%
=======================================
  Files          26       26
  Lines        1389     1389
=======================================
  Hits          611      611
  Misses        737      737
  Partials       41       41


Deleting unnecessary include in GDScriptParser

While working on #83008, I found an unnecessary include here.

Thanks!

@akien-mga Thank you 🙌


GraphQL Subscriptions in Vulcan?

Hello,
I am new to Vulcan and while studying the examples, I noticed that the grapql data are pulled every 20 seconds or so. I was wondering if it was possible to use real-time Subscriptions instead as presented on https://www.discovermeteor.com/blog/apollo-subscriptions-meteor-users/ ?

Vulcan doesn't have any specific subscriptions-related features right now but that doesn't mean it's not possible. You can just do it like in any other Apollo app.

Has anyone experience with subscriptions in Vulcan? The reactivity is one of the key features of Meteor, and I would like to see the same in the samples provided by Vulcan.

Vulcan and Apollo subscriptions might not really be a good fit. Meteor is polling (Vulcan every 20sec but you can increase or decrease this) and not in sync with Apollo. If Meteor stays, Vulcan could introduce optimistic updates on components, or improve on dataIdFromObject. Apollo only updates its cache when it sees a change (in Vulcan's case) in _id. When you update a document, however, Apollo won't send the data because it technically doesn't recognize the change when the _id is the same. In my opinion, subscriptions have been introduced to apps that don't do polling. I know this is not a good answer.

Yeah this is a tricky question… on one hand it'd be cool to have full Apollo Subscriptions support out of the box, but it's not trivial to implement as far as I know. There's also the option of just using Meteor pub/sub, since Vulcan apps are Meteor apps after all. And that would work with basically no extra work (although of course, it's not GraphQL anymore).
So since this is a fairly complicated topic, I'll probably wait to see how important it is to people before spending too much time on it.
Of course I'd welcome a PR to add subscription support to Vulcan if it can be done relatively painlessly, but that would also mean whoever submits the PR has to keep maintaining it and contribute the appropriate documentation as well, which would involve quite a bit of work.

Thanks for the comments!
So, according to @SachaG there are two ways to achieve this kind of reactivity:

Bypassing Apollo and falling back to Meteor pub/sub.
Implementing the Apollo Subscription support

After reading a little bit in the Apollo documentation, there might be future extension for live queries. Waiting for this feature could be the third option.
Which of the three options would be the most preferred one?

You would replace polling with subscriptions. You wouldn’t both poll and do subscriptions on the same query. That said, you can still mix and match. What gets sent by the subscription is completely controlled by the server. Therefore, we wouldn’t just modify the default mutations for Vulcan to also publish the changes.
As far as when Apollo updates, if you publish for a particular _id it will update. Here is a perfect example of using subscriptions:
Client side:

Client side: https://github.com/sysgears/apollo-universal-starter-kit/blob/master/packages/client/src/modules/post/containers/Post.jsx
Server: https://github.com/sysgears/apollo-universal-starter-kit/blob/master/packages/server/src/modules/post/resolvers.js

Any news on this?

We just recently updated to Apollo v2, so technically Subscriptions are not very difficult to add. However I am not sure yet how this would integrate with the existing Vulcan API

Since this is not an area that I've looked into before (and also not something I need myself at the moment) I'll probably leave it for somebody else to take on. But I agree it'd be a cool feature to add.

Likely can use this for inspiration to leverage meteor’s DDP connection: https://github.com/Swydo/ddp-apollo
I see a few approaches:

Implement a Redis-backed GraphQL subscription mechanism into Vulcan. This stays away from Meteor in general.
Utilize observeChanges to publish reactive data changes to the client via DDP. On the client, write a withSubscription wrapper that bypasses GraphQL subscriptions. Merge data into the Apollo cache manually using the Apollo client cache functions as it is received on the client via Meteor.

Let's not use anything Meteor if we can avoid it.

I'll give it a try.

I can't see any way to accomplish this in a way that scales properly with out relying on some external PubSub broker or Meteor.
We could use some kind of Node MQTT broker like https://github.com/mcollina/mosca or use Redis.


Please add Koa2 support, this is 2016 :)

Would love to see the webtask API supporting promises or async/await in the near future :)
How about Es6 with Babel6 or even TypeScript!?

2017 and counting...

going on to '18

Hi everyone.
First, thanks for pushing on this. Second, we have rolled out support for Node 8, initially only via the CLI. With Node 8 you can use async/await in your tasks as long as you make the exported function as async. You can try it out following this post: https://tomasz.janczuk.org/2017/09/auth0-webtasks-and-node-8.html
With our new npm support you should be able to pull in whatever modules you like via package.json or being the new modules feature in the editor.


[small fix] remove unused variable

@comaniac @YuchenJin Please help to review this minor change reported by clang's warning.

It seems the GitHub CI had some connection problem...
https://github.com/apache/tvm/pull/8290/checks?check_run_id=2873944561#step:6:850


Error during setup of component homekit

Home Assistant release with the issue:
0.79.3
Last working Home Assistant release (if known):
0.78
Operating environment (Hass.io/Docker/Windows/etc.):
Docker on unRAID
Component/platform:
https://www.home-assistant.io/components/homekit/
Description of problem:
Homekit component does not load
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
  homekit:
    auto_start: false
    filter:
      include_domains:
        - light
        - switch
        - lock
        - device_tracker
        - fan
        - cover
        - binary_sensor

Traceback (if applicable):
Error during setup of component homekit
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/setup.py", line 145, in _async_setup_component
    hass, processed_config)
  File "/usr/src/app/homeassistant/components/homekit/__init__.py", line 73, in async_setup
    await hass.async_add_job(homekit.setup)
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/app/homeassistant/components/homekit/__init__.py", line 210, in setup
    port=self._port, persist_file=path)
  File "/usr/src/app/homeassistant/components/homekit/accessories.py", line 162, in __init__
    super().__init__(**kwargs)
  File "/usr/local/lib/python3.6/site-packages/pyhap/accessory_driver.py", line 163, in __init__
    self.advertiser = Zeroconf()
  File "/usr/local/lib/python3.6/site-packages/zeroconf.py", line 1734, in __init__
    socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, _value)
OSError: [Errno 105] No buffer space available

Additional information:
Just recently started failing.

May I ask how many devices your filter would include?
The suggested limit from Apple is 100, although it might also work with a few more.
Can you try using just include_entities with one device, to test if that would work?


[Android] get_Map returns NULL POINTER EXCEPTION

I'm facing this problem on Android probably because i use this lib with Google Play Services ver. 32.x instead of 29.x, but to use some other library inside my project i'm forced to do so.
I'm constantly getting: "Method 'Android.Gms.Maps.MapView.get_Map' not found." and app crashes.
Please update this fanctastic lib to be compatible with newer Google Play Services version too.

Xamarin.Forms.GoogleMaps now supports Google Play services ver 32.x.
I published Xamarin.Forms.GoogleMaps 1.6.1-beta1, please try it!

I'ts quiet strange, now my application crashes at start when executing this line of code:
Xamarin.FormsGoogleMaps.Init(this, bundle);
the error log says:
"System.TypeLoadException: Could not load type 'Xamarin.Forms.GoogleMaps.Android.MapRenderer' from assembly 'Xamarin.Forms.GoogleMaps.Android, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null'.
"

I also have this issue with 1.6, Please help us

Hi @tematim , @hieumoscow , @belandsoft ,
Can you give me sample project for reproduce #73 or #76 ?
I can not repro these issues.
I tried these steps

Create new Xamarin.Forms(XAML) solution.
Add Xamarin.Forms.GoogleMaps v1.6.0 nuget package to PCL and Android project.
Add INTERNET, ACCESS_NETWORK_STATE, ACCESS_FINE_LOCATION permissions to Android manifest.
Write Google maps apiKey to MyApp.cs (similar this)
Add Map view to XAML.
Write Xamarin.FormsGoogleMap.Init to MainActivity.cs .

I can launch this app and see Google map.
XFSample.zip

Ok, this is my sample project, note 2 main bugs:

crash at Droid application start.
not working iOS map pin onclick event delegate. (on the app interface you need to open menu' and tap on the "stop map" entry than move the map to make appear a pin)

OrariGTT.zip

Thanks @belandsoft , I'll check it. 👍

crash at Droid application start.

I reproduced it.
The cause is Xamarin.Forms-Ver2.3.3-pre2 have breaking changes.
ref - https://forums.xamarin.com/discussion/comment/222650/#Comment_222650
I can not support Xamarin.Forms 2.3.3-pre2 because this is pre-release version.
Let’s wait and see before we make a decision.

In my case I fixed it by upgrading XF from Xamarin.Forms <IP_ADDRESS> to <IP_ADDRESS>. Cheers :)

I put this on ice.
If you request again then I will reopen.

Hey, I just updated all Xamarin packages from NuGet and started getting this same exception.
Method 'Android.Gms.Maps.MapView.get_Map' not found.
Is there any way to solve it or is it a bug?


Cannot get model to work

It currently fails when trying to fit the model. The 'train_ds' seems to cause it to fail because it is a Batchdataset and not a numpty array. When I convert this to an np.array it fails because it is expecting a "dense_1_input to have 2 dimensions, but got array with shape ()". but I have no idea what this means.
`from future import absolute_import, division, print_function, unicode_literals
import tensorflow as tf
from tensorflow import keras
from keras import layers
from keras import regularizers
#maybe not needed
from keras.models import Sequential
from keras.layers import Dense, Dropout
from keras.layers import LSTM
import tensorflow_docs as tfdocs
import tensorflow_docs.modeling
import tensorflow_docs.plots
from  IPython import display
from matplotlib import pyplot as plt
import numpy as np
import pathlib
import shutil
import tempfile
logdir = pathlib.Path(tempfile.mkdtemp())/"tensorboard_logs"
shutil.rmtree(logdir, ignore_errors=True)
gz = tf.keras.utils.get_file('HIGGS2.csv.gz', 'https://archive.ics.uci.edu/ml/machine-learning-databases/00280/HIGGS.csv.gz')
FEATURES = 28
ds = tf.data.experimental.CsvDataset(gz,[float(),]*(FEATURES+1), compression_type="GZIP")
def pack_row(*row):
label = row[0]
features = tf.stack(row[1:],1)
return features, label
packed_ds = ds.batch(10000).map(pack_row).unbatch() #think this does (none, none) but not sure what this means
for features,label in packed_ds.batch(1000).take(1):
print(features[0])
plt.hist(features.numpy().flatten(), bins = 101)
print(features[0].shape)
N_VALIDATION = int(1e3)
N_TRAIN = int(1e4)
BUFFER_SIZE = int(1e4)
BATCH_SIZE = 500
STEPS_PER_EPOCH = N_TRAIN//BATCH_SIZE
validate_ds = packed_ds.take(N_VALIDATION).cache()
train_ds = packed_ds.skip(N_VALIDATION).take(N_TRAIN).cache()
print(train_ds)
validate_ds = validate_ds.batch(BATCH_SIZE)
#validate_ds = np.array(validate_ds) #model.fit expects x and y to be numpy array. Seems like you pass a list, it tried to get shape of input by reading ndim attribute of numpy array and failed
train_ds = train_ds.shuffle(BUFFER_SIZE).repeat().batch(BATCH_SIZE)
#train_ds = np.array(train_ds) #model.fit expects x and y to be numpy array. Seems like you pass a list, it tried to get shape of input by reading ndim attribute of numpy array and failed
print(train_ds)
lr_schedule = tf.keras.optimizers.schedules.InverseTimeDecay(
0.001,
decay_steps=STEPS_PER_EPOCH*1000,
decay_rate=1,
staircase=False)
def get_optimizer():
return tf.keras.optimizers.Adam(lr_schedule)
step = np.linspace(0,100000)
lr = lr_schedule(step)
plt.figure(figsize = (8,6))
plt.plot(step/STEPS_PER_EPOCH, lr)
plt.ylim([0,max(plt.ylim())])
plt.xlabel('Epoch')
_ = plt.ylabel('Learning Rate')
#plt.show(block=True)
def get_callbacks(name):
return [
tfdocs.modeling.EpochDots(),
keras.callbacks.EarlyStopping(monitor='val_binary_crossentropy', patience=200),
keras.callbacks.TensorBoard(logdir/name),
]
def compile_and_fit(model, name, optimizer=None, max_epochs=10000):
if optimizer is None:
optimizer = get_optimizer()
model.compile(optimizer=optimizer,
loss=keras.losses.BinaryCrossentropy(from_logits=True),
metrics=[
keras.losses.BinaryCrossentropy(
from_logits=True, name='binary_crossentropy'),
'accuracy'])
model.summary()
history = model.fit(
np.array(train_ds), #model.fit expects x and y to be numpy array. Seems like you pass a list, it tried to get shape of input by reading ndim attribute of numpy array and failed
steps_per_epoch = STEPS_PER_EPOCH,
epochs=max_epochs,
validation_data=validate_ds,
callbacks=get_callbacks(name),
verbose=0)
return history
size_histories = {}
plotter = tfdocs.plots.HistoryPlotter(metric = 'binary_crossentropy', smoothing_std=10)
#plotter.plot(size_histories)
#plt.ylim([0.5, 0.7])
small_model = Sequential([
# input_shape is only required here so that .summary works.
layers.Dense(16, activation='elu', input_shape=(28,)),
layers.Dense(16, activation='elu'),
layers.Dense(1)
])
size_histories['Small'] = compile_and_fit(small_model, 'sizes/Small')`
raceback (most recent call last):
File "/Users/jasonrae/.vscode/extensions/ms-python.python-2020.3.64983-dev/pythonFiles/ptvsd_launcher.py", line 48, in
main(ptvsdArgs)
File "/Users/jasonrae/.vscode/extensions/ms-python.python-2020.3.64983-dev/pythonFiles/lib/python/old_ptvsd/ptvsd/main.py", line 432, in main
run()
File "/Users/jasonrae/.vscode/extensions/ms-python.python-2020.3.64983-dev/pythonFiles/lib/python/old_ptvsd/ptvsd/main.py", line 316, in run_file
runpy.run_path(target, run_name='main')
File "/Users/jasonrae/opt/miniconda3/envs/tensorflow/lib/python3.7/runpy.py", line 263, in run_path
pkg_name=pkg_name, script_name=fname)
File "/Users/jasonrae/opt/miniconda3/envs/tensorflow/lib/python3.7/runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "/Users/jasonrae/opt/miniconda3/envs/tensorflow/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/Users/jasonrae/Documents/Python Files/Higgs1.py", line 145, in
size_histories['Small'] = compile_and_fit(small_model, 'sizes/Small')
File "/Users/jasonrae/Documents/Python Files/Higgs1.py", line 120, in compile_and_fit
verbose=0)
File "/Users/jasonrae/opt/miniconda3/envs/tensorflow/lib/python3.7/site-packages/keras/engine/training.py", line 1154, in fit
batch_size=batch_size)
File "/Users/jasonrae/opt/miniconda3/envs/tensorflow/lib/python3.7/site-packages/keras/engine/training.py", line 579, in _standardize_user_data
exception_prefix='input')
File "/Users/jasonrae/opt/miniconda3/envs/tensorflow/lib/python3.7/site-packages/keras/engine/training_utils.py", line 135, in standardize_input_data
'with shape ' + str(data_shape))
ValueError: Error when checking input: expected dense_1_input to have 2 dimensions, but got array with shape ()
Exception ignored in: <function _MemoryCacheDeleter.del at 0x13e9554d0>
Traceback (most recent call last):
File "/Users/jasonrae/opt/miniconda3/envs/tensorflow/lib/python3.7/site-packages/tensorflow_core/python/data/ops/dataset_ops.py", line 2944, in del
AttributeError: 'NoneType' object has no attribute 'device'
Exception ignored in: <function _MemoryCacheDeleter.del at 0x13e9554d0>
Traceback (most recent call last):
File "/Users/jasonrae/opt/miniconda3/envs/tensorflow/lib/python3.7/site-packages/tensorflow_core/python/data/ops/dataset_ops.py", line 2944, in del
AttributeError: 'NoneType' object has no attribute 'device'
Exception ignored in: <function _RandomSeedGeneratorDeleter.del at 0x13e9557a0>
Traceback (most recent call last):
File "/Users/jasonrae/opt/miniconda3/envs/tensorflow/lib/python3.7/site-packages/tensorflow_core/python/data/ops/dataset_ops.py", line 3009, in del
AttributeError: 'NoneType' object has no attribute 'device'

Please provide details about what platform you are using (operating system, architecture). Also include your TensorFlow version.
Please, share colab link or simple standalone code with proper indentation to reproduce the issue in our environment. It helps us in localizing the issue faster.
Please, fill  the Github new issue template. Thanks!

Hi Ravikyram. No worries. Is this what you need?
== check python ===================================================
python version: 3.7.4
python branch:
python build version: ('default', 'Aug 13 2019 15:17:50')
python compiler version: Clang 4.0.1 (tags/RELEASE_401/final)
python implementation: CPython
== check os platform ===============================================
os: Darwin
os kernel version: Darwin Kernel Version 19.3.0: Thu Jan  9 20:58:23 PST 2020; root:xnu-6153.81.5~1/RELEASE_X86_64
os release version: 19.3.0
os platform: Darwin-19.3.0-x86_64-i386-64bit
linux distribution: ('', '', '')
linux os distribution: ('', '', '')
mac version: ('10.15.3', ('', '', ''), 'x86_64')
uname: uname_result(system='Darwin', node='Jasons-MBP', release='19.3.0', version='Darwin Kernel Version 19.3.0: Thu Jan  9 20:58:23 PST 2020; root:xnu-6153.81.5~1/RELEASE_X86_64', machine='x86_64', processor='i386')
architecture: ('64bit', '')
machine: x86_64
== are we in docker =============================================
No
== compiler =====================================================
Apple clang version 11.0.0 (clang-1<IP_ADDRESS>)
Target: x86_64-apple-darwin19.3.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
== check pips ===================================================
numpy                  1.18.1
tensorflow-docs        0.0.0
== check for virtualenv =========================================
False
== tensorflow import ============================================
Traceback (most recent call last):
File "", line 1, in
ModuleNotFoundError: No module named 'tensorflow'
== env ==========================================================
LD_LIBRARY_PATH is unset
DYLD_LIBRARY_PATH is unset
== nvidia-smi ===================================================
-bash: nvidia-smi: command not found
== cuda libs  ===================================================
== tensorflow installed from info ==================
== python version  ==============================================
(major, minor, micro, releaselevel, serial)
(3, 7, 4, 'final', 0)
== bazel version  ===============================================

Here is the code in txt:
Higgs1.txt

@JSunRae
I have tried in colab with TF 2.1.0 and i am seeing IndexError  .Only change is I have replaced with tensorflow.keras in place of keras while importing.Please, find the gist here. Please, help me with reproducing the issue .Thanks!

@JSunRae
Any update on this issue please. Thanks!

still having so many issues with getting it to run sorry. Its now saying
AttributeError: 'DatasetV1Adapter' object has no attribute 'unbatch'.

@JSunRae
Will it be possible to share the colab link or simple standalone code to reproduce the issue in our environment. It helps in localizing the issue for faster resolution.Thanks!

Automatically closing due to lack of recent activity. Please update the issue when new information becomes available, and we will reopen the issue. Thanks!


Add config.yml for template-chooser

General Troubleshooting

[x] I have checked for similar issues.
[x] I have updated to the latest JDA version.
[x] I have checked the branches or the maintainers' PRs for upcoming features.

Feature Request
This is not related to JDA or its code, but rather the issue-system in place.
GitHub added an option, where you can create a config.yml inside the .github/ISSUE_TEMPLATE directory.
This file allows to add external links to other sites like Javadoc, Wikis, etc. and also has the option to disable the creation of blank issues, forcing the users to use one of the templates available.
More info:
https://help.github.com/en/github/building-a-strong-community/configuring-issue-templates-for-your-repository
Example of how it could look like:

Example Use-Case
This would be useful to point the users towards various sources of interest like the previously mentioned Javadoc or Wiki, without them needing to chose a template first.
It would also help, to get rid of issues, where the user ignored the templates and instead created a empty one, bypassing any of the templates and the checks with them.

Do you want to create a PR for this?
The suggested links look good. I'd recommend adding one for the Wiki or FAQ.
I'd also rephrase the description of the Discord option to remove the my.

The example was from the template I use on one of my projects, just to be clear xP

Based on https://github.com/DV8FromTheWorld/JDA/pull/1251, make the PR against master.
Make sure your branch is based on master as well so that you aren't committing development changes in the PR.

Alright.
So what should the final information be?
I can set the link, title and description for each entry.
Also, should blank issues be disabled so that users have to choose a template?

If we disable the blank issue, which we should, then we need to probably provide a Question template.
Something similar to what you've shown in the screenshot would be a worthwhile starting point.


Don't update haproxy config for unhealthy lb instances

https://github.com/rancher/rancher/issues/2694

LGTM.


Dialog

Hello, I am using the Dialog component, on the computer it works fine, but when I use it on the mobile, it automatically closes when I try to use a component inside it.
Help please!! Thanks

Here my code


ESP32

Any plans to tweak the code for the esp32?

Maybe this wil help: https://github.com/squix78/esp8266-weather-station/issues/71

Thanks for your comment. But I have already used a other library. https://github.com/G6EJD/ESP32-Weather-Station-using-1.3-OLED

Is there a planned port to ESP32 or not ?

There's a more material conversation in #71 -> closing this one


1.9.2 release milestone

https://github.com/spiral/roadrunner/milestone/18?closed=1

bors r+

bors r+

bors r+

bors r+


Feature request: Redirect to https for X-Forwarded-Proto not set or not https

Use case:
When running D4AWS you can use Certificate Manager to create a certificate and have D4AWS set up listeners for the protocol HTTPS that terminates SSL in ELB. There is however no way to set up an HTTP listener in the ELB, only TCP, thus for incoming requests X-Forwarded-Proto is not set. Redirecting http traffic to https can't be done since communication between ELB and proxy is always http, so normal redirection causes redirect from https to https and the flag redirectWhenHttpProto  can't be used since X-Forwarded-Proto is not set for http requests.
Suggested solution:
Create a queryParameter for redirecting to HTTPS whenever the X-Forwarded-Proto header is absent or set to anything else than https.
It would also be nice if there were some way to specify redirect code so that it can be set to 301 as for HTTPS_ONLY.

@andrh - we have our cluster's df-proxy configured to cover http-to-https scenarios (which is what it sounds like you are asking for?) using the following service labels in the docker-flow-proxy.yml file:
services:
    proxy:
        image: vfarcic/docker-flow-proxy:${TAG:-latest}
        labels:
          ...
          - com.df.redirectWhenHttpProto=true
          - com.df.httpsOnly=true
          - com.df.httpsRedirectCode=301
         ...

Referenced Here: https://proxy.dockerflow.com/usage/#http-mode-query-parameters
NOTE: We also add the "com.df.httpsOnly=true" service label to any service(s) within the cluster which produces http traffic that is destined to become an inbound request to the cluster's proxy again.

This does not exactly solve my problem. It's a bit of a corner case. All requests to the DFP are sent either as tcp if it hits port 80 on the ELB or http if it hits port 443 since they are behind the ELB. redirextWhenHttpProtoredirects when X-Forwarded-Protois set to http, but this is never set by the ELB since the traffic between ELB and DFP is tcp. HttpsOnlycreates a redirect loop since requests coming to http://domain are redirected to https://domain and then the certs are offloaded in the ELB and the request is forwarded as httpand redirected to https://domain ad nauseum
The problem arises when terminating SSL before the DFP, but without having redirect capabilites where the SSL is terminated. (I know...)

The problem is that tcp requests do not have headers. There's not much any proxy can do without headers to help it distinguish them. Can you change ELB to forward 80 as http? Like that we'd have something to work on? The only alternative that comes to my mind would be to accept two http (without s) ports on DFP. If a request comes to port 1, redirect. If it comes to port 2, accept. That way DFP would trust that external ELB did offloading and all the requests on port 2 should be accepted. Do you think that would work?

I can't make ELB forward to 80 as http since it is configured through labels in docker and there is no option for this in D4AWS. However, it can be configured to forward 443 as https, and in this case the ELB slaps on X-Forwarded-Proto: https which can be used by the proxy to discern between the two.

Can you please check whether this PR is the same as #374?

Yes, it seems to achieve the same thing. I'll try it out and then close this.

Closing the issue due to inactivity. Feel free to reopen it if the #374 does not fixes this.


fix hydration error

Thank you for contributing to the Cohere Toolkit!

[ ] PR title: "area: description"

Where "area" is whichever of interface, frontend, model, tools, backend, etc. is being modified. Use "docs: ..."  for CI changes.
Example: "deployment: add Azure model option"

[ ] PR message: Delete this entire checklist and replace with

Description: a description of the change
Issue: the issue # it fixes, if applicable
Dependencies: any dependencies required for this change

[ ] Add tests and docs: Please include testing and documentation for your changes

[ ] Lint and test: Run make lint and make run-tests

AI Description

This pull request updates the rendering order of the PublicEnvScript component in the layout.tsx files of the assistants_web and coral_web interfaces.

In both files, the PublicEnvScript component is now rendered after the LayoutProviders component, as a direct child of the enclosing body tag.
The LayoutProviders component remains unchanged and still includes the children prop.
The CookiesProvider component is now wrapped around the LayoutProviders component.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 75.10%. Comparing base (1318424) to head (1ef8d15).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #705   +/-   ##
=======================================
  Coverage   75.10%   75.10%
=======================================
  Files         261      261
  Lines       11546    11546
=======================================
  Hits         8672     8672
  Misses       2874     2874

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


AWS API InvalidClientTokenId: The security token included in the request is invalid

I am trying to bring External-DNS up with the stable helm chart. I have tried both creating and not creating the RBAC service account. In any case, it seems that the pod is not able to communicate with the K8S API.
Entered the pod and the token does look fine. In fact if I extract the token from the running pod and add it into my kubeconfig, then I am able to execute kubectl commands to see pods and services.
time="2018-05-22T20:55:09Z" level=info msg="config: {Master: KubeConfig: Sources:[service ingress] Namespace: AnnotationFilter: FQDNTemplate: CombineFQDNAndAnnotation:false Compatibility: PublishInternal:false Provider:aws GoogleProject: DomainFilter:[] ZoneIDFilter:[] AWSZoneType:public AWSAssumeRole: AzureConfigFile:/etc/kubernetes/azure.json AzureResourceGroup: CloudflareProxied:false InfobloxGridHost: InfobloxWapiPort:443 InfobloxWapiUsername:admin InfobloxWapiPassword: InfobloxWapiVersion:2.3.1 InfobloxSSLVerify:true DynCustomerName: DynUsername: DynPassword: DynMinTTLSeconds:0 InMemoryZones:[] PDNSServer:http://localhost:8081 PDNSAPIKey: Policy:upsert-only Registry:txt TXTOwnerID:default TXTPrefix: Interval:1m0s Once:false DryRun:false LogFormat:text MetricsAddress::7979 LogLevel:debug}"
time="2018-05-22T20:55:09Z" level=info msg="Connected to cluster at https://<IP_ADDRESS>:443"
time="2018-05-22T20:55:15Z" level=error msg="InvalidClientTokenId: The security token included in the request is invalid.\n\tstatus code: 403, request id: 6d439029-5e02-11e8-b984-c1a86fb37b37"
time="2018-05-22T20:56:25Z" level=error msg="InvalidClientTokenId: The security token included in the request is invalid.\n\tstatus code: 403, request id: 9749c5b3-5e02-11e8-9a05-e706f97ff7c1"
time="2018-05-22T20:57:26Z" level=error msg="InvalidClientTokenId: The security token included in the request is invalid.\n\tstatus code: 403, request id: bb533cb9-5e02-11e8-a805-33dea8fc8b7d"
time="2018-05-22T20:58:26Z" level=error msg="InvalidClientTokenId: The security token included in the request is invalid.\n\tstatus code: 403, request id: df5adf50-5e02-11e8-ae9c-9dffa2727d2c"
time="2018-05-22T20:59:31Z" level=error msg="InvalidClientTokenId: The security token included in the request is invalid.\n\tstatus code: 403, request id: 064ea3f5-5e03-11e8-9a05-e706f97ff7c1"

When looking at it from the API side, I am seeing errors with the certificate. Yet the certificate in the pod is the same certificate that is used elsewhere and in other pods.
I0522 21:33:24.241320       1 logs.go:49] http: TLS handshake error from <IP_ADDRESS>:50626: remote error: tls: bad certificate
I0522 21:33:24.269081       1 logs.go:49] http: TLS handshake error from <IP_ADDRESS>:50627: remote error: tls: bad certificate
I0522 21:33:26.414586       1 logs.go:49] http: TLS handshake error from <IP_ADDRESS>:50628: remote error: tls: bad certificate
I0522 21:33:26.441808       1 logs.go:49] http: TLS handshake error from <IP_ADDRESS>:50629: remote error: tls: bad certificate
I0522 21:33:26.469308       1 logs.go:49] http: TLS handshake error from <IP_ADDRESS>:50630: remote error: tls: bad certificate
I0522 21:33:26.497100       1 logs.go:49] http: TLS handshake error from <IP_ADDRESS>:50631: remote error: tls: bad certificate

@hickey without knowing any details, the Kubernetes server API address "Connected to cluster at https://<IP_ADDRESS>:443" looks strange as your next log lines show a different IP (<IP_ADDRESS>) --- not sure about your cluster and network setup. Is <IP_ADDRESS> the Kubernetes master IP in the overlay network or is there potentially anything in front of it? Do you use any custom authorization/webhook?
Sorry, but I don't really know how to help you --- are other services running fine for you on Kubernetes?

Sorry I jumped to a bit of a conclusion with the second logs. The timestamps also do not match up. The log lines posted were some of the last lines from the API server and I assumed that they were caused by external-dns trying to connect to the API. They are in fact from a coworker's machine and apparently he has not loaded the correct certs after the cluster got reloaded.
Yes, <IP_ADDRESS> is the cluster IP for the API server. There is no special authentication mechanisms. The overlay network is <IP_ADDRESS>/16, the services range is <IP_ADDRESS>/22 and the physical range is <IP_ADDRESS>/22. All the other services are running fine.
I am assuming that the invalid token is for the API server. How can I determine that the error messages are not for the AWS API?

@hickey actually I now realize that the error code is indeed from the AWS API, so please check your IAM role which is assigned to the node (or pod if you use kube2iam).

@hjacobs Actually I think you are in error. I have confirmed that there is absolutely no connections trying to connect to the Route53 API endpoint. I would also expect that External-DNS will also be displaying information about the services that have been identified as having the proper annotations. I receive no such messages.
Also, for several days now I have been running the log level at debug, but receive nothing other than info and above. Is there no debug logging in the code?  Here is how the container is getting started up:
        "Path": "/bin/external-dns",
        "Args": [
            "--log-level=debug",
            "--domain-filter=pipeline.smartsheet.com",
            "--policy=upsert-only",
            "--provider=aws",
            "--registry=txt",
            "--txt-owner-id=prod-pipeline",
            "--source=service",
            "--source=ingress",
            "--aws-zone-type=public"

Then how do you explain that after approx. 20 mins not a single packet was sent to the Route53 endpoint?
;; ANSWER SECTION:
route53.amazonaws.com.	30	IN	A	<IP_ADDRESS>

;; Query time: 76 msec
;; SERVER: <IP_ADDRESS>#53(<IP_ADDRESS>)
;; WHEN: Thu May 24 17:26:59 UTC 2018
;; MSG SIZE  rcvd: 87

[ec2-user@ip-10-67-15-23 ~]$ sudo tcpdump host <IP_ADDRESS>
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes

^C
0 packets captured
0 packets received by filter
0 packets dropped by kernel

Again, it would be great if there was actual debug logging that can be extracted from the running application. From what I can tell there are not a debug logging added to the code. Is that true? How is one supposed to debug External-DNS?

@hickey I agree that debug logging could be better, we use the AWS Go SDK which has some LogLevel config which we are never setting.
Did you check your AWS IAM config? Could you provide some details of your environment, e.g. whether External DNS runs on AWS and whether the node has an AWS IAM Instance Profile & IAM Role assigned?

Here is the pertinent entries in the IAM policy:
        {
            "Effect": "Allow",
            "Action": [
                "route53:ChangeResourceRecordSets",
                "route53:GetHostedZone"
            ],
            "Resource": [
                "arn:aws:route53:::hostedzone/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "route53:GetChange"
            ],
            "Resource": [
                "arn:aws:route53:::change/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "route53:ListResourceRecordSets",
                "route53:ListHostedZones"
            ],
            "Resource": [
                "*"
            ]
        },

Yes, the whole cluster runs in AWS with External-DNS running on one of the Kubernetes nodes. All of the Kubernetes nodes have the same IAM policy applied  which contains the above snippet.

Just for fun, I started up External-DNS in another cluster (v. 1.9.6) using the inmemory provider and got results much more consistent with what I would expect:
0:0 ᐅ kubectl -n kube-system logs intent-mule-external-dns-6c9fccd6bc-s2hdp -f                                                                                [18:33]
time="2018-05-25T01:33:55Z" level=info msg="config: {Master: KubeConfig: Sources:[service ingress] Namespace: AnnotationFilter: FQDNTemplate: CombineFQDNAndAnnotation:false Compatibility: PublishInternal:false Provider:inmemory GoogleProject: DomainFilter:[pipeline.smartsheet.com] ZoneIDFilter:[] AWSZoneType:public AWSAssumeRole: AzureConfigFile:/etc/kubernetes/azure.json AzureResourceGroup: CloudflareProxied:false InfobloxGridHost: InfobloxWapiPort:443 InfobloxWapiUsername:admin InfobloxWapiPassword: InfobloxWapiVersion:2.3.1 InfobloxSSLVerify:true DynCustomerName: DynUsername: DynPassword: DynMinTTLSeconds:0 InMemoryZones:[] PDNSServer:http://localhost:8081 PDNSAPIKey: Policy:upsert-only Registry:txt TXTOwnerID:prod-pipeline TXTPrefix: Interval:1m0s Once:false DryRun:false LogFormat:text MetricsAddress::7979 LogLevel:debug}"
time="2018-05-25T01:33:55Z" level=info msg="Connected to cluster at https://<IP_ADDRESS>:443"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service default/conftest"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service default/kubernetes"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service kube-system/calico-etcd"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service kube-system/intent-mule-external-dns"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service kube-system/kibana-logging-cluster"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service kube-system/kube-dns"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service kube-system/kubelet"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service kube-system/tiller-deploy"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service kube-system/wintering-blackbird-kubernetes-dashboard"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service rook/rook-ceph-mgr"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service rook/rook-ceph-mon0"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service rook/rook-ceph-mon2"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from service rook/rook-ceph-mon3"
time="2018-05-25T01:33:55Z" level=debug msg="No endpoints could be generated from ingress kube-system/kibana-logging-cluster"

I then re-deployed External-DNS with the AWS provider (even though it was an on prem cluster) and got similar results of an invalid token. So given this latest data, I retract my thoughts that this is a problem with communicating with the Kubernetes API server.
I also expanded my filter for the tcpdump to only look at packets going to port 443 (feasible since the cluster in question has virtually no SSL traffic running across it) and found that there are packets going to IPs similar to the IP for route53.amazonaws.com but not the same IP that is registered in DNS. So that would also tend to confirm that the Route53 API is being contacted, but how the IP is being determined is beyond me at the moment.
I will try to spend a bit of time tomorrow digging into the AWS provider code to see what can be done to provide better logging (and debugging) into the code. Maybe from that it will become more apparent why the failures are being seen.

@hickey thanks, let me know what you find out --- it might help others having similar troubles :smile:

@hickey could you resolve the issue?

I have put some initial additional logging into the AWS provider code and can not find how or where the settings from the chart values.yaml file get applied to the provider--specifically the AWS key and secret key. From what I can tell, these values are never used by the code.
I have not been able to confirm this yet, but if I start external-dns without specifying the keys in the values.yaml file it seems that everything works as expected. I have an environment that I need to rebuild and will try an experiment by specifying the keys again and see if I have external-dns fail to create Route53 entries again.
If I am successful in the experiment and can show that specifying the keys do prevent external-dns from operating (which I don't understand if they are really not being used by the code), then I would recommend that the entries be removed from the helm chart until code is written to handle them properly.
Hopefully more results soon to confirm or deny my initial findings.

Hi @hickey, I had faced the same error as you. But later I figured out, I made the mistake when putting the AWS credential, that’s reason for InvalidTokenError
The values in Helm is in reversed order. secretKey appear first (but I put the ACCESS KEY ID instead)
I think you can check if you face the same issue.


Tags are being injected into Wordpress?

Quick summary
Not sure where it is coming from but i have a sneaky suspicion new tags are being injected into my blog through activitiypub (or @akirk's friends).
Im encoutering it on two instances.
Steps to reproduce
Check your https://blog.com/wp-admin/edit-tags.php
What you expected to happen
No unknown tags
What actually happened
Many unknown tags, not linked to posts
Impact
One
Available workarounds?
No but the platform is still usable
Logs or notes
No response

Can you give us some examples? Are the tags look like color codes for example?

Sorry about this, I checked and I can confirm that it's the Friends plugin. Resp. WordPress seems automatically create tags if a hashtag is included in the post, on the wp-admin tag page it just doesn't display it because it only displays post_type post there but I checked and the friend posts are tagged with it.
Let's continue in https://github.com/akirk/friends/issues/418.

Oh, it's the ActivityPub plugin after all, not Friends:
https://github.com/Automattic/wordpress-activitypub/blob/improve-direct-message-targeting/includes/class-hashtag.php#L65

But it adds them to the post!

Hi,
I noticed this issue yesterday as well when I shared a podcast episode. The link I included had the title: “Episode #123 - Lorem ipsum…”. Upon publishing, the system automatically created the tag #123.
I also remembered encountering a similar issue with color codes in the past.
To address this, I edited the post and manually removed the #123 tag. Then, I went to Admin > Posts > Tags and deleted the tag. Additionally, I navigated to Admin > Settings > ActivityPub > Settings and unchecked the option: “Add hashtags in the content as native tags and replace the #tag with the tag link.”
Since tagging on weblogs works differently (Background:  https://fewertags.com/research/ )than on social media, could this unchecking be the solution?
Thanks!

FWIW in the next version of Friends you'll be able to view the tagged posts on the frontend: https://github.com/akirk/friends/pull/419

This was a bug, but should be fixed now! We do no longer parse hashtags in HTML elements, like links!
@nickbohle can you verify that this does no longer happen?

This was a bug, but should be fixed now! We do no longer parse hashtags in HTML elements, like links!
@nickbohle can you verify that this does no longer happen?

@pfefferle
Yes, I can confirm that. I updated an existing post and published a new one. (Version 4.5.1)

You can confirm that it no longer happens?

You can confirm that it no longer happens?

Yes, I can confirm that it no longer happens.

So I will close this for now. @nickbohle please re-open if you find some more cases...


Decoder: don't discriminate on UR type

Allow any UR type to be decoded. Complementary to https://github.com/dspicher/ur-rs/pull/63.

Codecov Report

Merging #70 (2630ce7) into master (840b37b) will decrease coverage by 0.16%.
The diff coverage is 80.00%.

@@            Coverage Diff             @@
##           master      #70      +/-   ##
==========================================
- Coverage   94.55%   94.38%   -0.17%
==========================================
  Files           5        5
  Lines         679      677       -2
==========================================
- Hits          642      639       -3
- Misses         37       38       +1

Impacted Files
Coverage Δ

src/ur.rs
97.64% <80.00%> (-1.21%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 840b37b...2630ce7. Read the comment docs.

Thanks for the PR! I think now the decoding is a bit too lenient because it doesn't enforce a type to be present. But I can do this in a follow-up PR, LGTM otherwise.


[R][CI] Update OpenSUSE to 15.5 from 15.3

Describe the enhancement requested
Because OpenSUSE 15.3 reached EOL and rstudio/r-builds dropped support for it: https://github.com/rstudio/r-builds/pull/177
Component(s)
Continuous Integration, R

Issue resolved by pull request 41627
https://github.com/apache/arrow/pull/41627


Update documentation once v1.0 is released

This issue will contain a list of all changes we need to make once v1.0 has been released:

[ ] Replace "upcoming v1.0 release" per https://github.com/kubernetes-sigs/gateway-api/pull/2446#discussion_r1344859308.
[ ] Update Gateway, GatewayClass, and HTTPRoute examples to use "v1" instead of "v1beta1" (most are in examples directory, but some incomplete examples are embedded directly in site-src markdown)
[ ] Update getting started guide to use v1.0 instead of v0.8.1 (https://gateway-api.sigs.k8s.io/guides/)
[ ] Update readme to use v1.0 instead of v0.8.1

Would also be nice to make https://gateway-api.sigs.k8s.io/ visually match https://k8s.io/docs/ more closely.
Want changes to  https://k8s.io/docs/ to make that easier? It's OK to ask.

Would also be nice to make https://gateway-api.sigs.k8s.io/ visually match https://k8s.io/docs/ more closely.

That would be great! Any tips for how we can do that?

Created https://github.com/kubernetes-sigs/gateway-api/issues/2718 to cover last remaining open item here. Closing this one out.


*: format and lint code

Keep consistent code style with latest stable rust.

@BusyJay from my own local experimentation I think that .travis.yml needs to change for clippy as well: instead of passing -D clippy it should be -D clippy::all.
Without that change clippy gives an ominous warning:
    Checking fail v0.2.1 (/home/brian/pingcap/fail-rs)
warning: lint name `clippy` is deprecated and does not have an effect anymore. Use: clippy::all
  |
  = note: requested on the command line with `-D clippy`

    Finished dev [unoptimized + debuginfo] target(s) in 0.65s

So I think without that change, clippy is not doing the same aggressive checks it was previously. Can you also make that change as part of this PR?

Done, PTAL.


How to get all contacts that belong to specific a customer via API?

It's no documented in the API. Also, I didn't found any properties on the contact object that link it to a customer by ID. I assume it's possible to do it with $filter but I couldn't find how

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: ff530cbd-8a0c-618a-d5ac-435b1303163a
Version Independent ID: d9a816af-59be-d7ec-d5db-016d127a4ffd
Content: API(V2.0) for Dynamics 365 Business Central - Dynamics NAV
Content Source: dynamics-nav/api-reference/v2.0/index.md
Service: dynamics365-business-central
GitHub Login: @SusanneWindfeldPedersen
Microsoft Alias: solsen

stuck on this also over here!

ahh, we need to query the ContactsInformation object on the Customer first. Gives us an array of contacts ;)


Fix typo in ms_queue

Thanks!

@alexcrichton You're a hero in the Rust community; I think that over 50% of the code for my project's dependencies are in some way written or contributed to by you!


Issue with accessing a Power Virtual Agent Property using Composer

Describe the bug
I want to set a Power Virtual Agent property in Composer. I use the "set a property" composer function to set the PVA property "powervirtualagent.buergerbueroContact"

The mentioned property is used in a specific PVA flow initially.

The PVA throws the error "Cannot convert variable new_variable"
A problem occurred while running the Composer dialog. Cannot convert variable new_variable_f0ed4e95838e44bfa65eb28d87f2238e_eb6e3060e7d94d9a9f964566d67cd344 to a namedEntity
Do I do anything wrong?
Thank you
Version
2.0.0
Browser

[X] Edge

OS

[X] Windows 10

To Reproduce
see bug description above
Expected behavior
The property value is set in Composer, so I can skip several questions in the PVA topic flow to output a specific information.

@tamasschmolcz the PVA screenshot below, is that your 'Burgerburo' flow? Could it be that you are using this property within Composer, before it is created in Power Virtual Agents?
If that is the case, I am not sure if this is a supported scenario. https://docs.microsoft.com/en-us/power-virtual-agents/advanced-bot-framework-composer#use-and-update-power-virtual-agents-variables-in-bot-framework-composer
Someone from the team can hopefully respond on the supported scenarios.

@iMicknl Yes I think that could be issue. That would be a pitty, if the flow needs to executed before.
Do you know, if I also can access Composer properties via PVA flow?

There appears to be a bug on the PVA side, and I have filed an issue with them.
I will follow up on this thread with any updates.

@tonyanziano Thanks! could also clarify my question, whether there is a way to access Composer properties from a PVA flow? And if not, do exist plans to allow this in the future?

@tonyanziano any news on this?

I just pinged the PVA team and they are still investigating.

@tonyanziano any news on this?

@tamasschmolcz It turns out that this is currently an unsupported scenario in PVA and is by design, because when using a mutli-choice prompt in PVA it actually stores the value as a ClosedListType variable in the back-end. In Composer, when you are trying to set the property, you are using a string, which is a type mismatch and that is what causes the error.
It might eventually be supported in the future, but for now it is by design.


feat: update command line options for Terasology

Use posix-style command line option syntax for new (picocli-enabled) versions of Terasology.
Fixes #589.
How to test
The only Terasology command line option we pass is the Terasology home directory, so start games and make sure they're using the data directory specified in the Launcher settings.
Outstanding before merging

[ ] handle the mac-specific noSplash
[ ] detect Terasology version and behave appropriately

oh, there is now another option we use, on Mac only: https://github.com/MovingBlocks/TerasologyLauncher/blob/7bfe19732cdb5aa3daa6ce5cea8f564220c73717/src/main/java/org/terasology/launcher/ui/ApplicationController.java#L354 added by #613
I don't think the ApplicationController.startGameAction callback is the right place for this logic. I think what I'd propose is passing the GameRelease through instead of additional*Parameters that are not contained in Settings.
At the moment, GameStarter is easy to keep decoupled from things because its inputs are relatively simple data types.
On the one hand, GameStarter sounds like a good place to put the "figure out which command line arguments to use" logic.
On the other hand, constructing a GameRelease looks like it takes a modestly sized tree of nested objects, which I fear is a ticket to writing-unit-tests-gets-excessively-verbose town.
on the other other hand, the logic that determines isLwjgl3 isn't in GameRelease or ReleaseMetadata either, it's in a ReleaseRepository, which I think is questionable, as I'd expect this to have to be consistent across different Repositories?

 picocli / POSIX-style command line

on the other other hand, the logic that determines isLwjgl3 isn't in GameRelease or ReleaseMetadata either, it's in a ReleaseRepository, which I think is questionable, as I'd expect this to have to be consistent across different Repositories?

The problem described in https://github.com/MovingBlocks/TerasologyLauncher/pull/646#discussion_r680189936 is the main reason why I've put some logic into the ReleaseRepository as at that point we still know the "shape" of the version info...
As we don't have a comparator for GameIdentifier (or GameRelease) to determine "the version" after the fact, we bake some property right into the ReleaseMetadata. We could do the same for isPosix as we do for isLwjgl3.
I think the dumb pass-through proxy methods in GameRelease are the result of me attending some workshop on software best-practices and design patterns and then trying to apply (even the controversial parts) in real-world software :see_no_evil:
I can totally understand your dislike for this solution now that I look at it again.

On the other hand, constructing a GameRelease looks like it takes a modestly sized tree of nested objects, which I fear is a ticket to writing-unit-tests-gets-excessively-verbose town.

I tried to create a flexible yet simple model for what we are doing in the launcher. I tried to capture my intent in the respective Javadoc descriptions of the classes.
I'd like to keep the GameIdentifier a simple, immutable object with the goal to uniquely identify one of our game releases, ideally with support to compare versions to know how to sort them when displaying in the launcher. If we were only talking about a single profile this might just be a SemVer, if we were going to also launcher DestSol or different distributions of Terasology with the launcher this class would become more complicated.
The abstraction of the GameRelease contains the "physical representation" of a game identifier, e.g., where to get the artifact from, as well as other "release metadata". As described in https://github.com/MovingBlocks/TerasologyLauncher/pull/646#issuecomment-890128417 I'm not really happy with the metadata class, but on the other hand I didn't want to just dump all that stuff into GameRelease itself.
Feedback and suggestions are welcome!

I was complaining before I knew that GameIdentifier's non-string parameters are enums. It was still a lot to build, but it doesn't go as deep as I had feared.
and I expect the convenience thing could be addressed by some companion construction functions.

For use cases like this where it's after installation, we can also get information from the installation itself instead of the repository.

During playtest today, I successfully installed and ran stable release 5.1.1.
After restarting launcher, it did correctly use last-played-version, but it thought it needed to re-install:

Logs indicate that wasn't just a cosmetic thing, it did unzip the distro again when I hit the button.
I have not confirmed whether this bug is specific to this PR or not, but it certainly might be, given how much I messed with scanInstallations between this and #647.

Shucks. I'm pretty sure that bug was introduced by #647. But that means this PR won't make it worse.

Shucks. I'm pretty sure that bug was introduced by #647. But that means this PR won't make it worse.


Re-init tools when init-tools.cmd is updated

Recent Roslyn compiler version upgrades cause build breaks on existing repos because init-tools will not run if the semaphore file is present.
Emit the most recent git commit hash of init-tools.cmd to the semaphore and compare the two whenever init-tools.cmd is run. This will catch updates and re-init the tools automatically.
I can implement a similar change to init-tools.sh if folks don't see a problem with this direction. These build tools are nearing end of life as I understand - it would be nice to also include updates to the CLI and build tools version text files in this logic, too, but this fixes the immediate breaks we've been seeing.

@trylek FYI. I don't think this should cause you extra downloading since build-tools.cmd is updated infrequently.

These build tools are nearing end of life as I understand

Yep. The low-tech way to get by is to add one more underscore to BUILD_TOOLS_SEMAPHORE.
The reason why it is breaking is because of new Roslyn download was added as a hack that side-stepped the mechanism used by the script. Fixing #7032 / #7084 would fix this problem too.


Archimedes' screw

The Archimedes screw, also known as the Archimedean screw, hydrodynamic screw, water screw or Egyptian screw, is one of the earliest hydraulic machines. Using Archimedes screws as water pumps dates back many centuries. Wikipedia


Fix test

Is this ready to be karamelized now?

Yes, but like I said if we want to test multiple nn we have to fix the problem with the ip.
One way to solve that can be to configure an iptable, I am looking in to that. Then I will have to test it and may be add some configuration for multiple vm.


start unit test with mocha/sinon/chai

Just set up a basic unit test to start.
Initial unit test imports core with native bindings, makes a window, and parses a document.

Alright, added it to Appveyor and Travis. When I had the script at npm run test, the test suites would always try to run it post-install...so I named them npm run test:ci and npm run test:watch.
I'm not sure the best way to set up Travis. I just added the test run in the OS X build since it seemed to set everything up.

✅

https://github.com/webmixedreality/exokit/commit/e4b83acbee7b4a9340641a0f433c7b13fbdacc9f passed.

https://travis-ci.org/webmixedreality/exokit/builds/399863902
https://ci.appveyor.com/project/modulesio/exokit/build/0.0.1921

✔