test-without-stubs,exercises: Typo fixes

used https://github.com/client9/misspell

We might want to add this into CI but not sure because we can get false positives. What do you think ?

If changes would be rejected because of false positives it sort of has to be a no? We shouldn't have things fail if they are correct. I do think running this process occasionally would help tighten things up.

I agree.

Is it worth adding a note somewhere, perhaps the README, about this, so it doesn't get lost here?

May be worth pointing out the tool, but effectively it will be up to us to periodically check by using it.


test: fix flaky unit tests

tests/data tests are flaky due to -n 10 in pytest.ini, they are trying to get contents from globalConfig.json which may be not in stable state.
Examples:

https://github.com/splunk/addonfactory-ucc-generator/runs/2783628522
https://github.com/splunk/addonfactory-ucc-generator/runs/2775867028

Codecov Report

Merging #222 (880dd11) into main (df8687e) will increase coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #222      +/-   ##
==========================================
+ Coverage   55.94%   55.98%   +0.03%
==========================================
  Files          37       37
  Lines        2506     2506
==========================================
+ Hits         1402     1403       +1
+ Misses       1104     1103       -1

Impacted Files
Coverage Δ

...ework/modular_alert_builder/build_core/__init__.py
88.88% <0.00%> (+1.11%)
:arrow_up:

Continue to review full report at Codecov.

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

:tada: This PR is included in version 5.1.0 :tada:
The release is available on:

v5.1.0
GitHub release

Your semantic-release bot :package::rocket:


Update README.md

fixed link to npmjs.org in the prerequisite guide for building ipfs-desktop

Thanks @bartcoelus!


Let the user include custom pipeline stages in the project

Split from #63.
There should probably be a setting to disable this.

Done in a95edb1f6e0fdebe7f6030d356b4afd5b45cb289.


mysql binary type error

varbinary is work
table "test" {
	schema  = schema.test
	column "bin" {
		type = varbinary(32)
		null = false
	}
}
schema "test" {
	charset = "utf8mb4"
	collate = "utf8mb4_unicode_ci"
}

CREATE TABLE `test`.`test` (`bin` varbinary(32) NOT NULL)

binary is not work
table "test" {
	schema  = schema.test
	column "bin" {
		type = binary(32)
		null = false
	}
}
schema "test" {
	charset = "utf8mb4"
	collate = "utf8mb4_unicode_ci"
}

CREATE TABLE `test`.`test` (`bin` binary NOT NULL)

there is no fixed size 32 in SQL.
Test on today master branch.

Hey @calvin2021y 👋
Thanks for reporting this issue. The fix should be simple.
Would you like to contribute this fix to Atlas? I can support you on our Discord server, but if not that's also fine, I can handle this later today or tomorrow.

hi @a8m
Sorry for not to attend to discord server, I still don't have discord account.
Can you give some tips here how to fix this ?

confirm fixed.


Support no-op --no-compile

It would be nice to simply ignore --no-compile, rather than throw an error, to make it easier to swap pip and uv.

I think I ran into this with uv pip compile. Just wanted a way to resolve a requirements.txt but it built pyspark which took 1-2 minutes. Expected the operation to be instant.

@sam-goodwin this is totally separate — --no-compile means do not compile .pyc files. You're looking for --only-binary

That's not what --no-compile means. It means skip making .pyc files from .py files, which uv already does, and is opt-in for pip.

Thanks @zanieb and @henryiii , sorry for the confusion.

@charliermarsh  I'd like to reopen this issue, since --no-compile flag is still not support. Getting this error:
$ uv pip install --no-compile test
error: unexpected argument '--no-compile' found

  tip: a similar argument exists: '--no_compile'

which kind of misses the point

It's --no-compile-bytecode, but we can add an alias.

Fixed in https://github.com/astral-sh/uv/pull/4453.


Batch polygon fill and stroke instructions

I did some profiling while I investigated #4232, and found that the canvas vector renderer spends most of its time in context.fill() instructions. In a first iteration, I changed the renderer code to create a single batch of context.fill() and context.stroke() instructions with the same fillStyle and strokeStyle. It turned out that this makes rendering slow in Safari. In a second iteration, I limited the batch size to 200 polygons, which results in fast rendering in all tested browsers.
Fixes #4232.

LGTM, thanks for your work on this


Included MAS in package managers for macOS

In addition to the Unix-style package managers for macOS, MAS offers a CLI interface to search and install apps from the Mac App Store.

There still seem to be conflicts with master. Please resolve them. Thanks!

Closing in favor of fea4926.


delegaters, validators, candidates

something i have been thinking about lately is the relationship between delegaters, validators, and candidates OR how we should think about these types of users...
currently, delegates (candidates and validators) have their own list and UI. validators also have their own list and UI. it seems to me that we should combine these lists into one list called "Delegates".

what is the value of keeping a separate list of validators only without the ability to delegate to them in that screen?

if we use the word "Delegates" to describe Candidates and Validators, let's use the word "Bond" as the action / verb.

also open to other words that describe both candidates AND validators.

I agree with both points. Renaming and merging candidates/validators simplifies the app, and using "Delegates" as the noun form only makes the app more clear. I want to explain how we ended up with the current layout though:
I've been using delegate in the verb form, as a way of handing responsibility of your atoms to a validator. (that's why I changed Delegates to Delegate in #218, was wondering why you changed it to Delegates, now I know) E.g. "I delegate atoms to a candidate". And that's why PageDelegate.vue currently means "the page where I delegate atoms", not a detail view for a delegate.
There are two other words in the UI we've been using for "delegate", which is "stake" and "allocate". Stake is used only in once place, in the sidebar menu title. "Allocate" is being used on PageDelegate, as a pre-step before bonding, where you allocate your atoms per-candidate.

I think the problem stems with English overloading these words with multiple meanings.
hahaha. true.

we should also consider the place of "bonding" since the economics team uses it in certain cases...

@jolesbi I think the Economics team has the same problem where they're using multiple terms to refer to the same thing. We'll just have to 'educate' them to use the correct terminology. 😛


accessibility changes

Accessibility changes. Adding image alts. Deleting duplicate IDs. New nalanda bkg image.
@jtamiace can plz review

Looks good to me. Like the new color for navbar. Pinging Radina for any other comments before I merge

There are a few more changes to be made when time permits. The main change here that needs to be made asap is the nalanda background image change here. From 3-4mb to ~300kb. Dont wanna eat up too much data for mobile users

Ah, nice. Yeah that is huge. Radina has given ok to merge (cannot tag her)


Return answer given by user after answer submission

When you finish a quiz question, the model returns your score and the correct answer.
However, at times, a user could be confident in their answer but end up getting their answer marked wrong and wonder what they initially put.
One thing to consider is the added room need to show this information, which would crowd the screen a bit more.
I'd imagine a solution would be something like:

💡 Correct! You are really good at this!
Points: 1
Your answer:
mailfrom
Answer:
You can create a mailto link in the href value for an anchor tag
Learn more with this helpful resource
Wanna learn how to code?
Download the free Learn to Code RPG game

One thing to consider is the added room need to show this information, which would crowd the screen a bit more.

I think this would work even if the answer was long like this

Most of the answer aren't that long. And for the ones that are, the modal is large enough to accommodate the extra content IMO.


First go at automating deployment

This PR adds a Github Action to deploy the website every day at 9PM PST. It builds the CSV data and site, and deploys it on Github Pages.
Closes #5
Known issues

Not linked to releases, but probably should. This could be added with this PR.
Fails if we disable TLS checks and/or use --insecure-http-parser so more testing is needed
Johns Hopkins data is causing trouble again. Can investigate in another PR. The fix in lib/parse.js tries to hastily patch it, but it leaves the CSV with 0 values everywhere so more work is needed.

Interesting that it fails with --insecure-http-parser... That's required to hit some of these sites since their certs are questionable.
And yeah JHU data breaks daily, so we just have to delay auto deployment until it's unbroken...

Interesting that it fails with --insecure-http-parser... That's required to hit some of these sites since their certs are questionable.
And yeah JHU data breaks daily, so we just have to delay auto deployment until it's unbroken...
Great work so far!

--insecure-http-parser works fine actually, so disabling TLS checks might be the only restriction imposed by Github Actions

Happy to hear feedback on this PR

I added an additional step to push the cache submodule following deployment. Can't test it fully as I don't have permission to push to that repo, but it should theoretically work.

@qgolsteyn I added you to the cache repo, please test and let me know if this is good to go!

Will do! Working on other things for the moment, but will get to it in a few hours

Moved to using tags on master as the trigger mechanism. This would allow us to deploy when we create a new release.


"error TS2307: Cannot find module" when using @types/ws with typescript 2.0

TypeScript Version:
2.0.3
Code
// A *self-contained* demonstration of the problem follows...
import * as WebSocket from 'ws'
const ws = new WebSocket('https://api.wechaty.io')
console.log('ws')

$ npm install @types/ws
<EMAIL_ADDRESS>/Users/zixia/git/wechaty
└──<EMAIL_ADDRESS>
$ ./node_modules/.bin/tsc --target es6 t.ts
t.ts(1,28): error TS2307: Cannot find module 'ws'.

Expected behavior:
should found the type defination of ws
Actual behavior:
TS2307 error
It's not like the problem from @types/ws, because if i use another module like @types/express, will be the same error.
BTW: if i run without es6 target, it will ok, but I can't use async/await
$ ./node_modules/.bin/tsc t.ts # will be ok

http://stackoverflow.com/questions/39960436/error-ts2307-cannot-find-module-when-using-types-ws-with-typescript-2-0

You need to explicitly specify "node" module resolution strategy, as the default for ES6 target is "classic". E.g.
$ ./node_modules/.bin/tsc --target es6 --moduleResolution node  t.ts

Thanks @jonrimmer. this is the correct workaround for<EMAIL_ADDRESS>The issue has been fixed in typescript@next and should be part of<EMAIL_ADDRESS>Please see https://github.com/Microsoft/TypeScript/issues/11103 for more details.

@jonrimmer thanks! this cost my serval hours to study... and had not found any solution until read from your post.
why tsc not to search @types by default?

as a mentioned, it is a bug, reproted in https://github.com/Microsoft/TypeScript/issues/11103, and fixed. sorry about the confusion.
passing --moduleResolution node would address the issue.

@mhegazy got it. thanks!


Add contribution guide document

I moved your (@lzehl) text from README.md to the CONTRIBUTING.md file, update the text a bit and added some more information.

