 If Mixer is restarted, if the UDS file is not removed mixer fails to start with Unable to initialize Mixer: unable to listen: listen unix /sock/mixer.socket: bind: address already in use

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: mandarjog
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

mixer/OWNERS [mandarjog]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Addresses #7050

/lgtm
On Fri, Jul 13, 2018, 5:19 PM codecov[bot]<EMAIL_ADDRESS>wrote:

Codecov https://codecov.io/gh/istio/istio/pull/7110?src=pr&el=h1 Report
Merging #7110 https://codecov.io/gh/istio/istio/pull/7110?src=pr&el=desc
into release-1.0
https://codecov.io/gh/istio/istio/commit/7515a884f2b9f6cdf8a4b3c587888e78c71bd477?src=pr&el=desc
will decrease coverage by 1%.
The diff coverage is 0%.
[image: Impacted file tree graph]
https://codecov.io/gh/istio/istio/pull/7110?src=pr&el=tree
@@             Coverage Diff              @@##           release-1.0   #7110    +/-   ##
============================================- Coverage           72%     72%   -<1%
Files              355     355
Lines            30230   30336   +106
============================================+ Hits             21691   21694     +3     - Misses            7635    7731    +96     - Partials           904     911     +7
Impacted Files
https://codecov.io/gh/istio/istio/pull/7110?src=pr&el=tree Coverage Δ
mixer/pkg/server/server.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-bWl4ZXIvcGtnL3NlcnZlci9zZXJ2ZXIuZ28= 93%
<0%> (-2%) ⬇
mixer/adapter/signalfx/cumulative.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-bWl4ZXIvYWRhcHRlci9zaWduYWxmeC9jdW11bGF0aXZlLmdv 72%
<0%> (-28%) ⬇
mixer/adapter/rbac/rbac.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-bWl4ZXIvYWRhcHRlci9yYmFjL3JiYWMuZ28= 11%
<0%> (-9%) ⬇
mixer/adapter/signalfx/metrics.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-bWl4ZXIvYWRhcHRlci9zaWduYWxmeC9tZXRyaWNzLmdv 37%
<0%> (-7%) ⬇
mixer/adapter/servicecontrol/reportprocessor.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-bWl4ZXIvYWRhcHRlci9zZXJ2aWNlY29udHJvbC9yZXBvcnRwcm9jZXNzb3IuZ28= 73%
<0%> (-7%) ⬇
mixer/adapter/servicecontrol/distValueBuilder.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-bWl4ZXIvYWRhcHRlci9zZXJ2aWNlY29udHJvbC9kaXN0VmFsdWVCdWlsZGVyLmdv 85%
<0%> (-7%) ⬇
mixer/adapter/fluentd/fluentd.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-bWl4ZXIvYWRhcHRlci9mbHVlbnRkL2ZsdWVudGQuZ28= 76%
<0%> (-6%) ⬇
...olarwinds/internal/papertrail/papertrail_logger.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-bWl4ZXIvYWRhcHRlci9zb2xhcndpbmRzL2ludGVybmFsL3BhcGVydHJhaWwvcGFwZXJ0cmFpbF9sb2dnZXIuZ28= 53%
<0%> (-6%) ⬇
pilot/pkg/serviceregistry/kube/queue.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-cGlsb3QvcGtnL3NlcnZpY2VyZWdpc3RyeS9rdWJlL3F1ZXVlLmdv 86%
<0%> (-3%) ⬇
galley/pkg/kube/listener.go
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree#diff-Z2FsbGV5L3BrZy9rdWJlL2xpc3RlbmVyLmdv 93%
<0%> (-2%) ⬇
... and 14 more
https://codecov.io/gh/istio/istio/pull/7110/diff?src=pr&el=tree-more
Continue to review full report at Codecov
https://codecov.io/gh/istio/istio/pull/7110?src=pr&el=continue.
Legend - Click here to learn more
https://docs.codecov.io/docs/codecov-delta
Δ = absolute  (impact), ø = not affected, ? = missing data
Powered by Codecov
https://codecov.io/gh/istio/istio/pull/7110?src=pr&el=footer. Last
update 7515a88...ceb9864
https://codecov.io/gh/istio/istio/pull/7110?src=pr&el=lastupdated. Read
the comment docs https://docs.codecov.io/docs/pull-request-comments.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/7110#issuecomment-404984033, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AJGIxpDCnRzcpNpWMEAlIMZXdG5JEJjkks5uGTkrgaJpZM4VPonB
.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: kyessenov, mandarjog
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

mixer/OWNERS [kyessenov,mandarjog]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

A bit ironic that code coverage is at 100% yet it seems to leak, OOM and doesn't restart :-)

Merging to unblock testing - I think test can be done in separate PR.

Doug, it does seem odd. ⭕ Ci lint passed though.

@geeknoid to get a unit test for this, we would need to either stub out syscalls (quite a bit of work), or create physical UDS sockets in a test which does not work on windows.

@sebastienvas How come a PR that regresses code coverage can be checked in? I thought we prevented this systematically?
@costinm Yes, 100% code coverage doesn't imply 100% defect free. But <100% code coverage implies ~100% there are defects.
@kyessenov A unit test can easily be constructor to verify that the new code path doesn't lead to failures. This can be done in a platform-independent way. Verifying that the semantic of this new code does what it should requires an integration test, which is a separable concern.
This failure mode seems to indicate a substantial flaw in the execution environment. The fact it's possible for one instance of the process to leave turd behind that prevent a subsequent instance of the process from running is broken. Is the solution to fix it in Mixer in this way, or should be this addressed outside of Mixer?

FWIW some very common code such as syslogd perform the same trick of
deleting UDS file before binding to it.
On Sun, Jul 15, 2018, 8:04 AM Martin Taillefer<EMAIL_ADDRESS>wrote:

@sebastienvas https://github.com/sebastienvas How come a PR that
regresses code coverage can be checked in? I thought we prevented this
systematically?
@costinm https://github.com/costinm Yes, 100% code coverage doesn't
imply 100% defect free. But <100% code coverage implies ~100% there are
defects.
@kyessenov https://github.com/kyessenov A unit test can easily be
constructor to verify that the new code path doesn't lead to failures. This
can be done in a platform-independent way. Verifying that the semantic of
this new code does what it should requires an integration test, which is a
separable concern.
This failure mode seems to indicate a substantial flaw in the execution
environment. The fact it's possible for one instance of the process to
leave turd behind that prevent a subsequent instance of the process from
running is broken. Is the solution to fix it in Mixer in this way, or
should be this addressed outside of Mixer?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/7110#issuecomment-405097885, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AJGIxsxUtDZwmaKJFRpefE845e7DS-hmks5uG1oEgaJpZM4VPonB
.

This is the standard way to deal with UDS, I will add unit test to bring up coverage.


Fix order of InlineHtml CHILD_NAMES

Closes #141

@felixfbecker,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by Microsoft. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

Hmm, I don't understand why the tests are failing. @roblourens ?


Test more throughly the VOT Trax client integration and evaluation on custom sequences

Include automatic workspace configuration/setup or create documentation of process required

Evaluation on custom sequences is described in VOT how to. The requirements are:
-Follow the VOT datasets sequence structure, a directory per sequence that meets the requirements:

format image file names with regex %08d.jpg
ground truth bounding boxes placed along with images and named groundtruth.txt
place the folder inside the sequence directory in the workspace
add the name of the sequence to the list.txt file in the sequence directory in the workspace

