High cpu if polling is being used in multiple devices

Hi,
if you create 10 devices (contactSwitches for example), and use polling with 5 or 10 seconds it will cause 100% cpu, because the get state needs to run node to be able to read the txt files in fs.
Would be possible to move the get to don't use one additional instance of node ? Such as integrating the Get command directly in main JS or do you have any other recommendation to avoid the high cpu ? Maybe adding an option to config like (dontusenodeforGet: yes/no) would fix this issue.
I already tested the same scenario using the Get integrated into index.js and no issues, CPU 0%
btw: congrats for your solution it is really good for users using homebridge.
Thanks

Hi,
Interesting delema. Polling is only if you want to have HomeKit to be
always up to date with the switches state; Otherwise the apps query the
device when you open them. So, polling could be removed or adjusted to a
larger interval, decreasing CPU.
Unfortunately, HomeKit is based an a single characteristic get/Set
methodology.  No other plugin does what you suggest, though it is not a bad
idea.  Let me sleep on it.
TTFN,
John
On Sat, Dec 26, 2020 at 8:05 PM gui28347<EMAIL_ADDRESS>wrote:

Hi,
if you create 10 devices (contactSwitches for example), and use polling
with 5 or 10 seconds it will cause 100% cpu, because the get state needs to
run node to be able to read the txt files in fs.
Would be possible to move the get to don't use one additional instance of
node ? Such as integrating the Get command directly in main JS or do you
have any other recommendation to avoid the high cpu ?
btw: congrats for your solution it is really good for users using
homebridge.
Thanks
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/72, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX2I3S663B742XLJIB3SW2B7BANCNFSM4VKLXMXQ
.

Yep, mainly if you open two iphones at same time, (or the web interface) it start opening multiple instances of node to execute the getstates, and even with timeout of 30 seconds, multiple instances got timeout error message. I'm only with 10 devices, think about if you have 50 devices  your linux which is kind of crazy (# of devices X polling interval X #of devices using HomeKit), and number of reads ("getState") will be always higher than setStates anyway... so adding an if statement to your driver makes it even better, because the idea of keeping the txt files as cache is amazing, when the system is rebooted or resume the plugin can recover last status using the txt files.
So in summary the suggestion is:
Having a parameter in config:   dontusenodeforGet (true/false)
If parameter is set to false, exactly same code you have today. (no code changes)
If parameter is set to true is just execute readData function you have in State.js (migrate it to index.js) . This way the performance will be much better. Even when not using 10 devices, every time when I open the phone I saw the devices "Updating" , now using the getState without creating more instances of node it is super fast, I don't see the message "Updating" in devices...
I think this can help other users using your amazing plugin :-)
Thanks
Gui

Hi,
I did think about your predicament last night.  I will have to think
again about your new idea.  What I did think of last night was changing
state_cmd to something like a batch_cmd, so that one get could return
multiple characteristics when polling. For example:
Get    ...
or maybe:
Get  AllCharacteristics
Cmd4 would then have to parse the  One response for each value, sending
that to Homebridge as if multiple Gets were done.
I'm still thinking,
TTFN,
John
On Sun, Dec 27, 2020 at 12:22 AM gui28347<EMAIL_ADDRESS>wrote:

Yep, mainly if you open two iphones at same time, (or the web interface)
it start opening multiple instances of node to execute the getstates, and
even with timeout of 30 seconds, multiple instances got timeout error
message. I'm only with 10 devices, think about if you have 50 devices your
linux which is kind of crazy (# of devices X polling interval X #of devices
using HomeKit), and number of reads ("getState") will be always higher than
setStates anyway... so adding an if statement to your driver makes it even
better, because the idea of keeping the txt files as cache is amazing, when
the system is rebooted or resume the plugin can recover last status using
the txt files.
So in summary the suggestion is:
Having a parameter in config: dontusenodeforGet (true/false)
If parameter is set to false, exactly same code you have today. (no code
changes)
If parameter is set to true is just execute readData function you have in
State.js (migrate it to index.js) . This way the performance will be much
better. Even when not using 10 devices, every time when I open the phone I
saw the devices "Updating" , now using the getState without creating more
instances of node it is super fast, I don't see the message "Updating" in
devices...
I think this can help other users using your amazing plugin :-)
Thanks
Gui
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/72#issuecomment-751427884,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX5B3JPDROIGOCWFNVTSW3AARANCNFSM4VKLXMXQ
.

Yep, doing in batches will help a lot because it will reduce # of child processes running.
But do you see any benefit of creating the child processes? If in your index.js you can simple read  without creating the child process, what is the benefit of keep the State.js being called rather than directly read files ?
I believe for performance reasons if you can avoid creating child process at all will be better. In some scenarios I know that is not possible...
Is the state.js doing any other action, rather than just reading values in text files and sending it back to caller ?

Hi,
You are correct. It would work in your case. If the state was always

available from a file, the file could just be read.  That would mean that
you as a user of CMD4 would have to leave the state in a file for cmd4 to
read.  There would still have to be a process that you would create to have
the state put in the file. The difference is that having CMD4 do the query
would mean that the state is what it is when CMD4 asks for it. Wherever the
process is, it is still a process that has to run.
Interesting thought though.  It could certainly be easily done.  Another
option perhaps.  Do you want to spin off your own version?
ttfn,
John
On Sun, Dec 27, 2020 at 8:49 PM gui28347<EMAIL_ADDRESS>wrote:

Yep, doing in batches will help a lot because it will reduce # of child
processes running.
But do you see any benefit of creating the child processes? If in your
index.js you can simple read without creating the child process, what is
the benefit of keep the State.js being called rather than directly read
files ?
I believe for performance reasons if you can avoid creating child process
at all will be better. In some scenarios I know that is not possible...
Is the state.js doing any other action, rather than just reading values in
text files and sending it back to caller ?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/72#issuecomment-751546024,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX6K4OWQOUNUEQ7UDGTSW7P2BANCNFSM4VKLXMXQ
.

I was thinking about it. Since this change will also benefit other users that want to create multiple sensors
I think would be great if you can add to your code, mainly if you will apply for home bridge verified, it will bring more visibility to your plugin.
No rush on changing it,  just add to it to your backlog of feature requests.

Hi,
Homebridge verified requires a config.schéma that would take months to
create for this plugin.  It will not happen any time soon.  There is
already a feature request for this. Sorry.
TTFN,
John
On Mon, Dec 28, 2020 at 5:17 PM gui28347<EMAIL_ADDRESS>wrote:

I was thinking about it. Since this change will also benefit other users
that want to create multiple sensors
I think would be great if you can add to your code, mainly if you will
apply for home bridge verified, it will bring more visibility to your
plugin.
No rush on changing it, just add to it to your backlog of feature requests.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/72#issuecomment-751881227,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX2U5YWUH3GV52D4PDLSXD7Y7ANCNFSM4VKLXMXQ
.

After several tests, I found the best performance scenario without using files at all.

Use a in memory dictionary to save the values. This way you have have ton of accessories and even with 1 second polling in all of them, it will be using memory only.

To be able to interact with in memory dictionary I believe using an HTTP listening port to receive commands from Cmd4 Scripts to read/write variables will be the best.

Using this approach this solution scale to hundreds of accessories and don't have the limitations of using polling , causing either high CPU (because the multiple nodejs instances) or potential high IO if read/write functions are integrated in the main code.
Using dictionary it will always keep last status in memory, so even using 1 second refresh will cause zero issues.
If you like the idea, I can also help implement it.

Hi,
Sorry for not getting back to you.  My health is not the greatest, but I
have been working hard on Cmd4.  I have a dev branch that I have a 3.0
version in progress.  Lots of stuff there to implement CMD4 as Homebridge
suggests. It is close to release, except that restarts are an issue because
I have yet to get the code working  to  re-read saved config changes ( like
name for instance ) and I only did a first pass on the documentation.
I do like your idea and have something in mind along the same lines.  Since
Cmd4 is highly in flux, please wait before attempting your own.  I can give
you a heads up when b_IOS14_dev branch is ready.
TTFN,
John
On Tue, Dec 29, 2020 at 8:33 PM gui28347<EMAIL_ADDRESS>wrote:

After several tests, I found the best performance scenario without using
files at all.

Use a in memory dictionary to save the values. This way you have have
ton of accessories and even with 1 second polling in all of them, it will
be using memory only.
2.
To be able to interact with in memory dictionary I believe using an
HTTP listening port to receive commands from Cmd4 Scripts to read/write
variables will be the best.
Using this approach this solution scale to hundreds of accessories and
don't have the limitations of using polling , causing either high CPU
(because the multiple nodejs instances) or potential high IO if read/write
functions are integrated in the main code.
Using dictionary it will always keep last status in memory, so even using
1 second refresh will cause zero issues.
If you like the idea, I can also help implement it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/72#issuecomment-752296767,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX3WENYQXY5HATPS3PTSXJ7QJANCNFSM4VKLXMXQ
.

Hi,
I just submitted into dev the solution.  Actually there are three
possibilities.

"fetch": "Always",    - As before
"fetch": "Cached", - Only fetch the cached valus.  Polling would have to
update those values.
"fetch": "Polled", - All characters are fetched from Cache, except those
that are set for Polling, which are done as they were before.

I like this solution because it's backward compatible and I don't muck with
getValue at runtime. During init a new bind for "get" from HomeKit is
created to retrieve the cached value directly.
This 3.0 update in my b_IOS14Dev branch has a lot of stuff. It all passes
unit testing and some limited regression testing. Hopefully it will be
available soon.
TTFN,
John Talbot
On Thu, Dec 31, 2020 at 4:31 AM John Talbot<EMAIL_ADDRESS>wrote:

Hi,
Sorry for not getting back to you.  My health is not the greatest, but I
have been working hard on Cmd4.  I have a dev branch that I have a 3.0
version in progress.  Lots of stuff there to implement CMD4 as Homebridge
suggests. It is close to release, except that restarts are an issue because
I have yet to get the code working  to  re-read saved config changes ( like
name for instance ) and I only did a first pass on the documentation.
I do like your idea and have something in mind along the same lines.
Since Cmd4 is highly in flux, please wait before attempting your own.  I
can give you a heads up when b_IOS14_dev branch is ready.
TTFN,
John
On Tue, Dec 29, 2020 at 8:33 PM gui28347<EMAIL_ADDRESS>wrote:

After several tests, I found the best performance scenario without using
files at all.