The advantage of a dedicated CONTRIBUTING document is that it is integrated in the github process to create a pull request.

@skoehnen never mind then the request. thanks!


Added Facebook Login Page Clone Source Code

Description
I have added my FACEBOOK Login Page Clone Using Tailwind Project in this repo via this PR.
I'm a GSSOC'22 contributor.
Fixes #211

Type of change

[x] New feature (non-breaking change which adds functionality)

Explain the Testing instructions
Test Configuration:

Operating system: Windows
Version: 10
Text-editors used: Visual Studio Code

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works

ATTACH SCREEN-SHOTS / DEPLOYMENT LINK

@Susmita-Dey remove all the necessary files from, PR

@Susmita-Dey remove all the necessary files from, PR

I have deleted the LICENSE file. Now you can merge it to main.


SAXParseException should be handled as bad request

A parse exception of the GPX file should be handled as 'Bad Request'. Currently it is some 50x:
java.lang.RuntimeException: org.xml.sax.SAXParseException; lineNumber: 12; columnNumber: 15; The element type "gpx" must be terminated by the matching end-tag "</gpx>".
        at com.graphhopper.matching.GPXFile.doImport(GPXFile.java:160)

Same for ParseException:
java.lang.RuntimeException: java.text.ParseException: Unparseable date: "2018-07-18T09:1245"
        at com.graphhopper.matching.GPXFile.doImport(GPXFile.java:157)
        at com.graphhopper.matching.http.MapMatchingResource.doGet(MapMatchingResource.java:95)

Solved by deserializing through Dropwizard/Jersey/Jackson.


Update architecture diagrams.

I've added in the Keycloak rotate secrets lambda and I've also removed
Jenkins and Grafana from the diagram on the same page.

I wouldn't have thought to do this but there was a Jira ticket for it :) I've removed the Jenkins bit from that diagram and added in GitHub actions outside the management account instead.


does creating an Auth key with the existing ER circuit, disrupt the exisiting connections which are within the same subscription

Doc : https://docs.microsoft.com/en-us/azure/expressroute/expressroute-howto-linkvnet-portal-resource-manager
An Existing Express route Circuit already has a connection with a VNet in the same subscription ( with out auth key) named : SameSubVNet
Now if we try to create a auth key for a new VNet in a different subscription, does it interfere with the existing VNet connection (i.e. the existing connection with the SameSubVNet)

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

ID: dabed376-a2d4-b75f-0dd9-f492644a1c22
Version Independent ID: 6a7317f0-a164-2c40-3ff8-06d561c6d807
Content: Link a virtual network to a circuit - ExpressRoute: Azure portal
Content Source: articles/expressroute/expressroute-howto-linkvnet-portal-resource-manager.md
Service: expressroute
GitHub Login: @cherylmc
Microsoft Alias: cherylmc

Thanks for the question. We are currently investigating and will update you shortly.

@prajster , It will not interfere with the existing connectivity. The operation is a control channel operation and it will not affect data path.
Let me know if you have any further questions.

@prajster , Do you have any update for me? Does the above response answers your question?

It does, thanks.
On Monday, July 22, 2019 06:04:25 AM EDT, KARTHIK SRINIVAS<EMAIL_ADDRESS>wrote:
@prajster , Do you have any update for me? Does the above response answers your question?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.


IRouter error when build

Hi,
Can i ask. im getting this error
export declare type RouterLib = (options?: RouterOptions) => IRouter;
when build the node.
when i view the source line
node_modules/@overnightjs/core/lib/decorators/types.d.ts:7:62
i said "Generic type IRouter requires 1 type argument"
Thanks

i dont know if i fix this right .

i just ad  RouterOption in Irouter generic
here the original error


On changing tabs quickly, new tab shows data of previous tab.

Hello there,
I am facing an issue. I have 10 tabs on my screen. if i quickly changes tab by swiping from one tab to another tab, in new tab it loads the data of previous tab on top and show data of new tab below it.
I am getting data from api.

Same thing is happening to me. Any solutions for this?


Replace moontoast/math by GMP

This resolves #109

Coverage decreased (-0.3%) to 96.97% when pulling dde25432c4fac8f27b9e8446c46b8e4b4ac40754 on jecknig:master into b4fe3b7387cb323fd15ad5837cae992422c9fa5c on ramsey:master.

This is all looking good, but I think we should keep the BigNumberConverter class for now and introduce a new GmpConverter class that does what you've implemented here. "BigNumber" is the name of the class from the moontoast/math library. Then, resubmit the pull request to the 4.x branch, please.
Thanks!


⚠ Bofrost.fr has degraded performance

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

HTTP code: 200
Response time: 1345 ms

Resolved: Bofrost.fr performance has improved in be3be33 after 6 minutes.


php81Packages.phpspy: 0.6.0 -> 0.7.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/phpspy/versions.
meta.description for php81Packages.phpspy is: Low-overhead sampling profiler for PHP
meta.homepage for php81Packages.phpspy is: https://github.com/adsr/phpspy
Updates performed

Version update

To inspect upstream changes
Impact
Checks done

built on NixOS
Warning: a test defined in passthru.tests did not pass
found 0.7.0 in filename of file in /nix/store/nmpvsym3hq09rx86j5vy6fm2vslgfvp2-phpspy-0.7.0

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

4 package rebuild(s)

First fifty rebuilds by attrpath

php81Packages.phpspy
php82Packages.phpspy
php83Packages.phpspy

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/nmpvsym3hq09rx86j5vy6fm2vslgfvp2-phpspy-0.7.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A php81Packages.phpspy https://github.com/r-ryantm/nixpkgs/archive/a43f0d07b2fdfde753bd9315c10371c3573632a9.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/a43f0d07b2fdfde753bd9315c10371c3573632a9#php81Packages.phpspy

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/nmpvsym3hq09rx86j5vy6fm2vslgfvp2-phpspy-0.7.0
ls -la /nix/store/nmpvsym3hq09rx86j5vy6fm2vslgfvp2-phpspy-0.7.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

3 packages built:

php81Packages.phpspy
php82Packages.phpspy
php83Packages.phpspy

Maintainer pings
cc @gaelreyrol for testing.

I'm not very familiar with php packages.

Very similar to Python, NodeJS, etc etc...


Default range for imported punctual lights is too high.

(tested on spot lights but I presume this applies to point lights also)
When an imported light doesn't have a range, the spec says it's range should be infinite. Unity doesn't support infinite range.
Currently the assigned range is 3.402823e+38 but it seems that this ends up being treated as 0 by Unity. The cutoff is somewhere around 3.402823e+7 - that gives you a light with a very long range whereas 3.402823e+8 gives you a light with no range.

ooops. potentially some user error here.
Closing until I can investigate properly.

Interesting – I believe I noted a similar issue a while back. Please update when you have more findings and potentially a test model!


X mouse like the XP powertoys used to have

Description of the new feature / enhancement
Have a widow behind another window but focus for typing remains on the window at the back while output might be displayed on the front window
Scenario when this would be used?
I would use it all day every day when admining Unix servers
Supporting information
No response

This would be a dandy feature!
I would suppose the hardest thing about the implementation would be getting it into the PowerToys UI.  There is only the one registry key that usually needs to be created, for adjusting the delay time for changing focus, and then one other for [en/dis]abling the feature.

Thanks for your message. This is a Duplicate of an other issue: /dup #74. Additional comments may be added there.


Fix PKCS12 certs not allowed to contain CA certs

It is a common scenario that a PKCS12 keystore contains only one private key, but multiple aliases/entries: for example we need to import the CA certs before we could import the renewed cert.
So the idea is to only look for private key type entires in the keystore and do not throw an exception if it also contains CA or other non-private key certs, but only if it contains zero or multiple private keys as those scenarios are indeed invalid.
Note that I had trouble mocking the java KeyStore aliases() method in the unit tests with @PrepareForTest({KeyStore.class}) + EasyMock/PowerMock.createMock even tough PowerMock should support mocking final methods, but I could mock the KeyStoreSpi.
If someone knows a way to mock the KeyStore class with these libraries please let me know and will improve the code, but I can also live with this approach.

Thanks for making this PR! We'll get it reviewed and tested, and it should be in our next release.

Hi,
Any update on this?
Thanks,
Barna

Hi, Any update on this? Thanks, Barna

Hello, sorry for the delay on this, it's been a busy couple of months and this fell through the cracks. Before we add this to our library, I just wanted to confirm what the intent here is:

In the current version of our library, we're defining a PKCS12 keystore and loading an InputStream (assumed to be a PKCS12 certificate) into it. Then, we grab the first alias in it, and treat it as a PrivateKey when creating the client certificate. If there are 0 or multiple aliases, we thrown an exception
In your version, we set up the keystore in the same way. However, rather than grabbing the first alias, we grab the first alias that is a PrivateKeyEntry, and treat that as a PrivateKey when creating the client certificate. If there are 0 or multiple PrivateKeyEntry aliases, we throw an exception

In short, it changes our "only 1 alias" check into an "only 1 alias that is a PrivateKeyEntry" check. Am I understanding it right?

Hey @Avery-Dunn
Thanks for the update. I can relate to that :)
You are correct about the change, I couldn't have described it better.
And the motivation is to make it possible use the MSAL library with the PKCS12 keystore even if it contains a CA (or any non-private key) cert beside the private key cert which is the case for all our keystore files.
Thanks,
Barna

Hey @agostonbarna, we've reviewed the PR and it all looks good, these changes should get into our next release, which we expect to have done today.
However, since you made this PR our library when through some file restructuring due to other work, and just to make the merging easier I've made a new PR (https://github.com/AzureAD/microsoft-authentication-library-for-java/pull/549) that has the exact same changes in it. Feel free to review that, and once it's approved I'll merge it in and close the PR when the release is done.

Thanks @Avery-Dunn for aligning it with the new structure and doing the merge :)

Closing this PR since these changes made it into our recent 1.13.2 release via https://github.com/AzureAD/microsoft-authentication-library-for-java/pull/549. Thanks for the contribution, and if you have any other improvements in mind feel free to open up new issues/PRs.


Interoperability on the third-party libraries

Currently, this mediator needs to have the hard-coded bytes inside of the encoded message.
"typ" : "application/didcomm-plain+json"
typ is not part of the specification.
This requirement comes from the Did Comm library implementation https://github.com/sicpa-dlab/didcomm-python/pull/93