Clone the repo
git clone https://github.com/votchallenge/vot-toolkit
Switch to a tag expecting it to be stable code
git tag -l
git checkout vot2015-postchallenge
Follow the steps in [VOT how to](git clone https://github.com/votchallenge/vot-toolkit) to set the path and create a workspace (try with addpath of the vot repo)
The workspace creation will download the sequences and decompress them in the sequence subdirectory of the workspace, but if you already have the zip, you can do it beforehand to save the download
There is also a way to generate a bunch of simulations and save them in VOT structure, see 7cd79b5

Copy/link the file vot-toolkit/tracker/examples/native/vot.h to vot-toolkit/tracker/examples/native/vot.c and add the following lines to vot-toolkit/tracker/examples/native/build.sh
gcc -fPIC -I$TRAX_INCLUDES -L$TRAX_LIBRARY -DTRAX -ltraxstatic -g -c vot.c
gcc -shared -Wl,-soname,libvot.so -o libvot.so vot.o -L$TRAX_LIBRARY -DTRAX -ltraxstatic
Run build.sh to generate libvot.so and remember its path to use it on the evaluation
Run the Controller in the traxServer test type
time python -u tracking/Controller.py --testType traxServer --trackerModelPath [path] --serverPort 2501
If there are required arguments add them also, like specs at the time of this writing
For the VOT tracker config in the workspace use the following as command
python -u /home/fmpaezri/repos/localization-agent/tracking/Tester.py trax 2501


Propagate cachePolicy from URLSession to URLRequests

Description
When a new URLRequest is created in swift-openapi-urlsession it does not inherit cachePolicy from the URLSession provided in the Transport configuration.
Reproduction
swift-openapi-urlsession in URLSession+Extensions:27
let urlRequest = try URLRequest(request, baseURL: baseURL)

Package version(s)
1.0.2
Expected behavior
pass cachePolicy from URLSession to URLRequests
Environment
5.9
Additional information
No response

@theop-luma, are you saying that URLSession.requestCachePolicy is not being used for requests the URLSession is running? Do I understand correctly?
cc @guoye-zhang

Setting the cache policy on the request is only necessary if you need to override the policy of the session. Otherwise the session’s policy is used.

Thanks @guoye-zhang, that's what I assumed, so thanks for confirming.
@theop-luma can you clarify whether you're seeing the request not respect the session's cache policy?

Hmm I am seeing the request not respect the session's cache policy 🤔.
Also the URLRequest initializer seems to have a default cachePolicy, not seeing any documentation that the session's cache policy is preferred?
public init(url: URL, cachePolicy: URLRequest.CachePolicy = .useProtocolCachePolicy, timeoutInterval: TimeInterval = 60.0)

If you don’t set the property on the request, you can assume the session configuration value is used. This is true for other properties like allowsExpensiveNetworkAccess as well.
What do you mean by started directly from URLSession?

Hmmm.. I think you might be right. Having a bit of a hard time getting a clear repro of this, but will reopen if I have something more concrete! Thank you @guoye-zhang and @czechboy0


Update the example projects to use a workspace for doing in-tree builds

Using a workspace ensures that Realm and RealmSwift will be rebuilt when their source changes, while also building only the active architecture of the frameworks. It also makes for easier testing of changes against the example projects as the Realm framework source is directly accessible.

I tested the packaging changes locally with build.sh test-package-release with positive results.

that's... considerably nicer! Looks like it speeds up the CI jobs too since fewer architectures are built :+1: :100:

I'm not sure if it'll speed things up or not. With the existing approach, the CI jobs should already have the frameworks built so they shouldn't need to build anything as part of the examples. After this change the examples will have to build the Realm frameworks for a single architecture since the workspace uses a different build directory than build.sh. I couldn't find a good way to avoid that so I punted on it for now.

Ah, right that's a good point. Still a very clean win elsewhere.


CLI to allow conversion between database versions

Implemented migrate-data subcommand to create a new database version.
The --network context is needed. It's probably easiest to specify --config-file as part of the CLI like normal, then execute the migrate-data subcommand, so the path, eth1 contract etc can be read from the config file while the new database is being created.

cannot create a database instance of the same type currently.

prints status updates every 100k records, and also a count of rows moved for each column.

no data validation is performed, byte data is literally copied. This makes the move fairly fast.

if an existing beacon.old is found, the program will abort. Beacon.old is theoretically a real database that was working, so removing it might be dangerous.

if there's an existing beacon.new, it's cleaned up at the start of the process - this was likely an incomplete conversion.

if the subcommand completes successfully, the 'beacon' folder will be the new database type. 'beacon.old' will be the original database, and will need to be manually cleaned up by the user.  It shouldn't be cleaned up until the new database is verified to be ok.

the 'beacon' folder is impacted by this subcommand, but other folders (eg. validator are not touched).

fixes #3882
Signed-off-by: Paul Harris<EMAIL_ADDRESS>Documentation

[X] I thought about documentation and added the documentation label to this PR if updates are required.

Changelog

[X] I thought about adding a changelog entry, and added one if I deemed necessary.

for documentation:

shutdown teku
run the migrate-database subcommand with your other normal parameters. if you're using a config-file, just specify that.
answer 'yes' if you want to proceed
after migrating, start teku and make sure it's happy
if it's happy, cleanup the beacon.old folder.

build/install/teku/bin/teku --config-file ~/Library/teku/mainnet.yaml migrate-database
Current database path: ~/Library/teku/mainnet/beacon/db
Current Database Version: 5
Requested database version: LEVELDB2
A beacon.new folder will be created with the new database
If the data is moved successfully:
 - The existing beacon folder will become beacon.old
 - The beacon.new folder will become beacon (the active database)
 - Once the new database is tested successfully, you can remove the old database
This operation will need to happen while teku is not running.

Proceed with database migration (yes/no)?
yes
Opening original database...
Creating a new database...
Migrating data to the new database
copy variable MIN_GENESIS_TIME_BLOCK
copy variable LATEST_FINALIZED_STATE
copy variable BEST_JUSTIFIED_CHECKPOINT
copy variable GENESIS_TIME
copy variable WEAK_SUBJECTIVITY_CHECKPOINT
copy variable ANCHOR_CHECKPOINT
copy variable FINALIZED_CHECKPOINT
copy variable PROTO_ARRAY_SNAPSHOT
copy variable JUSTIFIED_CHECKPOINT
copy column STATE_ROOT_TO_SLOT_AND_BLOCK_ROOT
 => Inserted 40 entries...
copy column HOT_BLOCK_CHECKPOINT_EPOCHS_BY_ROOT
 => Inserted 71 entries...
copy column CHECKPOINT_STATES
copy column DEPOSITS_FROM_BLOCK_EVENTS
copy column HOT_BLOCKS_BY_ROOT
 => Inserted 71 entries...
copy column VOTES
 => Inserted 169,978 entries...
copy column HOT_STATES_BY_ROOT
 => Inserted 1 entries...
Copy column SLOTS_BY_FINALIZED_ROOT
 => Inserted 80,041 entries...
Copy column FINALIZED_STATES_BY_SLOT
 => Inserted 1 entries...
Copy column SLOTS_BY_FINALIZED_STATE_ROOT
 => Inserted 161 entries...
Copy column NON_CANONICAL_BLOCKS_BY_ROOT
Copy column NON_CANONICAL_BLOCK_ROOTS_BY_SLOT
Copy column FINALIZED_BLOCKS_BY_SLOT
 => Inserted 80,041 entries...
Swapping new database to be active
SUCCESS.
The original database is stored in: ~/Library/teku/mainnet/beacon.old
This can be removed once the new database has been verified.


[POC] lease lock per IP pool

This is a POC level code for changing lease/leaderElection usage by whereabouts from a global lease to a per pool lease.

What this PR does / why we need it:
This PR is related to #313 and is used as additional context on the potential changes proposed.

I'd say this makes sense without looking in detail !
Please be patient while we sort this out.
If you can, please rebase and ensure the tests are passing.
@xagent003 could you review ?

Hi @maiqueb I reviewed. the lease lock change looks good, but I'd like to understand the other change for moving around the overlappingranges code.
BTW we tested out this code and it does appear to improve performance.

Hi @maiqueb I reviewed. the lease lock change looks good, but I'd like to understand the other change for moving around the overlappingranges code.

@adrianchiris could you split this change to another commit and explain its goal in the commit msg ?

BTW we tested out this code and it does appear to improve performance.

Thank you @xagent003 . I really appreciate your help.


Broken page layout after reload

Environment
Docker
Version
0.15.3
Describe the problem
When I create a layout in edit mode, I save it and that's what it looks like:

However, if I reload the page, here's what it looks like:

The categories expand in size and some apps overlap.
The only workaround is to open edit mode and close it
Logs
No response
Context
No response
Please tick the boxes

[X] I confirm that I attached the proper logs
[X] I've read the docs
[X] I've checked for duplicate issues
[X] I've tried to debug myself

This is a known issue and will be fixed in 1.0 (see #1993 )


RuntimeError: Code execution is set to be run in docker (default behaviour) but docker is not running.

RuntimeError: Code execution is set to be run in docker (default behaviour) but docker is not running.
The options available are:

Make sure docker is running (advised approach for code execution)
Set "use_docker": False in code_execution_config
Set AUTOGEN_USE_DOCKER to "0/False/no" in your environment variables

This issue is solved by putting inside a .env  AUTOGEN_USE_DOCKER = "False"

This issue is solved by putting inside a .env AUTOGEN_USE_DOCKER = "False"


Document/automate how to migrate from a Wrangler 1 webpack_config / webpack integration to Wrangler 2

wrangler v2 deprecates the type and webpack_config configurations, and it's overall webpack integration story.

This has historically been a pain point both internally and externally. We haven't been able to update the webpack version (v4) because of breaking changes, and it scares away people from using wrangler in the first place.
The other two values for type - javascript and rust don't make much sense anymore since it's really the same thing backing it. And we're going to encourage development in multiple languages (Go, python, what have you) since we want to have the best wasm support ever.
Because we now ship esbuild, we can automatically provide support for a number of features  that bundlers are typically used for: modules, jsx, typescript, etc.

TODO: as part of the effort to be backward compatible, we should have a super low-effort transition guide to moving existing webpack projects to the new wrangler (ideally, we should be able to automate it with a single command/codemod).

So, since webpack_config is deprecated, what do I use?

I want wrangler use webpack on production mode

In Wrangler 2, we use esbuild to bundle the code into a single file (more or less) for uploading to Cloudflare.
So for the majority of cases this completely replaces the webpack bundling in Wrangler 1.
But if you really need to use webpack then our recommended approach is to add it as a prepublish step. There a many ways to implement that but here is one...
In package.json use:
"scripts" {
  "publish": "webpack && wrangler publish",
  "dev": "concurrently -p --kill-others \"webpack --watch\" \"wrangler dev\""
}

In Wrangler 2, we use esbuild to bundle the code into a single file (more or less) for uploading to Cloudflare. So for the majority of cases this completely replaces the webpack bundling in Wrangler 1. But if you really need to use webpack then our recommended approach is to add it as a prepublish step. There a many ways to implement that but here is one...
In package.json use:
"scripts" {
  "publish": "webpack && wrangler publish",
  "dev": "concurrently -p --kill-others \"webpack --watch\" \"wrangler dev\""
}

Never heard about esbuild before. I have some questions.
About esbuild....

Does it have Some kind of command that gives the same functionality as webpack's production mode?
Do you guys allow config customization for esbuild?
About the default behaviour of wrangler2...
What is the default index file  for wrangler2? wrangler2 publish throws errors.
How to set default wrangler2 index file. Previously custom webpack config file was used I think.
Can I you guys make wrangler2 save is output file? Like a customizable output path for testing it’s behaviour.
About development Pipeline...
I want to use Github Workflows for publishing my project. What Authentication method do you suggest? Surely wrangler2 login isn't an option. Or do you suggest Cloudflare API?

Does it have Some kind of command that gives the same functionality as webpack's production mode?

The output of esbuild is a bundled file where imports have been inlined (mostly) similar to webpack. Currently we are not minifying the output. What production mode features of webpack are you looking for here?

Do you guys allow config customization for esbuild?

For now we are treating the bundler as an internal implementation aspect of Wrangler 2. So at the moment we are not allowing the bundling to be extended. There is an issue to track this: https://github.com/cloudflare/wrangler2/issues/234.

What is the default index file for wrangler2?

There is no default index file for Wrangler 2. It must be configured...

How to set default wrangler2 index file.

You can specify the entry-point index file for a Worker in a variety of ways:

In wrangler publish and wrangler dev the first positional command line argument is the path to the index file.
If not provided at the command line, you can specify it in the wrangler.toml via the main property. This is tracked here: https://github.com/cloudflare/wrangler2/issues/575.

Can I you guys make wrangler2 save is output file? Like a customizable output path for testing it’s behaviour.

Currently we do not have a facility to save the output from the bundling to disk.
We would like to improve the testing and debugging story for Workers. There is this issue about improving debugging: https://github.com/cloudflare/wrangler2/issues/573
I want to use Github Workflows for publishing my project. What Authentication method do you suggest? Surely wrangler2 login isn't an option. Or do you suggest Cloudflare API?
If you are publishing from a CI where you cannot have an interactive login, you can currently specify an API token via the CLOUDFLARE_API_TOKEN environment variable.

Ok also I read esbuild docs. If you are using esbuild treating as an internal package then I guess it doesn’t honor esbuild features like browser parameter in package.json. Or, does it do since it’s being executed from the same path as the package.json file?

We pass all the options to esbuild programmatically, so it should not be reading anything from package.json. (And if it is then that is a bug!)

@touhidurrr this should be fixed via #759, can you let us know if the webpack plugin works as expected?

@touhidurrr this should be fixed via #759, can you let us know if the webpack plugin works as expected?

Dunno actually. Already moved to esbuild cause the build time is much faster than webpack. 😅

Closing this anyway. Thank you @caass!


[docs] Fix typo in default palette value

Just a simple typo fix 👍
"successs" -> "success"

[x] I have followed (at least) the PR section of the contributing guide.

@dbgb It's a great first pull request on Material-UI 👌🏻. Thank you for working on it!

Happy to help 😃 Thanks!


transfer stuck

i was sending a 484 MB big file from Chromium Version 46.0.2490.71 (64-bit) on OS X 10.9.5 to Firefox 43.0.4 on OS X 10.11.1.
after one hour its still the same status as some minutes after starting...

I've just started to get the same bug when transferring files from Chrome on Mac to Chrome on Android. Unfortunately, there's no error or anything on the Mac side that could suggest what's wrong, so finding out what's wrong might take a while, especially that I don't have much free time to work on it.

Same here from Firefox to Firefox under Linux.

I found out what the error was when sending to an Android device - it was caused by lack of free space on the device. Unfortunately, the app doesn't show any error in such case. I'm not sure if the error in your case was also caused by this.
I hope to add a check if browser has access to enough free space before starting the transfer, but unfortunately I don't have much free time, so it rather won't happen any time soon.

@szimek thanks for your response.
No, it's not a free space issue.
The transfer randomly stopped when I send  files bigger than a few MB (40MB for example). This happened even under LAN than WAN connections.

I'm using it to transfer files of size 100-200MB almost every day between MacBook Pro and Android tablet and it works fine. If you get this error again, can you check if there are any errors logged in the dev tools console on any device?

I found these three errors from the receiver side (none from the sender):

01:08:53.360 QuotaExceededError 1 vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:6:26869
2)
01:08:53.365 File error:  abort { target: IDBTransaction, isTrusted: true, currentTarget: IDBTransaction, eventPhase: 2, bubbles: true, cancelable: false, defaultPrevented: false, timeStamp:<PHONE_NUMBER>364265, originalTarget: IDBTransaction, explicitOriginalTarget: IDBTransaction, NONE: 0 } 1 share-drop-455507f8b14121a10f7593364cb4b9e1.js:1:29015 	n.prototype.errorHandler https://www.sharedrop.io/assets/share-drop-455507f8b14121a10f7593364cb4b9e1.js:1:29015 	n.prototype.append/</</</o.onerror https://www.sharedrop.io/assets/share-drop-455507f8b14121a10f7593364cb4b9e1.js:1:28365
3)
01:08:53.385 undefined 1 vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:2:247855 	s https://www.sharedrop.io/assets/vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:2:247855 	e.default.trigger https://www.sharedrop.io/assets/vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:5:10159 	f.prototype._onError/< https://www.sharedrop.io/assets/vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:5:16423 	r.prototype.invoke https://www.sharedrop.io/assets/vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:1:89893 	r.prototype.flush https://www.sharedrop.io/assets/vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:1:90427 	n.prototype.flush https://www.sharedrop.io/assets/vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:1:88459 	o.prototype.end https://www.sharedrop.io/assets/vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:1:92683 	s/e._autorun< https://www.sharedrop.io/assets/vendor-94f8e0b7be468df8a5ce14f5ae294b7e.js:1:92113