Use a in memory dictionary to save the values. This way you have have
ton of accessories and even with 1 second polling in all of them, it will
be using memory only.
2.
To be able to interact with in memory dictionary I believe using an
HTTP listening port to receive commands from Cmd4 Scripts to read/write
variables will be the best.
Using this approach this solution scale to hundreds of accessories and
don't have the limitations of using polling , causing either high CPU
(because the multiple nodejs instances) or potential high IO if read/write
functions are integrated in the main code.
Using dictionary it will always keep last status in memory, so even using
1 second refresh will cause zero issues.
If you like the idea, I can also help implement it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/72#issuecomment-752296767,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX3WENYQXY5HATPS3PTSXJ7QJANCNFSM4VKLXMXQ
.

Hi,
I just submitted into dev the solution.  Actually there are three
possibilities.

"fetch": "Always",    - As before
"fetch": "Cached", - Only fetch the cached valus.  Polling would have to
update those values.
"fetch": "Polled", - All characters are fetched from Cache, except those
that are set for Polling, which are done as they were before.

I like this solution because it's backward compatible and I don't muck with
getValue at runtime. During init a new bind for "get" from HomeKit is
created to retrieve the cached value directly.
This 3.0 update in my b_IOS14Dev branch has a lot of stuff. It all passes
unit testing and some limited regression testing. Hopefully it will be
available soon.
TTFN,
John Talbot
On Thu, Dec 31, 2020 at 4:31 AM John Talbot<EMAIL_ADDRESS>wrote:

Hi,
Sorry for not getting back to you.  My health is not the greatest, but I
have been working hard on Cmd4.  I have a dev branch that I have a 3.0
version in progress.  Lots of stuff there to implement CMD4 as Homebridge
suggests. It is close to release, except that restarts are an issue because
I have yet to get the code working  to  re-read saved config changes ( like
name for instance ) and I only did a first pass on the documentation.
I do like your idea and have something in mind along the same lines.
Since Cmd4 is highly in flux, please wait before attempting your own.  I
can give you a heads up when b_IOS14_dev branch is ready.
TTFN,
John
On Tue, Dec 29, 2020 at 8:33 PM gui28347<EMAIL_ADDRESS>wrote:

After several tests, I found the best performance scenario without using
files at all.

Use a in memory dictionary to save the values. This way you have have
ton of accessories and even with 1 second polling in all of them, it will
be using memory only.
2.
To be able to interact with in memory dictionary I believe using an
HTTP listening port to receive commands from Cmd4 Scripts to read/write
variables will be the best.
Using this approach this solution scale to hundreds of accessories and
don't have the limitations of using polling , causing either high CPU
(because the multiple nodejs instances) or potential high IO if read/write
functions are integrated in the main code.
Using dictionary it will always keep last status in memory, so even using
1 second refresh will cause zero issues.
If you like the idea, I can also help implement it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/72#issuecomment-752296767,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX3WENYQXY5HATPS3PTSXJ7QJANCNFSM4VKLXMXQ
.

Hi,
I just merged Cmd4 Version 3.0.0 into GitHub, putting that horrendous label on it too.
it solves the TV icon with the caveate that you add the option of: publishExternally: true as well as the high CPU occupancy with the fetch options, I previously mentioned and now have fully documented.  If you read the documentation, you will understand why I decided on the label..
In many ways it does not deserve the label because the state_cmd does not change and neither do the libs.  Cmd4, looks almost exactly like the Homebridge template plugin they provide and with additional Unit testing and now linted as well, I hope you give it a try as I soak it a few more days before submitting it to npm.
thanks,
John Talbot

Hi,
I just merged Cmd4 Version 3.0.0 into GitHub, putting that horrendous label on it too.
it solves the TV icon with the caveate that you add the option of: publishExternally: true as well as the high CPU occupancy with the fetch options, I previously mentioned and now have fully documented.  If you read the documentation, you will understand why I decided on the label..
In many ways it does not deserve the label because the state_cmd does not change and neither do the libs.  Cmd4, looks almost exactly like the Homebridge template plugin they provide and with additional Unit testing and now linted as well, I hope you give it a try as I soak it a few more days before submitting it to npm.
thanks,
John Talbot

Just a note on this one. I shall be releasing 3.3 soon. Polling will call updateValue as it is supposed to for background changes meaning polling will be totally indépendant from fetch.  You will then be able to have everything fetch cached and only have polling update the values, if you so wish.
take care,
John Talbot


Devmode installer breaks in the middle of installation

Describe the bug
When using the devmode installer, midway through installation, there will be an error,  and the program will end.
To Reproduce
Steps to reproduce the behavior:

Put Chromebook into dev mode and connect to wifi
Press CTRL+ALT+ -> to open terminal
Log in as root and run the installer command
Select any version
Press any key and enter
Wait a while depending on the version selected
See error

Expected behavior
Murkmod should install correctly without error
Screenshots
One of these errors will show up:

System (please complete the following information):

Board [Dedede]
Version [v117]
Installation method used [devmode installer]

Additional context
-this could be related to the recent update that fixed being unable to find the version selected.
-I tested this with all versions but v118 (chrome100 does not have v118 for my board).

Okay, this looks like 2 completely seperate issues - in the first one, it's got to be an issue with the new get_largest_cros_blockdev routine, but I'm frankly at a loss for the second error - I can't read that fully, nor does it seem like a valid error. Did you reboot between the two runs of the installer? If not, that's probably the cause of the second one.

Although this issue is closed, feel free to reopen it if this patch doesn't fix the issue.

I didn't reboot in between runs, so that is likely the cause of the second error.


unable of click at first tab after click at other tab

the first tab is not clickable anymore after i clicked at other tabs. tested that at my enviroment.

Can you put together a plunk demonstrating the issue? In my plunks showing the plugin working, the first tab is still clickable after clicking other tabs.

hi, after a few minutes i notice that is not a bug of this plugin, i made a mistake, calling tabs with js
$('.nav-tabs a[href="#tab-1"]').tab('show');

but i already set the data attribute on it, so the js was not necessary, i removed it and worked fine. sorry for that and i'm closing it.

Excellent! Glad it's working for you now.


update docs to have same structure, call out which directory to be in

per #112

@jkuester  - docs only changes to be more explicit about where you should be.  Add parity to enumeration in instructions. Learn how to spell "container" ;)


How does one add libraries to the classpath?

How do I add libraries to the classpath so that I can use them with jupyter-scala.
For example, IScala has a magic sbt command like %libraryDependencies += "org.apache.spark" %% "spark-assembly" % "1.1.0". Is there something simliar with jupyter-scala
p.s. Thanks for working on this project. I think it's great!

You're fast, I just pushed things this morning! the links in the README needs to be updated, have a look at the directory they point to, you should download the .tar.xz or .zip, not the .tar.gz.
Then it's like in Ammonite, you should call load.ivy("org" %% "name" % "version"). (Keep one % at first pos if not a scala dependency).
I'll add more explanations in the README later today or tomorrow.

Thanks for the quick response and the pointers. I'll give it a spin later today.

Example I had at hand:

I'll close once I have written some doc.

On a related note, do you have a method to add additional repositories? Thanks!

Maven ones - but in maybe half an hour (once Travis had built and published new ammonite-shell and jupyter-scala packages):

Shouldn't be too hard to add the other kind of repo that SBT support (Ivy like repo, SSH?, ...)

That's great. I think the maven ones will cover about 95% of use cases. Especially if you can point it at a local repo ... ~/.m2

Haven't tested, but load.resolver("Maven local repo" at "file:/home/.../.m2/repository") should be ok (SBT does it this way). I didn't end up using ~/.m2 too often with SBT (more ~/.ivy2/local, which is enabled by default, along with Maven Central).

The packages with that can now be downloaded (note that links on the README were updated).

I'm having an issue trying this with central repository libraries (specifically Spark).
load.resolver("DefaultMavenRepository" at "https://repo1.maven.org/maven2")

completes fine, but then when I try
load.ivy("org.apache.spark" % "spark-core_2.11" % "1.6.0")

I get a resolution error:

:: problems summary ::
:::: WARNINGS
	Unable to reparse com.github.alexarchambault.jupyter#jupyter-scala-api_2.11.6;0.2.0-SNAPSHOT from sonatype-snapshots, using Thu Dec 24 09:50:58 EST 2015

	Choosing sonatype-snapshots for com.github.alexarchambault.jupyter#jupyter-scala-api_2.11.6;0.2.0-SNAPSHOT

	Unable to reparse com.github.alexarchambault#ammonite-api_2.11.6;0.3.1-SNAPSHOT from sonatype-snapshots, using Wed Oct 21 05:43:36 EDT 2015

	Choosing sonatype-snapshots for com.github.alexarchambault#ammonite-api_2.11.6;0.3.1-SNAPSHOT

	Unable to reparse com.github.alexarchambault.jupyter#jupyter-api_2.11;0.2.0-SNAPSHOT from sonatype-snapshots, using Wed Oct 21 11:03:52 EDT 2015

	Choosing sonatype-snapshots for com.github.alexarchambault.jupyter#jupyter-api_2.11;0.2.0-SNAPSHOT

		module not found: org.apache.spark#spark-core_2.11_2.11;1.6.0

	==== local: tried

	  /Users/damien/.ivy2/local/org.apache.spark/spark-core_2.11_2.11/1.6.0/ivys/ivy.xml

	==== public: tried

	  https://repo1.maven.org/maven2/org/apache/spark/spark-core_2.11_2.11/1.6.0/spark-core_2.11_2.11-1.6.0.pom

	==== sonatype-snapshots: tried

	  https://oss.sonatype.org/content/repositories/snapshots/org/apache/spark/spark-core_2.11_2.11/1.6.0/spark-core_2.11_2.11-1.6.0.pom

	==== DefaultMavenRepository: tried

	  https://repo1.maven.org/maven2/org/apache/spark/spark-core_2.11_2.11/1.6.0/spark-core_2.11_2.11-1.6.0.pom

	==== DefaultMavenRepository: tried

	  https://repo1.maven.org/maven2/org/apache/spark/spark-core_2.11_2.11/1.6.0/spark-core_2.11_2.11-1.6.0.pom

	==== DefaultMavenRepository: tried

	  http://repo1.maven.org/maven2/org/apache/spark/spark-core_2.11_2.11/1.6.0/spark-core_2.11_2.11-1.6.0.pom

@damienstanton Are you sure you didn't enter something like
load.ivy("org.apache.spark" %% "spark-core_2.11" % "1.6.0")