On the outermost envelope, I have "typ":"application/didcomm-encrypted+json"
{
"ciphertext":"...",
"protected":"eyJlcGsiOnsia3R5IjoiT0tQIiwiY3J2IjoiWDI1NTE5IiwieCI6IndtSU90Sm03MVUwTGI3NDJqYThudFo1NjlGWDlqRjlBVVJ0cm1WYTluU28ifSwiYXB2IjoiLWNOQ3l0eFVrSHpSRE5SckV2Vm05S0VmZzhZcUtQVnVVcVg1a0VLbU9yMCIsInR5cCI6ImFwcGxpY2F0aW9uL2RpZGNvbW0tZW5jcnlwdGVkK2pzb24iLCJlbmMiOiJBMjU2Q0JDLUhTNTEyIiwiYWxnIjoiRUNESC1FUytBMjU2S1cifQ",
"recipients":[{...}],
"tag":"...",
"iv":"..."
}

{"epk":{"kty":"OKP","crv":"X25519","x":"wmIOtJm71U0Lb742ja8ntZ569FX9jF9AURtrmVa9nSo"},"apv":"-cNCytxUkHzRDNRrEvVm9KEfg8YqKPVuUqX5kEKmOr0","typ":"application/didcomm-encrypted+json","enc":"A256CBC-HS512","alg":"ECDH-ES+A256KW"}

But for what I understood from the code of sicpa-dlab/didcomm-python. It requires that field to be hard coded on the content (from ciphertext).

There is already a fix. (just need to be released)

There is still no new release. I tried to open an issue asking for it
https://github.com/sicpa-dlab/didcomm-python/issues/102

I think this was fixed on version "0.3.2".
Let's update the requirements.txt to mention that version and close this.


How to configure alias in jiti? Is there any detailed documentation?

Describe the feature
I want to use @ instead of ./src, for example @/utils is equivalent to ./src/utils
Additional information

[ ] Would you be willing to help implement this feature?

It is possible using alias config or (JITI_ALIAS).
tsconfig and other external configs are not infered (sorry i know it might feel a downside DX) but it is important to make jiti behavior portable and predictable.
Additionally since we use ESM resolution, node.js imports in package.json will be also respected for another way of setting aliases.


[RFC] Design resultvisitor

This comment applies not necessarily to this section, however, the information provided here already leans towards an implementation as well -- maybe those chapters need to be merged.

I agree. See also commented text in #50.


chore: Add compiler settings to our release profile

I've wanted to add these for a while, and we'll soon release a new version of our C bindings, so now is a good time.
The debug flag enables as much debug info as possible in release builds without compromising optimizations. This is important for doing postmortem debugging of problems found in release builds. Windows uses a setting like this in its release builds, and I believe Chromium does too.
Maximizing optimization for size is perhaps more controversial, but I believe it's the best choice for us. Our library will look better to some decision-makers if it's smaller, and the difference is particularly dramatic with the Unix adapter. If we ever find that this decision noticeably hurts real-world performance, I'll be happy to reverse it.

Have you noticed significant compile times increase with codegen-units = 1? I know it makes it easier for the compiler to perform optimizations, but we also got complaints about the Unix adapter compile time.

No I haven't. And anyway, this only affects our own release builds, normally done in CI, not the builds of downstream Rust users in their own workspaces.

Removing debug=true on commit 424de4f make Unix accesskit_c shared lib go from 20M to 3.9M. This is a very very high price that I think no user of our C bindings would be willing to pay.


PLANNER-420: Fix

thanks for fixing it quickly :)

No problem :) Btw, just confirmed that this really doesn't affect 6.3.x (wasn't #126 isn't backported).


Feature/add FileUtils#rm_f

Add a FileUtils.rm_f method, fix #12715.
Basically, FileUtils.rm_f  and FileUtils.rm different in the following way:

FileUtils.rm delete on directory should raise(this is how it used to do), FileUtils.rm_f just ignored silently.
FileUtils.rm delete on file list, when delete to a directory, should raise(this is how it used to do), Fileutils.rm_f ignored in this case too.

Check more on spec.
I also fixed a documentation error, Dir.rmdir to Dir.delete
Thanks.

This changes the semantics of File.delete? to not raise an exception when trying to delete a file. That's an inacceptable breaking change. If File.delete? returns false it means the path does not exist. This method should continue to raise if the path exists but can't be deleted.

We should implement FileUtils.rm_f without changing File.delete?. It can call Crystal::System::File.delete directly with the appropriate configuration.
A discussion about File.delete? is a separate topic.

Actually, the semantics of rm -f are incorrectly reflected here.
rm -f behaves exactly as File.delete? in Crystal. It does not error on non-existing paths. But it does error when the path is a directory:
$ mkdir foo
$ rm -f foo
rm: cannot remove 'foo': Is a directory

FileUtils.rm_f would just be an alias to File.delete?.

Man pages
POSIX:
       -f	 Do not prompt for confirmation. Do not write diagnostic messages or modify the exit status in the case of  nonexistent  operands.
		 Any previous occurrences of the -i option shall be ignored.

Linux/GNU:
-f, --force
       ignore nonexistent files and arguments, never prompt

On macOS:
     -f		 Attempt to remove the files without prompting for confirma-
		 tion, regardless of the file's permissions.  If the file does
		 not exist, do not display a diagnostic message or modify the
		 exit status to reflect an error.  The -f option overrides any
		 previous -i options.

rm -f behaves exactly as File.delete? in Crystal. It does not error on non-existing paths. But it does error when the path is a directory:

Yes, you are right, I just try to follow the exact behavior of Ruby versions.
[1] pry(main)> require "fileutils"
=> false
[2] pry(main)> FileUtils
=> FileUtils
[3] pry(main)> FileUtils.rm_f("1212")
=> ["1212"]
[4] pry(main)> File.exists?("1212")
=> true

I read the source code of ruby version,  i found those behavior is intentional.
Though, my current code is not copy the expected behavior too, the ruby solution is rescue all error.(as see in following screenshot)