@githubtefo QuotaExceededError are errors caused by insufficient free disk space. Browser can't use all the available disk space. The amount it can use is calculated like this (at least for Chrome):

This is calculated from 20% (up to 4 GB) of 1/3 of the available disk space.

If you have 5GB free on your device, 1/3 of it is 1.6GB and 20% of it is ~320MB.

Thanks @szimek , I didn't know about the available disk space for the browser use.
Nevertheless, transfers of files smaller than the 20% of 1/3 of my available disk space also show the same error output.
Is there any way to change the available space for browser use?

You could try to clear all browsing data, but I don't know if it helps.
In Chrome you can also go to dev tools -> Application -> Clear storage -> click "Clear site data" button. In Firefox it's a bit different and described here. However, the app should delete any incomplete transfers when it starts to avoid using up free space available to it, so you shouldn't have to clear it manually.

I cleaned the site data on both sides, but it wasn't change. Anyway the storage Inspector doesn't show a huge list.

Are you using Chrome or Firefox? I'll try to implement this check for available space, but unfortunately it won't happen anytime soon, unless someone comes with a PR.

I'm using Firefox always (at least from one side). Yesterday I also tried with Chrome (Windows)/Firefox (Linux).

@githubtefo Can you try with Chrome on the receiving side and see if you also get this error?

@szimek , sorry for the delay.
Using Chrome (Win7) on the receiving side I can send a 300MB file without problems from Firefox 52 (Linux).

I couldn't find any mention of file size limit except what's mentioned here (20% of 33% of free disk space).  I've trying to receive a ~ 7GB file from another network where I have 160GB free and I'm using chrome on win8, sending side is firefox on win10.... it was going along pretty good, from "progress" circle it appears to have got 25% then just stopped.  console log doesn't show any quote exception... it looks like the connection was simply disconnected?  Here is console log
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3805 DOMException: Failed to set the 'binaryType' property on 'RTCDataChannel': Blob support not implemented yet
at https://www.sharedrop.io/assets/vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3805:171
at https://www.sharedrop.io/assets/vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3806:279
at https://www.sharedrop.io/assets/vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3892:117
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:105 Peer:	 State has changed:  idle
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:152 Room:	 Connecting to:  6557ca2f-5076-4ea1-aefc-e95d1178d5d8
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:152 Firebase: (Re)Connected
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:153 Room:	 user_added:  Object
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:152 Firebase: User added to the room
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:153 Room:	 user_added:  Object
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:105 Peer:	 State has changed:  idle
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:105 Peer:	 State has changed:  has_selected_file
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Creating RTCPeerConnection.
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Listening for ICE candidates.
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Listening for negotiationneeded
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Listening for data channel
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Listening for remote stream
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:161 Peer:	 Opening data channel connection... o
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:105 Peer:	 State has changed:  establishing_connection
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  negotiationneeded triggered
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Created offer.
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Set localDescription: offer for: a6572620-2cdb-11e9-9191-7b997396198b
2vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Received ICE candidates for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Setting remote description RTCSessionDescription
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Set remoteDescription: ANSWER for: a6572620-2cdb-11e9-9191-7b997396198b
3vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Added ICE candidate for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Data channel connection success
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:160 Peer:	 Data channel connection opened:  o
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:105 Peer:	 State has changed:  awaiting_response
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:66 Sending a file info... Object
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:70 Peer:	 Received file response Object
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:105 Peer:	 State has changed:  receiving_file_data
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:168 Peer:	 File response:  Object
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:76 Peer:	 Sent file Object
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:105 Peer:	 State has changed:  idle
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  ICE connection state is 'disconnected', closing connections to a6572620-2cdb-11e9-9191-7b997396198b
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:160 Peer:	 Data channel connection error Error: ICE connection state is 'disconnected'
at RTCPeerConnection.t.oniceconnectionstatechange [as onicechange] (vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3877)
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Cleaning up PeerConnection to a6572620-2cdb-11e9-9191-7b997396198b
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:161 Peer:	 P2P connection closed:  o
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  DataChannel closed for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Event
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Creating RTCPeerConnection.
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Listening for ICE candidates.
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Listening for negotiationneeded
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Listening for data channel
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Listening for remote stream
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Setting remote description RTCSessionDescription
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:161 Peer:	 Opening data channel connection... o
2vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Added ICE candidate for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Set remoteDescription: OFFER for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Created answer.
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Set localDescription: answer for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Received ICE candidates for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Added ICE candidate for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Received ICE candidates for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Received data channel
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Data channel connection success
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:158 Peer:	 Data channel connection opened:  o
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:68 Peer:	 Received file info Object
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:105 Peer:	 State has changed:  received_file_info
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:164 Peer:	 File info:  Object
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:105 Peer:	 State has changed:  sending_file_data
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  ICE connection state is 'disconnected', closing connections to a6572620-2cdb-11e9-9191-7b997396198b
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:158 Peer:	 Data channel connection error Error: ICE connection state is 'disconnected'
at RTCPeerConnection.t.oniceconnectionstatechange [as onicechange] (vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3877)
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Cleaning up PeerConnection to a6572620-2cdb-11e9-9191-7b997396198b
share-drop-4a2284aff1d8e3e4885d2450a23abe62.js:161 Peer:	 P2P connection closed:  o
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  DataChannel closed for: a6572620-2cdb-11e9-9191-7b997396198b
vendor-6deb0f828efb7a002b3c4761e62c6e4d.js:3803 PeerJS:  Event

I wanted to add a check that would run after file info is exchanged, to see if there's enough free space available to the browser on the receiving device, but never really had time to do it. The API also allows to request more space, but that would probably trigger some permission dialog in a browser.
That said, I'm not really sure if it was the reason it failed here. I've only tried it with files up to 1.5GB and that was between laptops.

Getting a similar error on a 4Gb file today despite trying twice. Transfer works like a charm, all 4Gb seem to arrive on my machine (transferring from Chrome 73.0.3683.103 Mac to same version on Windows) but when comes the moment of downloading from filesystem:https://www.sharedrop.io/temporary/1555332641846-file.zip chrome gives me an instant Failed - Network Error because indeed the file is nowhere to be found in my AppData Chrome folder...
I have plenty of available space, maybe a limitation in chrome ?


this is a bug!

https://github.com/efficiently/authority-controller/blob/ea9d1fc8817222202f9b0657ea294cb59eb9018d/src/Efficiently/AuthorityController/Authority.php#L63

Hi @Yahasana,
Thank you for reporting this issue, but can you explain your problem with some samples?
And eventually send a pull-request to fix it?
Have a good day,
Tortue Torche


Signals evolution

Change signal handler signatures to take all wrapper types by reference
Change the first argument of all signal handlers to &Self

Weird PR. Github doesn't appreciate your commits it seems.

I may have rebased incorrectly

Looks like the module is too big for github to show the diffs :disappointed:


Add gradient_checkpointing field to loading configuration for audio-classification

What does this PR do?
https://huggingface.co/facebook/wav2vec2-base/blob/main/config.json model has gradient_checkpointing set to True. Ideally we would expect this to be overriden by training_args.gradient_checkpointing value (default is False), but this is not happening when executing run_audio_classification.py (perhaps because directly setting gradient_checkpointing from training_args has been deprecated in transformers).
To fix this issue, added gradient_checkpoiting as part of fields being updated  when loading config (using AutoConfig.from_pretrained). Confirmed from PT profiler traces that gradient_checkpointing is not getting activated with this change.  As expected small improvement in performance is also seen with this change.