(notice the first two % signs, instead of just one) before that? Resolution seems to look for a module with name spark-core_2.11_2.11, that the former would bring.
If that's the case, note that in the next version, an addition of modules that made the resolution fail will be ignored, and not kept around like here. It should be pushed any time soon.

LOAD command fails. Value load not found
Should I open a new ticket or should it be handled here?
Here the errors:

Yep, sorry, see the upcoming README. That's classpath.add.

I have an ivy repository where the xml file is <IP_ADDRESS>701194647/ivys/ivy-<IP_ADDRESS>701194647.xml but the jar is <IP_ADDRESS>701194647/jars/schema-<IP_ADDRESS>701194647.jar , where schema is the module name. I ran classpath.addRepository on the pattern "[organisation]/[module]/[revision]/[type]s/[type]-[revision].[ext]" and it finds the xml but when it tries to find the jar it applies the same pattern, even when I also include the "[organization]/[module]/[revision]/[type]s/[module]-[revision].[ext]") pattern for the jar. How can I work around this?

HI :)
In my system, classpath.add has no affect:
classpath.add("com.github.melrief" %% "purecsv" % "0.0.1")
classpath.add("org.scalanlp" %% "breeze_2.10" % "0.12")
// packages org.scalanlp:breeze_2.10:0.12,
import math.{exp, log}
import breeze.benchmark.{MyRunner, BreezeBenchmark}
import breeze.linalg.{softmax, DenseVector}
import breeze.stats.distributions.Rand
Main.scala:29: not found: value breeze
; import math.{exp, log} ; import breeze.benchmark.{MyRunner, BreezeBenchmark} ; import breeze.linalg.{softmax, DenseVector} ; import breeze.stats.distributions.Rand ; object LogisticFunction
Is this the correct syntax?
Thanks

When I try to add local directory via
classpath.addPath("/usr/local/spark/jars")
All I see thats added to my classpath.path() shows
/usr/local/spark/jars
And not all the individual jars located in the directory.
Per the documentation this should be correct syntax to add local jar folders but this does not seem to work as I can't import any spark classes

If you have only one scala installed on your machine, than classpath.add should be working fine. If you happen to installed scala 2.12 as I did when installing jupyter scala, then you would prefer using scala 2.11 and you can try this first:
import $ivy.com.github.alexarchambault.ammonium:interpreter-api_2.11.8:0.4.0
and then import packages such as:
import $ivy.org.apache.spark:spark-sql_2.11:2.1.1

The import $ivy construct is working in scala but not scala-spark: what is the syntax for that kernel?

Closing this. The upcoming version of the kernel (on the develop branch for now) just wraps Ammonite. See the Ammonite doc for that.


mycrypto.com

Energized Protection - block ⚡

Let's make an annoyance free, better open internet, altogether!

Issue Submit Form

  Provide the following infos properly, which will help us to resolve your issue quickly.

[x] Whitelist
[ ] Blacklist
[ ] App Broken
[ ] Website Broken
[ ] Request
[ ] Other Issue

Pack(s):
Write the name of the pack(s) you are using.

Pack(s) Name: ultimate

Extension(s):
Also name the extension(s) if you are using any. If you don't then leave it blank.

Extension(s) Name:

Domain(s):
If you are submitting this issue for whitelist/blacklist issue, send us the domain(s) for whitelisting/blacklisting here. Kindly use the Code Tag to prevent tracking.

Domain(s): mycrypto.com www.mycrypto.com

Your Config:
Just to ensure there is no issues or conflicts with other app/software/magisk module/extension/source list.
Make sure you are running Energized Protection Service only.

Client:  Pi-hole & uBlock Origin

Version: Latest on GitHub (master)

Details:
Write us a lil bit more about your issue or query. You can attach any screen shot or log of the issue or advert, this will help to highlight it.

Your Issue Detail: Both sites are blocked.

Thank you for making Energized Protection great with your kind help!

A project by Ador with ❤

@clrxbl @Abhi1ash this is an noformat type..


Fix up comments and errors around CRD issues

Provide better comments and error messages around the code that checks the datastore is initialized. This error should help alleviate a possibly common scenario where users launch Calico in KDD mode without first creating the custom resources.

JGOC


Dependency on 'serverless/lib/plugins/aws/lib/validate' is not in package.json

Version 0.2.1 has a dependency on the .../validate module, but it's not listed in package.json.
As a result, I'm getting:
Error --------------------------------------------------

     Cannot find module 'serverless/lib/plugins/aws/lib/validate'

     For debugging logs, run again after setting the "SLS_DEBUG=*" environment variable.

  Get Support --------------------------------------------
     Docs:          docs.serverless.com
     Bugs:          github.com/serverless/serverless/issues

     Please report this error. We think it might be a bug.

  Your Environment Information -----------------------------
     OS:                 darwin
     Node Version:       6.9.1
     Serverless Version: 1.8.0

I'm using the global version of serverless

Works fine if I install serverless locally to my project

Ah, nice spot.  Actually, I don't think the code needs validate at all.. I will review this tonight and see if I can update it to BCP.
I've never understood this fetish of Node users to install everything globally...

Lol... Generally, it's a bad idea, but serverless has some global
functionality and is positioned as a utility rather than a library, soooo
:shrug:
On Tue, Mar 14, 2017, 19:41 Curtis Maloney<EMAIL_ADDRESS>wrote:

Ah, nice spot. Actually, I don't think the code needs validate at all.. I
will review this tonight and see if I can update it to BCP.
I've never understood this fetish of Node users to install everything
globally...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/funkybob/serverless-s3-deploy/issues/1#issuecomment-286606379,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AANhT1shC0fqWuqoMx4SSX17xIZGim78ks5rlzObgaJpZM4MdVf-
.

Can you please test the latest code?  If that works fine for you, I'll cut a release.

@dancrumb has this issue been fixed in head?

Yup - seems to work just fine
And to be explicit, I remove my local serverless from the project to be sure :D


Is pipelining supported with this library?

Does this library support Redis pipelining?  Didn't see any explicit documentation for it, thought I'd ask.  If so, can an example be provided?

How does it manage when to stop pipelining?

@diegoaguilar if you send all of the commands in the same JS tick (synchronously) they will all be pipelined. Once you're out of that JS tick and the socket is able to flush, those commands will be sent.
Beyond that there is not currently manual control of pipelining.

@diegoaguilar what @brycebaril said. Plus from version 2.2.0 on both .multi and .batch are going to auto pipeline all commands until .exec is called.

So, apart from promisifying, is there any way to receive responses all in one?

I'm not sure I understand what you mean with receive all in one? If you use .multi or .batch you'll collect all commands until you use .exec. All commands will be released in that moment and you'll receive your return value in .exec after all commands returned successful all in one result array.

Yeah, that's what I meant somehow, I wanted a way to perform bulk operations and with out having to use promises, manage whole responses in one.


Remove T : unmanaged constraint from DataFrameColumn.BinaryOperations

Should we add a test or two for this? That way we ensure it works for non unmanaged types now and in the future.

Should we add a test or two for this? That way we ensure it works for non unmanaged types now and in the future.