The above Entry_.new(path).remove_file just run linux platform File.unlink, it will raise on any error, the behavior is same as FileUtils.rm.
Deletes the named files, returning the number of names
passed as arguments. Raises an exception on any error.
Since the underlying implementation relies on the
unlink(2) system call, the type of
exception raised depends on its error type (see
https://linux.die.net/man/2/unlink) and has the form of
e.g. Errno::ENOENT.

As you see in above definition, FileUtils.rm_f is just rescue all exception version of FileUtils.rm.
def rm_f(list, noop: nil, verbose: nil)
  rm list, force: true, noop: noop, verbose: verbose
end

So, which one to choice?  i guess ruby version behavior is intentional?

IMO the semantics of the Ruby version of FileUtils.rm_f are very bad. It clearly derives from the shell command rm -f but then it has different behaviour on error.
I'd prefer to stick with the semantics of rm -f which is implemented in File.delete?.

IMO the semantics of the Ruby version of FileUtils.rm_f are very bad. It clearly derives from the shell command rm -f but then it has different behaviour on error. I'd prefer to stick to the original semantics of rm -f, even if that unfortunately means to deviate from Ruby. But I think that's the more sane option.

Okay, i revert many changes to follow unix command rm -f, please have a look.

@zw963 believe so too, the most common usecase is a force file deletion. @straight-shoota I'd suggest to reconsider your position.

Almost forgot this PR ...


Is there any way to pass  Applicant ID through JS code in android? same as IOS?

As in below code there is a way to pass applicant ID but in android?
  launchSDK() {
    if (Platform.OS == 'android') {
      NativeModules.OnfidoSDK.startSDK(
        (applicantId) => { this.setTextContent("Verification complete", "To perform another verification, press \"Launch\"") },
        (errorCause) => { this.setTextContent("Flow not finished", "To try again, press \"Launch\"") }
      );
    } else {
      NativeModules.OnfidoSDK.startSDK(
        'APPLICATION_ID',
        (applicationId) => { this.setTextContent("Verification complete", "To perform another verification, press \"Launch\"") },
        (errorCause) => { this.setTextContent("Flow not finished", "To try again, press \"Launch\"") }
      );
    }
  }

@yoginair you can create applicant ids on the Android SDK too https://github.com/onfido/onfido-android-sdk#5-creating-the-sdk-configuration.
Hope that helps

@yoginair you can indeed pass the applicant ID to the SDK by using the withApplicant(applicantId) method.
Let us know if it works for you

@yoginair @AbhishekCode we have updated the react native sample app using our latest sdks and latest build tools. Android integration code now showcases withApplicant(applincantId)


Create a sidebar navigation for game spectators to chose from

A user spectating a game should be able to select from options to either chat OR join a different live game.

I created/styled a sidebar component. In this component, I created a navigation menu (Chat/Games) for spectators of a chess game  to switch between the:

Chat component (https://chess.zuri.chat/game)
Live Games component (https://chess.zuri.chat/game/games)

PR Link:
https://github.com/zurichat/zc_plugin_chessboard/pull/352
Live Link:
https://chess.zuri.chat/game
Both chat and live games component are to be created with separate Github issues.


Locale banner user test

User Story

As a [user role below]:

DDS designer

I need to:

test the locale banner studies

so that I can:

determine which design is most successful and present the results to stakeholders
Additional information

Issue #855 for initial studies done
Box folder with studies
{{user metrics}}

Acceptance criteria

[x] 3 directions are shared with stake holders
[ ] test plan is created
[ ] {{And another}}

We reviewed two initial visual directions with Mary O'Donnell and Tina Williams today, April 6th.
Option 1: Top banner

Option 2: Top right notification

Meeting notes:
In general Tina & Mary leaned towards the bottom banner direction due to some of the concerns with NPS survey module.
Concerns
– NPS survey pop up: where does it appear? Center, side rail?
– Site feedback: Appears on the right side on Cloud
– Mobile: what can we do to not cover all of the content so users don’t feel blocked
– Bottom banner blocks the content.
Questions
Q: What happens if a user doesn't choose an option? Does it scroll away, or continue to cover the content.
A: It is persistent, we want the user to select something and understand they have changed locations or been redirected somewhere outside of their default locale.
Actions
NPS Survey
– Figure out where NPS survey pops up
– If NPS survey pops up what happens to the Locale banner?
– How we can implement the bottom banner direction to not interfere with Lets talk and NPS
Mobile
– Do some more explorations for the mobile designs to not block all of the content
– Explore some options that reduce the copy and user needs to click it to see full message.
User testing
– Test the two designs for Desktop (bottom banner and notification) to collect information on message placement
– Will need to test the alternate mobile experience if we are changing copy.


Feature: Define devices & ips in config

The ability to add devices via config would be very helpful and has been asked for in some other issues (#35, #29).
Even just the ability to define device id -> IP mappings would allow users access to the local LAN API in situations where multicast groups are not an option (udp packets sent directly to the device work).
I ended up extending async_setup_entry() in light.py with my hard coded lan config, but of course this is neither optimal nor will it survive an update of the integration.

I would love to vote for this feature as well.
I like having an IoT VLAN for these devices and enabling UDP port 4003 from these devices to Home Assistant doesn't seem to be enough to get LAN Mode enabled.

I've been working on govee2mqtt, the successor to govee-lan-hass.
It has more extensive options around LAN control; read more about them here:

https://github.com/wez/govee2mqtt/blob/main/CONFIG.md#lan-api-control

and more about the project in general here:

https://github.com/wez/govee2mqtt/tree/main#govee-to-mqtt-bridge-for-home-assistant

Hey Wez, thanks for doing this.
I see the documentation mentions support for the platform api. Does that mean this integration will be able to pull in all govee devices, including appliances, rather than just those with lan api support?

I'm going to close this issue as I have no plans to fix this here, but you can do this in Govee2MQTT so I'd suggest looking at that.


[release-20.03] sudo: 1.8.31 -> 1.9.5p2

Fixes CVE-2021-3156.
@worldofpeace As one of 20.03 release managers, do you have any preferences w.r.t upgrading to 1.9 or applying patches to 1.8.31 for the CVE ?
I can do either way, I have the patches from Ubuntu for 1.8.31 which seem to apply cleanly.

Motivation for this change
Things done

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

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

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

Ping @disassembler as well.

Ping @disassembler as well.

20.03 should be EOL now, I don't think we accept security updates?

20.03 should be EOL now, I don't think we accept security updates?

I have advertised that 20.03 won't be getting security updates because it's EOL https://github.com/NixOS/nixpkgs/issues/101975. Closing

I have advertised that 20.03 won't be getting security updates because it's EOL https://github.com/NixOS/nixpkgs/issues/101975. Closing


Course - Google Cloud Computing Foundations: Infrastructure in Google Cloud

Course - Google Cloud Computing Foundations: Infrastructure in Google Cloud
https://google.qwiklabs.com/course_templates/154
https://google.qwiklabs.com/course_sessions/116497
Quest - Perform Foundational Infrastructure Tasks in Google Cloud
https://google.qwiklabs.com/quests/118
Lessons - 4,5,6
How are user identities created in Cloud IAM?
Answer: User identities are created outside of Google Cloud using a Google-administered domain.
Reason: Creating users and groups within Google Cloud is not possible.
Which of the following is not an encryption option for Google Cloud?

Customer-managed encryption keys (CMEK)
Google encryption by default
Customer-supplied encryption Keys (CSEK)
Scripted encryption keys (SEK)

Scripted encryption keys is not an option with Google Cloud.
If a Cloud IAM policy gives you Owner permissions at the project level, your access to a resource in the project may be restricted by a more restrictive policy on that resource. False.
Policies are a union of the parent and the resource. If a parent policy is less restrictive, it overrides a more restrictive resource policy.

Lesson 4

https://youtu.be/_LTnis5hy-Y
Lesson 5
What protocol is used by REST APIs? HTTP
What protocol is used by REST APIs?

[x] Does both push and pull messaging
Can process messages as they enter the queue
A global service
Can hold millions of messages

Cloud Pub/Sub is not a messaging processing service. You write your applications to process the messages stored in Cloud Pub/Sub.
Which of the following API Management Systems can be used on legacy systems?
Cloud Endpoints
Cloud Gateway

[x] Apigee Edge
REST
Apigee Edge is designed to be used with both cloud and legacy systems.

Lesson 6
What is Identity-Aware Proxy?
Identity-Aware Proxy (IAP) is a Google Cloud Platform service that intercepts web requests sent to your application, authenticates the user making the request using the Google Identity Service, and only lets the requests through if they come from a user you authorize. In addition, it can modify the request headers to include information about the authenticated user.
project level roles
Google Cloud's Identity and Access Management (IAM) service lets you create and manage permissions for Google Cloud resources. Cloud IAM unifies access control for Google Cloud services into a single system and provides a consistent set of operations. In this hands-on lab you learn how to assign a role to a second user and remove assigned roles associated with Cloud IAM. More specifically, you sign in with 2 different sets of credentials to experience how granting and revoking permissions works from Google Cloud Project Owner and Viewer roles.
You should see Browser, Editor, Owner, and Viewer roles. These four are known as primitive roles in Google Cloud. Primitive roles set project-level permissions and unless otherwise specified, they control access and management to all Google Cloud services.

Role Name
Permissions

roles/viewer
Permissions for read-only actions that do not affect state, such as viewing (but not modifying) existing resources or data.

roles/editor
All viewer permissions, plus permissions for actions that modify state, such as changing existing resources.

roles/owner
All editor permissions and permissions for the following actions:  Manage roles and permissions for a project and all resources within the project. Set up billing for a project.

roles/browser (beta)
Read access to browse the hierarchy for a project, including the  folder, organization, and Cloud IAM policy. This role doesn't include  permission to view resources in the project.

Quiz
How are user identities created in Cloud IAM?
User identities are created outside of Google Cloud using a Google-administered domain. Creating users and groups within Google Cloud is not possible.
Which of the following is not an encryption option for Google Cloud?
Customer-managed encryption keys (CMEK)
Google encryption by default
Customer-supplied encryption Keys (CSEK)
Scripted encryption keys is not an option with Google Cloud.
If a Cloud IAM policy gives you Owner permissions at the project level, your access to a resource in the project may be restricted by a more restrictive policy on that resource. False.
Policies are a union of the parent and the resource. If a parent policy is less restrictive, it overrides a more restrictive resource policy.

Perform Foundational Infrastructure Tasks in Google Cloud
Challenge Scenario
You are just starting your junior cloud engineer
rolewith Jooli inc. So far you have been helping
teams create and manage Google Cloud resources.
Your challenge
You are now asked to help a newly formed development
team with some of their initial work on a new project
around storing and organizing photographs, called
memories. You have been asked to assist the memories
team with initial configuration for their application
development environment; you receive the following
request to complete the following tasks:
Some Jooli Inc. standards you should follow:

Create all resources in the us-east1 region
and us-east1-b zone, unless otherwise directed.
Use the project VPCs.
Naming is normally team-resource, e.g. an instance
could be named kraken-webserver1
Allocate cost effective resource sizes. Projects are
monitored and excessive resource use will result in the
containing project's termination (and possibly yours),
so beware. This is the guidance the monitoring team is
willing to share; unless directed, use f1-micro for
small Linux VMs and n1-standard-1 for Windows or other
applications such as Kubernetes nodes.

// Not sure we need to create this project and set
gcloud config set project memories
gcloud config set compute/zone us-east1-b
gcloud config set compute/region us-east1

Create a bucket for storing the photographs.
gsutil mb gs://a-photo

Create a Pub/Sub topic that will be used by a Cloud
Function you create.
gcloud pubsub topics create a-thumbnail

// Probably not needed
gcloud pubsub subscriptions create --topic a-thumbnail a-thumbnail

Create a Cloud Function.

gsutil mb gs://a-thumbnail-bucket
/* globals exports, require */
//jshint strict: false
//jshint esversion: 6
"use strict";
const crc32 = require("fast-crc32c");
const gcs = require("@google-cloud/storage")();
const PubSub = require("@google-cloud/pubsub");
const imagemagick = require("imagemagick-stream");

exports.thumbnail = (event, context) => {
  const fileName = event.name;
  const bucketName = event.bucket;
  const size = "64x64"
  const bucket = gcs.bucket(bucketName);
  const topicName = "a-thumbnail";
  const pubsub = new PubSub();
  if ( fileName.search("64x64_thumbnail") == -1 ){
    // doesn't have a thumbnail, get the filename extension
    var filename_split = fileName.split('.');
    var filename_ext = filename_split[filename_split.length - 1];
    var filename_without_ext = fileName.substring(0, fileName.length - filename_ext.length );
    if (filename_ext.toLowerCase() == 'png' || filename_ext.toLowerCase() == 'jpg'){
      // only support png and jpg at this point
      console.log(`Processing Original: gs://${bucketName}/${fileName}`);
      const gcsObject = bucket.file(fileName);
      let newFilename = filename_without_ext + size + '_thumbnail.' + filename_ext;
      let gcsNewObject = bucket.file(newFilename);
      let srcStream = gcsObject.createReadStream();
      let dstStream = gcsNewObject.createWriteStream();
      let resize = imagemagick().resize(size).quality(90);
      srcStream.pipe(resize).pipe(dstStream);
      return new Promise((resolve, reject) => {
        dstStream
          .on("error", (err) => {
            console.log(`Error: ${err}`);
            reject(err);
          })
          .on("finish", () => {
            console.log(`Success: ${fileName} → ${newFilename}`);
              // set the content-type
              gcsNewObject.setMetadata(
              {
                contentType: 'image/'+ filename_ext.toLowerCase()
              }, function(err, apiResponse) {});
              pubsub
                .topic(topicName)
                .publisher()
                .publish(Buffer.from(newFilename))
                .then(messageId => {
                  console.log(`Message ${messageId} published.`);
                })
                .catch(err => {
                  console.error('ERROR:', err);
                });

          });
      });
    }
    else {
      console.log(`gs://${bucketName}/${fileName} is not an image I can handle`);
    }
  }
  else {
    console.log(`gs://${bucketName}/${fileName} already has a thumbnail`);
  }
};

gcloud functions deploy thumbnail
--runtime nodejs10
--trigger-resource photographs
--trigger-event google.storage.object.finalize
--stage-bucket thumbnail-bucket

Remove the previous cloud engineer’s access from the
memories project.

Review Incomplete Taks In The Quest
This is the final task of the quest:
https://google.qwiklabs.com/quests/118
So there are other tasks which were incomplete.
Cloud Storage
Cloud Storage allows world-wide storage and retrieval of any amount of data at any time. You can use Cloud Storage for a range of scenarios including serving website content, storing data for archival and disaster recovery, or distributing large data objects to users via direct download. In this hands-on lab you will learn how to use the Cloud Console to create a storage bucket, then upload objects, create folders and subfolders, and make those objects publicly accessible.
Create a Bucket
In the Cloud Console, go to Navigation menu > Storage > Browser. Click Create Bucket.
Bucket naming rules:
Do not include sensitive information in the bucket name, because the bucket namespace is global and publicly visible.
Bucket names must contain only lowercase letters, numbers, dashes (-), underscores (), and dots (.). Names containing dots require verification.
Bucket names must start and end with a number or letter.
Bucket names must contain 3 to 63 characters. Names containing dots can contain up to 222 characters, but each dot-separated component can be no longer than 63 characters.
Bucket names cannot be represented as an IP address in dotted-decimal notation (for example, <IP_ADDRESS>).
Bucket names cannot begin with the "goog" prefix.
Bucket names cannot contain "google" or close misspellings of "google".
Also, for DNS compliance and future compatibility, you should not use underscores () or have a period adjacent to another period or dash. For example, ".." or "-." or ".-" are not valid in DNS names.
Each bucket has a default storage class, which you can specify when you create your bucket.
You can stop publicly sharing an object by removing permission entry that have allUsers.
gsutil mb gs://YOUR-BUCKET-NAME/
gsutil cp ada.jpg gs://YOUR-BUCKET-NAME
gsutil cp -r gs://YOUR-BUCKET-NAME/ada.jpg .
gsutil cp gs://YOUR-BUCKET-NAME/ada.jpg gs://YOUR-BUCKET-NAME/image-folder/
gsutil ls gs://YOUR-BUCKET-NAME
gsutil ls -l gs://YOUR-BUCKET-NAME/ada.jpg
gsutil acl ch -u AllUsers:R gs://YOUR-BUCKET-NAME/ada.jpg
gsutil acl ch -d AllUsers gs://YOUR-BUCKET-NAME/ada.jpg
gsutil rm gs://YOUR-BUCKET-NAME/ada.jpg
gsutil rm -r gs://anit-bucket-1
gsutil -m cp -r gs://spls/gsp067/python-docs-samples . : Copy sample app
gsutil mb -p [PROJECT_ID] gs://[BUCKET_NAME] : Create a new cloud storage bucket for your cloud function.
Cloud IAM
Google Cloud's Identity and Access Management (IAM) service lets you create and manage permissions for Google Cloud resources. Cloud IAM unifies access control for Google Cloud services into a single system and provides a consistent set of operations. In this hands-on lab you learn how to assign a role to a second user and remove assigned roles associated with Cloud IAM. More specifically, you sign in with 2 different sets of credentials to experience how granting and revoking permissions works from Google Cloud Project Owner and Viewer roles.
https://google.qwiklabs.com/focuses/551 Cloud IAM: Qwik Start
https://google.qwiklabs.com/focuses/1035 IAM Custom Roles
https://google.qwiklabs.com/focuses/10599 Cloud     Monitoring: Qwik Start
Navigation menu > IAM & Admin > IAM
Remove Project Viewer Access.
gcloud auth list: lists the credentialed accounts in your Google Cloud project
Cloud Monitoring
Cloud Monitoring provides visibility into the performance, uptime, and overall health of cloud-powered applications. Cloud Monitoring collects metrics, events, and metadata from Google Cloud, Amazon Web Services, hosted uptime probes, application instrumentation, and a variety of common application components including Cassandra, Nginx, Apache Web Server, Elasticsearch, and many others. Cloud Monitoring ingests that data and generates insights via dashboards, charts, and alerts. Cloud Monitoring alerting helps you collaborate by integrating with Slack, PagerDuty, HipChat, Campfire, and more.
Create a VM.
gcloud compute ssh gcelab2 --zone us-central1-c : Connect to the instance
Monitor a Compute Engine virtual machine (VM) instance with Cloud Monitoring. You'll also install monitoring and logging agents for your VM which collects more information from your instance, which could include metrics and logs from 3rd party apps.
Agents collect data and then send or stream info to Cloud Monitoring in the Cloud Console.
The Cloud Monitoring agent is a collectd-based daemon that gathers system and application metrics from virtual machine instances and sends them to Monitoring. By default, the Monitoring agent collects disk, CPU, network, and process metrics. Configuring the Monitoring agent allows third-party applications to get the full list of agent metrics.
It is best practice to run the Cloud Logging agent on all your VM instances.
curl -sSO https://dl.google.com/cloudagents/add-monitoring-agent-repo.sh
sudo bash add-monitoring-agent-repo.sh
sudo apt-get update
sudo apt-get install stackdriver-agent
curl -sSO https://dl.google.com/cloudagents/add-logging-agent-repo.sh
sudo bash add-logging-agent-repo.sh
sudo apt-get update
sudo apt-get install google-fluentd
Create an uptime check
Uptime checks verify that a resource is always accessible.
For practice, create an uptime check to verify your VM is up.
Create an alerting policy
Use Cloud Monitoring to create one or more alerting policies.
Create a dashboard and chart
You can display the metrics collected by Cloud Monitoring
in your own charts and dashboards. In this section you
create the charts for the lab metrics and a custom dashboard.
Pub/Sub
The Pub/Sub basics
As stated earlier, Google Cloud Pub/Sub is an asynchronous global messaging service. There are three terms in Pub/Sub that appear often: topics, publishing, and subscribing.

A topic is a shared string that allows applications to connect with one another through a common thread.
Publishers push (or publish) a message to a Cloud Pub/Sub topic.
Subscribers make a "subscription" to a topic where they will either pull messages from the subscription or configure webhooks for push subscriptions. Every subscriber must acknowledge each message within a configurable window of time.

To sum it up, a producer publishes messages to a topic and a consumer creates a subscription to a topic to receive messages from it.
gcloud pubsub topics create myTopic
gcloud pubsub topics list
gcloud pubsub topics delete Test1
gcloud  pubsub subscriptions create --topic myTopic mySubscription
gcloud pubsub topics list-subscriptions myTopic
gcloud pubsub subscriptions delete Test1
gcloud pubsub topics publish myTopic --message "Hello"
gcloud pubsub subscriptions pull mySubscription --auto-ack
You published 4 messages to your topic, but only 1 was outputted.
Now is an important time to note a couple features of the pull command that often trip developers up:

Using the pull command without any flags will output only one message, even if you are subscribed to a topic that has more held in it.
Once an individual message has been outputted from a particular subscription-based pull command, you cannot access that message again with the pull command.

gcloud pubsub topics publish myTopic --message "Publisher is starting to get the hang of Pub/Sub"
gcloud pubsub topics publish myTopic --message "Publisher wonders if all messages will be pulled"
gcloud pubsub topics publish myTopic --message "Publisher will have to test to find out"
gcloud pubsub subscriptions pull mySubscription --auto-ack --limit=3
Add a flag to your command so you can output all three messages in one request. You may have not noticed, but you have actually been using a flag this entire time: the --auto-ack part of the pull command is a flag that has been formatting your messages into the neat boxes that you see your pulled messages in.
limit is another flag that sets an upper limit on the number of messages to pull.
Cloud Functions
Cloud Functions is a serverless execution environment for building and connecting cloud services. With Cloud Functions you write simple, single-purpose functions that are attached to events emitted from your cloud infrastructure and services. Your Cloud Function is triggered when an event being watched is fired.  There is no need to provision any infrastructure or worry about managing any servers.
Cloud Functions can be written in Node.js, Python, and Go, and are executed in language-specific runtimes as well. You can take your Cloud Function and run it in any standard Node.js runtime which makes both portability and local testing a breeze.
Cloud Functions provides a connective layer of logic that lets you write code to connect and extend cloud services. Listen and respond to a file upload to Cloud Storage, a log change, or an incoming message on a Cloud Pub/Sub topic. Cloud Functions augments existing cloud services and allows you to address an increasing number of use cases with arbitrary programming logic. Cloud Functions have access to the Google Service Account credential and are thus seamlessly authenticated with the majority of Google Cloud services such as Datastore, Cloud Spanner, Cloud Translation API, Cloud Vision API, as well as many others. In addition, Cloud Functions are supported by numerous Node.js client libraries, which further simplify these integrations.
Cloud events are things that happen in your cloud environment.These might be things like changes to data in a database, files added to a storage system, or a new virtual machine instance being created.
Events occur whether or not you choose to respond to them. You create a response to an event with a trigger. A trigger is a declaration that you are interested in a certain event or set of events. Binding a function to a trigger allows you to capture and act on events. For more information on creating triggers and associating them with your functions, see Events and Triggers.
Cloud Functions removes the work of managing servers, configuring software, updating frameworks, and patching operating systems. The software and infrastructure are fully managed by Google so that you just add code. Furthermore, provisioning of resources happens automatically in response to events. This means that a function can scale from a few invocations a day to many millions of invocations without any work from you.
Cloud Shell is a virtual machine that is loaded with development tools. It offers a persistent 5GB home directory and runs on the Google Cloud. Cloud Shell provides command-line access to your Google Cloud resources.
https://cloud.google.com/sdk/gcloud/reference/functions/event-types/list
mkdir gcf_hello_world
cd gcf_hello_world
nano index.js
/**
* Background Cloud Function to be triggered by Pub/Sub.
* This function is exported by index.js, and executed when
* the trigger topic receives a message.
*
* @param {object} data The event payload.
* @param {object} context The event metadata.
*/
exports.helloWorld = (data, context) => {
const pubSubMessage = data;
const name = pubSubMessage.data
    ? Buffer.from(pubSubMessage.data, 'base64').toString() : "Hello World";

console.log(`My Cloud Function: ${name}`);
};

gsutil mb -p [PROJECT_ID] gs://[BUCKET_NAME]
When deploying a new function, you must specify --trigger-topic, --trigger-bucket, or --trigger-http. When deploying an update to an existing function, the function keeps the existing trigger unless otherwise specified.
For this lab, you'll set the --trigger-topic as hello_world.
gcloud functions deploy thumbnail --stage-bucket labb1 --trigger-topic labb1 --runtime nodejs10 --region us-east1
--stage-bucket=STAGE_BUCKET
When deploying a function from a local directory,
this flag's value is the name of the Google Cloud
Storage bucket in which source code will be stored.
Note that if you set the --stage-bucket flag when
deploying a function, you will need to specify
--source or --stage-bucket in subsequent deployments
to update your source code.
gcloud functions describe thumbnail
gcloud functions logs read thumbnail
https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--stage-bucket
https://cloud.google.com/functions/docs/calling/storage
https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--trigger-bucket


Upgrade toolchain to nightly-2023-03-09

Description of changes:
Upgrade our toolchain to nightly-2023-03-09. The changes here are related to the following changes:

https://github.com/rust-lang/rust/pull/107163
https://github.com/rust-lang/rust/pull/107838
https://github.com/rust-lang/rust/pull/108364
https://github.com/rust-lang/rust/pull/108505
https://github.com/rust-lang/rust/pull/108029
https://github.com/rust-lang/rust/pull/108047
https://github.com/rust-lang/rust/pull/107753
https://github.com/rust-lang/rust/pull/108250
https://github.com/rust-lang/rust/pull/108020
https://github.com/rust-lang/rust/pull/108112

Resolved issues:
Resolves #2283
Related RFC:

Optional #ISSUE-NUMBER.
Call-outs:

Testing:

How is this change tested?

Is this a refactor change?

Checklist

[ ] Each commit message has a non-empty body, explaining why the change was made
[ ] Methods or procedures are documented
[ ] Regression or unit tests are included, or existing tests cover the modified code
[ ] My PR is restricted to a single feature or bugfix

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses.

I have rebased the branch to include the CBMC 5.79.0 update to make sure this dependency is sorted out (but obviously we are currently failing well before reaching CBMC). I will look into those failures.


Runpod instructions sublist was improperly formatted

Summary
Fixed an issue with https://github.com/semperai/arbius/pull/10 where the sublist was improperly formatted and showed the instructions in a single line. I also added full stops to the ends of the points and swapped the order of the vast cli command and the note regarding it.

Great, thanks so much


the field PApplet.sketchPath is not visible

It seems to not work with the newer Processing 3.0.1.
By the way. Awesome work!

'topSketchPath = sketchPath();' //worked for me

thanks @mewashin.


Add failing spec for Elixir resolution in an umbrella app

This combination of mixfiles sends Hex into a tailspin. Running mix deps.get on it locally causes my computer to melt.
In Dependabot, we time out when that happens. However, we appear not to be returning anything from the update checker when that happens, causing the following error:
** (ArgumentError) argument error
           :erlang.binary_to_term("")
           /Users/greysteil/code/dependabot-core/helpers/elixir/bin/run.exs:11: DependencyHelper.main/0
           (elixir) lib/code.ex:767: Code.require_file/2
           (mix) lib/mix/tasks/run.ex:146: Mix.Tasks.Run.run/5

This PR adds a failing spec for the above case, in the hope that @stevedomin might be kind enough to contribute a fix.

@stevedomin - OK, I think I've boiled this down to the point where it will be 1 minute of your time. Can you take a look? bundle exec rspec spec/dependabot/update_checkers/elixir/hex_spec.rb:416 to replicate, and you'll notice the spec takes 30 seconds to run, almost certainly because it's timing out.

@stevedomin - I wrote the Elixir to fix. If you could give it a 30 second review that would be amazing, but I'm going to merge this if specs pass anyway.


[Task]: Add stories for json viewer component

Is there an existing issue for this?
https://github.com/appsmithorg/appsmith/issues/17507

[X] I have searched the existing issues

SubTasks
No response

won't fix - project cancelled


Use evenshtein distance to round to nearest matching file/dir

See https://en.wikipedia.org/wiki/Levenshtein_distance
This can fix spelling mistakes on quick-jumps

This particular algorithm might be too hard / complicated to implement in pure shell. Even if it could be done, it would probably be very slow. The default fuzzy matching is basically translating query string to a regular expression; then fasd relies on sed to find matches. I'm sure there are other ways to do fuzzy matching efficiently in sed and awk that might work better than the current algorithm. But, I personally find the default matching algorithm to be effective and predictable.


futures_klines close price do not matches with PC APP or Web.

Hello.
futures_klines close price do not matches with PC APP or Web.
I’m trying to get klines, specially I need the exact close price for the last 15 minutes.
Using:
https://fapi.binance.com/fapi/v1/klines?symbol=BTCUSDT&interval=1m&startTime=1616841000000&endTime=1616841840000
I tried with client.futures_klines with the same result:
data = client.futures_klines(
symbol=”BTCUSDT”,
interval="1m",
startTime=1616841000000,
endTime=1616841840000)
I tried too with limit 15 and error persists.
I got:
symbol       openTime      open     close      closeTime
0   BTCUSDT<PHONE_NUMBER>000  54965.17  54923.93<PHONE_NUMBER>999
1   BTCUSDT<PHONE_NUMBER>000  54923.93  54888.21<PHONE_NUMBER>999
2   BTCUSDT<PHONE_NUMBER>000  54888.21  54866.31<PHONE_NUMBER>999
3   BTCUSDT<PHONE_NUMBER>000  54866.30  54861.35<PHONE_NUMBER>999
4   BTCUSDT<PHONE_NUMBER>000  54861.35  54829.29<PHONE_NUMBER>999
5   BTCUSDT<PHONE_NUMBER>000  54829.29  54833.94<PHONE_NUMBER>999
6   BTCUSDT<PHONE_NUMBER>000  54833.93  54854.39<PHONE_NUMBER>999
7   BTCUSDT<PHONE_NUMBER>000  54854.39  54814.10<PHONE_NUMBER>999
8   BTCUSDT<PHONE_NUMBER>000  54814.11  54775.73<PHONE_NUMBER>999
9   BTCUSDT<PHONE_NUMBER>000  54775.48  54836.46<PHONE_NUMBER>999
10  BTCUSDT<PHONE_NUMBER>000  54836.47  54822.25<PHONE_NUMBER>999
11  BTCUSDT<PHONE_NUMBER>000  54822.27  54783.00<PHONE_NUMBER>999
12  BTCUSDT<PHONE_NUMBER>000  54783.00  54809.75<PHONE_NUMBER>999
13  BTCUSDT<PHONE_NUMBER>000  54809.74  54816.01<PHONE_NUMBER>999
14  BTCUSDT<PHONE_NUMBER>000  54817.14  54865.71<PHONE_NUMBER>999
Just 7th, 11th, 12th, 13th and 14th matches, but if I requests later for another 15 minutes, matches and not matches position change.
Expected behavior
Get close prices as web and PC APP.
Environment (please complete the following information):

Python version: 3.7
OS: Ubuntu 18.04
python-binance version: 0.7.9

Thanks for your job.
Have a nice weekend.

there's always lag/delay of some sort. so the info you're getting may be outdated. That's what I came to think.

Hello Bob12345.
My idea is get the last 15 each minute for an estrategy, but I want to have exactly the right close mount as Binance and Tradingview have.
Why it has a lag? in an exactly timestamp you have a close mount. Does it a Binance problem?
Many Thanks and have a nice week.


materialize.css font-weight: 14px

Please check bin/materialize.css line(6944)
.side-nav .userView .name,
.side-nav .userView .email {
font-weight: 14px;
line-height: 24px;
}
Is font-weight can be 14px? Seems like typo (not a font-weight or not 14px)

You're right, it's : font-size: 14px; or font-weight: bold; for example.

What is correct variant?

Fixed in 0828914


Added code for symbol pattern 29.

Code will print symbol pattern 29.
Related Issue - #715
Sample Outputs: -

@aryashah2k Please review this PR.


Permissions Issue

When trying to find the latest updates on a non privileged user the following error will be reported;
tail: cannot open ‘/var/log/yum.log’ for reading: Permission denied

This is solved with the release of the V2 Update


Daily reset for ‘sensor.electricity_production_costs_today’

The value of ‘sensor.electricity_production_costs_today’ sometimes still has a value after 0:00 hours and then is unavailable until the energy production starts the next day. This behavior causes for instance a utility meter helper that is based on this sensor to start with the wrong value.
Can you please make it behave just like it’s counterpart ‘sensor.electricity_delivery_costs_today’ and have a daily reset to zero at 0:00 hours?

Both sensors are setup equal and use the same property to trigger a reset on the new day.
So they should already behave the same.
Can you provide the graphs for both sensors?

@vries-ict can you test the main branch? Added a fallback to zero when sensor gets unavailable

Thanks for your swift action. I would really like to test for you, Sorry, I don't know how to do that yet, but I would like to learn. Can you point me in the right direction or documentation. Thanks.

Over the last couple of day ‘sensor.electricity_production_costs_today’ had a daily reset to zero as you intended. That also solved the issues I had with calculating net costs. Thanks @fsaris !

https://github.com/fsaris/home-assistant-zonneplan-one/tree/2024.9.0


Config-flow cannot be loaded: 500 Internal Server Error Server got itself in trouble

Hi,
Tried to add integration for Niko Home Control, however I got the error message  "Config-flow cannot be loaded: 500 Internal Server Error Server got itself in trouble" w/o further notifications/log messages
Running Version Assistant 2022.10.5 / Frontend-versie: 20221010.0 on Ubuntu.
Anyone any idea about a potential cause ?

This is probably related to an outdated version of Home Assistant. The latest release is 2023.2.
I suggest you upgrade your Home Assistant instance. Let me know if that resolved the issue.

I recently installed home assistant from the snap store on a fresh installed ubuntu,  I checked and I'm afraid there is no newer version available ... Perhaps I should better reinstall in docker

I don't know Snap, but it seems like https://snapcraft.io/home-assistant-snap has a more recent version.

Hi Tijs, thanks for sharing your findings, you are right, there is a newer version available using snap. Seems that home assistant is not able to check for newer versions in my case. Easy to update this way : snap refresh home-assistant-snap --channel=latest/stable (btw : didn't know snap either until now but is similar to yum)
The issue with Niko home control is not resolved yet, however a notification is created at startup now :
Logger: homeassistant.components.homeassistant
Source: components/homeassistant/init.py:163
Integration: Home Assistant Core Integration (documentation, issues)
The system cannot restart because the configuration is not valid: Integration error: nhc2 - Requirements for nhc2 not found: ['getmac==0.8.3'].
Looks to me like some discovery process is failing during initalisation

It seems like getmac is not available on your system. Are you installing the integration through HACS?
If so: I would suggest to install Home Assistant as a docker container instead of snap

I checked and it's available on the system : /snap/home-assistant-snap/551/lib/python3.10/site-packages/getmac/getmac.py
When I add the entry with host ip into the configuration file manually I get the error on the getmac, when I remove it and try to add through hacs it throws the Internal server error as mentioned above.

From my quick tests on a virtual Ubuntu install this is related to the venv that Snap is using.
ERROR: Will not install to the user site because it will lack sys.path precedence to getmac in /snap/home-assistant-snap/547/lib/python3.10/site-packages
I could not find any working solution for this (and my Ubuntu knowledge is very limited).

Thanks Jo for sharing the information related to Ubuntu/snap setup
I went back today to the manual configuration approach using the configuration.yaml to avoid the need to execute actions like e.g. discovery with mac address lookup during startup/initalisation
Finally it works now (be it with some limitations) to have basic functionality of nhc integrated
In short, this is what I needed to do for now to get rid of some blocking issues during initalisation :
Edit configuraton.yaml :

defined host/port/user/password (token between double quotes")
added  "switches_as_lights: true"

removed "climate"
from below section in init.py :
FORWARD_PLATFORMS = (
"climate",
"switch",
"light",
"fan",
"cover"
removed all entries referring to
CoCoFan
CoCoShutter
CoCoSwitchedFan
CoCoThermostat

@JoCopp I think this issue is resolved? If not: feel free to reopen the issue


extra checks when deploying rook

Build SUCCESS, see build http://<IP_ADDRESS>:8080/job/dev-tools/464/


remove stopwords from anytext filter

Overview
initial rough implementation to improve #879
q: seems only relevant to postgres, because fulltextsearch does not exist in plain sqlite.
q: it's probably better to retrieve stopwords from postgres, to prevent asynchronity, but also support stopwords for other languages ( i have not found how)
q: instead of using q.split().each(i=> qr+="AND {name} ILIKE '%{i}%'", maybe we can use full text search syntax, to delegate this to db...
Related Issue / Discussion
#879
Additional Information
Contributions and Licensing
(as per https://github.com/geopython/pycsw/blob/master/CONTRIBUTING.rst#contributions-and-licensing)

[x] I'd like to contribute [feature X|bugfix Y|docs|something else] to pycsw. I confirm that my contributions to pycsw will be compatible with the pycsw license guidelines at the time of contribution.
[x] I have already previously agreed to the pycsw Contributions and Licensing Guidelines

actually when testing with postgres, i got this error message: 'column anytext_tsvector does not exist', so apparently the mechanism of full text search seems implemented, but somehow not activated, after creating the columns and trigger, full text search on title works without problems, so i guess i should rename this issue to: admin.py does not create tsvector tables at db-setup...?


FIX: print_summary_wrapper was not forwarding all channels

Was not passing values or exceptions back into the wrapped plan or
forwarding the return value out.

This looks like a relevant test failure:
bluesky/tests/test_simulators.py::test_summary_wrapper_comms FAILED      [ 92%]

Needs rebase and attention to failing test noted above.

The test failure was a missing import 🤦🏻 .

Fixed by https://github.com/bluesky/bluesky/pull/1627


Extract logic for computing default front matter

Rationale

Centralizing logic to allow future changes to the config dig sequence
("jekyll_compose" => "default_front_matter" => "posts" / "drafts" / "<collection>") be made at a single place.
Reduced line-lengths

🤖 😄
@jekyllbot: merge +dev


Clean whitespace formatting in docs

Update formatting with prettier in the documentation

Minor, white-space only, fixes. Will merge in once docs build passes.


Cross-compiling to Windows breaks playing .WebM(VP9) video

Godot version
3.3.2.stable
System information
Windows10 21H1
Issue description
Webm(VP9) video can't play in official engine and crash it, but works fine in engine compiled from Windows.
Considering official Windows build is compiled from Linux, I cross-compiled the engine on Linux (fedora34, in docker desktop), and it also crashes.
VP8 always works fine.
There is something wrong with webm module when Cross-compiling for Windows from Linux.
might related to #37648
Steps to reproduce
1.Play webm(vp9) video in official build, it will crash.
2.Compile from Windows and play webm(vp9), works fine.
Minimal reproduction project
I made minimal project contains vp8 and vp9 videos so you can reproduce it easily:
webm_bug.zip
(I want to upload the engine compiled from Windows, but it‘s too big)

Official binaries are cross-compiled for Windows from Linux too, so the issue must be coming from somewhere else.

Official Godot binaries are cross-compiled for Windows from Linux too, so the issue must be coming from somewhere else.
Do you have yasm installed in the container? Does it print a warning about YASM not being available while building near the top of the SCons log?

Yes, I've installed yasm. But what I mean is the official binary (from Linux) can't play vp9, but the build I compiled from Windows can.

Today I tried to compile the engine WITHOUT yasm installed and it can play vp9 videos well. So it should be YASM-related that causes VP9 crash the engine.

That's correct, I seem to have removed yasm from the base mono container (used for Dockerfile.windows) by mistake in https://github.com/godotengine/build-containers/commit/b409e6b9e9841aa5a5765c203ee9b9ebbba12180
So the issue will be fixed in 3.4 then, at the cost of unoptimized WebM decoding (but that's better than a crash for sure).


⚠ Bofrost.fr has degraded performance

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

HTTP code: 200
Response time: 1337 ms

Resolved: Bofrost.fr performance has improved in e7c2bc0 after 17 minutes.


Add dock-right shell, better questions ordering

Addresses #78 , pulls the shell to a "dock-right" layout on wide screens.

[x] Change the order of the questions to group across categories of review to follow the actual thinking process that goes behind evaluating a manuscript from big picture to more detailed and/or less research related feedback (e.g., evaluation of specific parts of review, soundness of the science, etc., leaving the questions about open data at the end)

[x] Change the spacing between questions and font size to increase readability. Right there is too much space between questions and selection points for the answer. With the compressed width of the dock-right UX, this didn't seem necessary.

[x] Change viz and spacing between selection points to select answer so that it is easier to see.  With the dock-right UX, this didn't seem necessary.

[x] Allow for user to drag the review panel to the side of the preprint and organize the viz as they prefer and better fits their screen (ideal but not a priority).

The UI is actually automatically restyled by window width: on --wide-screen-sized browser windows, dock-right layout is the only option, and resize controls are removed.  On mobile, the UX is unchanged (resizable-drawer layout).
Screenshots (on Mac)
Chrome

Safari (needs user intervention to zoom to "Actual Size")

Firefox

@sballesteros @georgiamoon

and tagging @dwins FTW?

Thanks for contributing this improvement!  I left a couple of comments.  One higher level thought I had was that it might not always make sense to split the screen 50/50 in wide mode; I wonder if there's a better rule we could follow (cap the width of the form around 350px or so?)
These changes seem pretty safe so once you've responded to my comments I think we can approve this for merge.

Adding @halmos

I wonder if we should not discuss the UI a bit more here.
For context, the current UI was designed to be an overlay UI (to remain as consistent with what the extension provides) and here we are changing that (a bit).
We decided to go with an overlay UI as we don't have control on the content where the shell is being injected in the extension case.
Here we could stick to an overlay UI and generalize the current shell so that the user can control the docking position (bottom, left or right). Note that we could also use different initial docking position based on the screen size if desired or let the user dock the shell where wanted.
Under that option, we would adapt the shell UI so the drag icon (allowing to resize the shell) can exists when the shell is docked to the left or right (so the shell would need some sort of border on the left or right).

I agree about moving towards a dockable UI that the user can control. IMO that's the desired end state. I think though that this seems to make improvements in that direction, so I would say let's make incremental progress and go ahead with these improvements. We could then follow up with enhancing the control to allow the user to choose where and how the shell is docked.

the logic is different though so not sure it's really incremental

Addressed the PDF + debounce comments.
Re: layout
I'm open to suggestions on how to restructure, but I did try to take a low-touch approach to implementing the side-by-side view: the CSS is the main driver for partitioning into docked vs. overlay layouts (which it kinda already was, because of the --wide/narrow-screen rules - I mainly just adjusted the left/width props).
Re: extension
I didn't really look too much into the extension code - is the idea that the extension can inject the overlay on any tab, e.g. directly on the preprint source PDFs?  Probably that means you want to keep the changes isolated to the fallback / site, and we probably need to keep an untouched shell.css for the extension? (e.g. extension-shell.css without all the --wide-screen stuff)

yes exactly for the extension, it injects the shell to preprint pages.
Right now the changes would "break" the extension in the sense that on wide screens the shell would hide part of the content.  See the screenshot below for an example:

re layout, I would like to get @halmos perspective (if he has time) and discuss a bit more before settling on an approach.
I am concerned that the current approach could be annoying based on certain screen sizes (see screenshot below where IMHO the PDF is too small).

The overlay approach may be more consistent and more flexible (and I don't think that there are any technical blockers to make it happen). That being said we could find tune the media query etc.

My POV is that attention and care should be given to how the shell appears at different screen sizes. My understanding is that the right-side position is only for larger screens - is that correct?
It seems to me that the side-by-side layout is only viable at very wide screens, but assuming that the size is large enough to accommodate a legible pdf rendering (and without it being obscured by the side-panel), then I don't see any issue with it.
To @sballesteros point - in "overlay" mode, the bottom position has several usability benefits in that the text is still readable while the pdf is partially obscured. When overlayed on the side (ie the side-panel partially covers the right side of the pdf), that is not possible. So for the side-dock, I would discourage using an overlay and instead make it a side-by-side layout, and, again, only when the screen is wide enough to not reduce the size of the PDF so that accessibility concerns come into play. Unfortunately, for the extension,  that may require a more significant refactoring.

Thanks! good point on the fact that right / left overlay is less useful than bottom one when there is overlap.
One extra complexity for the non overlay version and the native PDF reader is that user can set the PDF to cover 100% of width:

That could be a reason to still implement the right docked version as an overlay so that if user resize the PDF user can re-adjust / hide the shell

Please review the branch that preserves the extension's overlay layout, (basically retains the old CSS), and let me know if I can add that commit here.

thanks! just left a question comment there.
Otherwise (and unrelated) we should call .cancel() on the debounced function when we clean up.

@sajacy sorry to be late to follow up here, but I was just doing some testing on this locally and noticed that the mobile sizing is being a bit strange. I'm not 100% sure what's causing it, but if you could check on this, it seems like the PDF is zooming out so that it's really small.
Screenshot:

Aside from this, I think this is a definitely improvement and so I'd say that from a UX perspective this LGTM.

FWIW I left a comment in https://github.com/PREreview/rapid-prereview/pull/88#issuecomment-611348705

@georgiamoon The PDF width issue is fixed.  TIL: Responsive Design Mode.  Tested in all emulated devices on Firefox, Safari, Chrome on Mac.  Feel free to test further and merge at will.

Thanks @sajacy !


Created a prettier configuration based on the "Airbnb JavaScript Style Guide"

Ready for merge? @fabianlanzerath

Yes, it it ready!


fix: call worker unref instead of terminate

According to the docs, terminate seems to effectively stop all execution in the thread, as soon as possible. This seems to break some long running process — which was working with child_process before — when prerendering, either because the ample amounts of prerendered pages/routes, the huge amount of data that needs to be (pre)processed for each routes, or a combination of both.
Substituting terminate with unref would allow the worker to exit when it finds that it's the only active one in the event system, this would allow the long running process that seems to happen after terminate is called to finish without being interrupted.
The error thrown by the terminate method also seems to be very vague and random, trying to await it seems to give a more helpful message along with a stacktrace, but still not enough to figure out what's going on and why it's prematurely exiting the thread. This is mostly an excuse because I couldn't seem to find a way to recreate the issue in a smaller scale and push in a failing test.
Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpm changeset and following the prompts. Changesets that add features should be minor and those that fix bugs should be patch. Please prefix changeset messages with feat:, fix:, or chore:.

Hmm. The point of doing it in a worker/subprocess was to kill any straggling processes: https://github.com/sveltejs/kit/pull/10120/files#diff-348357ad608e5d50118974da4744182066b02236abef646543dbd7b40b6b8b27R5
From your description, I'm not sure it sounds like that will still happen?

Can you point out where in the description that made you unsure so that I can help out clarify them? We do have this code in the test that make sure that everything is shut down correctly, and it does fail if we only remove .terminate() but didn't call .unref().

Mhm, this is kind of a weird situation, as it seems we don't have equivalent measures to stop the process. From my limited understanding subprocess.kill() does allow it to run some cleanup before terminating, while worker.terminate() is like subprocess.kill('SIGTERM') aka forcefully stopping the worker immediately. There does not seem to be a similar method for workers to tell it "stop as soon as possible, but run cleanup before that".
So yeah, maybe unref is the right approach as it should terminate when the parent process terminates at the latest, but it's not quite the same since the "stop now" signal may come later than with the subprocess. I tend to approve this PR. @Conduitry  what's your stance on this?

Can you point out where in the description that made you unsure so that I can help out clarify them?

@ignatiusmb sorry for the two month hiatus in responding. The part I was referring to was "this would allow the long running process that seems to happen after terminate is called to finish without being interrupted". The problem I believe we were initially trying to solve was to kill an infinitely running process. If we're not interrupting then I wonder if we're really having the desired effect

We have a test that ensures child processes don't keep the parent process alive after prerendering is complete: https://github.com/sveltejs/kit/blob/108a6a8f02e41e4346e0b83749f8109217327157/packages/kit/test/prerendering/basics/src/hooks.server.js#L20-L23
As such, this PR seems good to merge to me (though I confess I don't quite understand what difference it would make in practice)


Remove get_pending_certificate_signing_request

A certificate operation retrieved via get_certificate_operation() contains the same bytes as get_pending_certificate_signing_request(), making the latter redundant.

Can one of the admins verify this patch?


feat: Implement remaining presence test

Signed-off-by: Meenal Trivedi<EMAIL_ADDRESS>

@Kegsay Please do review!


[Minor][Streaming] Fix a minor naming issue in JavaDStreamLike

This PR fixes a minor naming issue first introduced in d182a57cae6455804773db23d9498d2dcdd02172.
@zsxwing would you mind taking a look at this? Thanks.

Can one of the admins verify this patch?

ok to test

Test build #52029 has started for PR 11385 at commit a2fd602.

LGTM

Test build #52029 has finished for PR 11385 at commit a2fd602.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/52029/
Test PASSed.

Merged build finished. Test PASSed.

Thanks - going to merge this.

Thank you all for reviewing this.


Broken Link

🐛 Bug Report
(A clear and concise description of what the bug is.)
The link to the issues template: /ISSUE_TEMPLATE/algorithm-ds-proposal.md  on the README.md file under Contributing Guidelines is broken [404 Error] .
Have you read the Contributing Guidelines on Pull Requests?

Yes 👍🏽

@seraph776 Thanks for notifying. We can do two things for the same.
1.) Create an algotithm-ds-proposal.md file in the ISSUE_TEMPLATE directory with required  details.
2.) Change the link from algorithm-ds-proposal.md tofeature-request---.md
Would you like to take this up ?

Yes, I'll complete this task!

Issue resolved!


module 'balance.adjustment' has no attribute 'apply_transformations'

Just trying the CBPS sample notebook and ran up this error.
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
[<ipython-input-58-ee26876ffb7a>](https://localhost:8080/#) in <module>
----> 1 adjusted_cbps = sample_with_target.adjust(method = "cbps")

1 frames
[/usr/local/lib/python3.8/dist-packages/balance/weighting_methods/cbps.py](https://localhost:8080/#) in cbps(sample_df, sample_weights, target_df, target_weights, variables, transformations, na_action, formula, balance_classes, cbps_method, max_de, opt_method, opt_opts, weight_trimming_mean_ratio, weight_trimming_percentile, random_seed, *args, **kwargs)
    434     # should be transformed with the *identity function*,
    435     # otherwise will be dropped from the model
--> 436     sample_df, target_df = balance_adjustment.apply_transformations(
    437         (sample_df, target_df), transformations=transformations
    438     )

AttributeError: module 'balance.adjustment' has no attribute 'apply_transformations'

Thank you for reporting, I'll look into this

Hey @Sourabhmehta-AIM
I just ran the entire notebook and couldn't reproduce this error you report.
Here is what I got:

Could you please help us debug this by sharing your session information?
Here is a nice resource for how to do it:
https://stackoverflow.com/a/31906216/256662
Steps:
1 - run
pip install session-info
2 - from the notebook, after the failure, run:
session_info.show()
3 - copy-paste the output into a comment here.
Thanks for the report :)

Hey @talgalili, sure, let me try to get the reports. I could also share my notebook and the data which was used while experimenting.

Hey @Sourabhmehta-AIM
Just to verify - you closed the issue because you managed to get it to work?

Yeah, I reinstalled the package, and it worked, but I will dig further and try to find out why that issue occurred. If and would like to add one point just add a markdown that says install glmnet_py. Because am using colab for the experiment and it requires installation.
Thanks for the time and quick response, great work!

Thabks for letting us know :)
As for the readme, feel free to suggest a PR for where to add it, and we'll review it.
Cheers,
T

Sure @talgalili I would add the PR in this thread.
Regards,
S

For reference, this also happened here:
https://github.com/facebookresearch/balance/issues/27
And was resolved when the app was re-installed.


Some features request

Please add an widgets able to visualize my reminders and notes (with a reference frame as a point) because if I don't see the notes I forget them xp.

synchronization with cloud/ or local backups

regional events using google calendar, I understand and prefer that the proyect stay as far away from google as it can but if you can add that depending on the region you automatically add important dates such as christmas, independence, etc will be awesome!

Adding widget is a nice idea I'll look into.
Local backups are planned.
This is unexplored territory for now, but region-dependent dates is a nice concept too. Next thing to add to this are custom user dates like birthdays, anniversaries, etc.

I'm sorry to say that I can't start adding and improving things straight away, as I'm not having much time for it now, but some day I'll add these lacking features.
However I don't want to discourage anyone from proposing new features, in fact, I appreciate them very much!


Slider and Drawer dragging conflict

When a Slider is placed within a Drawer, the Drawer responded to slider dragging. Is it possible to stop the event propagation?

@fatlinesofcode
What you need to do is onDragStart of slider, set the drawer docked state to true and onDragStop set it back to false.

@fatlinesofcode can we close this?

@fatlinesofcode We are closing the issue. If you still have questions, you can comment below!

Setting docked to true hides the overlay, which then causes an exception at this.refs.overlay.setOpacity(1 - translateX / this.getMaxTranslateX());


Improve code coverage; fix bug in subscript accessor

Codecov Report

Merging #7 into master will increase coverage by 11.86%.
The diff coverage is 65%.

@@            Coverage Diff             @@
##           master      #7       +/-   ##
==========================================
+ Coverage   59.04%   70.9%   +11.86%
==========================================
  Files           4       4
  Lines         210     220       +10
==========================================
+ Hits          124     156       +32
+ Misses         86      64       -22

Impacted Files
Coverage Δ

Sources/Configuration/ConfigurationNode.swift
90.26% <65%> (+20.36%)
:white_check_mark:

Sources/Configuration/ConfigurationManager.swift
47.52% <ø> (+1.98%)
:white_check_mark:

Continue to review full report at Codecov.

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


chore: remove-github-action

This PR removes the github action from this repo. This action previously ran the 'build' command and committed it to master if it wasn't already run. The 'build' command should be run and committed to master by the creator of the PR according to our contribution guide.
This action also, confusingly, had a poor rate of success.

@mjhenkes Is there a way for us to enforce that the build command is run before committing outside of a PR approval? It still seems like someone could merge the PR in without running the build command and we won’t realize the image isn’t published.


How to use in ionic serve.

Describe the bug
Is there any solutions to run the plugin in ionic serve.
All the time now I have to test my changes in actual device which is time consuming.
Codorva plugin was working fine in web too.
Thanks is advance.

@parthnayak7448 There is no web plugin implementation. In 2.9.x there is an electron implementation for this plugin . In 3.0.0-beta.x, the Electron implementation has not yet been converted.

Any plans for a web version?

@muuvmuuv @parthnayak7448  this is done  npm i --save @capcitor-community/sqlite@web it will become latest when<EMAIL_ADDRESS>will be released

@muuvmuuv @parthnayak7448  you need<EMAIL_ADDRESS>

@jepiqueau maybe this can improve the web version a lot just found it https://jlongster.com/future-sql-web

@muuvmuuv thanks for this I will have a look


Traditional WebSphere Applications

Change this section heading from this

Traditional WebSphere Applications

to this

Traditional WebSphere (Profile Migration)

AND
Make this a section heading

Third Party Application Servers / Traditional WebSphere Application Server

AND then change the name of that section heading to:

Traditional WebSphere (Resource Migration

Note: I do not think you need to mention 3rd party app server migrations in the above section heading simply because the target audience is WAS V2V upgrade; they are not 3rd party app server migrations. That said, if you wanted to mention liberty migrations or 3rd party app server migrations then you can add notes in the text; but its not needed in the section heading

Modified the names.