Fixes # (issue)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

@regisss please help review and submit (if it looks good).

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

@regisss I will try out change you have suggested in GaudiTrainer and upload a new patch if that works. Thanks.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

Discarding this PR and moving changes to new one https://github.com/huggingface/optimum-habana/pull/484


File Attachment

Getting empty Response when we attach a file.Here is sample code.Can anybody help
attachment_object = at.atws.new('Attachment')
attachment_object.Data = open('test/index.txt', 'rb').read()
attachmentInfo = at.atws.new('AttachmentInfo')
attachmentInfo.id = 0 # ticket to update
attachmentInfo.ParentID = 11881 # ticket to update
attachmentInfo.ParentType = 4 # ticket type
attachmentInfo.Type = "FILE_ATTACHMENT"
attachmentInfo.Title = "Ticket Test"
attachmentInfo.FullPath = "test/index.txt"
attachment_object.Info = attachmentInfo
print(at.atws.CreateAttachment(attachment_object))

@natchu in #65 (comment)

I don't know for sure, and I can't test it, but I'm pretty sure that needs
to be a base64 encoded string for the attachment.
On Wed, 23 Dec 2020, 9:53 am kranthiGaddam<EMAIL_ADDRESS>wrote:

@natchu https://github.com/natchu in #65
https://github.com/MattParr/python-atws/issues/65 (comment)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/MattParr/python-atws/issues/85#issuecomment-749770588,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABIM745BGZKLBAUO2SRXNT3SWEBK5ANCNFSM4VGDM4EA
.


On preview.dune.build the web developer console displayes various warnings

See attached screenshot:

Partially fixed by #66

Yes, we can. We will reopen if it happens again.


Go method samples should be in a unique package

NewClient should be called on the package name so users can copy paste code. The issue right now is the generator doesn't know the full import path.

Copy/paste is a high bar. Usually when Go programmers read snippets and
examples, they understand that those are part of the same as the package
being documented, and they adjust.
If you want to support copy/paste, you may not be able to use the Example
feature of Godoc.
On Thu, May 12, 2016 at 6:10 PM Sai Cheemalapati<EMAIL_ADDRESS>wrote:

NewClient should be called on the package name so users can copy paste
code. The issue right now is the generator doesn't know the full import
path.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/googleapis/toolkit/issues/105

@jba Is it? Examples that I've seen seem to be in their own packages, like https://golang.org/pkg/strings/#example_Contains . Did I misunderstand you?

I didn't know about this feature (near the end of https://golang.org/cmd/go):
"The entire test file is presented as the example when it contains a single
example function, at least one other function, type, variable, or constant
declaration, and no test or benchmark functions."
On Fri, May 13, 2016 at 5:01 PM Michael Darakananda <
<EMAIL_ADDRESS>wrote:

@jba https://github.com/jba Is it? Examples that I've seen seem to be
in their own packages, like
https://golang.org/pkg/strings/#example_Contains . Did I misunderstand
you?
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/googleapis/toolkit/issues/105#issuecomment-219158217

Any strong opinion on this?
The functionality is there for the test to import the actual package, so I can implement if there's consensus.

OK, found the key line in the doc of the go command: 'Test files that declare a package with the suffix "_test" will be compiled as a separate package, and then linked and run with the main test binary.'
So do that. Also search in https://golang.org/cmd/go/ for "An example function" and follow the rules there.
You should end up with copy/paste-able examples integrated into the godoc.


FR: Be able to apply a colorFilter to a Widget

I want to be able to turn a given widget into a certain color similar to how you can do this with Images.

Probably means exposing SceneBuilder.pushColorFilter.
We should probably have a generic way to let you push a custom Layer, actually...

@apwilson would kinda like to have this, but it's not high priority.

Moving to M3 if not a high priority.

We have pushColorFilter now, so this is just a matter of adding a widget. This should be relatively simple to do. It is not on our short-term priority list.

Took a look at this today and ran into the issue fixed in https://github.com/flutter/engine/pull/4782. Going to work on some M3 bugs in the meantime

Hey,
I'm not sure whether I understand the issue correct, but I wanted to dig a bit deeper into the Flutter rendering stuff and tried working on something like that.
Would my implementation of a ColorFilterWidget be sufficient for this issue, or is this issue about something else?
You can see my implementation here
I also provided an example in case you're interested.
Had fun working on it, not sure how useful it is or whether it can solve this issue. :D

I think SceneBuilder.pushColorFilter should receive colorfilter to support colorfilter.matrix

@lethehaiau I've broken that out into #35415

I also wrote a ColorFiltered widget when investigating #35415 before I found this bug; it is similar to Patte1808's ColorFilterWidget. Here's the code for it in case it's useful to someone.
https://gist.github.com/collinjackson/49c77ab2f68275e68f12e481c52eefd0

customer: octopod wants this.

Thanks @collinjackson  - I independently arrived at very similar code, incorporated some similarities in the linked PR


Port to 1.12.1

Changelog:

Complete port to Minecraft 1.12.1! Fixed all porting errors. Removed TConstruct and EnderIO support (until they are updated). Updated to support JEI 1.12.1 and HWYLA 1.12.
Successfully ported as far as current testing has gone.

TConstruct is on 1.12 which is fully compatible with 1.12.1

Removed TConstruct and EnderIO support (until they are updated).

I've been running TConstruct in a 1.12.1 modpack for a while now. Is
there something specific you're missing from them?


Build fixes

The first commit in this PR allows using a current version of ImGui. The remaining commits fix warnings when compiling with higher warning levels using gcc and MSVC.

Thank you! Merged


-r safe argument added

Added argument that allows me to treats compiler warnings as errors. We use yara to scan files with 1 big rule file. Rules can be added to this file by many users and we want to prevent users from breaking the file / hurting scan performance.

Implemented in 00f3e1a80876a638ec9288a455c42c441d5a7c37 without changing the API