We already do have tests for this as part of testing StringDataFrameColumn(since it's the only column dealing with references). I added a test to PrimitiveDataFrameColumn now

We already do have tests for this as part of testing StringDataFrameColumn

If we already had tests for this, then those tests would be failing without this change.

        where U : unmanaged

Why does U need to be unmanaged here? Can't you remove that restriction here, and then you don't need the big type switch in the callsite?

Refers to: src/Microsoft.Data.Analysis/PrimitiveDataFrameColumn.BinaryOperations.cs:1186 in 163b47b. [](commit_id = 163b47b5461342d1e76f42fe6d079f0c936dc213, deletion_comment = False)

Why does U need to be unmanaged here? Can't you remove that restriction here, and then you don't need the big type switch in the callsite?

Because when I first wrote this code, I wanted to reduce the number of Unsafe.As uses. Removed the restriction now. We do have more Unsafe.As calls now, but I don't have an issue with the way I'm using them.


Gun System

The core of the gameplay loop is shooting enemies, so we need a robust system to deal with it.
Requirements:

[x] Create a new Gun Node to be used as the base for all guns
[x] Allow the player to pick up guns from the ground, and drop them if needed
[x] Read the aiming angle from the Aim Node to know the direction of the shot
[x] When the trigger is pulled, the correct type of projectile(s) need to me instantiated with the correct rotation and force
[x] When a gun is dropped while the magazine is not empty, it will remain on the ground. If it's empty, it will play a cool rusting effect and disappear
[x] Note that the Pick Up/Drop key is the same as the Growl key, so the game needs to check when to play each animation
[x] Also note that the key to Shoot is the same as the key to perform a Melee attack

Implemented in #68


Benchmarks

@gregcaporaso this PR is a bit oversized in retrospect, would you like to do something different?


randomize intervals, add lock on nyan's memory to avoid races

as title says

Is it time to fight with the linter again?

It's not! Wow


support progressive output

This  adds two new arguments to the Predictor: progressive and sleep. If progressive is enabled, the resulting haiku is yielded one word at a time, sleeping between each word. We can use this to help test progressive output in future cog.

For some reason these new arguments are ending up as instances of the Pydantic FieldInfo class, instead of the actual value supplied to the predict() function:
seed = 123
progressive = FieldInfo(default=False, description='Yield haiku words one at a time, sleepin between each word', extra={'choices': None})
sleep = FieldInfo(default=0.5, description='Time to sleep between each word (when using progressive output)', extra={'choices': None})

instead of:
seed = 123
progressive = True
sleep = 0.5

Either I'm missing something obvious, or this a bug in future cog... 🤔
cc @bfirsh @andreasjansson @evilstreak

Not sure what's going on with those types -- smells like a bug.
I don't think this approach is going to work, though. The function needs to return a concrete type, otherwise the thing calling it doesn't know what to do with it. For example, Replicate wouldn't know that it's an iterator and could iterate over it. You could imagine it duck typing it somehow, but like we talked about yesterday, we ultimately need a schema for things like files.
Two things jump out here, that we might want to discourage:

Values of inputs modifying output types. In the case where you might return different types under different situations, we probably want an object with two nullable values, like we do in Replicate to handle old values. That way everything's typed.
Using Any as a return type. Unless you are legitimately returning unstructured JSON, this means nothing about the type of the output can be inferred (like it being a file, or an iterator).

These two things feel like foot guns that we shouldn't document (or add documentation encouraging you not to do this, with suggestions for how to add types!).

Update: Instead of adding a progressive boolean input, I've broken this out into two predictor classes, and published each of them to Replicate under different names, following the same pattern used by pixray/pixray.

https://replicate.com/zeke/haiku-standard
https://replicate.com/zeke/haiku-progressive


Feature/url matcher refactor

Closes #81

[Current coverage][cc-pull] is 99.14%

Merging [#84][cc-pull] into [master][cc-base-branch] will increase coverage by 0.70%

@@             master        #84   diff @@
==========================================
  Files             9          9
  Lines           448        466    +18
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            441        462    +21
+ Misses            7          4     -3
  Partials          0          0

[][cc-pull]

Powered by Codecov. Last updated by [e9340b0...33fd200][cc-compare]
[cc-base-branch]: https://codecov.io/gh/devlucky/Kakapo/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/devlucky/Kakapo/compare/e9340b05f8c01be4e88d5f2a7d9ca4b20f00b7b9...33fd200658e264b0f7fcfd5c694f2479c70defa3?src=pr
[cc-pull]: https://codecov.io/gh/devlucky/Kakapo/pull/84?src=pr

👍 LGTM other than the too much documentation for methods on Router.


Small fixes in Ti case

@RemDelaporteMathurin
Pardon me, I didn't see your PR. Since you've released HTM v0.17, I updated these lines. Can we close this PR in favour of the draft PR?


Removed type restrictions on Rule values

Simple change to allow any type values.

Codecov Report

Merging #82 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #82   +/-   ##
=======================================
  Coverage   78.76%   78.76%
=======================================
  Files           7        7
  Lines         146      146
  Branches       24       24
=======================================
  Hits          115      115
  Misses         30       30
  Partials        1        1

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 816b93d...a08b34b. Read the comment docs.


Optionally skip expand_target_column_types during incremental materialization

Describe the feature
Would like to be able to skip expand_target_column_types in an incremental materialization; we'd like the types in our tables to be immutable/fully specified by code.
Describe alternatives you've considered
Considered overriding the materialization and removing
{% do adapter.expand_target_column_types(
           from_relation=tmp_relation,
           to_relation=target_relation) %}

as someone did here https://getdbt.slack.com/archives/C2JRRQDTL/p1594844172456700?thread_ts=1594742649.422500&cid=C2JRRQDTL, but concerned about future code divergence/our team is very new to dbt so getting this out of the box would be great.
Additional context
@drewbanin suggested making an issue here https://getdbt.slack.com/archives/C2JRRQDTL/p1594820882440000?thread_ts=1594742649.422500&cid=C2JRRQDTL but I didn't see one, so figured I'd make my first contribution! Seems like a straightforward override flag in the config, like expand_target_column_types=false would suffice?
Who will this benefit?
Anyone who would like the types in their tables to be immutable/fully specified by code. For example, we have some values that we expect to be no more than 16 characters long; an unintended expansion of those fields to the max varchar length means we'd lose desired validation of those types.
Are you interested in contributing this feature?
I can't right now, but not for lack of desire; can see myself contributing in the future :)

Great idea, @smomen! I really like the rationale around preserving full code-based type specification.
I'm imagining a boolean config flag, expand_target_column_types, which is true by default (as it is today) but could be overridden:
{{ config(
    materialized = 'incremental',
    expand_target_column_types = false,
    ...
)}}

This would require a very small code addition to the default and Snowflake implementations of the incremental materialization. I think it would also be a good idea to add some debug logging: "Skipped expanding target column types because..." If there is data type mismatch, the user will see the corresponding database error.
The only other place where we use adapter. expand_target_column_types is for snapshots. In that case, I don't feel we want to disable column expansion, because the inputs to snapshots can be less predictable (frequently raw source data) and, as a non-idempotent operation, the stakes of failure are higher.
I'm going to tag this as a "good first issue" for anyone in the community interested in contributing. If you find some extra time lying around, I'm happy to work with you to get this shipshape.

I'm interested in working on this! @jtcohen6

@tashay sweet! Let me know if you'd like any support in getting started :)


Unconnected containers in sock-shop

Looking at the Explore → Containers view of sock-shop in WC, I can see quite a few containers which are not connected to anything. In a quick conversation, @rade pointed out that #1491, #1846, #2129 and #2586 could possibly be related.

This seems to happen, both with "Show Uncontained" and "Hide Uncontained".

At first I thought it might be missing all short-lived connections, but I do occasionally see connections from front-end to user, so the problem must be something else.
The Pod topology looks fine, with all expected connections showing.

Toggling the filters did not help, FF 59.0b12 Ubuntu.

The POD containers are visible because Kubernetes changed the image of the ”pause container”.
See IsPauseImageName() in the code.

Oh, that's yet another bug.

To be clear, the issue here isn't all the unconnected POD containers - that is expected - but all the other unconnected containers, especially since for a good few of them the corresponding pods do show as connected.

the POD containers are visible because Kubernetes changed the image of the ”pause container”.

Actually, they are visible because of the filtering bug #1999 - if you switch to show 'All' and then back to 'Application Containers' they go away.

Checking more closely I see POD containers with image gcr.io/google_containers/pause-amd64:3.0 which would be matched by the current hard-coded string.  Sorry for confusion.

for a good few of them the corresponding pods do show as connected.

I think the difference is that Scope knows the pod IPs and doesn't know the container IPs, and doesn't join those pieces of information together.
Some connections have a pid, and Scope does map processes to containers when rendering, so you see those connections.

Some connections have a pid, and Scope does map processes to containers when rendering, so you see those connections.

Why don't all the connections have a pid?

It looks like this is being seen in the field. See: https://weave-community.slack.com/archives/C985DLV6F/p1550588443054100

Follow-on from the same user: FYI - i re-deployed using Calico CNI vs. Weave Net and I do now see connections between the pods.  I can't say for sure if I see them all as I don't appreciate exactly all the communications between components.  I suspect that maybe with Calico since there is no enacp. the weave scope is able to decode the traffic somehow?


Packs are missing the "Aspirational State" ritual from PFS 2-22

It can't be entered... The system doesn't allow for it.  Not sure how we want to address it though.


Update docs for Apple M1 builds saying that bazel >= 4.1 is needed

We should document somewhere that bazel builds on Apple M1 require version 4.1 or newer.

Well, I think it actually does work now using bazel 4.0 on apple M1 hardware. On my MBP, I got:
$ USE_BAZE_VERSION=4.0.0 bazelisk build google/...
WARNING: /Users/jgm/github/devjgm/1.google-cloud-cpp/google/cloud/speech/quickstart/BUILD.bazel:17:10: in cc_binary rule //google/cloud/speech/quickstart:quickstart: target '//google/cloud/speech/quickstart:quickstart' depends on deprecated target '//:experimental-speech': this library is now GA, please use //:speech instead.
WARNING: /Users/jgm/github/devjgm/1.google-cloud-cpp/google/cloud/logging/quickstart/BUILD.bazel:17:10: in cc_binary rule //google/cloud/logging/quickstart:quickstart: target '//google/cloud/logging/quickstart:quickstart' depends on deprecated target '//:experimental-logging': this library is now GA, please use //:logging instead.
WARNING: /Users/jgm/github/devjgm/1.google-cloud-cpp/google/cloud/osconfig/quickstart/BUILD.bazel:17:10: in cc_binary rule //google/cloud/osconfig/quickstart:quickstart: target '//google/cloud/osconfig/quickstart:quickstart' depends on deprecated target '//:experimental-osconfig': this library is now GA, please use //:osconfig instead.
INFO: Analyzed 842 targets (0 packages loaded, 0 targets configured).
INFO: Found 842 targets...
INFO: Elapsed time: 3.546s, Critical Path: 0.00s
INFO: 1 process: 1 internal.
INFO: Build completed successfully, 1 total action

🐵  Oops. As @dbolduc pointed out to me, USE_BAZE_VERSION should be USE_BAZEL_VERSION. And indeed, the build still breaks w/ bazel 4.0. My mistake.


[LowerToAIE] Change handling of linalg operations (fix for conv lowering)

This PR removes the special case handling of linalg ops, which was causing convolution lowering to fail.
The default switch case handles linalg ops better here, so this PR falls back to the default. In particular, ops with regions such as linalg conv 1d are handled correctly by the default switch case. With the cloning approach in the code this PR removes, the nested conv 1d op was causing problems in the IRMapping mapper, and we were ending up with a aie.core op who's operand was the result of linalg.conv op (lol).
Please, let's stop using  .Case<linalg::LinalgOp>([&](auto linalgOp) when the only linalg op being tested is linalg.fill. Rather just use Case<linalg::FillOp> and maybe error out of other linalg ops are encountered -- this will make debugging much easier.

I thought this was a fix for the non-deterministic crash I'm seeing in this pass with convolution, but it's not. I think I've found the actual problem (IRMapping not being updated when operations are erased) I'll post a fix for this tomorrow

I thought this was a fix for the non-deterministic crash I'm seeing in this pass with convolution, but it's not. I think I've found the actual problem (IRMapping not being updated when operations are erased) I'll post a fix for this tomorrow

really? where?

Member

https://github.com/nod-ai/iree-amd-aie/pull/694

Bundled with https://github.com/nod-ai/iree-amd-aie/pull/705


set default value

Hey, is there a prop to set the default value of the input field?

Hey @sfarkas1988 , any update on this please?

@MuhammedAlmaz , please help. Thanks

`<IntlPhoneInput ref={(ref) => this.phoneInput = ref} />
onDataLoaded=(data)=>this.phoneInput.onChangeText(data.phoneNumber);`
you can use like this.

Okay, but doesn't work with Hooks :(
On Sun, Jun 28, 2020 at 4:21 PM Muhammed Almaz<EMAIL_ADDRESS>wrote:

`<IntlPhoneInput ref={(ref) => this.phoneInput = ref} />
onDataLoaded=(data)=>this.phoneInput.onChangeText(data.phoneNumber);`
you can use like this.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/MuhammedAlmaz/React-Native-INTL-Phone-Input/issues/28#issuecomment-650744876,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFK2QIWU3PK2IQ7K4RBNJJDRY4YVNANCNFSM4OJ5XQYQ
.

--
Best Regards.
Oluwafemi E. Akinde

@SirPhemmiey  why it doesnt work ?
const phoneInputRef=null;
const onDataLoaded=(data)=>this.phoneInput.onChangeText(data.phoneNumber);
return (<IntlPhoneInput ref={(ref) =>phoneInputRef = ref} /> );

@MuhammedAlmaz , but how will the onDataLoaded get used in the component?

@MuhammedAlmaz , this solves the default value BUT it doesn't append the country code with the default value. For instance, if the default value is "+915034", and my defaultCountry in the input component is "+971", it uses now makes the default value to be "+971915034", which is a wrong number and also a big issue. Please help @MuhammedAlmaz

@SirPhemmiey i don't know which part of data is country code. I need generate a generic regex. This regex can give me the country number prefix after than i get the country code from the prefix. But it's very hard i need a time about it. If you can do it you can fork the library. I will apply your code in master.

@MuhammedAlmaz  usless developer, not answering well and not accepting pull requests, I had to refactor the module to a better code flow and logic thank you anyway for trying to give us this module

@MuhammedAlmaz  usless developer, not answering well and not accepting pull requests, I had to refactor the module to a better code flow and logic thank you anyway for trying to give us this module


Instantiating Client outside of asyncio context leads to confusing "RuntimeError: Timeout context manager should be used inside a task"

Instantiating a Client object outside of a running asyncio event loop leads to a very confusing
RuntimeError: Timeout context manager should be used inside a task exception upon performing requests.
The reason is:

Client creates a Network instance which stores a reference to loop via loop or asyncio.get_event_loop().

When called outside of a running loop asyncio.get_event_loop() creates a new loop.

Later when running in a newly created asyncio context aiohttp checks for current_task() using the passed in stored loop from above

The stored loop is distinct from the running one, meaning it has no current task, leading to the exception.

I'm not quite sure what the correct solution is here.
Maybe using asyncio.get_running_loop() instead of get_event_loop() and in the case of no active loop requiring the user to explicitly pass in a loop would be best...

fixed in 0.8.11


[PE-D][Tester A] Unable to run review session more than once

I tried to delete the existing words and added new words. For example:

add w/hello wl/English t/你好 tl/Chinese.

add w/bye wl/English t/пока tl/Russian

When i try to run session by typing start, this is what I see:

Labels: type.FunctionalityBug severity.Medium
original: adhigop13/ped#3

Our team dont think it is a bug, so closed. But it's good reminder that we should clarify how the review session work


[SPARK-40511][BUILD][CORE] Upgrade slf4j to 2.0.2

What changes were proposed in this pull request?
This pr aims to upgrade slf4j from 1.7.36 to 2.0.x, the main change as follows:

Upgrade slf4j version from 1.7.36 to 2.0.x
Use  log4j-slf4j2-impl instead of  log4j-slf4j-impl refer to https://logging.apache.org/log4j/2.x/log4j-slf4j-impl/index.html
Adapt to the implementation of Logging.isLog4j2(), slf4j2 uses SLF4JServiceProvider instead of StaticLoggerBinder

Why are the changes needed?
slf4j 1.7.36 is no longer actively developed, and the current stable and actively developed version of slf4j is 2.0.x.

https://www.slf4j.org/news.html
https://www.slf4j.org/faq.html#changesInVersion200
https://www.slf4j.org/download.html

Does this PR introduce any user-facing change?
No
How was this patch tested?
Pass GitHub Actions

Test API compatibility first

close and wait log4j 2.19.x

@LuciferYang https://search.maven.org/artifact/org.apache.logging.log4j/log4j-slf4j2-impl has been released!

Thanks @martin-g

reopen this due to log4j 2.19.0 released and Spark already upgrade to use this version, test first

friendly ping @viirya @HyukjinKwon @dongjoon-hyun @srowen
This pr try to upgrade slf4j from 1.x to 2.x, but I don't think it is an appropriate time to upgrade it now due to slf4j 2.0.x still released frequently, so I will keep this pr as draft for a period of time and continuous testing it.

so I will keep this pr as draft for a period of time and continuous testing it.

So this is changed?

may be a mistake, re-change to draft

mvn test Java8 + hadoop-2 profile with this pr , all test passed

2.0.3 released, let us wait more time

mvn test Java17 + hadoop-3 profile with this pr , all test passed

Is this ready to merge?

should we merge this one first ?

Yep. Thank you, @LuciferYang and all.
Merged to master.

Thanks @martin-g @dongjoon-hyun @HyukjinKwon @srowen @viirya @itholic


Pass provider configuration from the enrolling client when generating an Authorization URL request

When a client wants to enroll a provider using OAuth2 it first does an authorization URL request call which creates a state. This needs to pass along two new items: a provider class because the handler presumes that the name of the provider equals the class but also the config so that it can be stored in the state table.

Fixed in 2f83c54e4fe945846ba2b6c59ca70138f27d766a


Update onboarding with collaborate and required categories

[x] 6426c6ab Only require user to follow 1 onboarding category
[x] 2390fa5f Add selectors for isCollaborateable and isHireable
[x] 93d8a980 Add collaborate and hire preferences to onboarding
[x] 93d8a980 Adds the route as /onboarding/collaborate
[x] 133ae2d Style the collaborate preferences and screen
[x] 808a3733 Update settings to point to the collaborate slide

          1 Warning

:warning:
Big PR

  Generated by :no_entry_sign: danger


[BUG] Crash on pressing certain keys in interactive search in debug builds

Press r, i, or o as the first key to reproduce.

Seems to be because of an integer underflow at:
https://github.com/ellie/atuin/blob/db2a00f45623d284f17dfe8c0f9eca1a401c25a6/src/command/client/search/history_list.rs#L172
(x is greater than width)

Since underflow only panics in debug builds, this gets ignored in the release binary

The bug is benign, but should be fixed imo.
System info:

DE: Plasma 5.25.5
Terminal: Konsole 22.08.1
Windowing server: X11
Fractional scaling: 125%

Seems to be fixed in v13. Closing.


Allow clicking the "empty" space of team card

Suggest being able to click the "Yellow" area here to take you to the Overview Tab of the "on field"/"active" character.
But if you click the "Green" area (ie; a specific character picture) it takes you directly to the Optimize Tab of that character.

To narrow down scope:
Allow clicking of the team name in the Team card to access team UI.


Visibilty (sichtweite) shows wrong unit hPa..

Version of home_assistant
Core: 2024.1.2
Supervisor: 2023.12.0
Operating System: 11.4
Frontend 20240104.0
Version of the custom_component

v2.1.0
Describe the bug
HA logged the below mentioned warning for DWD integration. I followed the instruction to fix it in developer statistics but it set it now to the unit hPa (my fault 🙈). So I assume that the unit accidently changed during the last update from km to hPa.
If that's th case can you please fix it with the next update?
Debug log

2024-01-11 18:55:28.357 WARNING (Recorder) [homeassistant.components.sensor.recorder] The unit of sensor.klippeneck_sichtweite (hPa) cannot be converted to the unit of previously compiled statistics (km). Generation of long term statistics will be suppressed unless the unit changes back to km or a compatible unit. Go to https://my.home-assistant.io/redirect/developer_statistics to fix this

Yes, this was probably my fault, as some constants within HA have changed and I implemented these changes as well within the last update. I'll release a new version tomorrow which hopefully will fix this.
Thanks for reporting!

Fixed in 2.1.1


Add pause menu

Pause/Unpause button is the "P" key. You can unpause with "P" while in the pause menu.

Why is the code divided into both toggle_pause_menu and _on_visibility_changed? It seems pausing and showing go should go together.

Yeah sorry about that, that's my bad on my end. I will change this ASAP. Thanks for mentioning me that.

Very nice doesn't seem to be any problems when i tried it.

It seems good to me. I guess we should merge this one.

is there any reason its not on the esc key? feels maybe a bit more fitting

is there any reason its not on the esc key? feels maybe a bit more fitting

Yes, I agree that it's fitting because most games have it set to ESC key. @Tobeast1 asked me a similar question on Discord on why I didn't make the pause button the ESC key, and here's my answer to his question:

because we don't know if the game will run on browser or not
if you fullscreen the game in the browser and you press esc then you will leave fullscreen mode

I hope you understand why I decided to set it to the "P" key instead.


Test cccli

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

Project coverage is 81.81%. Comparing base (2b600af) to head (2e99029).

Additional details and impacted files
@@            Coverage Diff             @@
##             main       #3      +/-   ##
==========================================
+ Coverage   80.64%   81.81%   +1.17%
==========================================
  Files           1        1
  Lines          31       33       +2
  Branches       17       18       +1
==========================================
+ Hits           25       27       +2
  Misses          6        6

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


gopass -c displays secret

Summary

Using the command gopass -c my/path/to/secret displays the secret as well as copying it to the clipboard
Steps To Reproduce

gopass -c my/path/to/secret
Expected behavior

Only copy password to clipboard, not displaying it
Environment

OS: Arch Linux
OS version: 5.6.10-arch1-1
gopass Version: gopass 1.9.0-git+HEAD (2020-05-03 20:29:17) go1.14.2 linux amd64
Installation method: pacman

Additional context

This should be a dupe of #1323


RemoteHooking.WakeUpProcess - Exitcode 80131506

CreateAndInject to create the process
Hook for GetSystemTimeAsFiletime, GetSystemTime, GetLocalTime
Calling RemoteHooking.WakeUpProcess in Run-method crashes application with internal .NET Error (Exitcode 80131506 - GC Heap?).
Without calling WakeUpProcess the process starts but only stays visible in Task Manager, at least no error message or application crash.

DLLImport
[UnmanagedFunctionPointer(CallingConvention.StdCall, CharSet = CharSet.Unicode, SetLastError = true)]
private delegate void GetSystemTimeAsFileTimeDelegate(out FileTime time);
Run-Method
this.getSystemTimeAsFileTimeHook = LocalHook.Create(LocalHook.GetProcAddress("kernel32.dll", "GetSystemTimeAsFileTime"), new GetSystemTimeAsFileTimeDelegate(OnGetSystemTimeAsFileTime), this);
this.getSystemTimeAsFileTimeHook.ThreadACL.SetExclusiveACL(new[] {0});
Program-void Main
var libraryName = "ManagedHooking.Core.dll";
int processid = -1;
RemoteHooking.CreateAndInject(target, arguments, (int)InjectionOptions.Default, libraryName,libraryName, out processid, date);
Thanks for help!

Is target process .NET too? If so it will not work correctly - instead you would need to start your own process, install your hooks, and then use Assembly.Load for the target app.

I also have this problem.

Is this still the case for .NET applications?


Why was lv_drivers removed in version V9.0?

I am unable to use the mouse and touch screen in version V9.0 on the Ubuntu system and development board because the lv_drivers module is missing. How can I add this module to the V9.0 package?

int main(void)
{
lv_init();
/Linux display device init/
lv_linux_disp_init();
printf("init input\n");

//init input device
lv_sdl_mouse_create();
lv_sdl_keyboard_create();
lv_sdl_mousewheel_create();
lv_sdl_mousewheel_create();

printf("init input  end\n");

/*Create a Demo*/

// lv_example_button_1();
// lv_demo_widgets();
// lv_demo_widgets_start_slideshow();
lv_example_ime_pinyin_2();
/Handle LVGL tasks/
while(1) {
lv_timer_handler();
usleep(5000);
}
return 0;
}
I know that V9.0 has integrated drivers into the src directory, and you can use them after adding initialization in the project. Thank you！

I know that V9.0 has integrated drivers into the src directory, and you can use them after adding initialization in the project.

Yes, they are here: https://github.com/lvgl/lvgl/tree/release/v9.0/src/drivers


NPM module has no export

It looks like in the upgrade to 0.14 the NPM module no longer has an export in it, but instead just defines a variable:
https://github.com/BoxFactura/pulltorefresh.js/commit/bc3adb3febbb611862bcddf7c9edb34fc1227a78#diff-43757bd0eb07f11dd4e8e579643e30eb
Consequently if I attempt to import the module doing something like this:
let ptrjs = require('pulltorefreshjs');

ptrjs will be undefined.

Confirmed that using version 0.1.3 properly exports the module.

Yeah, totally missed it.
I've published 0.1.6 for solving this.
Thanks for your feedback, sorry for publishing broke stuff. 🤖


Only URLs with a scheme in: file, data, and node are supported by the default ESM loader. On Windows, absolute paths must be valid file:// URLs. Received protocol 'd:'

Steps to reproduce
Created a new function.ts to make connection to MySQL.
Code:
mport mysql from 'mysql2/promise';
async function createConnection() {
const connection = await mysql.createConnection({
host: process.env.MYSQL_HOST,
port: parseInt(process.env.MYSQL_PORT || '3306'),
user: process.env.MYSQL_USERNAME,
password: process.env.MYSQL_PASSWORD,
database: process.env.MYSQL_DATABASE,
namedPlaceholders: true,
});
return connection;
}
export async function getData() {
const connection = await createConnection();
const query = SELECT * players;
const [rows] = await connection.execute(query);
await connection.end();
return rows;
}
.env is available and filled in.
Current behavior
When getting into Queries + =+> Js query, select the config, then open, then "getData".
Then doing Run:
Only URLs with a scheme in: file, data, and node are supported by the default ESM loader. On Windows, absolute paths must be valid file:// URLs. Received protocol 'd:'
Expected behavior
Query runs and gives responce
Context
Connecto to external MySQL DB
Your environment
System:
OS: Windows 11 10.0.22631
Binaries:
Node: 18.17.1 - C:\Program Files\nodejs\node.EXE
npm: 9.6.7 - C:\Program Files\nodejs\npm.CMD
pnpm: Not Found
Browsers:
Chrome: Not Found
Edge: Chromium (123.0.2420.97)
npmPackages:
@emotion/react:  11.11.4
@emotion/styled:  11.11.5
@mui/base:  5.0.0-beta.40
@mui/core-downloads-tracker:  5.15.15
@mui/icons-material:  5.15.15
@mui/lab:  5.0.0-alpha.170
@mui/material:  5.15.15
@mui/private-theming:  5.15.14
@mui/styled-engine:  5.15.14
@mui/system:  5.15.15
@mui/types:  7.2.14
@mui/utils:  5.15.14
@mui/x-charts:  7.1.1
@mui/x-data-grid:  7.1.1
@mui/x-data-grid-premium:  7.1.1
@mui/x-data-grid-pro:  7.1.1
@mui/x-date-pickers:  7.1.1
@mui/x-date-pickers-pro:  7.1.1
@mui/x-license:  7.1.1
@mui/x-tree-view:  7.1.1
@types/react:  18.2.78
react:  18.2.0
react-dom:  18.2.0
typescript:  5.4.4
Tested in 3 browses brave, firefox, chrome.

Search keywords: Windows ESM Loader

@prakhargupta1 I have opened a PR with a potential fix. Would you mind trying it out by installing @toolpad/studio from https://pkg.csb.dev/mui/mui-toolpad/commit/7f293ceb/@toolpad/studio

Thanks for trying, this will be fixed in the next release


not working?

I am unsure if this is doing anything.  I set it up on my raspberry pi, and can use the new AP, but nothing appears in the log or in the console.  Am I missing something?

If you are using SSLStrip, only POST requests will appear in the log & console.
Answer no when mitmAP asks for using sslstrip, and than select mitmproxy to view all of the http/https traffic.

Thanks. Some basic usage instructions would be helpful.
On Mon, Nov 28, 2016 at 4:58 PM xdavidhu<EMAIL_ADDRESS>wrote:

If you are using SSLStrip, only POST requests will appear in the log &
console.
Answer no when mitmAP asks for using sslstrip, and than select mitmproxy
to view all of the http/https traffic.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/xdavidhu/mitmAP/issues/1#issuecomment-263422032, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AATKcYirXuM63e8kZry-20USQOOer1CAks5rC1yRgaJpZM4K-FcT
.


Interferometer monitor

This PR adds the panel for displaying the EM27 properties (the panel labelled "EM27 SOH Monitor" on the original GUI) which are scraped off the web server. There is currently placeholder functionality for polling the server and updating the GUI with the returned values.
It is currently compatible with the separate module I have been working on do the web-scraping, in that it expects the results in the same format. There will also need to be some functionality to listen for when the connection to the EM27 is opened. I am currently intending to achieve these via pubsub.
Force pushed as the branch was rebased, since I initially branched from the wrong place.
Closes #47.

Thanks @alexdewar and @dalonsoa for your feedback.
Yeah, it does feel strange having everything hard-coded. However, the order of the properties is the same as that on the webpage, which I assume is hardcoded - if this is indeed the case then the data_table will always look like that in the get_vals_from_server() function. Furthermore, the method calls in poll_server() make use of the property names ("PSF27 Temp", "Cryo Temp" etc.) rather than their row index, so they would always show values corresponding to the correct properties.
But yes, I'll have a look at how I can re-work some of this (a lot of it was written back in November 😬) and perhaps it'll be helpful if I include my web-scraping module here as well.

I assume the order will be hardcoded on the server too, though it is possible that we will connect to a different EM27 (i.e. one with different sensors or a different firmware version etc.) that produces a different output. @jonemurray did say that their old tool didn't work with someone else's EM27 box, so we want to make this one more robust if possible!
Even if we could be certain about the format we get the values in though, I'd still add the controls dynamically, as I think it'll make for cleaner code.

PS -- I'd submit the webscraper as a separate PR after this one, because I think this stands alone.

I assume the order will be hardcoded on the server too, though it is possible that we will connect to a different EM27 (i.e. one with different sensors or a different firmware version etc.) that produces a different output. @jonemurray did say that their old tool didn't work with someone else's EM27 box, so we want to make this one more robust if possible!
Even if we could be certain about the format we get the values in though, I'd still add the controls dynamically, as I think it'll make for cleaner code.

Yes, that's a good point

PS -- Just checking: have you got your pre-commit hooks installed? It looks like you had to fix something up for mypy, but pre-commit should be catching this.


TritonPart V2 codes (cleaned codes and timing-driven flow)  && Fixed the off grid issue of Hier-RTLMP

Hi Matt,
I have cleaned the codes of TritonPart and finish the timing driven feature.
Also, the off grid issue of Hier-RTLMP has been fixed.

Fixed.  Turn off CPLEX.
On Wed, May 10, 2023 at 4:33 PM Matt Liberty @.***>
wrote:

@.**** commented on this pull request.
In src/par/CMakeLists.txt
https://urldefense.com/v3/__https://github.com/The-OpenROAD-Project/OpenROAD/pull/3312*discussion_r1190475545__;Iw!!Mih3wA!HUunCNtpgZh1mGGDI7kQ_Y4SXmqbI6XFpk31OaqFl7KBn1vkbrswb_aiPNCp9jvnKQrqpp2hL7d7X359UyoRcaInvx0$
:

@@ -35,6 +35,18 @@

include("openroad")
+option(LOAD_CPLEX "Load CPLEX" ON)
You should either make this conditional on finding cplex or off by default.
—
Reply to this email directly, view it on GitHub
https://urldefense.com/v3/__https://github.com/The-OpenROAD-Project/OpenROAD/pull/3312*pullrequestreview-1421491528__;Iw!!Mih3wA!HUunCNtpgZh1mGGDI7kQ_Y4SXmqbI6XFpk31OaqFl7KBn1vkbrswb_aiPNCp9jvnKQrqpp2hL7d7X359UyoRYtIHgKQ$,
or unsubscribe
https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AQR3KJRX5FHWIIUM6UJCGXLXFQQUZANCNFSM6AAAAAAX37JY3I__;!!Mih3wA!HUunCNtpgZh1mGGDI7kQ_Y4SXmqbI6XFpk31OaqFl7KBn1vkbrswb_aiPNCp9jvnKQrqpp2hL7d7X359UyoR_-h3BXE$
.
You are receiving this because you authored the thread.Message ID:
@.***>

Hi Matt, I am not familiar with CMAKE file.
Could you please help me modify this file ?   I have give you access for
this repository,
Thanks,
Zhiang
On Wed, May 10, 2023 at 4:39 PM Matt Liberty @.***>
wrote:

@.**** commented on this pull request.
In src/par/CMakeLists.txt
https://urldefense.com/v3/__https://github.com/The-OpenROAD-Project/OpenROAD/pull/3312*discussion_r1190478252__;Iw!!Mih3wA!BKt_kGcaMvckVQ84aEMK0Jx1wOGyp6ReOMYA6FeeTsgi0z6t_uKNT0whSY0zct6tp-49MUsCBJC2UP1Qf1EYO0NKGYA$
:

@@ -35,6 +35,18 @@

include("openroad")
+option(LOAD_CPLEX "Load CPLEX" ON)
+if (LOAD_CPLEX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_MODULE_PATH               "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
set(CMAKE_CXX_FLAGS                 "${CMAKE_CXX_FLAGS} -DIL_STD -m64 -Wall -fPIC")
set(CMAKE_INCLUDE_SYSTEM_FLAG_CXX   "-isystem ")
set(LINKER_OPTIONS                  "-Wl,--export-dynamic")
find_package(Cplex)
include_directories(SYSTEM ${CPLEX_INCLUDE_DIRS})

Use target_include_directories(... SYSTEM ...
—
Reply to this email directly, view it on GitHub
https://urldefense.com/v3/__https://github.com/The-OpenROAD-Project/OpenROAD/pull/3312*pullrequestreview-1421494996__;Iw!!Mih3wA!BKt_kGcaMvckVQ84aEMK0Jx1wOGyp6ReOMYA6FeeTsgi0z6t_uKNT0whSY0zct6tp-49MUsCBJC2UP1Qf1EY0ce2maQ$,
or unsubscribe
https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AQR3KJWJ5E6WPLZ4VASWF7DXFQRMNANCNFSM6AAAAAAX37JY3I__;!!Mih3wA!BKt_kGcaMvckVQ84aEMK0Jx1wOGyp6ReOMYA6FeeTsgi0z6t_uKNT0whSY0zct6tp-49MUsCBJC2UP1Qf1EYQkBqgnA$
.
You are receiving this because you authored the thread.Message ID:
@.***>

Ok I'll fix it up.
Matt
On Wed, May 10, 2023 at 4:43 PM Zhiang Wang @.***>
wrote:

Hi Matt, I am not familiar with CMAKE file.
Could you please help me modify this file ? I have give you access for
this repository,
Thanks,
Zhiang
On Wed, May 10, 2023 at 4:39 PM Matt Liberty @.***>
wrote:

@.**** commented on this pull request.
In src/par/CMakeLists.txt
<
https://urldefense.com/v3/__https://github.com/The-OpenROAD-Project/OpenROAD/pull/3312*discussion_r1190478252__;Iw!!Mih3wA!BKt_kGcaMvckVQ84aEMK0Jx1wOGyp6ReOMYA6FeeTsgi0z6t_uKNT0whSY0zct6tp-49MUsCBJC2UP1Qf1EYO0NKGYA$>
:

@@ -35,6 +35,18 @@

include("openroad")
+option(LOAD_CPLEX "Load CPLEX" ON)
+if (LOAD_CPLEX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DIL_STD -m64 -Wall -fPIC")
set(CMAKE_INCLUDE_SYSTEM_FLAG_CXX "-isystem ")
set(LINKER_OPTIONS "-Wl,--export-dynamic")
find_package(Cplex)
include_directories(SYSTEM ${CPLEX_INCLUDE_DIRS})

Use target_include_directories(... SYSTEM ...
—
Reply to this email directly, view it on GitHub
<
https://urldefense.com/v3/__https://github.com/The-OpenROAD-Project/OpenROAD/pull/3312*pullrequestreview-1421494996__;Iw!!Mih3wA!BKt_kGcaMvckVQ84aEMK0Jx1wOGyp6ReOMYA6FeeTsgi0z6t_uKNT0whSY0zct6tp-49MUsCBJC2UP1Qf1EY0ce2maQ$>
,
or unsubscribe
<
https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AQR3KJWJ5E6WPLZ4VASWF7DXFQRMNANCNFSM6AAAAAAX37JY3I__;!!Mih3wA!BKt_kGcaMvckVQ84aEMK0Jx1wOGyp6ReOMYA6FeeTsgi0z6t_uKNT0whSY0zct6tp-49MUsCBJC2UP1Qf1EYQkBqgnA$>
.
You are receiving this because you authored the thread.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
https://urldefense.com/v3/__https://github.com/The-OpenROAD-Project/OpenROAD/pull/3312*issuecomment-1542939162__;Iw!!Mih3wA!EGjpSTjwYuz9E3YUdXU1M3tTxzc0P8g47fpBgr3jxzzpXBWjFKYxd_vk7DyoqkfAsnhGhGpV1embTd78Vznqk9_SmA$,
or unsubscribe
https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AAFZ5KTY325XTFV3FSGKAMDXFQRZTANCNFSM6AAAAAAX37JY3I__;!!Mih3wA!EGjpSTjwYuz9E3YUdXU1M3tTxzc0P8g47fpBgr3jxzzpXBWjFKYxd_vk7DyoqkfAsnhGhGpV1embTd78VznCzvkIvA$
.
You are receiving this because you commented.Message ID:
@.***>

Replaced by https://github.com/The-OpenROAD-Project-private/OpenROAD/pull/1718


Issue #42: nginx config generated by nginx-boot.sh does bogus 301 red…

Fixes Issue #42.
Modified nginx settings to enable correct redirects when using the -p argument in docker run.

This has only been tested locally right? Not as mapping to public port 80 on a server or inbetween a reverse proxy?
While it does fix the local issue you brought up(your PR should also update the description to add Fixes #42 btw, it will auto close it on merge and reference the PR in the related issue), I'm not sure of any potential gotchas switching from absolute to relative redirects.

I'll update the PR and #43 to make the cross references.
I thought a bit about how one tests an image.  I'm used to projects where you can do automated testing, and this one's a bit different, especially since it's specific to cases like using the image in local development.
Probably the best approach is to make the change a setting and put an environment variable in front of it, where port_redirect and absolute_redirect are set as was before and continues to be default behavior, and relative redirection is new behavior that the EV can set.
If this works for you, I'll go ahead and and do that, and modify README.md to document the new behavior.

It would be useful to know the use cases for these images.  I tested the most specific thing I could: does nginx on the image create an absolute ref in Location response header or not. An excellent question would be which use cases care about this, and which type of response they need.  Then you can do a simple table of who the setting is good for.

It would be useful to know the use cases for these images

I just have the ability to maintain this repo, presumably granted from earlier activity in 2018/2019.
I don't think this is really an official or endorsed image by Gatsby team, but a community maintained one that they've added under the organization umbrella for the community to collaborate on. Gatsby focuses on what they know best.
AFAIK, there isn't anything special about this image, a standard nginx server image should be fine, you can combine with a multi-stage build that has another image build your site and pull the build output from that into your final image.


Script to bulk update the country code of all addresses in leads matching a certain search query

bulk_update_address_countries.py
inputs:

api key
old country code
new country code
leads search query (defaults to * sort:created if none) -- can be coded in script since it's hard to pass complicated queries (e.g. quotes) to cli args

python cli script that takes these items as inputs. it should loop through each lead in the given search query, and if there are any addresses on that lead with the old country code then it should update the address with the new country code
Would also like a read-only preview mode of what will happen and then a --confirmed flag
@congocongo Can you work on this one after the other script?

@congocongo When do you think the script will be ready?

I did already.

Thanks! Didn't see it since it wasn't referenced here

Handled in #22


First column in CSV files cannot be seen due to GAM seeing additional characters in field name

I noticed the issue when trying to import classes and teachers into Google Classroom with commands such as:
gam csv TeachersToInsert.csv gam course ~Alias add teacher ~Teacher
GAM doesn't seem to be able to see the first column in any CSV file it processes as seems to see some strange characters before the first letter from the error message it gives:
ERROR: Header "Alias" not found in CSV headers of "ï»¿Alias,Teacher".
CSV contents:
Alias,Teacher
Course1<EMAIL_ADDRESS>
However it works and sees the Alias column if there is another one before it:
Dummy, Alias,Teacher
0, Course1<EMAIL_ADDRESS>
So it sees the first column name in the csv as ï»¿COLUMN_NAME rather than COLUMN_NAME.
This can be reproduced by creating a csv using notepad and attempting to reference the first column in a GAM command.
The workaround is to add a dummy column at the beginning of the CSV if needing to reference the first column.
I am using Windows 10 Insider Build 17627.

Robin,
What is your Gam version?
How did you create the CSV file?
I suspect that there is a UTF BOM on the from of the file.
Ross
On Mon, Mar 26, 2018 at 3:51 AM, Robin Wilson<EMAIL_ADDRESS>wrote:

I noticed the issue when trying to import classes and teachers into Google
Classroom with commands such as:
gam csv TeachersToInsert.csv gam course ~Alias add teacher ~Teacher
GAM doesn't seem to be able to see the first column in any CSV file it
processes as seems to see some strange characters before the first letter
from the error message it gives:
ERROR: Header "Alias" not found in CSV headers of "ï»¿Alias,Teacher".
CSV contents:
Alias,Teacher
Course1<EMAIL_ADDRESS>However it works and sees the Alias column if there is another one before
it:
Dummy, Alias,Teacher
0, Course1<EMAIL_ADDRESS>So it sees the first column name in the csv as ï»¿COLUMN_NAME rather than
COLUMN_NAME
This can be reproduced by creating a csv using notepad and attempting to
reference the first column in a GAM command.
The workaround is to add a dummy column at the beginning of the CSV if
needing to reference the first column.
I am using Windows 10 Insider Build 17627.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jay0lee/GAM/issues/710, or mute the thread
https://github.com/notifications/unsubscribe-auth/AIU8L4FN2oEfNeFgZ6acoM_ZO8kOqM8Iks5tiMhMgaJpZM4S66Hg
.

--
Ross Scroggs
<EMAIL_ADDRESS>

Robin,
Try: gam csv TeachersToInsert.csv charset utf-16 gam course ~Alias add
teacher ~Teacher
Ross
On Mon, Mar 26, 2018 at 8:05 AM, Ross Scroggs<EMAIL_ADDRESS>wrote:

Robin,
What is your Gam version?
How did you create the CSV file?
I suspect that there is a UTF BOM on the from of the file.
Ross
On Mon, Mar 26, 2018 at 3:51 AM, Robin Wilson<EMAIL_ADDRESS>wrote:

I noticed the issue when trying to import classes and teachers into
Google Classroom with commands such as:
gam csv TeachersToInsert.csv gam course ~Alias add teacher ~Teacher
GAM doesn't seem to be able to see the first column in any CSV file it
processes as seems to see some strange characters before the first letter
from the error message it gives:
ERROR: Header "Alias" not found in CSV headers of "ï»¿Alias,Teacher".
CSV contents:
Alias,Teacher
Course1<EMAIL_ADDRESS>However it works and sees the Alias column if there is another one before
it:
Dummy, Alias,Teacher
0, Course1<EMAIL_ADDRESS>So it sees the first column name in the csv as ï»¿COLUMN_NAME rather than
COLUMN_NAME
This can be reproduced by creating a csv using notepad and attempting to
reference the first column in a GAM command.
The workaround is to add a dummy column at the beginning of the CSV if
needing to reference the first column.
I am using Windows 10 Insider Build 17627.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jay0lee/GAM/issues/710, or mute the thread
https://github.com/notifications/unsubscribe-auth/AIU8L4FN2oEfNeFgZ6acoM_ZO8kOqM8Iks5tiMhMgaJpZM4S66Hg
.

--
Ross Scroggs
<EMAIL_ADDRESS>
--
Ross Scroggs
<EMAIL_ADDRESS>

Hello Ross
Thanks for the response, it looks like it is something to do with the encoding.
The GAM version is 4.40
If I run that command with UTF-16 I get this error:
gam csv TeachersToInsert4.csv charset utf-16 gam course ~Alias add teacher ~Teacher
Traceback (most recent call last):
File "gam.py", line 12881, in
File "gam.py", line 12120, in ProcessGAMCommand
File "gam.py", line 327, in init
File "gam.py", line 315, in next
File "codecs.py", line 630, in next
File "codecs.py", line 545, in readline
File "codecs.py", line 492, in read
File "encodings\utf_16.py", line 112, in decode
UnicodeError: UTF-16 stream does not start with BOM
[30160] Failed to execute script gam
However if I run with UTF-8 instead then it works.


Please provide example config.yml files using orbs

Describe Request:
As a new circleci user, I'd love to have an example config.yml (or a few) of how to use each orb.
Examples:
For example, I'm trying to use this orb and getting errors like Cannot find orb 'path-filtering' looking for job named 'path-filtering/filter'. This is after following your tutorial, and despite looking at your orb repository page, which tells me about the features of the orb, but doesn't show me exactly how to use it.

You can follow
https://support.circleci.com/hc/en-us/articles/10269416203163--Advanced-path-filtering-


This polyfill does not play nice with other Promise polyfills

Namely, it does not respect any attempts to patch its functions when creating new Promises within itself. I tried to apply Promise.prototype.finally and unhandledrejection event atop this polifyll and it produced really weird behaviour.
Simplified, this polyfill works basically like this:
class Constructor {
	// implementation
}
window.Promise = Constructor;

The two polyfills I mentioned and likely most others work (again, simplified to pseudo-code) either like this:
const originalThen = window.Promise.prototype.then;
window.Promise.prototype.then = () => {
	// do something extra
	originalThen.call(this);
}

or like this:
class PatchedPromise extends Promise {}
window.Promise = PatchedPromise

They do their part respecting original Promise implementation regardless of what it was. And they works fine with instances created with new Promise (class provided by es6-promise). I.e. new Promise(foo).finally(bar) works as expected.
However, most functions within es6-promise when creating new Promise instances use new Constructor instead on new Promise and these objects obviously do not have their methods patched by other polyfills. Static Promise.resolve being the most obvious example: https://github.com/stefanpenner/es6-promise/blob/master/lib/es6-promise/promise/resolve.js#L45 so  Promise.resolve().finally() throws since Constructor instance does not have finally property.
The cleanest solution is probably using new this.constructor instead of new Constructor

However, most functions within es6-promise when creating new Promise instances use new Constructor instead on new Promise

This should be fine, and also required to make subclassing work. Without subclassing in all those cases Constructor should === Promise

I tried to apply Promise.prototype.finally

Just tested this my self, and it seems to work fine.
const Promise = require('es6-promise').Promise

delete Promise.prototype.finally; // just in-case it exists (master has it, but we want the polyfill to work)

if (typeof Promise !== 'function') {
	throw new TypeError('A global Promise is required');
}

if (typeof Promise.prototype.finally !== 'function') {
	var speciesConstructor = function (O, defaultConstructor) {
		if (!O || (typeof O !== 'object' && typeof O !== 'function')) {
			throw new TypeError('Assertion failed: Type(O) is not Object');
		}
		var C = O.constructor;
		if (typeof C === 'undefined') {
			return defaultConstructor;
		}
		if (!C || (typeof C !== 'object' && typeof C !== 'function')) {
			throw new TypeError('O.constructor is not an Object');
		}
		var S = typeof Symbol === 'function' && typeof Symbol.species === 'symbol' ? C[Symbol.species] : undefined;
		if (S == null) {
			return defaultConstructor;
		}
		if (typeof S === 'function' && S.prototype) {
			return S;
		}
		throw new TypeError('no constructor found');
	};

	var shim = {
		finally(onFinally) {
			var promise = this;
			if (typeof promise !== 'object' || promise === null) {
				throw new TypeError('"this" value is not an Object');
			}
			var C = speciesConstructor(promise, Promise); // throws if SpeciesConstructor throws
			var handler = typeof onFinally === 'function' ? onFinally : () => {};
			var newPromise = Promise.prototype.then.call(
				promise,
				x => new C(resolve => resolve(handler())).then(() => x),
				e => new C(resolve => resolve(handler())).then(() => { throw e; })
			);
			return newPromise;
		}
	};
	Object.defineProperty(Promise.prototype, 'finally', { configurable: true, writable: true, value: shim.finally });
}

Promise.resolve().finally().finally().finally()

@l1bbcsg it would be helpful if an executing example of a problem could be provided, that way we can be sure to talk about the same thing.

I do expect issues to arise with the unhandledRejection stuff, and am tracking some of that over here: https://github.com/stefanpenner/es6-promise/issues/172

It seems I jumped to conclusions regarding finally. It does seem to work as expected.
It only adds a property to Promise constructor which is the same as Constructor, so no reason for it not to work now that I think of it. Sorry for consusion. I guess my problem with it was a bit deeper: I used its transpiled version and the other polyfill might have intervened – will investigate, but it should be safe to dismiss finally report, especially considering finally just landed to es6-promise.
The original issue still stands though I believe since unhandledrejection does suffer from this problem and any other attempt to inherit and redefine Promise should as well:
delete global.Promise;
global.Promise = require('es6-promise').Promise;

// The following is browser-unhandled-rejection/dist/bundle.es.js
// with contents of dispatchUnhandledRejectionEvent replaced with console.log
// for the purposes of testing since it relies on browser environment and won't work in node

var OriginalPromise = Promise;

/**
 * ES5 subclassing is used per:
 * https://github.com/rtsao/browser-unhandled-rejection/issues/1
 * https://kangax.github.io/compat-table/es6/#test-Promise_is_subclassable
 *
 * Adapted from: https://gist.github.com/domenic/8ed6048b187ee8f2ec75
 */
var InstrumentedPromise$1 = function Promise(resolver) {
  if (!(this instanceof InstrumentedPromise$1)) {
    throw new TypeError('Cannot call a class as a function');
  }
  var promise = new OriginalPromise(function (resolve, reject) {
    return resolver(resolve, function (arg) {
      OriginalPromise.resolve().then(function () {
        if (promise._hasDownstreams === undefined) {
          dispatchUnhandledRejectionEvent(promise, arg);
        }
      });
      return reject(arg);
    });
  });
  promise.__proto__ = InstrumentedPromise$1.prototype;
  return promise;
};

InstrumentedPromise$1.__proto__ = OriginalPromise;
InstrumentedPromise$1.prototype.__proto__ = OriginalPromise.prototype;

InstrumentedPromise$1.prototype.then = function then(onFulfilled, onRejected) {
  var next = OriginalPromise.prototype.then.call(this, onFulfilled, onRejected);
  this._hasDownstreams = true;
  return next;
};

function dispatchUnhandledRejectionEvent(promise, reason) {
  console.log('dispatchUnhandledRejectionEvent', promise, reason)
}

function needsPolyfill() {
  return typeof PromiseRejectionEvent === 'undefined';
}

function polyfill() {
  Promise = InstrumentedPromise$1;
}

function auto() {
  if (needsPolyfill()) {
    polyfill();
  }
}

// Test
auto();

// this triggers unhandledrejection event
new Promise((resolve, reject) => {
	reject('simple reject');
});

// this does not
Promise.reject('static reject');

Thanks. I agree, and your concerns are already tracked by:

https://github.com/stefanpenner/es6-promise/issues/172
https://github.com/stefanpenner/es6-promise/issues/70

Maybe this holiday season I'll have some cycles to improve these things.


MM: sp.obj_len should be in lbas

Signed-off-by: Joel Granados<EMAIL_ADDRESS>

Great catch merging.


[Rest Sever] job v2 get config api

Coverage decreased (-0.1%) to 53.254% when pulling<PHONE_NUMBER>52c966f0415df9e07af40fd9be0942 on qinsu/rest/v2 into e1b8f5d05bcdb260afd67189db7c64926072f8d2 on master.

Coverage decreased (-0.1%) to 53.254% when pulling<PHONE_NUMBER>52c966f0415df9e07af40fd9be0942 on qinsu/rest/v2 into e1b8f5d05bcdb260afd67189db7c64926072f8d2 on master.

Coverage decreased (-0.1%) to 53.254% when pulling<PHONE_NUMBER>52c966f0415df9e07af40fd9be0942 on qinsu/rest/v2 into e1b8f5d05bcdb260afd67189db7c64926072f8d2 on master.


Create DocumentSetTemplate sample

This is DocuemtnSetTemplate sample which leverages MVC template.

Hi @frankchen76, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;


sds: Factor out new function getServiceIdentitiesFromCert()

This PR factors out a new function called getServiceIdentitiesFromCert().
This, I believe shows clearly the purpose of it - to compute the Subject Alt Names for the MatchSubjectAltNames Envoy config.
I think the purpose of this block of code, prior to this PR, is lost in the sheer volume of code.

In this PR:

carved out a block of code into getServiceIdentitiesFromCert()
no functional code changes
removed switch / case -- using if / return instead - for simplicity (fewer indentations)
renamed errGotUnexpectedCertRequest to errCertMismatch for clarity
renamed getSubjectAltNamesFromSvcAccount to getSubjectAltNamesFromSvcIdentities for correctness

Codecov Report

Merging #3219 (c7e969c) into main (6681538) will decrease coverage by 0.16%.
The diff coverage is 92.85%.

@@            Coverage Diff             @@
##             main    #3219      +/-   ##
==========================================
- Coverage   66.42%   66.25%   -0.17%
==========================================
  Files         163      163
  Lines        7490     7495       +5
==========================================
- Hits         4975     4966       -9
- Misses       2488     2502      +14
  Partials       27       27

Flag
Coverage Δ

unittests
66.25% <92.85%> (-0.17%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/envoy/sds/response.go
90.17% <92.85%> (+0.45%)
:arrow_up:

pkg/configurator/validating_webhook.go
71.89% <0.00%> (-9.16%)
: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 6681538...c7e969c. Read the comment docs.