[release/v1.27] fix vSphere client not using the provided custom CA bundle (#969)

What this PR does / why we need it:
Backport of original #969
Optional Release Note:

Fixed vSphere client not using the provided custom CA bundle (#969)

/override pull-machine-controller-e2e-azure


codecov > 70%

Detailed Description
Nice to get codecov greater than 70%

@jacobbieker happy to discuss if it should be a different number

Yeah, I'll try to get it up to that, I need to think about it some more. Test coverage should be higher though than it is definitely.

There is an open issue about adding unit tests, which basically amounts to the same thing: https://github.com/openclimatefix/Satip/issues/9 .
I would be a taker for a few unit tests, so if any of you with more experience with the code would point me at some likely candidates, I would be grateful.

Awesome! That would be great! Thanks. A few good ones for the unit tests I think would be making unit tests out of the parts of scripts/generate_test_plots.py as there is an end to end test with the plots, but no actual unit tests for the individual parts. Additionally, especially testing the jpeg_xl_float_with_nans and scale_to_zero_to_one functions as they are quite important for creating the zarrs and making sure the data is saved with minimal changes

Hi guys, sorry for the radio-silence, but Covid hit me hard and it took me some time to get back up again + holidays, so this was delayed more than I would have liked.
@jacobbieker I am having troubles with the eccodes when testing the downloading and conversion as applied in the generate_test_plots-script. I dimly remember that the test setup does not have all libraries installed per requirements.txt and maybe this could be connected?
Failed tests for reference: https://github.com/openclimatefix/Satip/runs/5968233754?check_suite_focus=true

No worries! Hope you are feeling all better now.
Yeah, eccodes isn't included by default, I think the easiest way is to conda install it, as it has a binary dependency. The workflow for the plot generation script includes all the required dependencies to run satip end to end though.

Yes, thanks, everything back to normal.
After you mentioned the conda-install, I checked the Dockerfile and indeed, that is where the missing packages are installed. Makes sense now. However, then I am quite baffled by the error. I will take the liberty to @ you over in the draft-PR to get your insights on that. Might be that you ran into that before.

@jacobbieker should we keep this open? I reckon it just closed as it was linked with PR #102

Yeah, we should leave it open, it's mostly to above 70 percent now though!

I would vote to close it, though, as with the current setup, 70% coverage overall are not feasible (see description of PR #102 ).
The uncovered code-parts are all about downloading or chunking up large downloaded datasets. Downloading is covered via scripts/generate_test_plots.py and chunking up large downloaded datasets is not realistically testable on a regular basis.
So to me, this means that the cost is tested well enough and this issue if not closed will stay open forever as one of those zombie-issues that get never touched.

Should we write a test that tests the downloading, perhaps mock the actual download with some data?
I know 70% is a bit of random number, and we dont have to do that. But if there are bits of code untested, then I think we should aim to cover them
https://app.codecov.io/gh/openclimatefix/Satip/branch/main

I though about mocks myself, but I don't think that this would help.
The non-tested code's functionality is mostly about storing and transforming the downloaded files, which is where things can go wrong if formats in the libs or eumetsat's API changes. Mocks would make it such that we effectively test a few if's and else's, but not what the code in there actually does.
The simple download-functionality itself is covered by scripts/generate_test_plots.py, though that does not show up in the coverage report, which I don't mind, personally.
For some of the tests I created mock data to test the transformations, where I saw a sensible way which would be in line with the intentions of unit-tests. Did not see a way for the still un-tested code parts, but if you have an idea, I am all ears.

It actually is above 70% now, so closing this.


Could you add "gpt-4-1106-preview" in the model selection? <3

*or maybe gpt-4-vision-preview, that we can work with the new capability of adding pictures

afded


Accessing headers X-Slack-Retry-Num in AwsLambdaReceiver

Description
Hi, I want to access the headers.['X-Slack-Retry-Num'] and headers.['X-Slack-Retry-Reason'] so we can skip over certain retries (we've been getting duplicate requests from not taking too long in our processes to respond). But don't know how to do so, I've tried adding the customPropertiesExtractor as a property but it did not work / not sure if it's even valid for the lambda receiver. We need to get those properties in in app.event. Our set up is below
What type of issue is this? (place an x in one of the [ ])

[ ] bug
[ ] enhancement (feature request)
[x] question
[ ] documentation related
[ ] example code related
[ ] testing related
[ ] discussion

Requirements (place an x in each of the [ ])

[x] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've searched for any related issues and avoided creating a duplicate issue.

Reproducible in:
package version:
"@slack/bolt": "^3.10.0",
"aws-lambda": "^1.0.6",
"aws-sdk": "^2.433.0",
node version: 16.15.0
Attachments:
export const awsLambdaReceiver = new AwsLambdaReceiver({
    signingSecret: SECRET,
    processBeforeResponse: true,
    // adding this didn't seem to work
    // customPropertiesExtractor: (req: any) => ({
    //     headers: req.headers,
    // }),
});

export const app = new App({
    token: TOKEN,
    receiver: awsLambdaReceiver,
    logLevel: LogLevel.DEBUG,
    processBeforeResponse: true,
});

app.event('emoji_changed', async ({
    event, body, client
}: any) => {
// ... business logic where event.headers and client.headers are empty
})

module.exports.handler = async (event: any, context: any, callback: any) => {
    console.debug('Event:', event);
    console.debug('Context:', context);

    const handler: APIGatewayProxyHandler = await app.start();
    return handler(event, context, callback);
};

Hi @genevahd, thanks for asking the question! Regardless of the receiver you use, you can access the retry-num and retry-reason via context object as below:
app.event("app_mentioned", async ({ context }) => {
  context.retryNum;
  context.retryReason;
});

I hope this helps! If everything is clear now, would you mind closing this issue?

Thank you!


Discord webhook support for posting found items

Support for simple discord webhook for posting found items to a channel, with an option to filter the items to post

Really nice addition, but we already have a discord implementation, although it's not this easy to set up. We'll discuss it internally if we want to have both implementations, just one and which one.
Thank you for the contribution <3


feat: QA automation yml

Resolves https://github.com/ubiquibot/QA-Improvements/issues/1

@pavlovcik , @0xcodercrane . Could you review this one?

@wannacfuture would you let us know when it is ready? I can see the commits you pushed after the review request. Please ping us again for the confirmation.

Ready for review.

Can you post proof that this works as expected? I couldn't find any on your fork.

Can you post proof that this works as expected? I couldn't find any on your fork.

It worked.(I remember I have sent the video in my intro group chat.😉 https://t.me/c/1963922864/43 )
https://github.com/wannacfuture/Battleship/blob/main/.github/workflows/pr_reviewer_changed.yml
I only want to know that the github token which I'm currently using in the yml of this pr is correct.
Looking forward hearing from you.

I only want to know that the github token which I'm currently using in the yml of this pr is correct.
Looking forward hearing from you.😊

So @0xcodercrane we should make a tightly scoped token for the bot to be able to edit the projects right?

I only want to know that the github token which I'm currently using in the yml of this pr is correct.
Looking forward hearing from you.😊

So @0xcodercrane we should make a tightly scoped token for the bot to be able to edit the projects right?

yes. but lets see how it goes with app token

I just checked and looks like we would need to create a brand new app in order to modify permissions. I don't see how we can make an access token with scoped permissions.


Insiders broke webview copy permissions again

Copy in Luna Paint doesn't work, paste works fine.

Version: 1.59.0-insider (user setup)
Commit: 9520f0a515e7e24802c92f885a0efb242fca3831
Date: 2021-07-14T07:15:41.024Z
Electron: 13.1.6
Chrome: 91.0.4472.124
Node.js: 14.16.0
V8: 9.1.269.36-electron.0
OS: Windows_NT x64 10.0.19042

Thanks for the quick fix


I have messed up - ran cloudcutter with wrong device id. Now can't re-run due to keys

I have an Arlec PCA191 Series 2. I mistakingly ran the 1.3.5 patch instead of the 1.1.8 and also didn't realise I had to select the esphome firmware.
I am trying to re-run but keep getting this:
Decryption failed due to padding error with key choice TuyaCipherKeyChoice.AUTHKEY. Retrying with other key choice
Decryption failed due to padding error with key choice TuyaCipherKeyChoice.SECKEY. Retrying is false - bailing out

The device is currently connected to my wifi network (ran sudo ./tuya-cloudcutter.sh -s xxx xxxx initially)
I figured I could go back and find the authkey, uuid and pskkey from the "configued-devices" file from the first run. This didn't work:
xxxx@raspberrypi:~/tuya-cloudcutter $ sudo ./tuya-cloudcutter.sh -r -v -a "aCF3tmQ6kpHyMltq" -u "9n3IX9dGj2P9" -k "JCDsJG3AxDkDQVWV"
Building cloudcutter docker image
[+] Building 1.2s (13/13) FINISHED                                                                                docker:default
 => [internal] load build definition from Dockerfile                                                                                0.1s
 => => transferring dockerfile: 462B                                                                                0.0s
 => [internal] load .dockerignore                                                                                0.0s
 => => transferring context: 2B                                                                                0.0s
 => [internal] load metadata for docker.io/library/python:3.9.18-slim-bullseye                                                                             0.9s
 => [internal] load build context                                                                                0.0s
 => => transferring context: 3.02kB                                                                                0.0s
 => [base 1/2] FROM docker.io/library/python:3.9.18-slim-bullseye@sha256:9874a82704a8920109d161deb1f8560666945787fa9ee046e00caf5505ae04f1                  0.0s
 => CACHED [base 2/2] RUN apt-get -qq update && apt-get install -qy --no-install-recommends git hostapd rfkill dnsmasq build-essential libssl-dev iproute  0.0s
 => CACHED [python-deps 1/4] RUN pip install --upgrade pipenv                                                                                0.0s
 => CACHED [python-deps 2/4] COPY src/Pipfile /src/                                                                                0.0s
 => CACHED [python-deps 3/4] COPY src/Pipfile.lock /src/                                                                                0.0s
 => CACHED [python-deps 4/4] RUN cd /src && PIPENV_VENV_IN_PROJECT=1 pipenv install --deploy                                                               0.0s
 => CACHED [cloudcutter 1/2] COPY src /src                                                                                0.0s
 => CACHED [cloudcutter 2/2] WORKDIR /src                                                                                0.0s
 => exporting to image                                                                                0.0s
 => => exporting layers                                                                                0.0s
 => => writing image sha256:8d0782000138dd74f1c46faa023537f3e22779a56abb5dd892071c210f6f45e8                                                               0.0s
 => => naming to docker.io/library/cloudcutter                                                                                0.0s
Successfully built docker image
1) Detach from the cloud and run Tuya firmware locally
2) Flash 3rd Party Firmware
[?] Select your desired operation [1/2]: 2
Loading options, please wait...
[?] How do you want to choose the device?: By manufacturer/device name
 > By manufacturer/device name
   By firmware version and name
   From device-profiles (i.e. custom profile)

[?] Select the brand of your device: Arlec
   Alantop
   Aldi
   Alic
   Amico
   Antela
   Aoycocr
 > Arlec
   Atarm
   Athom
   Atomi
   Aubess
   Avatar
   Avatto

[?] Select the article number of your device: PC191HA Smart Plug BK7231N v1.1.8
   ALD092CHA CCT Downlight
   ALD095HA RGBCT Downlight
   ALP223HA Desktop Bar Light Twin Pack
   GLD12x HA Series 2 RGB E27 Bulb
   GLD130HA
   Grid Connect GLD132HA Bulb
 > PC191HA Smart Plug BK7231N v1.1.8
   PC191HA Smart Plug BK7231T v1.3.5
   PC193HA Smart Plug With USB
   RGB B22 Bulb

[?] Select the firmware version and name: 1.1.8 - BK7231N / oem_bk7231n_plug
 > 1.1.8 - BK7231N / oem_bk7231n_plug

Performing safety checks to make sure all required ports are available
Checking UDP port 53... Available.
Checking UDP port 67... Available.
Checking TCP port 80... Available.
Checking TCP port 443... Available.
Checking TCP port 1883... Available.
Checking TCP port 8886... Available.
Safety checks complete.

[?] Select your custom firmware file for BK7231N chip: ESPHome-Kickstart-v23.08.29_bk7231n_app.ota.ug.bin
 > ESPHome-Kickstart-v23.08.29_bk7231n_app.ota.ug.bin
   OpenBeken-v1.17.262_bk7231n.ug.bin

Selected Device Slug: arlec-pc191ha-smart-plug-bk7231n-v1.1.8
Selected Profile: oem-bk7231n-plug-1.1.8-sdk-2.3.1-40.00
Selected Firmware: ESPHome-Kickstart-v23.08.29_bk7231n_app.ota.ug.bin
Using AuthKey aCF3tmQ6kpHyMltq , UUID 9n3IX9dGj2P9 , and PSKKey JCDsJG3AxDkDQVWV
Writing deviceconfig file...
usage: cloudcutter write_deviceconfig
       [-h]
       [--output-directory OUTPUT_DIRECTORY]
       [--deviceid DEVICE_ID]
       [--localkey LOCAL_KEY]
       --authkey
       AUTH_KEY
       --uuid
       UUID
       --pskkey
       PSK_KEY
       profile
       verbose_output
cloudcutter write_deviceconfig: error: argument --authkey: invalid check_arg value: 'aCF3tmQ6kpHyMltq'
Oh no, something went wrong with running the exploit! Try again I guess...

Contents of configured-devices/9n3IX9dGj2P9.deviceconfig (this was the initial successful cloudcutter run)
{"uuid": "9n3IX9dGj2P9", "auth_key": "aCF3tmQ6kpHyMltq", "local_key": "JCDsJG3AxDkDQVWV", "sec_key": "diMVubWuN68O4VWG", "device_id": "LWvjahLcpv7oEg7NxBBy", "chip_family": "BK7231T", "profile_name": "1.3.5 - BK7231T / oem_bk7231s_dltj", "device_slug": "arlec-pc191ha-smart-plug-bk7231t-v1.3.5"}
Is it bricked???!!!

Don't run with -a or -u, those are only for very specific cases.  You originally attempted an exploit, and those were the values it tried to set and failed, they aren't valid values.  For the regular process, it will generate new ones each time, and if successful use the generated ones.  -a and -u are for skipping the exploit step, which you don't want or need to do in this case.

No, it is not bricked, just run it again without those parameters.

To clarify, it sounds like you ran the 1.3.5 for BK7231T and it worked.  1.3.5 on T is not patched.  1.3.5 on N is patched.
It sounds like 1.3.5 T is what your device actually is.

I will try the 1.3.5 ESPHome firmware flash again...

That worked!


Differences to bs2b?

Hi!
Thanks for sharing this as software libre. For people who know bs2b it would be cool to understand how different or similar LCC is. Would be great to have in the readme.
Thanks and best, Sebastian

bs2b sounds completely different than LCC. Please see our white papers to learn more. bs2b sounds like a headphone product.

I don't understand the language that the papers use. I guess I misread "your left ear hears the left channel of audio, and your right ear hears the right channel of audio" to the opposite which is why it sounded like bs2b to me: It mixes a bit of the right back into the left channel and vice versa. Alright, I'll close the ticket.


Append backups to existing entries

Add a switch to disable replacing all current entries when importing a backup and append them instead.

Implemented in 6fb96e18a91cb940e4729b46f943746d45dc9fb5, forgot to add the comment to close this issue.


from field is always zero when using expressions parameter

Hello!
I'm trying to use this binding in lua and don't quite understand, why it is working differently in following cases.
There is a code sample
local luahs = require("luahs")
local db = luahs.compile {
    expression = '(foo).{1,20}bar',
    flags = luahs.pattern_flags.HS_FLAG_SOM_LEFTMOST,
    mode = luahs.compile_mode.HS_MODE_BLOCK,
}
scratch = db:makeScratch()
local test=' asdasdsadas foo bar bar'
local hits = db:scan(test,scratch)

As result i get {{from=13,id=0,to=20},{from=13,id=0,to=24}} and everything seems fine.
But when expression = '(foo).{1,20}bar', is replaced with expressions = { '(foo).{1,20}bar', },, from field turns into 0: {{from=0,id=0,to=20},{from=0,id=0,to=24}}

Sorry for disturbing, it worked perfect when added flag to each expression.


⚠ Bofrost.fr has degraded performance

In 4768595, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1314 ms

Resolved: Bofrost.fr performance has improved in 15527ed.


Set up Salt to configure a Windows buildbot machine

It appears that there is a salt client:
https://repo.saltstack.com/#windows
We basically need to set it up per https://github.com/servo/servo/#prerequisites:
On Windows:

Download Python for Windows here. This is required for the SpiderMonkey build on Windows.

Install MSYS2 from here. After you have done so, open an MSYS shell window and update the core libraries and install new packages:

update-core
pacman -Sy git mingw-w64-x86_64-toolchain mingw-w64-x86_64-freetype \
    mingw-w64-x86_64-icu mingw-w64-x86_64-nspr mingw-w64-x86_64-ca-certificates \
    mingw-w64-x86_64-expat mingw-w64-x86_64-cmake tar diffutils patch \
    patchutils make python2-setuptools
easy_install-2.7 pip virtualenv

Open a new MSYS shell window as Administrator and remove the Python binaries (they are not compatible with our mach driver script yet, unfortunately):

cd /mingw64/bin
mv python2.exe python2-mingw64.exe
mv python2.7.exe python2.7-mingw64.exe

Now, open a MINGW64 (not MSYS!) shell window, and you should be able to build servo as usual!

And run commands like:
https://github.com/servo/servo/blob/master/appveyor.yml

This is going to be substantially more complicated than expected. Following the steps here:
http://trac.buildbot.net/wiki/RunningBuildbotOnWindows
Required an incredible amount of manual effort.


Support for More Than 7 Floats in a Scale

Incredible library, thanks for this work!
I'd love to be able to use alternative color scales with more than 7 floats in the scale, such as Wunderground's:
["#111111","#21006B","#4C006B","#6B006B","#990099","#B300B3","#CC00CC","#E600E6","#FF02FF","#D100FF","#9E01FF","#6600FF","#1800FF","#144AFF","#0E74FF","#00A4FF","#00CBFF","#00E6FF","#00FFFF","#01FFB3","#7FFF00","#CEFF00","#FEFF00","#FFE601","#FFCB00","#FFAE00","#FF9900","#FE7F00","#FF4F00","#FF0700","#FF4545","#FF6968","#FF8787","#FF9E9E","#FFB5B5","#FFCFCF","#FFE8E8","#EEEEEE"]
[-60,125]

The NWS':
["#ffffff","#ffd2ff","#df8ee2","#a760c8","#5e4eac","#37c4e2","#33de9d","#7ed634","#ffff32","#fb9232","#da4f33","#b23833","#000000"]
[-10,110]

or windy.com's:
["#734669","#caacc3","#a24691","#8f59a9","#9ddbd9","#6abfb5","#64a6bd","#5d85c6","#447d63","#809318","#f3b704","#e85319","#470e00"]
[-94,-67,-40,-13,5,17,25,32,34,50,70,86,116]

Well, the optimist in me would say as many as RAM allows, but perhaps up to 16?

Created a develop branch that has dynamic allocation of the internal RGB array.
One test example, that seems to work.
build is running.
(will become a 0.2.0 version)
The derived class is not dynamic yet.

Well, the optimist in me would say as many as RAM allows, but perhaps up to 16?

Dynamic allocation allows quite a lot, but I recall that some boards have a limit of allocating 256 bytes max.
So 256 bytes per RGB is quite a bit (for an Arduino UNO), especially knowing it interpolates in between.

@leoherzog
Code seems to be 95% OK now,
The build fails but I understand the problem (default colors are gone) but you can give it a try.

@leoherzog
windys demo
//
//    FILE: map2colour_windys_demo.ino
//  AUTHOR: Rob Tillaart
// PURPOSE: demo
//     URL: https://github.com/RobTillaart/map2colour

#include "Arduino.h"
#include "map2colour.h"

map2colour mc(13);

float windys_values[13] = { -94,-67,-40,-13,5,17,25,32,34,50,70,86,116};
uint32_t windys_colour[13] =
{
  0x734669, 0xcaacc3, 0xa24691, 0x8f59a9, 0x9ddbd9, 0x6abfb5, 0x64a6bd,
  0x5d85c6, 0x447d63, 0x809318, 0xf3b704, 0xe85319, 0x470e00
};

void setup()
{
  Serial.begin(115200);
  Serial.println(__FILE__);
  Serial.print("MAP2COLOUR_LIB_VERSION: ");
  Serial.println(MAP2COLOUR_LIB_VERSION);
  Serial.println();

  //  load the windys arrays
  mc.begin(windys_values, windys_colour);

  //  show the interpolating
  for (float i = -100; i < 125; i += 5)
  {
    uint32_t rgb = mc.map2RGB(i);
    Serial.print(i);
    Serial.print("\t");
    Serial.println(rgb, HEX);
  }
  Serial.println();
}

void loop()
{
}

// -- END OF FILE --

output
Arduino\libraries\map2colour\examples\map2colour_windys_demo\map2colour_windys_demo.ino
MAP2COLOUR_LIB_VERSION: 0.2.0

-100.00	734669
-95.00	734669
-90.00	7F5576
-85.00	906887
-80.00	A07A97
-75.00	B08DA8
-70.00	C0A0B9
-65.00	C7A4BF
-60.00	BF91B6
-55.00	B87EAC
-50.00	B06BA3
-45.00	A9589A
-40.00	A24691
-35.00	9E4995
-30.00	9A4D99
-25.00	97509E
-20.00	9354A2
-15.00	9057A7
-10.00	916EB1
-5.00	9592BE
0.00	99B6CB
5.00	9DDBD9
10.00	87CFCA
15.00	72C3BB
20.00	67B5B8
25.00	64A6BD
30.00	5F8EC3
35.00	477E5E
40.00	5A8546
45.00	6D8C2F
50.00	809318
55.00	9C9C13
60.00	B9A50E
65.00	D6AE09
70.00	F3B704
75.00	EF970A
80.00	EC7811
85.00	E85917
90.00	D24915
95.00	B73E11
100.00	9C320D
105.00	822709
110.00	671B05
115.00	4C1000
120.00	470E00

The build fails but I understand the problem (default colors are gone) but you can give it a try.

build is OK again, all examples compile => happy
Need to update the readme file to reflect the changes in 0.2.0.
tomorrow

Holy cow. This was all coded and done literal hours after I put in the issue! I didn't expect you to turn this around so quickly. Bravo! Thank you very much!

It was an issue I had been thinking over before, so I had design ideas somewhere in a obscure corner of the mind.
If you have time, please try to verify if it works for you,
Now it is time  (~10:30 PM here) to cool down

@leoherzog
Did a few minor edits today, so you might need to download the develop branch again.

Okay. I've removed my 0.1.6 installed library, installed the latest develop branch, and made the following:
uint32_t tempColors[] = {
  0x00734669, // #734669
  0x00caacc3, // #caacc3
  0x00a24691, // #a24691
  0x008f59a9, // #8f59a9
  0x009ddbd9, // #9ddbd9
  0x006abfb5, // #6abfb5
  0x0064a6bd, // #64a6bd
  0x005d85c6, // #5d85c6
  0x00447d63, // #447d63
  0x00809318, // #809318
  0x00f3b704, // #f3b704
  0x00e85319, // #e85319
  0x00470e00  // #470e00
}; // windy.com scale
float tempDomain[] = {-70, -55, -40, -25, -15, -8.33, -3.89, 0, 1, 10, 21, 30, 45};
map2colour m2c;

void setup() {
  // ...
  m2c.begin(tempDomain, tempColors);
}

void loop() {
  // ...
  uint32_t rgbColor = m2c.map2RGB(temp);
  byte r = (rgbColor >> 16) & 0xFF;
  byte g = (rgbColor >> 8) & 0xFF;
  byte b = rgbColor & 0xFF;

  Serial.print("Setting to #");
  Serial.print(r, HEX);
  Serial.print(g, HEX);
  Serial.print(b, HEX);
  Serial.println();
}

and every temp that I pull down (between 1°C and 7°C right now) is giving back exactly #64A6BD. It's as if it's stuck on giving the nearest one exactly (that's the 7th element in the array) instead of doing interpolation or something?

Will try to recreate the problem here (thx for the code)

Slightly modified your code.
The problem is not setting the size in the constructor.
Give it a try.
//    FILE: .ino
//  AUTHOR: Rob Tillaart
// PURPOSE:
//     URL:

#include "Arduino.h"
#include "map2colour.h"

uint32_t tempColors[] = {
  0x00734669, // #734669
  0x00caacc3, // #caacc3
  0x00a24691, // #a24691
  0x008f59a9, // #8f59a9
  0x009ddbd9, // #9ddbd9
  0x006abfb5, // #6abfb5
  0x0064a6bd, // #64a6bd
  0x005d85c6, // #5d85c6
  0x00447d63, // #447d63
  0x00809318, // #809318
  0x00f3b704, // #f3b704
  0x00e85319, // #e85319
  0x00470e00  // #470e00
}; // windy.com scale
float tempDomain[] = { -70, -55, -40, -25, -15, -8.33, -3.89, 0, 1, 10, 21, 30, 45};

map2colour m2c(13);  // <<<<<<<<<<<<

void setup() {
  Serial.begin(115200);
  Serial.println(__FILE__);

  m2c.begin(tempDomain, tempColors);

  for (int i = -70; i < 50; i++)
  {
    uint32_t rgbColor = m2c.map2RGB(i);
    byte r = (rgbColor >> 16) & 0xFF;
    byte g = (rgbColor >> 8) & 0xFF;
    byte b = rgbColor & 0xFF;

    Serial.print(i);
    Serial.print("\t Setting to #");
    Serial.print(r, HEX);
    Serial.print(g, HEX);
    Serial.print(b, HEX);
    Serial.println();
  }

}

void loop() {

}

// -- END OF FILE --

One more fix
    Serial.print(i);
    Serial.print("\t Setting to #");
    if (r < 16) Serial.print("0");   //  <<<<<<<<<<<<<
    Serial.print(r, HEX);
    if (g < 16) Serial.print("0");   //  <<<<<<<<<<<<<
    Serial.print(g, HEX);
    if (b < 16) Serial.print("0");   //  <<<<<<<<<<<<<
    Serial.print(b, HEX);
    Serial.println();

Working perfectly, thanks 😳

Think that your first run only used the first 7 values as the default size is 7.

That makes sense! It was on the lower bounds with every number. Of course!

With size 7 it indeed stops at the 7th colour.
-8	 Setting to #69BDB5
-7	 Setting to #68B7B7
-6	 Setting to #66B1B9
-5	 Setting to #65ACBB
-4	 Setting to #64A6BC
-3	 Setting to #64A6BD
-2	 Setting to #64A6BD
-1	 Setting to #64A6BD
0	 Setting to #64A6BD
1	 Setting to #64A6BD
2	 Setting to #64A6BD
3	 Setting to #64A6BD
4	 Setting to #64A6BD

Are these temperatures in Fahrenheit?
float tempDomain[] = { -70, -55, -40, -25, -15, -8.33, -3.89, 0, 1, 10, 21, 30, 45};

Weirdly, no.

But I really like it's sharp division between above and below freezing. It highlights boundaries interestingly. The colors themselves are more muted and pastel than some other scales as well. I really like it.

Found it
// float tempDomain[] = { -70, -55, -40, -25, -15, -8.33, -3.89, 0, 1, 10, 21, 30, 45};  // Celsius
// float windys_values[13] = { -94,-67,-40,-13,5,17,25,32,34,50,70,86,116};  //  Fahrenheit.

 I simply took their default scale and converted it to Celsius.

Time to merge the branch.

Merged and released the 0.2.0 version. As all seem to be working I close the issue.
Feel free to reopen it (or just add comments) if needed.
Thanks!

Thank YOU!

Maybe you can post some photos in the future?

Photos of the project I'm working on?
Before, I was using Google Apps Script, then Cloudflare Workers, to parse and cache temperatures from across the state that I live in. I then fetched the cached colors and set them on the Arduino. Because of your library, I've now been able to move all of the temperature fetching and parsing logic to directly on the Arduino with no middle-man!

Looks superb, I recognize Michigan!


Upgrade Prisma version and related codebase

Which area(s) of Podkrepi.bg are affected? (leave empty if unsure)
Prisma, Seeds, Migrations
Describe the feature you'd like to request
Upgrade Prisma packages from the current version v4.3.1 to the latest stable version https://github.com/prisma/prisma/releases/tag/4.7.1
Describe the solution you'd like

update package.json versions
check if db migrations docker images are being built OK
check if db seeds work OK
test if code generation and builds work normally

There might be breaking changes along the way
Describe alternatives you've considered
No response

@kachar can I do this task?

closed with https://github.com/podkrepi-bg/api/pull/474


Fix mixer add leaves in client

When we generate a proof against a merkle tree for some root, we need to ensure that the respective merkle tree that we reconstruct stops at that root. Right now it is possible for the root we want to prove against and the current state of the merkle tree on chain to diverge, and so fail to generate proofs.
This first requires adding a target root to the function and incrementally building the tree UNTIL we reach that root, this way we then have the state of the tree we can generate a proof path from.

I get what you mean, but I think this is not the case. VSMT saves all the intermediate states, so you can make a proof for any root hash that existed in the past. Need to check this twice, so worth testing out

Ok I think you are probably right. I'll dive more deeply and try to see how long this cache lasts for over old states.

I think we'll still want to have a stop-gap nonetheless no? It's an optimisation that saves the client some time/memory in any case.

Yeah, I guess it could be used as an optimization method


Add conmon interface

What type of PR is this?
/kind feature
What this PR does / why we need it:
Adding an interface to conmon, which can be later used by an OCI runtime.
Which issue(s) this PR fixes:

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

Added conmon interface module

This is ready for review now. PTAL @mrunalp

PTAL @mrunalp


wrap demo.js within window.onload for swap-tracks example

Description
The fix for Issue 2159. "swap-tracks example has a race condition on startup"
The simple fix is to wrap demo.js within the window.onload event.
The majority of the change is just encapsulating the original code within a window.onload event handler. Hence, most of this diff is a result of indenting the original code.
Reference issue
Fixes #2159

Great job catching this @jselbie!
Can you try the following? I am not against doing the onload, we just have to do it in all the files.
diff --git a/examples/example.html b/examples/example.html
index 668d123..eef2d93 100644
--- a/examples/example.html
+++ b/examples/example.html
@@ -11,17 +11,6 @@
                        }
                </style>
                <link rel="stylesheet" type="text/css" href="demo.css">
-               {{ if .JS }}
-               <script src="demo.js"></script>
-               {{ else }}
-               <script src="/wasm_exec.js"></script>
-               <script>
-                       const go = new Go();
-                       WebAssembly.instantiateStreaming(fetch("demo.wasm"), go.importObject).then((result) => {
-                               go.run(result.instance);
-                       });
-               </script>
-               {{ end }}
        </head>
        <body>
                <h1>{{ .Title }}</h1>
@@ -31,4 +20,15 @@
                {{ template "demo.html" }}
                </div>
        </body>
+       {{ if .JS }}
+       <script src="demo.js"></script>
+       {{ else }}
+       <script src="/wasm_exec.js"></script>
+       <script>
+               const go = new Go();
+               WebAssembly.instantiateStreaming(fetch("demo.wasm"), go.importObject).then((result) => {
+                       go.run(result.instance);
+               });
+       </script>
+       {{ end }}
 </html>


Update server not available (HTTP 503 - Service Temporarily Unavailable)

Does this issue occur when all extensions are disabled?: Yes

Not sure where to submit a server side issue, however it seems that the update server is down, which causes that my project cannot be opened locally. It cannot build the devcontainer due to the update server being down..

VS Code Version: 1.66.1 (Universal)
Commit: 8dfae7a5cd50421d10cd99cb873990460525a898
Date: 2022-04-06T14:49:47.400Z
Electron: 17.2.0
Chromium: 98.0.4758.109
Node.js: 16.13.0
V8: <IP_ADDRESS>-electron.0
OS: Darwin x64 21.4.0
OS Version: macOs

Steps to Reproduce:

Press 'Check for Updates' or try opening (en building) a project with a devcontainer for the first time
Both tries will fail

[2022-04-11T15:21:30.958Z] Failed to download VS Code Server (https://update.code.visualstudio.com/commit:8dfae7a5cd50421d10cd99cb873990460525a898/server-linux-x64/stable): HTTP 503 - Service Temporarily Unavailable
[2022-04-11T15:21:30.958Z] Retrying to download VS Code Server.
[2022-04-11T15:21:31.078Z] Stop (252 ms): Downloading VS Code Server
[2022-04-11T15:21:31.082Z] Error: XHR failed
    at XMLHttpRequest.v.onerror (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:83:27625)

This was a temporary incident yesterday, lasted ~10 minutes. All good now.

Thanks @joaomoreno! I can indeed confirm that everything works like a charm again.


stash webdav and grid stuff for after the release

that's been done a while ago

They are parked in https://github.com/NLeSC/Xenon/tree/unstable-adaptors branch


draftsman-update seems to be running incorrect LUA version

Factorio is running lua 5.2. It seems that draftsman-update is running a newer version.
This generates issue with Industrial Revolution mod.
When running draftsman-update the following error is outputted:
lupa._lupa.LuaError: [string "code/items-recipes/recipes-scrapping"]:157: bad argument #2 to 'format' (number has no integer representation)
this is due to the following line;
local average = (minimum+maximum)/2
...
elseif average >= 10 then average = string.format("%d", average)

When average is a float, lua 5.2 is happy returning the integer part, while more modern lua will error out.
draftsman should ensure it runs a lua interpreter with a version compatible with the one factorio is using.

Unfortunately, changing the version of Lua that lupa ships with is a little more involved than not, which I'm investigating now. Usually I would just overwrite string.format with a custom function to emulate the old behavior, though that seems a little difficult with a function as complex as string.format.

After building Lupa from source and manually tweaking it's init.py, I believe I've gotten Lua 5.2 running against draftsman-update. Unfortunately, it requires installing the current master branch from github instead of a wheel from pypi, and manually changing some files. I've raised another issue to figure out what's the best way to select that version of Lua, and hopefully soon lupa 2.0 wheels will be out and it should continue to work "out-of-the-box".

It works! Output:
(factorio-draftsman) D:\SourceCode\repos\Python\factorio-draftsman>draftsman-update -p C:\Users\tfsch\AppData\Roaming\Factorio\mods --verbose
Using Lua 5.2 (compiled with (5, 2))
Reading mods from: C:\Users\tfsch\AppData\Roaming\Factorio\mods

Discovering mods...

IndustrialRevolution3Assets1
IndustrialRevolution3Assets2
IndustrialRevolution3Assets3
IndustrialRevolution3Assets4
IndustrialRevolution3

Determining dependency tree...

IndustrialRevolution3Assets1 1.0.7
archive? True
dependencies:
           base >= 1.1.74
         ~ IndustrialRevolution3 >= 3.0.9
IndustrialRevolution3Assets2 1.0.4
archive? True
dependencies:
           base >= 1.1.74
         ~ IndustrialRevolution3 >= 3.0.7
IndustrialRevolution3Assets3 1.0.1
archive? True
dependencies:
           base >= 1.1.74
         ~ IndustrialRevolution3 >= 3.0.1
IndustrialRevolution3Assets4 1.0.1
archive? True
dependencies:
           base >= 1.1.74
         ~ IndustrialRevolution3 >= 3.0.1
IndustrialRevolution3 3.0.14
archive? True
dependencies:
           base >= 1.1.74
           IndustrialRevolution3Assets1 >= 1.0.7
           IndustrialRevolution3Assets2 >= 1.0.4
           IndustrialRevolution3Assets3 >= 1.0.1
           IndustrialRevolution3Assets4 >= 1.0.1
         ? IndustrialRevolution3Projects >= 0.0.1
         ? DeadlockLargerLamp >= 1.5.0
         ? DeadlockBlackRubberBelts >= 1.0.3
         ! IndustrialRevolution
         !  Krastorio2
         ! battery-powered
         ! SqueakThrough
         ! LoaderRedux
         ? aai-loaders
         ? Dectorio
         ? textplates
         ? wret-beacon-rebalance-mod

Load order:
['base', 'IndustrialRevolution3Assets1', 'IndustrialRevolution3Assets2', 'IndustrialRevolution3Assets3', 'IndustrialRevolution3Assets4', 'IndustrialRevolution3']

SETTINGS.LUA:
        mod: IndustrialRevolution3
SETTINGS-UPDATES.LUA:
        mod: IndustrialRevolution3
SETTINGS-FINAL-FIXES.LUA:
DATA.LUA:
        mod: base
        mod: IndustrialRevolution3
DATA-UPDATES.LUA:
        mod: base
        mod: IndustrialRevolution3
DATA-FINAL-FIXES.LUA:
        mod: IndustrialRevolution3

Extracted mods...
Extracted entities...
Extracted instruments...
Extracted items...
Extracted modules...
Extracted recipes...
Extracted signals...
Extracted tiles...

Update finished.
hella slick; nothing broke!

Now I can get rid of all the patch code to mimic 5.2. I wonder if I can do some magic in setup.py that downloads the latest master instead of the one from pip and performs the necessary modifications...

Lupa has been updated! Moving this from the 2.0 milestone to the 1.0.4 one.


Location capture in iOS

Hello Chris,
I have been trying to make this work on my iOS emulate but unable to make it work. It now works fine on android and I was wondering if you could point me to some debugging steps which could help me figure out what the issue is.
Environment:
Cordova 5.1.1 / Ionic
Running it on iPhone 6 simulator
The backgroundGeoLocation plugin is available on window.plugins. Here's the sample of the code I have for enabling the geolocation:
        if (isBGRunning || !bgGeo) return;
        isBGRunning = true;
        var options = {
          url: postURL,
          headers: {
            qc: Authenticator.getCookie(),
            platform: 'android'
          },
          desiredAccuracy: 1000,
          stationaryRadius: 10,
          distanceFilter: 20,
          activityType: 'AutomotiveNavigation',
          stopOnTerminate: false
        };
        if (SOMA_CONFIG.TARGET === 'development') options.debug = true;
        if (bgGeo) {
          bgGeo.configure(onBackgroundSuccess, onBackgroundFailure, options);
          bgGeo.start();
          SomaAnalyticsService.trackEvent("started-bg-geo");
        }

Here's the window.plugins.backgroundGeoLocation.config object which seems to show its been setup correctly:
{"url":"http://<IP_ADDRESS>:3000/api/foodies/me/location","headers":{"qc":"<<auth-token>>","platform":"ios"},"desiredAccuracy":1000,"stationaryRadius":10,"distanceFilter":20,"activityType":"AutomotiveNavigation","stopOnTerminate":false,"debug":true}

I checked the -Info.plist file and it seems to have the necessary permissions:
    <key>NSLocationWhenInUseUsageDescription</key>
    <string></string>
    <key>NSLocationAlwaysUsageDescription</key>
    <string>This app requires background location tracking</string>
    <key>UIBackgroundModes</key>
    <array>
      <string>location</string>
    </array>

Could you point me to where I should check?
Krishna.

Set desiredAccuracy: 0.  1000 is the lowest accuracy value (no GPS).


Theme is broken on Hugo 0.57

Describe the bug
As described in this hugoThemes issue, the way lists are rendered breaks in Indigo with Hugo 0.57.0; this has been temporarily rolled back in 0.57.2 but will be brought back with 0.58.
UPDATE: let's consider the following out of scope to move this forward faster
~Additionally, make sure that we're following the Hugo themes submission guidelines here.~

There are three incidences of .Pages according to this search. The warning message we get when building Indigo on 0.57.2 is:
$ hugo server -D --disableFastRender
Building sites … WARN 2019/08/23 07:55:40 In the next Hugo version (0.58.0) we will change how $home.Pages behaves. If you want to list all regular pages, replace .Pages or .Data.Pages with .Site.RegularPages in your home page template.

It sounds like we only need to make the change in layouts/index.html, but I need to also understand how this will impact lists of posts in layouts/_default/list.html and the RSS feed in layouts/index.xml.


fix: types in defaultConstitution

More descriptive type names in the defaultConstitution. Some types had names that could imply some additional properties that were wrong. For example, type 33 was a unit_interval but is actually a nonnegative_interval as it can be over 1.
Added all the type names used in conway.cddl to be 1:1 with their naming convention.
No added checks on the types have been added to not change the logic of the script. The script generated with this fix and the one currently in master should be the same.

Pre-submit checklist:

Branch

[x] Tests are provided (if possible)
[x] Commit sequence broadly makes sense
[x] Key commits have useful messages
[ ] Changelog fragments have been written (if appropriate)
[ ] Relevant tickets are mentioned in commit messages
[ ] Formatting, PNG optimization, etc. are updated

PR

[ ] (For external contributions) Corresponding issue exists and is linked in the description
[x] Targeting master unless this is a cherry-pick backport
[x] Self-reviewed the diff
[x] Useful pull request description
[ ] Reviewer requested

I will add a changelog later


Web Teacher - Haverhill High School

Is there a route for my students to use some assets (images and icons) that does not involve money?
We are loving your playpen for showing code and css and javascript - it really is awesome. hat would it cost too get a limited ability to play with images?

I'm afraid, as you well know, everything invokes money. I suspect you specifically mean: that does not involve supporting jsbin's continued service.
You can host the images on other sites, or even local school machines, and have their bins point to those hosted images. That's probably the cheapest way to get around the asset issue.


Guidance on curly quotes

The "Quotation marks" section of https://design.gccollab.ca/content/formatting doesn't mention the distinction between straight and curly quotes. Should it?
I've found both in the documentation, so once a standard has been set it should be followed.

Hi @jkshapiro is there usually an understood difference between the two? If you could suggest something to add that would be great!

Not really. It's basically just "always use curly quotes" or "always use straight quotes".

Using  is a third option; thanks for mentioning it. I was referring to the insertion of actual straight quote and curly quote characters in the text. The French version of the page https://design.gccollab.ca/content/formatting, for instance, has straight quotes in the "Guillemets" section and curly quotes in the "Gras et italiques" section.


fix prototype pollution vulnerability

Closes #2

It’s not a vulnerability at all, but it’s a reasonable change to avoid surprise. Can you add test cases?


Update docs for auth endpoint

We added a new auth endpoint (v2) this should be part of the docs.
https://github.com/gnosis/safe/issues/153

https://gnosis-safe.readthedocs.io/en/latest/services/notifications.html#v2-auth-post


[AT] - Update examples to React 16 and prop-types change

Examples were updated to use external 'prop-types' module as PropTypes was deprecated from the main React module effective v15.5.0.
Files containing JSX were renamed to have a .jsx extension vs .js extensions, and webpack was updated to bundle them accordingly.
Addresses issue #80

Thx a lot for that.


抽象 youtube id 到摘要的分析 pipeline

input: youtube id
output: 字幕 -> 摘要 -> notification -> Line/Email

due to the rework on same requirement, merged into #8.


Feature/keyboard nav

This PR adds keyboard and tab navigation to the About menu, refactored as a NavMenu class that could in theory be re-useable on other Semantic menus. Unit tests and documentation included.

Codecov Report

Merging #266 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #266   +/-   ##
========================================
  Coverage    99.15%   99.15%
========================================
  Files           89       89
  Lines         4157     4157
========================================
  Hits          4122     4122
  Misses          35       35


add yii\db\SchemaBuilderTrait::foreignKey() to create the left hand side of a foreign key

This is a required feature to solve the problem of declaring a foreign key on a table to a primary key on another when the types of them differ.
For example:
'''
TableA:  id => integer(10) unsigned primary key autoincrement
Table B: tablea_id =>integer(11)
As the declaration of both fields is not equivalent (one is unsigned and the oher is not), mysql complains that it can not create a foreign key. If I define all my left hand fields of foreign keys via a function, I am sure I'll never get that error.

primaryKey() should create int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY which is compatible with int(11) FK.

@rob006 The problem is when you are creating a foreign key to a table which defines a primarykey like this:
		$this->createTable('tableA', [
			'id' => $this->primaryKey(),

and then want to create a foreignkey in another table to reference this table:
        $this->createTable('tableB', [
            'id' => $this->primaryKey(),
            'tablea_id' => $this->integer(),

As you can't see in the migration for creating table a what is the type, signedess and width of the primary key, you might create an erroneous reference to that id and the DBMS will complain ruining your migration. As these migrations can't be into a transaction on some DBMS, usually you end up with a broken database.

Are you want to say that you don't known that your PK is integer?

Not that it is not integer, but maybe I am creating a foreign key to a table in a different module or extension and I don't know if they have created their primary keys unsigned or signed, or, in the worst of cases, I create a migration years after and I forget the signedness of the primary keys.

So you want to dynamically guess type in foreignKey() based on current DB schema? How this should work?

No, sorry, maybe I am not explaining this clearly. I want a function that defines a field with the same type, signedness and width that primaryKey() does, so that I dont have to guess what kind of field primaryKey() generates to match my foreign key field.

You already have it - it is integer().


Set up an automated ML task to predict drug -> drug target edges

Describe the desired behavior
It would be useful for Drug Central to have inferred drug -> drug target edges, which we could formulate as a graph ML link prediction task.
We maybe could/should do this in an automated way, on each build of KG-IDG.
A possible roadmap:

[ ] Write Jupyter notebook for link prediction task
[ ] Write some tooling to run this code from Jenkins
[ ] Write some code to push the results to KGHub

Additional context
Per convo with Tudor et al on IDG just now

Discussing this more with Harry - some thoughts.
We can use NEAT for this (i.e. spin up a Google Cloud instance from Jenkins, pass off a YAML file to the instance describing the graph ML task, wait for it to complete and upload artifacts to S3).
This strategy has the advantage of:

helping us get NEAT updated
helping us flesh out the general use case of getting automatic embedding and graph ML working with KGHub and other projects (Monarch, eco-kg, others)

As per IDG meeting on Jan 20, following drug categories would be good for evaluation:

Those targeting GPCRs
antihistaminics (H1 blockers)
antipsychotics (multi-target)
antivirals (no human targets)
antiestrogens (mostly ERalpha)

I don't think we include any viral proteins right now, so we'd expect the antivirals to have few/no human targets, especially because we aren't doing any inference based off sequence or structure.